Infeasible solution

7 views
Skip to first unread message

Neelesh

unread,
Nov 14, 2008, 7:24:45 PM11/14/08
to Xpress-MP
Hi,
I am new to Xpress, I have a model which is giving me an infeasible
solution. Therefore, I tried introducing a supplemental variable (x1)
so as to satisfy the constraints. But now the model is giving me a
compilation error. I have been trying to resolve this problem for 2
days. I guess I am doing something wrong while coding it. I will
highly appreciate if someone can help me resolve this problem. I am
attaching my code below for reference.

Thanks in advance.
Regards,
Neelesh

model Collin
uses "mmxprs"; !gain access to the Xpress-Optimizer solver

declarations
CPACKAGE = 1..44 !Array of control cost
x1: mpvar ! Supplemental control as a variable

COST: array(CPACKAGE) of real
u: array(CPACKAGE) of mpvar ! Control strategy "u"
end-declarations

COST ::
[35045,7500,582691,95097,8711,1714,137883,13300,170761,839662,257407,2320,4158,4158,55096,165992,93724,4196,4809,170761,834965,227706,2258,4158,4048,51914,13000,22000,990,2644,6500,13200,1390,4800,15000,425,1355,3920,4195,3370,16400,6000,4100,1000000]


MinCost:= sum(i in CPACKAGE) COST(i)*u(i) ! Objective function

55.05 - 0.66*(sum(i in CPACKAGE) u(40)) - 0.017*(sum(i in CPACKAGE) u
(39)) - 0.121*(sum(i in CPACKAGE) u(41)) <= 68.09 - 0.48
62.13 - 1.174*(sum(i in CPACKAGE) u(42)) <= 74.09 - 0.78
52.29 - 0.70*(sum(i in CPACKAGE) u(40)) - 0.013*(sum(i in CPACKAGE) u
(39)) - 0.129*(sum(i in CPACKAGE) u(41)) <= 74.09 - 1.59
44.75 - 0.69*(sum(i in CPACKAGE) u(40)) - 0.01*(sum(i in CPACKAGE) u
(39)) - 0.128*(sum(i in CPACKAGE) u(41)) - 1.588*(sum(i in CPACKAGE) u
(42)) <= 84.91 - 1.43
66.98 - 0.29*(sum(i in CPACKAGE) u(37)) - 0.049*(sum(i in CPACKAGE) u
(38)) <= 71.10 - 4.27
76.43 - 0.013*(sum(i in CPACKAGE) u(15)) - 0.318*(sum(i in CPACKAGE) u
(16)) - 0.091*(sum(i in CPACKAGE) u(17)) - 0.628*(sum(i in CPACKAGE) u
(18)) - 0.969*(sum(i in CPACKAGE) u(19))- 0.022*(sum(i in CPACKAGE) u
(20)) - 0.227*(sum(i in CPACKAGE) u(21)) - 0.008*(sum(i in CPACKAGE) u
(22)) - 0.034*(sum(i in CPACKAGE) u(23)) - 0.006*(sum(i in CPACKAGE) u
(24)) - 0.121*(sum(i in CPACKAGE) u(25)) <= 71.07 - 6.25
70.02 - 0.246*(sum(i in CPACKAGE) u(38)) - 0.040*(sum(i in CPACKAGE) u
(37)) - 0.014*(sum(i in CPACKAGE) u(15)) - 0.351*(sum(i in CPACKAGE) u
(16)) - 0.1*(sum(i in CPACKAGE) u(17)) - 0.694*(sum(i in CPACKAGE) u
(18)) - 1.070*(sum(i in CPACKAGE) u(19))- 0.024*(sum(i in CPACKAGE) u
(20)) - 0.251*(sum(i in CPACKAGE) u(21)) - 0.009*(sum(i in CPACKAGE) u
(22)) - 0.038*(sum(i in CPACKAGE) u(23)) - 0.007*(sum(i in CPACKAGE) u
(24)) - 0.134*(sum(i in CPACKAGE) u(25)) <= 71.07 - 5.17
70.32 - 0.03*(sum(i in CPACKAGE) u(38)) - 0.038*(sum(i in CPACKAGE) u
(37)) - 4.928*(sum(i in CPACKAGE) u(43)) - 0.015*(sum(i in CPACKAGE) u
(15)) - 0.379*(sum(i in CPACKAGE) u(16)) - 0.108*(sum(i in CPACKAGE) u
(17)) - 0.784*(sum(i in CPACKAGE) u(18)) - 1.154*(sum(i in CPACKAGE) u
(19))- 0.026*(sum(i in CPACKAGE) u(20)) - 0.271*(sum(i in CPACKAGE) u
(21)) - 0.01*(sum(i in CPACKAGE) u(22)) - 0.041*(sum(i in CPACKAGE) u
(23)) - 0.007*(sum(i in CPACKAGE) u(24)) - 0.144*(sum(i in CPACKAGE) u
(25)) <= 71.07 - 1.20
244.17 - 0.018*(sum(i in CPACKAGE) u(15)) - 0.446*(sum(i in CPACKAGE)
u(16)) - 0.127*(sum(i in CPACKAGE) u(17)) - 0.881*(sum(i in CPACKAGE) u
(18)) - 1.359*(sum(i in CPACKAGE) u(19))- 0.031*(sum(i in CPACKAGE) u
(20)) - 0.319*(sum(i in CPACKAGE) u(21)) - 0.012*(sum(i in CPACKAGE) u
(22)) - 0.048*(sum(i in CPACKAGE) u(23)) - 0.008*(sum(i in CPACKAGE) u
(24)) - 0.17*(sum(i in CPACKAGE) u(25)) - (x1*(sum(i in CPACKAGE) u
(44)) + 0.015*(sum(i in CPACKAGE) u(15)) + 0.378*(sum(i in CPACKAGE) u
(16)) + 0.108*(sum(i in CPACKAGE) u(17)) + 0.747*(sum(i in CPACKAGE) u
(18)) + 1.152*(sum(i in CPACKAGE) u(19))+ 0.026*(sum(i in CPACKAGE) u
(20)) + 0.27*(sum(i in CPACKAGE) u(21)) + 0.01*(sum(i in CPACKAGE) u
(22)) + 0.041*(sum(i in CPACKAGE) u(23)) + 0.007*(sum(i in CPACKAGE) u
(24)) + 0.144*(sum(i in CPACKAGE) u(25))) <= 76.22 - 7.04
75.88 - 1.489*(sum(i in CPACKAGE) u(38)) - 0.041*(sum(i in CPACKAGE) u
(37)) - 2.37*(sum(i in CPACKAGE) u(43)) - 0.016*(sum(i in CPACKAGE) u
(15)) - 0.391*(sum(i in CPACKAGE) u(16)) - 0.112*(sum(i in CPACKAGE) u
(17)) - 0.772*(sum(i in CPACKAGE) u(18)) - 1.191*(sum(i in CPACKAGE) u
(19))- 0.027*(sum(i in CPACKAGE) u(20)) - 0.279*(sum(i in CPACKAGE) u
(21)) - 0.01*(sum(i in CPACKAGE) u(22)) - 0.042*(sum(i in CPACKAGE) u
(23)) - 0.007*(sum(i in CPACKAGE) u(24)) - 0.149*(sum(i in CPACKAGE) u
(25)) <= 76.22 - 3.37
66.00 - 8.323*(sum(i in CPACKAGE) u(43)) - 2.602*(sum(i in CPACKAGE) u
(42)) <= 76.22 - 1.16

