Установить mosek.fusion для Python в Anaconda (Ubuntu)
Я пытаюсь использовать (и, следовательно, установить) пакет оптимизации под названием mosek, а точнее - использовать его с python на ноутбуке jupyter.
Это коммерческий пакет, но так как я работаю в научных кругах, у меня есть бесплатная лицензия.
Эта проблема была отредактирована благодаря информации Пола.
Моя цель - использовать mosek в python 3.5 через jupyter.
1 ° Моя проблема:
Когда я запускаю следующую строку кода в блокноте jupyter:
import mosek.fusion
У меня есть следующая ошибка:
import mosek.fusion ---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-9-81543b63d59f> in <module>()
----> 1 import mosek.fusion
ImportError: No module named 'mosek.fusion'
2 ° Что я сделал:
Я сначала скачал и установил mosek. Я также добавил свою лицензию в мою папку mosek. (Я сделал все шаги, описанные здесь: http://docs.mosek.com/7.1/toolsinstall/Linux_UNIX_installation_instructions.html и также добавил свою академическую лицензию).
Затем я попытался запустить строку кода:import mosek.fusion
который дал ошибку. Затем я попытался запустить:
import mosek
тогда у меня не было ошибки. Мой вывод заключается в том, что mosek (теперь, спасибо Полу) правильно установлен, но этот модуль fusion отсутствует.
Я также ищу любой файл или папку Fusion в моей папке Mosek. Я не нашел ни одного.
Есть ли способ получить этот модуль fusion от mosek, и еще лучше, есть ли способ заставить его работать?
Спасибо вам всем!
E.
4 ответа
Fusion пока недоступен для Python3. Это будет в следующем основном выпуске, то есть MOSEK 8.
Я считаю, что он установил его на ваш .local
потому что вы установили с --user
флаг. Другими словами:
python setup.py install --user
Попытка запустить установку без --user
флаг. Это должно установить его в вашей среде conda.
Но я не уверен, что это ваша проблема с импортом. Возможно, fusion
Модуль не существует. Пытаться ls
что в этой папке /home/edwin/.local/lib/python3.5/site-packages/mosek/
, Может быть попробовать from mosek import fusion
,
Держите на сайте MOSEK. Версия 8(бета), которая скоро будет выпущена, будет поддерживать Python 3.5. Также скоро будет доступна полная поддержка Anaconda.
Самый простой способ установить Mosek (для использования из Python) - использовать установщик pip:
pip install git + http://github.com/MOSEK/Mosek.pip@v7.0.0#egg=mosek
Вы также можете явно установить переменную окружения для лицензии Мосека, например
os.environ.setdefault("MOSEKLM_LICENSE_FILE", лицензия), где лицензия - это адрес сервера или расположение файла.
Тем не менее, Mosek Fusion пока недоступен для Python 3