8,922 research outputs found

    Reformulation and decomposition of integer programs

    Get PDF
    In this survey we examine ways to reformulate integer and mixed integer programs. Typically, but not exclusively, one reformulates so as to obtain stronger linear programming relaxations, and hence better bounds for use in a branch-and-bound based algorithm. First we cover in detail reformulations based on decomposition, such as Lagrangean relaxation, Dantzig-Wolfe column generation and the resulting branch-and-price algorithms. This is followed by an examination of Benders’ type algorithms based on projection. Finally we discuss in detail extended formulations involving additional variables that are based on problem structure. These can often be used to provide strengthened a priori formulations. Reformulations obtained by adding cutting planes in the original variables are not treated here.Integer program, Lagrangean relaxation, column generation, branch-and-price, extended formulation, Benders' algorithm

    Simultaneous column-and-row generation for large-scale linear programs with column-dependent-rows

    Get PDF
    In this paper, we develop a simultaneous column-and-row generation algorithm for a general class of large-scale linear programming problems. These problems typically arise in the context of linear programming formulations with exponentially many variables. The defining property for these formulations is a set of linking constraints. These constraints are either too many to be included in the formulation directly, or the full set of linking constraints can only be identified, if all variables are generated explicitly. Due to this dependence between columns and rows, we refer to this class of linear programs as problems with column-dependent-rows. To solve these problems, we need to be able to generate both columns and rows on the fly within an efficient solution method. We emphasize that the generated rows are structural constraints and distinguish our work from the branch-and-cut-and-price framework. We first characterize the underlying assumptions for the proposed column-and-row generation algorithm and then introduce the associated set of pricing subproblems in detail. The proposed methodology is demonstrated on numerical examples for the multi-stage cutting stock and the quadratic set covering problems

    Simultaneous column-and-row generation for large-scale linear programs with column-dependent-rows

    Get PDF
    In this paper, we develop a simultaneous column-and-row generation algorithm that could be applied to a general class of large-scale linear programming problems. These problems typically arise in the context of linear programming formulations with exponentially many variables. The defining property for these formulations is a set of linking constraints, which are either too many to be included in the formulation directly, or the full set of linking constraints can only be identified, if all variables are generated explicitly. Due to this dependence between columns and rows, we refer to this class of linear programs as problems with column-dependent-rows. To solve these problems, we need to be able to generate both columns and rows on-the-fly within an efficient solution approach. We emphasize that the generated rows are structural constraints and distinguish our work from the branch-and-cut-and-price framework. We first characterize the underlying assumptions for the proposed column-and-row generation algorithm. These assumptions are general enough and cover all problems with column-dependent-rows studied in the literature up until now to the best of our knowledge. We then introduce in detail a set of pricing subproblems, which are used within the proposed column-and-row generation algorithm. This is followed by a formal discussion on the optimality of the algorithm. To illustrate the proposed approach, the paper is concluded by applying the proposed framework to the multi-stage cutting stock and the quadratic set covering problems

    A Branch-and-Cut based Pricer for the Capacitated Vehicle Routing Problem

    Get PDF
    openIl Capacitated Vehicle Routing Problem, abbreviato come CVRP, è un problema di ottimizzazione combinatoria d'instradamento nel quale, un insieme geograficamente sparso di clienti con richieste note deve essere servito da una flotta di veicoli stazionati in una struttura centrale. Negli ultimi due decenni, tecniche di Column generation incorporate all'interno di frameworks branch-price-and-cut sono state infatti l'approccio stato dell'arte dominante per la costruzione di algoritmi esatti per il CVRP. Il pricer, un componente critico nella column generation, deve risolvere il Pricing Problem (PP) che richiede la risoluzione di un Elementary Shortest Path Problem with Resource Constraints (ESPPRC) in una rete di costo ridotto. Pochi sforzi scientifici sono stati dedicati allo studio di approcci branch-and-cut per affrontare il PP. L'ESPPRC è stato tradizionalmente rilassato e risolto attraverso algoritmi di programmazione dinamica. Questo approccio, tuttavia, ha due principali svantaggi. Per cominciare, peggiora i dual bounds ottenuti. Inoltre, il tempo di esecuzione diminuisce all'aumentare della lunghezza dei percorsi generati. Per valutare la performance dei loro contributi, la comunità di ricerca operativa ha tradizionalmente utilizzato una serie d'istanze di test storiche e artificiali. Tuttavia, queste istanze di benchmark non catturano le caratteristiche chiave dei moderni problemi di distribuzione del mondo reale, che sono tipicamente caratterizzati da lunghi percorsi. In questa tesi sviluppiamo uno schema basato su un approccio branch-and-cut per risolvere il pricing problem. Studiamo il comportamento e l'efficacia della nostra implementazione nel produrre percorsi più lunghi comparandola con soluzioni all'avanguardia basate su programmazione dinamica. I nostri risultati suggeriscono che gli approcci branch-and-cut possono supplementare il tradizionale algoritmo di etichettatura, indicando che ulteriore ricerca in quest'area possa portare benefici ai risolutori CVRP.The Capacitated Vehicle Routing Problem, CVRP for short, is a combinatorial optimization routing problem in which, a geographically dispersed set of customers with known demands must be served by a fleet of vehicles stationed at a central facility. Column generation techniques embedded within branch-price-and-cut frameworks have been the de facto state-of-the-art dominant approach for building exact algorithms for the CVRP over the last two decades. The pricer, a critical component in column generation, must solve the Pricing Problem (PP), which asks for an Elementary Shortest Path Problem with Resource Constraints (ESPPRC) in a reduced-cost network. Little scientific efforts have been dedicated to studying branch-and-cut based approaches for tackling the PP. The ESPPRC has been traditionally relaxed and solved through dynamic programming algorithms. This approach, however, has two major drawbacks. For starters, it worsens the obtained dual bounds. Furthermore, the running time degrades as the length of the generated routes increases. To evaluate the performance of their contributions, the operations research community has traditionally used a set of historical and artificial test instances. However, these benchmark instances do not capture the key characteristics of modern real-world distribution problems, which are usually characterized by longer routes. In this thesis, we develop a scheme based on a branch-and-cut approach for solving the pricing problem. We study the behavior and effectiveness of our implementation in producing longer routes by comparing it with state-of-the-art solutions based on dynamic programming. Our results suggest that branch-and-cut approaches may supplement the traditional labeling algorithm, indicating that further research in this area may bring benefits to CVRP solvers

    Cut and Column Generation

    Get PDF

    ABACUS - A Branch-And-CUt System, Version 2.0, User's Guide and Reference Manual

    Get PDF
    ABACUS is a C++ framework for the implementation of branch-and-cut algorithms, branch-and-price algorithms, and their combination for linear mixed integer and combinatorial optimization problems. This manual explains the installation, the design, and the usage of the framework. Both the basic steps and advanced features are discussed. The reference manual describes all classes together with all members that are relevant for the user
    corecore