Originally posted by: SystemAdmin
[jeodyj said:]
I use Cplex9.0 to build a MIP model. While using cplex.solve(), it throw new Exception:"CPLEX Error 5002: Q is not positive semi-definite."
I export the model into a file "model.lp" by using cplex.ExportModel() method. And then I use the Lingo11.0 to solve this model, it works well without any error, and the result is good.
I don't what's wrong with this model. It's wrong in Cplex, but it's right in lingo.
Here is the model file:
model file exported by Cplex:
[url=http://bbs.sjtu.edu.cn/file/Algorithm/122476478316543.lp]http://bbs.sjtu.edu.cn/file/Algorithm/122476478316543.lp[/url]
the model in lingo:
[url=http://bbs.sjtu.edu.cn/file/Algorithm/122476486616900.lg4]http://bbs.sjtu.edu.cn/file/Algorithm/122476486616900.lg4[/url]
\Problem name: model.lp
Maximize
obj: 50 IloX0 + 50 IloX1 + 50 IloX2 + 60 IloX3 + 60 IloX4 + 60 IloX5
+ 60 IloX6 + 40 IloX7 - 430 IloX64 + [ 18 IloX0 * IloX8 + 18 IloX0 * IloX9
+ 18 IloX0 * IloX10 + 12 IloX0 * IloX27 + 12 IloX0 * IloX28
+ 20 IloX0 * IloX42 + 20 IloX0 * IloX43 + 26 IloX1 * IloX11
+ 20 IloX1 * IloX29 + 20 IloX1 * IloX30 + 20 IloX1 * IloX31
+ 20 IloX1 * IloX32 + 30 IloX1 * IloX44 + 30 IloX1 * IloX45
+ 38 IloX2 * IloX12 + 30 IloX2 * IloX33 + 30 IloX2 * IloX34
+ 30 IloX2 * IloX35 + 40 IloX2 * IloX46 + 40 IloX2 * IloX47
+ 40 IloX2 * IloX48 + 16 IloX3 * IloX13 + 16 IloX3 * IloX14
+ 12 IloX3 * IloX36 + 12 IloX3 * IloX37 + 12 IloX3 * IloX38
+ 20 IloX3 * IloX49 + 20 IloX3 * IloX50 + 26 IloX4 * IloX15
+ 26 IloX4 * IloX16 + 26 IloX4 * IloX17 + 18 IloX4 * IloX39
+ 30 IloX4 * IloX51 + 30 IloX4 * IloX52 + 30 IloX4 * IloX53
+ 14 IloX5 * IloX18 + 14 IloX5 * IloX19 + 14 IloX5 * IloX20
+ 14 IloX5 * IloX21 + 20 IloX5 * IloX54 + 20 IloX5 * IloX55
+ 20 IloX5 * IloX56 + 26 IloX6 * IloX22 + 26 IloX6 * IloX23
+ 26 IloX6 * IloX24 + 30 IloX6 * IloX57 + 30 IloX6 * IloX58
+ 30 IloX6 * IloX59 + 30 IloX6 * IloX60 + 38 IloX7 * IloX25
+ 38 IloX7 * IloX26 + 32 IloX7 * IloX40 + 32 IloX7 * IloX41
+ 40 IloX7 * IloX61 + 40 IloX7 * IloX62 + 40 IloX7 * IloX63 ] / 2
Subject To
IloC0: IloX8 + IloX9 + IloX10 + IloX27 + IloX28 + IloX42 + IloX43 <= 10<br /> IloC1: 21474836 IloX0 - IloX8 - IloX9 - IloX10 - IloX27 - IloX28 - IloX42
- IloX43 >= -9
IloC2: - 21474836 IloX0 + IloX8 + IloX9 + IloX10 + IloX27 + IloX28 + IloX42
+ IloX43 >= -21474826
IloC3: IloX11 + IloX29 + IloX30 + IloX31 + IloX32 + IloX44 + IloX45 <= 20<br /> IloC4: 21474836 IloX1 - IloX11 - IloX29 - IloX30 - IloX31 - IloX32 - IloX44
- IloX45 >= -19
IloC5: - 21474836 IloX1 + IloX11 + IloX29 + IloX30 + IloX31 + IloX32 + IloX44
+ IloX45 >= -21474816
IloC6: IloX12 + IloX33 + IloX34 + IloX35 + IloX46 + IloX47 + IloX48 <= 15<br /> IloC7: 21474836 IloX2 - IloX12 - IloX33 - IloX34 - IloX35 - IloX46 - IloX47
- IloX48 >= -14
IloC8: - 21474836 IloX2 + IloX12 + IloX33 + IloX34 + IloX35 + IloX46 + IloX47
+ IloX48 >= -21474821
IloC9: IloX13 + IloX14 + IloX36 + IloX37 + IloX38 + IloX49 + IloX50 <= 20<br /> IloC10: 21474836 IloX3 - IloX13 - IloX14 - IloX36 - IloX37 - IloX38 - IloX49
- IloX50 >= -19
IloC11: - 21474836 IloX3 + IloX13 + IloX14 + IloX36 + IloX37 + IloX38 + IloX49
+ IloX50 >= -21474816
IloC12: IloX15 + IloX16 + IloX17 + IloX39 + IloX51 + IloX52 + IloX53 <= 30<br /> IloC13: 21474836 IloX4 - IloX15 - IloX16 - IloX17 - IloX39 - IloX51 - IloX52
- IloX53 >= -29
IloC14: - 21474836 IloX4 + IloX15 + IloX16 + IloX17 + IloX39 + IloX51 + IloX52
+ IloX53 >= -21474806
IloC15: IloX18 + IloX19 + IloX20 + IloX21 + IloX54 + IloX55 + IloX56 <= 10<br /> IloC16: 21474836 IloX5 - IloX18 - IloX19 - IloX20 - IloX21 - IloX54 - IloX55
- IloX56 >= -9
IloC17: - 21474836 IloX5 + IloX18 + IloX19 + IloX20 + IloX21 + IloX54 + IloX55
+ IloX56 >= -21474826
IloC18: IloX22 + IloX23 + IloX24 + IloX57 + IloX58 + IloX59 + IloX60 <= 15<br /> IloC19: 21474836 IloX6 - IloX22 - IloX23 - IloX24 - IloX57 - IloX58 - IloX59
- IloX60 >= -14
IloC20: - 21474836 IloX6 + IloX22 + IloX23 + IloX24 + IloX57 + IloX58 + IloX59
+ IloX60 >= -21474821
IloC21: IloX25 + IloX26 + IloX40 + IloX41 + IloX61 + IloX62 + IloX63 <= 20<br /> IloC22: 21474836 IloX7 - IloX25 - IloX26 - IloX40 - IloX41 - IloX61 - IloX62
- IloX63 >= -19
IloC23: - 21474836 IloX7 + IloX25 + IloX26 + IloX40 + IloX41 + IloX61 + IloX62
+ IloX63 >= -21474816
q1: [ 40 IloX0 * IloX8 + 40 IloX1 * IloX11 + 40 IloX2 * IloX12
+ 40 IloX3 * IloX13 + 40 IloX4 * IloX15 + 40 IloX5 * IloX18
+ 40 IloX6 * IloX22 + 40 IloX7 * IloX25 ] <= 1000<br /> q2: [ 40 IloX0 * IloX9 + 40 IloX1 * IloX44 + 40 IloX2 * IloX46
+ 40 IloX3 * IloX14 + 40 IloX4 * IloX16 + 40 IloX5 * IloX19
+ 40 IloX6 * IloX23 + 40 IloX7 * IloX26 ] <= 1000<br /> q3: [ 40 IloX0 * IloX10 + 40 IloX1 * IloX45 + 40 IloX2 * IloX47
+ 40 IloX3 * IloX49 + 40 IloX4 * IloX17 + 40 IloX5 * IloX20
+ 40 IloX6 * IloX24 + 40 IloX7 * IloX61 ] <= 1000<br /> q4: [ 40 IloX0 * IloX42 + 40 IloX1 * IloX29 + 40 IloX2 * IloX48
+ 40 IloX3 * IloX50 + 40 IloX4 * IloX51 + 40 IloX5 * IloX21
+ 40 IloX6 * IloX57 + 40 IloX7 * IloX62 ] <= 1000<br /> q5: [ 40 IloX0 * IloX43 + 40 IloX1 * IloX30 + 40 IloX2 * IloX33
+ 40 IloX3 * IloX36 + 40 IloX4 * IloX52 + 40 IloX5 * IloX54
+ 40 IloX6 * IloX58 + 40 IloX7 * IloX63 ] <= 1000<br /> q6: [ 40 IloX0 * IloX27 + 40 IloX1 * IloX31 + 40 IloX2 * IloX34
+ 40 IloX3 * IloX37 + 40 IloX4 * IloX53 + 40 IloX5 * IloX55
+ 40 IloX6 * IloX59 + 40 IloX7 * IloX40 ] <= 1000<br /> q7: [ 40 IloX0 * IloX28 + 40 IloX1 * IloX32 + 40 IloX2 * IloX35
+ 40 IloX3 * IloX38 + 40 IloX4 * IloX39 + 40 IloX5 * IloX56
+ 40 IloX6 * IloX60 + 40 IloX7 * IloX41 ] <= 1000<br />Bounds
0 <= IloX0 <= 1<br /> 0 <= IloX1 <= 1<br /> 0 <= IloX2 <= 1<br /> 0 <= IloX3 <= 1<br /> 0 <= IloX4 <= 1<br /> 0 <= IloX5 <= 1<br /> 0 <= IloX6 <= 1<br /> 0 <= IloX7 <= 1<br /> IloX8 >= 0
IloX9 >= 0
IloX10 >= 0
IloX11 >= 0
IloX12 >= 0
IloX13 >= 0
IloX14 >= 0
IloX15 >= 0
IloX16 >= 0
IloX17 >= 0
IloX18 >= 0
IloX19 >= 0
IloX20 >= 0
IloX21 >= 0
IloX22 >= 0
IloX23 >= 0
IloX24 >= 0
IloX25 >= 0
IloX26 >= 0
IloX27 >= 0
IloX28 >= 0
IloX29 >= 0
IloX30 >= 0
IloX31 >= 0
IloX32 >= 0
IloX33 >= 0
IloX34 >= 0
IloX35 >= 0
IloX36 >= 0
IloX37 >= 0
IloX38 >= 0
IloX39 >= 0
IloX40 >= 0
IloX41 >= 0
IloX42 >= 0
IloX43 >= 0
IloX44 >= 0
IloX45 >= 0
IloX46 >= 0
IloX47 >= 0
IloX48 >= 0
IloX49 >= 0
IloX50 >= 0
IloX51 >= 0
IloX52 >= 0
IloX53 >= 0
IloX54 >= 0
IloX55 >= 0
IloX56 >= 0
IloX57 >= 0
IloX58 >= 0
IloX59 >= 0
IloX60 >= 0
IloX61 >= 0
IloX62 >= 0
IloX63 >= 0
IloX64 = 1
Binaries
IloX0 IloX1 IloX2 IloX3 IloX4 IloX5 IloX6 IloX7
Generals
IloX8 IloX9 IloX10 IloX11 IloX12 IloX13 IloX14 IloX15 IloX16 IloX17
IloX18 IloX19 IloX20 IloX21 IloX22 IloX23 IloX24 IloX25 IloX26
IloX27 IloX28 IloX29 IloX30 IloX31 IloX32 IloX33 IloX34 IloX35
IloX36 IloX37 IloX38 IloX39 IloX40 IloX41 IloX42 IloX43 IloX44
IloX45 IloX46 IloX47 IloX48 IloX49 IloX50 IloX51 IloX52 IloX53
IloX54 IloX55 IloX56 IloX57 IloX58 IloX59 IloX60 IloX61 IloX62
IloX63
End
#CPLEXOptimizers#DecisionOptimization