Integer Programming (정수계획법)

Slides:



Advertisements
Similar presentations
Thursday, April 11 Some more applications of integer
Advertisements

Algorithm Design Methods (I) Fall 2003 CSE, POSTECH.
1 Material to Cover  relationship between different types of models  incorrect to round real to integer variables  logical relationship: site selection.
Solving IPs – Cutting Plane Algorithm General Idea: Begin by solving the LP relaxation of the IP problem. If the LP relaxation results in an integer solution,
Chapter 3 Workforce scheduling.
Design and Analysis of Algorithms Approximation algorithms for NP-complete problems Haidong Xue Summer 2012, at GSU.
Great Theoretical Ideas in Computer Science for Some.
1 Cutting Plane Technique for Solving Integer Programs.
Modeling problems with Integer Linear Programming (ILP) Name: Chuan Huang.
CSCI 573 Linear and Mixed Integer Programming Sven Koenig.
Crew Scheduling Housos Efthymios, Professor Computer Systems Laboratory (CSL) Electrical & Computer Engineering University of Patras.
2. Valid Inequalities for the 0-1 Knapsack Polytope Integer Programming
EMIS 8373: Integer Programming Valid Inequalities updated 4April 2011.
Integer Programming 3 Brief Review of Branch and Bound
Approximation Algorithms
1 Optimization problems such as MAXSAT, MIN NODE COVER, MAX INDEPENDENT SET, MAX CLIQUE, MIN SET COVER, TSP, KNAPSACK, BINPACKING do not have a polynomial.
Math443/543 Mathematical Modeling and Optimization
Approximation Algorithms
The Theory of NP-Completeness
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 5: February 2, 2009 Architecture Synthesis (Provisioning, Allocation)
Job Scheduling Lecture 19: March 19. Job Scheduling: Unrelated Multiple Machines There are n jobs, each job has: a processing time p(i,j) (the time to.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
Penn ESE535 Spring DeHon 1 ESE535: Electronic Design Automation Day 5: February 2, 2009 Architecture Synthesis (Provisioning, Allocation)
Approximation Algorithms: Bristol Summer School 2008 Seffi Naor Computer Science Dept. Technion Haifa, Israel TexPoint fonts used in EMF. Read the TexPoint.
LP formulation of Economic Dispatch
1 Lecture 4 Maximal Flow Problems Set Covering Problems.
1.3 Modeling with exponentially many constr.  Some strong formulations (or even formulation itself) may involve exponentially many constraints (cutting.
Chapter 9 Integer Programming
Great Theoretical Ideas in Computer Science.
Integer Programming Key characteristic of an Integer Program (IP) or Mixed Integer Linear Program (MILP): One or more of the decision variable must be.
Notes 6IE3121 Knapsack Model Intuitive idea: what is the most valuable collection of items that can be fit into a backpack?
Review for E&CE Find the minimal cost spanning tree for the graph below (where Values on edges represent the costs). 3 Ans. 18.
15.082J and 6.855J and ESD.78J Lagrangian Relaxation 2 Applications Algorithms Theory.
Workforce scheduling – Days off scheduling 1. n is the max weekend demand n = max(n 1,n 7 ) Surplus number of employees in day j is u j = W – n j for.
Notes 5IE 3121 Knapsack Model Intuitive idea: what is the most valuable collection of items that can be fit into a backpack?
Lecture 6 – Integer Programming Models Topics General model Logic constraint Defining decision variables Continuous vs. integral solution Applications:
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
Chapter 1. Formulations 1. Integer Programming  Mixed Integer Optimization Problem (or (Linear) Mixed Integer Program, MIP) min c’x + d’y Ax +
Models in I.E. Lectures Introduction to Optimization Models: Shortest Paths.
Chap 10. Integer Prog. Formulations
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
© J. Christopher Beck Lecture 25: Workforce Scheduling 3.
Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation.
15-853Page :Algorithms in the Real World Linear and Integer Programming III – Integer Programming Applications Algorithms.
8/14/04 J. Bard and J. W. Barnes Operations Research Models and Methods Copyright All rights reserved Lecture 6 – Integer Programming Models Topics.
Lecture 6 – Integer Programming Models Topics General model Logic constraint Defining decision variables Continuous vs. integral solution Applications:
CSC 413/513: Intro to Algorithms
IE 312 Review 1. The Process 2 Problem Model Conclusions Problem Formulation Analysis.
OR Integer Programming ( 정수계획법 ). OR
Introduction to Integer Programming Integer programming models Thursday, April 4 Handouts: Lecture Notes.
1.3 Modeling with exponentially many constr. Integer Programming
Common Intersection of Half-Planes in R 2 2 PROBLEM (Common Intersection of half- planes in R 2 ) Given n half-planes H 1, H 2,..., H n in R 2 compute.
Management Science 461 Lecture 7 – Routing (TSP) October 28, 2008.
Algorithms in the Real World
Chapter 9 Integer Programming to accompany Operations Research: Applications and Algorithms 4th edition by Wayne L. Winston Copyright (c) 2004 Brooks/Cole,
Exhaustive search Exhaustive search is simply a brute- force approach to combinatorial problems. It suggests generating each and every element of the problem.
EMIS 8373: Integer Programming Combinatorial Optimization Problems updated 27 January 2005.
Discrete Optimization MA2827 Fondements de l’optimisation discrète Material from P. Van Hentenryck’s course.
EMIS 8373: Integer Programming
Chapter 1. Introduction Ex : Diet Problem
Systems of Equations and Inequalities
1.3 Modeling with exponentially many constr.
Integer Programming (정수계획법)
1.206J/16.77J/ESD.215J Airline Schedule Planning
Chapter 1. Formulations (BW)
1.3 Modeling with exponentially many constr.
Integer Programming (정수계획법)
Chapter 1. Formulations.
Presentation transcript:

Integer Programming (정수계획법) Formulations Plane scheduling, Crew scheduling leg: one flight taking off from somewhere and landing somewhere else. route: a set of flights that an airplane can serve and return home. Let OR-1 2011

This formulations is a set partitioning type formulation Plane scheduling m : total number of legs, n : total number of possible routes (big number). Each route should satisfy timing and regulatory constraints. Assume we already generated enough routes This formulations is a set partitioning type formulation Crew scheduling Crews may ride some airplanes (legs) as passengers. Set covering type formulation. Note that the routes and costs can be different from the plane scheduling case. OR-1 2011

Set partitioning : { S1, S5 }, { S4, S7 }, … Set partitioning, set covering, set packing : ex) N = { 1, 2, 3, 4, 5 } S1 = {1, 2}, S2 = {1, 3, 4}, S3 = {3, 4}, S4 = { 1, 4, 5}, S5 = {3, 4, 5}, S6 = {1, 2, 3}, S7 = {2, 3} Set partitioning : { S1, S5 }, { S4, S7 }, … Set covering : { S1, S2, S4 }, { S4, S6 }, … Set packing : { S1, S3 }, { S5 }, … OR-1 2011

Traveling salesman problem (Formulation in the handout considers the directed case. It is correct, but not a strong formulation. We will consider a different formulation for undirected case. Similar idea can be used for directed case too.) Fixed cost charge problem (Note that y = 1, x = 0 cannot be an optimal solution since K > 0.) OR-1 2011

ci : slope f(x) c4 c2 c3 c1 K x L1 L2 L3 (x1) (x2) (x3) Nonlinear Objective functions May approximate a nonlinear objective function by a continuous piecewise linear objective function. f(x) ci : slope c4 c2 c3 c1 K x L1 L2 L3 (x1) (x2) (x3) OR-1 2011

Want to express x as x = L1 + L2 + … + Lt-1 + xt and objective value as f(x) = K + c1L1 + c2L2 + … + ct-1Lt-1 + ctxt . Formulation: Ljwj  xj  Ljwj-1 j = 1, 2, … , k w0 = 1 wj  {0, 1} j = 1, 2, … , k xj  0 j = 1, 2, … , k note that we have wj  wj-1 for j = 1, 2, … , k. If wj = 0 for some j  wk = 0 for k  j+1 If wj = wj-1 = 1  xj = Lj If wj = wj-1 = 0  xj = 0 If wj = 0, wj-1 = 1  0  xj  Lj Write the piecewise linear function as K + c1x1 + c2x2 + … + ckxk . OR-1 2011

(general knapsack, binary knapsack problem) either-or constraints If x satisfies at least one of the two constraints, x is feasible. ex) one machine job scheduling problem. M: large value OR-1 2011

