This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

\publyear

24 \papernumber2102 \versionForARXIV

Maximum Centre-Disjoint Mergeable Disks

Ali Gholami Rudi
Department of Electrical and Computer Engineering
Babol Noshirvani University of Technology
Babol
Address for correspondence: Department of Electrical and Computer Engineering, Babol Noshirvani University of Technology, Babol, Mazandaran, Iran.

Received January 2023;  accepted July 2024.
   Mazandaran    Iran
[email protected]
Abstract

Given a set of disks in the plane, the goal of the problem studied in this paper is to choose a subset of these disks such that none of its members contains the centre of any other. Each disk not in this subset must be merged with one of its nearby disks that is, increasing the latter’s radius. This problem has applications in labelling rotating maps and in visualizing the distribution of entities in static maps. We prove that this problem is NP-hard. We also present an ILP formulation for this problem, and a polynomial-time algorithm for the special case in which the centres of all disks are on a line.

keywords:
Merging disks, map labelling, rotating maps,NP-hardness, geometric independent set
volume: 193issue: 1

Maximum Centre-Disjoint Mergeable Disks

1 Introduction

A motivating example for the problem studied in this paper is the following about drawing text labels on a digital map that can be rotated: suppose there are a number of points on the map that represent map features. To each of these feature points a text label is assigned that describes the feature, like the name of a junction. When the map is rotated by the user, these labels must remain horizontal for the sake of readability, and therefore, they are rotated in the  reverse direction around their feature

point (see the first two parts of Figure 1). Labels are difficult to read if they overlap, and therefore, only a non-overlapping subset of the labels are drawn on the map. If a label cannot be drawn because it overlaps with other labels, the text of its label must be appended to a nearby label that is drawn. The goal is to draw the maximum number of labels on the map such that none of them overlap when rotating the map. This is demonstrated in Figure 1. Part (a) shows four feature points and their labels. Part (b) shows the map when it is rotated 45 degrees counterclockwise; instead of rotating the map, the labels are equivalently rotated 45 degrees clockwise. Obviously the two labels on the left side of the map overlap, making the map of Part (a) infeasible. Part (c) shows what happens when these labels are merged. The remaining three labels never overlap when the map is rotated.

Refer to caption
Figure 1: An example rotating map with 4 labels. (a) The initial configuration in which two of the labels overlap during rotation (the circles show the area covered by the labels during rotation). (b) After rotating the map 45 degrees counterclockwise. (c) Two of the labels are merged so that none of the label overlap during rotation.

Placing as many labels as possible on a map (known as map labelling) is a classical optimization problem in cartography and graph drawing [1]. For static maps, i.e. maps whose contents does not change, the problem of placing labels on a map can be stated as an instance of geometric independent set problem (also known as packing for fixed geometric objects): given a set of geometric objects, the goal is to find its largest non-intersecting subset. In the weighted version, each object also has a weight and the goal is to find a non-intersecting subset of the maximum possible weight.

A geometric intersection graph, with a vertex for each object and an edge between intersecting objects, converts this geometric problem to the classical maximum independent set for graphs, which is NP-hard and difficult to approximate even within a factor of n1ϵn^{1-\epsilon}, where nn is the number of vertices and ϵ\epsilon is any non-zero positive constant [2]. Although the geometric version remains NP-hard even for unit disks [3], it is easier to approximate, and several polynomial-time approximation schemes (PTAS) have been presented for this problem [4, 5, 6, 7, 8].

Dynamic maps allow zooming, panning, or rotation, and labelling in such maps seems more challenging. Most work on labelling dynamic maps consider zooming and panning operations [9]. Gemsa et al. [10] were the first to formally study labelling rotating maps. With the goal of maximising the total duration in which labels are visible without intersecting other labels, they proved the problem to be NP-hard and presented a 1/41/4-approximation algorithm and a PTAS, with the presence of restrictions on the distribution of labels on the map. Heuristic algorithms and Integer Linear Programming (ILP) formulations have also been presented for this problem [11, 12]. Note that in these problems, invisible labels do not get merged with visible labels. Yokosuka and Imai [13] examined a variant of this problem, in which all of the labels are always present in the solution and the goal is to maximise their size.

A related problem is crushing disks [14], in which a set of prioritized disks are given as input, whose radii grow over time, as map labels do when zooming in. When two disks touch, the one with the lower priority disappears. The radii of the disks grow linearly, and when a disk disappears, the radius of the other disk does not change. The goal is to find the order in which disks disappear and the process finishes when only one disk remains.

In this paper, we investigate a problem similar to geometric independent set for a set of disks, except that i) the disks in the output must be centre-disjoint (none of them can contain the centre of another) but they may overlap, ii) each disk that does not appear in the output must be merged with a disk, containing its centre, that does. When a disk is merged with another, the radius of the latter is increased by the radius of the former. Also to preserve the locality of the merges, a disk AA can be merged with another disk BB, only if all disks closer to BB than AA (considering the distance between disk centres) are also merged with BB, and after merging these closer disks, BB must contain the centre of AA. This problem is formally defined in Section 2. We prove this problem to be NP-hard via a reduction from Planar Monotone 3-SAT [15]. Note that even without this restriction on merge order, the problem remains NP-hard; we have presented a PTAS in an earlier paper [16] for the case in which this restriction on merge order is not assumed.

To observe how the introductory example at the beginning of this section reduces to this problem, consider the disks in Figure 1 (a). The disk centred at each feature point shows the region covered by its label during rotation. Only if a disk contains the centre of another, their corresponding labels intersect at some point during rotation. As another application of this problem, centre-disjoint disks can show the distribution of facilities in an area. For instance, Figure 2 shows the distribution of schools in Munich. It was obtained by placing a disk of radius 50 meters on each school (the coordinates of schools were obtained from OpenStreetMap data). Then, an ILP (Section 4.1) was used to obtain the maximum number of centre-disjoint disks in our problem

Refer to caption
Figure 2: The distribution of schools in Munich; disks corresponding to neighbouring schools were merged using the ILP of Section 4.1 to obtain larger, centre-disjoint disks.

Note that the centre-disjointness property of disks, which we assume for the output of our problem, is also used in the definition of transmission graphs of a set of disks, in which a vertex is assigned to each disk and a directed edge from a disk to another shows that the former contains the centre of the latter [17]. These graphs have been studied, for instance, for computing their spanners (a subgraph to estimate the distance between pairs of vertices) [18], counting their number of triangles and computing their girth [17], and their recognition [19]. Transmission graphs show the static relation between input disks and do not directly help us in our problem, in which the goal is to find a set of radius-changing disk merges, which makes them centre-disjoint.

To obtain an efficient algorithm for the problem, we also examine a more restricted version, in which the centres of input disks are on a line (Section 4). For this version, we present a polynomial-time algorithm that incrementally obtains a set of centre-disjoint disks with the maximum size. Note that the assumption of collinear inputs have been applied to many other challenging problems, such as [20].

This paper is organised as follows. In Section 2 we introduce the notation used in this paper and formally state the problem. Then, in Section 3 we show that the problem studied in this paper is NP-hard. In Section 4, we present algorithms for solving this problem: we present an ILP formulation for solving the general case of the problem, and a polynomial-time dynamic programming algorithm for the case in which all disk centres are on a line. Finally, in Section 5 we conclude this paper.

2 Notation and preliminary results

