[Clp] add column, no change in duals
Matthew Galati
magh at lehigh.edu
Thu May 29 10:32:54 EDT 2008
Hi John,
I am using Clp trunk.
I have a case where I am using OsiClp to:
(1) Solve an infeasible LP.
Presolve determines it infeasible, so I disable presolve and resolve
to make sure I get a dual ray.
Question: Is this necessary? In this example it seems even though
presolve determines infeasible it still proceeds with simplex -- which
is what I want. But does that happen all the time?
(2) Get dual ray, do some stuff to find a new column that should attempt
to restore feasibility (column-generation).
(3) Resolve the LP - still infeasible.
(4) Get dual ray again.
Theoretically, the dual ray in (2) and (4) should not be the same,
unless I did something wrong in finding my column.
Can you tell anything from this log file? If not, I will try to create a
repeatable driver program.
D-ALGO : <--- solutionUpdate() -----------------
Going into master solve n_cols: 28 n_rows: 54031
Coin0502I Problem is infeasible due to row 13, 0.125 0.125
Coin0507I Presolve determined that the problem was infeasible with
tolerance of 1e-08
Clp1001I Initial range of elements is 1 to 30
Clp1002I Range of elements is 1e+50 to 0
Clp1002I Range of elements is 1e+50 to 0
Clp1003I Final range of elements is 0.175055 to 1
Clp0022I Absolute values of scaled rhs range from 0.0333333 to 2.34035,
minimum gap 1e+100
Clp0020I Absolute values of scaled objective range from 44.5481 to 501
Clp0060I Primal error 2.77556e-17, dual error 5.68434e-14
Clp0060I Primal error 2.77556e-17, dual error 5.68434e-14
Clp0006I 0 Obj 322.383 Primal inf 0.161708 (4) Dual inf 10.1578 (1)
Clp0060I Primal error 2.77556e-17, dual error 5.68434e-14
Clp0102I 1 321.917 In: C27 Out: R21 dj ratio -1e+10 distance 10.1578
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 9.99201e-16
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 9.99201e-16
Clp0006I 1 Obj 0 Primal inf 0.0990993 (3) Dual inf 0.0362201 (1)
Clp0102I 2 -0.0760674 In: C0 Out: C1 dj -0.0362202 distance 0.125
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 2.22045e-16
Clp0006I 2 Obj 0 Primal inf 0.0945717 (3)
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 2.22045e-16
Clp0060I Primal error 2.77556e-17, dual error 1.45519e-11
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 0
Clp0001I Primal infeasible - objective value 0
isAbandoned() : 0
isProvenOptimal() : 0
isProvenPrimalInfeasible() : 1
isProvenDualInfeasible() : 0
isPrimalObjectiveLimitReached : 1
isDualObjectiveLimitReached : 1
isIterationLimitReached : 0
Clp0022I Absolute values of scaled rhs range from 0.0333333 to 2.34035,
minimum gap 1e+100
Clp0020I Absolute values of scaled objective range from 44.5481 to 501
Clp0060I Primal error 2.77556e-17, dual error 5.68434e-14
Clp0060I Primal error 2.77556e-17, dual error 5.68434e-14
Clp0006I 0 Obj 326.458 Primal inf 0.0945717 (3) Dual inf 27.25 (1)
Clp0060I Primal error 8.34465e-07, dual error 5.68434e-14
Clp0102I 1 299.208 In: C1 Out: R4006 dj ratio -1e+10 distance 28.1897
Clp0102I 2 321.917 In: R4006 Out: C0 dj ratio -0.805554 distance 36.3333
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 9.99201e-16
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 9.99201e-16
Clp0006I 2 Obj 0 Primal inf 0.0990993 (3) Dual inf 0.0362201 (1)
Clp0102I 3 -0.0760674 In: C0 Out: C1 dj -0.0362202 distance 0.125
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 2.22045e-16
Clp0006I 3 Obj 0 Primal inf 0.0945717 (3)
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 2.22045e-16
Clp0060I Primal error 2.77556e-17, dual error 1.45519e-11
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 0
Clp0001I Primal infeasible - objective value 0
D-ALGO : --- solutionUpdate() ----------------->
...
D-ALGO : <--- getDualRays() --------------------
isProof = 1
D-ALGO : --- getDualRays() -------------------->
u[0 ]: -3333.33
u[1 ]: -3333.33
u[2 ]: -3333.33
u[3 ]: -3333.33
u[4 ]: -3333.33
u[5 ]: -3333.33
u[6 ]: -3333.33
u[7 ]: -3333.33
u[9 ]: 12864.56
u[10 ]: -3333.33
u[11 ]: -3333.33
u[12 ]: -3333.33
u[13 ]: 7532.72
u[14 ]: -3333.33
u[15 ]: -3333.33
u[16 ]: -3333.33
u[17 ]: -3333.33
u[18 ]: -3333.33
u[19 ]: -3333.33
u[20 ]: -3333.33
u[21 ]: -3333.33
u[22 ]: -3333.33
u[23 ]: -3333.33
u[24 ]: -24273.41
u[25 ]: -3333.33
u[26 ]: -3333.33
u[27 ]: -3333.33
u[28 ]: -3333.33
u[29 ]: -3333.33
alpha = 100000.00
D-ALGO : <--- solveRelaxed() -------------------
New variable to enter:
VAR c: 2.2e+02 rc: -6.3e+05 eff: 0 lb: 0 ub: INF
1 x[21602] 1 x[21630] 1 x[21687] 1 x[21710] 1 x[21727]
1 x[21775] 1 x[21793] 1 x[21820] 1 x[21863] 1 x[21898]
1 x[21911] 1 x[21954] 1 x[21976] 1 x[21991] 1 x[22049]
1 x[22056] 1 x[22094] 1 x[22122] 1 x[22144] 1 x[22188]
1 x[22222] 1 x[22239] 1 x[22279] 1 x[22298] 1 x[22323]
1 x[22355] 1 x[22401] 1 x[22425] 1 x[22457] 1 x[22496]
Going into master solve n_cols: 29 n_rows: 54031
Coin0502I Problem is infeasible due to row 13, 0.125 0.125
Coin0507I Presolve determined that the problem was infeasible with
tolerance of 1e-08
Clp1001I Initial range of elements is 1 to 30
Clp1002I Range of elements is 1e+50 to 0
Clp1002I Range of elements is 1e+50 to 0
Clp1003I Final range of elements is 0.175055 to 1
Clp0022I Absolute values of scaled rhs range from 0.0333333 to 2.34035,
minimum gap 1e+100
Clp0020I Absolute values of scaled objective range from 44.5481 to 501
Clp0060I Primal error 2.77556e-17, dual error 2.84217e-14
Clp0060I Primal error 2.77556e-17, dual error 2.84217e-14
Clp0006I 0 Obj 326.458 Primal inf 0.0945717 (3) Dual inf 27.25 (1)
Clp0060I Primal error 8.34465e-07, dual error 2.84217e-14
Clp0102I 1 299.209 In: C1 Out: R4006 dj ratio -1e+10 distance 28.1897
Clp0102I 2 321.917 In: R4006 Out: C0 dj ratio -0.805556 distance 36.3333
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 7.77156e-16
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 7.77156e-16
Clp0006I 2 Obj 0 Primal inf 0.0990993 (3) Dual inf 0.0362201 (1)
Clp0102I 3 -0.0760674 In: C0 Out: C1 dj -0.0362202 distance 0.125
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 2.22045e-16
Clp0006I 3 Obj 0 Primal inf 0.0945717 (3)
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 2.22045e-16
Clp0060I Primal error 2.77556e-17, dual error 4.36557e-11
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 0
Clp0001I Primal infeasible - objective value 0
isAbandoned() : 0
isProvenOptimal() : 0
isProvenPrimalInfeasible() : 1
isProvenDualInfeasible() : 0
isPrimalObjectiveLimitReached : 1
isDualObjectiveLimitReached : 1
isIterationLimitReached : 0
Clp0022I Absolute values of scaled rhs range from 0.0333333 to 2.34035,
minimum gap 1e+100
Clp0020I Absolute values of scaled objective range from 44.5481 to 501
Clp0060I Primal error 2.77556e-17, dual error 2.84217e-14
Clp0060I Primal error 2.77556e-17, dual error 2.84217e-14
Clp0006I 0 Obj 326.458 Primal inf 0.0945717 (3) Dual inf 27.25 (1)
Clp0060I Primal error 8.34465e-07, dual error 2.84217e-14
Clp0102I 1 299.209 In: C1 Out: R4006 dj ratio -1e+10 distance 28.1897
Clp0102I 2 321.917 In: R4006 Out: C0 dj ratio -0.805556 distance 36.3333
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 7.77156e-16
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 7.77156e-16
Clp0006I 2 Obj 0 Primal inf 0.0990993 (3) Dual inf 0.0362201 (1)
Clp0102I 3 -0.0760674 In: C0 Out: C1 dj -0.0362202 distance 0.125
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 2.22045e-16
Clp0006I 3 Obj 0 Primal inf 0.0945717 (3)
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 2.22045e-16
Clp0060I Primal error 2.77556e-17, dual error 4.36557e-11
Clp0103I Primal nonlinear change 0 (3)
Clp0060I Primal error 2.77556e-17, dual error 0
Clp0001I Primal infeasible - objective value 0
D-ALGO : --- solutionUpdate() ----------------->
Then I get back the exact same dual ray.
More information about the Clp
mailing list