ILPs
Integer Linear Programs (ILPs) are mathematical optimization problems that seek to optimize a linear objective function subject to linear constraints, with the added requirement that the decision variables take integer values. In its most common form, an ILP minimizes c^T x subject to Ax ≤ b, with x in the integer lattice Z^n, where c is a vector of coefficients, A is a matrix of coefficients, and b is a vector of bounds. When some variables are restricted to integers and others may be continuous, the problem is called a mixed-integer linear program (MILP).
ILPs are NP-hard; the decision version of an ILP is NP-complete. Solving ILPs usually relies on algorithms
Applications of ILPs are broad and include scheduling, production planning, facility location, transportation and logistics, knapsack-type
Relation to others: ILPs are a subset of integer programming, and MILPs extend them by allowing some