Я пытаюсь решить целочисленное программирование с помощью CVXPY .Но решение, возвращаемое CVXPY, кажется нецелым.Что не так с моим кодом?
import cvxpy as cp
# Create two optimization variables of type integer.
x = cp.Variable(integer=True)
y = cp.Variable(integer=True)
# Create two constraints.
constraints = [x + y == 1,
x - y >= 1]
# Form objective.
obj = cp.Minimize((x - y)**2)
# Form and solve problem.
prob = cp.Problem(obj, constraints)
prob.solve() # Returns the optimal value.
print("status:", prob.status)
print("optimal value", prob.value)
print("optimal var", x.value, y.value)
Вывод
status: optimal
optimal value 1.0000001874501487
optimal var 0.9999999924717351 7.528264443746919e-09