Discrete Optimization Introduction & applications



Similar documents
How the European day-ahead electricity market works

INTEGER PROGRAMMING. Integer Programming. Prototype example. BIP model. BIP models

Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams

Optimization Modeling for Mining Engineers

Hidden Markov Models in Bioinformatics. By Máthé Zoltán Kőrösi Zoltán 2006

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

Discrete Optimization

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

Chapter Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

Scheduling Shop Scheduling. Tim Nieberg

Planning and Scheduling in the Digital Factory

Linear Programming Notes VII Sensitivity Analysis

Optimal Scheduling for Dependent Details Processing Using MS Excel Solver

In this paper we present a branch-and-cut algorithm for

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question on the accompanying scantron.

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows

24. The Branch and Bound Method

Solution of a Large-Scale Traveling-Salesman Problem

Lecture 10 Scheduling 1

Bio-Informatics Lectures. A Short Introduction

CHAPTER 9. Integer Programming

Refinery Planning & Scheduling - Plan the Act. Act the Plan.

VEHICLE ROUTING PROBLEM

A Genetic Algorithm Approach for Solving a Flexible Job Shop Scheduling Problem

Product, process and schedule design II. Chapter 2 of the textbook Plan of the lecture:

Alternative Job-Shop Scheduling For Proton Therapy

Creating, Solving, and Graphing Systems of Linear Equations and Linear Inequalities

Models in Transportation. Tim Nieberg

MODELS AND ALGORITHMS FOR WORKFORCE ALLOCATION AND UTILIZATION

Short-term scheduling and recipe optimization of blending processes

Simplified Benders cuts for Facility Location

Linear Programming for Optimization. Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc.

Introduction & Overview

The Problem of Scheduling Technicians and Interventions in a Telecommunications Company

A Constraint Programming based Column Generation Approach to Nurse Rostering Problems

LECTURE 5: DUALITY AND SENSITIVITY ANALYSIS. 1. Dual linear program 2. Duality theory 3. Sensitivity analysis 4. Dual simplex method

Pairwise Sequence Alignment

High Performance Computing for Operation Research

Branch and Cut for TSP

LocalSolver: black-box local search for combinatorial optimization

Multiple Linear Regression in Data Mining

Classification - Examples

Approximation Algorithms

Two objective functions for a real life Split Delivery Vehicle Routing Problem

Lecture 3. Linear Programming. 3B1B Optimization Michaelmas 2015 A. Zisserman. Extreme solutions. Simplex method. Interior point method

Lecture 4: Exact string searching algorithms. Exact string search algorithms. Definitions. Exact string searching or matching

Integrated maintenance scheduling for semiconductor manufacturing

9.4 THE SIMPLEX METHOD: MINIMIZATION

Chapter 13: Binary and Mixed-Integer Programming

Integrating Vehicle Routing and Motion Planning

Computer Network and Communication

Practical Guide to the Simplex Method of Linear Programming

Operation Research. Module 1. Module 2. Unit 1. Unit 2. Unit 3. Unit 1

Integer Programming: Algorithms - 3

Introduction to Metropolitan Area Networks and Wide Area Networks

Component 4: Introduction to Information and Computer Science

PART III. OPS-based wide area networks

Business and Economics Applications

Special Session on Integrating Constraint Programming and Operations Research ISAIM 2016

Demand, Supply, and Market Equilibrium

Evaluation of Complexity of Some Programming Languages on the Travelling Salesman Problem

Introduction to production scheduling. Industrial Management Group School of Engineering University of Seville

Operations and Supply Chain Management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology Madras

Gas pricing and network access

Maximization versus environmental compliance

3. Evaluate the objective function at each vertex. Put the vertices into a table: Vertex P=3x+2y (0, 0) 0 min (0, 5) 10 (15, 0) 45 (12, 2) 40 Max

1 Solving LPs: The Simplex Algorithm of George Dantzig

Capacity planning and.

A MULTIPERIODIC VEHICLE ROUTING PROBLEM IN THE CONTEXT OF REVERSE LOGISTICS: A MODELING FRAMEWORK

Curriculum of Electronics Engineering Program

Overview. Essential Questions. Precalculus, Quarter 4, Unit 4.5 Build Arithmetic and Geometric Sequences and Series

Week 1: Functions and Equations

HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE

Chapter 2: Introduction to Linear Programming

THREE DIMENSIONAL REPRESENTATION OF AMINO ACID CHARAC- TERISTICS

Duality in General Programs. Ryan Tibshirani Convex Optimization /36-725

Integer Operations. Overview. Grade 7 Mathematics, Quarter 1, Unit 1.1. Number of Instructional Days: 15 (1 day = 45 minutes) Essential Questions

