HeadlinesBriefing favicon HeadlinesBriefing.com

Benders Decomposition Part II: Feasibility Cuts & Farkas' Lemma

Towards Data Science •
×

Part II of the Benders decomposition series introduces feasibility cuts to handle infeasible subproblems. When the master problem selects decisions that make operational planning impossible—such as opening facilities with insufficient capacity—optimality cuts cannot apply. Instead, Farkas' lemma provides a certificate of infeasibility that transforms into a constraint restricting the master to feasible decisions.

A toy problem illustrates the mechanism: two resources must meet demand of six units. Resource one offers capacity six at activation cost five and operating cost two; resource two offers capacity four at activation cost one and operating cost one. The initial master problem chooses only resource two for its lower fixed cost, yielding a lower bound of one. However, the subproblem reveals infeasibility because resource two cannot satisfy demand alone.

Using Farkas' lemma, an explicit infeasibility certificate is constructed and converted into a Benders feasibility cut. This cut eliminates not only the current master solution but also other decisions causing the same structural failure. The algorithm then alternates feasibility and optimality cuts until lower and upper bounds converge.

The method is applied to the capacitated facility location problem, where opening a facility no longer guarantees service feasibility. A complete implementation in Python using Pyomo and the open-source HiGHS solver demonstrates the Benders loop generating feasibility cuts for impossible operations and optimality cuts for feasible plans.