Methods and Models for Combinatorial Optimization. We have seen... Luigi De Giovanni, Marco Di Summa. Introduction

Similar documents
Methods and Models for Combinatorial Optimization

MVE165/MMG630, Applied Optimization Lecture 6 Integer linear programming: models and applications; complexity. Ann-Brith Strömberg

Integer Linear Programming Modeling

Gazzetta dello Sport for 30 minutes. Finally, Dario starts with La Gazzetta dello

Linear programming: introduction and examples

OPTIMIZATION. joint course with. Ottimizzazione Discreta and Complementi di R.O. Edoardo Amaldi. DEIB Politecnico di Milano

Computational Integer Programming. Lecture 2: Modeling and Formulation. Dr. Ted Ralphs

Integer Programming Introduction. C, T int (3) 6C +7T 21 (1) Maximize : 12C +13T Subject to

Lecture 22 Integer Linear Programming Prototype Examples. November 2, 2009

Chapter 3: Discrete Optimization Integer Programming

Gestion de la production. Book: Linear Programming, Vasek Chvatal, McGill University, W.H. Freeman and Company, New York, USA

Introduction to optimization and operations research

Recoverable Robustness in Scheduling Problems

Bachelor s Degree Programme Operations Research (Valid from 1st January, 2012 to 30th November, 2012.)

MVE165/MMG631 Linear and integer optimization with applications Lecture 8 Discrete optimization: theory and algorithms

Programmers A B C D Solution:

56:171 Operations Research Fall 1998

Welcome to CPSC 4850/ OR Algorithms

Linear Programming. Scheduling problems

Lecture 8: Column Generation

The Transportation Problem

Lecture 8: Column Generation

Linear Programming. H. R. Alvarez A., Ph. D. 1

LINEAR PROGRAMMING MODULE Part 1 - Model Formulation INTRODUCTION

Optimeringslära för F (SF1811) / Optimization (SF1841)

The CPLEX Library: Mixed Integer Programming

TRANSPORTATION & NETWORK PROBLEMS

UNIT 4 TRANSPORTATION PROBLEM

2. Linear Programming Problem

Chapter 4. Copyright 2010 Pearson Education, Inc. Publishing as Prentice Hall 4-1

1 Column Generation and the Cutting Stock Problem

IE 5531: Engineering Optimization I

PART 4 INTEGER PROGRAMMING

Math 141:512. Practice Exam 1 (extra credit) Due: February 6, 2019

System Planning Lecture 7, F7: Optimization

Applications of differential calculus Relative maxima/minima, points of inflection

56:171 Operations Research Midterm Exam - October 26, 1989 Instructor: D.L. Bricker

3.4 Relaxations and bounds

Integer programming: an introduction. Alessandro Astolfi

Chapter 3: Discrete Optimization Integer Programming

56:171 Operations Research Final Examination December 15, 1998

56:171 Operations Research Final Exam December 12, 1994

DM559/DM545 Linear and integer programming

7.2 Matrix Algebra. DEFINITION Matrix. D 21 a 22 Á a 2n. EXAMPLE 1 Determining the Order of a Matrix d. (b) The matrix D T has order 4 * 2.

Strong formulation for fixed charge network flow problem

Linear Programming Applications. Transportation Problem

- Well-characterized problems, min-max relations, approximate certificates. - LP problems in the standard form, primal and dual linear programs

is called an integer programming (IP) problem. model is called a mixed integer programming (MIP)

A Capacity Scaling Procedure for the Multi-Commodity Capacitated Network Design Problem. Ryutsu Keizai University Naoto KATAYAMA

Optimization. Broadly two types: Unconstrained and Constrained optimizations We deal with constrained optimization. General form:

IOE510/MATH561/OMS518: Linear Programming I

Econ 172A, Fall 2012: Final Examination (I) 1. The examination has seven questions. Answer them all.

Integer Linear Programming (ILP)

MATH 445/545 Homework 1: Due February 11th, 2016

The Traveling Salesman Problem: An Overview. David P. Williamson, Cornell University Ebay Research January 21, 2014