Functions with N possible values OR-1 2011

ex) quadratic knapsack problem Quadratic 0-1 function ex) quadratic knapsack problem max  i  j cijxixj +  djxj Ax  b x binary  max  i  j cijyij +  djxj yij  xi , yij  xj xi + xj – 1  yij for all i, j x, y binary Express xixj by yij and add constraints that ensure yij = 1 if xi = xj = 1, and yij = 0 otherwise. ( If xi = xj = 1  yij = 1, Else (at least one of xi , xj = 0)  yij = 0) ( xi = xj = 1  yij = 1 ) OR-1 2011

Models with many constraints Traveling salesman problem (undirected case) Undirected graph G = (N, E), edge cost ce , e  E N: set of nodes, E: set of edges (edge e = (i, j), i, j  N) Find a minimum cost tour that visits each node exactly once and return home Cutset formulation minimize e  E ce xe subject to e   ({i}) xe = 2 , i  N e  (S) xe  2 , S  N, S  , N, xe  { 0, 1 }, where (S) = { e = ( i, j )  E : i  S, j  S} (called a cut defined by S, set of edges with one end node in S and the other end node not in S) OR-1 2011

Subtour elimination formulation minimize e  E ce xe subject to e   ({i}) xe = 2 , i  N e  E(S) xe  |S| - 1 , S  N, S  , N, xe  { 0, 1 }, where E(S) = { e = ( i, j )  E : i  S, j  S} (set of edges with both end nodes in S) Both formulations are correct and LP relaxations of both formulations give the same solution set. But there are enormous number of constraints. We will consider how to solve the formulation later. Although the formulation given in the handout is not a good one, it may be used if we want to solve small TSPs using a generic IP software, not the sophisticated algorithm that can handle the cutset or subtour elimination constraints. OR-1 2011

Integer programming significantly increases the modeling capability, but usually takes much more time to solve than linear programming. Theoretically, it is generally believed that there does not exist a polynomial time algorithm to solve general integer programming problems. However, recent advances in theory and software, combined with powerful computers makes it possible to solve many real world problems using integer programming. OR-1 2011