Combining Shortest Paths, Bottleneck Paths and Matrix Multiplication
نویسندگان
چکیده
We provide a formal mathematical definition of the Shortest Paths for All Flows (SP-AF) problem and provide many efficient algorithms. The SP-AF problem combines the well known Shortest Paths (SP) and Bottleneck Paths (BP) problems, and can be solved by utilising matrix multiplication. Thus in our research of the SP-AF problem, we also make a series of contributions to the underlying topics of the SP problem, the BP problem, and matrix multiplication. For the topic of matrix multiplication we show that on an n-by-n two dimensional (2D) square mesh array, two n-by-n matrices can be multiplied in exactly 1.5n−1 communication steps. This halves the number of communication steps required by the well known Cannon’s algorithm [10] that runs on the same sized mesh array. We provide two contributions for the SP problem. Firstly, we enhance the breakthrough algorithm by Alon, Galil and Margalit (AGM) [4], which was the first algorithm to achieve a deeply sub-cubic time bound for solving the All Pairs Shortest Paths (APSP) problem on dense directed graphs. Our enhancement allows the algorithm by AGM to remain sub-cubic for larger upper bounds on integer edge costs. Secondly, we show that for graphs with n vertices, the APSP problem can be solved in exactly 3n− 2 communication steps on an n-by-n 2D square mesh array. This improves on the previous result of 3.5n communication steps achieved by Takaoka and Umehara [72]. For the BP problem, we show that we can compute the bottleneck of the entire graph without solving the All Pairs Bottleneck Paths (APBP) problem, resulting in a much more efficient time bound. Finally we define an algebraic structure called the distance/flow semi-ring to formally introduce the SP-AF problem, and we provide many algorithms for solving the Single Source SP-AF (SSSP-AF) problem and the All Pairs SP-AF (APSP-AF) problem. For the APSP-AF problem, algebraic algorithms are given that utilise faster matrix multiplication over a ring.
منابع مشابه
Fast algorithms for (max, min)-matrix multiplication and bottleneck shortest paths
Given a directed graph with a capacity on each edge, the all-pairs bottleneck paths (APBP) problem is to determine, for all vertices s and t, the maximum flow that can be routed from s to t. For dense graphs this problem is equivalent to that of computing the (max,min)transitive closure of a real-valued matrix. In this paper, we give a (max,min)-matrix multiplication algorithm running in time O...
متن کاملAll Pairs Bottleneck Paths and Max-Min Matrix Products in Truly Subcubic Time
In the all-pairs bottleneck paths (APBP) problem, one is given a directed graph with real capacities on its edges and is asked to determine, for all pairs of vertices s and t, the capacity of a single path for which a maximum amount of flow can be routed from s to t. The APBP problem was first studied in operations research, shortly after the introduction of maximum flows and all-pairs shortest...
متن کاملMulti - Terminal Shortest Paths
The present paper gives an algorithm that finds simultaneously the shortest paths between many pairs of nodes in a given network. In the book by Berge, the values of shortest paths between many pairs of nodes are found. Here, we use a special matrix multiplication technique to find the actual arcs that are used to form the shortest paths. In a network with n nodes, log [n-l] special matrix mult...
متن کاملCombining the Shortest Paths and the Bottleneck Paths Problems
We combine the well known Shortest Paths (SP) problem and the Bottleneck Paths (BP) problem to introduce a new problem called the Shortest Paths for All Flows (SP-AF) problem that has relevance in real life applications. We first solve the Single Source Shortest Paths for All Flows (SSSP-AF) problem on directed graphs with unit edge costs in O(mn) worst case time bound. We then present two algo...
متن کاملWitnesses for Boolean Matrix Multiplication and for Shortest Paths
The subcubic (O(n) for ω < 3) algorithms to multiply Boolean matrices do not provide the witnesses; namely, they compute C = AB but if Cij = 1 they do not find an index k (a witness) such that Aik = Bkj = 1. We design a deterministic algorithm for computing the matrix of witnesses that runs in Õ(n) time, where here Õ(n) denotes O(n(log n)). The subcubic methods to compute the shortest distances...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2014