CPLEX cpxcb USERCUT: Difference between revisions
(Created page with "{{Part Of Manual|title=the CPLEX Manual|link=CPLEX}} CPLEX MIP User cut callback. The User Cut Callback is enabled by setting ''callback''(15) = 1 in the call to ''cpl...") |
No edit summary |
||
Line 12: | Line 12: | ||
where ''<''? ''> ''is exactly one of the relations ''<''=, ''>''= or = and rhs is a scalar right hand side limit. By returning a nonzero value from cpxcb USERCUT, the user can terminate the optimization. | where ''<''? ''> ''is exactly one of the relations ''<''=, ''>''= or = and rhs is a scalar right hand side limit. By returning a nonzero value from cpxcb USERCUT, the user can terminate the optimization. | ||
If modifying this file, it is recommended to make a copy of it which is placed before the original file in the MATLAB path. See ''help | If modifying this file, it is recommended to make a copy of it which is placed before the original file in the MATLAB path. See ''help cpxcb_USERCUT ''for more information. |
Latest revision as of 12:14, 16 August 2011
This page is part of the CPLEX Manual. See CPLEX. |
CPLEX MIP User cut callback.
The User Cut Callback is enabled by setting callback(15) = 1 in the call to cplex.m, or Prob.M I P.callback(15) = 1 if using tomRun('cplex',...)
This callback is called by CPLEX during MIP branch & cut for every node that has an LP optimal solution with objective value below the cutoff and is integer infeasible. CPLEX also calls the callback when comparing an integer feasible solution, including one provided by a MIP start before any nodes exist, against lazy constraints.
The callback routine can add globally valid cuts to the LP subproblem. A cut is a constraint of the following form:
c1 * x(1) + c2 * x(2) + ... + cn * x(n) <? > rhs
where <? > is exactly one of the relations <=, >= or = and rhs is a scalar right hand side limit. By returning a nonzero value from cpxcb USERCUT, the user can terminate the optimization.
If modifying this file, it is recommended to make a copy of it which is placed before the original file in the MATLAB path. See help cpxcb_USERCUT for more information.