[Dip] Restricted Master Solution Value

Kipp Martin kmartin at chicagobooth.edu
Sat Oct 16 15:50:19 EDT 2010


Hi Matt:

Thanks for this information. Very useful.

What is strange is that

DecompAlgo * algo          = getDecompAlgo();

compiles and executes just fine without

   #include "DecompAlgo.h"

I will reveal my utter lack of C++ here, but I just assumed that since 
the above worked without

#include "DecompAlgo.h"

that the DecompAlgo.h was getting included somewhere earlier in the food 
chain like in

#include "OSDipApp.h"

and did not even bother to look for DecompAlgo.h. Since DecompAlgo.h 
was not getting included I have no idea why

DecompAlgo * algo          = getDecompAlgo();

would compile since it seems like algo would be an unknown data type. 
This strikes me as odd, but anyway at least it works now.

Thanks


> 
> 
>   
>  From your user function, get access to the DecompAlgo class:
>    DecompAlgo   * algo          = getDecompAlgo();
> 
> Then, use the access methods in there, e.g.:
>    const double * masterDualSol    = algo->getMasterDualSolution();
>    const double * masterPrimalSol = algo->getMasterPrimalSolution();
>    double masterObjValue = algo->getMasterObjValue();
> 
> If you want direct access to the master Osi object, use:
>    OsiSolverInterface * osi = algo->getMasterOSI( )
> 
>  From there, you can use any base Osi method, or if you want specific 
> OsiClp methods, cast the Osi object to an OsiClp object.
> 
> 
> 


-- 
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
http://www.chicagobooth.edu/faculty/bio.aspx?person_id=12825325568
http://projects.coin-or.org/OS



More information about the Dip mailing list