CPLEX Python API를 사용하여 일련의 LP 문제를 해결하고 있습니다. 많은 문제가 본질적으로 동일하므로 손으로 매개 변수를 모두 저장하십시오. 대부분의 경우 이전 문제의 해결책으로 따뜻한 시작을 사용하고 싶습니다. 함수를 cpx.start.set_start(col_status, row_status, col_primal, row_primal, col_dual, row_dual)
으로 호출하면 cpx = cplex.Cplex()
이됩니다.CPLEX는 최적의 LP 솔루션을 찾았지만 기본 오류를 반환하지 않습니다.
이 기능은 here에 설명되어 있습니다. 두 개의 인수, col_status
및 row_status
은 cpx.solution.basis.get_col_basis()
및 cpx.solution.basis.get_row_basis()
을 호출하여 얻습니다. 그러나
optimal
을 반환하고 빈 목록과 따뜻한 시작 함수를 호출 할 수 있습니다
this post 한 항에있어서, 모두
cpx.solution.get_values()
및
cpx.solution.get_dual_values()
...
지금 cpx.solution.basis.get_basis()
반환
CPLEX Error 1262: No basis exists.
를 호출하면 얻을 수있는 cpx.solution.status[cpx.solution.get_status()]
에도 불구하고 다음과 같이 열과 행 기준 상태.
lastsolution = cpx.solution.get_values()
cpx.start.set_start(col_status=[], row_status=[],
col_primal=lastsolution, row_primal=[],
col_dual=[], row_dual=[])
그러나 이것은 실제로 CPLEX 반복을 몇 번 더 만듭니다. 왜 더 많은 것이 불명확하지만, 전반적인 목표는 분명히 적게는 것입니다.
버전 정보 파이썬 2.7.12 CPLEX 12.6.3
http://filedropper.com과 같은 파일 공유 사이트에서 모델을 (이상적으로 SAV 형식으로) 공유 할 수있는 기회가 있습니까? 즉,'cpx.solve()'를 호출 한 후'cpx.solution.basis.get_basis()'를 호출 할 때 "CPLEX Error 1262"를 얻는 모델입니다. 또한 대화식으로 해당 동작을 재현 할 수 있습니까? – rkersh
현재 모델을 공유하는 것은 옵션이 아닙니다. 또한 모델이 매우 큽니다. 또한 필자는 오류를 재생산하기 위해 대화 형 코드에 수백 줄의 중복 코드를 작성하고 디버깅 할 의도가 없습니다. 죄송합니다. – Constantine