Использование решателей HSL в Omg-tools - PullRequest
0 голосов
/ 19 октября 2018

Использование OMG-tools Я хочу запустить пример с решателем HSL, например, ma57, используемый в compare_distributed_optimization_quadrotors.py .

Во-первых, яс помощью pip установлены OMG-инструменты, которые также автоматически устанавливают Casadi и Ipopt .Затем я следовал руководству Casadi для построения HSL из исходного кода, где я могу подтвердить, что пакет был установлен в /usr/local/lib, но при запуске примера OMG-tools я всегда получаю Invalid_Option для выбранногорешатель.Я добавил и ссылку, и переменную среды, упомянутую в руководстве.

Есть ли какие-либо дополнительные шаги, необходимые для настройки HSL с Ipopt в моей системе, которым я должен следовать?

Моя система работает Ubuntu 16.04 .

1 Ответ

0 голосов
/ 30 октября 2018

Я запустил его.Надеемся, что это краткое руководство / совет пригодится кому-то еще, кроме моей будущей личности.

Прежде всего, когда вы объявляете новый problem в OMG-tools, синтаксис options должен выглядетьчто-то вроде этого:

options = {'horizon_time': horizon_time, 'solver_options': {'ipopt':{'ipopt.linear_solver': 'ma57'}}};

Если вы получаете сообщение об ошибке Invalid_Option в терминале на каждом update_time, команда ipopt не распознается.

Еслипрограмма завершает работу с сообщением о проблеме с решателем ma57, затем устанавливается HSL, но не может найти правильный решатель - возможно, у вас есть архивная версия HSL.

Для установки перейдите к Руководство Касади по получению HSL Следуйте первому варианту, построив из источника.Обратите внимание, что вместо libblas3gf и liblapack3gf вы также можете использовать libblas3 и liblapack3.Как только это будет сделано, вам нужно получить HSL .Загрузите исходный код одного из двух пакетов (RC, стабильный), доступ к которым осуществляется с использованием академической лицензии.На этом этапе вам нужно заполнить несколько форм и подождать пару секунд, чтобы получить ссылку на файлы для скачивания.

После того, как вы подготовили среду и загрузили все необходимые файлы, запустите конфигурацию, как описано вруководство, где я рекомендую использовать /usr/local, который с точки зрения установки пакета в /usr/local/lib:

$> ./configure --prefix = (where_you_want_to_install) LIBS = "- llapack"--with-blas =" - L / usr / lib -lblas "CXXFLAGS =" - g -O2 -fopenmp "FCFLAGS =" - g -O2 -fopenmp "CFLAGS =" - g -O2 -fopenmp "

После настройки запустите make и (sudo) install.Наконец, добавьте /usr/local/lib к $LD_LIBRARY_PATH.Убедитесь в правильности пути, передав его в терминал.

Теперь должны работать решатели ma27 и ma57.Для получения дополнительной информации о том, какие решатели и как вы можете их использовать, перейдите по ссылке http://www.hsl.rl.ac.uk/.

PS: каждый пакет Coin-HSL имеет свою собственную README.Кроме того, вы можете запустить configure --help, чтобы понять саму команду.Обязательно прочтите оба, если у вас возникнут проблемы во время установки.

...