How To Design A Supply Chain For A New Market Opportunity

An Interactive Train Scheduling Tool for Solving and Plotting Running Maps

Unit 1. Today I am going to discuss about Transportation problem. First question that comes in our mind is what is a transportation problem?

Multi-layer MPLS Network Design: the Impact of Statistical Multiplexing

Formulation of simple workforce skill constraints in assembly line balancing models

Linear Programming. March 14, 2014

Integer Programming. subject to: (i = 1, 2,..., m),

Application. Outline. 3-1 Polynomial Functions 3-2 Finding Rational Zeros of. Polynomial. 3-3 Approximating Real Zeros of.

Amazing DNA facts. Hands-on DNA: A Question of Taste Amazing facts and quiz questions

11. APPROXIMATION ALGORITHMS

Mass Spectra Alignments and their Significance

Sectoral dictionary of competencies. page 1

Network (Tree) Topology Inference Based on Prüfer Sequence

Applied Algorithm Design Lecture 5

BIG DATA PROBLEMS AND LARGE-SCALE OPTIMIZATION: A DISTRIBUTED ALGORITHM FOR MATRIX FACTORIZATION

Call Admission Control and Routing in Integrated Service Networks Using Reinforcement Learning

PRODUCTION PLANNING AND SCHEDULING Part 1

1 Mathematical Models of Cost, Revenue and Profit

Open-source Quality Assurance and Performance Analysis Tools

MIP-Based Approaches for Solving Scheduling Problems with Batch Processing Machines

INTERNATIONAL TELECOMMUNICATION UNION

Algorithmic Aspects of Big Data. Nikhil Bansal (TU Eindhoven)

Transcription:

Discrete Optimization 2013 1/21 Discrete Optimization Introduction & applications Bertrand Cornélusse ULg - Institut Montefiore 2013

Discrete Optimization 2013 2/21 Outline Introduction Some applications Communication Electrical power systems Bioinformatics Scheduling References

Discrete Optimization 2013 3/21 A popular discrete problem: the traveling salesman problem (TSP) Given n cities, in which order should one visit them in order to minimize the total distance? Example: Visit 23 EU cities with minimal traveling distance

Discrete Optimization 2013 3/21 A popular discrete problem: the traveling salesman problem (TSP) Given n cities, in which order should one visit them in order to minimize the total distance? Example: Visit 23 EU cities with minimal traveling distance Optimal solution

Discrete Optimization 2013 4/21 Why is that so complicated? After all, there is a finite number of solutions In particular, n! possible permutations Imagine we can check 10 12 possibilities per second That is already a pretty amazing machine! 10! 0 sec 20! 28 days 30! 8400 billion years 40! 5 quadrillions times the age of the Earth... Let us not dare to continue...

Discrete Optimization 2013 5/21 Applications of the TSP Truck routing Arranging school buses routes (the very first application) Scheduling of a machine to drill holes in a circuit board Delivery of meals to homebound people Genome sequencing Cities are local strings, and the cost is the measure of likelihood that a sequence follows another Link points through fiber optic connections in order to minimize the total distance and ensure that any failure leaves the whole system operational Interactive example http://travellingsalesmanproblem.appspot.com Thanks to Pierre Schaus, UCL.

Discrete Optimization 2013 6/21 Milestones in the solution of TSP instances Year Research team Number of cities 1954 Dantzig, Fulkerson, Johnson 49 cities 1971 Held, Karp 64 cities 1977 Grötschel 120 cities 1980 Crowder, Padeberg 318 cities 1987 Padberg, Rinaldi 2392 cities 1994 Applegate, Bixby, Chvatal, Cook 7397 cities 2006 Applegate, Bixby, Chvatal, Cook, Helsgaun 80 000 cities

Discrete Optimization 2013 6/21 Milestones in the solution of TSP instances Year Research team Number of cities 1954 Dantzig, Fulkerson, Johnson 49 cities 1971 Held, Karp 64 cities 1977 Grötschel 120 cities 1980 Crowder, Padeberg 318 cities 1987 Padberg, Rinaldi 2392 cities 1994 Applegate, Bixby, Chvatal, Cook 7397 cities 2006 Applegate, Bixby, Chvatal, Cook, Helsgaun 80 000 cities Techniques: formulation as an integer programming problem, branch-and-bound, cutting planes. topics covered in the class

