[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