Advanced linear programming

Spring 2018 IE 102. Operations Research and Mathematical Programming Part 2

Algorithmic Game Theory and Applications. Lecture 7: The LP Duality Theorem

4. Duality Duality 4.1 Duality of LPs and the duality theorem. min c T x x R n, c R n. s.t. ai Tx = b i i M a i R n

Linear Programming Duality

We start by giving some examples of linear programs and how they are used in practice.

COLLEGE PREP CHAPTER 1 REVIEW

SECTION 5.1: Polynomials

UNIT 5:Random number generation And Variation Generation

Sensitivity Analysis and Duality in LP

ORF 522. Linear Programming and Convex Analysis

Linear Programming. Formulating and solving large problems. H. R. Alvarez A., Ph. D. 1

Designing Competitive Online Algorithms via a Primal-Dual Approach. Niv Buchbinder

Lecture 23 Branch-and-Bound Algorithm. November 3, 2009

M340(921) Solutions Problem Set 6 (c) 2013, Philip D Loewen. g = 35y y y 3.

IE 5531: Engineering Optimization I

DM559/DM545 Linear and integer programming

MTHSC 4420 Advanced Mathematical Programming Homework 2

Optimization Methods in Finance

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

19. Fixed costs and variable bounds

56:171 Operations Research Midterm Exam--15 October 2002

3.10 Column generation method

Column Generation. i = 1,, 255;

Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502)

Practice Questions for Math 131 Exam # 1

Activity Predecessors Time (months) A - 2 B A 6 C A 4 D B 4 E C 2 F B,D 1 G D,E 2 H C 1. dummy0 C4 E2

Integer Programming. The focus of this chapter is on solution techniques for integer programming models.

LINEAR INEQUALITIES. Chapter Overview

An Introduction to Linear Programming

ILP Formulations for the Lazy Bureaucrat Problem

Planning maximum capacity Wireless Local Area Networks

The Knapsack Problem. 28. April /44

Practice Ace Problems

ST. JOSEPH S COLLEGE OF ARTS & SCIENCE (AUTONOMOUS) CUDDALORE-1

Thursday, May 24, Linear Programming

MULTIPLE CHOICE QUESTIONS DECISION SCIENCE

The Method of Reduced Matrices for a General Transportation Problem*

Bilinear Programming: Applications in the Supply Chain Management

Chapter 2 Introduction to Optimization and Linear Programming

Transportation Problem

Operations Research Lecture 6: Integer Programming

Written Exam Linear and Integer Programming (DM545)

II. Analysis of Linear Programming Solutions

DRAFT Formulation and Analysis of Linear Programs

Transcription:

Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa Dipartimento di Matematica, Università di Padova De Giovanni, Di Summa MeMoCO 1 / 36 We have seen... Course goal: how to manage combinatorial explosion in decision support problems of practical interest (state-of-the-art algorithm design and implementation) Importance of (mathematical programming) models and linearity Course content: Models (formulation, understanding, IBM-CPlex libraries) Linear Progr. (simplex review, column generation, implementation) Integer Progr. (Theory and methods [by Prof. Di Summa], implementation of B&C) Metaheuristics (trajectory based, randomized search, genetic algorithms: design and implementation) Labs Material available on the webpage before the class: read it! Exam. Mandatory: two exercises [0-10] + oral [0-20]. Optional project [2-6] exercise due date: 4 days before the appello date (e.g. appello on July 16th, due date July 12th): a notice will be posted short project: normally after the oral, to improve the score if necessary De Giovanni, Di Summa MeMoCO 2 / 36

