You want to schedule shifts, load trucks, or allocate frequencies — problems where the answer must be whole numbers: you can't hire half a worker or use 2.7 radio channels. The natural mathematical tool is integer programming (IP), which looks exactly like a linear program except every variable must be an integer.
The catch: linear programs are easy (polynomial time, solved by the simplex method or interior-point methods), while integer programs are NP-hard in general — see the integer programming article. The gap between the two lives in the LP relaxation: drop the integrality requirement, solve the easier LP, and you usually get a fractional answer like x = 2.7 that you can't directly use.
Cutting planes are the classical fix. Each cut is a new linear inequality that is valid for every integer-feasible point (it does not remove any integer solution) but invalid for the current fractional LP optimum (it chops that point off). Add enough cuts and the LP optimum is forced to land on an integer point — no branch-and-bound search required, at least in principle.
Ralph Gomory invented a systematic way to generate such cuts in 1958, and his Gomory cuts remain inside every commercial mixed-integer programming (MIP) solver to this day. The idea is elegant: stare at a single row of the simplex tableau, round down every fractional coefficient, and read off an inequality that every integer solution must obey.
Comments
Loading comments...