A Branch-And-Price Algorithm for a Compressor Scheduling Problem
Total Page:16
File Type:pdf, Size:1020Kb
UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA PROGRAMA DE PÓS-GRADUAÇÃO EM COMPUTAÇÃO MARCELO WUTTIG FRISKE A Branch-and-Price Algorithm for a Compressor Scheduling Problem Thesis presented in partial fulfillment of the requirements for the degree of Master of Computer Science Advisor: Profa. Dr. Luciana Salete Buriol Coadvisor: Prof. Dr. Eduardo Camponogara Porto Alegre March 2016 CIP — CATALOGING-IN-PUBLICATION Friske, Marcelo Wuttig A Branch-and-Price Algorithm for a Compressor Schedul- ing Problem / Marcelo Wuttig Friske. – Porto Alegre: PPGC da UFRGS, 2016. 58 f.: il. Thesis (Master) – Universidade Federal do Rio Grande do Sul. Programa de Pós-Graduação em Computação, Porto Alegre, BR– RS, 2016. Advisor: Luciana Salete Buriol; Coadvisor: Eduardo Camponogara. 1. Compressor scheduling problem. 2. Branch-and-price. 3. Column generation. 4. Piecewise-linear formulation. I. Bu- riol, Luciana Salete. II. Camponogara, Eduardo. III. Título. UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL Reitor: Prof. Carlos Alexandre Netto Vice-Reitor: Prof. Rui Vicente Oppermann Pró-Reitor de Pós-Graduação: Prof. Vladimir Pinheiro do Nascimento Diretor do Instituto de Informática: Prof. Luis da Cunha Lamb Coordenador do PPGC: Prof. Luigi Carro Bibliotecária-chefe do Instituto de Informática: Beatriz Regina Bastos Haro ACKNOWLEDGMENTS I would like to thank my parents Eldevir and Rosane for the opportunities that they give me since I was born, and I thank my lovely wife Mariana for the unconditional support of my decisions. I thank my aunt Norma that accepted me as her guest over two years. I am very grateful to my advisor Luciana and my coadvisor Eduardo for their support during my masters. Lastly, but not last, I thank my laboratory colleagues Árton, Fernando, Alex, André, Leonardo B, Leonardo M, Paulo, Germano, Tadeu, Henrique, Renato, Toni, Carlo and Victoria for the experience exchange and built friendships. ABSTRACT This work presents the study and application of a branch-and-price algorithm for solving a com- pressor scheduling problem. The problem is related to oil production and consists of defining a set of compressors to be activated, supplying the gas-lift demand of a set of wells and min- imizing the associated costs. The problem has a non-convex objective function, to which a piecewise-linear formulation has been proposed. This dissertation proposes a column genera- tion approach based on the Dantzig-Wolfe decomposition, which achieves tighter lower bounds than the straightforward linear relaxation of the piecewise-linear formulation. The column gen- eration was embedded in a branch-and-price algorithm and further compared with CPLEX, obtaining optimal solutions in lesser time for a set of instances. Further, the branch-and-price algorithm can find better feasible solutions for large instances under a limited processing time. Keywords: Compressor scheduling problem. branch-and-price. column generation. piecewise- linear formulation. A Branch-and-Price Algorithm for a Compressor Scheduling Problem RESUMO O presente trabalho realiza o estudo e aplicação de um algoritmo de branch-and-price para a resolução de um problema de escalonamento de compressores. O problema é ligado à pro- dução petrolífera, o qual consiste em definir um conjunto de compressores a serem ativados para fornecer gas de elevação a um conjunto de poços, atendendo toda demanda e minimizando os custos envolvidos. O problema é caracterizado por uma função objetivo não-convexa que é linearizada por partes de forma a ser formulada como um problema de programação inteira mista. A abordagem de geração de colunas é baseada na decomposição de Dantzig-Wolfe e apresenta melhores limitantes inferiores em relação à relaxação linear da formulação compacta. O branch-and-price é comparado ao solver CPLEX, sendo capaz de encontrar a solução ótima em menor tempo para um conjunto de instâncias, bem como melhores soluções factíveis para instâncias maiores em um período de tempo limitado. Palavras-chave: Problema de Escalonamento de Compressores, Algorítmos Exatos, Geração de Colunas, Formulação Linear por Partes. LIST OF ABBREVIATIONS AND ACRONYMS B&P Branch-and-price; BKV Best-known value; CFLP Capacitated Facility Location Problem; CG Column Generation; CSP Compressor Scheduling Problem; GLPC Gas-Lift Performance Curve; MIP Mixed Integer Problem; MP Master problem; RHS Right-hand side; RMP Restricted master problem; SSCFLP Single-Source Capacitated Facility Location Problem; LIST OF FIGURES Figure 1.1 Illustration of well supplied by the continuous gas-lift technique.......................... 11 Figure 2.1 Gas-lift performance curve examples..................................................................... 14 Figure 2.2 Nonlinear function with piecewise-linear formulation........................................... 18 Figure 3.1 An instance of the CSP with a feasible solution..................................................... 22 Figure 3.2 Pressure performance curves of four compressors. ................................................ 25 LIST OF TABLES Table 3.1 Notation used in the CSP formulations. ................................................................... 23 Table 6.1 Transformation of SSCFLP instances to CSP instances. ......................................... 41 Table 6.2 CSP Lower bounds................................................................................................... 42 Table 6.3 CSP results with the CPLEX Solver......................................................................... 44 Table 6.4 CSP average results with CPLEX Solver. ................................................................ 45 Table 6.5 CSP results with Branch-and-Price: Times and gap ................................................ 46 Table 6.6 CSP results with Branch-and-Price: Number of nodes, cuts and columns. ............. 47 Table 6.7 CSP average results with Branch-and-Price............................................................. 48 Table 6.8 CSP Results: Branch-and-Price vs CPLEX ............................................................. 49 CONTENTS 1 INTRODUCTION................................................................................................................ 10 2 RELATED WORK .............................................................................................................. 13 2.1 Continuous gas-lift........................................................................................................... 13 2.2 The Facility Location Problem ....................................................................................... 15 2.3 Piecewise-linear formulation........................................................................................... 18 2.4 Branch-and-Price............................................................................................................. 20 3 THE COMPRESSOR SCHEDULING PROBLEM......................................................... 22 3.1 Problem Definition........................................................................................................... 22 3.2 Formulations .................................................................................................................... 23 3.2.1 Piecewise-linear formulation .......................................................................................... 25 4 COLUMN GENERATION ALGORITHM....................................................................... 28 4.1 Master problem................................................................................................................ 28 4.1.1 The Restricted Master Problem ...................................................................................... 29 4.2 The pricing sub-problem................................................................................................. 30 4.3 Column Generation procedure....................................................................................... 33 5 BRANCH-AND-PRICE ...................................................................................................... 34 5.1 Branching strategy........................................................................................................... 34 5.2 Branch-and-Price procedure .......................................................................................... 38 5.3 Speedups ........................................................................................................................... 39 6 COMPUTATIONAL RESULTS......................................................................................... 40 6.1 Data sets ............................................................................................................................ 40 6.2 Lower bounds results....................................................................................................... 41 6.3 CPLEX results.................................................................................................................. 43 6.4 Branch-and-price results................................................................................................. 45 6.5 Comparative Results........................................................................................................ 49 7 CONCLUSION .................................................................................................................... 51 REFERENCES.......................................................................................................................