[BCP] CoinError after "LP: Returned children to TM. Waiting for new node"

Francois Margot fmargot at andrew.cmu.edu
Fri Jan 22 12:57:56 EST 2010


> > -------- Forwarded Message --------
> > From: Michael Poss <mposs at ulb.ac.be>
> > To: bcp at list.coin-or.org
> > Subject: [BCP] CoinError after "LP: Returned children to TM. Waiting
> > for new node."
> > Date: Fri, 22 Jan 2010 10:36:17 +0000
> > 
> > Hi all,
> > 
> > I'm writing a branch-and-cut-and-price algorithm with BCP.
> > My problem has two sets of variables : x variables (core variables,
> > binary), and f (algorithmic variables, real).
> > Then, I generate the f-variables through column generation and branch
> > on the x-variables, so that I did not modify the branching procedure.
> > 
> > Here is my problem.
> > The algorithms adds cuts and variables, and branches correctly a few
> > times. Eventually, while trying to branch, the following happens:
> > 
> > ..........
> > LP: Default select_branching_candidates() executed.
> > 
> > LP: Starting strong branching:
> > 
> > LP:   Presolving: (3,0.5799,100.0000 /  ) [2663.6553,2,3] [3316.9006,64,2]
> > LP: Default compare_presolved_branching_objects() executed.
> > LP:   Deleting 7 rows from the matrix.
> > LP: Default set_actions_for_children() executed.
> > 
> > LP:   SB selected candidate 0 out of 1.
> > 
> > LP:   The selected object is: (3,0.5799,100.0000 /  ) [2663.6553,2,3] [2622.6500
> > ,64,2]
> > LP: Default set_user_data_for_children() executed.
> > LP node written in file lpnode.lp
> > LP:   Returned children to TM. Waiting for new node.
> > terminate called after throwing an instance of 'CoinError'
> > Aborted
> > 
> > Any help would be very welcome.
> > 
> > Best,
> > 
> > Michael Poss.
> > 

What I notice is that 

  Presolving: (3,0.5799,100.0000 /  ) [2663.6553,2,3] [3316.9006,64,2]

means that the second son's LP relaxation was not solved to optimality, 
hitting the iteration limit. This might create problems, as warm start
basis information is possibly missing. What is strange is that the last "2"
on that line means that the iteration limit was hit after 2 iterations, 
which seems very low.

I would suggest to increase the iteration limit used strong branching.

Francois




More information about the BCP mailing list