bug-glpk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-glpk] Re: numerical instability - infinite loop


From: Andrew Makhorin
Subject: Re: [Bug-glpk] Re: numerical instability - infinite loop
Date: Thu, 29 Oct 2009 17:10:29 +0300

Hi Ali,

> I just added a limit on the number of restarts in the simplex
> algorithm. In this way i do avoid the infinite loop. Could it be
> officially supported?

In principle, yes. However, there is a technical problem. The point
is that the numerical instability detected by the simplex solver,
as a rule, does not lead to cycling, and it would be difficult to
distinguish between cycling and non-cycling cases due to possible
degeneracy.

> It would be nice to have a function that makes a hexadecimal snapshot
> of the internal state of the solver and writes it to the disk so it
> can be reproduced.

Hexadecimal floats is a relatively new language feature, and I am
not sure that it is supported by all C/C++ compilers used to-day.
(Though this could be detected by configure script.)

> Could you please help me how my LP problems should be change to
> improve their numerical properties?

Then you should explain me your source problem and how you model it
with lp.

> I already removed the tiny coefficients as you proposed and i suspect
> now the tiny row bounds are causing the trouble.

Perhaps, yes, because row bounds are used as right-hand sides on
ftran and btran, and if the basis matrix is ill-conditioned, non-zero
rhs's may produce large round-off errors in the basic solution.

> An example is at the link i sent yesterday. The main.cpp takes the
> dump.txt as the input, builds the problem, writes it as dump.lp then
> starts the iteration and produces the log.txt console output. I can
> only reproduce this in the Windows environment.

I need a time to check your code.


Andrew Makhorin





reply via email to

[Prev in Thread] Current Thread [Next in Thread]