## 1 Introduction

Circular graph layouts are a popular drawing style to visualize graphs, e.g., in biology [16], and circular layout algorithms [21] are included in standard graph layout software [11] such as yFiles, Graphviz, or OGDF.
In a circular graph layout all vertices are placed on a circle, while the edges are drawn as straight-line chords of that circle, see Fig. 1.
Minimizing the number of crossings between the edges is the main algorithmic problem for optimizing the readability of a circular graph layout.
If the edges are drawn as chords, then all crossings are determined solely by the order of the vertices.
By cutting the circle between any two vertices and straightening it, circular layouts immediately correspond to one-page book drawings, in which all vertices are drawn on a line (the *spine*) and all edges are drawn in one half-plane (the *page*) bounded by the spine.
Finding a vertex order that minimizes the crossings is -hard [18]

. Heuristics and approximation algorithms have been studied in numerous papers, see, e.g.,

[2, 20, 13].Gansner and Koren [8] presented an approach to compute improved circular layouts for a given input graph in a three-step process.
The first step computes a vertex order of that aims to minimize the overall edge length of the drawing, the second step determines a crossing-free subset of edges that are drawn outside the circle to reduce edge crossings in the interior (see Fig. 1), and the third step introduces edge bundling to save ink and reduce clutter in the interior.
The layouts by Gansner and Koren draw edges inside and outside the circle and thus are called *two-sided circular layouts*.
Again, it is easy to see that two-sided circular layouts are equivalent to two-page book drawings, where the interior of the circle with its edges corresponds to the first page and the exterior to the second page.

Inspired by their approach we take a closer look at the second step of the above process, which, in other words, determines for a given cyclic vertex order an outerplane subgraph to be drawn outside the circle such that the remaining crossings of the chords are minimized.
Gansner and Koren [8] solve this problem in time.^{1}^{1}1The paper claims time without a proof; the immediate running time of their algorithm is .
In fact, the problem is equivalent to finding a maximum independent set in the corresponding circle graph , which is the intersection graph of the chords (see Section 2 for details).
The maximum independent set problem in a circle graph can be solved in time [23], where is the total chord length of the circle graph (here ; see Fig 4.2 for a precise definition of ).

#### Contribution.

We generalize the above crossing minimization problem from finding an outerplane graph to finding an outer -plane graph, i.e., we ask for an edge set to be drawn outside the circle such that none of these edges has more than crossings. Equivalently, we ask for a page assignment of the edges in a two-page book drawing, given a fixed vertex order, such that in one of the two pages each edge has at most crossings. For this is exactly the same problem considered by Gansner and Koren [8]. An example for is shown in Fig. 1. More generally, studying drawings of non-planar graphs with a bounded number of crossings per edge is a topic of great interest in graph drawing, see [15, 17].

We model the outer -plane crossing minimization problem in two-sided circular layouts as a bounded-degree maximum-weight induced subgraph (BDMWIS) problem in the corresponding circle graph (Section 2). The BDMWIS problem is a natural generalization of the weighted independent set problem (setting the degree bound ), which was the basis for Gansner and Koren’s approach [8]. It is itself a weighted special case of the bounded-degree vertex deletion problem [5, 3, 7], a well-studied algorithmic graph problem of independent interest. For arbitrary we show -hardness of the BDMWIS problem in Section 3. Our algorithms in Section 4 are based on dynamic programming using interval representations of circle graphs. For the case , where at most one crossing per exterior edge is permitted, we solve the BDMWIS problem for circle graphs in time. We then generalize our algorithm and obtain a problem-specific -time algorithm for circle graphs and any fixed , whose running time is . We note that the pure existence of an -time algorithm can also be derived from applying a metatheorem of Fomin et al. [6] using counting monadic second order (CMSO) logic, but the resulting running times are far worse. Finally, in Section 5, we present the results of a first experimental study comparing the crossing numbers of two-sided circular layouts for the cases and .

## 2 Preliminaries

