11.5 Implicit Partitioning/Packing Problems

Slides:



Advertisements
Similar presentations
Algorithm Design Methods Spring 2007 CSE, POSTECH.
Advertisements

1 Material to Cover  relationship between different types of models  incorrect to round real to integer variables  logical relationship: site selection.
Branch-and-Bound Technique for Solving Integer Programs
BU Decision Models Integer_LP1 Integer Optimization Summer 2013.
Branch and Bound See Beale paper. Example: Maximize z=x1+x2 x2 x1.
Leena Suhl University of Paderborn, Germany
The 2 Period Travelling Salesman Problem Applied to Milk Collection in Ireland By Professor H P Williams,London School of Economics Dr Martin Butler, University.
Integer Programming 3 Brief Review of Branch and Bound
Computer Algorithms Integer Programming ECE 665 Professor Maciej Ciesielski By DFG.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract.
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.
Design Techniques for Approximation Algorithms and Approximation Classes.
10/11/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne Adam Smith Algorithm Design and Analysis L ECTURE 22 Network.
Final Exam Review Final exam will have the similar format and requirements as Mid-term exam: Closed book, no computer, no smartphone Calculator is Ok Final.
1 1 Slide © 2000 South-Western College Publishing/ITP Slides Prepared by JOHN LOUCKS.
Notes 6IE3121 Knapsack Model Intuitive idea: what is the most valuable collection of items that can be fit into a backpack?
Notes 5IE 3121 Knapsack Model Intuitive idea: what is the most valuable collection of items that can be fit into a backpack?
Chapter 1. Formulations 1. Integer Programming  Mixed Integer Optimization Problem (or (Linear) Mixed Integer Program, MIP) min c’x + d’y Ax +
Systems of Equations and Inequalities Systems of Linear Equations: Substitution and Elimination Matrices Determinants Systems of Non-linear Equations Systems.
Chap 10. Integer Prog. Formulations
11.5 Implicit Partitioning/Packing Problems  Given M = {1, …, m}, K implicitly described sets of feasible subsets of M. Find a maximum value packing or.
Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation.
Integer Programming (정수계획법)
Implicit Hitting Set Problems Richard M. Karp Erick Moreno Centeno DIMACS 20 th Anniversary.
Introduction to Integer Programming Integer programming models Thursday, April 4 Handouts: Lecture Notes.
Approximation Algorithms based on linear programming.
Discrete Optimization MA2827 Fondements de l’optimisation discrète Material from P. Van Hentenryck’s course.
Part 3 Linear Programming
deterministic operations research
Linear Programming Topics General optimization model
6.5 Stochastic Prog. and Benders’ decomposition
Design and Analysis of Algorithm
Introduction to Operations Research
1.3 Modeling with exponentially many constr.
Linear Programming Topics General optimization model
Chap 9. General LP problems: Duality and Infeasibility
3.3 Applications of Maximum Flow and Minimum Cut
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
Chapter 6. Large Scale Optimization
Branch and Bound See Beale paper.
Coping With NP-Completeness
Integer Programming (정수계획법)
Polyhedron Here, we derive a representation of polyhedron and see the properties of the generators. We also see how to identify the generators. The results.
GreedyMaxCut a b w c d e 1.
Chapter 6. Large Scale Optimization
Vertex Covers, Matchings, and Independent Sets
2. Generating All Valid Inequalities
Chapter 1. Formulations (BW)
Chapter 8. General LP Problems
1.3 Modeling with exponentially many constr.
Integer Programming (정수계획법)
Algorithm Design Methods
Flow Feasibility Problems
11.5 Implicit Partitioning/Packing Problems
Advanced LP models column generation.
Advanced LP models column generation.
I.4 Polyhedral Theory.
Chapter 8. General LP Problems
5.2 Mixed Integer Linear Programming
6.5 Stochastic Prog. and Benders’ decomposition
Coping With NP-Completeness
Chapter 8. General LP Problems
Chapter 1. Formulations.
Practical Issues Finding an initial feasible solution Cycling
1.2 Guidelines for strong formulations
Chapter 6. Large Scale Optimization
1.2 Guidelines for strong formulations
EMIS The Maximum Flow Problem: Flows and Cuts Updated 6 March 2008
Presentation transcript:

