Abstract 1 Introduction 2 Convex Hulls, Delaunay Triangulations and Voronoi Diagrams 3 Art Gallery Problem 4 Future work References

Average Sensitivity of Geometric Algorithms

Matthijs Ebbens ORCID University of Cologne, Germany Yuichi Yoshida ORCID National Institute of Informatics, Tokyo, Japan
Abstract

In modern applications of geometric algorithms, it is often unrealistic to assume that the input representation fully captures all relevant aspects of the problem, because the input data is often large and dynamic. To address this challenge, we consider the notion of average sensitivity, which is defined as the average earth mover’s distance between the output distributions of the algorithm when run on an input and the same input with one point removed, where the average is over removed points and the distance between two outputs is measured using the symmetric difference size.

We start by showing that a number of classical problems from computational geometry, in particular the convex hull, Delaunay triangulation, and Voronoi diagram problems, are “simple” from the viewpoint of average sensitivity by proving tight bounds for the average sensitivity of any algorithm for these problems. Then, we continue by constructing an algorithm with low average sensitivity that computes, for any ϵ>0, a set of (1/3+ϵ)n guards for the art gallery problem. This is the main technical contribution of this work, which combines algorithms from computational geometry with results from the theory of local computation algorithms (LCAs) and property testing.

Keywords and phrases:
Average Sensitivity, Convex Hull, Delaunay Triangulation, Voronoi Diagram, Art Gallery
Funding:
Matthijs Ebbens: Funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) – Project Number 459420781.
Yuichi Yoshida: Partly supported by JSPS KAKENHI Grant Number 24K02903.
Copyright and License:
[Uncaptioned image] © Matthijs Ebbens and Yuichi Yoshida; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation Computational geometry
; Theory of computation Streaming, sublinear and near linear time algorithms
Acknowledgements:
We want to thank the reviewers for their comments.
Editor:
Shubhangi Saraf

1 Introduction

In modern applications of geometric algorithms, it is often unrealistic to assume that the input representation fully captures all relevant aspects of the problem, because the input data is often large and dynamic. For example, when modeling a surface using a Delaunay triangulation of a sample point set, the input sample may not include all the points necessary to capture all important features of the surface.

For this reason, it is important to design algorithms that can give a useful solution for a problem on the “real” input set by solving it on only a subset. Here, “useful” means that the output of the algorithm when applied to the subset should be close to the output of the algorithm that we would have gotten if we had access to the real input set. The notion of average sensitivity was introduced to formalize this type of algorithmic stability [13, 18]. Since then many algorithms with low sensitivity have been proposed for graph problems [18], dynamic programming problems [8, 9], clustering problems [15, 19], and learning problems [5].

Average sensitivity for geometric algorithms, where the input is a point set, can be defined as follows. For a point set P and a point pP, we denote by Pp the set P{p} obtained from P by deleting p. Let 𝒜 be a deterministic algorithm that, given a point set P, outputs a set – typically consisting of points or edges – denoted as 𝒜(P). Then, the average sensitivity of 𝒜 is the average

1|P|pP|𝒜(P)𝒜(Pp)|, (1)

where denotes the symmetric difference. One can define the average sensitivity of randomized algorithms in a similar way. For a randomized algorithm 𝒜 we denote by 𝒜(P) its output distribution on P. Let EMD(𝒜(P),𝒜(Pp)) be the earth mover’s distance between 𝒜(P) and 𝒜(Pp), where the distance between two outputs is given by the symmetric difference size. More precisely, EMD(𝒜(P),𝒜(Pp))=inf𝒟𝔼(x,y)𝒟|xΔy|, where the infimum is taken over all joint distributions over pairs of outputs of 𝒜 whose marginals are 𝒜(P) and 𝒜(Pp). Then, the average sensitivity of 𝒜 is given as the average

1|P|pPEMD(𝒜(P),𝒜(Pp)). (2)

The output specification varies for each problem, and we will review it in each section. We also note that the average sensitivity with respect to the deletion of multiple points can be bounded using the average sensitivity defined above [18].

Results

In this work, we initiate a systematic study of average sensitivity of geometric algorithms. We first consider a number of classical geometric problems and show tight bounds for the average sensitivity of any algorithm to solve them.

Theorem 1.

The average sensitivity of any algorithm that computes

  • the convex hull of a point set in d in general position is Θd(nm1), where m=d/2,

  • the Delaunay triangulation of a point set in d in general position is Θd(nm1), where m=(d+1)/2,

  • the Voronoi diagram of a point set in d in general position is Θd(nm1), where m=(d+1)/2.

These problems are frequently used as subproblems in solving more complex geometric problems, and hence proving bounds for their average sensitivity is crucial for designing algorithms with low average sensitivity for more complex problems. Theorem 1 is a combination of Theorems 3 and 5 and Corollary 6, which will be discussed in Section 2.

Next, we consider the art gallery problem and construct an algorithm with low average sensitivity for computing a small set of guards.

Theorem 2.

