Given a list of pairs (source , sink ) in an undirected edge-weighted graph , the minimum multicut problem (MinMC) consists in selecting a set of edges of minimum total weight in , in such a way that removing these edges leaves no path between and for each . As the weight of each edge is commonly assumed to be a rational number, we can actually assume without loss of generality that each is an integer (by multiplying all ’s by one sufficiently large integer).
A well-known special case of MinMC is the minimum multiway cut problem, or minimum multiterminal cut problem (MinMTC): in any instance of this problem, we are given a set of terminals , and the source-sink pairs in the associated MinMC instance are for .
We shall only consider undirected graphs here. When , MinMC (which is then equivalent to MinMTC with ) turns into the famous minimum cut problem, and can therefore be solved in polynomial time. Moreover, MinMC remains polynomial-time solvable when . However, MinMTC is APX-hard for any fixed value of : note that, when , MinMTC is actually a special case of MinMC with .
When is part of the input, MinMC is tractable in chains, but APX-hard even in stars with weights 1 , and hence also in planar graphs where all sources and sinks lie on the outer face. However, when , it becomes tractable in trees, and even in graphs of bounded tree-width .
Some results are known about the parameterized complexity of MinMC. For instance, it is known to be FPT with respect to the solution size [4, 13], but we are not aware of any non-trivial FPT result when the parameter to be considered is . Recall that a problem parameterized by some parameter is FPT with respect to if it admits an FPT algorithm with respect to , i.e., an algorithm solving it in time , where is some computable function of , is the input size, and is a constant independent of .
Let us now turn to the case where is planar. On the one hand, when all sources and sinks lie on the outer face, it was proved that, unlike MinMC, MinMTC can be solved in polynomial time, even when is part of the input . On the other hand, when sources and sinks can lie anywhere, it was proved in  that, under the Exponential Time Hypothesis (ETH), MinMTC cannot be FPT with respect to in planar graphs. Hence, under the same hypothesis, MinMC cannot be FPT with respect to in these graphs. However, when , it was proved that MinMC is polynomial-time solvable in planar graphs if all sources and sinks lie on the outer face , and later it was proved that MinMC remains polynomial-time solvable in planar graphs even when sources and sinks can lie anywhere [3, 6]. (It was already known for MinMTC in planar graphs when .)
In the present paper, we prove the first non-trivial FPT result concerning MinMC parameterized by only, and at the same time settle the last case left open by the results shown in [2, 3, 6, 12]. Namely, we show that MinMC is FPT with respect to when is planar and all sources and sinks lie on its outer face. In order to do this, we provide a new characterization of optimal solutions for MinMC in such graphs, on which our algorithm is based.
In , it was proved that any MinMC instance in such a graph can be reduced to a set of MinMTC instances in planar graphs (i.e., where sources and sinks can lie anywhere). Actually, a limited number of configurations were enumerated, and for each configuration one planar MinMTC instance was solved (using a non-FPT algorithm, such as the one in ).
Here, we prove a stronger result: there exist optimal multicuts such that some part (i.e., some of the edges) of such a solution actually defines an optimal solution for a MinMTC instance, obtained in the same graph by removing some of the sources and sinks (or, equivalently, by keeping only some of them). (In practice, determining the sources and sinks that belong to this MinMTC instance requires some enumeration, but fortunately it can be done in FPT time.) In the MinMTC instance obtained in this way, all terminals lie on the outer face (and hence we can use the polynomial-time algorithm given in ). Moreover, removing the edges of the optimal solution for this MinMTC instance cuts the initial graph into several pieces (i.e., connected components), which can then be solved recursively as smaller MinMC instances satisfying the same assumptions as the initial one.
The proposed algorithm is thus based on a divide-and-conquer approach: we enumerate a limited (but larger than in , as we will need to “guess” slightly more information) number of configurations, and for each one we solve a set of planar MinMTC instances (and not one planar MinMTC instance anymore), in which, unlike in , all terminals lie on the outer face. This enables us to obtain a nearly linear-time algorithm when .
When considering any planar MinMC (or MinMTC) instance, loops and parallel edges are useless (loops can be removed, and edges having the same endpoints can be merged into a single edge, whose weight is the sum of the weights of the merged edges), and connected components actually define independent instances, so we shall assume without loss of generality that the input graph is connected and contains neither loops nor parallel edges, and that it is already embedded in the plane without crossings (and with all the sources/sinks or terminals lying on the outer face, if needed).
Furthermore, as in  (where all the necessary details are provided), we assume without loss of generality that all terminals are distinct and that the input graph is 2-vertex-connected (which can easily be achieved in linear time by doubling all edge weights, then obtaining a 2-edge-connected graph, and finally replacing any articulation vertex by a cycle). This means, in particular, that the boundary of the outer face is a simple cycle.
2 A reformulation using clusterings
The starting point of our FPT algorithm is basically the same as in : in any connected graph (planar or not), removing the edges of any optimal multicut yields several connected components, each of them containing at least one source or sink. The sources/sinks belonging to a same connected component define a cluster. We shall call such a set of clusters a clustering (a clustering is thus a partition of the sources and sinks), and we shall say that the considered solution induces these clusters (and the connected components containing them), or equivalently this clustering.
Hence, finding an optimal multicut is equivalent to finding a set of edges of minimum total weight that isolates all the clusters of the clustering induced by this optimal multicut. By definition, this clustering is such that no cluster contains both and for each . In practice (i.e., from an algorithmic point of view), since we do not know this clustering as long as we do not know the optimal multicut itself, we need to enumerate all possible clusterings in order to ensure that the one induced by the optimal solution we are looking for will be considered as well.
The number of possible clusterings only depends on the number of source-sink pairs: in other words, it is FPT with respect to (we shall give more details later). This immediately implies that MinMC can be reduced in FPT time (with respect to ) to the following problem, called the minimum multi-cluster cut problem (MinMCC): given sets (or clusters) of terminals in an edge-weighted graph , find a set of edges of minimum total weight in , in such a way that removing these edges leaves no path between any vertex in and any vertex in , for any . When for each , MinMCC simply turns into MinMTC. Also note that MinMCC is actually a special case of MinMC, in which the source-sink pairs are , for each and each and .
In the remainder of this paper, we shall focus on solving MinMCC in FPT time (with respect to ), and this will immediately enable us to solve MinMC in FPT time (with respect to ) as well. Indeed, it is not hard to see that the above-mentioned reduction from MinMC to MinMCC is actually an FPT-reduction, as we have . One can even show a sharper bound on : we have actually , and this bound is tight (to see this, simply consider a chain with vertices, in the order , where the only optimal multicut induces clusters). This will not have any significant impact on the asymptotic running time of our algorithm, but we give a short proof of this fact anyway, for the sake of completeness.
Assume by contradiction that, in a given instance of MinMC, there exists an optimal multicut inducing at least connected components. Any edge of this optimal multicut lies between two of these connected components, and there must exist an such that one component contains and the other (otherwise, this edge would be useless). Hence, when adding to the (at least) connected components induced by such an optimal multicut the edges lying between the two connected components containing and (if there exist such edges), we obtain at least connected components. We do the same for and (adding edges of the optimal multicut only if they have not already been added so far), and then for each and for from to . In the end, we have all the edges from the initial graph, and we have reduced by at most the number of connected components. Therefore, there remain at least two connected components, which contradicts the fact that the initial graph was connected.
3 A characterization using planar duality
Let us now consider planar duality. It is well-known that, to any planar graph embedded in the plane, one can associate a dual planar graph . More precisely, to any face in corresponds a vertex (called a dual vertex) in , and any (dual) edge between two dual vertices corresponds to the edge (or one of the edges, if there are more than one) shared by the corresponding faces in . This also holds for the outer face of . Furthermore, since is 2-vertex-connected, there exists no edge belonging to only one face.
Given an optimal solution for a MinMCC instance in a planar graph , we shall denote by the set of dual edges corresponding to in the dual graph , and, for each , by the set of vertices of the th connected component induced by , and by the set of edges of having exactly one endpoint in . It is well-known that , the set of dual edges corresponding to each , is a set of (non necessarily simple) cycles in .
Moreover, if we look at the embedding of as a set of curves in the plane (which intersect at the dual vertices), then each is represented by a set of closed curves, denoted by . Each is actually composed of one or several simple cycles , i.e., each is composed of one or several simple closed curves . By the Jordan curve theorem, each such simple closed curve divides the plane into an interior region and an exterior region (a region being a set of points such that any two of these points can be linked by a curve without crossing any closed curve): intuitively, the interior region is the region of the plane that is enclosed by (or that lies inside) this closed curve. The ’s thus partition the plane into several regions. Among all these regions, there is one and only one that is unbounded (and one and only one is associated with it, i.e., contains all the curves adjacent to this region). Actually, the ’s may be seen as defining the boundary of the ’s, that form a partition of the vertex set of , and hence the interior regions of any two distinct simple closed curves that compose them cannot overlap (except if one lies inside the other).
The following lemma summarizes well-known facts for planar MinMCC:
Given a MinMCC instance in a planar graph , any optimal solution for this instance satisfies the following properties:
for each and for any , either the interior regions of and are disjoint, or one lies inside the other,
each , except the one associated with the unbounded region, contains one simple closed curve, say , such that all the vertices of lie inside , but not inside for any ,
for each , except the one associated with the unbounded region, and for each , lies inside , and, for each and with , the interior regions of and are disjoint.
Each of these three properties has been more or less explicitly proved or used for solving MinM(T)C or MinMCC in planar graphs in [3, 6, 8]. Property is clear from , and we will justify the other two briefly.
Concerning Property , it was noticed in  for MinMTC (and it can easily be extended to MinMCC) that, except for the associated with the unbounded region, each must enclose a region containing the terminals in . By definition, this region lies inside either the interior region or the exterior region associated with each . Obviously, it cannot lie inside several of these interior regions: indeed, from Property , for any two of these interior regions, either they are disjoint (and thus it is clearly not possible), or one lies inside the other (and thus this other one is useless). Therefore, for each , the region containing the terminals in lies inside one of these interior regions (the one associated with ) and outside all the other interior regions (or, equivalently, inside all the other exterior regions).
Concerning Property , it is sufficient to notice that, from Property , the only way for the interior region of to intersect the exterior region of for any is to have lying inside for any . Moreover, this also implies that for any and with , and , the interior region of one cannot lie inside the interior region of the other, and hence, from Property , they must be disjoint. ∎
For the special case considered here, we can prove the following lemma:
Given a MinMCC instance in a planar graph where all the terminals lie on the outer face, any optimal solution is such that each contains the dual vertex corresponding to the outer face of , and, for each , any two ’s have only this vertex in common.
We begin by proving the first part of the statement. If some did not contain the dual vertex corresponding to the outer face of , then the interior region of would not enclose any terminal (as any terminal lies on the outer face of ), and hence it would be useless in an optimal solution.
Moreover, it is easy to see that, for each , any two ’s have at most one vertex in common, even in the case where the terminals can lie anywhere in the planar graph (and hence, in our special case, they have exactly one vertex in common). Indeed, if two ’s had two or more vertices in common, then they could not belong to the boundary of a single region. ∎
Lemma 2 implies, in particular, that, if the input graph is planar and any terminal lies on the outer face, then any , including the one associated with the unbounded region, actually consists of a single closed curve (that may not be simple). Let us assume without loss of generality that the closed curve associated with the unbounded region is . From Lemma 1, we call a cluster with a top cluster if there is no with such that lies inside . (Besides, will be referred to as a top cluster as well.)
This notion can be interpreted in the initial graph as well. For each and each , let be the set of edges in associated with . Removing from the edges of any for yields two connected components: one that contains the vertices in (and possibly vertices from other clusters), and one that does not. We shall denote the former one by : we have for each . Then, with is a top cluster if is not contained in any for and . In other words, the vertices of any with such that is not a top cluster are included in some with and . As such, any such that is a top cluster and can be viewed as a maximal inclusion-wise connected component among the ’s.
However, this notion is still not strong enough to state our main result. We refine it as follows. Take any top cluster except (say, ), and define it as a good top cluster. Then, we define the other good top clusters iteratively: any top cluster such that with has at least one edge in common with for some good top cluster with will also be defined as a good top cluster. (Besides, will be defined as a good top cluster as well.)
All the previous notions are illustrated in Figure 1, where the terminals are the small black rectangles, while the other vertices are the small black circles. The clusters are numbered from 1 to 9, and any terminal is labeled by the number of the cluster it belongs to. The dual vertices and edges associated with the optimal solution drawn in Figure 1 are respectively the small grey diamonds and the grey dashed lines. The top clusters are numbered 1, 2, 5, 7 and 8, and the good top ones are numbered 1, 2 and 5 (another possible choice would be the ones numbered 1, 7 and 8). Moreover, the big grey diamond is the dual vertex associated with the outer face, and the three ’s are indicated on the associated dual edges, as well as some other ’s.
Our main result is the following lemma:
Assume we are given a MinMCC instance in a planar graph where any terminal lies on the outer face, and let be an optimal solution for . Then, is an optimal solution for the MinMTC instance obtained as follows: the input graph is the graph without the edges in , and with one terminal for each good top cluster, and all the terminals lie on the outer face.
Consider the planar graph as defined above, and assume that the embedding of is computed by taking the one of and then simply removing the edges in . Clearly, if, for each good top cluster , we add in a new vertex (called a cluster vertex) linked by an edge (called a cluster edge) having a sufficiently large weight to each terminal of (assume for now that it can be done in such a way that holds), then, by the definitions of and , removing the edges in leaves no path between any two cluster vertices. In other words, is actually a feasible solution to .
Moreover, any edge in lies between two connected components associated with two good top clusters. Indeed, on the one hand, by definition of a good top cluster, such an edge cannot belong to (and hence, from Property in Lemma 1, to ) for some top cluster which is not good. On the other hand, from Property in Lemma 1 and the definition of a top cluster, a connected component associated with a non top cluster lies inside a closed curve of the form for some , where is such that is a top cluster. From Lemma 2, the set of edges associated with such a closed curve has one and only one vertex in common with any other , and hence, in particular, shares no edge with .
This implies that in there is no path from any terminal of any good top cluster to any other terminal, except for the terminals of any other good top cluster. Therefore, replacing in by any feasible solution to , whose total weight does not exceed the one of and that contains no cluster edge, yields another feasible solution to in which is at least as good as . As is an optimal solution to , and as any optimal solution to contains no cluster edge (their common weight being too large), this implies in particular that is an optimal solution to .
It remains to prove the last part of the lemma: namely, let us prove that we can add the cluster vertices and edges in such a way that holds.
To do this, we shall proceed in a way similar to the one described in : the claim that the cluster vertices can then be assumed to lie on the outer face will simply come from the fact that, unlike in , there is not a cluster vertex associated with each cluster, but only with each good top one. To describe our way of achieving this, we shall need some additional definitions.
Clearly, from the definition of a top cluster, all the terminals of such a cluster, except , are consecutive on the outer face (among all the terminals of top clusters), as otherwise would lie inside for two distinct top clusters and with and , which would be a contradiction. Therefore, if we go through the outer face of the graph clockwise (which can be done in a well-defined way, as is 2-vertex-connected), then, for each top cluster of with , there is a “first” terminal of this cluster that is encountered when doing so while staying inside . In other words, each such top cluster has a unique terminal (which we shall call the first terminal of ) from which we can encounter every other terminal of by going through the outer face of the graph clockwise and without leaving the interior region of . From this first terminal, we can then define a unique ordering of the other terminals of , which is simply the order in which they are encountered while going through this outer face clockwise.
We can define the first (and last) terminal of in a similar way, i.e., as the unique terminal of from which we can encounter every other terminal of by going through the outer face of the graph clockwise and without entering the interior region of for any good top cluster with . Such a first terminal exists, as otherwise it would mean that, among the terminals in the good top clusters, the terminals in are not consecutive on the outer face. In other words, it would mean that, for any choice of a first terminal of , there is a good top cluster with (resp. another good top cluster with and ) whose terminals are encountered while going clockwise (resp. counterclockwise) from the first terminal of to its last one on the outer face. However, and for such and could not share an edge (as otherwise either the first or the last terminal of would lie inside a closed curve belonging to , contradicting the definition of ), which would contradict the fact that and are good.
Hence, the point of introducing the notion of good top clusters is to extend the consecutiveness property associated with top clusters, even when considering the cluster . In other words, all the terminals of any good top cluster are consecutive on the outer face among all the terminals of good top clusters. The notion of first vertices is illustrated in Figure 1, where the first vertex of each of the three good top clusters (numbered 1, 2 and 5) in the optimal solution to the considered instance is indicated as follows: the number of the corresponding cluster is underlined and written in bold.
Now we can proceed almost as in . For each good top cluster of that contains at least two terminals (otherwise, there is nothing to do), we draw a curve (called a cluster curve) from the first terminal of to its last one. Thanks to the consecutiveness property associated with good top clusters, these curves can easily be drawn in such a way that no two of them intersect, and the curve corresponding to each must be homotopic, with respect to the boundary of the outer face of , to the chain that goes clockwise from the first terminal of to its last one, and uses only vertices lying on the boundary of this outer face. As in , being homotopic means that it can be continuously transformed into without being blocked by the boundary of this outer face while doing so (see also ).
Then, we let each cluster vertex lie on the associated cluster curve, and add the cluster edges, in such a way that they do not intersect and all lie inside the region bounded by the cluster curve and . This allows us to conclude that, after adding the cluster vertices and edges as above, all the cluster vertices do lie on the outer face, which ends the proof. ∎
4 Crafting the algorithm
We now focus on using the results from the two previous sections to come up with an algorithm solving MinMC in time FPT with respect to .
Let be an instance of MinMC in a planar graph where all sources and sinks lie on the outer face, and let be an optimal multicut for ( exists, even if we do not know it yet explicitly).
First of all, we can “guess” the clustering associated with by enumerating all the possible clusterings containing at most clusters, and this can be done in time FPT with respect to (see Section 2).
Then, we have to know the structure of the clusters in , i.e., in particular, which clusters are the top ones, and which are the good top ones (see Section 3): we can “guess” this structure by using another enumeration (which, again, can be done in time FPT with respect to ).
Moreover, recall from the proof of Lemma 3 in Section 3 that, if we go through the outer face of the input graph clockwise, then, for each good top cluster of with , there is a first terminal lying inside that is encountered while doing so (a similar notion of a first terminal holds for as well). As mentioned in this proof, we will need to know this terminal in order to ensure that, in the planar MinMTC instance that we will construct, all the terminals will lie on the outer face.
Again, for each good top cluster , we can “guess” such a terminal by enumerating all the possibilities (i.e., trying the terminals of one by one). Once we know the first terminal of each such cluster, we can construct a planar MinMTC instance as explained in the proof of Lemma 3.
By solving the above-defined planar MinMTC instance (where all the terminals lie on the outer face), we obtain from Lemma 3 a set of edges that we can use to replace in . However, the main drawback of Lemma 3 is that it considers a MinMTC instance defined on a graph that is obtained from the input graph , but that we do not know explicitly (as it would require to already know some part of an optimal solution). We now show how we can overcome this issue, by considering a particular optimal solution to the MinMCC instance we wish to solve:
Assume we are given a MinMC instance in a planar graph where all the sources and sinks lie on the outer face, and consider an optimal solution for that induces the maximum number of clusters. Then, is an optimal solution for the MinMTC instance obtained as follows: the input graph is , with one additional terminal for each good top cluster, and all the terminals lie on the outer face.
From Lemma 3, we just have to prove that, in this case (i.e., when we consider an optimal solution to inducing the maximum number of connected components), we do not have to know explicitly in order to define . In other words, that any optimal solution to does not interact with , i.e., does not share any edge with it. If these sets of edges did intersect, then from the proof of Lemma 3 this would yield another optimal solution for , that would induce more connected components than does, contradicting the choice of . ∎
Since the first step of our algorithm is to enumerate all the possible clusterings containing at most clusters, we will in particular consider the one associated with such an optimal solution .
By solving the above-defined planar MinMTC instance with vertices (where all the terminals lie on the outer face), which can be done in time thanks to the algorithm proposed in , we obtain from this corollary a set of edges that we can use to replace in , and, furthermore, that does not intersect . Moreover, the graph of this instance is obtained from simply by adding cluster vertices and edges, and hence we do not have to know explicitly. After removing from , we obtain two or more connected components (and hence knowing explicitly or not is irrelevant).
These components, in turn, define smaller MinMCC instances, which can then be solved recursively by using the same strategy as above (without the first step, where we guessed the clustering), in a divide-and-conquer way. Each time an instance is solved, the number of connected components increases by at least one: as contains at most such components, there is a total of at most instances to be solved.
Putting all together, we obtain the following algorithm , which makes a call to another algorithm, that will be detailed after :
Input: A connected planar graph with vertices, and a set of source-sink pairs lying on the outer face of .
Output: An optimal multicut for the input graph.
For each clustering containing terminals and clusters do:
Build the associated planar MinMCC instance, where any terminal lies on the outer face of , and the clusters are ,
Run Algorithm , and store its output.
Output the best feasible solution found.
Observe that the input of Algorithm is a MinMC instance, while the input of Algorithm will be a MinMCC instance. If a given clustering is induced by an optimal multicut but does not contain the maximum number of clusters, then the solution computed by for this cluster may not be optimal (which simply means that we need to consider another clustering).
Moreover, in Algorithm , each call to Algorithm is actually the first call of a series of recursive calls. In other words, Algorithm is a recursive algorithm, that can be described as follows:
Input: A connected planar graph with vertices, and a set of clusters of terminals, all lying on the outer face of .
Output: An optimal multi-cluster cut for the input graph.
For each possible choice of good top clusters among all the clusters of the clustering , and for each possible choice of first terminals for all these good top clusters, do:
Construct and solve the associated planar MinMTC instance, where the terminals, that are the cluster vertices associated with the good top clusters, all lie on the outer face (see Corollary 1),
Remove from the input graph the edges of the optimal solution computed above, obtaining several connected components , and then store these edges in the current solution,
For each of these connected components that contains the terminals of at least two clusters, run Algorithm , where is the set of clusters whose terminals belong to , and then add the associated output to the current solution.
Output the best feasible solution found.
Thanks to the above discussion, it should be clear that Algorithm is correct, and runs in time , for some function to be specified, in graphs with vertices. This running time is actually obtained by multiplying the different factors associated with the successive steps:
Enumerating all the possible clusterings containing terminals and at most clusters incurs a factor , as noted in ,
Enumerating all the possible good top clusters among the (at most ) clusters of a given clustering, and then all their possible first terminals (among ), incurs a factor ,
Solving each planar MinMTC instance with all the terminals lying on the outer face can be done in time ,
Finally, there are at most such instances to solve.
The overall running time is thus , i.e., it is nearly linear when . Hence, we have proved:
In planar graphs where all sources and sinks lie on the outer face, MinMC is FPT with respect to the number of source-sink pairs.
5 Extensions and open problems
In this paper, we have provided an FPT algorithm for MinMC parameterized by the number of source-sink pairs, in the case where the input graph is planar and all the sources and sinks lie on the outer face. This algorithm actually runs in time when , where is the number of vertices of the input graph. In , it was proved that the time for solving this problem can be improved to linear when , but the proof cannot be generalized to greater values of . Therefore, this set of results leaves as open the following question: does there exist a linear-time algorithm (i.e., running in time for any ) in this case?
Moreover, our FPT algorithm can easily be extended to a generalization of MinMC, called partial MinMC (or -multicut problem ), which asks to select a minimum-weight set of edges whose removal leaves no path from to , for at least a given number of source-sink pairs . Indeed, partial MinMC can be reduced in FPT time to MinMC, by “guessing” the subset of source-sink pairs between which there will remain no path in an optimal solution (there are such possible subsets to enumerate).
Let us now consider MinMCC. On the one hand, it is easy to see that MinMCC is polynomial-time solvable in general graphs with two clusters (by reducing it to the minimum cut problem), but Dahlhaus et al. (that call it the colored multiterminal cut problem) proved in  that it is NP-hard in planar graphs, even with only four clusters (and they claimed that this remains true with only three clusters). On the other hand, when the input graph is planar and has all its terminals lying on the outer face, MinMTC (the special case of MinMCC where clusters have size 1) is polynomial-time solvable, even when is part of the input , and our FPT algorithm precisely solves MinMCC parameterized by the total number of terminals in such a graph (or, equivalently, parameterized both by the number of clusters and by the maximum number of terminals per cluster).
However, when the number of clusters is part of the input, we do not even know the complexity of MinMCC in such a graph. Observe that this question remains open even if there are terminals in each cluster.
When the number of clusters is viewed as a parameter, one may hope that our approach is able to solve the problem even when there is an arbitrary number of terminals in each cluster, as we only need to “guess” the first terminal of each good top cluster. Unfortunately, this is true only if each cluster induces exactly one connected component in any optimal solution (see Corollary 1 and the discussion preceding its statement), and hence, when such a property does not hold, this question remains open as well.
-  C. Bentz. On the complexity of the multicut problem in bounded tree-width graphs and digraphs. Discrete Applied Mathematics 156 (2008) 1908–1917.
-  C. Bentz. A simple algorithm for multicuts in planar graphs with outer terminals. Discrete Applied Mathematics 157 (2009) 1959–1964.
-  C. Bentz. A Polynomial-Time Algorithm for Planar Multicuts with Few Source-Sink Pairs. Proceedings IPEC (2012) 109–119.
-  N. Bousquet, J. Daligault and S. Thomassé. Multicut is FPT. Proceedings STOC (2011) 459–468.
-  D.Z. Chen and X. Wu. Efficient algorithms for -terminal cuts on planar graphs. Algorithmica 38 (2004) 299–316.
-  É. Colin de Verdière. Multicuts in Planar and Bounded-Genus Graphs with Bounded Number of Terminals. Algorithmica 78 (2017) 1206–1224.
-  É. Colin de Verdière and J. Erickson. Tightening Nonsimple Paths and Cycles on Surfaces. SIAM Journal on Computing 39 (2010) 3784–3813.
-  E. Dahlhaus, D.S. Johnson, C.H. Papadimitriou, P.D. Seymour and M. Yannakakis. The complexity of multiterminal cuts. SIAM Journal on Computing 23 (1994) 864–894.
-  R.G. Downey and M.R. Fellows. Parameterized Complexity. Springer-Verlag (1999).
-  N. Garg, V.V. Vazirani and M. Yannakakis. Primal-dual approximation algorithms for integral flow and multicut in trees. Algorithmica 18 (1997) 3–20.
-  D. Golovin, V. Nagarajan and M. Singh. Approximating the -multicut problem. Proceedings SODA (2006) 621–630.
-  D. Marx. A Tight Lower Bound for Planar Multiway Cut with Fixed Number of Terminals. Proceedings ICALP (2012) 677–688.
-  D. Marx and I. Razgon. Fixed-Parameter Tractability of Multicut Parameterized by the Size of the Cutset. SIAM Journal on Computing 43 (2014) 355–388.
-  M. Yannakakis, P. Kanellakis, S. Cosmadakis and C. Papadimitriou. Cutting and partitioning a graph after a fixed pattern. Proceedings ICALP, Lecture Notes in Computer Science 154 (1983) 712–722.