Optimal Rectangular Partition of a Rectilinear Polygonal Region

Slides:



Advertisements
Similar presentations
Geometry and Theory of LP Standard (Inequality) Primal Problem: Dual Problem:
Advertisements

Convex drawing chapter 5 Ingeborg Groeneweg. Summery What is convex drawing What is convex drawing Some definitions Some definitions Testing convexity.
Approximations of points and polygonal chains
Chapter 6 Linear Programming: The Simplex Method
NP and NP Complete. Definitions A problem is in the class P if there is a polynomial time solution to the problem A problem is in the class NP if there.
The Theory of NP-Completeness
Krakow, Summer 2011 Schnyder’s Theorem and Relatives William T. Trotter
Convex Hulls in Two Dimensions Definitions Basic algorithms Gift Wrapping (algorithm of Jarvis ) Graham scan Divide and conquer Convex Hull for line intersections.
Linear Programming and The Carpenter’s Ruler Presentation by Perouz Taslakian COMP566 – Fall 2004.
How should we define corner points? Under any reasonable definition, point x should be considered a corner point x What is a corner point?
Classes of Polygons Planar polygons Non-planar polygons Simple
Basic Feasible Solutions: Recap MS&E 211. WILL FOLLOW A CELEBRATED INTELLECTUAL TEACHING TRADITION.
Example 1 Define the Variables: Let l = length of package g = girth of package Two variables – two inequalities: Graph each inequality. Don’t forget to.
Query Processing in Databases Dr. M. Gavrilova.  Introduction  I/O algorithms for large databases  Complex geometric operations in graphical querying.
CSC5160 Topics in Algorithms Tutorial 2 Introduction to NP-Complete Problems Feb Jerry Le
Approximation Algoirthms: Semidefinite Programming Lecture 19: Mar 22.
Semidefinite Programming
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Lecture 2 Chapter 2: Polygon Partitioning.
Yield- and Cost-Driven Fracturing for Variable Shaped-Beam Mask Writing Andrew B. Kahng CSE and ECE Departments, UCSD Xu Xu CSE Department, UCSD Alex Zelikovsky.
Computability and Complexity 24-1 Computability and Complexity Andrei Bulatov Approximation.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2007 Lecture 2 Chapter 2: Polygon Partitioning.
Finding the Largest Area Axis-Parallel Rectangle in a Polygon in O(n log 2 n) Time MATHEMATICAL SCIENCES COLLOQUIUM Prof. Karen Daniels Wednesday, October.
Polygon Triangulation Computational Geometry, WS 2006/07 Lecture 8, Part 2 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik.
Two Discrete Optimization Problems Problem #2: The Minimum Cost Spanning Tree Problem.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2001 Lecture 2 Chapter 2: Polygon Partitioning.
Caracterização e Vigilância de algumas Subclasses de Polígonos Ortogonais Ana Mafalda Martins Universidade Católica Portuguesa CEOC Encontro Anual CEOC.
Curve Curve: The image of a continous map from [0,1] to R 2. Polygonal curve: A curve composed of finitely many line segments. Polygonal u,v-curve: A polygonal.
1 The Theory of NP-Completeness 2 NP P NPC NP: Non-deterministic Polynomial P: Polynomial NPC: Non-deterministic Polynomial Complete P=NP? X = P.
The Art Gallery Problem
Brute-Force Triangulation
The Art Gallery Problem
Introduction to Routing. The Routing Problem Apply after placement Input: –Netlist –Timing budget for, typically, critical nets –Locations of blocks and.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University COT 5410 – Spring 2004.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
1 The Theory of NP-Completeness 2012/11/6 P: the class of problems which can be solved by a deterministic polynomial algorithm. NP : the class of decision.
Vertex – A point at which two or more edges meet Edge – A line segment at which two faces intersect Face – A flat surface Vertices, Edges, Faces.
Approximation algorithms for TSP with neighborhoods in the plane R 郭秉鈞 R 林傳健.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
Introduction to Integration
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Soham Uday Mehta. Linear Programming in 3 variables.
NP-COMPLETE PROBLEMS. Admin  Two more assignments…  No office hours on tomorrow.
Computing Inner and Outer Shape Approximations Joseph S.B. Mitchell Stony Brook University.
Chapter 5 Guillotine Cut (2) Portals Ding-Zhu Du.
Implicit Hitting Set Problems Richard M. Karp Erick Moreno Centeno DIMACS 20 th Anniversary.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University.
Graph Theory. undirected graph node: a, b, c, d, e, f edge: (a, b), (a, c), (b, c), (b, e), (c, d), (c, f), (d, e), (d, f), (e, f) subgraph.
NPC.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
1. For minimum vertex cover problem in the following graph give
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.
Chapter 5 Guillotine Cut (1) Rectangular Partition Ding-Zhu Du.
1 The Theory of NP-Completeness 2 Review: Finding lower bound by problem transformation Problem X reduces to problem Y (X  Y ) iff X can be solved by.
Polygon Triangulation
Computational Geometry
The 2x2 Simple Packing Problem André van Renssen Supervisor: Bettina Speckmann.
Dr Nazir A. Zafar Advanced Algorithms Analysis and Design Advanced Algorithms Analysis and Design By Dr. Nazir Ahmad Zafar.
Advanced Algorithms Analysis and Design
Query Processing in Databases Dr. M. Gavrilova
Grids Geometry Computational Geometry
Grids Geometry Computational Geometry
The Art Gallery Problem
Grids Geometry Computational Geometry
The Art Gallery Problem
I. The Problem of Molding
On the Geodesic Centers of Polygonal Domains
Joseph S.B. Mitchell, Stony Brook University
The Theory of NP-Completeness
Graphical solution A Graphical Solution Procedure (LPs with 2 decision variables can be solved/viewed this way.) 1. Plot each constraint as an equation.
Clipping Polygons Lecture 31 Fri, Nov 9, 2007.
Presentation transcript:

