Purpose
Stores bounds for node separation using user separate callback function.
Synopsis
int XPRS_CC XPRSstorebounds(XPRSprob prob, int nbnds, const int mcols[], const char qbtype[], const double dbds[], void **mindex);
Arguments
prob
|
The current problem.
|
nbnds
|
Number of bounds to store.
|
mcols
|
Array containing the column indices.
|
qbtype
|
Array containing the bounds types:
U
|
indicates an upper bound;
|
L
|
indicates a lower bound.
|
|
dbds
|
Array containing the bound values.
|
mindex
|
Pointer that the user will use to reference the stored bounds for the optimizer in XPRSsetbranchbounds.
|
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
If you have any comments or suggestions about these pages,
please send mail to docs@dashoptimization.com.