Как можно получить разрыв оптимальности (относительный и абсолютный) с помощью CPLEX Python API (CPLEX 12.5, Python 2.7.15)?Есть ли такая функция, как get_optimal_gap()
, которая дала бы разрыв в оптимальности?Или синтаксический анализ вывода (как упоминалось здесь ) является единственным способом?Я вижу, что есть пользовательские функции, такие как solution.get_objective_value()
- было бы неплохо, если бы кто-то мог предложить онлайн-ресурсы со списком всех функций, которые можно применить к объекту / файлу cplex.В настоящее время я использую следующий код (любезно: этот документ IBM):
import cplex
import sys
def sample1(filename):
c = cplex.Cplex(filename)
try:
c.solve()
except CplexSolverError:
print "Exception raised during solve"
return
# solution.get_status() returns an integer code
status = c.solution.get_status()
print "Solution status = " , status, ":",
print c.solution.status[status]
print "Objective value = " , c.solution.get_objective_value()
sample1(filename)