Pyomo
Материал из MachineLearning.
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 glpsol
bonmin
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
lpsolve
brew tap Homebrew/homebrew-science brew install lp_solve
Примеры решений задач с помощью Pyomo можно найти на странице документации. Попробуйте запустить Jupyter Notebook в архиве, решающий транспортную проблему (transport.ipynb).