Let be a graph and a cyclic order of .
We arrange the vertices in order on a circle and draw edges as straight chords to obtain a (*one-sided*) *circular drawing* , see Fig. 1.
Note that all crossings of are fully determined by : two edges cross iff their endpoints alternate in .
Our goal in this paper is to find a subset of edges to be drawn in the unbounded region outside with no more than crossings per edge in order to minimize the total number of edge crossings or the number of remaining edge crossings inside .

More precisely, in a *two-sided circular drawing* of we still draw all vertices on a circle in the order , but we split the edges into two disjoint sets and with .
The edges in are drawn as straight chords, while the edges in are drawn as simple curves in the exterior of , see Fig. 1.
Asking for a set that globally minimizes the crossings in is equivalent to the -hard fixed linear crossing minimization problem in 2-page book drawings [19].
Hence we add the additional constraint that the exterior drawing induced by is *outer -plane*, i.e., each edge in is crossed by at most other edges in .
This is motivated by the fact that, due to their detour, exterior edges are already harder to read and hence should not be further impaired by too many crossings.
The parameter , which can be assumed to be small, gives us control on the maximum number of crossings per exterior edge.
Previous work [8] is limited to the case .

### 2.1 Problem transformation

Instead of working with a one-sided input layout of directly we consider the corresponding *circle graph* of .
The vertex set of has one vertex for each edge in and two vertices are connected by an edge in if and only if the chords corresponding to and cross in , i.e., their endpoints alternate in .
The number of vertices of thus equals the number of edges of and the number of edges of equals the number of crossings in .
Moreover, the degree of a vertex in is the number of crossings of the corresponding edge in .

Next we show that we can reduce our outer -plane crossing minimization problem in two-sided circular layouts of to an instance of the following bounded-degree maximum-weight induced subgraph problem for .

###### Problem 1 (Bounded-Degree Maximum-Weight Induced Subgraph (-Bdmwis)).

Let be a weighted graph with a vertex weight for each and an edge weight for each and let . Find a set such that the induced subgraph has maximum vertex degree and maximizes the weight

For general graphs it follows immediately from Yannakakis [24] that -BDMWIS is -hard, but restricting the graph class to circle graphs makes the problem significantly easier, at least for constant , as we show in this paper.

For our reduction it remains to assign suitable vertex and edge weights to . We define for all vertices and or, alternatively, for all edges , depending on the type of crossings to minimize.

Let be a graph with cyclic vertex order and . Then a maximum-weight degree- induced subgraph in the corresponding weighted circle graph induces an outer -plane graph that minimizes the number of crossings in the corresponding two-sided layout of .

###### Proof.

Let be a vertex set that induces a maximum-weight subgraph of degree at most in . Since vertices in correspond to edges in , we can choose as the set of exterior edges in . Each edge in corresponds to a crossing in the one-sided circular layout . Hence each edge in the induced graph corresponds to an exterior crossing in . Since the maximum degree of is , no exterior edge in has more than crossings.

The degree of a vertex (and thus its weight ) equals the number of crossings that are removed from by drawing the corresponding edge in in the exterior part of . However, if two vertices in are connected by an edge, their corresponding edges in necessarily cross in the exterior part of and we need to add a correction term, otherwise the crossing would be counted twice. So for edge weights the weight maximized by equals the number of crossings that are removed from the interior part of . For , though, the weight equals the number of crossings that are removed from the interior, but not counting those that are simply shifted to the exterior of . ∎

Lemma 2.1 tells us that instead of minimizing the crossings in two-sided circular layouts with an outer -plane exterior graph, we can focus on solving the -BDMWIS problem for circle graphs in the rest of the paper.

### 2.2 Interval representation of circle graphs

There are two alternative representations of circle graphs.
The first one is the *chord representation* as a set of chords of a circle (i.e., a one-sided circular layout), whose intersection graph actually serves as the very definition of circle graphs.
The second and less immediate representation is the *interval representation* as an *overlap graph*, which is more convenient for describing our algorithms.
In an interval representation each vertex is represented as a closed interval .
Two vertices are adjacent if and only if the two corresponding intervals partially overlap, i.e., they intersect but neither interval contains the other.

