Linear Programming vs Integer Programming

Compare linear programming (LP) and integer programming (IP) formulations in the context of air-traffic flow modeling. Introduce the LP relaxation of an IP, the bound it provides on the IP optimum, and the integrality property of single-commodity network flow problems.

Step 1 of 157%

Tutorial

LP, IP, and BIP

In air routing, optimization models come in two flavors that look almost identical -- but the difference profoundly changes both what they can express and how hard they are to solve.

A linear program (LP) optimizes a linear objective over a feasible region defined by linear inequalities. Its decision variables are continuous:

maximizecxsubject toAxbx0.\begin{array}{rl}\text{maximize} & \mathbf{c}^\top \mathbf{x} \\ \text{subject to} & A\mathbf{x} \leq \mathbf{b} \\ & \mathbf{x} \geq \mathbf{0}.\end{array}

An integer program (IP) has the same form but with an extra integrality requirement:

maximizecxsubject toAxbx0, xZn.\begin{array}{rl}\text{maximize} & \mathbf{c}^\top \mathbf{x} \\ \text{subject to} & A\mathbf{x} \leq \mathbf{b} \\ & \mathbf{x} \geq \mathbf{0},\ \mathbf{x} \in \mathbb{Z}^n.\end{array}

A binary integer program (BIP) restricts variables to {0,1}\{0,1\}, modeling yes/no decisions.

The choice between LP and IP comes from the nature of each decision variable in the routing problem:

  • Liters of fuel, traffic densities, fractions of capacity used \Rightarrow LP.
  • Number of flights scheduled, aircraft assigned, crews dispatched \Rightarrow IP.
  • Whether a route is opened, a slot allocated, an aircraft used \Rightarrow BIP.

The integrality requirement looks small but has huge computational consequences: LPs are solvable in polynomial time, while general IPs are NP-hard.

navigate · Enter open · Esc close · ⌘K/Ctrl K toggle