Let D={d1,d2,,dn}D=\{d_{1},d_{2},\dots,d_{n}\} be a set of nn disks. The radius of did_{i} is denoted as rir_{i}, and its centre is denoted as pip_{i}.

Definition 2.1

A function ϕ\phi from DD to itself is an assignment, if ϕ(ϕ(di))\phi(\phi(d_{i})) is ϕ(di)\phi(d_{i}) for every did_{i} in DD. According to an assignment ϕ\phi, the disks in DD can be either selected or merged: if ϕ(di)\phi(d_{i}) is did_{i}, the disk did_{i} is selected, and otherwise, it is merged. The cardinality of an assignment, denoted as |ϕ|\left|\phi\right|, is the number of selected disks in ϕ\phi.

The relation defined by assignments (Definition 2.1) describes disk merges in our problem. For any disk did_{i}, if we have ϕ(di)=dj\phi(d_{i})=d_{j} and iji\neq j, it implies that did_{i} is merged with djd_{j}. On the other hand, the relation ϕ(di)=di\phi(d_{i})=d_{i} implies that did_{i} is a selected disk and is not merged with any other disk. Since a disk can be merged with selected disks only, for any disk did_{i}, we have ϕ(ϕ(di))=ϕ(di)\phi(\phi(d_{i}))=\phi(d_{i}).

Definition 2.2

The aggregate radius of a selected disk did_{i} with respect to an assignment ϕ\phi, denoted with some misuse of notation as ri(ϕ)r_{i}(\phi), is the sum of its radius and that of every disk merged with it, or equivalently,

ri(ϕ)=j:ϕ(dj)=dirj.r_{i}(\phi)=\sum_{j:~{}\phi(d_{j})=d_{i}}r_{j}.

Let δi\delta_{i} be the sequence of disks in D{di}D\setminus\{d_{i}\}, ordered increasingly by the distance of their centres from the centre of did_{i}, and let δi(j)\delta_{i}(j) denote its jj-th disk. The jj-th aggregate radius of did_{i}, denoted as ri(j)r_{i}(j), is defined as its aggregate radius if {δi(1),δi(2),,δi(j)}\{\delta_{i}(1),\delta_{i}(2),\dots,\delta_{i}(j)\} are merged with did_{i}.

We now define proper assignments (Definition 2.3). In the rest of this paper, the distance between two disks is defined as the Euclidean distance between their centres.

Definition 2.3

An assignment ϕ\phi is proper if it meets the following conditions.

  1. 1.

    The disk δi(j)\delta_{i}(j) can be merged with did_{i}, only if δi(k)\delta_{i}(k), for every kk where 1k<j1\leq k<j, are also merged with did_{i}. In other words, all disks closer to did_{i} than δi(j)\delta_{i}(j) are also merged with did_{i}.

  2. 2.

    The disk δi(j)\delta_{i}(j) can be merged with did_{i}, only if the distance between the centre of did_{i} and δi(j)\delta_{i}(j) is less than ri(j1)r_{i}(j-1). In other words, after merging δi(k)\delta_{i}(k) for 1k<j1\leq k<j, did_{i} must contain the centre of δi(j)\delta_{i}(j).

  3. 3.

    Selected disks must be centre-disjoint with respect to their aggregate radii; i.e. none of them can contain the centre of any other selected disk. More precisely, for indices ii and jj such that iji\neq j, ϕ(di)=di\phi(d_{i})=d_{i}, and ϕ(dj)=dj\phi(d_{j})=d_{j}, we have |pipj|max(ri(ϕ),rj(ϕ))\left|p_{i}p_{j}\right|\geq\max(r_{i}(\phi),r_{j}(\phi)).

Note the first two items in Definition 2.3 ensure the locality of the merges, which is especially important in the labelling application mentioned in the Introduction.

Definition 2.4

Given a set of disks, in the Maximum Centre-Disjoint Mergeable Disks Problem (MCMD), the goal is to find a proper assignment of the maximum possible cardinality.

Refer to caption
Figure 3: An example set of disks with two proper assignments: Either all disks are merged with d1d_{1}, which gives a proper assignment of cardinality 1, or just d3d_{3} is merged with d2d_{2}, which gives a proper assignment of cardinality 4. The latter is a solution to MCMD, because it has the maximum cardinality.

Figure 3 shows a configuration of five disks with more than one proper assignment. Disk d3d_{3} can be merged with d1d_{1}, after which, d1d_{1} would contain the centre of d4d_{4} and d5d_{5}, both of which then have to be merged with d1d_{1}. These merges result in d1d_{1} containing the centre of d2d_{2}, which would also be merged. Therefore, in this assignment ϕ1\phi_{1}, we have ϕ1(di)=d1\phi_{1}(d_{i})=d_{1}, for 1i51\leq i\leq 5, and its cardinality is one. Alternatively, in assignment ϕ2\phi_{2} we can merge d3d_{3} with d2d_{2}, as the latter contains the centre of the former. The remaining disks are centre-disjoint. Therefore, we have ϕ2(d1)=d1\phi_{2}(d_{1})=d_{1}, ϕ2(d2)=d2\phi_{2}(d_{2})=d_{2}, ϕ2(d3)=d2\phi_{2}(d_{3})=d_{2}, ϕ2(d4)=d4\phi_{2}(d_{4})=d_{4}, ϕ2(d5)=d5\phi_{2}(d_{5})=d_{5}, and its cardinality is four. Assignment ϕ2\phi_{2} maximises the number of selected disks, and is a solution to MCMD for the configuration of disks in Figure 3.

Not every set of disks has a proper assignment. Figure 4 shows an example. Disk d3d_{3} can be merged with either d1d_{1} or d2d_{2}. If d3d_{3} is merged with d1d_{1}, d5d_{5} cannot be merged with d2d_{2}, because of the second condition of proper assignments: d5d_{5} can be merged with d2d_{2}, only if all closer disks to d2d_{2} are merged with it (but d3d_{3} which is closer to d2d_{2} than d5d_{5} is not). Therefore, d5d_{5} can be neither merged, nor selected (because its centre is contained in d2d_{2}). Similarly, if d3d_{3} is merged with d2d_{2}, d4d_{4} can neither be merged nor selected. Thus, there exists no proper assignment for these set of disks. In Section 3.2 we introduce a variant of MCMD by relaxing the second condition of Definition 2.3, in which every instance has a solution.

Refer to caption
Figure 4: An example set of disks with no proper assignment. Either d3d_{3} and d4d_{4} are merged with d1d_{1}, after which d5d_{5} cannot be merged with d2d_{2} (but must be), or d3d_{3} and d5d_{5} are merged with d2d_{2}, after which d4d_{4} cannot be merged with d1d_{1} (but must be).

3 Hardness of maximum centre-disjoint mergeable disks

Instead of proving that the decision version of MCMD (Definition 3.1) is NP-complete, we show that even deciding whether a set of disks has a proper assignment (Definition 3.2) is NP-complete (clearly the latter implies the former). To do so, we perform a reduction from the NP-complete Planar Monotone 3-SAT (Definition 3.3) [21] to Proper MCMD (Definition 3.2).

3.1 Hardness of MCMD

Definition 3.1

In the kk-MCMD problem, we are given a set of disks and we have to decide if there exists a proper assignment of cardinality at least kk or not.

Definition 3.2