Gavril [10] showed that circle graphs and overlap graphs represent the same class of graphs. To obtain an interval representation from a chord representation on a circle the idea is to pick a point on , which is not the endpoint of a chord, rotate such that is the topmost point of and project the chords from onto the real line below , see Fig. 2. Each chord is then represented as a finite interval and two chords intersect if and only if their projected intervals partially overlap. We can further assume that all endpoints of the projected intervals are distinct by locally separating chords with a shared endpoint in before the projection, such that the intersection graph of the chords does not change.

## 3 -hardness

For arbitrary, non-constant we show that -BDMWIS is -hard, even on circle graphs. Our reduction is from the Minimum Dominating Set problem, which is -hard on circle graphs [12].

###### Problem 2 (Minimum Dominating Set).

Given a graph , find a set of minimum cardinality such that for each there is a vertex with .

-BDMWIS is -hard on circle graphs, even if all vertex weights are one and all edge weights are zero.

###### Proof.

Given an instance of Minimum Dominating Set on a circle graph we construct an instance of -BDMWIS. First let be a copy of . We set the degree bound equal to the maximum degree of and attach new leaves to each vertex until every (non-leaf) vertex in has degree . Note that remains a circle graph when adding leaves. We set the weights to for and for . This implies that the weight to be maximized is just the number of vertices in the induced subgraph.

Now given a minimum dominating set of , we know that for every vertex either or there exists a vertex such that . This means if we set the graph has maximum degree , since for every at least one neighbor is in and the maximum degree in is . Since is a minimum dominating set, , for which we can assume that it contains all leaves, is the largest set of vertices such that has maximum degree . Hence is a solution to the -BDMWIS problem on .

Conversely let be a solution to the -BDMWIS problem on . Again we can assume that contains all leaves of . Otherwise let be a leaf of with unique neighbor . The only possible reason that is that and the degree of in is . If we replace in a non-leaf neighbor of (which must exist) by the leaf , the resulting set has the same cardinality and satisfies the degree constraint. Now let . By our assumption contains no leaves of and . Since every vertex in has degree at most we know that each must have a neighbor , otherwise it would have degree in . Thus is a dominating set. Further, is a minimum dominating set. If there was a smaller dominating set in then would be a larger solution than for the -BDMWIS problem on , which is a contradiction. ∎

## 4 Algorithms for -Bdmwis on circle graphs

Before describing our dynamic programming algorithms for and the generalization to in this section, we introduce the necessary basic definitions and notation using the interval perspective on -BDMWIS for circle graphs.

### 4.1 Notation and Definitions

Let be a circle graph and an interval representation of with intervals that have distinct endpoints as defined in Section 2.2. Let be the set of all interval endpoints and assume that they are sorted in increasing order, i.e., for all . We may in fact assume without loss of generality that by mapping each interval to the interval defined by its index ranks. Clearly the order of the endpoints of two intervals and is exactly the same as the order of the endpoint of the intervals and and thus the overlap or circle graph defined by the new interval set is exactly the same as the one defined by .

For two distinct intervals and we say that and *overlap* if or .
Two overlapping intervals correspond to an edge in .
For an interval and a subset we define the overlap set .
Further, for , we define the forward overlap set of intervals overlapping on the right side of and the set of all overlapping pairs of intervals in .
If , i.e., , we say that *nests* (or is *nested* in ).
Nested intervals do not correspond to edges in .
For a subset we define the set of all intervals nested in as .

Let be a set of intervals.
We say is *connected* if its corresponding overlap or circle graph is connected.
Further let be the sorted interval endpoints of .
The *span* of is defined as and the *fit* of the set is defined as .

For a weighted circle graph with interval representation we can immediately assign each vertex weight as an interval weight to the interval representing and each edge weight to the overlapping pair of intervals that represents the edge .
We can now phrase the -BDMWIS problem for a circle graph in terms of its interval representation, i.e., given an interval representation of a circle graph , find a subset such that no overlaps more than other intervals in and such that the weight is maximized.
We call such an optimal subset of intervals a *max-weight -overlap set*.