We have seen... Course goal: how to manage combinatorial explosion in decision support problems of practical interest (state-of-the-art algorithm design and implementation) Importance of (mathematical programming) models and linearity Course content: Models (formulation, understanding, IBM-CPlex libraries) Linear Progr. (simplex review, column generation, implementation) Integer Progr. (Theory and methods [by Prof. Di Summa], implementation of B&C) Metaheuristics (trajectory based, randomized search, genetic algorithms: design and implementation) Labs Material available on the webpage before the class: read it! Exam. Mandatory: two exercises [0-10] + oral [0-20]. Optional project [2-6] exercise due date: 4 days before the appello date (e.g. appello on July 16th, due date July 12th): a notice will be posted short project: normally after the oral, to improve the score if necessary De Giovanni, Di Summa MeMoCO 2 / 36 We have seen... Course goal: how to manage combinatorial explosion in decision support problems of practical interest (state-of-the-art algorithm design and implementation) Importance of (mathematical programming) models and linearity Course content: Models (formulation, understanding, IBM-CPlex libraries) Linear Progr. (simplex review, column generation, implementation) Integer Progr. (Theory and methods [by Prof. Di Summa], implementation of B&C) Metaheuristics (trajectory based, randomized search, genetic algorithms: design and implementation) Labs Material available on the webpage before the class: read it! Exam. Mandatory: two exercises [0-10] + oral [0-20]. Optional project [2-6] exercise due date: 4 days before the appello date (e.g. appello on July 16th, due date July 12th): a notice will be posted short project: normally after the oral, to improve the score if necessary De Giovanni, Di Summa MeMoCO 2 / 36

We have seen... Course goal: how to manage combinatorial explosion in decision support problems of practical interest (state-of-the-art algorithm design and implementation) Importance of (mathematical programming) models and linearity Course content: Models (formulation, understanding, IBM-CPlex libraries) Linear Progr. (simplex review, column generation, implementation) Integer Progr. (Theory and methods [by Prof. Di Summa], implementation of B&C) Metaheuristics (trajectory based, randomized search, genetic algorithms: design and implementation) Labs Material available on the webpage before the class: read it! Exam. Mandatory: two exercises [0-10] + oral [0-20]. Optional project [2-6] exercise due date: 4 days before the appello date (e.g. appello on July 16th, due date July 12th): a notice will be posted short project: normally after the oral, to improve the score if necessary De Giovanni, Di Summa MeMoCO 2 / 36 We have seen... Course goal: how to manage combinatorial explosion in decision support problems of practical interest (state-of-the-art algorithm design and implementation) Importance of (mathematical programming) models and linearity Course content: Models (formulation, understanding, IBM-CPlex libraries) Linear Progr. (simplex review, column generation, implementation) Integer Progr. (Theory and methods [by Prof. Di Summa], implementation of B&C) Metaheuristics (trajectory based, randomized search, genetic algorithms: design and implementation) Labs Material available on the webpage before the class: read it! Exam. Mandatory: two exercises [0-10] + oral [0-20]. Optional project [2-6] exercise due date: 4 days before the appello date (e.g. appello on July 16th, due date July 12th): a notice will be posted short project: normally after the oral, to improve the score if necessary De Giovanni, Di Summa MeMoCO 2 / 36

Mathematical Programming Models A mathematical programming model describes the characteristics of the optimal solution of an optimization problem by means of mathematical relations. Sets: they group the elements of the system Parameters: the data of the problem, which represent the known quantities depending on the elements of the system. Decision (or control) variables: the unknown quantities, on which we can act in order to find different possible solutions to the problem. Constraints: mathematical relations that describe solution fasibility conditions (they distinguish acceptable combinations of values of the variables). Objective function: quantity to maximize or minimize, as a function of the decision variables. De Giovanni, Di Summa MeMoCO 3 / 36 Linear Programming models Mathematical programming models where: objective function is a linear expression of the decision variables; constraints are a system of linear equations and/or inequalities. Classification of linear programming models: Linear Programming models (LP): all the variables can take real (R) values; Integer Linear Programming models (ILP): all the variables can take integer (Z) values only; Mixed Integer Linear Programming models (MILP): some variables can take real values and others can take integer values only. Linearity limits expressiveness but allows faster solution techniques! De Giovanni, Di Summa MeMoCO 4 / 36

