[Clp] segfault error

John Forrest john.forrest at fastercoin.com
Mon Aug 8 09:11:17 EDT 2016


Jackson,

The dual of the problem is easier to solve.  So if I use the dualize 
option barrier solves it quite quickly - BUT ...

the crossover to a basic solution runs very slowly - it looks as if 
there are some accuracy issues on dualized problem.

If you don't crossover then the conversion back from dualized problem 
complains.  So I have modified in svn stable and trunk so it doesn't 
complain.

My options were fairly complicated (the last few commands are not needed 
- I was just checking original model is fairly stable) - the important 
commands are -dualize 1 -crossover off -barrier. Time was under ten 
minutes - see attached file.

John Forrest


On 01/08/16 23:51, Jackson Christopher Gorham wrote:
>
> Cool, after modifying my code a bit (which changed the constraint 
> matrix and/or objective) and changing the Clp solver to SolveType = 5, 
> the LP now finishes for a smaller instance of the problem pretty 
> quickly. However, when I run this on the somewhat larger instance I'd 
> like to solve (about 10x), the solver runs for at least 30 minutes on 
> my laptop without returning. I've attached a MPS format of the input 
> in case you'd like to inspect the actual problem being solved (I 
> needed to use a link as the file is too large to email):
>
> https://drive.google.com/folderview?id=0BwHS4GE_zDgWeVhtWlhUNlhBaWM&usp=sharing
>
> PS: I've left all other options in the solver as their defaults.
>
> ------------------------------------------------------------------------
> *From:* Clp <clp-bounces at coin-or.org> on behalf of Jackson Gorham 
> <jacksongorham at gmail.com>
> *Sent:* Tuesday, July 26, 2016 4:29:24 PM
> *To:* clp at list.coin-or.org
> *Subject:* [Clp] segfault error
> Hello! My name is Jackson Gorham, and I've been using the Clp solver 
> to solve many linear programs which are relevant to my research. 
> Recently, I been trying to solve some LPs and unfortunately Clp has 
> been segfault'ing on me. When I run the program with its most verbose 
> logging option, I see the following on stdout:
>
> [Solving optimization program]
> Clp0051I Range of diagonal values is 1e+12 to 0.00074793108
> Clp0054I 241 variables killed this iteration
> Clp0058I Steps - primal 0.99429773 ,dual 0.99516802 , mu 1.4472757e-15
> Clp0035I 13 Primal 153.81162 Dual 153.81162 Complementarity 
> 6.736505e-10 - 17621 fixed, rank 127312
> Clp0036I Feasible - objective gap 1.6454072e-09
> Clp0042I Optimal
> Clp0046I At end primal/dual infeasibilities 0/0, complementarity gap 
> 0, objective 153.81162
> Clp0033I Barrier took 92.20 seconds (total 92.32)
> Clp0033I Crossover took 0.00 seconds (total 92.32)
> Coin0511I After Postsolve, objective 153.81162, infeasibilities - dual 
> 0 (0), primal 0 (0)
> Clp0032I Optimal objective 153.8116218 - 26 iterations time 92.332, 
> Presolve 0.14
> Coin0513I 1924 rows dropped after presolve pass 1
> Coin0506I Presolve 409606 (-1924) rows, 49995 (-15) columns and 
> 1356796 (-11544) elements
> Clp0033I Presolve took 0.32 seconds (total 0.32)
> Clp0022I Absolute values of scaled rhs range from 0.005501532 to 
> 7.9713658, minimum gap 1e+100
> Clp0020I Absolute values of scaled objective range from 1.6232495e-09 
> to 0.002555952
> Clp0021I Absolute values of scaled bounds range from 1 to 1, minimum 
> gap 2
> 6.83568e+08 elements in sparse Cholesky, flop count 3.77274e+14
>
> which after hanging for a while is followed by this getting printed to 
> stderr:
>
> signal (11): Segmentation fault
> _ZN15ClpCholeskyBase9factorizeEPKdPi at 
> /home/jgorham/.julia/v0.4/Cbc/deps/usr/lib/libClp.so (unknown line)
> _ZN21ClpPredictorCorrector14createSolutionEv at 
> /home/jgorham/.julia/v0.4/Cbc/deps/usr/lib/libClp.so (unknown line)
> _ZN21ClpPredictorCorrector5solveEv at 
> /home/jgorham/.julia/v0.4/Cbc/deps/usr/lib/libClp.so (unknown line)
> _ZN10ClpSimplex12initialSolveER8ClpSolve at 
> /home/jgorham/.julia/v0.4/Cbc/deps/usr/lib/libClp.so (unknown line)
> initial_solve_with_options at 
> /home/jgorham/.julia/v0.4/Clp/src/ClpCInterface.jl:190
> optimize! at /home/jgorham/.julia/v0.4/Clp/src/ClpSolverInterface.jl:183
> jlcall_optimize!_22590 at  (unknown line)
> jl_apply at /dev/shm/julia-0.4.0/src/gf.c:1711
> solve at /home/jgorham/.julia/v0.4/JuMP/src/solvers.jl:138
> julia_solve_22484 at  (unknown line)
> jl_apply at /dev/shm/julia-0.4.0/src/gf.c:1711
> affine_graph_discrepancy at util.jl:155
> ...
> ...
> srun: error: sh-26-33: task 0: Segmentation fault
>
> I suspect this is due to the fact that my constraint matrix is badly 
> conditioned... is that correct? If so, is there anything I can do to 
> improve the preconditioning and/or get around this? Let me know if I 
> can provide any other information that might be useful here.
>
> Thanks!
> ~jackson
>
>
> _______________________________________________
> Clp mailing list
> Clp at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/clp


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/clp/attachments/20160808/94d3d103/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: hard.log
Type: text/x-log
Size: 21975 bytes
Desc: not available
URL: <http://list.coin-or.org/pipermail/clp/attachments/20160808/94d3d103/attachment-0001.bin>


More information about the Clp mailing list