2017-12-15 3 views
0

안녕하세요 다음과 같이 pyomo의 SolverFactory을 문제를 모델링 한 후 사용 Jupyter 노트북에 간단한 스크립트를 작성 : ipopt을 찾을 수 없기 때문에pyomo는

from pyomo.opt import SolverFactory 
opt = SolverFactory('ipopt') 
result = opt.solve(model) 

노트북 버전이 실행되지 않을 수 있지만 사용할 때 명령 줄이 실행됩니다. 이게 주피터 노트 보크와 관련이 있니? 대화 형이기 때문에 가능한 경우 jupyter notebook을 사용하는 것을 선호합니다. 미리 감사드립니다.

답변

1

Jupyter와 명령 줄 사이의 차이가 sys.path 인 것 같습니다 (sys.path different in Jupyter and Python - how to import own modules in Jupyter? 참조).

그것을 해결하려면이 또는 수동으로 권장하는 변화가 해결사 실행 파일의 경로를 지정 만들려면 :

opt = SolverFactory("ipopt", executable="/your_path/to_solver/ipopt") 

executable 중 하나를 절대 또는 상대 경로가 될 수 있습니다.

+0

내 바이너리 위치를 표시하려고했지만 다음과 같은 유사한 오류가 발생합니다. RuntimeError : 사용할 수없는 해결사를 사용하려고 시도했습니다. SolverFactory가 "ipopt" 솔버를 만들 수없고 UnknownSolver 객체를 반환했습니다. 이 오류는 지점에서 발생하며 UnknownSolver 객체가 유효 한 것처럼 사용됩니다 ( 메서드 "해결"). –