0

問題を NEOS に送信し、ipopt をスローバーとして使用して問題を解決しようとしています。

    solver_manager = SolverManagerFactory('neos')
    results = solver_manager.solve(self.miqp_instance, opt='ipopt', load_solutions=True, tee=True)
    self.miqp_instance.solutions.store_to(results)
    results.write()

しかし、私はこの問題を抱えています:

WARNING: NEOS is temporarily unavailable.
Traceback (most recent call last):
  File "/root/PycharmProjects/PPRule-MIQP/main.py", line 32, in <module>
    miqp.solve_problem()
  File "/root/PycharmProjects/PPRule-MIQP/MIQP.py", line 406, in solve_problem
    results = solver_manager.solve(self.miqp_instance, opt='ipopt', load_solutions=True, tee=True)
  File "/root/anaconda3/lib/python3.7/site-packages/pyomo/opt/parallel/async_solver.py", line 28, in solve
    return self.execute(*args, **kwds)
  File "/root/anaconda3/lib/python3.7/site-packages/pyomo/opt/parallel/manager.py", line 107, in execute
    ah = self.queue(*args, **kwds)
  File "/root/anaconda3/lib/python3.7/site-packages/pyomo/opt/parallel/manager.py", line 122, in queue
    return self._perform_queue(ah, *args, **kwds)
  File "/root/anaconda3/lib/python3.7/site-packages/pyomo/neos/plugins/kestrel_plugin.py", line 131, in _perform_queue
    % (solver_name, str(sorted(self._solvers.keys()))))
pyomo.opt.parallel.manager.ActionManagerError: Solver 'ipopt' is not recognized by NEOS. Solver names recognized:
[]

すでにipopt自分のマシンにインストールしていますが、これが理由だとは思えません。

4

1 に答える 1