[SCIP] Branch price cut algorithm -> price again after adding cuts

Jakob Witzig witzig at zib.de
Mon Jan 16 09:09:32 CET 2017


Hi Albert,

when you implement the SCIP_DECL_CONSSEPA callback for your 
branch-price-and-cut approach you could think about adding a cut 
(SCIP_ROW) instead of a constraint (SCIP_CONS). Within SCIP there is are 
slight differences between both types, e.g., a constraint can be 
propagated and a cut not. When you decide to add cuts instead of 
constraints, the result pointer needs to be set to SCIP_SEPARATED.

Moreover, you should make sure that your constraints (in your current 
implementation) enter the LP, i.e., set initial flag to TRUE.

The warnings are printed by SCIP (see lp.c) and just say that your LP is 
numerically unstable and the LP solver struggles with solving them. You 
should have a look at your formulation and the constraints/cuts you 
generate.

Cheers,
Jakob

Am 14.01.2017 um 22:06 schrieb Schrotenboer, A.H.:
> Hello all,
>
> I'm using the c++ wrapper classes of scip to implement a branch & price
> & cut algorithm. So in each node of the branch and bound tree i do
> column generation. After that is finished, i want to add cuts (valid
> inequalities actually). I did that by implementing the function of my
> constraint handler: SCIP_DECL_CONSSEPALP(ObjConshdlrMSPRP::scip_sepalp),
> where ObjConshdlrMSPRP denotes my own Constraint Handler class.
>
> After it has added constraints to the LP via multiple calls of
> SCIP_CALL(SCIPaddCons(scip_, cons)), where 'cons' is a simple linear
> constraint, it  sets ' *result = SCIP_CONSADDED'.
>
> After the cuts are added, it should redo the column generation process,
> since there are possibly new columns of negative reduced costs that
> should enter the LP relaxation. This however does not happen. I get the
> following strange calls of (i think cplex)
>
> (node 2) numerical troubles in LP 21 -- solve again with dual simplex
> without scaling
> (node 2) numerical troubles in LP 22 -- solve again with dual simplex
> without presolving
> (node 2) numerical troubles in LP 23 -- solve again with dual simplex
> with tighter primal and dual feasibility tolerance
> (node 2) numerical troubles in LP 24 -- solve again from scratch with
> dual simplex
>
> Does someone know why this happens and/or why my pricing problem is not
> entered again at the same node?
>
> Thanks in advance,
>
> Albert Schrotenboer
>
>
>
> _______________________________________________
> Scip mailing list
> Scip at zib.de
> http://listserv.zib.de/mailman/listinfo/scip
>


-- 
Jakob Witzig

Zuse Institute Berlin (ZIB)

Division Mathematical Optimization and Scientific Information
Research Group Mathematical Optimization Methods

Takustrasse 7
14195 Berlin

Tel. : +49 (0)30 84185-416
Fax  : +49 (0)30 84185-269
email: witzig at zib.de


More information about the Scip mailing list