# Output results of sage MixedIntegerLinearProgram solution are not as expected

## For the problem below

#!/usr/bin/sage -python

from sage.all import *
import sys

problem = MixedIntegerLinearProgram(maximization=False, solver = "GLPK")
y = problem.new_variable(real=True, name='y')

constraints_1 = [(0.0, 6769.0),
(8260.0, 6812.0),
(12390.0, 7105.0),
(16520.0, 7448.0),
(20650.0, 7924.0),
(24780.0, 8289.0),
(28910.0, 8630.0),
(33040.0, 9000.0)]
sos_var_1 = problem.new_variable(name='sos2_var')
eq1_1 = 0.0
eq1_2 = 0.0
eq1_3 = 0.0
for i in range(len(constraints_1)):
eq1_1 += sos_var_1[i]*constraints_1[i]
eq1_2 += sos_var_1[i]*constraints_1[i]
eq1_3 += sos_var_1[i]
problem.add_constraint(eq1_1 == 23450)
problem.add_constraint(eq1_2 == y)
problem.add_constraint(eq1_3 == 1)

problem.set_objective(y)
print problem.solve()


I am expecting the result to be 8136 but I am getting

8099.05084746

Can anyone help or explain why this is happening?

edit retag close merge delete

## Comments

I tried with GLPK, PPL and Coin solvers, and all of them lead to 8099.05084746. Are you sure that 8136 is the right solution ?

Yes, I am sure. I checked on paper and even with other LP solver LINDO.