Generated by GPT-5-mini| Branch-and-price | |
|---|---|
| Name | Branch-and-price |
| Type | Combinatorial optimization algorithm |
| Input | Integer linear programs, set partitioning models |
| Output | Optimal integer solutions |
| Developed by | Richard Karp; later work by Egon Balas; extended by John Hooker; others |
| Introduced | 1990s |
Branch-and-price is a computational method combining Branch-and-bound and column generation to solve large-scale integer programming problems, particularly in combinatorial optimization and routing. It blends ideas from Dantzig–Wolfe decomposition, branching strategies used in mixed-integer programming solvers, and specialized pricing problem procedures to manage enormous variable spaces. The method is central to cutting-edge implementations for industrial-scale instances arising in vehicle routing problem, crew scheduling, and cutting stock problem research and practice.
Branch-and-price marries branching from Branch-and-bound with column generation stemming from Dantzig–Wolfe decomposition and linear programming duality. A master set partitioning or set covering model is solved by iteratively adding promising variables generated by a separate subproblem, commonly formulated as a shortest path or resource constrained path problem seen in vehicle routing problem and crew scheduling. At branching nodes, decisions are propagated into both master and subproblem(s), requiring careful maintenance of dual values and compatibility with integer programming integrality conditions inspired by work at institutions like IBM and in software such as CPLEX and Gurobi.
Key components include the restricted master problem (RMP), the pricing problem, branching rules, and bound management. The RMP is a restricted linear program with a subset of columns solved by simplex method or interior point method engines; dual multipliers from the RMP drive the pricing subproblem, often cast as a constrained shortest path solved with techniques from Dijkstra's algorithm, label setting algorithms, or dynamic programming reminiscent of methods used in Bellman-type frameworks. Branching can be on original variables, on flow or route variables, or on logical decisions inspired by Egon Balas's disjunctive programming and by strong branching heuristics popularized in MIPLIB research. Node selection and pruning leverage bounds like those used in Knapsack problem branches and in cutting planes methods developed by researchers at INRIA and MIT.
Implementations exploit stabilization, acceleration, and hybridization. Stabilization techniques such as bundle methods or proximal point methods reduce oscillations in duals; acceleration includes column management heuristics, delayed column generation, and warm starts using historical columns as seen in industrial solvers from IBM Research and Microsoft Research. Variants include branch-and-cut-and-price combining cutting planes from Gomory or Chvátal cuts, multi-commodity pricing for problems in telecommunications and supply chain planning, and parallel/distributed schemes implemented on architectures from MPI clusters to cloud platforms like Amazon Web Services and supercomputers at Lawrence Livermore National Laboratory. Advanced approaches integrate matheuristics inspired by Simulated Annealing and Genetic Algorithms used by teams at Sandia National Laboratories and Los Alamos National Laboratory.
Branch-and-price has been applied to the vehicle routing problem (including pickup and delivery and time windows variants), airline crew scheduling and fleet assignment, the bin packing problem and cutting stock problem, and to timetabling at institutions like University of Cambridge and ETH Zurich. Notable case studies include industrial deployments by Airlines for crew rosters, freight routing solutions at DHL and FedEx, and large-scale electric power unit commitment modeling used by operators tied to PJM Interconnection and National Grid studies. Academic benchmarks often reference instances from TSPLIB, MIPLIB, and specialized datasets curated by groups at Georgia Tech and École Polytechnique.
From a theoretical viewpoint, branch-and-price inherits complexity from integer programming and from the underlying pricing problems. Many pricing subproblems are NP-hard (e.g., resource constrained shortest path reductions to Hamiltonian path problem), linking hardness results to foundational theorems by Cook and Karp. Convergence guarantees follow from finite branch-and-bound trees under standard assumptions and from column generation optimality conditions tied to Farkas' lemma and strong duality in linear programming. Performance bounds and approximation results intersect with literature on approximation algorithms and on integrality gaps studied by researchers at Princeton University and Stanford University.
Practical performance depends on instance structure, branching rules, and solver integration. Benchmarks reported in MIPLIB and in proceedings of INFORMS and CP conferences compare branch-and-price implementations against monolithic mixed-integer programming formulations solved by engines such as CPLEX, Gurobi, and SCIP. Results show dramatic gains for highly decomposable problems like routing and crew scheduling, while monolithic solvers may outperform on dense, small-scale instances. High-performance implementations exploit parallelism, advanced presolve routines, and tailored pricing heuristics used in projects at ETH Zurich, Tsinghua University, and University of Bologna.
Category:Optimization algorithms