### 4.2 Properties of max-weight 1-overlap sets

The basic idea for our dynamic programming algorithm is to decompose any *-overlap set*, i.e., a set of intervals, in which no interval overlaps more than one other interval, into a sequence of independent single intervals and overlapping interval pairs.
Consequently, we can find a max-weight 1-overlap set by optimizing over all possible ways to select a single interval or an overlapping interval pair and recursively solving the induced independent subinstances that are obtained by splitting the instance according to the selected interval(s).

Let be a set of intervals.
For with we define the set as the subset of contained in .
Note that .
For any we can *split* *along* into the three sets
, , .
This split corresponds to selecting as an interval without overlaps in a candidate 1-overlap set.
All intervals which are not contained in one of the three sets will be discarded after the split.

Similarly, we can split along a pair of overlapping intervals to be included in candidate solution. Without loss of generality let . Then the split creates the five sets , , , , , see Fig. 3. Again, all intervals which are not contained in one of the five sets are discarded. The next lemma shows that none of the discarded overlapping intervals can be included in a 1-overlap set together with and .

For any at most two overlapping intervals with and can be part of a -overlap set of .

###### Proof.

Assume there is a third interval with in a -overlap set, which overlaps or or both. Interval cannot be added to the 1-overlap set without creating at least one interval that overlaps two other intervals, which is not allowed in a 1-overlap set. ∎

Our algorithm for the max-weight -overlap set problem extends some of the ideas of the algorithm presented by Valiente for the independent set problem in circle graphs [23].
In our analysis we use Valiente’s notion of *total chord length*, where the chord length is the same as the *length* of the corresponding interval .
The *total interval length* can then be defined as
.
We use the following bound in our analysis.
Let be a set of intervals and be the maximum degree of the corresponding overlap or circle graph, then
.

###### Proof.

We first observe that if and only if . So in total each interval in appears at most times as and at most times as in the double sum, i.e., no interval in appears more than times and the bound follows. ∎

### 4.3 An algorithm for max-weight 1-overlap sets

Our algorithm to compute max-weight 1-overlap sets runs in two phases. In the first phase, we compute the weights of optimal solutions on subinstances of increasing size by recursively re-using solutions of smaller subinstances. In the second phase we optimize over all ways of combining optimal subsolutions to obtain a max-weight 1-overlap set.

The subinstances of interest are defined as follows. Let be a connected set of intervals and let and be the leftmost and rightmost endpoints of all intervals in . We define the value as the maximum weight of a 1-overlap set on that includes in the 1-overlap set (if one exists). Lemma 4.2 implies that it is sufficient to compute the values for single intervals and overlapping pairs since any connected set of three or more intervals cannot be a 1-overlap set any more.

We start with the computation of for a single interval . Using a recursive computation scheme of that uses increasing interval lengths we may assume by induction that for any interval with and any overlapping pair of intervals with the sets and are already computed. If we select for the 1-overlap set as a single interval without overlaps, we need to consider for only those intervals nested in . Refer to Fig. 4 for an illustration. The value of is determined using an auxiliary recurrence for and the weight resulting from the choice of :

(1) |

For a fixed interval the value represents the weight of an optimal solution of . To simplify the definition of recurrence we define the set with , in which we collect all values for pairs composed of and an interval in (see Fig. 4(c)) as

(2) |

The main idea of the definition of is a maximization step over the already computed sub-solutions that may be composed to an optimal solution for . To stop the recurrence we set and for every end-point of an interval we set . It remains to define the recurrence for the start-point of each interval :

(3) |

Figure 4 depicts which of the possible configurations of selected intervals is represented by which values in the maximization step of Recurrence 3. The first option (Fig. 4(a)) is to discard the interval , the second option (Fig. 4(b)) is to select as a single interval, and the third option (Fig. 4(c)) is to select and an interval in its forward overlap set. Let be a set of intervals and , then the value can be computed in time assuming all and values are computed for , and .

