Initializing help system before first use

XPRBsync

XPRBsync


Purpose
Synchronize BCL with the Optimizer.
Synopsis
int XPRBsync(XPRBprob prob, int synctype);
Arguments
prob 
Reference to a problem.
synctype 
Type of the synchronization. Possible values:
XPRB_XPRS_SOL 
update the BCL solution information with the LP solution currently held in the Optimizer;
XPRB_XPRS_SOLMIP 
update the BCL solution information with the last MIP solution found by the Optimizer;
XPRB_XPRS_PROB 
force problem reloading.
Return value
0 if function executed successfully, 1 otherwise.
Example
The following forces BCL to reload the matrix into the Optimizer even if there has been no change other than bound changes to the problem definition in BCL since the preceding optimization:
XPRBprob expl2;
expl2 = XPRBnewprob("example2");
 ...
XPRBmipoptimize(expl2, "");
 ...
XPRBsync(expl2, XPRB_XPRS_PROB);
XPRBmipoptimize(expl2, "");
Further information
1. This function resets the BCL problem status.
2. XPRB_XPRS_SOL: retrieves the current LP solution (through XPRSgetlpsol function and XPRS_LPOBJVAL attribute); correctly used also in intsol callbacks as, when an integer solution is found during a global search, it is always set up as an LP solution to the current node.
3. XPRB_XPRS_SOLMIP: retrieves the last MIP solution found (through XPRSgetmipsol function and XPRS_MIPOBJVAL attribute); if used from an intsol callback, it will not necessarily return the solution that caused the invocation of the callback (it is possible that another thread finds a new integer solution before that one is retrieved).
4. XPRB_XPRS_SOL and XPRB_XPRS_SOLMIP: the solution information in BCL is updated with the solution held in the Optimizer at the next solution access (only the objective value is updated immediately).
5. XPRB_XPRS_PROB: at the next call to optimization or XPRBloadmat the problem is completely reloaded into the Optimizer; bound changes are not passed on to the problem loaded in the Optimizer any longer.
Related topics

© 2001-2019 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.