In the Proper MCMD problem, we are given a set of disks and we have to decide if there exists a proper assignment.

Definition 3.3

Monotone 3-SAT is a variant of 3-SAT, in which all variables of each clause are either positive or negative. An instance of Monotone 3-SAT is called Planar, if it can be modeled as a planar bipartite graph with parts VV corresponding to variables and CC corresponding to clauses; each vertex in CC is incident to at most three variables, which correspond to the variables that appear in the clause.

Refer to caption
Figure 5: A monotone rectilinear representation of a Planar Monotone 3-SAT instance with three clauses and four variables. Horizontal segments on the xx-axis denote the variables, and horizontal segments above and below the xx-axis denote positive and negative clauses, respectively: c1=v1v2v3c_{1}=v_{1}\lor v_{2}\lor v_{3}, c2=v1v3v4c_{2}=v_{1}\lor v_{3}\lor v_{4}, c3=¬v1¬v2¬v4c_{3}=\neg v_{1}\lor\neg v_{2}\lor\neg v_{4}.

Deciding if an instance of Planar Monotone 3-SAT is satisfiable is NP-complete [15]. It can be proved that every instance of Planar Monotone 3-SAT has a monotone rectilinear representation (Definition 3.4; an example is shown in Figure 5), and also, if for every instance of Planar Monotone 3-SAT its monotone rectilinear representation is also given, the problem remains NP-Complete [15].

Definition 3.4

A monotone rectilinear representation of an instance of Planar Monotone 3-SAT is a drawing of the instance with the following properties: i) Variable are drawn as disjoint horizontal segments on the xx-axis, ii) positive clauses are drawn as horizontal segments above the xx-axis, iii) negative clauses are drawn as horizontal segments below the xx-axis, iv) an edge is drawn as a vertical segment between a clause segment and the segments corresponding to its variable, and v) the drawing is crossing-free.

Figure 5 shows a monotone rectilinear representation of an instance of Planar Monotone 3-SAT with three clauses. Lemma 3.5 shows how to map a Planar Monotone 3-SAT to a two-dimensional integer grid (its proof is presented at the end of this section).

Lemma 3.5

For an instance of Planar Monotone 3-SAT with vv variables and cc clauses, there exists a monotone rectilinear representation on a two-dimensional integer grid with c+1c+1 rows and 3c+v3c+v columns, such that horizontal segments, which represent variables and clauses, appear on horizontal grid lines, and vertical segments appear on vertical grid lines.

To prove that Proper MCMD is NP-complete, we perform a reduction from Planar Monotone 3-SAT to Proper MCMD. To do so, we create an instance of Proper MCMD from the monotone rectilinear representation of any instance of Planar Monotone 3-SAT in Theorem 3.6. In our construction, we use two types of disks:

  • Disks, which by our construction, are always selected (their centres can never be inside any other disk). We call them s-disks for brevity.

  • Disks of very small radius, which are contained in at least one s-disk, and thus, are surely merged in our construction. We call these disks m-disks. We assume that the radius of m-disks is so small compared to the radius of s-disks that after merging any number of m-disks with an s-disk, the centre of no new disk would enter the s-disk in our configuration. In the instance of Proper MCMD that we construct, each s-disk contains at least one m-disk.

We create a configuration of disks using gadgets, each of which consists of some m-disks and s-disks. The m-disks of a gadget are either internal (internal m-disks) or can be shared with other gadgets (shared m-disks). Parts (a) and (b) of Figure 6 show two gadgets (from each gadget, only an s-disk and an m-disk is shown). In Figure 6 (c) these two gadgets are joined at m-disk mm. In a proper assignment, mm is merged either with an s-disk of AA or with an s-disk of BB. With respect to gadget AA, if mm is merged with AA in a proper assignment, we say that it is merged in, and otherwise, merged out with respect to AA.

Refer to caption
Figure 6: Two gadgets (Parts (a) and (b)), joined at one of their m-disks (Part (c)).

We use the following gadgets in our construction. The gadgets and the distance between shared m-disks of each of them are shown in Figure 7; s-disks (denoted as sis_{i}) are large disks and m-disks (denoted as mim_{i}) are small disks. More details about these gadgets are provided now:

Refer to caption
Figure 7: Gadgets used in the proof of Theorem 3.6; sis_{i} and mim_{i} for different values of index ii denote s-disks and m-disks, respectively. Shared m-disks are indicated with overlines (like m1m_{1} in Input). The sizes of the gadgets are specified such that the gadgets fit together in the proof of Theorem 3.6.
  • Input: This gadget has only one shared m-disk, which can be either merged in or merged out.

  • Copy: We use two gadgets for copy in our construction: one with two m-disks and one with four (both of them are demonstrated in Figure 7), which we reference as 2-Copy and 4-Copy, respectively. The logic behind both of them is similar and is explained thus. If m1m_{1} is merged in, m2m_{2} (also m5m_{5} and m6m_{6} if present) is merged out, and if m1m_{1} is merged out, m2m_{2} (also m5m_{5} and m6m_{6}) is merged in. To see why, note that m3m_{3} can be merged either with s1s_{1} or with s2s_{2}. If m3m_{3} is merged with s1s_{1}, both m1m_{1} and m4m_{4} must also be merged with s1s_{1}, because m3m_{3} is farther than both to s1s_{1}. Since m4m_{4} is merged with s1s_{1}, m2m_{2} (also m5m_{5} and m6m_{6}) cannot be merged with s2s_{2} and therefore they must be merged out. Similarly, if m3m_{3} is merged with s2s_{2}, m2m_{2} (also m5m_{5} and m6m_{6}) must be merged with s2s_{2} as well, and m1m_{1} must be merged out.

  • Disjunction: One or more of its shared m-disks are merged in. Clearly, m4m_{4} must be merged with s1s_{1}, s2s_{2}, or s3s_{3}. If it is merged with sis_{i} (i{1,2,3}i\in\{1,2,3\}), mim_{i} must also be merged with sis_{i}, and mjm_{j} (jij\neq i) may or may not be merged in.

  • Not: Either both m1m_{1} and m2m_{2} are merged in or both of them are merged out. This is because m4m_{4} can be merged either with s1s_{1} or s2s_{2}. If it is merged with s1s_{1}, m-disks m1m_{1}, m2m_{2}, and m3m_{3} must also be merged with s1s_{1}, because m4m_{4} is farther than all of them. Otherwise, if m4m_{4} is merged with s2s_{2}, m-disk m3m_{3} must also be merged with s2s_{2} and therefore, none of m1m_{1} and m2m_{2} can be merged with s1s_{1}, because m3m_{3} (which is closer than both) is not merged with s1s_{1}. Thus, m1m_{1} and m2m_{2} must merge out.

In our construction of the proof of Theorem 3.6, some of the shared m-disks of 4-Copy gadget are unused and are not shared with any other gadget; for such instances of 4-Copy, their unused shared m-disks must be removed.

Theorem 3.6

Proper MCMD is NP-complete.

Proof 3.7

It is trivial to show that Proper MCMD is in NP. To show that it is NP-hard, we reduce Planar Monotone 3-SAT to Proper MCMD. Let II be an instance of Planar Monotone 3-SAT, with variables VV and clauses CC. Based on Lemma 3.5, there exists a monotone rectilinear representation of II on a (|C|+1)×(3|C|+|V|)(\left|C\right|+1)\times(3\cdot\left|C\right|+\left|V\right|) integer grid. Let RR denote this representation.

Refer to caption
Figure 8: A Proper MCMD instance obtained from the Planar Monotone 3-SAT instance of Figure 5.

We create an instance of Proper MCMD from RR as follows. The transformation is demonstrated in Figure 8, which corresponds to the monotone rectilinear representation of Figure 5.

  1. 1.

    We replace the segment corresponding to a variable in RR with an Input gadget and a chain of 2-Copy gadgets. For each intersection of this segment with a vertical segment, a 4-Copy gadget is used.

  2. 2.

    Let ss be a horizontal segment corresponding to a clause in RR. Three variables appear in the clause, for each of which there is a vertical segment that connects ss to a variable segment. For the first and last intersections, 4-Copy gadgets are used. For the 2nd intersection, we use a Disjunction gadget. These gadgets are connected using two chains of 2-Copy gadgets.

  3. 3.

    For each vertical segment that connects a variable segment to a clause segment above the xx-axis, we use a chain of 2-Copy gadgets to connect the 4-Copy gadget of the variable segment to the 4-Copy or Disjunction gadget (if it is the 2nd intersection) of the clause segment. For segments that appear below the xx-axis, we do likewise, except that we place a Not gadget before the chain of 2-Copy gadgets.

Note that some of the gadgets of Figure 7 need to be rotated or mirrored, for instance, in the vertical chains that connect clauses and variables. Also note that based on the sizes shown in Figure 7, shared m-disks always appear on grid lines in our construction. Since the distance between the shared m-disks of any of the gadgets is at least 0.25, at most four gadgets can appear on a grid segment of unit length. Given that the total area of the grid, and therefore the total length of grid segments, is bounded by O(|C|2)O(\left|C\right|^{2}), the number of gadgets used in the resulting instance of Proper MCMD is at most O(|C|2)O(\left|C\right|^{2}). Thus, the size of the resulting Proper MCMD instance is polynomial in terms of the size of the input Planar Monotone 3-SAT instance.

Suppose there is a proper assignment for our Proper MCMD instance. We obtain an assignment AA of the variables of our Planar Monotone 3-SAT instance as follows. We assign one to a variable if the m-disk of its corresponding Input gadget is merged out, and assign zero otherwise. Consider any clause cc in our Planar Monotone 3-SAT instance. Let gg be the Disjunction gadget corresponding to cc.

If cc is a positive clause, a chain of 2-Copy gadgets connects the Input gadget of each of the variables that appear in cc to gg. Therefore, if variable vv appears in the clause and if the shared m-disk of the Input gadget corresponding to vv is merged out, the m-disk of the last 2-Copy gadget of its chain is merged in inside gg. Since, one or more of the shared m-disks of gg are merged in, at least one of the literals in gg is satisfied. Similarly, if cc is a negative clause, because there is a Not gadget in the chain that connects each variable vv of cc to its Disjunction gadget, if the shared m-disk of the Input gadget corresponding to vv is merged out, the m-disk of the last 2-Copy gadget of its chain is also merged out inside gg. Since, one or more of the shared m-disks of gg are merged in, at least one of the variables in gg is not satisfied.

Therefore, the Planar Monotone 3-SAT instance is satisfied with assignment AA.

For the reverse direction, suppose there exists an assignment AA of the variables, for which all clauses of II are satisfied. We can obtain a proper assignment in our Proper MCMD instance as follows. For each variable vv in VV, if vv is one, the shared m-disk of the Input gadget corresponding to vv is merged out, and otherwise, it is merged in. Let cc be a positive clause in which variable vv with value one appears (since cc is satisfied in AA, variable vv must exist), and let gg be the disjunction gadget corresponding to clause cc. Since vv is merged out, the m-disk of the last 2-Copy gadget that connects the gadget corresponding to vv to gg is merged in with respect to gg. This implies that one of the shared m-disks of the Disjunction gadget of each positive clause is merged in. We can similarly show that at least one of the shared m-disks of the Disjunction gadgets corresponding to negative caluses are also merged in. This yields a proper assignment for the Proper MCMD instance.

In Corollary 3.8 we show that even if all disks have the same radius, the problem remains NP-hard.

Corollary 3.8

Proper MCMD remains NP-complete, even if all disks are required to be of the same radius.

Proof 3.9

We fix the radius of m-disks to r=0.01r=0.01. We use the same construction as Theorem 3.6, with the difference that we replace each s-disk with a number of smaller disks of radius rr with the same centre, so that the sum of the radii of these smaller disks equals the radius of the s-disk. Since the disks added for each s-disk are not centre-disjoint, and their centre cannot be contained in some other disk, exactly one of them must be selected and after merging others, it reaches the size of the original s-disk. The rest of the proof of Theorem 3.6 applies without significant changes.

In the proof of Corollary 3.8, we can adjust the position of the disks that replace each s-disk so that their centres do not coincide: they can be placed evenly on a very short line segment (for instance of length 0.0001). However, that they cannot be centre-disjoint, as they are to be merged.

Now we present the proof of Lemma 3.5.

Proof 3.10

Let RR be a monotone rectilinear representation of a Planar Monotone 3-SAT instance (such a representation certainly exists [15]). By extending horizontal segments of RR we get at most c+1c+1 lines: one for the variables (the xx-axis) and at most cc for clauses. Let 1,2,,m\ell_{1},\ell_{2},\dots,\ell_{m} be the lines that appear above the xx-axis ordered by their yy-coordinates. We move them (together with the segments appearing on them) so that, i\ell_{i} is moved to y=iy=i; vertical segments that connect them to a segment on the xx-axis may need to be shortend or lengthened during the movement. Given that the xx-coordinate of the end points of horizontal segments, and also the vertical order of the segments, do not change, no new intersection is introduced by this transformation. The same is done for the lines that appear below the xx-axis.

Repeating the same process for vertical segments, we get at most 3c3c vertical lines. We can similarly move these lines and the segments on them horizontally so that they appear in order and consecutively on vertical integer grid lines. Variables that do not appear in any clause, can be placed in at most vv additional vertical grid lines. This results in a (c+1)×(3c+v)(c+1)\times(3c+v) grid.

3.2 Relaxing merge order

Due to the first condition of proper assignments (Definition 2.3), in a proper assignment ϕ\phi of a set of disks DD, a disk did_{i} can be merged with another disk djd_{j}, only if all closer disks to did_{i} than djd_{j} are also merged with did_{i}. This condition, in addition to the second condition of Definition 2.3 (disk did_{i} may be merged with djd_{j} only if djd_{j} contains the centre of did_{i} after disks closer to djd_{j} than did_{i} are merged with djd_{j}), ensures the locality of the merges. By requiring this ordering for merges, however, we get instances for which there is no solution, such as the one demonstrated in Figure 4. For such instances, a solution can be obtained by relaxing this condition. In this section, we relax the first condition of Definition 2.3.

Definition 3.11

In an assignment ϕ\phi for a set of disks DD, let δiϕ\delta_{i}^{\phi} denote the sequence of disks assigned to selected disk did_{i}, ordered by their distance to did_{i}. Also, let δiϕ(j)\delta_{i}^{\phi}(j) denote the jj-th disk in this sequence.

Definition 3.12