###### Proof.

Recurrence (1) is correct if is exactly the weight of a max-weight 1-overlap set on the set , the set of nested intervals of . The proof is by induction over the number of intervals in . In case is empty and with Recurrence (1) is correct.

Now let consist of one or more intervals. By Lemma 4.2 there can only be three cases of how an interval contributes. We can decide to discard , to add it as a singleton interval which allows us to split along or to add an overlapping pair such that and split along .

For the start-point of an interval the maximization in the definition of in Recurrence (3) exactly considers these three possibilities (recall Fig. 4). For all end-points aside from we simply use the value of the next start-point or which ends the recurrence. Since all and are computed for , and the auxiliary table is computed in one iteration across .

The overall running time is dominated by traversing the sets, which contain at most values. This has to be done for every start-point of an interval in which leads to an overall computation time of for . ∎

Until now we only considered computing the value of a single interval, but we still need to compute for pairs of overlapping intervals. Let be two intervals such that . If we split along these two intervals we find three independent regions (recall Fig. 4(c)) and obtain

(4) |

The auxiliary recurrences are defined for the three independent regions in the very same way as above with the exception that and . Hence, following essentially the same proof as in Lemma 4 we obtain Let be a set of intervals and with , then can be computed in time assuming all and values are computed for , and .

Let be a set of intervals. The values for all and all pairs with can be computed in time.

###### Proof.

For an interval the value is computed in time by Lemma 4. With the claim follows for all .

In the second phase of our algorithm we compute the maximum weight of a 1-overlap set for by defining another recurrence for and re-using the values. The recurrence for is defined similarly to the recurrence of above. We set . Let be an interval and , then

(5) |

where is defined analogously to by replacing the recurrence with in Equation 2. The maximum weight of a 1-overlap set for is found in .

A max-weight 1-overlap set for a set of intervals can be computed in time, where is the total interval length and is the maximum degree of the corresponding overlap graph.

###### Proof.

The time to compute all values is with Lemma 4.3. As argued the optimal solution is found by computing . The time to compute in Recurrence (5) is again dominated by the maximization, which itself is dominated by the evaluation of the sets. The size of these sets is exactly times the sum we bounded in Lemma 3. So the total time to compute is . Hence the total running time is . From and we obtain the coarser bound .

It remains to show the correctness of Recurrence (5). Again we can treat it with the same induction used in the proof of Lemma 4. To see this we introduce an interval with weight zero. Now the computation of the maximum weight of a 1-overlap set for is the same as computing all values for the instance . Using standard backtracking, the same algorithm can be used to compute the max-weight 1-overlap set instead of only its weight. ∎

### 4.4 An -algorithm for max-weight -overlap sets

In this section we generalize our algorithm to . While it is not possible to directly generalize Recurrences (3) and (5) we do use similar concepts. The difficulty for is that the solution can have arbitrarily large connected parts, e.g., a 2-overlap set can include arbitrarily long paths and cycles. So we can no longer partition an instance along connected components into a constant number of independent sub-instances as we did for the case . Due to space constraints we only sketch the main ideas here and refer the reader to Appendix A for all omitted proofs.

We first generalize the definition of . Let be a set of intervals as before and . We define the value as the maximum weight of a -overlap set on that includes in the -overlap set (if one exists). When computing such a value , we consider all subsets of cardinality of at most neighbors of to be included in a -overlap set, while is excluded.

For keeping track of how many intervals are still allowed to overlap each interval we introduce the *capacity* of each interval boundary

. These capacities are stored in a vector

, where each is the capacity of the interval boundary . Each is basically a value in the set that indicates how many additional intervals may still overlap the interval corresponding to , see Fig. 5. We actually define as the maximum weight of a -overlap set in with pre-defined capacities . In the appendix we prove that the number of relevant vectors to consider for each interval can be bounded by , where is the maximum degree of the overlap graph corresponding to .For our recursive definition we assume that when computing all values with and are already computed. The following recurrence computes one value given a valid capacity vector and an interval

(6) |

