User's Manual for CPLEX
Welcome to the CPLEX User's Manual.
- Meet CPLEX
Introduces CPLEX, explains what it does, suggests prerequisites, and offers advice for using this documentation with it. - Languages and APIs
This part of the manual collects topics about each of the application programming interfaces (APIs) available for IBM ILOG CPLEX. It is not necessary to read each of these topics thoroughly. In fact, most users will concentrate only on the topic about the API that they plan to use, whether C, C++, Java, or .NET. - Programming considerations
This part of the manual documents concepts that are valid as you develop an application, regardless of the programming language that you choose. It highlights software engineering practices implemented in IBM ILOG CPLEX, practices that will enable you to develop effective applications to exploit it efficiently. - Continuous optimization
This part focuses on algorithmic considerations about the optimizers of IBM ILOG CPLEX that solve problems formulated in terms of continuous variables. While ILOG CPLEX is delivered with default settings that enable you to solve many problems without changing parameters, this part also documents features that you can customize for your application. - Discrete optimization
This part focuses on algorithmic considerations about the optimizers of IBM ILOG CPLEX that solve problems formulated in terms of discrete variables, such as integer, Boolean, piecewise-linear, or semi-continuous variables. While default settings of ILOG CPLEX enable you to solve many problems without changing parameters, this part also documents features that enable you to tune performance. - Multiobjective optimization
This part introduces multiobjective optimization. - Parallel optimization
This part documents features of CPLEX for optimization in parallel. It introduces special considerations about parallel programming with CPLEX. It documents the remote object for distributed computing with CPLEX applications. It also documents distributed parallel optimization techniques for mixed integer programming (MIP). This part of the manual assumes that you are already familiar with earlier parts of the manual. - Infeasibility and unboundedness
Documents tools to help you analyze the source of the infeasibility in a model: the preprocessing reduction parameter for distinguishing infeasibility from unboundedness, the conflict refiner for detecting minimal sets of mutually contradictory bounds and constraints, and FeasOpt for repairing infeasibilities. - Advanced programming techniques
This part documents advanced programming techniques for users of IBM ILOG CPLEX. It shows you how to apply query routines to gather information while CPLEX is working. It demonstrates how to redirect the search with goals or callbacks. This part also covers user-defined cuts and pools of lazy constraints. It documents the advanced MIP control interface and the advanced aspects of preprocessing: presolve and aggregation. It also introduces special considerations about parallel programming with CPLEX. This part of the manual assumes that you are already familiar with earlier parts of the manual.