An assignment ϕ\phi is uproper (short for unordered proper) if it meets the following conditions.

  1. 1.

    For each pair of possible indices ii and jj, in which ϕ(dj)=di\phi(d_{j})=d_{i}, choose kk such that δiϕ(k)=dj\delta_{i}^{\phi}(k)=d_{j}. The distance between did_{i} and djd_{j} must be at most ri+x=1k1rδiϕ(x)r_{i}+\sum_{x=1}^{k-1}r_{\delta_{i}^{\phi}(x)}. In other words, after merging all closer disks in δiϕ\delta_{i}^{\phi}, did_{i} must contain the centre of djd_{j}.

  2. 2.

    Selected disks must be centre-disjoint with respect to their aggregate radii; i.e. none of them can contain the centre of any other selected disk.

Definition 3.13

Given a set of disks, the goal in the Relaxed Maximum Centre-Disjoint Mergeable Disks Problem (RMCMD) is to find a uproper assignment of the maximum possible cardinality.

Theorem 3.14 shows that any set of disks has a uproper assignment, and therefore, RMCMD always has a solution.

Theorem 3.14

There exists at least one uproper assignment for any set of disks DD.

Proof 3.15

Let SS be the largest subset of DD for which there exists a uproper assignment ϕS\phi_{S}. If S=DS=D, we are done; so we assume otherwise. Let dkd_{k} be any disk in DSD\setminus S. The centre of dkd_{k} is contained in at least one disk did_{i} of SS (considering its aggregate radius); otherwise, dkd_{k} may be added to ϕ\phi as a selected disk, which contradicts the choice of SS.

We obtain a uproper assignment ϕS\phi_{S^{\prime}} for S=S{dk}S^{\prime}=S\cup\{d_{k}\} as follows. Initially we set ϕS(dx)=ϕS(dx)\phi_{S^{\prime}}(d_{x})=\phi_{S}(d_{x}) for every dxSd_{x}\in S. We also set ϕS(dk)=di\phi_{S^{\prime}}(d_{k})=d_{i}, as did_{i} contains the centre of dkd_{k}. Merging dkd_{k} increases the aggregate radius of did_{i}. If ϕS\phi_{S^{\prime}} is not uproper, did_{i} must contain the centre of another disk djd_{j} such that ϕS(dj)=dj\phi_{S^{\prime}}(d_{j})=d_{j} (it must be a selected disk in ϕS\phi_{S}). We modify ϕS\phi_{S^{\prime}} so that ϕS(dx)=di\phi_{S^{\prime}}(d_{x})=d_{i} for every dxδjϕ{dj}d_{x}\in\delta_{j}^{\phi}\cup\{d_{j}\} (here, with some abuse of notation, assume δjϕ\delta_{j}^{\phi} to be a set). These changes satisfy the second condition of Definition 3.13: after merging djd_{j} with did_{i}, did_{i} contains djd_{j} completely (because the centre of djd_{j} was inside did_{i} before the merge and after it, the aggregate radius of did_{i} is increased by rjr_{j}), and therefore it must contain the centre of δjϕ(1)\delta_{j}^{\phi}(1). We then merge δjϕ(1)\delta_{j}^{\phi}(1) with did_{i}, then we can merge δjϕ(2)\delta_{j}^{\phi}(2) with did_{i}, and so on.

If, after these changes, ϕS\phi_{S^{\prime}} is not uproper, then did_{i} contains the centre of another selected disk dyd_{y}. For every such disk, we similarly merge with did_{i}, dyd_{y} and every disk merged with it, until did_{i} does not contain the centre of any other disk, and then, ϕS\phi_{S^{\prime}} becomes proper. This contradicts the choice of SS and implies that we have a uproper assignment for DD.

To show that RMCMD is NP-hard, in Theorem 3.16 we reduce the Partition problem to RMCMD. In Partition, we are given a set of positive integers and have to decide if there is a subset, whose sum is half of the sum of all numbers in the input list. Partition is known to be NP-complete [22].

Theorem 3.16

RMCMD is NP-hard.

Proof 3.17

We reduce Partition to RMCMD. Let A={a1,a2,,an}A=\{a_{1},a_{2},\dots,a_{n}\} be an instance of Partition and ss be the sum of the members of AA. Also let ee be a real number such that 0<e<10<e<1; we use ee to create distances smaller than a segment of unit length. We create an instance of RMCMD as follows (see Figure 9).

  1. 1.

    Add disk d1d_{1} of radius 2s2s and add d2d_{2} with the same radius at distance 3s3s on the right of d1d_{1}.

  2. 2.

    Add d3d_{3} at distance 5s/2+e5s/2+e above d1d_{1} with radius ss. Similarly, add d4d_{4} at distance 5s/2+e5s/2+e above d2d_{2} with the same radius.

  3. 3.

    Add one disk for each member of AA in the midpoint of the centres of d1d_{1} and d2d_{2}, such that the radius of the one corresponding to aia_{i} is aia_{i}.

Refer to caption
Figure 9: The construction in the proof of Theorem 3.16. Only if we have a uproper assignment of cardinality four, input numbers can be divided into two partitions of equal sum.

Let ϕ\phi be the solution of this RMCMD instance. We show that there is a valid solution to the Partition instance if and only if the cardinality of ϕ\phi is four.

Suppose XX is a subset of AA with sum s/2s/2. We obtain an assignment from XX as follows: every disk corresponding to a member of XX is assigned to d1d_{1} and others are assigned to d2d_{2}. Since the sum of the members of XX is s/2s/2, the aggregate radii of both disks are exactly 5s/25s/2. Therefore, the centre of d3d_{3} and d4d_{4} are outside these disks. This yields a uproper assignment of cardinality 4.

For the reverse direction, suppose the cardinality of ϕ\phi is four (note that it cannot be greater). If so, all of d1d_{1}, d2d_{2}, d3d_{3}, and d4d_{4} are selected, and therefore, the aggregate radii of d1d_{1} and d2d_{2} are lower than 5s/2+e5s/2+e. Given that the sum of the radii of the disks corresponding to members of AA is ss (which is an integer) and 0<e<10<e<1, the sum of the set of disks assigned to d1d_{1} and d2d_{2} (and therefore the subsets of AA corresponding to them) are equal.

We cannot extend Theorem 3.16 to the case in which all disks have the same radius. The problem is that the radii of the disks may be arbitrarily large. This is necessary in Theorem 3.16, because the partition problem is weakly NP-complete, and using fixed-radius disks (the technique we used in Corollary 3.8 for MCMD) to construct larger disks may imply a number of disks that is not polynomial in the input size.

4 Algorithms for MCMD

In this section we present algorithms for solving MCMD. We present an ILP formulation for general MCMD instances in Section 4.1, and in Section 4.2 we present a dynamic programming algorithm for MCMD instances in which disk centres are collinear.

4.1 ILP formulation of MCMD

Theorem 4.1

Any instance of MCMD with nn disks can be formulated as an integer linear programme with O(n2)O(n^{2}) binary variables.

Proof 4.2

For 1i,jn1\leq i,j\leq n, we introduce a binary variable xi,jx_{i,j}. If iji\neq j, xi,jx_{i,j} indicates whether disk did_{i} is merged with disk djd_{j}. If i=ji=j, it shows if disk did_{i} is a selected disk. The following constraint for 1in1\leq i\leq n makes sure that each disk is either selected or merged with another disk.

