24 \papernumber2102 \versionForARXIV
Maximum Centre-Disjoint Mergeable Disks
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 setMaximum 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.

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 , where is the number of vertices and 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 -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 can be merged with another disk , only if all disks closer to than (considering the distance between disk centres) are also merged with , and after merging these closer disks, must contain the centre of . 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

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 be a set of disks. The radius of is denoted as , and its centre is denoted as .
Definition 2.1
A function from to itself is an assignment, if is for every in . According to an assignment , the disks in can be either selected or merged: if is , the disk is selected, and otherwise, it is merged. The cardinality of an assignment, denoted as , is the number of selected disks in .
The relation defined by assignments (Definition 2.1) describes disk merges in our problem. For any disk , if we have and , it implies that is merged with . On the other hand, the relation implies that 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 , we have .
Definition 2.2
The aggregate radius of a selected disk with respect to an assignment , denoted with some misuse of notation as , is the sum of its radius and that of every disk merged with it, or equivalently,
Let be the sequence of disks in , ordered increasingly by the distance of their centres from the centre of , and let denote its -th disk. The -th aggregate radius of , denoted as , is defined as its aggregate radius if are merged with .
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 is proper if it meets the following conditions.
-
1.
The disk can be merged with , only if , for every where , are also merged with . In other words, all disks closer to than are also merged with .
-
2.
The disk can be merged with , only if the distance between the centre of and is less than . In other words, after merging for , must contain the centre of .
-
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 and such that , , and , we have .
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.

Figure 3 shows a configuration of five disks with more than one proper assignment. Disk can be merged with , after which, would contain the centre of and , both of which then have to be merged with . These merges result in containing the centre of , which would also be merged. Therefore, in this assignment , we have , for , and its cardinality is one. Alternatively, in assignment we can merge with , as the latter contains the centre of the former. The remaining disks are centre-disjoint. Therefore, we have , , , , , and its cardinality is four. Assignment 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 can be merged with either or . If is merged with , cannot be merged with , because of the second condition of proper assignments: can be merged with , only if all closer disks to are merged with it (but which is closer to than is not). Therefore, can be neither merged, nor selected (because its centre is contained in ). Similarly, if is merged with , 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.

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 -MCMD problem, we are given a set of disks and we have to decide if there exists a proper assignment of cardinality at least 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 corresponding to variables and corresponding to clauses; each vertex in is incident to at most three variables, which correspond to the variables that appear in the clause.

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 -axis, ii) positive clauses are drawn as horizontal segments above the -axis, iii) negative clauses are drawn as horizontal segments below the -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 variables and clauses, there exists a monotone rectilinear representation on a two-dimensional integer grid with rows and 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 . In a proper assignment, is merged either with an s-disk of or with an s-disk of . With respect to gadget , if is merged with in a proper assignment, we say that it is merged in, and otherwise, merged out with respect to .

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 ) are large disks and m-disks (denoted as ) are small disks. More details about these gadgets are provided now:

-
•
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 is merged in, (also and if present) is merged out, and if is merged out, (also and ) is merged in. To see why, note that can be merged either with or with . If is merged with , both and must also be merged with , because is farther than both to . Since is merged with , (also and ) cannot be merged with and therefore they must be merged out. Similarly, if is merged with , (also and ) must be merged with as well, and must be merged out.
-
•
Disjunction: One or more of its shared m-disks are merged in. Clearly, must be merged with , , or . If it is merged with (), must also be merged with , and () may or may not be merged in.
-
•
Not: Either both and are merged in or both of them are merged out. This is because can be merged either with or . If it is merged with , m-disks , , and must also be merged with , because is farther than all of them. Otherwise, if is merged with , m-disk must also be merged with and therefore, none of and can be merged with , because (which is closer than both) is not merged with . Thus, and 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 be an instance of Planar Monotone 3-SAT, with variables and clauses . Based on Lemma 3.5, there exists a monotone rectilinear representation of on a integer grid. Let denote this representation.