11.5 Implicit Partitioning/Packing Problems Given 𝑀= 1,…,𝑚 , 𝐾 implicitly described sets of feasible subsets of 𝑀. Find a maximum value packing or partition of 𝑀 consisting of certain of these subsets. In terms of original IP (11.5), 𝑧= max 𝑘=1 𝐾 𝑐 𝑘 𝑥 𝑘 : 𝑘=1 𝐾 𝐴 𝑘 𝑥 𝑘 =𝑏, 𝑥 𝑘 ∈ 𝑋 𝑘 for 𝑘=1,…,𝐾 max 𝑘=1 𝐾 𝑐 𝑘 𝑥 𝑘 : 𝑘=1 𝐾 𝐴 𝑘 𝑥 𝑘 =𝑏, 𝑥 𝑘 ∈ 𝑋 𝑘 for 𝑘=1,…,𝐾 , we set 𝑥 𝑘 =( 𝑦 𝑘 , 𝑤 𝑘 ) with 𝑦 𝑘 ∈ 0,1 𝑚 being the incidence vector of subset 𝑘 of 𝑀, 𝑐 𝑘 = 𝑒 𝑘 , 𝑓 𝑘 , 𝐴 𝑘 =(𝐼,0) and 𝑏=1. Here, 𝑤 𝑘 are auxiliary variables needed to define whether the subset with incidence vector 𝑦 𝑘 is feasible, and to define the possibly nonlinear objective function value of the corresponding subset. 𝑧= max 𝑘=1 𝐾 𝑒 𝑘 𝑦 𝑘 + 𝑓 𝑘 𝑤 𝑘 : 𝑘=1 𝐾 𝑦 𝑘 ≤𝟏, 𝑦 𝑘 , 𝑤 𝑘 ∈ 𝑋 𝑘 for 𝑘=1,…,𝐾 . Now let ( 𝑦 𝑘,𝑡 , 𝑤 𝑘,𝑡 ) corresponds to the 𝑡 𝑡ℎ feasible solution in the set 𝑋 𝑘 , and 𝜆 𝑘,𝑡 is the corresponding binary variable. Integer Programming 2017

Integer Programming Master 𝑧= max 𝑘=1 𝐾 𝑒 𝑘 𝑦 𝑘 + 𝑓 𝑘 𝑤 𝑘 : 𝑘=1 𝐾 𝑦 𝑘 ≤𝟏, 𝑦 𝑘 , 𝑤 𝑘 ∈ 𝑋 𝑘 for 𝑘=1,…,𝐾 . Integer Programming Master 𝑧= max 𝑘=1 𝐾 𝑡=1 𝑇 𝑘 ( 𝑒 𝑘 𝑦 𝑘,𝑡 + 𝑓 𝑘 𝑤 𝑘,𝑡 ) 𝜆 𝑘,𝑡 𝑘=1 𝐾 𝑡: 𝑦 𝑖 𝑘,𝑡 =1 𝜆 𝑘,𝑡 =1 for 𝑖∈𝑀 𝑡=1 𝑇 𝑘 𝜆 𝑘,𝑡 ≤1 for 𝑘=1,…,𝐾 𝜆 𝑘,𝑡 ∈{0,1} for 𝑡=1,…, 𝑇 𝑘 and 𝑘=1,…,𝐾 Integer Programming 2017

