<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:p="urn:schemas-microsoft-com:office:powerpoint" xmlns:a="urn:schemas-microsoft-com:office:access" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema" xmlns:b="urn:schemas-microsoft-com:office:publisher" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:odc="urn:schemas-microsoft-com:office:odc" xmlns:oa="urn:schemas-microsoft-com:office:activation" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:q="http://schemas.xmlsoap.org/soap/envelope/" xmlns:D="DAV:" xmlns:x2="http://schemas.microsoft.com/office/excel/2003/xml" xmlns:ois="http://schemas.microsoft.com/sharepoint/soap/ois/" xmlns:dir="http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:dsp="http://schemas.microsoft.com/sharepoint/dsp" xmlns:udc="http://schemas.microsoft.com/data/udc" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sub="http://schemas.microsoft.com/sharepoint/soap/2002/1/alerts/" xmlns:ec="http://www.w3.org/2001/04/xmlenc#" xmlns:sp="http://schemas.microsoft.com/sharepoint/" xmlns:sps="http://schemas.microsoft.com/sharepoint/soap/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:udcxf="http://schemas.microsoft.com/data/udc/xmlfile" xmlns:wf="http://schemas.microsoft.com/sharepoint/soap/workflow/" xmlns:mver="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns:mrels="http://schemas.openxmlformats.org/package/2006/relationships" xmlns:ex12t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ex12m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:Z="urn:schemas-microsoft-com:" xmlns:st="" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
tt
        {mso-style-priority:99;
        font-family:"Courier New";}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page Section1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.Section1
        {page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=EN-US link=blue vlink=purple>
<div class=Section1>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>John,<o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Sorry, two more questions for my understanding: <o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>In general, why is it that get/set col solution is necessary for
a good warmstart for primal simplex, but whenever <b>dual simplex</b> is used,
isnt it necessary to, for example, get/set<b> row prices</b> when warm
starting?<o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Also, is there a way to retrieve the last used algorithm? (dual,
primal, etc) <o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>OsiClp has "lastAlgorithm_" but that’s private. <o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>On the other hand, ClpSimplex has the public "algorithm()"
but using osiClpModel->GetModelPtr()->algorithm() only works in resolve,
not in initialSolve, because initialSolve uses a separate solver and
borrowModel, so after an initialSolve, the osiClpModel->GetModelPtr()->algorithm()
is still 0 (!). At least, if I understand the code correctly..<o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Regards,<o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'>Jan-Willem<o:p></o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p> </o:p></span></p>
<p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
color:#1F497D'><o:p> </o:p></span></p>
<div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'>
<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span
style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> osi-bounces@list.coin-or.org
[mailto:osi-bounces@list.coin-or.org] <b>On Behalf Of </b>John J Forrest<br>
<b>Sent:</b> 31 October 2008 16:33<br>
<b>Cc:</b> osi@list.coin-or.org<br>
<b>Subject:</b> Re: [Osi] OsiClp WarmStarts<o:p></o:p></span></p>
</div>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal style='margin-bottom:12.0pt'><br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif"'>Jan,</span> <br>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif"'>I think the
trouble is that OsiClp trusts the current solution as well as the basis.
In Primal it will use the current solution and basis, which will explain
the behavior in Primal. In Dual, I am not sure what the problem is.
Presolve may make a small difference, but should not make a major
difference. Clp itself has more flexibility.</span> <br>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif"'>Is it OK with
you to use getColSolution(0 and setColSolution()?</span> <br>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif"'>John Forrest</span>
<br>
<br>
<o:p></o:p></p>
<table class=MsoNormalTable border=0 cellpadding=0 width="100%"
style='width:100.0%'>
<tr>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><img width=100 height=1 id="_x0000_i1035"
src="cid:image001.gif@01C93E66.ECF31630"><o:p></o:p></p>
</td>
<td width="100%" style='width:100.0%;padding:.75pt .75pt .75pt .75pt'>
<table class=MsoNormalTable border=0 cellpadding=0 width="100%"
style='width:100.0%'>
<tr>
<td width="100%" valign=top style='width:100.0%;padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Arial","sans-serif"'>[Osi]
OsiClp WarmStarts</span></b><o:p></o:p></p>
</td>
</tr>
</table>
<p class=MsoNormal><o:p> </o:p></p>
<table class=MsoNormalTable border=0 cellpadding=0 width="100%"
style='width:100.0%'>
<tr>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Arial","sans-serif";
color:#E26200'>Goossens Jan-Willem </span></b><o:p></o:p></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span style='font-size:10.0pt;font-family:"Arial","sans-serif";
color:#8F8F8F'>to:</span> <o:p></o:p></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span style='font-size:10.0pt;font-family:"Arial","sans-serif"'>osi@list.coin-or.org</span>
<o:p></o:p></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal align=right style='text-align:right'><span
style='font-size:7.5pt;font-family:"Arial","sans-serif"'>10/31/2008 06:48
AM</span><o:p></o:p></p>
</td>
</tr>
</table>
<p class=MsoNormal><o:p> </o:p></p>
<table class=MsoNormalTable border=0 cellpadding=0 width="100%"
style='width:100.0%'>
<tr>
<td style='padding:.75pt .75pt .75pt .75pt'>
<table class=MsoNormalTable border=0 cellpadding=0 width="100%"
style='width:100.0%'>
<tr>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span style='font-size:10.0pt;font-family:"Arial","sans-serif";
color:#8F8F8F'>Sent by:</span> <o:p></o:p></p>
</td>
<td width="100%" style='width:100.0%;padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Arial","sans-serif";
color:#E26200'>osi-bounces@list.coin-or.org</span></b><o:p></o:p></p>
</td>
</tr>
</table>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'></td>
</tr>
</table>
</td>
</tr>
</table>
<p class=MsoNormal style='margin-bottom:12.0pt'><o:p> </o:p></p>
<div class=MsoNormal align=center style='text-align:center'>
<hr size=2 width="100%" align=center>
</div>
<p class=MsoNormal style='margin-bottom:12.0pt'><br>
<br>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Hi,</span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>I
have some questions about WarmStarts using OsiClp. </span><br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>I'm
solving pure LPs and I tried to recreate my real problem using miplib 3.0s
"p0548" (See </span><a
href="http://www.caam.rice.edu/~bixby/miplib/miplib3.html"><span
style='font-size:10.0pt;font-family:"Arial","sans-serif"'>http://www.caam.rice.edu/~bixby/miplib/miplib3.html</span></a><span
style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>)</span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>See
below for code and output.</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Basically,
I (1) solve the problem, store a warm start, (2) change the objective and
resolve, and (3) restore original objecte, load warmstart and resolve.</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>I
was expecting the step (3) to take zero iterations. However, this is not
(always) the case: In this test problem, </span><br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Test
run 1) if I do NOT set hints concerning DoDualIn*, then indeed (3) takes zero
iterations.</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Test
run 2) but if I set HintTry for these to false (so use primal), then (3)
reoptimises (see end of email)</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>In
my real instances the (3) resolve takes a *lot* of iterations.</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Note
that this test problem doesn’t completely represent my real problem: the
real instances show this behaviour even <i>without</i> the DoDual = false
settings, but the resulting iterations are the same.</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>What
could be the cause for these reoptimizations?</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>A)
different algorithm after warmstart compared to solve warmstart was based on?</span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>B)
presolve chooses to remove different rows/columns in resolve?</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>C)
something else?</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Or
is this simply not what the warmstarts are for?</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Any
help would be appreciated.</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Regards,</span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Jan-Wilem
Goossens</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>————————————————————--</span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Here
is the test problem</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
OsiClpSolverInterface model;</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> </span><br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
model.setHintParam(OsiHintParam::OsiDoDualInInitial, <span style='color:blue'>false</span>);
<span style='color:green'>// comment out</span></span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
model.setHintParam(OsiHintParam::OsiDoDualInResolve, <span style='color:blue'>false</span>);
<span style='color:green'>// comment out</span></span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
model.setHintParam(OsiHintParam::OsiDoPresolveInInitial);</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
model.setHintParam(OsiHintParam::OsiDoPresolveInResolve);</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> </span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:blue'>int</span> status = model.readMps(<span style='color:#A11F12'>"p0548.mps"</span>,
<span style='color:blue'>true</span>, <span style='color:blue'>false</span>);</span>
<br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:blue'>int</span> n = model.getNumCols();</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:blue'>for</span> (<span style='color:blue'>int</span> i = 0; i
< n; i++) model.setContinuous(i); <span style='color:green'>// change to LP</span></span>
<br>
<span style='font-size:10.0pt;font-family:"Courier New"'> </span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:green'>// (1) do initial solve of original problem, and store warm
start info</span></span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
model.initialSolve();</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
CoinWarmStart *warmStart = model.getWarmStart();</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> </span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:green'>// (2) change the objective function and resolve</span></span>
<br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:blue'>const</span> <span style='color:blue'>double</span> *
objCoefs = model.getObjCoefficients();</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:blue'>double</span> * oldCoefs = <span style='color:blue'>new</span>
<span style='color:blue'>double</span>[n];</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:blue'>for</span> (<span style='color:blue'>int</span> i = 0; i
< n; i++) oldCoefs[i] = objCoefs[i];</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:blue'>for</span> (<span style='color:blue'>int</span> i = 0; i
< n; i++) model.setObjCoeff(i,1.0);</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> </span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
model.resolve();</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> </span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:green'>// (3) restore the original problem, and load warm start</span></span>
<br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
model.setObjective(oldCoefs);</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
model.setWarmStart(warmStart);</span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
model.resolve();</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>OUTPUT:</span>
<br>
<b><span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Test
run 1, with commented out:</span></b> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
// model.setHintParam(OsiHintParam::OsiDoDualInInitial, <span style='color:
blue'>false</span>); <span style='color:green'>// comment out</span></span> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
// model.setHintParam(OsiHintParam::OsiDoDualInResolve, <span style='color:
blue'>false</span>); <span style='color:green'>// comment out</span></span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:green'>// (1) do initial solve of original problem, and store warm
start info</span></span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Coin0506I
Presolve 163 (-13) rows, 543 (-5) columns and 1561 (-150) elements</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
0 Obj 0 Primal inf 38.8018 (12)</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
95 Obj 315.255</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0000I
Optimal - objective value 315.255</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Coin0511I
After Postsolve, objective 315.255, infeasibilities - dual 0 (0), primal 0 (0)</span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
0 Obj 315.255</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
0 Obj 315.255</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0000I
Optimal - objective value 315.255</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:green'>// (2) change the objective function and resolve</span></span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Coin0506I
Presolve 165 (-11) rows, 543 (-5) columns and 1579 (-132) elements</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
0 Obj 59.3381 Primal inf 0.314674 (1) Dual inf 161381 (290)</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
103 Obj 16.571 Primal inf 8.57907 (29)</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
165 Obj 26.1669</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0000I
Optimal - objective value 26.1669</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Coin0511I
After Postsolve, objective 26.1669, infeasibilities - dual 0 (0), primal 0 (0)</span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:green'>// (3) restore the original problem, and load warm start</span></span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Coin0506I
Presolve 163 (-13) rows, 543 (-5) columns and 1561 (-150) elements</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
0 Obj 366.255 Primal inf 30.9296 (2) Dual inf 304.123 (2)</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0000I
Optimal - objective value 315.255</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Coin0511I
After Postsolve, objective 315.255, infeasibilities - dual 0 (0), primal 0 (0)</span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<b><span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Test
run 2, with:</span></b> <br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
model.setHintParam(OsiHintParam::OsiDoDualInInitial, <span style='color:blue'>false</span>);
</span><br>
<span style='font-size:10.0pt;font-family:"Courier New"'>
model.setHintParam(OsiHintParam::OsiDoDualInResolve, <span style='color:blue'>false</span>);
</span><br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:green'>// (1) do initial solve of original problem, and store warm
start info</span></span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Coin0506I
Presolve 163 (-13) rows, 543 (-5) columns and 1561 (-150) elements</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0028I
Crash put 44 variables in basis, 0 dual infeasibilities</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
0 Obj 0 Primal inf 38.8018 (12) Dual inf 5.62868e+012 (120)</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
132 Obj 20103.2 Primal inf 1.08159 (1) Dual inf 1.10445e+011 (193)</span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
289 Obj 345.667 Dual inf 627.385 (26)</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
316 Obj 315.255</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0000I
Optimal - objective value 315.255</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Coin0511I
After Postsolve, objective 315.255, infeasibilities - dual 0 (0), primal 0 (0)</span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
0 Obj 315.255</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
0 Obj 315.255</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0000I
Optimal - objective value 315.255</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:green'>// (2) change the objective function and resolve</span></span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Coin0506I
Presolve 165 (-11) rows, 543 (-5) columns and 1579 (-132) elements</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
0 Obj 69.5868 Dual inf 38838.5 (125)</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
94 Obj 26.1669</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0000I
Optimal - objective value 26.1669</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Coin0511I
After Postsolve, objective 26.1669, infeasibilities - dual 0 (0), primal 0 (0)</span>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Coin0506I
Presolve 163 (-13) rows, 543 (-5) columns and 1561 (-150) elements</span> <br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span>
<br>
<span style='font-size:10.0pt;font-family:"Courier New"'> <span
style='color:green'>// (3) restore the original problem, and load warm start</span></span>
<br>
<b><span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
0 Obj 1817.67 Dual inf 3514.68 (6)</span></b> <br>
<b><span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0029I
End of values pass after 37 iterations</span></b> <br>
<b><span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
37 Obj 1817.67 Dual inf 3515.85 (5)</span></b> <br>
<b><span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
170 Obj 336.741 Dual inf 20.3286 (24)</span></b> <br>
<b><span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0006I
202 Obj 315.255</span></b> <br>
<b><span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Clp0000I
Optimal - objective value 315.255</span></b> <br>
<b><span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'>Coin0511I
After Postsolve, objective 315.255, infeasibilities - dual 0 (0), primal 0 (0)</span></b>
<br>
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";color:#004080'> </span><tt><span
style='font-size:10.0pt'>_______________________________________________</span></tt><span
style='font-size:10.0pt;font-family:"Courier New"'><br>
<tt>Osi mailing list</tt><br>
<tt>Osi@list.coin-or.org</tt><br>
<tt>http://list.coin-or.org/mailman/listinfo/osi</tt></span><o:p></o:p></p>
</div>
</body>
</html>