Я написал очень простую модель в среде Pyomo и в конце добавил следующие две команды.
solver_manager = SolverManagerFactory('neos')
results = solver_manager.solve(model, opt='cplex')
Когда я запускаю код, он возвращает следующую ошибку:
ОШИБКА: Ошибка при синтаксическом анализе файла решения NEOS Журнал NEOS: задание 10044842 отправлено пароль: MXusJYWF ———- Начать вывод решателя ———— Condor submit: ‘neos.submit’ Condor submit : ‘watchdog.submit’ Задание отправлено в пул NEOS HTCondor.
Я знаю, что это связано с недавним требованием Neos указывать адрес электронной почты для заданий, отправленных в NEOS, но как я могу решить эту проблему?
С 8 января 2021 года Neos требует действующий адрес электронной почты для всех заявок. Прежде всего, вы должны зарегистрироваться: https://neos-server.org/neos/index.html
После этого вы должны обновить файл в каталоге Pyomo (в моем случае это ../anaconda3/lib/python3.8/site-packages), позже вы будете искать этот путь pyomo / neos / и вы должны обновить файл kestrel .py с этим файлом https://github.com/Pyomo/pyomo/blob/master/pyomo/neos/kestrel.py
При обновлении файла укажите действующий адрес электронной почты в строке 224 файла kestrel.py.
Дополнительное примечание к сказанному Альваро Авендано. Отредактируйте kernel.py перед строкой 231, то есть строкой, которая пишет email = os.environ.get (‘NEOS_EMAIL’, »)), со следующим: