Hi
I am working on building an LP model of an electricity market. I had a model 
that ran in about 20 seconds. After changing some of the input data, I ran it 
again, and this time GLPK kept giving the message:
'spx_simplex: numerical instability (primal simplex, phase II)'
and took much longer to run.

What does this message mean, and is there anything I can do about it to make 
my model run faster?

I am using GLPK 4.8. A copy of some of the output from GLPK is attached.

-- 
Andrew Walbran
website: http://user.interface.org.nz/~andrew/
blog: http://qwandor.wordpress.com/
      0:   objval =   0.000000000e+00   infeas =   1.000000000e+00 (4760)
    200:   objval =   0.000000000e+00   infeas =   9.285714286e-01 (4635)
    400:   objval =   0.000000000e+00   infeas =   8.495238095e-01 (4518)
    600:   objval =   0.000000000e+00   infeas =   7.761904762e-01 (4395)
    800:   objval =   0.000000000e+00   infeas =   6.990476190e-01 (4276)
   1000:   objval =   0.000000000e+00   infeas =   6.276190476e-01 (4151)
   1200:   objval =   0.000000000e+00   infeas =   5.514285714e-01 (4031)
   1400:   objval =  -1.067320000e+05   infeas =   4.885714286e-01 (3897)
   1600:   objval =  -1.067320000e+05   infeas =   4.209523810e-01 (3768)
   1800:   objval =  -1.067320000e+05   infeas =   3.438095238e-01 (3649)
   2000:   objval =  -1.067320000e+05   infeas =   2.666666667e-01 (3530)
   2200:   objval =  -1.125400000e+05   infeas =   1.971428571e-01 (3403)
   2400:   objval =  -1.604280000e+05   infeas =   1.352380952e-01 (3268)
   2600:   objval =  -2.218360000e+05   infeas =   6.380952381e-02 (3143)
   2770:   objval =  -2.218360000e+05   infeas =   0.000000000e+00 (3040)
*  2770:   objval =  -2.218360000e+05   infeas =   0.000000000e+00 (3040)
*  2800:   objval =  -2.218360000e+05   infeas =   0.000000000e+00 (3016)
*  3000:   objval =  -2.218360000e+05   infeas =   0.000000000e+00 (2848)
*  3200:   objval =  -2.218360000e+05   infeas =   0.000000000e+00 (2840)
*  3400:   objval =  -2.218360000e+05   infeas =   0.000000000e+00 (2812)
*  3600:   objval =  -2.218360000e+05   infeas =   0.000000000e+00 (2614)
*  3800:   objval =  -2.218360000e+05   infeas =   0.000000000e+00 (2463)
*  3850:   objval =  -2.104749715e+05   infeas =   1.545625961e-05 (2431)
spx_simplex: numerical instability (primal simplex, phase II)
   3850:   objval =  -2.104749715e+05   infeas =   1.000000000e+00 (2431)
   3852:   objval =  -2.104899764e+05   infeas =   0.000000000e+00 (2431)
*  3852:   objval =  -2.104899764e+05   infeas =   0.000000000e+00 (2431)
*  4000:   objval =  -2.027960010e+05   infeas =   0.000000000e+00 (2325)
*  4200:   objval =  -2.027960010e+05   infeas =   0.000000000e+00 (2131)
*  4400:   objval =  -1.817560020e+05   infeas =   0.000000000e+00 (1974)
*  4600:   objval =  -1.385647655e+05   infeas =   1.167201132e-17 (1851)
*  4800:   objval =  -1.385647655e+05   infeas =   1.022719740e-16 (1673)
*  5000:   objval =  -1.182145462e+05   infeas =   8.312175542e-19 (1567)
*  5200:   objval =  -1.181936887e+05   infeas =   9.760128180e-19 (1494)
*  5400:   objval =  -6.024188358e+04   infeas =   9.760128180e-19 (1452)
*  5600:   objval =  -6.024188358e+04   infeas =   9.760128180e-19 (1393)
*  5800:   objval =  -6.024188358e+04   infeas =   9.760128180e-19 (1240)
*  6000:   objval =  -6.024188358e+04   infeas =   9.760128180e-19 (1189)
*  6200:   objval =  -5.974162677e+04   infeas =   2.713796019e-05 (1129)
*  6241:   objval =  -5.973727129e+04   infeas =   1.089093582e-06 (1129)
spx_simplex: numerical instability (primal simplex, phase II)
   6241:   objval =  -5.973727129e+04   infeas =   1.000000000e+00 (1129)
   6273:   objval =  -5.977393357e+04   infeas =   6.224386775e-13 (1128)
