The OPTMILP procedure is a solver for general mixed integer linear programs (MILPs).
A standard mixed integer linear program has the formulation

where



is the vector of structural variables 



is the matrix of technological coefficients 



is the vector of objective function coefficients 



is the vector of constraints righthand sides (RHS) 



is the vector of lower bounds on variables 



is the vector of upper bounds on variables 

is a nonempty subset of the set of indices 
The OPTMILP procedure implements a linearprogrammingbased branchandbound algorithm. This divideandconquer approach attempts to solve the original problem by solving linear programming relaxations of a sequence of smaller subproblems. The OPTMILP procedure also implements advanced techniques such as presolving, generating cutting planes, and applying primal heuristics to improve the efficiency of the overall algorithm.
The OPTMILP procedure requires a mixed integer linear program to be specified using a SAS data set that adheres to the mathematical programming system (MPS) format, a widely accepted format in the optimization community. Chapter 15 discusses the MPS format in detail. It is also possible to input an incumbent solution in MPS format; see the section Warm Start for details.
You can use the MPSOUT= option to convert data sets that are formatted for the LP procedure into MPSformat SAS data sets. The option is available in the LP, INTPOINT, and NETFLOW procedures. For details about this option, see Chapter 6: The LP Procedure in SAS/OR 12.1 User's Guide: Mathematical Programming Legacy Procedures, Chapter 5: The INTPOINT Procedure in SAS/OR 12.1 User's Guide: Mathematical Programming Legacy Procedures, and Chapter 7: The NETFLOW Procedure in SAS/OR 12.1 User's Guide: Mathematical Programming Legacy Procedures.
The OPTMILP procedure provides various control options and solution strategies. In particular, you can enable, disable, or set levels for the advanced techniques previously mentioned.
The OPTMILP procedure outputs an optimal solution or the best feasible solution found, if any, in SAS data sets. This enables you to generate solution reports and perform additional analyses by using SAS software.