[Cgl] cgl, cpx, mir, error

Matthew Saltzman mjs at clemson.edu
Thu Apr 12 16:47:31 EDT 2007


On Thu, 12 Apr 2007 fmargot at andrew.cmu.edu wrote:

>
> The comment was about the workaround. Instead of fiddling with OsiCpx, it
> is simpler to create the empty solver interface and let the user
> set whatever he wants. He will have to do the work to set all fields
> appropriately.

The problem with top-posting is, it's hard to tell what responses go with 
what comments.  But somewhere along the thread, there was a comment about 
sacrificing efficiency in the computation of Ax^*.  If you can't ask the 
solver directly, you are stuck with that problem in any solution.

>
> If I am not mistaken, you were the main supporter of the "empty" solver
> interface instead of CglData.

I'm not disavowing that position...

My thought is that such an SI would be able to do everything any other SI 
can except actually call a solver.  It would instead work with solutions 
that were set directly through SI calls.

>
> Francois
>
>
> On Thu, 12 Apr 2007, Matthew Saltzman wrote:
>
>> On Thu, 12 Apr 2007 fmargot at andrew.cmu.edu wrote:
>> 
>>> 
>>> Matt:
>>> 
>>> The simplest fix is to have the gentle and kind people at Osi to implement
>>> an "empty" solver interface class. That would get cheaply the solver 
>>> independence we discussed a while back. This is only a temporary fix,
>>> as I was told that Osi2 has a concept identical to CglData. It seems
>>> thus a waste of time to convert Cgl to have CglData and then to convert it 
>>> again when Osi2 comes out.
>>> 
>>> I know that you would like to have Cgl independent of Osi, but I am still 
>>> not convinced that it is worth the work.
>> 
>> In this particular case, it's not clear to me how independence helps. 
>> Wouldn't you then be stuck with computing the matrix-vector product, rather 
>> than being able to query the SI for the current value?
>> 
>> 
>>> 
>>> Francois
>>> 
>>> 
>>> 
>>> On Wed, 11 Apr 2007, Matthew Galati wrote:
>>> 
>>>> Any suggestions on a workaround? I don't see any OSI functions for 
>>>> setRowActivity.
>>>> 
>>>> And, it doesn't look like the idea of making CGL independent of OSI 
>>>> worked out. Although I do see Francois added CglData - which looks like 
>>>> what I wanted. But, most of the CGLs are still using OSI.
>>>> 
>>>> 
>>>> 
>>>> -----Original Message-----
>>>> From: Ted Ralphs [mailto:tkralphs at Lehigh.EDU]
>>>> Sent: Wednesday, April 11, 2007 5:07 PM
>>>> To: cgl at list.coin-or.org
>>>> Cc: Matthew Galati
>>>> Subject: Re: [Cgl] cgl, cpx, mir, error
>>>> 
>>>> There is a call to getRowActivity() in CglMixedIntegerRounding2. In 
>>>> OsiCpx, this call is implemented through a call to CPLEX, which complains 
>>>> that there is no solution whenever you have not just finished solving the 
>>>> loaded instance (which it looks like you have not. The other cut 
>>>> generators seem only to use calls that require returning information 
>>>> cached in the interface layer, so you don't get the error.
>>>> 
>>>> Cheers,
>>>> 
>>>> Ted
>>>> 
>>>> Matthew Galati wrote:
>>>>> Hi.
>>>>> 
>>>>> I am creating an OsiCpx object, populating a model, setting the primal 
>>>>> solution, and then calling the MIR cut generator.
>>>>> 
>>>>> OsiSolverInterface * siCgl = new OsiLpSolverInterface();
>>>>> 
>>>>>   siCgl->loadProblem(*m_modelCore->M,
>>>>>                        &m_modelCore->colLB[0],
>>>>>                        &m_modelCore->colUB[0],
>>>>>                        m_app->m_model.objCoeff,
>>>>>                        &m_modelCore->rowLB[0],
>>>>>                        &m_modelCore->rowUB[0]);
>>>>> 
>>>>>    siCgl->setInteger(&m_modelRelax->integerVars[0],
>>>>>                       static_cast<int>(m_modelRelax->integerVars.size()));
>>>>>    siCgl->setColSolution(m_xhat);
>>>>> 
>>>>>    CglMixedIntegerRounding2 cglMirs;
>>>>>    cglMirs.generateCuts(*siCgl, cs);
>>>>> 
>>>>> And, I get the error from Cplex:
>>>>>   CPLEX Error  1217: No solution exists.
>>>>> 
>>>>> Note: I don't get that error with Cliques/Knap/Flow CGLs.
>>>>> 
>>>>> Any ideas?
>>>>> 
>>>>> Thanks,
>>>>> Matt
>>>>> 
>>>>> _______________________________________________
>>>>> Cgl mailing list
>>>>> Cgl at list.coin-or.org
>>>>> http://list.coin-or.org/mailman/listinfo/cgl
>>>> 
>>>> 
>>>> --
>>>> Dr. Ted Ralphs
>>>> Associate Professor
>>>> Industrial and Systems Engineering
>>>> Lehigh University
>>>> (610)758-4784
>>>> tkralphs at lehigh.edu
>>>> www.lehigh.edu/~tkr2
>>>> 
>>>> 
>>>> 
>>> _______________________________________________
>>> Cgl mailing list
>>> Cgl at list.coin-or.org
>>> http://list.coin-or.org/mailman/listinfo/cgl
>>> 
>> 
>> 
>

-- 
 		Matthew Saltzman

Clemson University Math Sciences
mjs AT clemson DOT edu
http://www.math.clemson.edu/~mjs


More information about the Cgl mailing list