j=1nxi,j=1\sum_{j=1}^{n}x_{i,j}=1 (1)

An assignment ϕ\phi can be obtained from the values of variables xi,jx_{i,j} by letting ϕ(di)=dj\phi(d_{i})=d_{j} if and only if xi,j=1x_{i,j}=1.

Based on the conditions enumerated in Definition 2.3, we add additional constraints to make sure that the obtained assignment ϕ\phi is proper. Let δi\delta_{i} be as defined in Definition 2.2.

  1. 1.

    Based on the first condition of Definition 2.2, a disk can be merged with did_{i}, only if its closer disks are merged as well. In other words, xδi(j+1)ix_{\delta_{i}(j+1)i} can be one, only if xδi(j)ix_{\delta_{i}(j)i} is also one for 1jn21\leq j\leq n-2, as expressed in the following constraint for 1in1\leq i\leq n and 1jn21\leq j\leq n-2.

    xδi(j)ixδi(j+1)ix_{\delta_{i}(j)i}\geq x_{\delta{i}(j+1)i} (2)
  2. 2.

    Based on the second condition of Definition 2.2, djd_{j} can be merged with did_{i}, only if the distance of did_{i} and djd_{j} is less than ri(j1)r_{i}(j-1) (Definition 2.2) for 1jn11\leq j\leq n-1; that is, after merging with did_{i} all disks closer than djd_{j} to did_{i}, the resulting disk must contain the centre of djd_{j}. We disallow merges that fail this condition: for 1in1\leq i\leq n and 1jnk1\leq j\leq n-k, where ri(j1)<|pipj|r_{i}(j-1)<|p_{i}p_{j}|, we add the following constraint (for simplicity, let ri(0)=rir_{i}(0)=r_{i}).

    xji=0x_{ji}=0 (3)
  3. 3.

    Based on the third condition of Definition 2.2, selected disks must be centre-disjoint. We add the following constraint for 1i,jn1\leq i,j\leq n.

    k=1nrkxki|pipj|+(1xjj)\sum_{k=1}^{n}r_{k}\cdot x_{ki}\leq|p_{i}p_{j}|+\infty\cdot(1-x_{jj}) (4)

    Obviously, the left side computes the aggregate radius of did_{i}; note that if did_{i} is not selected, the left side equals zero and the inequality is trivially satisfied. There are two cases based on whether djd_{j} is selected or not. If djd_{j} is a selected disk (xjj=1x_{jj}=1) the right side of the inequality simplifies to |pipj||p_{i}p_{j}|, making sure that did_{i} does not contain djd_{j}. If, on the other hand, djd_{j} is merged with another disk (maybe even with did_{i}), the right side of the inequality simplifies to ++\infty and the constraint is satisfied.

Finally, as the goal of MCMD (Definition 2.4) is to maximize the number of selected disks, the objective of the programme is simply to maximise i=1nxii\sum_{i=1}^{n}x_{ii}.

The number of variables used in the integer programme of Theorem 4.1 can be reduced based on the following observation. The value of some variables of an MCMD instance is always zero by constraints of type 3. These variables can be removed. The implementation of the ILP of Theorem 4.1 with this optimization is publicly available111https://github.com/nit-ce/mcmd.git; it has been used to obtain Figure 2.

4.2 Collinear disk centres

In this section we present a polynomial-time algorithm for solving MCMD for a set of disk with collinear centres. Note that even if disk centres are collinear, there may exist no proper assignments, as demonstrated in Figure 4. In the rest of this section, let λ=d1,d2,,dn\lambda=\left<d_{1},d_{2},\dots,d_{n}\right> be a sequence of input disks DD, ordered by the xx-coordinate of their centres. We assume that the centres of the members of DD are collinear and are on the yy-axis. We need Definitions 4.3 and 4.4 to present the algorithm in Theorem 4.5.

Definition 4.3

Let ϕ\phi be an assignment of {d1,d2,,dn}\{d_{1},d_{2},\dots,d_{n}\} and let ϕ\phi^{\prime} be an assignment of {d1\{d_{1}, d2,,dx}d_{2},\dots,d_{x}\}, such that xnx\leq n. ϕ\phi is an extension of ϕ\phi^{\prime}, if for every disk did_{i} in {d1,d2,,dx}\{d_{1},d_{2},\dots,d_{x}\}, we have ϕ(di)=ϕ(di)\phi(d_{i})=\phi^{\prime}(d_{i}). In other words, every selected disk in ϕ\phi^{\prime} is also a selected disk in ϕ\phi, and every merged disk in ϕ\phi^{\prime} is also merged with the same disk in ϕ\phi. Equivalently, when ϕ\phi is limited to {d1,d2,,dx}\{d_{1},d_{2},\dots,d_{x}\}, ϕ\phi^{\prime} is obtained.

Definition 4.4

M(x,y,z)M(x,y,z) denotes the maximum cardinality of a proper assignment of X={d1,d2X=\{d_{1},d_{2}, ,dx}\dots,d_{x}\}, such that the following conditions are met (we have yxzny\leq x\leq z\leq n).

  1. 1.

    dyd_{y} is its right-most selected disk.

  2. 2.

    dy+1,dy+2,,dxd_{y+1},d_{y+2},\dots,d_{x} are all merged with dyd_{y}.

  3. 3.

    dzd_{z} is the right-most disk in DD, where zxz\geq x, whose centre is contained in dyd_{y} considering its aggregate radius.

Note that by the third condition of Definition 4.4, the centres of dx+1,dx+2,,dzd_{x+1},\allowbreak d_{x+2},\allowbreak\dots,\allowbreak d_{z} are inside dyd_{y} with respect to DD, but they are not merged with it, because they are outside XX and not present in the assignment which is limited to set XX. Also, note that actually the second condition of Definition 4.4 is implied by its first condition: since dyd_{y} is the right-most selected disk, all of the disks that appear on the right of dyd_{y} in XX are surely merged. On the other hand, none of these disks can be merged with a selected disk dwd_{w} on the left of dyd_{y}, because, in that case dwd_{w} would contain the centre of dyd_{y} and the assignment cannot be proper.

Theorem 4.5

A proper assignment of the maximum cardinality for a set of nn disks DD, in which the centres of all disks are collinear, can be computed in polynomial time.

Proof 4.6

Let MM be defined as in Definition 4.4. Obviously, maxi=1nM(n,i,n)\max_{i=1}^{n}M(n,i,n) is the cardinality of the solution to this MCMD instance.

The function MM accepts O(n3)O(n^{3}) different input values. We can compute and store the values returned by MM in a three dimensional table, which we reference also as MM. Algorithm 1 uses dynamic programming to fill MM, and computes its entries based on the values of previously computed entries. Before explaining the details of the algorithm, we give a high-level overview as follows. The order of the disks referenced here, in the algorithm, and its succeeding discussion is demonstrated in Figure 10.

The main idea behind the algorithm is that in every proper assignment of {d1,d2,,dx}\{d_{1},d_{2},\dots,d_{x}\}, there is at least one selected disk; take the right-most selected disk did_{i}. By the first condition of Definition 2.3, for some jj where 0jn10\leq j\leq n-1, the first jj entries of δi\delta_{i} are merged with did_{i}. Thus, the algorithm considers different values of jj for each disk did_{i}, to compute the maximum proper assignment of {d1,d2,,dx}\{d_{1},d_{2},\dots,d_{x}\} for any xx in which did_{i} is the right-most selected disk and jj disks are merged with did_{i}; it updates the entries of MM accordingly. The main challenge is to decide what to do with the disks that appear on the left of did_{i} and use the previously filled entries of MM for them. To do so, the algorithm enumerates possible choices for the right-most selected disk dtd_{t} that appear on the left of did_{i}, and the number of disks kk merged with it.

