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, XPRSsetcbsepnode.
Synopsis
int XPRS_CC XPRSsetbranchbounds(XPRSprob prob, const 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:
XPRSsetcbsepnode(prob,nodeSep,void);
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, XPRSsetcbestimate, XPRSsetcbsepnode, XPRSstorebounds, Working with the Cut Manager.


If you have any comments or suggestions about these pages, please send mail to docs@dashoptimization.com.