XPRSsetbranchbounds
XPRSsetbranchbounds |
Purpose
Specifies the bounds previously stored using
XPRSstorebounds that are to be applied in order to branch on a user
global entity. This routine can only be called from the user separate callback function,
XPRSaddcbsepnode.
Synopsis
int XPRS_CC XPRSsetbranchbounds(XPRSprob prob, void *mindex);
Arguments
prob
|
The current problem.
|
mindex
|
Pointer previously defined in a call to
XPRSstorebounds that references the stored bounds to be used to separate the node.
|
Example
This example defines a user separate callback function for the global search:
XPRSaddcbsepnode(prob,nodeSep,NULL,0);
where the function
nodeSep is defined as follows:
int nodeSep(XPRSprob prob, void *obj, int ibr, int iglsel, int ifup, double curval) { void *index; double dbd; if( ifup ) { dbd = ceil(curval); XPRSstorebounds(prob, 1, &iglsel, "L", &dbd, &index); } else { dbd = floor(curval); XPRSstorebounds(prob, 1, &iglsel, "U", &dbd, &index); } XPRSsetbranchbounds(prob, index); return 0; }
Related topics
XPRSloadcuts,
XPRSaddcbestimate,
XPRSaddcbsepnode,
XPRSstorebounds, Section
Working with the Cut Manager.