After presenting Algorithm 1, we shall explain the steps of this algorithm in more detail.

Steps 1 and 2 of the algorithm initialize MM and δi\delta_{i}. In Step 3, we consider different cases in which did_{i}, for 1in1\leq i\leq n in order, is selected and update the value of different entries of MM. For every possible value of jj from 0 to n1n-1, suppose jj disks are merged with did_{i}. These disks are the first jj disks of δi\delta_{i} by the first condition of Definition 2.3.

Refer to caption
Figure 10: Demonstrating the symbols used in Theorem 4.5. did_{i} is the right-most selected disk, {da,db}{di}\{d_{a},\dots d_{b}\}\setminus\{d_{i}\} are merged with did_{i}, and did_{i} contains the centre of {dA,,dB}\{d_{A},\dots,d_{B}\}. dtd_{t} is the right-most selected disk on the left of did_{i}.
1. Compute the sequences δi\delta_{i} for 1in1\leq i\leq n (Definition 2.2). 2. Initialize every entry of MM to 0. 3. For each ii in 1in1\leq i\leq n, for each jj in 0jn10\leq j\leq n-1 repeat: (a) If the first jj disks of δi\delta_{i} can not be merged with did_{i} according to the second condition of Definition 2.3, continue with the next iteration of this loop for the next value of ii and jj. (b) Compute AA, aa, bb, and BB: aa and bb are the left-most and right-most disks in λ\lambda that are merged with did_{i}, respectively. Also, AA and BB are the left-most and right-most disks of DD whose centres are contained in did_{i}, considering its aggregate radius (note that we have AabBA\leq a\leq b\leq B). (c) If a=1a=1 and M(b,i,B)==0M(b,i,B)==0, assign 1 to M(b,i,B)M(b,i,B). (d) If a>1a>1, for tt in 1tA11\leq t\leq A-1, for kk in 0kn20\leq k\leq n-2 repeat: i. If the first kk disks of δt\delta_{t} cannot be merged with dtd_{t} (according to the second condition of Definition 2.3), continue to the next iteration of this loop. ii. Compute indices ff and gg: dfd_{f} is the right-most disk that is merged with dtd_{t}, and dgd_{g} is the right-most disk of DD whose centre is contained in dtd_{t}, considering its aggregate radius. iii. If faf\geq a, fa1f\neq a-1, or gig\geq i (disks merged with did_{i} are being merged with dtd_{t} or dtd_{t} contains the centre of did_{i}, both of which are not allowed in proper assignments), continue to the next iteration of this loop. iv. Replace the value of M(b,i,B)M(b,i,B) with the maximum of its value and M(a1,t,g)+1M(a-1,t,g)+1. 4. Compute and return maxi=1nM(n,i,n)\max_{i=1}^{n}M(n,i,n).
Algorithm 1 Find a solution to MCMD for a set of collinear disks

Let SS denote the set of such disks. If this is not possible (the centre of one of these disks is not contained in did_{i}, after merging its previous disks), we skip this value of jj, because it fails the second condition of Definition 2.3 (Step 3a). Note that if there exists no proper assignment in which jj disks are merged with did_{i}, there cannot exists a proper assignment in which more than jj disks are merged with did_{i} either, and we can safely skip the remaining values of jj and continue the loop of Step 3 by incrementing the value of ii.

Let aa, bb, AA, and BB be defined as Step 3b. If a=1a=1, selecting did_{i} and merging with it every disk in {d1,d2,,db}{di}\{d_{1},d_{2},\dots,d_{b}\}\setminus\{d_{i}\} is a proper assignment of the first bb disks of λ\lambda with cardinality one. Therefore, we update the value of M(b,i,B)M(b,i,B) to be at least one in Step 3c.

If a>1a>1, let ϕ\phi be any assignment of {d1,,db}\{d_{1},\dots,d_{b}\}, in which i) did_{i} is selected, ii) the members of SS are merged with did_{i}, and iii) the members of {dA,,da1}{db+1,,dB}\{d_{A},\dots,d_{a-1}\}\cup\{d_{b+1},\dots,d_{B}\} are contained in did_{i} after merging the members of SS with did_{i}. By the definition of MM, the value of M(b,i,B)M(b,i,B) cannot be smaller than the cardinality of ϕ\phi. When ϕ\phi is limited to L={d1,,da1}L=\{d_{1},\dots,d_{a-1}\}, it specifies a proper assignment of LL. We denote this assignment with ϕL\phi_{L}. We compute the value of M(b,i,B)M(b,i,B) by considering all possible assignments for ϕL\phi_{L} and extending them to obtain ϕ\phi by selecting did_{i}.

Let dtd_{t} be the right-most selected disk of ϕL\phi_{L}. The following conditions hold.

  1. 1.

    We have t<At<A, because {dA,,da1}\{d_{A},\dots,d_{a-1}\} are contained in did_{i} in ϕ\phi, and dtd_{t} cannot be a selected disk if tAt\geq A. Therefore, disks {dt+1,,da1}\{d_{t+1},\dots,d_{a-1}\} are merged with dtd_{t} in ϕL\phi_{L}.

  2. 2.

    Suppose kk disks are merged with dtd_{t} in ϕL\phi_{L}. Let dfd_{f} be the right-most disk of DD contained in dtd_{t} after merging disks in ϕL\phi_{L}. We have f<if<i; otherwise, dfd_{f} would contain the centre of did_{i}, and did_{i} cannot be selected in ϕ\phi. Also let dgd_{g} be the right-most vertex of DD contained in dfd_{f}. We have g<ig<i; otherwise, dfd_{f} would contain the centre of did_{i} and ϕ\phi cannot be an extension of ϕL\phi_{L}.

By trying possible values of tt and kk that meet these conditions (Step 3d), we find the maximum cardinality of ϕL\phi_{L}, which has been computed in the previous steps of this algorithm as M(a1,t,g)M(a-1,t,g). Since ϕ\phi is an extension of ϕL\phi_{L} by adding exactly one selected disk did_{i}, the maximum cardinality of ϕ\phi therefore is at least 1+M(a1,t,g)1+M(a-1,t,g). Thus, we have

M(b,i,B)1+maxt:1tA1k:0kn2if3.d.iand3.d.iiiholdM(a1,t,g)M(b,i,B)\geq 1+\max_{{t:1\leq t\leq A-1}\atop{{k:0\leq k\leq n-2}\atop{\textit{if}~{}3.d.i~{}\textit{and}~{}3.d.iii~{}\textit{hold}}}}M(a-1,t,g)

Step 3(d)iv updates M(b,i,B)M(b,i,B) to be at least this value.

Theorem 4.7

The time complexity of computing MM for an instance of MCMD with a set of nn disks, as described in Theorem 4.5, is O(n5)O(n^{5}).

Proof 4.8

