<div dir="ltr">Hi all,<div><br></div><div>I&#39;m looking at supporting modification of the problem data after solve in the C interface and have come across some surprising behavior. </div><div><br></div><div>After solving using a CbcModel (using CbcMain1), the column lower bounds (from CbcModel::getColLower) are changed to equal the value of the optimal solution. I.e., a binary variable set at 1 in the optimal solution will have a reported lower bound of 1. I assume this is because the bounds are returned from the internal Clp model. </div>
<div><br></div><div>Similarly, calling CbcModel::solver()-&gt;setColLower() after solve to modify bounds doesn&#39;t seem to have any effect on subsequent resolves (again using CbcMain1).</div><div><br></div><div>Is there a proper way to access and modify the original problem data after a solve to avoid recreating the model from scratch? If not, I&#39;ll simply not expose this functionality in the C interface. Obviously one shouldn&#39;t expect to efficiently hot-start the next MIP solve, but being able to modify a model could be convenient for the user when solving a sequence of related MIPs.<br>
</div><div><br></div><div>Thanks,</div><div>Miles</div></div>