Ex) Multi-Item Lot-Sizing Given demands 𝑑 𝑡 𝑘 for items 𝑘=1,…,𝐾 over a time horizon 𝑡=1,…,𝑇. All items must be produced on a single machine; the machine can produce only one item in each period and has a capacity 𝐶 𝑡 𝑘 if item 𝑘 is produced in period 𝑡. min 𝑘=1 𝐾 𝑡=1 𝑇 ( 𝑝 𝑡 𝑘 𝑥 𝑡 𝑘 + ℎ 𝑡 𝑘 𝑠 𝑡 𝑘 + 𝑓 𝑡 𝑘 𝑦 𝑡 𝑘 ) 𝑘=1 𝐾 𝑦 𝑡 𝑘 ≤1 for 𝑡=1,…,𝑇 (xk, sk, yk)  Xk for 𝑘=1,…,𝐾 where 𝑋 𝑘 ={( 𝑥 𝑘 , 𝑠 𝑘 , 𝑦 𝑘 )∈ 𝑅 + 𝑇 × 𝑅 + 𝑇 × 𝐵 𝑇 : 𝑠 𝑡−1 𝑘 + 𝑥 𝑡 𝑘 = 𝑑 𝑡 𝑘 + 𝑠 𝑡 𝑘 , 𝑥 𝑡 𝑘 ≤ 𝐶 𝑡 𝑘 𝑦 𝑡 𝑘 for 𝑡=1,…,𝑇}. Integer Programming 2017

Ex) Clustering (min cut clustering) Given 𝐺= 𝑉,𝐸 , edge costs 𝑐 𝑒 for 𝑒∈𝐸, node weights 𝑑 𝑖 for 𝑖∈𝑉, and a cluster capacity 𝐶, want to split the node set 𝑉 into 𝐾 (possibly empty) clusters such that the sum of the node weights in each cluster does not exceed 𝐶 and the sum of the weights of the edges between clusters is minimized (maximize the sum of weights of edges within clusters). max 𝑘=1 𝐾 𝑒∈𝐸 𝑐 𝑒 𝑤 𝑒 𝑘 𝑘=1 𝐾 𝑦 𝑖 𝑘 ≤1 for 𝑖∈𝑉 ( 𝑤 𝑘 , 𝑦 𝑘 )∈ 𝑋 𝑘 for 𝑘=1,…,𝐾 where 𝑋 𝑘 ={( 𝑤 𝑘 , 𝑦 𝑘 )∈ 𝐵 𝑚 × 𝐵 𝑛 : 𝑤 𝑒 𝑘 ≤ 𝑦 𝑖 𝑘 , 𝑤 𝑒 𝑘 ≤ 𝑦 𝑗 𝑘 , 𝑤 𝑒 𝑘 ≥ 𝑦 𝑖 𝑘 + 𝑦 𝑗 𝑘 −1, for 𝑒=(𝑖,𝑗)∈𝐸, 𝑖∈𝑉 𝑑 𝑖 𝑦 𝑖 𝑘 ≤𝐶} with 𝑦 𝑖 𝑘 =1 if node 𝑖 is in cluster 𝑘 and 𝑤 𝑒 𝑘 =1 if edge 𝑒 has both endpoints in cluster 𝑘. Integer Programming 2017

Ex) Capacitated Vehicle Routing Given 𝐺= 𝑉,𝐸 , a depot node 0, edge costs 𝑐 𝑒 for each 𝑒∈𝐸, 𝐾 identical vehicles of capacity 𝐶, and client orders 𝑑 𝑖 for 𝑖∈𝑉∖ 0 . Want to find a set of subtours (cycles) for each vehicle such that (i) each subtour contains the depot, (ii) together the subtours contain all the nodes, (iii) the subtours are disjoint on the node set V\{0}, and (iv) the total demand on each subtour (the total amount delivered by each vehicle) does not exceed 𝐶. Ex) Generalized Assignment Problem Integer Programming 2017

11.6 Partitioning with Identical Subsets How to avoid symmetry in solutions when subsets are interchangeable (independent of 𝑘) (ex: clustering, vehicle routing) As 𝑋 𝑘 =𝑋, 𝑒 𝑘 , 𝑓 𝑘 =(𝑒,𝑓) and 𝑇 𝑘 =𝑇 for all 𝑘. Set 𝜆 𝑡 = 𝑘=1 𝐾 𝜆 𝑘,𝑡 (IPM) max 𝑡=1 𝑇 (𝑒 𝑦 𝑡 +𝑓 𝑤 𝑡 ) 𝜆 𝑡 𝑡: 𝑦 𝑖 𝑡 =1 𝜆 𝑡 =1 for 𝑖∈𝑀 𝑡=1 𝑇 𝜆 𝑡 ≤𝐾 𝜆∈ 𝐵 𝑇 Subproblem is 𝜁= max { 𝑒−𝜋 𝑦+𝑓𝑤−𝜇:(𝑦,𝑤)∈𝑋} Integer Programming 2017