For any ε>0, there exists a randomized algorithm for the art gallery problem that, given a polygon P of n vertices, computes the allocation of at most (1/3+ε)n guards that cover P with average sensitivity poly(ε1).

We note that n/3 guards are sometimes necessary [1], so in general this is the best one can hope for. Theorem 2 asserts that, up to a slight approximation, this can still be achieved while guaranteeing constant average sensitivity.

2 Convex Hulls, Delaunay Triangulations and Voronoi Diagrams

In this section, we consider algorithms for classical geometric problems and show that their average sensitivity is low.

2.1 Convex Hulls

Recall that a subset S of d is called convex if for every p,qS the line segment between p and q is contained in S. The convex hull problem is to compute, given a set P of points in d, the convex hull conv(P) of P, which is defined as the smallest convex set containing P [2, Chapter 1]. For defining the average sensitivity of algorithms for the convex hull problem, a set P in d is taken as input and the entire combinatorial structure of the convex hull is taken as output. Hence, the size of the symmetric difference between outputs is defined as the sum of the sizes of the symmetric differences of the sets of k-faces for all k=0,,d1. For convenience, we assume that the input set P is in general position, i.e., no d+1 points lie on a common hyperplane.

Theorem 3.

The average sensitivity of any algorithm that computes the convex hull of a point set in d in general position is Θd(nm1), where m=d/2.

Proof.

We start by proving the upper bound. Let P be a point set in d in general position and let pP. Let K=conv(P) be the polytope bounded by the facets of conv(P). Because P is in general position, K is a simplicial complex. Throughout the proof, we will use the so-called Upper Bound Theorem [12], which states that the number fk(P) of k-faces of K satisfies

fk(P)=Od(nm), and k=0d1fk(P)=Θd(nm).

