[Os-project-managers] [Osi] Using setBasisStatus or setWarmStart -- part 2

Kipp Martin kmartin at chicagobooth.edu
Thu Apr 14 12:51:39 EDT 2011



-------- Original Message --------
Subject: 	Re: [Osi] Using setBasisStatus or setWarmStart
Date: 	Fri, 25 Mar 2011 10:32:54 +0100
From: 	Jan-Willem Goossens <jhmgoossens at hotmail.com>
To: 	Kipp Martin <kmartin at chicagobooth.edu>



Hi Kipp,

It was a long time ago, but I think the answer for me was to do
something along the lines of
(I'm just typing this code here, so no guarantees..)

     OsiClpSolverInterface model;
     [...]
     model.initialSolve();

     CoinWarmStart *warmStart = model.getWarmStart();
     // "(and make sure to *copy* the getColSolution() array..)"
     double * colSolution =
     CoinCopyOfArray<double>(model.getColSolution(), model.getNumCols());

     [ do some stuff ]

     model.setColSolution(colSolution);
     model.setWarmStart(warmStart);
     model.resolve();


I dont think this solves your specific problem.
Only knowing which variables are in the optimal basis is not enough to
do a quick resolve.

Maybe try to contact John?

Good luck.
Regards,

Jan-Willem





On 24 March 2011 21:17, Kipp Martin <kmartin at chicagobooth.edu
<mailto:kmartin at chicagobooth.edu>> wrote:

     Hi Jan-Willem:

     As a follow up, I have been studying your email exchange with John
     and there is something about using setColSolution( const double
     *colsol). But I may only know information about the basis and not
     actual primal variable values. So I may know which variables are
     basic, but not know their values. Can't I just tell Osi which
     variables are basic?

     Thanks




         Sorry for the late reply (I guess you solved this by now, but
         anyway..)
         See:
         http://list.coin-or.org/pipermail/osi/2008-October/000181.html

         Regards,

         Jan-Willem
         <http://list.coin-or.org/pipermail/osi/2008-October/000181.html>

         On 24 January 2011 03:29, Kipp Martin <kmartin at chicagobooth.edu
         <mailto:kmartin at chicagobooth.edu>
         <mailto:kmartin at chicagobooth.edu
         <mailto:kmartin at chicagobooth.edu>>> wrote:

         Hi:

         I am using Osi to build an OsiSolverInterface. When I create the
         linear
         program and use setBasisStatus it has absolutely no effect on
         the number
         of pivots that Clp does even if I start with an optimal basis.
         Perhaps I
         should be using setWarmStart?

         Is there any documentation, or are there any examples anywhere,
         on how
         to use either setWarmStart or setBasisStatus?

         Thanks


         --
         Kipp Martin
         Professor of Operations Research
         and Computing Technology
         Booth School of Business
         University of Chicago
         5807 South Woodlawn Avenue
         Chicago, IL 60637
         773-702-7456
         kmartin at chicagobooth.edu <mailto:kmartin at chicagobooth.edu>
         <mailto:kmartin at chicagobooth.edu <mailto:kmartin at chicagobooth.edu>>
         http://www.chicagobooth.edu/faculty/bio.aspx?person_id=12825325568
         http://projects.coin-or.org/OS

         _______________________________________________
         Osi mailing list
         Osi at list.coin-or.org <mailto:Osi at list.coin-or.org>
         <mailto:Osi at list.coin-or.org <mailto:Osi at list.coin-or.org>>
         http://list.coin-or.org/mailman/listinfo/osi




     --
     Kipp Martin
     Professor of Operations Research
     and Computing Technology
     Booth School of Business
     University of Chicago
     5807 South Woodlawn Avenue
     Chicago, IL 60637
     773-702-7456
     kmartin at chicagobooth.edu <mailto:kmartin at chicagobooth.edu>
     http://www.chicagobooth.edu/faculty/bio.aspx?person_id=12825325568
     http://projects.coin-or.org/OS




More information about the Os-project-managers mailing list