Discrete Optimization 2013 7/21 Modeling a discrete problem This course focuses mainly on mathematical programming formulations. We consider c, f, g linear min c(x) s.t. f (x) b g(x) = 0 x X. X = Z n + This is called Integer (Linear) Programming (IP). Remarks: Mixed Integer Programming (MIP) when some variables have a continuous domain. If c is nonlinear, very little has been done (except the quadratic case) If f or g is nonlinear: even less

Discrete Optimization 2013 8/21 Modeling a discrete problem (...) We will also consider alternative approaches. They are important because sometimes better for some applications. Constraint Programming (CP): uses reasoning on the constraints to discard infeasible variable values. Mostly targetted towards feasibility problems. Local Search: when starting from a feasible solution, try improving the solution by applying small perturbations that do not violate constraints. Dynamic Programming: many applications, when problem has an optimal substructure property. In many practical solutions, they are used in conjunction: CP with IP. Local search to refine solutions provided by a global approach (CP or MIP).

Discrete Optimization 2013 9/21 Outline Introduction Some applications Communication Electrical power systems Bioinformatics Scheduling References

Discrete Optimization 2013 10/21 Location of GSM transmitters A mobile phone operator decides to equip a currently uncovered geographical zone. The management allocates a budget of 10 million e to equip this region. 7 locations are possible for the construction of the transmitters. Every transmitter only covers a certain number of communities. Where should the transmitters be built to cover the largest population with the given budget?

Discrete Optimization 2013 11/21 Electricity production An electricity producer wants to plan the level of production of his main power plants in order to fulfill the demand and minimize his costs. The demand for 6 time periods in the day are listed in the following table. Time 0-4h 4-8h 8-12h 12-16h 16-20h 20-0h Demand (GWh) 2 3 9 9 17 8

Discrete Optimization 2013 11/21 Electricity production An electricity producer wants to plan the level of production of his main power plants in order to fulfill the demand and minimize his costs. The demand for 6 time periods in the day are listed in the following table. Time 0-4h 4-8h 8-12h 12-16h 16-20h 20-0h Demand (GWh) 2 3 9 9 17 8 The producer has 6 coal power plants. 3 of them have a power of 1GW while the remaining 3 have a power of 2GW. The cost of operating a 1GW plant is 100 e/gwh while the cost of operating a 2GW plant is 200 e/gwh.

Discrete Optimization 2013 11/21 Electricity production An electricity producer wants to plan the level of production of his main power plants in order to fulfill the demand and minimize his costs. The demand for 6 time periods in the day are listed in the following table. Time 0-4h 4-8h 8-12h 12-16h 16-20h 20-0h Demand (GWh) 2 3 9 9 17 8 The producer has 6 coal power plants. 3 of them have a power of 1GW while the remaining 3 have a power of 2GW. The cost of operating a 1GW plant is 100 e/gwh while the cost of operating a 2GW plant is 200 e/gwh. There is a fixed cost for using a plant of 100 eper hour of use. Finally, starting up a plant costs 400 e. Type Number Power Varying Fixed Startup Cost Cost Cost (GW) e/gwh e/h e 1 3 1 100 100 400 2 3 2 200 100 400

Discrete Optimization 2013 11/21 Electricity production An electricity producer wants to plan the level of production of his main power plants in order to fulfill the demand and minimize his costs. The demand for 6 time periods in the day are listed in the following table. Time 0-4h 4-8h 8-12h 12-16h 16-20h 20-0h Demand (GWh) 2 3 9 9 17 8 The producer has 6 coal power plants. 3 of them have a power of 1GW while the remaining 3 have a power of 2GW. The cost of operating a 1GW plant is 100 e/gwh while the cost of operating a 2GW plant is 200 e/gwh. There is a fixed cost for using a plant of 100 eper hour of use. Finally, starting up a plant costs 400 e. Type Number Power Varying Fixed Startup Cost Cost Cost (GW) e/gwh e/h e 1 3 1 100 100 400 2 3 2 200 100 400 What is the optimal production planning to minimize the costs while satisfying the demand?

1 In practive, for most of them, through retailers. Discrete Optimization 2013 12/21 Day-ahead Electricity markets The day is divided in T equal time periods. Suppliers and Consumers 1 submit orders to the market, defined by a price p o, this is the limit price at which suppliers (resp. consumers) are willing to sell (resp. buy); a power level q o. This quantity must be accepted totally or rejected. Let us assume q o is negative for demand, positive for supply; start and end periods (to start, to end ). The market operator must decide which orders are accepted and rejected. Deals are remunarated at a (period-dependent) uniform price MCP t. Suppliers (resp. consumers) receive (resp. pay) money according to the power they actually sell (resp. buy) and the market prices. Total supply must equal total demand at any period. The market is designed to maximize the social welfare One cannot improve the surplus of one participant without degrading the surplus of another participant of a greater amount. No participant can have a negative surplus (although in some cases that would increase the total surplus). Illustration: http://www.epexspot.com