*  6273:   objval =  -5.977393357e+04   infeas =   6.778939689e-19 (1128)
*  6400:   objval =  -4.408167396e+03   infeas =   1.116595321e-17 (1127)
*  6448:   objval =   1.467293667e+04   infeas =   1.234802645e-05 (1125)
spx_simplex: numerical instability (primal simplex, phase II)
   6448:   objval =   1.467293667e+04   infeas =   1.000000000e+00 (1125)
   6450:   objval =   1.465459360e+04   infeas =   1.012469054e-12 (1125)
*  6450:   objval =   1.465459360e+04   infeas =   1.250199466e-17 (1125)
*  6600:   objval =   2.712762785e+04   infeas =   1.023956800e-17 (1094)
*  6635:   objval =   4.142800162e+04   infeas =   1.383921078e-05 (1092)
spx_simplex: numerical instability (primal simplex, phase II)
   6635:   objval =   4.142800162e+04   infeas =   1.000000000e+00 (1092)
   6650:   objval =   4.091423576e+04   infeas =   3.522889062e-12 (1092)
*  6650:   objval =   4.091423576e+04   infeas =   4.875400428e-17 (1092)
*  6800:   objval =   4.144166671e+04   infeas =   4.630515260e-17 (1089)
*  6854:   objval =   4.178153969e+04   infeas =   6.125667318e-07 (1081)
spx_simplex: numerical instability (primal simplex, phase II)
   6854:   objval =   4.178153969e+04   infeas =   1.000000000e+00 (1081)
   6855:   objval =   4.178071147e+04   infeas =   6.282247448e-02 (1081)
*  6855:   objval =   4.178071147e+04   infeas =   3.848295788e-08 (1081)
*  6923:   objval =   5.775901320e+04   infeas =   1.757007070e-07 (1081)
spx_simplex: numerical instability (primal simplex, phase II)
   6923:   objval =   5.775901320e+04   infeas =   1.000000000e+00 (1081)
   6925:   objval =   5.775707787e+04   infeas =   2.928661479e-08 (1081)
*  6925:   objval =   5.775707787e+04   infeas =   5.145678924e-15 (1081)
*  7000:   objval =   6.565918031e+04   infeas =   1.593601934e-05 (1075)
*  7039:   objval =   6.836728403e+04   infeas =   3.797430285e-05 (1069)
spx_simplex: numerical instability (primal simplex, phase II)
   7039:   objval =   6.836728403e+04   infeas =   1.000000000e+00 (1069)
   7110:   objval =   6.836064051e+04   infeas =   1.540055113e-11 (1069)
*  7110:   objval =   6.836064051e+04   infeas =   5.848251927e-16 (1069)
*  7200:   objval =   6.845804622e+04   infeas =   6.389592533e-16 (1069)
*  7400:   objval =   8.355675131e+04   infeas =   1.749627951e-15 (1026)
*  7600:   objval =   9.850668561e+04   infeas =   2.882826372e-14 (983)
*  7785:   objval =   1.102691911e+05   infeas =   1.281523628e-06 (952)
spx_simplex: numerical instability (primal simplex, phase II)
   7785:   objval =   1.102691911e+05   infeas =   1.000000000e+00 (952)
   7791:   objval =   1.102285924e+05   infeas =   3.897958138e-10 (952)
