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 
         |  |  | 
 
 
  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 branch and bound tree 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-2024 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.