[Coin-bcpdiscuss] Core cuts and vars

Matteo Salani matteo.salani at epfl.ch
Wed Nov 8 10:49:24 EST 2006


Hello,

first of all a (very) small contribution on how I succeeded in compiling 
Bcp under Cygwin

be sure to have Make.exe 3.8.0 and not 3.8.1 as pointed out in the wiki 
pages

perform configure skipping Cgl and enabling dos compile:

./configure -C COIN_SKIP_PROJECTS="Cgl" --enable-doscompile

from my experience no other ways to compile under cygwin. Trust me, I've 
tried several.


so after that I can pose a question hoping that someone will answer...  :) 

Within initialize_core I want to set up the core of Bcp having

n+m core cuts and
n core variables

the n core cuts are \geq 1 inequalities
while the m cuts are \leq 1 inequalities

so I decided to have n artificial core variables (one for each \geq 1 
cut) in order to always satisfy feasibility of the LP (core vars are 
never removed form LP)
I'm pretty sure that I don't need m artificial variables for the m \leq 
1 constraints.

Now given that I've both core cuts and variables I should properly fill 
a  BCP_lp_relax matrix within initialize_core.

So... declaring objective function, columns upper and lower bounds, rows 
upper and lower bounds as following:
    double*    obj = new double[ n ];
    double*    clb = new double[ n ];
    double*    cub = new double[ n ];
    double*    rlb = new double[ n + m ];
    double*    rub = new double[ n + m ];

    then a sparse CoinPackedMatrix to put ones on the main diagonal
    then

    BCP_lp_matrix matrix;
    matrix->assign( mat, obj, clb, cub, rlb, rub );   

I'm happy, I compile, I run and then...

I got this error:
Illegal index n in OsiClpSolverInterface::setColumnSetBounds

should I declare and fill also m core variables? But they're not needed!
why the Osi interface tries to access to element n? it shouldn't, it 
knows I've only n core variables so indexed from 0 to n-1!

should I allocate n+1 spaces in obj, clb and cub. Maybe, but why?

thanks in advance,
Matteo




More information about the Coin-bcpdiscuss mailing list