!Supplemental Control X1 Contraints
(x1 + 0.015*(sum(i in CPACKAGE) u(15)) + 0.378*(sum(i in CPACKAGE) u
(16)) + 0.108*(sum(i in CPACKAGE) u(17)) + 0.747*(sum(i in CPACKAGE) u
(18)) + 1.152*(sum(i in CPACKAGE) u(19))+ 0.026*(sum(i in CPACKAGE) u
(20)) + 0.27*(sum(i in CPACKAGE) u(21)) + 0.01*(sum(i in CPACKAGE) u
(22)) + 0.041*(sum(i in CPACKAGE) u(23)) + 0.007*(sum(i in CPACKAGE) u
(24)) + 0.144*(sum(i in CPACKAGE) u(25))) >= 0
(x1 + 0.015*(sum(i in CPACKAGE) u(15)) + 0.378*(sum(i in CPACKAGE) u
(16)) + 0.108*(sum(i in CPACKAGE) u(17)) + 0.747*(sum(i in CPACKAGE) u
(18)) + 1.152*(sum(i in CPACKAGE) u(19))+ 0.026*(sum(i in CPACKAGE) u
(20)) + 0.27*(sum(i in CPACKAGE) u(21)) + 0.01*(sum(i in CPACKAGE) u
(22)) + 0.041*(sum(i in CPACKAGE) u(23)) + 0.007*(sum(i in CPACKAGE) u
(24)) + 0.144*(sum(i in CPACKAGE) u(25))) <= 7.992

forall(i in CPACKAGE) u(i) is_binary

minimize(MinCost) !Objective function

!Print out the solution
writeln("Additional Reduction ", getsol(x1), " tons")
writeln("Solution:\n Total Cost: ", getobjval)
forall(i in CPACKAGE) writeln(" u(", i, "): ", getsol(u(i)))
end-model

Reply all
Reply to author
Forward
0 new messages