Let starK(p):={σK|pσ be the star of p in K and let linkK(p):={σK|pσ,σ{p}K} be the link of p in K. To bound the average sensitivity, we separately bound the number of disappearing faces, i.e., faces in conv(P)conv(Pp), and the number of appearing faces, i.e., the faces in conv(Pp)conv(P).

To bound the number of disappearing faces, observe that the faces that disappear when deleting p are exactly the faces in starK(p). Summing over p and double-counting by dimension, we see that

pP|starK(p)|=k=0d1(k+1)fk(P)=Od(k=0d1fk(P))=Od(nm).

Now, we bound the number of appearing faces. Let RK(p) denote the set of ridges in the link of p, i.e., (d2)-faces of linkK(p). Because K is a polytopal (d1)-sphere, every ridge σ of K is contained in exactly two facets of K. If σlinkK(p), then one of those two facets is {p}σ (which lies in starK(p)) and the other facet, call it σout, is disjoint from p. Deleting starK(p) turns its interior into a “hole” whose boundary is precisely linkK(p). New facets can only appear in this hole. Moreover, because K:=conv(Pp) must be a (d1)-sphere again, each ridge can be associated to only one new facet. Note that one new facet could (and usually will) be associated to multiple ridges. It follows that the number of new facets can be bounded by |RK(p)|. Because P is in general position, each new facet is a (d1)-simplex, so the total number of the faces contained in it is

sd:=j=0d1(dj+1)=2d1.

Hence, the total number of new faces of all dimensions is at most sd|RK(p)|. Summing over p and using the fact that every ridge is contained in exactly two facets (hence in the links of exactly the two vertices that complete the ridge to those facets) we obtain

pPsd|RK(p)|=2sdfd2(P)=Od(nm).

Because the total number of disappearing faces and appearing faces is Od(nm), we conclude that the average sensitivity is Od(nm1).

Let us now turn to the lower bound. Let P be the vertex set of a neighborly (e.g., cyclic) d-polytope with n vertices. Such polytopes are simplicial and satisfy fd1(P)=Θd(nm) by the Upper Bound Theorem. For any vertex pP, all facets of conv(P) that contain p must disappear after deleting p. Summing over p and dividing by n, we see that the average sensitivity is at least

1npP#{facets containing p}=dfd1(P)n=Θd(nm1),

where the first equality follows from the fact that every facet has exactly d vertices.

This proves the matching Ωd(nm1) lower bound, and finishes the proof.

 Remark 4.

We remark that the worst-case sensitivity, i.e., the maximum size of the symmetric difference of 𝒜(P) and 𝒜(Pp) over p can be Ω(n), even when P is in 2. Specifically, deleting the rightmost vertex in Figure 1 causes all n3 interior vertices to become extremal points. This leads to n2 vertex changes and n edge changes.

Figure 1: Assume that the number of interior vertices is n3. Deleting the rightmost vertex causes n2 vertex changes and n edges changes.

2.2 Delaunay Triangulation

Next, we consider the planar Delaunay triangulation problem. Let P be a set of points in d. A triangulation of P is a subdivision of the convex hull of P into simplices with the points of P as its vertices. A triangulation is called a Delaunay triangulation if the circumscribed ball of every simplex does not contain any points of P in its interior [2, Chapter 9]. The average sensitivity of an algorithm for the Delaunay triangulation problem is defined by taking as input a point set P in d and as output the set of edges in the Delaunay triangulation. Again, we assume the input point set to be in general position.

Theorem 5.

The average sensitivity of any algorithm that computes the Delaunay triangulation of a point set in d in general position is Θd(nm1), where m=(d+1)/2.

Proof.

Recall that the problem of computing the Delaunay triangulation of a point set P in d can be converted to the problem of computing the convex hull of a set of points in d+1 [2, Chapter 11]. More precisely, by lifting each point (x1,,xd)P to the point (x1,,xd,x12++xd2) on the paraboloid xd+1=x12++xd2 in d+1, computing the convex hull of the resulting point set and projecting the lower convex hull back to d, one obtains the Delaunay triangulation of P. As the average sensitivity of any algorithm that computes the convex hull in d+1 is Θd(n(d+1)/21) by Theorem 3, it follows directly that the average sensitivity of any algorithm that computes the Delaunay triangulation in d is Θd(n(d+1)/21) as well.

2.3 Voronoi Diagram

Delaunay triangulations are closely related to Voronoi diagrams [2, Chapter 7]. Given a set P of points in d, the Voronoi cell of pP is the set of points in d for which p is the closest point of P. The Voronoi diagram of P is the set of Voronoi cells for each of its points. It is well known that a Voronoi diagram is dual to the Delaunay triangulation of the same point set: vertices of the Delaunay triangulation correspond to cells in the Voronoi diagram and there is a Delaunay edge between two vertices if and only if the corresponding Voronoi cells are adjacent. The average sensitivity of an algorithm for the Voronoi diagram problem is defined by taking the set P in d as input and the set of Voronoi edges as output.

Duality between Delaunay triangulations and Voronoi diagrams allows us to conclude immediately that:

Corollary 6.

The average sensitivity of any algorithm that computes the Voronoi diagram of a point set in d in general position is Θd(nm1), where m=(d+1)/2.

3 Art Gallery Problem

In this section, we consider the art gallery problem [14, 2]. Defining the average sensitivity for the art gallery problem requires some technical care, which we defer to Section 3.1. The goal of this section is to show Theorem 2, which we restate for convenience:

Theorem 7.

For any ε>0, there exists an algorithm for the art gallery problem that, given a polygon P of n vertices, computes the allocation of at most (1/3+ε)n guards that cover P with average sensitivity poly(ε1).

A standard algorithm for the art gallery problem that finds n/3 guards covering the entire polygon is as follows: first, triangulate the polygon using one of many known algorithms [3, 4, 17]. This gives a 3-colorable triangulated planar graph. Second, color the vertices of the triangulation with three colors [7]. Finally, take as set of guards all vertices of the color that occurs least. Since all triangles have exactly one vertex of the chosen color, the entire polygon is guarded.

In Section 3.2, we show that a standard triangulation algorithm has a low average sensitivity. Then in Section 3.3, we design an algorithm with low average sensitivity that finds a set of guards of size (1/3+ε)n. To compute the set of guards, we first partition the triangulated graph into constant-sized parts by deleting a small fraction of edges. This can be done by applying an algorithm converted from a local computation algorithm (LCA) for the partition problem [6, 16] using the general transformation given in [18]. Then, we compute a 3-coloring for each part using an arbitrary deterministic algorithm. With a special care of the vertices incident to the deleted edges, we can compute a set of guards of size (1/3+ε)n from the 3-coloring.

In this section, we will use bold symbols to denote random variables. Also for a positive integer n, let [n] denote the set {1,2,,n}.

3.1 Average Sensitivity

In this section, we formally define the average sensitivity for the art gallery problem.

Usually, a polygon P is defined as a collection of n vertices v1,,vn and n edges v1v2,,vnv1 such that no pair of non-consecutive edges intersect. Here, however, we define a polygon as the closed finite region of the plane bounded by these vertices and edges, following [2, Chapter 3]. We say that a point pP sees or covers or guards a point yP if the line segment xy is completely contained in P. The art gallery problem is to determine the minimum number of “guards” that cover P entirely. In other words, we want to find a set S of points in P of minimum size such that any point in P is covered by at least one point of S.

The average sensitivity of an algorithm for the art gallery problem is defined by taking the polygon P as input and the set of guards as output. In this case, we have to be careful for two reasons. First, the polygon Pvi obtained after deleting vi from P should not be understood as the setwise deletion P{vi}, but as the polygon with vertices v1,,vi1,vi+1,,vn and edges v1v2,,vi1vi+1,,vnv1. Second, P might contain some vertices that we cannot remove without introducing crossing edges (see Figure 2). This means that the collection of vertices and edges obtained after deleting such a vertex is no longer a polygon. Since it does not make sense to consider the art gallery problem on such collections of vertices and edges, we will only consider the removal of vertices for which the result is again a polygon. We call such vertices admissible. For all other vertices, we set the symmetric difference in Equation 1 or the earth mover’s distance in Equation 2 to be equal to zero.

Figure 2: Left: removing the bottommost vertex introduces the dashed edge. The resulting collection of edges and vertices is still a valid polygon. Right: removing the bottommost vertex introduces the dashed edge which crosses two of the existing edges. The resulting collection of vertices and edges is no longer a polygon.

3.2 Polygon Triangulation

To start our construction of a stable-on-average algorithm for the art gallery problem, we describe an algorithm for computing a triangulation of a polygon from the literature [2, Chapter 3]. This algorithm already has a low average sensitivity, as we will show in Lemma 8, so we can use it as it is.

Many algorithms for triangulating a polygon subdivide the polygon into pieces which can be triangulated more easily [2, 3, 4, 17]. Here, the easier to triangulate pieces are typically monotone. A polygon is called monotone with respect to a line if its intersection with any line orthogonal to is connected. In particular, a polygon is called y-monotone if it is monotone with respect to the y-axis (see Figure 3).

Figure 3: Left: a y-monotone polygon. Right: not a y-monotone polygon.

To triangulate a y-monotone polygon P, we consider the vertices in order of decreasing y-coordinate [2, Chapter 3.3]. We keep a stack S of vertices that have been encountered but may still need more diagonals, ordered from lowest y-coordinate (top of the stack) to highest (bottom of the stack). Every time we encounter a new vertex v, we add diagonals from v to elements in S, starting at the top of the stack and continuing until we can add no more. These diagonals split of triangles and we update S accordingly (see Figure 4). For further details, we refer to the literature [2, Chapter 3.3].

Figure 4: Triangulation of a y-monotone polygon, in which diagonals are shown dashed.

To subdivide a polygon into y-monotone pieces, we use a so-called trapezoidation of the polygon [3, 17]. Assume that our polygon P is embedded in 2, so that we can use intuitive notions like left, right, horizontal, vertical and so on. Starting from each vertex of P, we draw two horizontal rays, one towards the left and one towards the right, each extending until it hits an edge of P. If a ray never hits an edge of P we just extend it indefinitely. For a vertex v we call the union of these two horizontal rays the horizontal extension of v. The polygon P together with the union of the horizontal extensions of its vertices forms a plane graph, which we call the trapezoidation of P. All faces of the trapezoidation have two horizontal sides, so we can indeed call them trapezoids. From the trapezoidation we obtain a subdivision of the polygon into y-monotone pieces by removing all trapezoids that do not lie in the interior of the polygon and adding diagonals between any two vertices within a trapezoid that do not lie on the same side. We note that each of the y-monotone pieces resulting from this subdivision has a special form: its boundary consists of two y-monotone polygonal chains, one of which is a single edge.

Figure 5: Subdividing a polygon into y-monotone pieces: the horizontal extensions are indicated by dotted line segments, diagonals between vertices on different sides of a trapezoid are indicated by red, dashed line segments.
Lemma 8.

The average sensitivity of the above algorithm for computing a triangulation of a given polygon is O(1).

Proof.

Denote the above algorithm by 𝒜 and let P be a polygon. Consider any diagonal e in 𝒜(P). We will show that e is not a diagonal of 𝒜(Pv) for O(1) vertices v of P.

First, assume that e is contained in the interior of the monotone polygon M computed in the course of running 𝒜, i.e., it is not one of the diagonals that separates two monotone polygons. Deleting a vertex in PM does not affect M, so it does not affect e either. Therefore, we only need to consider deletion of the vertices of M. Denote the vertices of M by v1,,vk in order of decreasing y-coordinate and let e=(vi,vj) for some 1i<jk. We claim that e is a diagonal of 𝒜(Pv) for {1,i,j1,j,k}.

Consider any vertex vM. Clearly, deleting vi or vj makes it impossible for (vi,vj) to exist, so assume henceforth that {i,j}. We note that by the triangulation algorithm for monotone polygons, e is a diagonal of 𝒜(P) if and only if e is a valid diagonal of P, i.e., it does not cross any side of P, and vi is in the stack S(vj) when handling vj. This means that e is not a diagonal of 𝒜(Pv) if and only if e is not a valid diagonal of Pv or vi is not in the stack S(vj) when handling vj. Here, S(vj) denotes the stack when handling vj in the process of triangulating M, whereas S(vj) denotes the stack when handling vj in the process of triangulating the monotone polygon M containing vi and vj after deleting v.

  • Assume that e is not a valid diagonal of Pv, i.e., e crosses a side of Pv or is itself a side of Pv. Since e is a valid diagonal of P, clearly e is also a valid diagonal of Pv if PPv. Therefore, PvP. We observe that P(Pv) is a triangle (see Figure 6). The only possibly affected diagonal is (v1,v+1), which is a diagonal in P, but a side of Pv. Hence, in this case =j1.

    Figure 6: Deleting vertex v removes the two sides having v as an endpoint and introduces the dashed side (v1,v+1). It is assumed that the inside of P is to the left of the drawn sides. Left: PPv. Right: PvP.
  • Assume that vi is not in S(vj). Let vh be the element in S(vj) below vi, i.e., the element to which a diagonal is drawn after all diagonals to vi are drawn. The element vi is removed from the stack as soon as a diagonal is drawn to vh. The fact that vi is not in S(vj) implies that there exists vM which is handled before vj and from which there is a valid diagonal to vi and vh.

    It is straightforward to see that v is not some vertex of M, since otherwise vi would also have been removed from the stack before handling vj when triangulating M. Hence, v is a vertex in MM. When deleting v from M, only the sides (v1,v) and (v,v+1) (counting modulo k) are removed; the remaining sides of M are also sides of M. Therefore, MM only contains vertices with y-coordinate between the y-coordinates of v1 and v+1. It follows that =1 or =k or i<<j. Since the cases =1 and =k are already mentioned in the claim, we continue by assuming that i<<j.

    Since v is not contained inside M, the diagonal (v,vh) in M crosses some side of M, say (vm,vm+1) with imj1 (see Figure 7). This means that at least one of (vm,vh) and (vm+1,vh) is a valid diagonal of M. However, (vm,vh) is not a diagonal of M for imj1. Therefore, the only possibility is that (vm+1,vh) is a valid diagonal with m=j1, i.e., diagonal (v,vh) in M crosses side (vj1,vj) of M. Hence, (v,vh) is only a valid diagonal of M if side (vj1,vj) is removed, which happens exactly when =j1. Recall that we already treated the case =j at the start.

    Figure 7: Diagonal (v,vh) of M crossing a side (vm,vm+1) of M implies that one of (vm,vh) and (vm+1,vh) is a diagonal of M (in this case, (vm+1,vh) is a diagonal).

Second, assume that e is a diagonal that separates two monotone polygons, say M1 and M2. It can be shown by a similar reasoning as before that e𝒜(Pv) for only a constant number of vertices v in each of M1 and M2. Moreover, deletion of a vertex in P(M1M2) does not affect e. Hence, the total number of vertices v for which e𝒜(Pv) is O(1), which is what we wanted to prove.

3.3 Set of guards on 3-Colorable Triangulated Planar Graphs

Let G=(V,E) be the graph obtained by triangulating the input polygon, where V consists of the vertices and E consists of the edges in the triangulation. Note that G is a 3-colorable planar graph. Standard algorithms for finding a set of at most n/3 guards in G first compute a 3-coloring of G and then place guards on the vertices with the least occurring color [2, 7]. However, these algorithms do not have low average sensitivity, as the next example illustrates. We emphasize that throughout this example we assume that polygons are triangulated using the algorithm described in Section 3.2 and that a 3-coloring is computed using either of [2, 7]. Therefore, the lower bound for the average sensitivity might not necessarily hold when another triangulation algorithm is used, or, more generally, when a different algorithm for finding a set of at most n/3 guards in P is used (for example one that does not rely on computing triangulations).

Example 9.

Consider the parallelogram containing 3n vertices on each of its long sides as in Figure 8. The dashed lines indicate that the pattern of 3 vertices left and right repeats in the middle and the dotted lines represent diagonals of the triangulation. The letters R (red), B (blue) and G (green) indicate the 3-coloring of the triangulation. Deleting a vertex causes the triangulation to change, which also changes the (deterministic) 3-coloring of the vertices and the resulting set of guards. We will show that the average sensitivity of the guard set is Ω(n). First, observe that in the 3-coloring before deletion of a vertex the number of red, blue and green vertices is equal. Therefore, the algorithm could have chosen any of these sets as the set of guards:

  • Assume that P is guarded by the set of blue vertices. It is straightforward to show that deleting a green vertex v changes the color of all red vertices below v to green and vice versa (the blue vertices stay blue). Moreover, after deletion of v the set of green vertices becomes the smallest. As the set of guards changes from the set of blue vertices to the set of green vertices (which were originally red), the symmetric difference of the guard sets before and after deletion of v is proportional to the number of blue and red vertices below v in the original triangulation. Applying this argument to the deletion of any of the Ω(n) green vertices in the top half of the polygon leads to the desired Ω(n) bound for the average sensitivity.

  • If P is guarded by the set of red vertices, we can use the same argument, but now we consider the deletion of blue vertices.

  • If P is guarded by the set of green vertices, we can use the same argument. In this case, deleting vertices of any color works.

Hence, no matter which color was used for the set of initial guards, the average sensitivity is Ω(n), which is what we wanted to show.

Figure 8: Polygon with 6n vertices, for which the standard algorithms for finding a set of guards have a high average sensitivity.

Instead, we design in this section an algorithm for finding a set of guards in G of size arbitrarily close to n/3 that does have a low average sensitivity:

Lemma 10.

For any ε>0, there exists a polynomial-time algorithm that, given a 3-colorable triangulated planar graph, outputs a set of guards of size at most (1/3+ε)n with average sensitivity poly(ε1).

Then, we can prove our main theorem of this section:

Proof of Theorem 7.

The claim follows by combining Lemmas 8 and 10.

In Section 3.3.1, we show that we can find a partition of a planar graph into constant-sized parts with low average sensitivity using the connection between local computation algorithms (LCAs) [16] and average sensitivity [18]. Then in Section 3.3.2, we prove Lemma 10 using the partition algorithm.

3.3.1 Graph Partitioning

We first design a stable-on-average algorithm that partitions a bounded-degree planar graph into small subsets by deleting a small number of edges crossing different subsets. To this end, we use a black-box transformation from local computation algorithms (LCAs) to stable-on-average algorithms due to [18]. The goal of an LCA for a graph problem is to, given query access to the input graph G=(V,E), provide query access to a feasible solution for the problem. More formally, we assume that the input graph G=(V,E) on n vertices is represented as adjacency lists, and we can access it via neighbor queries, where each query is of the form (v,i) for vV and i[n] and the answer is the i-th neighbor of vertex v in its adjacency list (and a special symbol if i is larger than the degree of v). Then, an LCA is defined as follows:

Definition 11 (Local Computation Algorithm (LCA) [16]).

Consider a graph problem 𝒫, where the output to the problem is an integer labeling on vertices. Let δ:[0,1] and q,r:. A (q,r,δ)-LCA for 𝒫 is an algorithm that, given query access to a graph G=(V,E) on n vertices, first generates a random string 𝛑{0,1}r(n), and satisfies:

  • given an input vV, the algorithm makes queries to G and answers the label of v, and

  • the answers of to all possible input vertices are consistent with a single feasible labeling to 𝒫 on G.

For every graph G, the probability (over the choice of random string) that there exists an input vertex for which makes more than q(n) queries is at most δ(n).

For two integer labelings f,f~:V, we define their distance as

d(f,f~):=#{vV:f(v)f~(v)}.

Then, we can naturally define the average sensitivity of an algorithm that outputs an integer labeling using this distance. It is known that we can obtain a stable-on-average algorithm from an LCA as follows:

Lemma 12 ([18]).

Consider a graph problem 𝒫, where the output to the problem is an integer labeling on vertices.111Originally, this result was shown for graph problems where the output is a vertex set or an edge set. However, the proof can be easily generalized to our setting. Let δ:[0,1] and q,r:. If 𝒫 has a (q,r,δ)-LCA , then there exists an algorithm 𝒜 for 𝒫, that on input G=(V,E) on n vertices, has an average sensitivity of at most q(n)+nδ(n).

To obtain a stable-on-average algorithm for graph partitioning, we will instantiate Lemma 12 with an LCA for graph partitioning, which is known as a partition oracle in the property testing literature. We first note that an integer labeling f:V can be seen as a partition {f1(i)}i. Then, a partition oracle is defined as follows:

Definition 13 (Partition oracle [6]).

Let 𝒢 be a family of graphs with degree bound d and let T:(0,1) be a function. An LCA is called an (ε,T(ε))-partition oracle for 𝒢 if it satisfies the following properties. Let 𝐟:V be the output integer labeling of . Note that 𝐟 is a random variable.

  • (Consistency) For each i, 𝒇1(i) is empty or an induced connected subgraph, and the subsets {𝒇1(i)}i form a partition of V.

  • (Cut bound) With probability at least 2/3 (over the internal randomness 𝝅 of ), the number of edges between different sets in {𝒇1(i)}i is at most εdn.

  • (Running time) For every vV, (v) runs in time T(ε).

Note that the running time T(ε) is clearly an upper bound on the size of the set 𝒇1(i) for any i.

Lemma 14 ([11]).

Let d1 be an integer and let 𝒢 be the set of planar graphs with maximum degree at most d.222Indeed, the claim holds for any minor-closed family of graphs. Then, there is an (ε,poly(ε1d))-partition oracle for 𝒫.

Combining Lemmas 12 and 14, we obtain the following:

Corollary 15.

Let ε>0. There exists a randomized polynomial-time algorithm that, given a planar graph G=(V,E) of maximum degree at most d, outputs a function 𝐟:V with the following properties.

  • (Consistency) For each i, 𝒇1(i) is empty or an induced connected subgraph, and the subsets {𝒇1(i)}i form a partition of V.

  • (Size bound) For each i, we have |f1(i)|=O(poly(ε1d)).

  • (Cut bound) With probability at least 2/3 (over the internal randomness 𝝅 of ), the number of edges between different sets in {𝒇1(i)}i is at most εdn.

  • The average sensitivity of is O(poly(ε1d)).

3.3.2 Algorithm

We describe our algorithm for computing a set of guards on a 3-colorable planar graph. We first remove high-degree vertices from the input graph G and let G be the resulting graph. We add all the removed vertices to the output set 𝑺 of guards. Then, we apply Corollary 15 to G~ and let 𝒇:V be the obtained integer labeling, which we regard as a partition of V. For notational convenience, let 𝒫𝒇=(𝑽1,,𝑽𝒌) be the partition induced by 𝒇. We note that each 𝑽i is 3-colorable and triangulated. Let 𝑭 be the set of edges connecting different parts in 𝒫𝒇. Then, we add V(𝑭), i.e., the set of endpoints of edges in 𝑭 to 𝑺. Then for each i[𝒌], we compute an arbitrary 3-coloring 𝝋i:𝑽i{1,2,3} of the subgraph induced by 𝑽i using a deterministic algorithm. Let 𝒄i=argminc=1,2,3|𝝋i1(c)| be the color that occurs least, and then add 𝑺i:=𝝋i1(𝒄i) to the 𝑺. The details are given in Algorithm 1.

Algorithm 1 Algorithm for computing a set of guards on a 3-colorable planar graph.

First, we show that the output is a valid set of guards and analyze its size.

Lemma 16.

Algorithm 1 returns a set of guards of size (1/3+ε)n with probability at least 2/3.

Proof.

We first show that the output vertex set 𝑺 is a valid set of guards by showing that every triangle in G has at least one vertex in 𝑺. Consider a triangle uvw in G, where u,v,wV.

  • If one of u,v,w is in H, then clearly at least one of them is in 𝑺, because H𝑺.

  • Else if two of them, say, u and v, belong to different parts in 𝒫𝒇, then u,v𝑺, because (u,v)𝑭 and V(𝑭)𝑺.

  • Else, i.e., all of them belong to the same part, say, 𝑽i, then the color class ϕi1(ci) must include one of them, and hence one of them is contained in 𝑺.

Next, we analyze the size of 𝑺. Note that G is planar, and hence the average degree is at most 6. Hence, by Markov’s inequality, the number of vertices with degree more than d=100ε1 is at most 6n/d=6/100εnεn/10. Hence, we have |H|εn/10.

Note that G has maximum degree d. Hence by Corollary 15, with probability at least 2/3, we have |𝑭|εPOdn=εn/10. Hence, we have V(𝑭)εn/5 with probability at least 2/3.

Also each 𝑺i has size at most |𝑽i|/3. Then by a union bound, we have

|𝑺||H|+|𝑭|+i[𝒌]|𝑺i|εn10+εn5+i[𝒌]|𝑽i|3
εn10+εn5+n3(13+ε)n.

To analyze the average sensitivity of the output set, it is convenient to define a distance notion for partitions. For two partitions 𝒫={S1,,Sk} and 𝒫~={S~1,,S~k~} with kk~, we define the distance between them as

d(𝒫,𝒫~):=minπi=1k𝟏[SiS~i](|Si|+|S~i|)+i=k+1k~|S~i|,

where the minimum is over all bijections π:[k][k]. Intuitively speaking, if a part in 𝒫 does not exist in 𝒫~, then it contributes to the distance by its size. When k>k~, we define d(𝒫,𝒫~):=d(𝒫~,𝒫). Then, we can naturally define the earth mover’s distance EMD(𝓟,𝓟~) between random partitions 𝓟 and 𝓟~. For two functions f,f~:V, it is easy to observe that

d(𝒫f,𝒫f~)d(f,f~)maxi{|f1(i)|+|f~1(i)|} (3)

because each vV with f(v)f~(v) contributes to the LHS by |f1(v)|+|f~1(v)|. A similar inequality holds for the earth mover’s distance.

Lemma 17.

The average sensitivity of Algorithm 1 is poly(ε1).

Proof.

Let G=(V,E) be a graph, and let G(e)=(V,Ee) for eE. We use the superscript (e) to denote the variables when Algorithm 1 is applied to to G(e).

We first note that |HH(e)|1. Also, G and (G)(e) differ by at most one vertex of degree d, which implies they differ by at most d edges. By the average sensitivity bound of Lemma 14, we have

1meEEMD(𝒇,𝒇(e))poly(εPO1d)d=poly(ε1).

This implies that

1meEEMD(V(𝑭),V(𝑭(e)))=poly(ε1)d=poly(ε1).

Next, the average sensitivity of the set i=1k𝑺i is bounded as

1meEEMD(i=1𝒌𝑺i,i=1𝒌(e)𝑺i(e))1meEEMD(𝒫𝒇,𝒫𝒇(e))
1meEEMD(𝒇,𝒇(e))maxi{|𝒇1(i)|+|(𝒇(e))1(i)|} (by (3))
1meEEMD(𝒇,𝒇(e))poly(ε1d) (by the size bound of Corollary 15)
=poly(ε1d)poly(ε1d) (by the average sensitivity bound of Corollary 15)
=poly(ε1).

Recalling that 𝑺=HV(𝑭)i=1k𝑺i, we conclude that

1meEEMD(𝑺,𝑺(e))=poly(ε1).

4 Future work

As, to our knowledge, this is the first work to explore average sensitivity in a geometric setting, there remain many possible directions for future research. First, one could look at other classical geometric problems, such as computing the Fréchet distance of two polygonal curves or computing the minimum enclosing disk of a point set. In both cases, it is not directly clear how the average sensitivity should be defined, as the output is a real number (the Fréchet distance) or a point (the center of the minimum enclosing disk). For the Fréchet distance, one could instead output the matching between the vertices of the two curves and define the average sensitivity via a suitable distance on matchings. For the minimum enclosing disk, it might be possible to use the recent framework of Lipschitz continuity of algorithms [10] to quantify how much a solution is affected by deleting a part of the input.

Moreover, average sensitivity could be studied for geometric search structures, such as range trees or quadtrees. Although it is not obvious how to define average sensitivity, it seems natural to use the tree-edit distance for tree-based data structures.

Finally, the concept of average sensitivity could possibly be applied to motion planning. For example, in robot reconfiguration it is assumed that the location and movement of all individual robots is known, which is not always true in practice. To account for displaced or broken robots, it might be useful to apply an algorithm with low average sensitivity.

References

  • [1] Vasek Chvátal. A combinatorial theorem in plane geometry. Journal of Combinatorial Theory, Series B, 18(1):39–41, 1975.
  • [2] Mark De Berg, Mark Van Kreveld, Mark Overmars, and Otfried Schwarzkopf. Computational geometry: algorithms and applications. Springer Science & Business Media, 2000.
  • [3] Alain Fournier and Delfin Y Montuno. Triangulating simple polygons and equivalent problems. ACM Transactions on Graphics, 3(2):153–174, 1984. doi:10.1145/357337.357341.
  • [4] Michael R Garey, David S Johnson, Franco P Preparata, and Robert E Tarjan. Triangulating a simple polygon. Information Processing Letters, 7(4):175–179, 1978. doi:10.1016/0020-0190(78)90062-5.
  • [5] Satoshi Hara and Yuichi Yoshida. Average sensitivity of decision tree learning. In Proceedings of the 11th International Conference on Learning Representations (ICLR), 2023.
  • [6] Avinatan Hassidim, Jonathan A Kelner, Huy N Nguyen, and Krzysztof Onak. Local graph partitions for approximation and testing. In Proceedings of the 50th Annual IEEE Symposium on Foundations of Computer Science (FOCS), pages 22–31, 2009. doi:10.1109/FOCS.2009.77.
  • [7] Ali A Kooshesh and Bernard ME Moret. Three-coloring the vertices of a triangulated simple polygon. Pattern Recognit., 25(4):443, 1992. doi:10.1016/0031-3203(92)90093-X.
  • [8] Soh Kumabe and Yuichi Yoshida. Average sensitivity of dynamic programming. In Proceedings of the 2022 Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pages 1925–1961, 2022. doi:10.1137/1.9781611977073.77.
  • [9] Soh Kumabe and Yuichi Yoshida. Average sensitivity of the knapsack problem. In 30th Annual European Symposium on Algorithms (ESA), pages 75:1–75:14, 2022. doi:10.4230/LIPIcs.ESA.2022.75.
  • [10] Soh Kumabe and Yuichi Yoshida. Lipschitz continuous algorithms for graph problems. In 2023 IEEE 64th Annual Symposium on Foundations of Computer Science (FOCS), pages 762–797. IEEE, 2023. doi:10.1109/FOCS57990.2023.00051.
  • [11] Akash Kumar, C Seshadhri, and Andrew Stolman. Random walks and forbidden minors III: poly(dε1)-time partition oracles for minor-free graph classes. In Proceedings of the IEEE 62nd Annual Symposium on Foundations of Computer Science (FOCS), pages 257–268, 2022.
  • [12] Peter McMullen. On the upper-bound conjecture for convex polytopes. Journal of Combinatorial Theory, Series B, 10(3):187–200, 1971.
  • [13] Shogo Murai and Yuichi Yoshida. Sensitivity analysis of centralities on unweighted networks. In The World Wide Web conference (WWW), pages 1332–1342, 2019. doi:10.1145/3308558.3313422.
  • [14] Joseph O’Rourke. Art gallery theorems and algorithms, volume 57. Oxford University Press Oxford, 1987.
  • [15] Pan Peng and Yuichi Yoshida. Average sensitivity of spectral clustering. In Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (KDD), pages 1132–1140, 2020. doi:10.1145/3394486.3403166.
  • [16] Ronitt Rubinfeld, Gil Tamir, Shai Vardi, and Ning Xie. Fast local computation algorithms. In Proceedings of the 1st Symposium on Innovations in Computer Science (ICS), pages 223–238, 2011. URL: http://conference.iiis.tsinghua.edu.cn/ICS2011/content/papers/36.html.
  • [17] Raimund Seidel. A simple and fast incremental randomized algorithm for computing trapezoidal decompositions and for triangulating polygons. Computational Geometry, 1(1):51–64, 1991. doi:10.1016/0925-7721(91)90012-4.
  • [18] Nithin Varma and Yuichi Yoshida. Average sensitivity of graph algorithms. SIAM Journal on Computing, 52(4):1039–1081, 2023. doi:10.1137/21M1399592.
  • [19] Yuichi Yoshida and Shinji Ito. Average sensitivity of Euclidean k-clustering. Advances in Neural Information Processing Systems (NeurIPS), 35:32487–32498, 2022.