This means that we select for the -overlap set, add its weight , and recursively solve the subinstance of intervals nested in subject to the capacities . As in the approach for the values the main work is done in recurrence where . In the appendix we prove Lemma A, which shows the correctness of this computation using a similar induction-based proof as Lemma 4 for , but being more careful with the computation of the correct weights. Lemma 4.4 is a simplified version of Lemma A. Let be a set of intervals, , a valid capacity vector for , and the maximum degree of the corresponding overlap graph. Then can be computed in time once the values are computed for all with . Applying Lemma 4.4 to all and all valid capacity vectors results in a running time of to compute all values, where is the total interval length (see Lemma A in Appendix A).

Now that we know how to compute all values for all and all relevant capacity vectors , we can obtain the optimal solution by introducing a dummy interval with weight that nests the entire set . We compute the value for a capacity vector that puts no prior restrictions on the intervals in . This solution obviously contains the max-weight -overlap set for . We summarize:

[] A max-weight -overlap set for a set of intervals can be computed in time, where is the total interval length and is the maximum degree of the corresponding overlap graph.

The running time in Theorem 5 implies that both the max-weight -overlap set problem and the equivalent -BDMWIS problem for circle (overlap) graphs are in .^{2}^{2}2The class contains problems that can be solved in time , where is the input size, is a parameter, and is a computable function. This fact alone can alternatively be derived from a metatheorem of Fomin et al. [6] as follows.^{3}^{3}3We thank an anonymous reviewer of an earlier version for pointing us to this fact.
The number of minimal separators of circle graphs can be polynomially bounded by as shown by Kloks [14]. Further, since we are interested in a bounded-degree induced subgraph of a circle graph , we know from Gaspers et al. [9] that has treewidth at most four times the maximum degree . With these two pre-conditions the metatheorem of Fomin et al. [6] yields the existence of an -time algorithm for -BDMWIS on circle graphs.
However, the running time obtained from Fomin et al. [6] is where is the number of potential cliques in , is the treewidth of with being the solution set, and is a tower function depending only on and the CMSO (Counting Monadic Second Order Logic) formula (compare Thomas [22] proving this already for MSO formulas). Let be the desired degree of a -BDMWIS instance, then the treewidth of is at most . Further by Kloks [14] we know . Hence the running-time of the algorithm would be in , whereas our problem-specific algorithm has running time .

## 5 Experiments

We implemented the algorithm for -BDMWIS from Section 4.3 and the independent set algorithm for -BDMWIS in C++. The compiler was g++, version with set -O flag. Further we used the OGDF library [4] in its most current snapshot version. Experiments were run on a standard desktop computer with an eight core Intel i7-6700 CPU clocked at GHz and GB RAM, running Archlinux and kernel version . The implementation is available under https://www.ac.tuwien.ac.at/two-sided-layouts/.

