Pyomo
Материал из MachineLearning.
 (→Linux)  | 
				 (Added tutorial for solvers installation for macOS users.)  | 
			||
| Строка 14: | Строка 14: | ||
<source lang="bash">  | <source lang="bash">  | ||
pip install pyomo  | pip install pyomo  | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
</source>  | </source>  | ||
* Устанавливаем пакет <code>pyomo.extras</code>  | * Устанавливаем пакет <code>pyomo.extras</code>  | ||
| Строка 78: | Строка 63: | ||
==== Тестирование установки ====  | ==== Тестирование установки ====  | ||
| + | |||
| + | === Установка солверов ===  | ||
| + | |||
| + | Для решения поставленных задач Pyomo использует заданный в параметрах солвер. Решение задачи состоит из  | ||
| + | <code>.py</code> скрипта с определением модели и сущностей и <code>.dat</code> – файл с данными (параметрами) в AMPL формате. Пример запуска решения задачи:  | ||
| + | |||
| + | <source lang="bash">  | ||
| + | pyomo solve --solver=bonmin sol.py prod.dat  | ||
| + | </source>  | ||
| + | |||
| + | Существует некоторое множество солверов, которые может использовать Pyomo. Среди них есть свободно распространяемые (glpk, bonmin, ipopt, cbc) и проприетарные (minos, другие решатели AMPL). Для их использования их нужно устанавливать отдельно.  | ||
| + | |||
| + | ==== macOS ====  | ||
| + | |||
| + | На macOS для установки ПО удобно использовать менеджер пакетов [http://brew.sh homebrew].  | ||
| + | |||
| + | ===== GLPK =====  | ||
| + | |||
| + | * Скачиваем с [http://www.gnu.org/software/glpk/#downloading сайта проекта] последнюю версию.  | ||
| + | * Устанавливаем (предполагается, что архив скачался в <code>~/Downloads</code>, а скачаный архив называется <code>glpk-4.43.tar.gz</code>).  | ||
| + | <source lang="bash">  | ||
| + | cd ~/Downloads  | ||
| + | tar -xzf glpk-4.43.tar.gz  | ||
| + | ./configure --prefix=/usr/local # see note [1]  | ||
| + | make  | ||
| + | sudo make install  | ||
| + | </source>  | ||
| + | * Проверяем, корректно ли установлен солвер (должен вывести путь до исполняемого файла).  | ||
| + | <source lang="bash">  | ||
| + | which glpsol  | ||
| + | </source>  | ||
| + | |||
| + | ===== bonmin =====  | ||
| + | |||
| + | <source lang="bash">  | ||
| + | brew tap staticfloat/homebrew-juliadeps  | ||
| + | brew install bonmin  | ||
| + | </source>  | ||
| + | |||
| + | ===== cbc =====  | ||
| + | <source lang="bash">  | ||
| + | brew tap coin-or-tools/coinor  | ||
| + | brew install cbc  | ||
| + | </source>  | ||
| + | |||
| + | ===== ipopt =====  | ||
| + | <source lang="bash">  | ||
| + | brew tap Homebrew/homebrew-science  | ||
| + | brew install ipopt  | ||
| + | </source>  | ||
Примеры решений задач с помощью Pyomo можно найти на [http://www.pyomo.org/documentation странице документации]. Попробуйте запустить Jupyter Notebook в архиве, решающий транспортную проблему (transport.ipynb).  | Примеры решений задач с помощью Pyomo можно найти на [http://www.pyomo.org/documentation странице документации]. Попробуйте запустить Jupyter Notebook в архиве, решающий транспортную проблему (transport.ipynb).  | ||
Версия 12:37, 21 декабря 2016
Pyomo — открытая библиотека языка Python, созданная для создания и использования оптимизационных моделей.
Содержание | 
Установка
macOS
Через pip
-  Устанавливаем 
pyomoчерезpip. В зависимости от используемой версии интерпретатора Python можно заменитьpipнаpip2илиpip3. 
pip install pyomo-  Устанавливаем пакет 
pyomo.extras 
pip install pyomo.extrasЧерез Anaconda
См. раздел Windows.
Windows
- Установить Anaconda
 - Запустить Anaconda Prompt (интерфейс командной строки)
 -  Выполнить следующие команды. Устанавливаем пакеты 
pyomo,pyomo.extrasи решательglpk. 
Для этого используется сторонний репозиторий:
conda install --channel https://conda.anaconda.org/conda-forge pyomo conda install --channel https://conda.anaconda.org/conda-forge pyomo.extras conda install --channel https://conda.anaconda.org/conda-forge glpk
Linux
Предполагается, что вы используете Debian-based дистрибутив (например, Ubuntu).
Скачиваем отсюда: https://www.gnu.org/software/glpk/
cd ~/Downloads tar -xzf glpk-4.43.tar.gz cd ./glpk ./configure --prefix=/usr/local # see note [1] make sudo make install
Через pip
Здесь лучше использовать виртуальную среду, используя virtualenv. В этом случае в скрипте внизу перед pip3 не нужно sudo. Обратите внимание, что вы можете использовать pip2, если хотите работать со второй версией языка.
sudo pip3 install pyomo sudo apt-get install glpk*
Через Anaconda
См. раздел Windows.
Тестирование установки
Установка солверов
Для решения поставленных задач Pyomo использует заданный в параметрах солвер. Решение задачи состоит из
.py скрипта с определением модели и сущностей и .dat – файл с данными (параметрами) в AMPL формате. Пример запуска решения задачи:
pyomo solve --solver=bonmin sol.py prod.datСуществует некоторое множество солверов, которые может использовать Pyomo. Среди них есть свободно распространяемые (glpk, bonmin, ipopt, cbc) и проприетарные (minos, другие решатели AMPL). Для их использования их нужно устанавливать отдельно.
macOS
На macOS для установки ПО удобно использовать менеджер пакетов homebrew.
GLPK
- Скачиваем с сайта проекта последнюю версию.
 -  Устанавливаем (предполагается, что архив скачался в 
~/Downloads, а скачаный архив называетсяglpk-4.43.tar.gz). 
cd ~/Downloads tar -xzf glpk-4.43.tar.gz ./configure --prefix=/usr/local # see note [1] make sudo make install
- Проверяем, корректно ли установлен солвер (должен вывести путь до исполняемого файла).
 
which glpsolbonmin
brew tap staticfloat/homebrew-juliadeps brew install bonmin
cbc
brew tap coin-or-tools/coinor brew install cbc
ipopt
brew tap Homebrew/homebrew-science brew install ipopt
Примеры решений задач с помощью Pyomo можно найти на странице документации. Попробуйте запустить Jupyter Notebook в архиве, решающий транспортную проблему (transport.ipynb).

