help-glpk
[Top][All Lists]
Advanced

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

Re: [Help-glpk] LPX_E_SING Error on 64bit Platform


From: glpk xypron
Subject: Re: [Help-glpk] LPX_E_SING Error on 64bit Platform
Date: Sat, 08 May 2010 08:41:38 +0200

Hi,

from your appendix I guess you are using Debian. GLPK 4.29-2 is the
package currently distributed with Debian Lenny.

Upstreams GLPK 4.29 is an old version. The current version is 4.43.
It is available as Debian package for Debian Squeeze and Sid.

Please, download the current source with command
wget ftp://ftp.gnu.org/gnu/glpk/glpk-4.43.tar.gz
untar with
tar -xzf glpk-4.43.tar.gz
and follow the instructions in glpk-4.43/INSTALL to build
the current version.

Please, inform address@hidden if you can reproduce the error
with GLPK 4.43 on your 64bit machine.

If the error is specific to 4.29, please, use the Debian tool
reportbug and ask the package maintainer to upgrade GLPK. You 
can install reportbug with
sudo apt-get install reportbug

Best regards

Xypron


-------- Original-Nachricht --------
> Datum: Fri, 07 May 2010 10:30:09 +0300
> Von: Volkan YAZICI <address@hidden>
> An: address@hidden
> Betreff: [Help-glpk] LPX_E_SING Error on 64bit Platform

> Hi,
> 
> While trying to solve attached ILP problem as below:
> 
>   int
>   main(void)
>   {
>       glp_prob *lp;
>   
>       lp = glp_create_prob();
>       assert(!glp_read_lp(lp, NULL, "repl-ilp-xXNtiz"));
>   
>       assert(!glp_simplex(lp, NULL) && glp_get_status(lp) == GLP_OPT);
>       lpx_set_int_parm(lp, LPX_K_USECUTS, LPX_C_ALL);
>       lpx_set_real_parm(lp, LPX_K_TMLIM, 1);
>       lpx_adv_basis(lp);
>       {
>           int ret = lpx_intopt(lp);
>           assert(ret == LPX_E_OK || ret == LPX_E_TMLIM);
>       }
>   
>       return 0;
>   }
> 
> The final assertion fails with "ret" set to 211 (LPX_E_SING). Below is
> the program output:
> 
>   glp_read_lp: reading problem data from `repl-ilp-xXNtiz'...
>   glp_read_lp: 101 rows, 166 columns, 531 non-zeros
>   glp_read_lp: 166 integer columns, all of which are binary
>   glp_read_lp: 272 lines were read
>   *     0:   objval =   0.000000000e+00   infeas =   0.000000000e+00 (0)
>   *   124:   objval =   3.702857143e+01   infeas =   8.881784197e-16 (0)
>   OPTIMAL SOLUTION FOUND
>   lpx_adv_basis: size of triangular part = 101
>   ipp_basic_tech:  0 row(s) and 0 column(s) removed
>   ipp_reduce_bnds: 1 pass(es) made, 0 bound(s) reduced
>   ipp_basic_tech:  0 row(s) and 0 column(s) removed
>   ipp_reduce_coef: 1 pass(es) made, 0 coefficient(s) reduced
>   lpx_intopt: presolved MIP has 101 rows, 166 columns, 531 non-zeros
>   lpx_intopt: 166 integer columns, all of which are binary
>   lpx_adv_basis: size of triangular part = 101
>   Solving LP relaxation...
>   *   124:   objval =   0.000000000e+00   infeas =   0.000000000e+00 (0)
>   *   134:   objval =   3.702857143e+01   infeas =   0.000000000e+00 (0)
>   OPTIMAL SOLUTION FOUND
>   Creating the conflict graph...
>   The conflict graph has 2*166 vertices and 535 edges
>   Generating cutting planes...
>   &   134: obj =   3.702857143e+01   frac =    33   cuts =     0 (0)
>   &   331: obj =   2.800000000e+01   frac =    18   cuts =    81 (162)
>   81 mixed cover cut(s) added
>   Integer optimization begins...
>   +   331: mip =     not found yet <=              +inf        (1; 0)
>   Gomory's cuts enabled
>   MIR cuts enabled
>   +   394: >>>>>   2.700000000e+01 <=   2.800000000e+01   3.7% (4; 0)
>   spx_invert: the basis matrix is singular
>   spx_simplex: numerical problems with basis matrix
>   spx_simplex: sorry, basis recovery procedure not implemented yet
>   ios_driver: unable to solve current LP relaxation; glp_simplex returned
> 5
>   +  1719: mip =   2.700000000e+01 <=   2.800000000e+01   3.7% (83; 31)
>   glp_intopt: cannot solve current LP relaxation
>   repl-k: src/ilp.c:153: solve_ilp: Assertion `ret == 200' failed.
> 
> The strange thing is, while above codes works perfectly on my notebook
> (32bit), it fails to run on a remote server (64bit). Below are system
> specifications of both machines.
> 
>   REMOTE-SERVER
>   -------------
>   $ gcc -v
>   Using built-in specs.
>   Target: x86_64-linux-gnu
>   Configured with: ../src/configure -v --with-pkgversion='Debian
> 4.3.2-1.1' --with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs
> --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared
> --with-system-zlib --libexecdir=/usr/lib --without-included-gettext 
> --enable-threads=posix
> --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3
> --program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug 
> --enable-objc-gc
> --enable-mpfr --enable-cld --enable-checking=release --build=x86_64-linux-gnu
> --host=x86_64-linux-gnu --target=x86_64-linux-gnu
>   Thread model: posix
>   gcc version 4.3.2 (Debian 4.3.2-1.1)
>   $ glpsol -v
>   GLPSOL: GLPK LP/MIP Solver 4.29
> 
>   NOTEBOOK
>   --------
>   $ gcc -v
>   Using built-in specs.
>   Target: i486-linux-gnu
>   Configured with: ../src/configure -v --with-pkgversion='Debian
> 4.3.2-1.1' --with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs
> --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared
> --with-system-zlib --libexecdir=/usr/lib --without-included-gettext 
> --enable-threads=posix
> --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3
> --program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug 
> --enable-objc-gc
> --enable-mpfr --enable-targets=all --enable-cld --enable-checking=release
> --build=i486-linux-gnu --host=i486-linux-gnu --target=i486-linux-gnu
>   Thread model: posix
>   gcc version 4.3.2 (Debian 4.3.2-1.1)
>   You have new mail in /var/mail/vy
>   $ glpsol -v
>   GLPSOL: GLPK LP/MIP Solver 4.29
> 
> What might I be missing? Any ideas?
> 
> 
> Regards.
> 

-- 
GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01




reply via email to

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