Linear Programming models Mathematical programming models where: objective function is a linear expression of the decision variables; constraints are a system of linear equations and/or inequalities. Classification of linear programming models: Linear Programming models (LP): all the variables can take real (R) values; Integer Linear Programming models (ILP): all the variables can take integer (Z) values only; Mixed Integer Linear Programming models (MILP): some variables can take real values and others can take integer values only. Linearity limits expressiveness but allows faster solution techniques! De Giovanni, Di Summa MeMoCO 4 / 36 Linear Programming models Mathematical programming models where: objective function is a linear expression of the decision variables; constraints are a system of linear equations and/or inequalities. Classification of linear programming models: Linear Programming models (LP): all the variables can take real (R) values; Integer Linear Programming models (ILP): all the variables can take integer (Z) values only; Mixed Integer Linear Programming models (MILP): some variables can take real values and others can take integer values only. Linearity limits expressiveness but allows faster solution techniques! De Giovanni, Di Summa MeMoCO 4 / 36

An LP model for a simple CO problem Example A perfume firm produces two new items by mixing three essences: rose, lily and violet. For each decaliter of perfume one, it is necessary to use 1.5 liters of rose, 1 liter of lily and 0.3 liters of violet. For each decaliter of perfume two, it is necessary to use 1 liter of rose, 1 liter of lily and 0.5 liters of violet. 27, 21 and 9 liters of rose, lily and violet (respectively) are available in stock. The company makes a profit of 130 euros for each decaliter of perfume one sold, and a profit of 100 euros for each decaliter of perfume two sold. The problem is to determine the optimal amount of the two perfumes that should be produced. max 130 xone + 100 xtwo objective function 1.5 xone + xtwo 27 availability of rose xone + xtwo 21 availability of lily 0.3 xone + 0.5 xtwo 9 availability of violet xone, xtwo 0 domains of the variables De Giovanni, Di Summa MeMoCO 5 / 36 An LP model for a simple CO problem Example A perfume firm produces two new items by mixing three essences: rose, lily and violet. For each decaliter of perfume one, it is necessary to use 1.5 liters of rose, 1 liter of lily and 0.3 liters of violet. For each decaliter of perfume two, it is necessary to use 1 liter of rose, 1 liter of lily and 0.5 liters of violet. 27, 21 and 9 liters of rose, lily and violet (respectively) are available in stock. The company makes a profit of 130 euros for each decaliter of perfume one sold, and a profit of 100 euros for each decaliter of perfume two sold. The problem is to determine the optimal amount of the two perfumes that should be produced. max 130 xone + 100 xtwo objective function 1.5 xone + xtwo 27 availability of rose xone + xtwo 21 availability of lily 0.3 xone + 0.5 xtwo 9 availability of violet xone, xtwo 0 domains of the variables De Giovanni, Di Summa MeMoCO 5 / 36

One possible modeling schema: optimal production mix set I : resource set I = {rose, lily, violet} set J: product set J = {one, two} parameters Di: availability of resource i I e.g. Drose = 27 parameters Pj: unit profit for product j J e.g. Pone = 130 parameters Qij: amount of resource i I required for each unit of product j J e.g. Qrose one = 1.5, Qlily two = 1 variables xj: amount of product j J xone, xtwo max Pjxj Qijxj Di i I xj R+ [ Z+ {0, 1} ] j J De Giovanni, Di Summa MeMoCO 6 / 36 The diet problem Example We need to prepare a diet that supplies at least 20 mg of proteins. 30 mg of iron and 10 mg of calcium. We have the opportunity of buying vegetables (containing 5 mg/kg of proteins, 6 mg/kg of iron e 5 mg/kg of calcium, cost 4 E/Kg), meat (15 mg/kg of proteins, 10 mg/kg of iron e 3 mg/kg of calcium, cost 10 E/Kg) and fruits (4 mg/kg of proteins, 5 mg/kg of iron e 12 mg/kg of calcium, cost 7 E/Kg). We want to determine the minimum cost diet. min 4 xv + 10 xm + 7 xf cost 5 xv + 15 xm + 4 xf 20 proteins 6 xv + 10 xm + 5 xf 30 iron 5 xv + 3 xm + 12 xf 10 calcium xv, xm, xf 0 domains of the variables De Giovanni, Di Summa MeMoCO 7 / 36

