approximation algorithms for art gallery problems › ~ssen › geomschool › nandy ›...

41
Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem Approximation Algorithms for Art Gallery Problems Subhas C. Nandy ([email protected]) Advanced Computing and Microelectronics Unit Indian Statistical Institute Kolkata 700108, India.

Upload: others

Post on 30-Jan-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Approximation Algorithms for Art Gallery Problems

    Subhas C. Nandy([email protected])

    Advanced Computing and Microelectronics UnitIndian Statistical Institute

    Kolkata 700108, India.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Outline

    1 Introduction

    2 Approximation Algorithm for Art Gallery Problem

    3 Terrain Guarding Problem

    3 General Terrain Guarding Problem

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Introduction

    Art Gallery Problem:

    Given an art gallery (museum) P of a simple polygonal shape, findthe minimum number of guards along with their positions inside Psuch that each point inside P is visible to one of the guards.

    Victor Klee proposed this problem in 1976.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Introduction

    Chvtal’s Art Gallery Theorem

    bn3c guards are always sufficient, andsometimes necessary to illuminate asimple polygon with n vertices.

    An worst case example

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Introduction

    Status of the Problem

    The decision version of the art gallery problem is NP-complete.

    Our Objective

    Designing an approximation algorithm for the art gallery problem.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Introduction

    Variations of the Art Gallery Problem

    Art gallery problem for rectilinearpolygons

    Available Result: Upper bound bn4c

    Art gallery problem with holes

    Available Result: Upper bound bn+2h3 cfor a simple polygon with h holes and atotal of n vertices.

    An example with 24vertices 3 holes and 9guards.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Vertex guard problem, where guards canonly be placed at the vertices of thepolygon.

    Edge guard problem, where guards canpatrol along the edges of the polygon.

    Objective: Choose minimum numberof edges of the polygon where from theentire polygon is weakly visible.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Approximation Algorithm for Vertex Guard Problem

    An important note

    Guarding the boundary of the polygon is not enough to guard thewhole polygon.

    1

    23

    4

    5 68

    910

    11

    13

    14

    15

    16

    17

    712

    Vertices 7, 12 and 17 together can see the entire boundary of the

    polygon but the shaded region is not visible from any of these vertices.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Approximation Algorithm

    Definition

    A simple polygon is called a fan if thereexists a vertex that is visible from allpoints in the interior of the polygon.

    Main Idea of the vertex guard problem

    The vertex guard problem can betreated as a polygon decompositionproblem in which each piece is a fan.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Approximation Algorithm

    Three fans (vertices 1, 4 and 7) arenecessary to cover the polygon if onlyedge extensions are allowed.

    1

    2

    3

    4

    5 6

    7

    8 9

    1011

    12

    1314

    1516

    Whereas two fans (vertices 1 and 7)suffice if we allow the boundary ofconvex components to be bounded bysegments that contains any two verticesof the polygon.

    1

    2

    3

    4

    5 6

    7

    8 9

    1011

    12

    1314

    1516

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Approximation Algorithm

    Arrangement AJoin every pair of vertices if the linesegment lies inside the polygon.

    Extend them in one or both sidestill it (they) hit(s) the boundary ofthe polygon.

    Observation:

    Every cell in the arrangement A of these line segments insidethe polygon is convex,

    Each cell in A is either totally visible or totally invisible from avertex of the polygon.

    Each cell in A must lie in at least one of the fanscorresponding to the vertices of the polygon.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Set Cover Problem

    Set Cover Problem

    Given:

    C = {c1, c2, . . . , cn} a set of elements, andS = {S1, S2, . . . ,Sk} be a set of subsets of C

    Objective: Choose the minimum number of members in S thatcovers all the elements in C.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Formulation as a Set Cover Problem

    Formulation of the Art Gallery Problem

    C = The convex cells of the arrangement.S = Set of vertices of the polygon.

    Each member Si ∈ S consists of those convex cells that lie in thefan of the corresponding vertex of P.

    Choose the minimum number of vertices of P whose fanscover all the cells of the arrangement C.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Results

    Approximation Factor: logn

    using the existing O(log n) factor approximation algorithm for theset cover problem.

    Time Complexity: O(n5)

    Number of cells on the arrangement A = O(n4) (worst case)Computing each subset Si needs O(n) time.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Terrain Guarding Problem

    Terrain

    An x-monotone polychain.

    A vertical line intersects the polychainin exactly one point.

    The Problem

    Find minimum number of points on the boundary of the terrainthat can see all the vertices of the terrain.

    Status of the Problem - NP-hard

    See J. King and E. Krohn, Terrain Guarding is NP-Hard, SODA-2009.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Terrain Guarding Problem

    Terrain

    An x-monotone polychain.

    A vertical line intersects the polychainin exactly one point.

    The Problem

    Find minimum number of points on the boundary of the terrainthat can see all the vertices of the terrain.

    Status of the Problem - NP-hard

    See J. King and E. Krohn, Terrain Guarding is NP-Hard, SODA-2009.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Terrain Guarding Problem

    Terrain

    An x-monotone polychain.

    A vertical line intersects the polychainin exactly one point.

    The Problem

    Find minimum number of points on the boundary of the terrainthat can see all the vertices of the terrain.

    Status of the Problem - NP-hard

    See J. King and E. Krohn, Terrain Guarding is NP-Hard, SODA-2009.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Rectilinear Terrain

    A simpler version of the problem is therectilinear terrain,

    Reflex Vertex

    Reflex Vertex

    (Right)Convex Vertex

    (Right)Convex Vertex

    (Left) Covex Vertex

    Definitions

    A terrain T is rectilinear terrain if each edge e ∈ E (T ) is eitherhorizontal or vertical.

    A vertex vi of T is convex if the angle formed by the edges ei−1 andei above T is 90o .A vertex vi of T is reflex if the angle formed by the edges ei−1 andei above T is 270o .A convex vertex vi is called left convex if the edge ei−1 is vertical.

    A convex vertex vi is called right convex if the edge ei is vertical.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Rectilinear Terrain

    A simpler version of the problem is therectilinear terrain,

    Reflex Vertex

    Reflex Vertex

    (Right)Convex Vertex

    (Right)Convex Vertex

    (Left) Covex Vertex

    Definitions

    A terrain T is rectilinear terrain if each edge e ∈ E (T ) is eitherhorizontal or vertical.

    A vertex vi of T is convex if the angle formed by the edges ei−1 andei above T is 90o .A vertex vi of T is reflex if the angle formed by the edges ei−1 andei above T is 270o .A convex vertex vi is called left convex if the edge ei−1 is vertical.

    A convex vertex vi is called right convex if the edge ei is vertical.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Properties of the Rectilinear Terrain

    Let a, b, c and d be four points on aterrain T , such that ax < bx < cx < dx .Now, if a can see c and b can see d ,then a can see d .

    a

    b

    c

    d

    Let v be a right convex vertex on arectilinear terrain T , and p be a pointon T . If p can see v , then px ≤ vx . V

    P

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Properties of the Rectilinear Terrain

    Let a, b, c and d be four points on aterrain T , such that ax < bx < cx < dx .Now, if a can see c and b can see d ,then a can see d .

    a

    b

    c

    d

    Let v be a right convex vertex on arectilinear terrain T , and p be a pointon T . If p can see v , then px ≤ vx . V

    P

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Properties of the Rectilinear Terrain

    If a set G of points on a rectilinear terrain T guards a subsetV ′ ⊆ V` ∪ Vr , where V` (resp. Vr ) is a subset of left-convex(resp. right convex) vertices of T , then there exists a Ĝ ⊆ Vof reflex vertices, such that Ĝ guards V ′, and |Ĝ | ≤ |G |.

    If G ⊆ V guards all the convex vertices of a rectilinear terrainT , then G guards all the vertices of T , and all the verticaledges of T .

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Properties of the Rectilinear Terrain

    If a set G of points on a rectilinear terrain T guards a subsetV ′ ⊆ V` ∪ Vr , where V` (resp. Vr ) is a subset of left-convex(resp. right convex) vertices of T , then there exists a Ĝ ⊆ Vof reflex vertices, such that Ĝ guards V ′, and |Ĝ | ≤ |G |.

    If G ⊆ V guards all the convex vertices of a rectilinear terrainT , then G guards all the vertices of T , and all the verticaledges of T .

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Properties of the Rectilinear Terrain

    Consider a situation where

    u, v and w are three right-convexvertices such that ux < vx < wx .

    There exists two vertices g1 and g2of the terrain T such that g1 cansee both u and v and g2 can seeboth u and w .

    UV

    W

    g1

    g2

    then

    ∃ a vertex g that can see all three vertices u, v and w .Moreover, g is one among g1 and g2(the one that precedes the other in the sequence of verticesdefining T ).

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Properties of the Rectilinear Terrain

    Consider a situation where

    u, v and w are three right-convexvertices such that ux < vx < wx .

    There exists two vertices g1 and g2of the terrain T such that g1 cansee both u and v and g2 can seeboth u and w .

    UV

    W

    g1

    g2

    then

    ∃ a vertex g that can see all three vertices u, v and w .Moreover, g is one among g1 and g2(the one that precedes the other in the sequence of verticesdefining T ).

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Splitting the Problem

    P1: Covering the right-convex vertices, and

    P2: Covering the left-convex vertices.

    Our Strategy

    Compute optimum solution of both the problems P1 and P2.

    Report both the solutions.

    Result

    A 2× OPT solution.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Splitting the Problem

    P1: Covering the right-convex vertices, and

    P2: Covering the left-convex vertices.

    Our Strategy

    Compute optimum solution of both the problems P1 and P2.

    Report both the solutions.

    Result

    A 2× OPT solution.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Splitting the Problem

    P1: Covering the right-convex vertices, and

    P2: Covering the left-convex vertices.

    Our Strategy

    Compute optimum solution of both the problems P1 and P2.

    Report both the solutions.

    Result

    A 2× OPT solution.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Splitting the Problem

    P1: Covering the right-convex vertices, and

    P2: Covering the left-convex vertices.

    Our Strategy

    Compute optimum solution of both the problems P1 and P2.

    Report both the solutions.

    Result

    A 2× OPT solution.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Solving Problem P1

    Construct a graph G r

    Its vertices are the the right-convex vertices Vr of T .Put an edge between a pair of vertices u, v ∈ Vr if and only ifthere exists a vertex g of the terrain T that can see both uand v .

    Results

    G r is a chordal graph.

    Size of the minimum clique cover of G r is the minimumnumber of vertex guards for covering all the right-convexvertices in T .Minimum clique cover of G r can be computed in polynomialtime.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Solving Problem P1

    Construct a graph G r

    Its vertices are the the right-convex vertices Vr of T .Put an edge between a pair of vertices u, v ∈ Vr if and only ifthere exists a vertex g of the terrain T that can see both uand v .

    Results

    G r is a chordal graph.

    Size of the minimum clique cover of G r is the minimumnumber of vertex guards for covering all the right-convexvertices in T .Minimum clique cover of G r can be computed in polynomialtime.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    General Terrain Guarding Problem

    Simpler Variation: Left Guarding

    We are given two sets of points N and G . Each point in N is to beguarded using only guards from G which are strictly to its left.

    Linear programming formulation: LP1

    minimize∑

    g∈G xgsubject to

    ∑g∈SL(p) xg ≥ 1 ∀p ∈ N

    (* SL(p) is a subset of G where from p ∈ N can be guarded *)xg ∈ {0, 1} ∀g ∈ G

    Important Note

    In the defnition of left-guarding or right-guarding the guard doesnot see the point on which it lies

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Optimal Solution for Left Guarding

    Important Property

    Any left-visibility matrix is totally balanced. In other words, there

    is no submatrix of the form

    (1 11 0

    ).

    g1 g2 . . . gnn1n2...

    nm

    Resulta There is an efficient combinatorial algorithm for finding anoptimal integral solution to (LP1)

    aA. Kolen.Location problems on trees and in the rectilinear plane. PhDthesis, Matematisch Centrum, Amsterdam, 1982.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Optimal Solution for Left Guarding

    Important Property

    Any left-visibility matrix is totally balanced. In other words, there

    is no submatrix of the form

    (1 11 0

    ).

    g1 g2 . . . gnn1n2...

    nm

    Resulta There is an efficient combinatorial algorithm for finding anoptimal integral solution to (LP1)

    aA. Kolen.Location problems on trees and in the rectilinear plane. PhDthesis, Matematisch Centrum, Amsterdam, 1982.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Optimal Algorithm for Left Guarding

    left-guarding (T , N, G )

    • A← Φ• for p ∈ N do (* process members in N from left to right *)− if p is not yet seen by the existing members in A then− A← A ∪ {L(p)} (* append (left-most member) L(p) to A *)

    • Return A

    Result

    The algorithm can be implemented in O(|N| log |G |) time using aprocedure similar to Graham’s scan

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    One Sided Guarding

    Problem Statement

    We are given a set of points N and two sets of guards GL and GR ,where each guard in GL (respectively, GR) can only guard points ofN strictly from its right (respectively, strictly from its left).

    Right-Guarding Left-Guarding

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    One Sided Guarding

    Integer programming formulation:LP2minimize

    ∑g∈GL xg ,L +

    ∑g∈GR xg ,R

    subject to∑

    g∈SL(p)∩GL xg ,L +∑

    g∈SR(p)∩GR xg ,R ≥ 1, ∀p ∈ N

    xg ,L ∈ {0, 1}, ∀g ∈ GL

    xg ,R ∈ {0, 1}, ∀g ∈ GR

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    2-factor approximation Algorithm for One Sided Guarding

    Step1 Find an optimal fractional solution x∗ to (LP2)

    Step2 Guided by x∗, we divide the points into two sets:NL = {p ∈ N|

    ∑g∈SL(p)∩GL Xg ,L

    ∗ ≥ 12}, andNR = {p ∈ N|

    ∑g∈SR(p)∩GR Xg ,R

    ∗ ≥ 12}Step3 Optimally Solve the left-guarding problem for the pair

    (NL, GL) and the right-guarding problem for the pair (NR , GR)

    Step4 Final Solution is the combination of these two.

    Result

    We get a 2-factor approximation for one sided guarding problem.

    Reason: Here, each point of the terrain T is either guarded by amember in GL or a member of GR or both.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    4-factor approximation for General Terrain

    Observation

    • Let G ∗ be an optimum set of guards for a given instance T ,and G ∗L is the optimum solution that uses only left guards tocovers the entire NL. Then

    w(G ∗L ) ≤ 2∑g∈GL

    x∗g .

    Reason: Put xg ,L = 2x∗g for guarding NL. It is a feasible solution

    for guarding NL, and its cost is 2∑

    g∈GL x∗g

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    4-factor approximation for General Terrain (contd.)

    Similarly,

    • If G ∗ be an optimum set of guards for a given instance T , andG ∗R is the optimum solution that uses only left guards tocovers the entire NR . Then

    w(G ∗R) ≤ 2∑

    g∈GR

    x∗g .

    • A feasible solution to the one-sided discrete version withGL = GR = G , also constitutes a feasible solution to thegeneral problem.

    Result

    So if we compute the one sided versions with GL = GR = G , thenthat would lead to a 4-factor approximation result.

  • Introduction Approximation Algorithm for Art Gallery Problem Terrain Guarding Problem General Terrain Guarding Problem

    Thanks

    IntroductionApproximation Algorithm for Art Gallery ProblemTerrain Guarding ProblemGeneral Terrain Guarding Problem