We create an instance of Proper MCMD from as follows. The transformation is demonstrated in Figure 8, which corresponds to the monotone rectilinear representation of Figure 5.
-
1.
We replace the segment corresponding to a variable in 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.
Let be a horizontal segment corresponding to a clause in . Three variables appear in the clause, for each of which there is a vertical segment that connects 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.
For each vertical segment that connects a variable segment to a clause segment above the -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 -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 , the number of gadgets used in the resulting instance of Proper MCMD is at most . 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 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 in our Planar Monotone 3-SAT instance. Let be the Disjunction gadget corresponding to .
If is a positive clause, a chain of 2-Copy gadgets connects the Input gadget of each of the variables that appear in to . Therefore, if variable appears in the clause and if the shared m-disk of the Input gadget corresponding to is merged out, the m-disk of the last 2-Copy gadget of its chain is merged in inside . Since, one or more of the shared m-disks of are merged in, at least one of the literals in is satisfied. Similarly, if is a negative clause, because there is a Not gadget in the chain that connects each variable of to its Disjunction gadget, if the shared m-disk of the Input gadget corresponding to is merged out, the m-disk of the last 2-Copy gadget of its chain is also merged out inside . Since, one or more of the shared m-disks of are merged in, at least one of the variables in is not satisfied.
Therefore, the Planar Monotone 3-SAT instance is satisfied with assignment .
For the reverse direction, suppose there exists an assignment of the variables, for which all clauses of are satisfied. We can obtain a proper assignment in our Proper MCMD instance as follows. For each variable in , if is one, the shared m-disk of the Input gadget corresponding to is merged out, and otherwise, it is merged in. Let be a positive clause in which variable with value one appears (since is satisfied in , variable must exist), and let be the disjunction gadget corresponding to clause . Since is merged out, the m-disk of the last 2-Copy gadget that connects the gadget corresponding to to is merged in with respect to . 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 . 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 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 be a monotone rectilinear representation of a Planar Monotone 3-SAT instance (such a representation certainly exists [15]). By extending horizontal segments of we get at most lines: one for the variables (the -axis) and at most for clauses. Let be the lines that appear above the -axis ordered by their -coordinates. We move them (together with the segments appearing on them) so that, is moved to ; vertical segments that connect them to a segment on the -axis may need to be shortend or lengthened during the movement. Given that the -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 -axis.
Repeating the same process for vertical segments, we get at most 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 additional vertical grid lines. This results in a grid.
3.2 Relaxing merge order
Due to the first condition of proper assignments (Definition 2.3), in a proper assignment of a set of disks , a disk can be merged with another disk , only if all closer disks to than are also merged with . This condition, in addition to the second condition of Definition 2.3 (disk may be merged with only if contains the centre of after disks closer to than are merged with ), 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 for a set of disks , let denote the sequence of disks assigned to selected disk , ordered by their distance to . Also, let denote the -th disk in this sequence.
Definition 3.12
An assignment is uproper (short for unordered proper) if it meets the following conditions.
-
1.
For each pair of possible indices and , in which , choose such that . The distance between and must be at most . In other words, after merging all closer disks in , must contain the centre of .
-
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 .
Proof 3.15
Let be the largest subset of for which there exists a uproper assignment . If , we are done; so we assume otherwise. Let be any disk in . The centre of is contained in at least one disk of (considering its aggregate radius); otherwise, may be added to as a selected disk, which contradicts the choice of .
We obtain a uproper assignment for as follows. Initially we set for every . We also set , as contains the centre of . Merging increases the aggregate radius of . If is not uproper, must contain the centre of another disk such that (it must be a selected disk in ). We modify so that for every (here, with some abuse of notation, assume to be a set). These changes satisfy the second condition of Definition 3.13: after merging with , contains completely (because the centre of was inside before the merge and after it, the aggregate radius of is increased by ), and therefore it must contain the centre of . We then merge with , then we can merge with , and so on.
If, after these changes, is not uproper, then contains the centre of another selected disk . For every such disk, we similarly merge with , and every disk merged with it, until does not contain the centre of any other disk, and then, becomes proper. This contradicts the choice of and implies that we have a uproper assignment for .
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 be an instance of Partition and be the sum of the members of . Also let be a real number such that ; we use to create distances smaller than a segment of unit length. We create an instance of RMCMD as follows (see Figure 9).
-
1.
Add disk of radius and add with the same radius at distance on the right of .
-
2.
Add at distance above with radius . Similarly, add at distance above with the same radius.
-
3.
Add one disk for each member of in the midpoint of the centres of and , such that the radius of the one corresponding to is .