The diet problem Example We need to prepare a diet that supplies at least 20 mg of proteins. 30 mg of iron and 10 mg of calcium. We have the opportunity of buying vegetables (containing 5 mg/kg of proteins, 6 mg/kg of iron e 5 mg/kg of calcium, cost 4 E/Kg), meat (15 mg/kg of proteins, 10 mg/kg of iron e 3 mg/kg of calcium, cost 10 E/Kg) and fruits (4 mg/kg of proteins, 5 mg/kg of iron e 12 mg/kg of calcium, cost 7 E/Kg). We want to determine the minimum cost diet. min 4 xv + 10 xm + 7 xf cost 5 xv + 15 xm + 4 xf 20 proteins 6 xv + 10 xm + 5 xf 30 iron 5 xv + 3 xm + 12 xf 10 calcium xv, xm, xf 0 domains of the variables De Giovanni, Di Summa MeMoCO 7 / 36 One possible modeling schema: minimum cost covering set I : available resources I = {V, M, F } set J: request set J = {proteins, iron, calcium} parameters Ci: unit cost of resource i I parameters Rj: requested amount of j J parameters Aij: amount of request j J satisfied by one unit of resource i I variables xi: amount of resource i I min i I Cixi Aijxi Dj j J i I xi R+ [ Z+ {0, 1} ] i I De Giovanni, Di Summa MeMoCO 8 / 36

The transportation problem Example A company produces refrigerators in three different factories (A, B and C) and need to move them to four stores (1, 2, 3, 4). The production of factories A, B and C is 50, 70 and 20 units, respectively. Stores 1, 2, 3 and 4 require 10, 60, 30 e 40 units, respectively. The costs in Euros to move one refrigerator from a factory to stores 1, 2, 3 and 4 are the following: from A: 6, 8, 3, 4 from B: 2, 3, 1, 3 from C: 2, 4, 6, 5 The company asks us to formulate a minimum cost transportation plan. De Giovanni, Di Summa MeMoCO 9 / 36 One possible modeling schema: transportation set I : origins factories I = {A, B, C} set J: destinations stores J = {1, 2, 3, 4} parameters Oi: capacity of origin i I factory production parameters Dj: request of destination j J store request parameters Cij: unit transp. cost from origin i I to destination j J variables xij: amount to be transported from i I to j J min i I Cij xij xij Dj j J i I xij Oi i I xij R+ [ Z+ {0, 1} ] i I j J De Giovanni, Di Summa MeMoCO 10 / 36

Fixed costs Example A supermarket chain has a budget W available for opening new stores. Preliminary analyses identified a set I of possible locations. Opening a store in i I has a fixed cost Fi (land acquisition, other administrative costs etc.) and a variable cost Ci per 100 m 2 of store. Once opened, the store in i guarantees a revenue of Ri per 100 m 2. Determine the subset of location where a store has to be opened and the related size in order to maximize the total revenue, taking into account that at most K stores can be opened. De Giovanni, Di Summa MeMoCO 11 / 36 Modeling fixed costs: binary/boolean variables set I : potential locations parameters W, Fi, Ci, Ri, large-enough M variables xi: size (in 100 m 2 ) of the store in i I variables yi: taking value 1 if a store is opened in i I (xi > 0), 0 otherwise max i I Ri xi Ci xi + Fi yi W budget i I xi M yi i I BigM constraint / relate xi to yi yi K max number of stores i I xi R+, yi {0, 1} i I De Giovanni, Di Summa MeMoCO 12 / 36

