[Coin-lpsolver] Problem start position

John J Forrest jjforre at us.ibm.com
Fri Mar 18 11:47:36 EST 2005


Kyle,

It would should improve the time giving it a good feasible solution.  If 
you create a solution in an array numberColumns long you can pass it to 
Clp using setColSolution(array).  If you want to save memory and are 
careful you can get Clp's solution array by model->primalColumnSolution() 
and fill it in directly.

To use you then call primal(1) instead of primal().

The code should then go through matrix once and the number of iterations 
should be the number of variables not at their bounds.  You will get a 
message something like "end of values pass".  These iterations can be very 
fast.  At this stage you should have a basic feasible solution and primal 
will continue as normal.  If this looks promising but the values pass is 
taking too much time you can improve things by putting variables in basis 
to start with but try the simple approach first.

BTW did you understand my note of the thirteenth to you suggesting a 
"sprint" strategy.  It may have been a bit garbled but if your problem is 
very large and very long and thin then it can work very well.

John Forrest



Kyle Ellrott <kellrott at csbl.bmb.uga.edu> 
Sent by: coin-lpsolver-bounces at list.coin-or.org
03/18/2005 11:10 AM

To
coin-lpsolver at list.coin-or.org
cc

Subject
[Coin-lpsolver] Problem start position






I'm still trying to get a handle on some of the technical details in 
linear programming, so please excuse me if this question is out 
there...

 From what I under stand, simplex works by moving from vertex to vertex 
of possible solutions, until it finds the optimal one.  I was 
wondering, if I could produce a feasible answer (with dynamic 
programming), that is close to the optimal point (and would have been 
optimal save for some additional complexities added to the problem, 
which is why I'm using integer programming and not dynamic), could I 
use that as a start point in the search?  Would this improve the speed 
of the algorithm?  And if it is possible, how would I go about 
initializing CLP with this information?


Kyle

_______________________________________________
Coin-lpsolver mailing list
Coin-lpsolver at list.coin-or.org
http://list.coin-or.org/mailman/listinfo/coin-lpsolver

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/clp/attachments/20050318/c09759b3/attachment.html>


More information about the Clp mailing list