Let 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 is four.
Suppose is a subset of with sum . We obtain an assignment from as follows: every disk corresponding to a member of is assigned to and others are assigned to . Since the sum of the members of is , the aggregate radii of both disks are exactly . Therefore, the centre of and are outside these disks. This yields a uproper assignment of cardinality 4.
For the reverse direction, suppose the cardinality of is four (note that it cannot be greater). If so, all of , , , and are selected, and therefore, the aggregate radii of and are lower than . Given that the sum of the radii of the disks corresponding to members of is (which is an integer) and , the sum of the set of disks assigned to and (and therefore the subsets of 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 disks can be formulated as an integer linear programme with binary variables.
Proof 4.2
For , we introduce a binary variable . If , indicates whether disk is merged with disk . If , it shows if disk is a selected disk. The following constraint for makes sure that each disk is either selected or merged with another disk.
(1) |
An assignment can be obtained from the values of variables by letting if and only if .
Based on the conditions enumerated in Definition 2.3, we add additional constraints to make sure that the obtained assignment is proper. Let be as defined in Definition 2.2.
-
1.
Based on the first condition of Definition 2.2, a disk can be merged with , only if its closer disks are merged as well. In other words, can be one, only if is also one for , as expressed in the following constraint for and .
(2) -
2.
Based on the second condition of Definition 2.2, can be merged with , only if the distance of and is less than (Definition 2.2) for ; that is, after merging with all disks closer than to , the resulting disk must contain the centre of . We disallow merges that fail this condition: for and , where , we add the following constraint (for simplicity, let ).
(3) -
3.
Based on the third condition of Definition 2.2, selected disks must be centre-disjoint. We add the following constraint for .
(4) Obviously, the left side computes the aggregate radius of ; note that if is not selected, the left side equals zero and the inequality is trivially satisfied. There are two cases based on whether is selected or not. If is a selected disk () the right side of the inequality simplifies to , making sure that does not contain . If, on the other hand, is merged with another disk (maybe even with ), the right side of the inequality simplifies to 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 .
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 be a sequence of input disks , ordered by the -coordinate of their centres. We assume that the centres of the members of are collinear and are on the -axis. We need Definitions 4.3 and 4.4 to present the algorithm in Theorem 4.5.
Definition 4.3
Let be an assignment of and let be an assignment of , , such that . is an extension of , if for every disk in , we have . In other words, every selected disk in is also a selected disk in , and every merged disk in is also merged with the same disk in . Equivalently, when is limited to , is obtained.
Definition 4.4
denotes the maximum cardinality of a proper assignment of , , such that the following conditions are met (we have ).
-
1.
is its right-most selected disk.
-
2.
are all merged with .
-
3.
is the right-most disk in , where , whose centre is contained in considering its aggregate radius.
Note that by the third condition of Definition 4.4, the centres of are inside with respect to , but they are not merged with it, because they are outside and not present in the assignment which is limited to set . Also, note that actually the second condition of Definition 4.4 is implied by its first condition: since is the right-most selected disk, all of the disks that appear on the right of in are surely merged. On the other hand, none of these disks can be merged with a selected disk on the left of , because, in that case would contain the centre of and the assignment cannot be proper.
Theorem 4.5
A proper assignment of the maximum cardinality for a set of disks , in which the centres of all disks are collinear, can be computed in polynomial time.
Proof 4.6
Let be defined as in Definition 4.4. Obviously, is the cardinality of the solution to this MCMD instance.
The function accepts different input values. We can compute and store the values returned by in a three dimensional table, which we reference also as . Algorithm 1 uses dynamic programming to fill , 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 , there is at least one selected disk; take the right-most selected disk . By the first condition of Definition 2.3, for some where , the first entries of are merged with . Thus, the algorithm considers different values of for each disk , to compute the maximum proper assignment of for any in which is the right-most selected disk and disks are merged with ; it updates the entries of accordingly. The main challenge is to decide what to do with the disks that appear on the left of and use the previously filled entries of for them. To do so, the algorithm enumerates possible choices for the right-most selected disk that appear on the left of , and the number of disks 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 and . In Step 3, we consider different cases in which , for in order, is selected and update the value of different entries of . For every possible value of from to , suppose disks are merged with . These disks are the first disks of by the first condition of Definition 2.3.

Let denote the set of such disks. If this is not possible (the centre of one of these disks is not contained in , after merging its previous disks), we skip this value of , because it fails the second condition of Definition 2.3 (Step 3a). Note that if there exists no proper assignment in which disks are merged with , there cannot exists a proper assignment in which more than disks are merged with either, and we can safely skip the remaining values of and continue the loop of Step 3 by incrementing the value of .
Let , , , and be defined as Step 3b. If , selecting and merging with it every disk in is a proper assignment of the first disks of with cardinality one. Therefore, we update the value of to be at least one in Step 3c.
If , let be any assignment of , in which i) is selected, ii) the members of are merged with , and iii) the members of are contained in after merging the members of with . By the definition of , the value of cannot be smaller than the cardinality of . When is limited to , it specifies a proper assignment of . We denote this assignment with . We compute the value of by considering all possible assignments for and extending them to obtain by selecting .
Let be the right-most selected disk of . The following conditions hold.
-
1.
We have , because are contained in in , and cannot be a selected disk if . Therefore, disks are merged with in .
-
2.
Suppose disks are merged with in . Let be the right-most disk of contained in after merging disks in . We have ; otherwise, would contain the centre of , and cannot be selected in . Also let be the right-most vertex of contained in . We have ; otherwise, would contain the centre of and cannot be an extension of .
By trying possible values of and that meet these conditions (Step 3d), we find the maximum cardinality of , which has been computed in the previous steps of this algorithm as . Since is an extension of by adding exactly one selected disk , the maximum cardinality of therefore is at least . Thus, we have
Step 3(d)iv updates to be at least this value.
Theorem 4.7
The time complexity of computing for an instance of MCMD with a set of disks, as described in Theorem 4.5, is .
Proof 4.8
We analyse Algorithm 1. Constructing (Step 1) can be done in and initializing (Step 2) can be done in . For each pair of values for and , Steps 3a-3c can be performed in . In Step 3d, possible cases for and 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 . Since the loop of Step 3 is repeated times, the time complexity of the whole algorithm is .
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 containing the centre of implies that the Euclidean distance between and is at most . If the problem is defined using other distance measures, we would have different shapes; for instance squares for 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 . 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.