We generated two sets of random biconnected graphs using OGDF. The first set has and the second different non-planar graphs. We varied the edge to vertex ratio between and and the number of vertices between 20 and 60. In addition, we used the Rome graph library (http://www.graphdrawing.org/data.html) consisting of non-planar graphs with a density of to and 10 to 100 vertices. The relative sparsity of the test instances is not a drawback, since it is impractical to use circular layouts for visualizing very dense graphs. For dense graphs one would have to apply some form of bundling strategy to reduce edge clutter. Given such a bundled layout one could consider minimizing bundled crossings [1] and adapt our algorithms to the resulting “bundled” circle graph.

For the random test graphs Fig. 6 displays the percentage of crossings saved by the layouts with exterior edges versus the one-sided circular layout implemented in OGDF. Compared to the approach without exterior crossings we find that allowing up to one crossing per edge in the exterior one can save around 11% more crossings on average for the random instances and % for the Rome graphs. Setting the edge weight in -BDMWIS to one (i.e., counting exterior crossings in the optimization) or two (i.e., not counting exterior crossings in the optimization), has (almost) no noticeable effect.

Figure 6 depicts the times needed to compute the layouts for the respective densities. We observe the expected behaviour. The case of with time is a lot faster as the graphs get more dense. Still for our sparse test instances our algorithm for -BDMWIS with time runs sufficiently fast to be used on graphs with up to vertices ( seconds on average). For additional plots we refer to Appendix B.

Our tests show a clear improvement in crossing reduction when going from to . Of course this comes with a non-negligible runtime increase. For the practically interesting sparse instances, though, -BDMWIS can be solved fast enough to be useful in practice.

## 6 Open questions

The overall hardness of the -BDMWIS problem on circle graphs, parametrized by just the desired degree remains open. While we could show -hardness, we do not know whether an -algorithm exists or whether the problem is -hard. In terms of the motivating graph layout problem crossing minimization is known as a major factor for readability. Yet, practical two-sided layout algorithms must also apply suitable vertex-ordering heuristics and they should further take into account the length and actual routing of exterior edges. Edge bundling approaches for both interior and exterior edges promise to further reduce visual clutter, but then bundling and bundled crossing minimization should be considered simultaneously. It would also be interesting to generalize the problem from circular layouts to other layout types, where many but not necessarily all vertices can be fixed on a boundary curve.

## References

- [1] Md Jawaherul Alam, Martin Fink, and Sergey Pupyrev. The bundled crossing number. In Y. Hu and M. Nöllenburg, editors, Graph Drawing and Network Visualization (GD’16), volume 9801 of LNCS, pages 399–412. Springer, 2016.
- [2] Michael Baur and Ulrik Brandes. Crossing reduction in circular layouts. In Graph-Theoretic Concepts in Computer Science (WG’04), volume 3353 of LNCS, pages 332–343. Springer, 2004.
- [3] Nadja Betzler, Robert Bredereck, Rolf Niedermeier, and Johannes Uhlmann. On bounded-degree vertex deletion parameterized by treewidth. Discrete Applied Mathematics, 160(1–2):53–60, 2012.
- [4] Markus Chimani, Carsten Gutwenger, Michael Jünger, Gunnar W Klau, Karsten Klein, and Petra Mutzel. The open graph drawing framework (OGDF). In R. Tamassia, editor, Handbook of Graph Drawing and Visualization, chapter 17, pages 543–569. CRC Press, 2013.
- [5] Anders Dessmark, Klaus Jansen, and Andrzej Lingas. The maximum -dependent and -dependent set problem. In K. W. Ng, P. Raghavan, N. V. Balasubramanian, and F. Y. L. Chin, editors, Algorithms and Computation (ISAAC’93), volume 762 of LNCS, pages 88–97. Springer, 1993.
- [6] Fedor V Fomin, Ioan Todinca, and Yngve Villanger. Large induced subgraphs via triangulations and CMSO. SIAM J. Computing, 44(1):54–87, 2015.
- [7] Robert Ganian, Fabian Klute, and Sebastian Ordyniak. On Structural Parameterizations of the Bounded-Degree Vertex Deletion Problem. In Theoretical Aspects of Computer Science (STACS’18), volume 96 of Leibniz International Proceedings in Informatics (LIPIcs), pages 33:1–33:14, 2018.
- [8] Emden R Gansner and Yehuda Koren. Improved circular layouts. In Graph Drawing (GD’06), volume 4372 of LNCS, pages 386–398. Springer, 2007.
- [9] Serge Gaspers, Dieter Kratsch, Mathieu Liedloff, and Ioan Todinca. Exponential time algorithms for the minimum dominating set problem on some graph classes. ACM Trans. Algorithms, 6(1):9:1–9:21, 2009.
- [10] Fanika Gavril. Algorithms for a maximum clique and a maximum independent set of a circle graph. Networks, 3(3):261–273, 1973.
- [11] Michael Jünger and Petra Mutzel, editors. Graph Drawing Software. Mathematics and Visualization. Springer, 2004.
- [12] J Mark Keil. The complexity of domination problems in circle graphs. Discrete Applied Mathematics, 42(1):51–63, 1993.
- [13] Jonathan Klawitter, Tamara Mchedlidze, and Martin Nöllenburg. Experimental evaluation of book drawing algorithms. In F. Frati and K.-L. Ma, editors, Graph Drawing and Network Visualization (GD’17), volume 10692 of LNCS, pages 224–238. Springer, 2018.
- [14] Ton Kloks. Treewidth of circle graphs. International J. Foundations of Computer Science, 7(02):111–120, 1996.
- [15] Stephen G. Kobourov, Giuseppe Liotta, and Fabrizio Montecchiani. An annotated bibliography on 1-planarity. CoRR, abs/1703.02261, 2017. arXiv:1703.02261.
- [16] Martin I. Krzywinski, Jacqueline E. Schein, Inanc Birol, Joseph Connors, Randy Gascoyne, Doug Horsman, Steven J. Jones, and Marco A. Marra. Circos: An information aesthetic for comparative genomics. Genome Research, 19:1639–1645, 2009.
- [17] Giuseppe Liotta. Graph drawing beyond planarity: some results and open problems. In Italian Conference on Theoretical Computer Science (ICTCS’14), pages 3–8, 2014.
- [18] Sumio Masuda, Toshinobu Kashiwabara, Kazuo Nakajima, and Toshio Fujisawa. On the NP-completeness of a computer network layout problem. In Circuits and Systems (ISCAS’87), pages 292–295. IEEE, 1987.
- [19] Sumio Masuda, Kazuo Nakajima, Toshinobu Kashiwabara, and Toshio Fujisawa. Crossing minimization in linear embeddings of graphs. IEEE Trans. Computers, 39(1):124–127, 1990.
- [20] Farhad Shahrokhi, László A. Székely, Ondrej Sýkora, and Imrich Vrt’o. The book crossing number of a graph. J. Graph Theory, 21(4):413–424, 1996.
- [21] Janet M. Six and Ioannis G. Tollis. Circular drawing algorithms. In R. Tamassia, editor, Handbook of Graph Drawing and Visualization, chapter 9, pages 285–315. CRC Press, 2013.
- [22] Wolfgang Thomas. Languages, automata, and logic. Handbook of formal languages, 3:389–455, 1996.
- [23] Gabriel Valiente. A new simple algorithm for the maximum-weight independent set problem on circle graphs. In Algorithms and Computation (ISAAC’03), volume 2906 of LNCS, pages 129–137. Springer, 2003.
- [24] Mihalis Yannakakis. Node- and edge-deletion NP-complete problems. In Theory of Computing (STOC’78), pages 253–264. ACM, 1978.

## Appendix A Omitted proofs from Section 4.4

We start by describing the capacity vectors in more detail.
Each capacity is a value in the set . If we call it *undefined*, i.e., no decision about its interval has been made. If we say it has *unlimited* capacity, which means that the corresponding interval is not selected for the candidate solution. Finally if we say it has capacity , meaning that we can still add more intervals which overlap the interval corresponding to , recall Fig. 5.

For an interval we use the short-hand notation to state that and ; likewise we use to state that and .

We say a capacity vector is *valid for interval * if both capacities and at most intervals have .
We say is *valid for * if it is valid for every .

Let be a set of intervals, and a valid capacity vector for such that . Then is a *legal successor* of for (written ) if there is a set with such that for all we have , for all we have and such that for all

where , , and .

Intuitively, a legal successor of a valid capacity vector for fixes the interval to be in the considered -overlap set and determines for all intervals whether they are selected for the -overlap set () or not (). All affected capacities are updated accordingly. Capacities can only be decreased and if an interval has been discarded previously in , i.e., , then it cannot be contained in .

Let be a set of intervals, and a valid capacity vector for , then

is the set of all legal successors of for .

We now assume that all with and are already computed. The following recurrence computes one value given a valid capacity vector and an interval

(7) |

It remains to describe the computation of the recurrence for . To consider the correct weight for the optimal solution we have to pay attention whenever a capacity is changed from to some . We introduce the following notation for the set of all intervals changed between capacity vectors and

and for the set of all intervals overlapping a given interval, but not in the set