Moving scaffolds between construction yards A construction company has to move the scaffolds from three closing building sites (A, B, C) to three new building sites (1, 2, 3). The scaffolds consist of iron rods: in the sites A, B, C there are respectively 7000, 6000 and 4000 iron rods, while the new sites 1, 2, 3 need 8000, 5000 and 4000 rods respectively. The following table provide the cost of moving one iron rod from a closing site to a new site: Costs (euro cents) 1 2 3 A 9 6 5 B 7 4 9 C 4 6 3 Trucks can be used to move the iron rods from one site to another site. Each truck can carry up to 10000 rods. Find a linear programming model that determine the minimum cost transportation plan, taking into account that: using a truck causes an additional cost of 50 euros; only 4 trucks are available (and each of them can be used only for a single pair of closing site and new site); the rods arriving in site 2 cannot come from both sites A and B; it is possible to rent a fifth truck for 65 euros (i.e., 15 euros more than the other trucks). De Giovanni, Di Summa MeMoCO 13 / 36 Moving scaffolds between construction yards: elements Sets: I : closing sites (origins); J: news sites (destinations ). Parameters: Cij: unit cost (per rod) for transportation from i I to j J; Di: number of rods available at origin i I ; Rj: number of rods required at destination j J; F : fixed cost for each truck; N: number of trucks; L: fixed cost for the rent of an additional truck; K: truck capacity. Decision variables: xij: number of rods moved from i I to j J; yij: binary, values 1 if a truck from i I to j J is used, 0 otherwise. z: binary, values 1 if the additional truck is used, 0 otherwise. De Giovanni, Di Summa MeMoCO 14 / 36

Moving scaffolds between construction yards: MILP model [Suggestion: compose transportation and fixed cost schemas] min i I Cij xij + F yij + (L F ) z xij Rj j J xij Di i I xij K yij i I, j J yij N + z xij Z+ i I, j J yij {0, 1} i I, j J z {0, 1} De Giovanni, Di Summa MeMoCO 15 / 36 Moving scaffolds between construction yards: MILP model [Suggestion: compose transportation and fixed cost schemas] min i I Cij xij + F yij + (L F ) z xij Rj j J xij Di i I xij K yij i I, j J yij N + z xij Z+ i I, j J yij {0, 1} i I, j J z {0, 1} De Giovanni, Di Summa MeMoCO 15 / 36

Moving scaffolds between construction yards: variant 1 truck capacity K does not guarantee that one truck is enough how many trucks per (i, j)? variables wij, z Z+ instead of yij, z {0, 1} min i I Cij xij + F wij + (L F ) z xij Rj j J xij Di i I xij K wij i I, j J wij N + z xij Z+ i I, j J wij Z+ i I, j J z Z+ De Giovanni, Di Summa MeMoCO 16 / 36 Moving scaffolds between construction yards: variant 1 truck capacity K does not guarantee that one truck is enough how many trucks per (i, j)? variables wij, z Z+ instead of yij, z {0, 1} min i I Cij xij + F wij + (L F ) z xij Rj j J xij Di i I xij K wij i I, j J wij N + z xij Z+ i I, j J wij Z+ i I, j J z Z+ De Giovanni, Di Summa MeMoCO 16 / 36

Moving scaffolds between construction yards: variant 2 additional fixed cost Ai for loading operations in i I does loading take place in i? variable vi {0, 1} min i I Cij xij + F wij + (L F ) z+ i I xij Rj j J xij Di vi i I xij K wij i I, j J wij N + z xij Z+ i I, j J wij Z+ i I, j J vi {0, 1} i I z Z+ Ai vi Attention: try to preserve linearity! De Giovanni, Di Summa MeMoCO 17 / 36 Moving scaffolds between construction yards: variant 2 additional fixed cost Ai for loading operations in i I does loading take place in i? variable vi {0, 1} min i I Cij xij + F wij + (L F ) z+ i I xij Rj j J xij Di vi i I xij K wij i I, j J wij N + z xij Z+ i I, j J wij Z+ i I, j J vi {0, 1} i I z Z+ Ai vi Attention: try to preserve linearity! De Giovanni, Di Summa MeMoCO 17 / 36

