1 research outputs found

    New routing techniques and their applications

    Full text link
    Let G=(V,E)G=(V,E) be an undirected graph with nn vertices and mm edges. We obtain the following new routing schemes: - A routing scheme for unweighted graphs that uses O~(1ϵn2/3)\tilde O(\frac{1}{\epsilon} n^{2/3}) space at each vertex and O~(1/ϵ)\tilde O(1/\epsilon)-bit headers, to route a message between any pair of vertices u,vVu,v\in V on a (2+ϵ,1)(2 + \epsilon,1)-stretch path, i.e., a path of length at most (2+ϵ)d(u,v)+1(2+\epsilon)\cdot d(u,v)+1. This should be compared to the (2,1)(2,1)-stretch and O~(n5/3)\tilde O(n^{5/3}) space distance oracle of Patrascu and Roditty [FOCS'10 and SIAM J. Comput. 2014] and to the (2,1)(2,1)-stretch routing scheme of Abraham and Gavoille [DISC'11] that uses O~(n3/4)\tilde O( n^{3/4}) space at each vertex. - A routing scheme for weighted graphs with normalized diameter DD, that uses O~(1ϵn1/3logD)\tilde O(\frac{1}{\epsilon} n^{1/3}\log D) space at each vertex and O~(1ϵlogD)\tilde O(\frac{1}{\epsilon}\log D)-bit headers, to route a message between any pair of vertices on a (5+ϵ)(5+\epsilon)-stretch path. This should be compared to the 55-stretch and O~(n4/3)\tilde O(n^{4/3}) space distance oracle of Thorup and Zwick [STOC'01 and J. ACM. 2005] and to the 77-stretch routing scheme of Thorup and Zwick [SPAA'01] that uses O~(n1/3)\tilde O( n^{1/3}) space at each vertex. Since a 55-stretch routing scheme must use tables of Ω(n1/3)\Omega( n^{1/3}) space our result is almost tight. - For an integer >1\ell>1, a routing scheme for unweighted graphs that uses O~(1ϵn/(2±1))\tilde O(\ell\frac{1}{\epsilon} n^{\ell/(2\ell \pm 1)}) space at each vertex and O~(1ϵ)\tilde O(\frac{1}{\epsilon})-bit headers, to route a message between any pair of vertices on a (3±2/+ϵ,2)(3\pm2/\ell+\epsilon,2)-stretch path. - A routing scheme for weighted graphs, that uses O~(1ϵn1/klogD)\tilde O(\frac{1}{\epsilon}n^{1/k}\log D) space at each vertex and O~(1ϵlogD)\tilde O(\frac{1}{\epsilon}\log D)-bit headers, to route a message between any pair of vertices on a (4k7+ϵ)(4k-7+\epsilon)-stretch path
    corecore