What if solution 𝜆 is not integral? Branching rules: What if solution 𝜆 is not integral? (i) If 𝑡=1 𝑇 𝜆 𝑡 =𝛼∉𝑍, then form two branches with 𝑡=1 𝑇 𝜆 𝑡 ≤ 𝛼 and 𝑡=1 𝑇 𝜆 𝑡 ≥ 𝛼 respectively. (ii) If 𝜆 ∉ 𝐵 𝑇 , need modifications on the branching rule. Rationale: For every feasible partitioning, any two elements 𝑖 and 𝑗 are either in the same subset or in different subsets. Prop 11.3: (Ryan and Foster(1981)) If 𝜆 ∉ 𝐵 𝑇 , there exist rows 𝑖,𝑗∈𝑀 such that 0< 𝑡: 𝑦 𝑖 𝑡 = 𝑦 𝑗 𝑡 =1 𝜆 𝑡 <1 Pf) Consider fractional variable 𝜆 𝑡 ′ . Let row 𝑖 be any row with 𝑦 𝑖 𝑡 ′ =1. Since 1≤𝑡≤𝑇 𝑦 𝑖𝑡 𝜆 𝑡 =1 and 𝜆 𝑡 ′ is fractional, there must exist some other basic column 𝑡 ′′ with 0< 𝜆 𝑡 ′′ <1 and 𝑦 𝑖 𝑡 ′′ =1. Integer Programming 2017

Pf) (continued) Since there are no duplicate columns in the basis, there must exist a row j such that either 𝑦 𝑗 𝑡 ′ =1 or 𝑦 𝑗 𝑡 ′′ =1 but not both. This leads to the following sequence of relations: 1= 1≤𝑡≤𝑇 𝑦 𝑖𝑡 𝜆 𝑡 = 𝑡: 𝑦 𝑖𝑡 =1 𝜆 𝑡 > 𝑡: 𝑦 𝑖𝑡 =1, 𝑦 𝑗𝑡 =1 𝜆 𝑡 , where the inequality follows from the fact that the last summation includes either 𝜆 𝑡 ′ or 𝜆 𝑡 ′′ , but not both.  Integer Programming 2017

Two branching constraints: (1): 𝑡: 𝑦 𝑖 𝑡 = 𝑦 𝑗 𝑡 =1 𝜆 𝑡 =1 : rows 𝑖 and 𝑗 should be covered by same column. All feasible columns must have 𝑦 𝑖 𝑡 = 𝑦 𝑗 𝑡 =0 or 𝑦 𝑖 𝑡 = 𝑦 𝑗 𝑡 =1. Infeasible columns eliminated (or value of corresponding variable 𝜆 set to 0 ) After branch, generate only the subsets such that 𝑖 and 𝑗 are in the same subset. (Add 𝑦 𝑖 = 𝑦 𝑗 to the subproblem) (2): 𝑡: 𝑦 𝑖 𝑡 = 𝑦 𝑗 𝑡 =1 𝜆 𝑡 =0 : rows 𝑖 and 𝑗 should be covered by diff. columns. All feasible columns must have 𝑦 𝑖 𝑡 = 𝑦 𝑗 𝑡 =0 or 𝑦 𝑖 𝑡 =0, 𝑦 𝑗 𝑡 =1 or 𝑦 𝑖 𝑡 =1, 𝑦 𝑗 𝑡 =0. Generate only subsets which include at most one of 𝑖 or 𝑗. (Add 𝑦 𝑖 + 𝑦 𝑗 ≤1 to the subproblem) Integer Programming 2017