Moving scaffolds between construction yards: variant 2 additional fixed cost Ai for loading operations in i I does loading take place in i? variable vi {0, 1} min i I Cij xij + F wij + (L F ) z+ i I xij Rj j J xij Di vi i I xij K wij i I, j J wij N + z xij Z+ i I, j J wij Z+ i I, j J vi {0, 1} i I z Z+ Ai vi Attention: try to preserve linearity! De Giovanni, Di Summa MeMoCO 17 / 36 Emergency location A network of hospitals has to cover an area with the emergency service. The area has been divided into 6 zones and, for each zone, a possible location for the service has been identified. The average distance, in minutes, from every zone to each potential service location is shown in the following table. Loc. 1 Loc. 2 Loc. 3 Loc. 4 Loc. 5 Loc. 6 Zone 1 5 10 20 30 30 20 Zone 2 10 5 25 35 20 10 Zone 3 20 25 5 15 30 20 Zone 4 30 35 15 5 15 25 Zone 5 30 20 30 15 5 14 Zone 6 20 10 20 25 14 5 It is required each zone has an average distance from a emergency service of at most 15 minutes. The hospitals ask us for a service opening scheme that minimizes the number of emergency services in the area. De Giovanni, Di Summa MeMoCO 18 / 36

Emergency location: MILP model from covering schema I set od potential locations (I = {1, 2,..., 6}). xi variables, values 1 if service is opened at location i I, 0 otherwise. min x1 + x2 + x3 + x4 + x5 + x6 x1 + x2 1 (cover zone 1) x1 + x2 + x6 1 (cover zone 2) x3 + x4 1 (cover zone 3) x3 + x4 + x5 1 (cover zone 4) x4 + x5 + x6 1 (cover zone 5) x2 + x5 + x6 1 (cover zone 6) x1, x2, x3, x4, x5, x6 {0, 1} (domain) De Giovanni, Di Summa MeMoCO 19 / 36 TLC antennas location A telephone company wants to install antennas in some sites in order to cover six areas. Five possible sites for the antennas have been detected. After some simulations, the intensity of the signal coming from an antenna placed in each site has been established for each area. The following table summarized these intensity levels: area 1 area 2 area 3 area 4 area 5 area 6 site A 10 20 16 25 0 10 site B 0 12 18 23 11 6 site C 21 8 5 6 23 19 site D 16 15 15 8 14 18 site E 21 13 13 17 18 22 Receivers recognize only signals whose level is at least 18. Furthermore, it is not possible to have more than one signal reaching level 18 in the same area, otherwise this would cause an interference. Finally, an antenna can be placed in site E only if an antenna is installed also in site D (this antenna would act as a bridge). The company wants to determine where antennas should be placed in order to cover the maximum number of areas. De Giovanni, Di Summa MeMoCO 20 / 36

TLC antennas location: MILP [from covering schema] I : set of sites for possible locations; J: set of areas; σij: parameter, signal level of antenna in i I received in j J; T : parameter, minimum signal level required; N: parameter, maximum number of non-interfering signals (here, N = 1); Mj: parameter, large enough, e.g., Mj = card({i I : σij T }). xi: binary variable, values 1 if an antenna is placed in i I, 0 otherwise; zj: binary variable, values 1 if area j J will be covered, 0 otherwise; max 1 i I :σ ij T i I :σ ij T xi 1 j J xi N j J xi {0, 1} i I zj {0, 1} j J De Giovanni, Di Summa MeMoCO 21 / 36 TLC antennas location: MILP [from covering schema] I : set of sites for possible locations; J: set of areas; σij: parameter, signal level of antenna in i I received in j J; T : parameter, minimum signal level required; N: parameter, maximum number of non-interfering signals (here, N = 1); Mj: parameter, large enough, e.g., Mj = card({i I : σij T }). xi: binary variable, values 1 if an antenna is placed in i I, 0 otherwise; zj: binary variable, values 1 if area j J will be covered, 0 otherwise; max i I :σ ij T i I :σ ij T zj xi zj j J xi N+Mj(1 zj) j J xi {0, 1} i I zj {0, 1} j J De Giovanni, Di Summa MeMoCO 21 / 36