12.07.2015 Views

ILOG CPLEX 11.0 User's Manual

ILOG CPLEX 11.0 User's Manual

ILOG CPLEX 11.0 User's Manual

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Branch & Cut with GoalsGoals allow you to take control of the branch & cut search procedure used by <strong>ILOG</strong> <strong>CPLEX</strong>to solve MIP problems. To help you understand how to use goals with <strong>ILOG</strong> <strong>CPLEX</strong>, thesesections review how this procedure works.◆ Overview of Goals in Branch & Cut on page 428◆ How Goals Are Implemented in Branch & Cut on page 429◆ About the Method execute in Branch & Cut on page 429Overview of Goals in Branch & CutThe branch & cut search procedure manages a search tree consisting of nodes. Every noderepresents a subproblem to be solved, and the root node of the tree represents the entireproblem. Nodes are called active if they have not yet been processed.The tree is first initialized to contain the root node as the only active node. <strong>ILOG</strong> <strong>CPLEX</strong>processes active nodes from the tree until either no more active nodes are available or somelimit has been reached. Once a node has been processed, it is no longer active.When processing a node, <strong>ILOG</strong> <strong>CPLEX</strong> starts by solving the continuous relaxation of itssubproblem (that is, the subproblem without integrality constraints). If the solution violatesany cuts, <strong>ILOG</strong> <strong>CPLEX</strong> adds them to the node problem and re-solves. This procedure isiterated until no more violated cuts are found by <strong>ILOG</strong> <strong>CPLEX</strong>. If at any point the relaxationbecomes infeasible, the node is pruned, that is, it is removed from the tree.To solve the node problem, <strong>ILOG</strong> <strong>CPLEX</strong> checks whether the solution satisfies theintegrality constraints. If so, and if its objective value is better than that of the currentincumbent, the solution of the node problem is used as the new incumbent. Otherwise,<strong>ILOG</strong> <strong>CPLEX</strong> splits the node problem into one or two smaller subproblems, typically bybranching on a variable that violates its integrality constraint. These subproblems are addedto the tree as active nodes and the current node is deactivated.The primary use of goals is to take control of these last steps, namely the integer-feasibilitytest and the creation of subproblems. However, as discussed later, goals also allow you toadd local and global cuts.428 <strong>ILOG</strong> <strong>CPLEX</strong> <strong>11.0</strong> — USER’ S MANUAL

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!