##### Basic Concepts

In a general *integer programming* or *integer linear programming* problem, we seek to minimize a linear cost function over all \(n\)-dimensional vectors \(x\) subject to a set of linear equality and inequality constraints as well as integrality restrictions on some or all of the variables in \(x\).

\[\begin{array}{llll}

\mbox{min} & c^Tx & & \\

\mbox{s.t.} & Ax & = & b \\

& x & \geq & 0 \\

& x & \in & Z^n

\end{array}

\]

- If only some of the variables \(x_i \in x\) are restricted to take on integer values (and some are allowed to take on real values), then the problem is called
**a mixed integer linear programming (MILP)**problem. If the objective function and/or constraints are*nonlinear*functions, then the problem is called**a mixed integer nonlinear programming problem (MINLP)**. - If all of the variables \(x_i \in x\) are restricted to take on integer values, then the problem is called
**a pure integer programming**problem. - If all of the variables \(x_i \in x\) are restricted to take on binary values (0 or 1), then the problem is called
**a binary optimization**problem, which is a special case of a pure integer programming problem.

We use the term MIP to refer to any kind of integer linear programming problem; the other kinds can be viewed as special cases. MIP, in turn, is a particular member of the class of discrete optimization problems. In fact, the problem of determining whether a MIP has an objective value less than a given target is a member of the class of \(\mathcal{NP}\)-Complete problems. Since any \(\mathcal{NP}\)-Complete problem is reducible to any other, virtually any combinatorial problem of interest can be handled in principle by solving some equivalent MIP.

##### Software Resources

- Mixed Integer Linear Programming Solvers available on the NEOS Server
- A. Lodi and J. T. Linderoth. (2011) “MILP Software,”
*Encyclopedia for Operations Research and Management Science*, Wiley, pp. 3239-3248. - J. T. Linderoth and T. K. Ralphs. (2005) “Noncommercial Software for Mixed-Integer Linear Programming,” in
*Integer Programming: Theory and Practice*, Karlof, J., Ed., CRC Press, pp. 253-303.

##### Test Problems

##### Case Studies

- Bioengineering: Metabolic Engineering Problem
- Puzzles: The Abbott’s Window
- Puzzles: Rogo
- Supply Chain: Bar Crawl Optimization
- Supply Chain: Cutting Stock Problem

##### Textbooks

- G.L. Nemhauser and L.A. Wolsey. (1988)
*Integer and Combinatorial Optimization*, John Wiley & Sons, New York. - A. Schrijver. (1984)
*Linear and Integer Programming*, John Wiley & Sons, New York. - L.A. Wolsey. (1998)
*Integer Programming*, John Wiley & Sons, New York.