Discrete Optimization 2013 13/21 And more... There are many more applications in power systems: hydro-electric generation scheduling network planning with contingencies topological optimization of the network (e.g. to minimize losses) investements planning

Discrete Optimization 2013 14/21 Multiple Sequence Alignment Compare proteins described by a sequence of letters (amino acids). Aligning sequences means inserting symbols in the sequences such that similar letters appear in the same column (or index in the sequence). Many objective functions can be defined, depending on the properties of the proteins that are compared. Example Input: sequence A: AKZRTJVBTMRJV sequence B: HKZWTXVDTMR Objective: Maximize number of letters matched perfectly, i.e. do not allow mismatches. Output: sequence A: -AKZ-RTJ-V-BTMRJV sequence B: H-KZW-T-XVD-TMR-- Solution methods: Heuristics and approximation algorithms, Dynamic Programming, Branch-and-Cut.

Discrete Optimization 2013 15/21 Probe Design for Microarray Experiments Probes (i.e. experiments) can tell us if some targets (viruses or bacteria) are present in a biological sample. Assume only one target is present in each sample, what is the smallest subset of probes necessary to identify it? Example Targets: t i, i = 1, 2,..., M, probes: p i, i = 1, 2,..., N. Input: p 1 p 2 p 3 p 4 p 5 p 6 p 7 t 1 0 0 1 1 1 1 0 t 2 1 0 0 0 0 0 0 t 3 1 0 0 0 1 1 1 t 4 0 1 0 1 1 0 0 Means p 1 can tell us if any of targets t 2 and t 3 is present in the sample, p 2 can tell us if t 4 is present,...

Discrete Optimization 2013 15/21 Probe Design for Microarray Experiments Probes (i.e. experiments) can tell us if some targets (viruses or bacteria) are present in a biological sample. Assume only one target is present in each sample, what is the smallest subset of probes necessary to identify it? Example Targets: t i, i = 1, 2,..., M, probes: p i, i = 1, 2,..., N. Input: p 1 p 2 p 3 p 4 p 5 p 6 p 7 t 1 0 0 1 1 1 1 0 t 2 1 0 0 0 0 0 0 t 3 1 0 0 0 1 1 1 t 4 0 1 0 1 1 0 0 Means p 1 can tell us if any of targets t 2 and t 3 is present in the sample, p 2 can tell us if t 4 is present,... Solution: p 4 p 6 t 1 1 1 t 2 0 0 t 3 0 1 t 4 1 0

Discrete Optimization 2013 16/21 Other applications Sequence-Structure alignment for RNA: compared to DNA and proteins, there is additional structure to the sequence that must be accounted for (folding). Protein 3D structure prediction from sequence. See [Althaus et al.(2009)althaus, Klau, Kohlbacher, Lenhof, and Reinert].

Discrete Optimization 2013 17/21 Sequencing jobs on a bottleneck machine In workshops, it may happen that a single machine determines the throughput of the production critical machine. A set of tasks is to be processed. The execution is non-preemptive. For every task i, a release date and duration are given. Different possible objectives: total processing time (makespan), average processing time, total tardiness (if due dates are given)

Discrete Optimization 2013 18/21 Scheduling of telecommunications via satellite A digital telecommunications system via satellite consists of a satellite and a set of stations on earth. We consider for example 4 stations in the US that communicate with 4 stations in Europe through the satellite. The total traffic is given through a matrix TRAF tr. The satellite has a switch that allows any permutation between the 4 transmitters and the 4 receivers. The cost of a switch is the duration of its longest packet. The objective is to find a schedule with minimal total duration.

Discrete Optimization 2013 19/21 Scheduling nurses A working day in a hospital is subdivided in 12 periods of two hours. The personnel requirements change from period to period. A nurse works 8 hours a day and is entitled to a break after having worked for 4 hours. Determine the minimum number of nurses required to cover all requirements? If only 80 nurses are avalable, and assuming that it is not enough, we may allow for a certain number of nurses to work for a fifth period right after the last one. Determine a schedule the minimum number of nurses working overtime.

Discrete Optimization 2013 20/21 Outline Introduction Some applications Communication Electrical power systems Bioinformatics Scheduling References

Discrete Optimization 2013 21/21 References Ernst Althaus, Gunnar W Klau, Oliver Kohlbacher, Hans-Peter Lenhof, and Knut Reinert. Integer linear programming in computational biology. In Efficient Algorithms, pages 199 218. Springer, 2009.