[Top][All Lists]

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

Re: [Help-glpk] precision for MIP

From: Michael Hennebry
Subject: Re: [Help-glpk] precision for MIP
Date: Mon, 21 Mar 2005 11:42:31 -0600 (CST)

On Mon, 21 Mar 2005, David Stephenson wrote:

> I am getting quite a few numerical instability (dual simplex) warnings
> while solving a MIP problem with coefficients on the order of 10^8, and
> so I'm considering trying to integrate an arbitrary precision package
> into the GLPK code.

Why do you have such large coefficients?
Reformulation might be your best choice.
In particular, if 10^8 is the result of a big-M formulation,
do the math and find the smallest allowable big-M.
Smaller big-M's also allow for tighter continuous relaxations.

If you really need big coeficients and speed is an
issue you probably don't want arbitrary precision.

Your best bet might be finding a machine
on which double is more than 64 bits.

If that doesn't work,
you might try changing all the doubles to long doubles.
Be sure to change the IO statements.
That is how I made a version of lp_solve that used rational arithmetic.

If no builtin type will do, you will want to change to C++,
otherwise you will have to recode every statement that does arithmetic.
Change all the doubles to REALs and define a class REAL.
C++ will let you define arithmetic operators for REAL.

Mike   address@hidden
"Our gods are dead.  Ancient Klingon warriors slew them
... they were more trouble than they were worth."          --  Worf

reply via email to

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