Samir Datta, Siddharth Iyer, R. Kulkarni, A. Mukherjee
{"title":"Shortest k-Disjoint Paths via Determinants","authors":"Samir Datta, Siddharth Iyer, R. Kulkarni, A. Mukherjee","doi":"10.4230/LIPIcs.FSTTCS.2018.19","DOIUrl":null,"url":null,"abstract":"The well-known $k$-disjoint path problem ($k$-DPP) asks for pairwise vertex-disjoint paths between $k$ specified pairs of vertices $(s_i, t_i)$ in a given graph, if they exist. The decision version of the shortest $k$-DPP asks for the length of the shortest (in terms of total length) such paths. Similarly the search and counting versions ask for one such and the number of such shortest set of paths, respectively. \nWe restrict attention to the shortest $k$-DPP instances on undirected planar graphs where all sources and sinks lie on a single face or on a pair of faces. We provide efficient sequential and parallel algorithms for the search versions of the problem answering one of the main open questions raised by Colin de Verdiere and Schrijver for the general one-face problem. We do so by providing a randomised $NC^2$ algorithm along with an $O(n^{\\omega})$ time randomised sequential algorithm. We also obtain deterministic algorithms with similar resource bounds for the counting and search versions. \nIn contrast, previously, only the sequential complexity of decision and search versions of the \"well-ordered\" case has been studied. For the one-face case, sequential versions of our routines have better running times for constantly many terminals. In addition, the earlier best known sequential algorithms (e.g. Borradaile et al.) were randomised while ours are also deterministic. \nThe algorithms are based on a bijection between a shortest $k$-tuple of disjoint paths in the given graph and cycle covers in a related digraph. This allows us to non-trivially modify established techniques relating counting cycle covers to the determinant. We further need to do a controlled inclusion-exclusion to produce a polynomial sum of determinants such that all \"bad\" cycle covers cancel out in the sum allowing us to count \"good\" cycle covers.","PeriodicalId":175000,"journal":{"name":"Foundations of Software Technology and Theoretical Computer Science","volume":"36 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2018-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"8","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Foundations of Software Technology and Theoretical Computer Science","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.4230/LIPIcs.FSTTCS.2018.19","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 8
Abstract
The well-known $k$-disjoint path problem ($k$-DPP) asks for pairwise vertex-disjoint paths between $k$ specified pairs of vertices $(s_i, t_i)$ in a given graph, if they exist. The decision version of the shortest $k$-DPP asks for the length of the shortest (in terms of total length) such paths. Similarly the search and counting versions ask for one such and the number of such shortest set of paths, respectively.
We restrict attention to the shortest $k$-DPP instances on undirected planar graphs where all sources and sinks lie on a single face or on a pair of faces. We provide efficient sequential and parallel algorithms for the search versions of the problem answering one of the main open questions raised by Colin de Verdiere and Schrijver for the general one-face problem. We do so by providing a randomised $NC^2$ algorithm along with an $O(n^{\omega})$ time randomised sequential algorithm. We also obtain deterministic algorithms with similar resource bounds for the counting and search versions.
In contrast, previously, only the sequential complexity of decision and search versions of the "well-ordered" case has been studied. For the one-face case, sequential versions of our routines have better running times for constantly many terminals. In addition, the earlier best known sequential algorithms (e.g. Borradaile et al.) were randomised while ours are also deterministic.
The algorithms are based on a bijection between a shortest $k$-tuple of disjoint paths in the given graph and cycle covers in a related digraph. This allows us to non-trivially modify established techniques relating counting cycle covers to the determinant. We further need to do a controlled inclusion-exclusion to produce a polynomial sum of determinants such that all "bad" cycle covers cancel out in the sum allowing us to count "good" cycle covers.
众所周知的$k$不相交路径问题($k$-DPP)要求给定图中$k$指定的顶点对$(s_i, t_i)$之间的成对顶点不相交路径,如果它们存在的话。最短$k$-DPP的决策版本要求获得最短路径的长度(就总长度而言)。类似地,搜索和计数版本分别要求一个这样的最短路径集和多个这样的最短路径集。我们将注意力限制在无向平面图上的最短$k$-DPP实例上,其中所有源和汇都位于单个面或一对面上。我们为问题的搜索版本提供了有效的顺序和并行算法,回答了Colin de Verdiere和Schrijver针对一般的单面问题提出的主要开放问题之一。我们通过提供随机化的$NC^2$算法以及$O(n^{\omega})$时间随机化的顺序算法来实现这一点。对于计数和搜索版本,我们也得到了具有相似资源边界的确定性算法。相比之下,以前只研究了“有序”情况下决策和搜索版本的顺序复杂性。对于单面情况,例程的顺序版本对于不断增加的多个终端具有更好的运行时间。此外,早期最著名的顺序算法(例如Borradaile等)是随机的,而我们的算法也是确定性的。该算法基于给定图中不相交路径的最短$k$元组与相关有向图中的循环覆盖之间的双射。这使我们可以不平凡地修改与计数循环覆盖和行列式相关的既定技术。我们进一步需要做一个可控的包容-排除来产生一个多项式和的行列式,这样所有的“坏”循环覆盖在总和中被抵消,允许我们计算“好的”循环覆盖。