Branch-and-Price Solving in G12

Jakob Puchinger (Speaker), P.-J. Stuckey, M. Wallace, S. Brand

    Research output: Chapter in Book or Conference ProceedingsConference Proceedings with Oral Presentation


    Combinatorial optimisation problems are easy to state but hard to solve, and they arise in a huge variety of applications. Branch-and-price is one of many powerful methods for solving them. This paper describes how Dantzig-Wolfe decomposition, column generation and branch-and-price are integrated into the hybrid optimisation platform G12 [13]. The G12 project is developing a software environment for stating and solving combinatorial problems by mapping a highlevel model of the problem to an efficient combination of solving methods. The G12 platform consists of three major components, the modelling language Zinc [5], the model transformation language Cadmium [3], and several internal and external solvers written and/or interfaced using the general-purpose programming language Mercury [12]. All solvers and solver instances are specified in terms of their specific capabilities, i.e. the type of problems they can solve, the type of information they can return, and how they solve a problem. The branch-and-price solving in G12 was first described in detail in [9]. The practical usefulness of column generation and branch-and-price has been ell-established over the last 20 years [2, 1]. More recently it has emerged that column generation provides an ideal method for combining approaches, such as constraint programming, local search, and integer/linear programming [7, 11, 8]. Systems such as ABACUS [6] and COIN/BCP [10] and others offer facilities to support the implementation of branch-and-price. However, these systems require the user to understand the technical details of branch-and-price, supporting algorithm implementation rather than problem modelling. The first attempt to provide a column generation library was in ECLiPSe [4]. This system introduced the idea of an aggregate variable appearing in the master problem to represent a set of values returned as columns from multiple solutions to identical subproblems. However this library assumes a fixed set of variables in each subproblem, and precludes search choices which break some of the subproblem symmetries.
    Original languageEnglish
    Title of host publicationModels and Algorithms for Optimization in Logistics
    Number of pages1
    Publication statusPublished - 2009
    EventDagstuhl Seminar Proceedings 09261: Models and Algorithms for Optimization in Logistics -
    Duration: 21 Jun 200926 Jun 2009


    ConferenceDagstuhl Seminar Proceedings 09261: Models and Algorithms for Optimization in Logistics

    Research Field

    • Former Research Field - Mobility Systems


    Dive into the research topics of 'Branch-and-Price Solving in G12'. Together they form a unique fingerprint.

    Cite this