Optimal Rectangular Partition of a Rectilinear Polygonal Region Dagstuhl 2004 Hee-Kap Ahn, Tetsuo Asano Gabriel Valiente

Problem: Given a rectilinear polygon P possibly with holes, partition it into rectangles so that the smallest dimension of the resulting rectangles is maximized. smallest dimension or thinnest rectangle chord flipping for improvement?

Problem: Given a rectilinear polygon P possibly with holes, partition it into rectangles so that the smallest dimension of the resulting rectangles is maximized. Define a basic grid by extending rays from vertices. Is any optimal solution always associated with the basic grid?

Some difficult examples Basic grid

Some difficult examples

Some more examples differences: optimal not optimal only vertex cuts are used in the left partition the middle cut is not associated with any vertex in the right partition. (middle line is not a vertex cut => floating cut)

Some more examples optimal solution using two cuts incident to a floating cut incident to no vertex two cuts incident to a reflex vertex J. O'Rourke and G. Tewari, "The Structure of Optimal Partitions of Orthogonal Polygons into Fat Rectangles," Computational Geometry: Theory and Applications, pp.49-71, vol 28, 2004.

Some definitions vertex cuts: those incident to a polygon vertex anchored cuts: those touching on a point of the polygon's boundary (vertex cuts are special cases of anchored cuts) floating cuts: those which are strictly interior to the polygon floating cut vertex cut anchored cut anchored cuts are required for optimal solution floating cuts are required for optimal solution only vertex cuts suffice for optimal solution

Previous results (J. O'Rourke and G. Tewari) O(n42)-time algorithm for a rectilinear polygon without any hole when all of three types of cuts are allowed to use. O(n5)-time algorithm when no anchored or floating cuts are allowed. key idea: dynamic programming for a simple polygon. Conjecture: NP-complete if we allow holes. Our goal: To improve the O(n5)-time algorithm for the case no anchored or floating cuts are allowed. Holes are allowed. Key idea: formulation by 2SAT

Polynomial-time algorithm First define a basic grid by extending rays from each convex corner. Define a set of edges of increasing lengths from the starting corner. Assign a variable to each edge h(i,j) = 1 if a j-th horizontal edge from i-th corner is used for partition 0 otherwise v(i,j) = 1 if a j-th vertical edge v_j is used for partition

h(i,1) h(i,2) h(i,3) h(i,4) We must choose at most one of them O(n2) 2SAT clauses for each corner A chord is called a partial chord if one of its endpoint does not touch the boundary. Otherwise, it is called a complete chord.

If two convex corners have the same coordinate, then each edge is doubled in each direction. vj h(i,1) h(i,2) vi h(i,3) h(i,4) conditions associated from the both corners more clauses (constraints)

If two convex corners have the same coordinate, then each edge is doubled in each direction. vj h(i,1) h(i,2) vi h(i,3) h(i,4) two chords from different corners cannot overlap. If the two corners are connected by a complete chord, then it must be divided into two chords from different corners.

Vertical chords: v(i,1), v(i,2), ... same for horizontal chords Constraint at each convex corner vi h(i,j) for each pair of chords incident to a corner vi v(i,k) constraint for parallel chords (one of them can be boundary edge) h(i,j) gap < q h(k,l) cannot choose both of them

constraint for a pair of partial chords v(k,l) If two partial chords meet in the interior of the region, they cannot stop there h(i,j) Theorem 1: Any optimal solution associated with the basic grid has a corresponding truth assignments to the boolean variables. Theorem 2: An optimal rectangular partition of a polygonal region with n corners can be found in O(n3log n) time and space by solving corresponding 2SAT problems O(log n) times.