> Advanced Programming Techniques > Advanced MIP Control Interface

In this manual, Using Callbacks introduces callbacks, their purpose, and conventions. This chapter documents the CPLEX advanced MIP control interface, describing callbacks in greater detail. It assumes that you are already familiar with that introduction to callbacks in general, and it includes sections about:

These callbacks allow sophisticated users to control the details of the branch & cut process. Specifically, users can choose the next node to explore, choose the branching variable, add their own cutting planes, place additional restrictions on integer solutions, or insert their own heuristic solutions. These functions are meant for situations where other tactics to improve CPLEX performance on a hard MIP problem, such as non-default parameter settings or priority orders, have failed. See Troubleshooting MIP Performance Problems for more information about MIP parameters and priority orders.

Users of the advanced MIP control interface can work with the variables of the presolved problem or, by following a few simple rules, can instead work with the variables of the original problem.

Tip
The advanced MIP control interface relies heavily on the advanced presolve capabilities. We suggest that the reader become familiar with Chapter 26, Advanced Presolve Routines, before reading this chapter.

Control callbacks in the ILOG Concert Technology CPLEX Library use original model variables. These callbacks are fully documented in the ILOG CPLEX Reference Manual.