We analyse Algorithm 1. Constructing δi\delta_{i} (Step 1) can be done in O(n2logn)O(n^{2}\log n) and initializing MM (Step 2) can be done in O(n3)O(n^{3}). For each pair of values for ii and jj, Steps 3a-3c can be performed in O(n)O(n). In Step 3d, O(n2)O(n^{2}) possible cases for tt and kk are considered, and for each of these cases, the Steps 3(d)i, 3(d)ii, 3(d)iii, and 3(d)iv can be performed in O(n)O(n). Since the loop of Step 3 is repeated O(n2)O(n^{2}) times, the time complexity of the whole algorithm is O(n5)O(n^{5}).

Note that Algorithm 1 cannot be used for RMCMD (Defintion 3.13) as it relies on the first condition of Definition 2.3: djd_{j} may be merged with did_{i}, only if disks closer to did_{i} than djd_{j} are also merged with it. This does not hold for RMCMD.

5 Concluding remarks

We introduced a variant of geometric independent set for a set of disks, such that the disks that do not appear in the output must be merged with a nearby disk that does (the problem was stated formally in Section 2). We proved that this problem is NP-hard (Theorem 3.6). Also by relaxing one of the conditions of the problem, we introduced a less restricted variant, which was proved NP-hard as well (Theorem 3.16). We presented an ILP for the general case, and a polynomial-time algorithm for the case in which disk centres are collinear.

The centre-disjointness property of the disks in the definition of MCMD and RMCMD implies that we are implicitly assuming Euclidean distance between the centre of the disks; disk did_{i} containing the centre of djd_{j} implies that the Euclidean distance between pip_{i} and pjp_{j} is at most rir_{i}. If the problem is defined using other distance measures, we would have different shapes; for instance squares for LL_{\infty} measure. We can even define the problem using any (maybe irregular) shape, or in higher dimensions using, for instance, spheres. Interestingly, the hardness results of Section 3.6 can be adapted to centre-disjoint squares, after adjusting the gadgets (using squares instead of disks and updating the placement of m-disks slightly). Other shapes (or distance measures) may be studied for hardness results or better algorithms.

Several interesting problems call for further investigation, such as: i) general approximation algorithms, ii) studying the case in which the number of disks that can be merged with a selected disk is bounded by some constant, iii) solving RMCMD for disks with collinear centres, and iv) solving MCMD when disks are pierced by a line (the line may not pass through disk centres).

References

  • [1] Formann M, Wagner F. A Packing Problem with Applications to Lettering of Maps. In: Symposium on Computational Geometry (SoCG). ACM, North Conway, NH, USA, 1991 pp. 281–288. 10.1145/109648.109680.
  • [2] Håstad J. Clique is hard to approximate within n1ϵn^{1-\epsilon}. Acta Math., 1999. 182(1):105–142. 10.1007/BF02392825.
  • [3] Fowler RJ, Paterson M, Tanimoto SL. Optimal Packing and Covering in the Plane are NP-Complete. Information Processing Letters, 1981. 12(3):133–137. 10.1016/0020-0190(81)90111-3.
  • [4] Hochbaum DS, Maass W. Approximation Schemes for Covering and Packing Problems in Image Processing and VLSI. J. ACM, 1985. 32(1):130–136. 10.1145/2455.214106.
  • [5] Agarwal PK, van Kreveld MJ, Suri S. Label Placement by Maximum Independent Set in Rectangles. Comput. Geom., 1998. 11(3–4):209–218. 10.1016/S0925-7721(98)00028-5.
  • [6] Erlebach T, Jansen K, Seidel E. Polynomial-Time Approximation Schemes for Geometric Intersection Graphs. SIAM J. Comput., 2005. 34(6):1302–1323. 10.1137/S0097539702402676.
  • [7] Chan TM. Polynomial-Time Approximation Schemes for Packing and Piercing Fat Objects. J. Algorithms, 2003. 46(2):178–189. 10.1016/S0196-6774(02)00294-8.
  • [8] Chan TM, Har-Peled S. Approximation Algorithms for Maximum Independent Set of Pseudo-Disks. Discrete & Comput. Geom., 2012. 48(2):373–392. 10.1007/s00454-012-9417-5.
  • [9] Been K, Daiches E, Yap CK. Dynamic Map Labeling. IEEE Trans. Vis. Comput. Graph., 2006. 12(5):773–780. 10.1109/TVCG.2006.136.
  • [10] Gemsa A, Nöllenburg M, Rutter I. Consistent Labeling of Rotating Maps. Comput. Geom., 2011. 7(1):308–331. 10.20382/jocg.v7i1a15.
  • [11] Gemsa A, Nöllenburg M, Rutter I. Evaluation of Labeling Strategies for Rotating Maps. ACM J. Experim. Algor., 2016. 21(1):1.4:1–1.4:21. 10.1145/2851493.
  • [12] Cano RG, de Souza CC, de Rezende PJ. Fast Optimal Labelings for Rotating Maps. In: Workshop on Algorithms and Computation (WALCOM). Springer, Hsinchu, Taiwan, 2017 pp. 161–173. 10.1007/978-3-319-53925-6_13.
  • [13] Yokosuka Y, Imai K. Polynomial Time Algorithms for Label Size Maximization on Rotating Maps. J. Inform. Process., 2017. 25:572–579. 10.2197/ipsjjip.25.572.
  • [14] Funke S, Krumpe F, Storandt S. Crushing Disks Efficiently. In: IWOCA. Springer, Helsinki, Finland, 2016 pp. 43–54. 10.1007/978-3-319-44543-4_4.
  • [15] de Berg M, Khosravi A. Optimal Binary Space Partitions in the Plane. In: COCOON. Springer, Nha Trang, Vietnam, 2010 pp. 216–225. 10.1007/978-3-642-14031-0_25.
  • [16] Rudi AG. Maximizing the Number of Visible Labels on a Rotating Map. Sci. Ann. Comput. Sci., 2021. 31(2):275–287. 10.7561/SACS.2021.2.293.
  • [17] Kaplan H, Klost K, Mulzer W, Roditty L, Seiferth P, Sharir M. Triangles and Girth in Disk Graphs and Transmission Graphs. In: European Symposium on Algorithms (ESA). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, Munic/Garching, Germany, 2019 pp. 64:1–64:14. 10.4230/LIPICS.ESA.2019.64.
  • [18] Kaplan H, Mulzer W, Roditty L, Seiferth P. Spanners for Directed Transmission Graphs. SIAM J. Comput., 2018. 47(4):1585–1609. 10.1137/16M1059692.
  • [19] Klost K, Mulzer W. Recognizing Generalized Transmission Graphs of Line Segments and Circular Sectors. In: LATIN. Springer, Buenos Aires, 2018 pp. 683–696. 10.1007/978-3-319-77404-6_50.
  • [20] Biniaz A, Bose P, Carmi P, Maheshwari A, Munro JI, Smid MHM. Faster Algorithms for some Optimization Problems on Collinear Points. In: Symposium on Computational Geometry (SoCG). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, Budapest, Hungary, 2018 pp. 8:1–8:14. 10.4230/LIPICS.SOCG.2018.8.
  • [21] Lichtenstein D. Planar Formulae and Their Uses. SIAM J. Comput., 1982. 11(2):329–343. 10.1137/0211025.
  • [22] Karp RM. Reducibility Among Combinatorial Problems. In: Complexity of Computer Computations. Plenum Press, New York, USA, 1972 pp. 85–103. 10.1007/978-1-4684-2001-2_9.