Approximation Algorithms for MAX-MIN tiling Authors Piotr Berman, Bhaskar DasGupta, S. Muthukrishman S. Muthukrishman Published on Journal of Algorithms,

Slides:



Advertisements
Similar presentations
Approximation algorithms for geometric intersection graphs.
Advertisements

Minimum Clique Partition Problem with Constrained Weight for Interval Graphs Jianping Li Department of Mathematics Yunnan University Jointed by M.X. Chen.
Approximation Algorithms Chapter 14: Rounding Applied to Set Cover.
Fast Algorithms For Hierarchical Range Histogram Constructions
Approximations of points and polygonal chains
Greedy Algorithms Greed is good. (Some of the time)
Lecture 24 Coping with NPC and Unsolvable problems. When a problem is unsolvable, that's generally very bad news: it means there is no general algorithm.
Introduction to Algorithms
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
Dragan Jovicic Harvinder Singh
Polynomial Time Approximation Schemes Presented By: Leonid Barenboim Roee Weisbert.
Approximation Algorithms Chapter 5: k-center. Overview n Main issue: Parametric pruning –Technique for approximation algorithms n 2-approx. algorithm.
A polylogarithmic approximation of the minimum bisection Robert Krauthgamer The Hebrew University Joint work with Uri Feige.
Greedy Algorithms Basic idea Connection to dynamic programming Proof Techniques.
1 s-t Graph Cuts for Binary Energy Minimization  Now that we have an energy function, the big question is how do we minimize it? n Exhaustive search is.
Optimization of Pearl’s Method of Conditioning and Greedy-Like Approximation Algorithm for the Vertex Feedback Set Problem Authors: Ann Becker and Dan.
Lectures on Network Flows
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
Greedy vs Dynamic Programming Approach
1 Maximizing Lifetime of Sensor Surveillance Systems IEEE/ACM TRANSACTIONS ON NETWORKING Authors: Hai Liu, Xiaohua Jia, Peng-Jun Wan, Chih- Wei Yi, S.
Balanced Graph Partitioning Konstantin Andreev Harald Räcke.
Polynomial-Time Approximation Schemes for Geometric Intersection Graphs Authors: T. Erlebach, L. Jansen, and E. Seidel Presented by: Ping Luo 10/17/2005.
Finite Mathematics & Its Applications, 10/e by Goldstein/Schneider/SiegelCopyright © 2010 Pearson Education, Inc. 1 of 99 Chapter 4 The Simplex Method.
Polynomial time approximation scheme Lecture 17: Mar 13.
On Testing Convexity and Submodularity Michal Parnas Dana Ron Ronitt Rubinfeld.
UNC Chapel Hill Lin/Manocha/Foskey Optimization Problems In which a set of choices must be made in order to arrive at an optimal (min/max) solution, subject.
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.
Fundamental Techniques
1 Introduction to Approximation Algorithms Lecture 15: Mar 5.
(work appeared in SODA 10’) Yuk Hei Chan (Tom)
Constant Factor Approximation of Vertex Cuts in Planar Graphs Eyal Amir, Robert Krauthgamer, Satish Rao Presented by Elif Kolotoglu.
Chapter 4 The Simplex Method
10/31/02CSE Greedy Algorithms CSE Algorithms Greedy Algorithms.
10/31/02CSE Greedy Algorithms CSE Algorithms Greedy Algorithms.
Improved results for a memory allocation problem Rob van Stee University of Karlsruhe Germany Leah Epstein University of Haifa Israel WADS 2007 WAOA 2007.
15.082J, 6.855J, and ESD.78J September 21, 2010 Eulerian Walks Flow Decomposition and Transformations.
The Theory of NP-Completeness 1. What is NP-completeness? Consider the circuit satisfiability problem Difficult to answer the decision problem in polynomial.
Approximation schemes Bin packing problem. Bin Packing problem Given n items with sizes a 1,…,a n  (0,1]. Find a packing in unit-sized bins that minimizes.
APPROXIMATION ALGORITHMS VERTEX COVER – MAX CUT PROBLEMS
Design Techniques for Approximation Algorithms and Approximation Classes.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Special Topics in Data Engineering Panagiotis Karras CS6234 Lecture, March 4 th, 2009.
Packing Rectangles into Bins Nikhil Bansal (CMU) Joint with Maxim Sviridenko (IBM)
TECH Computer Science NP-Complete Problems Problems  Abstract Problems  Decision Problem, Optimal value, Optimal solution  Encodings  //Data Structure.
Chapter 8 PD-Method and Local Ratio (4) Local ratio This ppt is editored from a ppt of Reuven Bar-Yehuda. Reuven Bar-Yehuda.
Approximation Algorithms for NP-hard Combinatorial Problems Magnús M. Halldórsson Reykjavik University Local Search, Greedy and Partitioning
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Analysis of Algorithms CS 477/677 Instructor: Monica Nicolescu Lecture 7.
Efficient heuristic algorithms for the maximum subarray problem Rung-Ren Lin and Kun-Mao Chao.
Multicommodity flow, well-linked terminals and routing problems Chandra Chekuri Lucent Bell Labs Joint work with Sanjeev Khanna and Bruce Shepherd Mostly.
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
Algorithmics - Lecture 121 LECTURE 11: Dynamic programming - II -
Variations of the Prize- Collecting Steiner Tree Problem Olena Chapovska and Abraham P. Punnen Networks 2006 Reporter: Cheng-Chung Li 2006/08/28.
Optimization Problems In which a set of choices must be made in order to arrive at an optimal (min/max) solution, subject to some constraints. (There may.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear 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.
1 The instructor will be absent on March 29 th. The class resumes on March 31 st.
The geometric GMST problem with grid clustering Presented by 楊劭文, 游岳齊, 吳郁君, 林信仲, 萬高維 Department of Computer Science and Information Engineering, National.
Clustering Data Streams A presentation by George Toderici.
Approximation Algorithms based on linear programming.
Polygon Triangulation
Dr Nazir A. Zafar Advanced Algorithms Analysis and Design Advanced Algorithms Analysis and Design By Dr. Nazir Ahmad Zafar.
Chapter 8 PD-Method and Local Ratio (5) Equivalence This ppt is editored from a ppt of Reuven Bar-Yehuda. Reuven Bar-Yehuda.
Submodularity Reading Group Matroids, Submodular Functions M. Pawan Kumar
Abolfazl Asudeh Azade Nazi Nan Zhang Gautam DaS
Advanced Algorithms Analysis and Design
Lectures on Network Flows
Computability and Complexity
Advanced Algorithms Analysis and Design
Advanced Algorithms Analysis and Design
Presentation transcript:

Approximation Algorithms for MAX-MIN tiling Authors Piotr Berman, Bhaskar DasGupta, S. Muthukrishman S. Muthukrishman Published on Journal of Algorithms, 2003 Presented by Sera Kahruman

Outline  Definition  Approximation algorithms Greedy Slice and Dice Greedy Slice and Dice Recursive slice and dice-Binary space partitionings Recursive slice and dice-Binary space partitionings  Conclusion

Outline  Definition  Approximation algorithms Greedy Slice and Dice Greedy Slice and Dice Recursive slice and dice-Binary space partitionings Recursive slice and dice-Binary space partitionings  Conclusion

Definition Given a 2-dimensional array A[1,…,n][1,…,n] s.t. each A[i][j] stores a non-negative number  A tile is a subarray A[l,…,r][t,…,b] of A  Weight of a tile T, w(T) = sum of all array entries in that tile  A tiling of A is a collection of tiles of A s.t. each entry of A is contained in exactly one tile

Max-Min Tiling Problem Given a weight bound W, find a tiling of A such that: Given a weight bound W, find a tiling of A such that: 1. Each tile is of weight at least W 2. The number of tiles is maximized Max-Min tiling is NP-hard! Data mining…..an application area

More definitions  (r, s) approximation of max-min tiling is a solution that produces a tiling of A with at least rp* tiles each of which has weight at least s(W-c) where; p* = max number of tiles used in an optimal solution p* = max number of tiles used in an optimal solution c≥0 is a constant c≥0 is a constant

Slice and Dice Technique  Partition the input array into a number of slices (rectangles) using some criteria (depending on the problem)…..slicing step  Search for a better solution by looking at the neighbor slices and repartitioning the entries…..dicing step

Outline  Definition  Approximation algorithms Greedy Slice and Dice Greedy Slice and Dice Recursive slice and dice-Binary space partitionings Recursive slice and dice-Binary space partitionings  Conclusion

Approximation algorithms for Max-Min tiling  Greedy slice and dice Linear in number of non- zero entries (m) Linear in number of non- zero entries (m) Greedily slice the array into strips and dice each slice Greedily slice the array into strips and dice each slice  Recursive slice and dice: binary space partitionings Use BSP of isothetic rectangles Use BSP of isothetic rectangles Special case : Every cut of BSP is either a vertical or horizontal line Special case : Every cut of BSP is either a vertical or horizontal line (r,s) approx. time A is arbitrary (1\3,1)O(m+n) (4\9,1\3) O(n 7 ) A is binary (1\2,1\4) O(n 7 ) (2\5,1)O(m+n) Results

Greedy Slice and Dice Algorithm Observation 1: Given an instance array A of the MAX-MIN tiling problem, let A’ be the array obtained from A in which every element larger than 1 is replaced by 1. Then, any feasible solution for A’ is also a feasible solution for A and vice versa.

Greedy Slice & Dice Algorithm Greedy Slice & Dice Algorithm  Scale the array such that W=1 if necessary  After scaling w(A) becomes an upper bound  A good tile is a tile whose weight is at least 1  The algorithm finds a solution with t good tiles Such that w(A)< r*t + 2  Input array : array of row lists where each row i contains an entry (j, x) for each A[i][j]=x > 0 O( m+n) space O( m+n) space m = number of non-zero entries m = number of non-zero entries

Slicing Step  Slices are composed of complete rows  Start with the bottom row and proceed upwards  Find minimal slices  Last slice is the remainder slice, others regular

Example : Slicing step S1 S3 S2 R4 R3 R2 R1 Compute L and the array t where: L= number of regular slices t[i] = Row index such that Si consists of the rows in between t[i-1] and t[i] Can compute in O(m +n) time!

Dicing Step  Partition each slice Si using the slicing algorithm considering columns instead of rows  V-slices (vertical slices) are produced  α(i) = # of V-slices obtained from Si  V i,1, …., V i, α(i) are regular, V i, α(i)+1 remainder  Combine V i, α(i)+1 with V i, α(i) for preliminary partition

Example: Dicing step Done in O(m+ n) time

Dicing step : Cont’  Estimate weight of each part w(V L i,j ) < 1 w(V L i,j ) < 1 Summation of all w(V R i,j ) of Si < 1 Summation of all w(V R i,j ) of Si < 1 w(V C i,j ) ≤ 1 w(V C i,j ) ≤ 1 L R C  Split each V-slice V i,j into 3 parts V L i,j : all columns except last V L i,j : all columns except last V R i,j : last column except its topmost element V R i,j : last column except its topmost element V C i,j :topmost element of last column V C i,j :topmost element of last column

Cont’  Guarantee an approx. ratio of 4 (use at least floor(w(A))/4 tiles) Proof : Proof : Let t be the # of tiles obtained using the algorithm Let t be the # of tiles obtained using the algorithm w(Si) < 2+ 2α(i) ≤ 4α(i) w(Si) < 2+ 2α(i) ≤ 4α(i) w(A) < 1 + w(S1)+……..+w(SL)w(A) < 1 + w(S1)+……..+w(SL) < 1 + 4*(α(1)+……+ α(L) ) < 1 + 4*t 4*t ≥ floor(w(A))  Do additional dicing to improve the ratio

Additional Dicing Step  Each additional dicing on S i-1 US i is done in O(β+2 ) where β is total number non-zeros in S i-1 US i  Total running time still O(m+n)  Define σ(i) =1 if # of tiles increased when S i-1 U S i processed σ(i) =0 ow

Cont’  With the additional dicing step, approximation ratio becomes 3. Proof: need to show that t ≥ floor((w(A)+1)/3) w(A) < 3*t + 2 w(S 1 )+……..+w(S L ) < 3*t + 1 need to show : Proved by induction!!! Since

Outline  Definition  Approximation algorithms Greedy Slice and Dice Greedy Slice and Dice Recursive slice and dice-Binary space partitionings Recursive slice and dice-Binary space partitionings  Conclusion

Recursive Slice & Dice  Based on binary space partitioning of a set of isothetic rectangles  isothetic rectangle = rectangle with edges parallel to principal axes  Given a rectangular region R containing a set of n disjoint isothetic rectangles, a BSP of R consists of recursively partitioning R by a horizontal or vertical line into 2 sub regions and continuing in this manner for all the sub regions until each obtained region has at most 1 rectangle. If a rectangle is cut by a line, it is split into disjoint rectangles  Size(BSP)= # of regions produced  A set of rectangles form a tiling if they partition some rectangular region R.  Use dynamic programming – min size BSP in O(n 5 ) time.

Theorems Proof of Theorem 3: Consider an optimal solution OPT using p* tiles. So there exists a BSP of OPT that has at most 2p* regions in which each rectangle of OPT is cut into at most 4 pieces( from thm 2) If a rectangle is cut into i pieces, at least one piece has weight at least W/i. fraction of rectangles which has a weight of at least W/4 = 1/2 fraction of rectangles which has a weight of at least W/3 = 4/9

Recursive Slice & Dice How to compute such a BSP of A?  Definitions HBP : Hierarchical binary partition HBP : Hierarchical binary partition An HBP of an array is either the entire array or the unions of HBPs of the two sub arrays of the array. An HBP of an array is either the entire array or the unions of HBPs of the two sub arrays of the array. Γ(I,j,k,l,p) = HBP of the sub array A[ i,.,j ][ k,…,l ] in which there exists p tiles of weight at least s*W. Γ(I,j,k,l,p) = HBP of the sub array A[ i,.,j ][ k,…,l ] in which there exists p tiles of weight at least s*W.  A BSP of OPT is also a HBP of A  Use dynamic programming to find { Γ(1,n,1,n,p) | 0 ≤ p ≤ n2 }

Time analysis  There are at most O(n 4 ) sub arrays of A  If the weight of the sub array A[ i,.,j ][ k,..,l ] is at least s*W, then # of ways to construct a HBP of it is # of ways to construct a HBP of it is (j - i) + (l – k ) + 3 ≤ 2n-1…………O( n ) (j - i) + (l – k ) + 3 ≤ 2n-1…………O( n )  0 ≤ p ≤ n 2 Since we are looking for the answer for each p, Since we are looking for the answer for each p, Total running time is O( n 4 * n * n 2 )=O(n 7 )

Outline  Definition  Approximation algorithms Greedy Slice and Dice Greedy Slice and Dice Recursive slice and dice-Binary space partitionings Recursive slice and dice-Binary space partitionings  Conclusion

Conclusion  Authors introduce two approximation algorithms for MAX-MIN tiling problem using slice and dice technique  They state that efficient approximation algorithms for this problem in higher dimensions can be improved using variations of this approach

QUESTIONS ???

Homework 1. Formulate MAX-MIN tiling problem as an optimization problem. 2. In the paper, authors also mention MIN- MAX tiling problem. Define MIN-MAX tiling problem and state the main differences between the two problems.