Целочисленное программирование CVXPY, возвращающее нецелое решение - PullRequest
1 голос
/ 29 марта 2019

Я пытаюсь решить целочисленное программирование с помощью 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
...