*  7791:   objval =   1.102285924e+05   infeas =   4.995325454e-16 (952)
*  7800:   objval =   1.102289169e+05   infeas =   1.120809444e-09 (952)
*  7838:   objval =   1.302813724e+05   infeas =   8.219175570e-06 (952)
spx_simplex: numerical instability (primal simplex, phase II)
   7838:   objval =   1.302813724e+05   infeas =   1.000000000e+00 (952)
   7861:   objval =   1.301260637e+05   infeas =   3.526325240e-11 (952)
*  7861:   objval =   1.301260637e+05   infeas =   2.898348627e-16 (952)
*  7895:   objval =   1.440006435e+05   infeas =   7.597997903e-07 (952)
spx_simplex: numerical instability (primal simplex, phase II)
   7895:   objval =   1.440006435e+05   infeas =   1.000000000e+00 (952)
   7897:   objval =   1.440003185e+05   infeas =   3.757066771e-10 (952)
*  7897:   objval =   1.440003185e+05   infeas =   2.854618545e-16 (952)
*  7960:   objval =   1.577276739e+05   infeas =   1.542108122e-06 (940)
spx_simplex: numerical instability (primal simplex, phase II)
   7960:   objval =   1.577276739e+05   infeas =   1.000000000e+00 (940)
   7965:   objval =   1.551342596e+05   infeas =   9.596750653e-11 (940)
*  7965:   objval =   1.551342596e+05   infeas =   1.479922713e-16 (940)
*  8000:   objval =   1.558562507e+05   infeas =   1.349003015e-16 (940)
*  8014:   objval =   1.593749692e+05   infeas =   8.266211652e-07 (940)
spx_simplex: numerical instability (primal simplex, phase II)
   8014:   objval =   1.593749692e+05   infeas =   1.000000000e+00 (940)
   8018:   objval =   1.573225378e+05   infeas =   4.069235137e-10 (940)
*  8018:   objval =   1.573225378e+05   infeas =   3.363715890e-16 (940)
*  8065:   objval =   1.622893943e+05   infeas =   1.372972332e-04 (940)
spx_simplex: numerical instability (primal simplex, phase II)
   8065:   objval =   1.622893943e+05   infeas =   1.000000000e+00 (940)
   8066:   objval =   1.605101428e+05   infeas =   6.826752520e-05 (940)
*  8066:   objval =   1.605101428e+05   infeas =   9.372942329e-09 (940)
*  8200:   objval =   1.804962802e+05   infeas =   3.817291701e-16 (940)
*  8261:   objval =   1.843583648e+05   infeas =   8.999891551e-07 (939)
spx_simplex: numerical instability (primal simplex, phase II)
   8261:   objval =   1.843583648e+05   infeas =   1.000000000e+00 (939)
   8263:   objval =   1.843581728e+05   infeas =   4.425420640e-10 (939)
*  8263:   objval =   1.843581728e+05   infeas =   3.982830583e-16 (939)
*  8400:   objval =   2.058503059e+05   infeas =   6.818637691e-16 (937)
*  8484:   objval =   2.088968757e+05   infeas =   6.873728204e-07 (932)
spx_simplex: numerical instability (primal simplex, phase II)
   8484:   objval =   2.088968757e+05   infeas =   1.000000000e+00 (932)
   8489:   objval =   2.088514344e+05   infeas =   5.856782746e-10 (932)
*  8489:   objval =   2.088514344e+05   infeas =   4.025793274e-16 (932)
*  8600:   objval =   2.691227618e+05   infeas =   2.315862918e-16 (932)
*  8800:   objval =   2.814827296e+05   infeas =   8.659814955e-16 (928)

Attachment: pgp1MhqI71axa.pgp
Description: PGP signature

_______________________________________________
Help-glpk mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-glpk

Reply via email to