[Coin-discuss] Access to dual variable corresponding to a newrow

Laszlo Ladanyi ladanyi at us.ibm.com
Wed Dec 5 15:07:58 EST 2001


I doubt that that would be the case. It's much simpler to compress those
columns the deleted row intersected (they'd have to maintain a list of holes
separately for each column otherwise -- a nightmare) and append added rows to
the end. Still, only cplex can answer the question. Anybody from ILOG on the
list? could you give an answer?

--Laci

On Wed, 5 Dec 2001, Jonathan Eckstein wrote:

> I think Mikhail is concerned that in CPLEX, the indices may not just be
> added at the end, but may occupy "holes" left by previously deleted
> rows. Perhaps that's not the case. Is it always true that when you
> delete rows, the later rows get renumbered to fill the resulting gap?
> 
> -- Jonathan
> 
> 
> Laszlo Ladanyi wrote:
> > 
> > Although it is not explicitly stated in the documentation I have always
> > assumed so far that new rows are added to the "bottom" of the matrix getting
> > the next so many indices and when rows are deleted the rows are reindexed from
> > 0 to the new number of rows. Since it's the user who calls the row
> > addition/deletion routines she can easily keep track of the constraints.
> > 
> > I admit it's a bit of a burden, but otherwise the row structure must contain
> > an index for each row and what would that index be? The index of the row from
> > the beginning of times? The user has to keep track of things in that case,
> > too, since probably a number of rows would be permanently thrown out, both
> > from the solver and from the user's data structures.
> > 
> > All in all I'd vote for keeping things as they are, since it's not clear that
> > Osi can take easily over some work from the user.
> > 
> > --Laci
> > 
> > On Wed, 5 Dec 2001, Mikhail Nediak wrote:
> > 
> > > Hi,
> > >
> > > I have a question about COIN/OSI.
> > >
> > > When I add rows to the LP (or cuts for that matter) is there a way in
> > > COIN/OSI to trace what indices they will have after subsequent operations
> > > on the matrix? This may be important, for example, if one needs values of
> > > dual variables for the cuts.
> > >
> > > CPLEX has function CPXgetrowindex that lets user find row index by its
> > > name. I could not, however, find anything of this sort in
> > > OsiSolverInterface. Does the user have to trace positions of the rows
> > > after matrix modifications by him/herself? It would seem reasonable for
> > > the solver to support this functionality.
> > >
> > > Thanks.
> > > Best regards,
> > > Mikhail Nediak
> > >
> > > _______________________________________________
> > > Coin-discuss mailing list
> > > Coin-discuss at www-124.ibm.com
> > > http://www-124.ibm.com/developerworks/oss/mailman/listinfo/coin-discuss
> > >
> > 
> > _______________________________________________
> > Coin-discuss mailing list
> > Coin-discuss at www-124.ibm.com
> > http://www-124.ibm.com/developerworks/oss/mailman/listinfo/coin-discuss
> _______________________________________________
> Coin-discuss mailing list
> Coin-discuss at www-124.ibm.com
> http://www-124.ibm.com/developerworks/oss/mailman/listinfo/coin-discuss
> 




More information about the Coin-discuss mailing list