Results 1  10
of
128
Finding the k Shortest Paths
, 1997
"... We give algorithms for finding the k shortest paths (not required to be simple) connecting a pair of vertices in a digraph. Our algorithms output an implicit representation of these paths in a digraph with n vertices and m edges, in time O(m + n log n + k). We can also find the k shortest pat ..."
Abstract

Cited by 401 (2 self)
 Add to MetaCart
(Show Context)
We give algorithms for finding the k shortest paths (not required to be simple) connecting a pair of vertices in a digraph. Our algorithms output an implicit representation of these paths in a digraph with n vertices and m edges, in time O(m + n log n + k). We can also find the k shortest paths from a given source s to each vertex in the graph, in total time O(m + n log n +kn). We describe applications to dynamic programming problems including the knapsack problem, sequence alignment, maximum inscribed polygons, and genealogical relationship discovery.
FiniteState Transducers in Language and Speech Processing
 Computational Linguistics
, 1997
"... Finitestate machines have been used in various domains of natural language processing. We consider here the use of a type of transducers that supports very efficient programs: sequential transducers. We recall classical theorems and give new ones characterizing sequential stringtostring transducer ..."
Abstract

Cited by 386 (42 self)
 Add to MetaCart
Finitestate machines have been used in various domains of natural language processing. We consider here the use of a type of transducers that supports very efficient programs: sequential transducers. We recall classical theorems and give new ones characterizing sequential stringtostring transducers. Transducers that output weights also play an important role in language and speech processing. We give a specific study of stringtoweight transducers, including algorithms for determinizing and minimizing these transducers very efficiently, and characterizations of the transducers admitting determinization and the corresponding algorithms. Some applications of these algorithms in speech recognition are described and illustrated. 1.
Faster ShortestPath Algorithms for Planar Graphs
 STOC 94
, 1994
"... We give a lineartime algorithm for singlesource shortest paths in planar graphs with nonnegative edgelengths. Our algorithm also yields a lineartime algorithm for maximum flow in a planar graph with the source and sink on the same face. The previous best algorithms for these problems required\O ..."
Abstract

Cited by 204 (17 self)
 Add to MetaCart
We give a lineartime algorithm for singlesource shortest paths in planar graphs with nonnegative edgelengths. Our algorithm also yields a lineartime algorithm for maximum flow in a planar graph with the source and sink on the same face. The previous best algorithms for these problems required\Omega\Gamma n p log n) time where n is the number of nodes in the input graph. For the case where negative edgelengths are allowed, we give an algorithm requiring O(n 4=3 log nL) time, where L is the absolute value of the most negative length. Previous algorithms for shortest paths with negative edgelengths required \Omega\Gamma n 3=2 ) time. Our shortestpath algorithm yields an O(n 4=3 log n)time algorithm for finding a perfect matching in a planar bipartite graph. A similar improvement is obtained for maximum flow in a directed planar graph.
Shortest Paths Algorithms: Theory And Experimental Evaluation
 Mathematical Programming
, 1993
"... . We conduct an extensive computational study of shortest paths algorithms, including some very recent algorithms. We also suggest new algorithms motivated by the experimental results and prove interesting theoretical results suggested by the experimental data. Our computational study is based on se ..."
Abstract

Cited by 188 (15 self)
 Add to MetaCart
(Show Context)
. We conduct an extensive computational study of shortest paths algorithms, including some very recent algorithms. We also suggest new algorithms motivated by the experimental results and prove interesting theoretical results suggested by the experimental data. Our computational study is based on several natural problem classes which identify strengths and weaknesses of various algorithms. These problem classes and algorithm implementations form an environment for testing the performance of shortest paths algorithms. The interaction between the experimental evaluation of algorithm behavior and the theoretical analysis of algorithm performance plays an important role in our research. Andrew V. Goldberg was supported in part by ONR Young Investigator Award N0001491J1855, NSF Presidential Young Investigator Grant CCR8858097 with matching funds from AT&T, DEC, and 3M, and a grant from Powell Foundation. This work was done while Boris V. Cherkassky was visiting Stanford University Compu...
A FASTER STRONGLY POLYNOMIAL MINIMUM COST FLOW ALGORITHM
, 1991
"... In this paper, we present a new strongly polynomial time algorithm for the minimum cost flow problem, based on a refinement of the EdmondsKarp scaling technique. Our algorithm solves the uncapacitated minimum cost flow problem as a sequence of O(n log n) shortest path problems on networks with n no ..."
Abstract

Cited by 161 (11 self)
 Add to MetaCart
In this paper, we present a new strongly polynomial time algorithm for the minimum cost flow problem, based on a refinement of the EdmondsKarp scaling technique. Our algorithm solves the uncapacitated minimum cost flow problem as a sequence of O(n log n) shortest path problems on networks with n nodes and m arcs and runs in O(n log n (m + n log n)) time. Using a standard transformation, thjis approach yields an O(m log n (m + n log n)) algorithm for the capacitated minimum cost flow problem. This algorithm improves the best previous strongly polynomial time algorithm, due to Z. Galil and E. Tardos, by a factor of n 2 /m. Our algorithm for the capacitated minimum cost flow problem is even more efficient if the number of arcs with finite upper bounds, say n', is much less than m. In this case, the running time of the algorithm is O((m ' + n)log n(m + n log n)).
Fast and Robust Earth Mover’s Distances
"... We present a new algorithm for a robust family of Earth Mover’s Distances EMDs with thresholded ground distances. The algorithm transforms the flownetwork of the EMD so that the number of edges is reduced by an order of magnitude. As a result, we compute the EMD by an order of magnitude faster tha ..."
Abstract

Cited by 87 (6 self)
 Add to MetaCart
(Show Context)
We present a new algorithm for a robust family of Earth Mover’s Distances EMDs with thresholded ground distances. The algorithm transforms the flownetwork of the EMD so that the number of edges is reduced by an order of magnitude. As a result, we compute the EMD by an order of magnitude faster than the original algorithm, which makes it possible to compute the EMD on large histograms and databases. In addition, we show that EMDs with thresholded ground distances have many desirable properties. First, they correspond to the way humans perceive distances. Second, they are robust to outlier noise and quantization effects. Third, they are metrics. Finally, experimental results on image retrieval show that thresholding the ground distance of the EMD improves both accuracy and speed. 1.
On the exponent of the all pairs shortest path problem
"... The upper bound on the exponent, ω, of matrix multiplication over a ring that was three in 1968 has decreased several times and since 1986 it has been 2.376. On the other hand, the exponent of the algorithms known for the all pairs shortest path problem has stayed at three all these years even for t ..."
Abstract

Cited by 86 (2 self)
 Add to MetaCart
The upper bound on the exponent, ω, of matrix multiplication over a ring that was three in 1968 has decreased several times and since 1986 it has been 2.376. On the other hand, the exponent of the algorithms known for the all pairs shortest path problem has stayed at three all these years even for the very special case of directed graphs with uniform edge lengths. In this paper we give an algorithm of time O � n ν log 3 n � , ν = (3 + ω)/2, for the case of edge lengths in {−1, 0, 1}. Thus, for the current known bound on ω, we get a bound on the exponent, ν < 2.688. In case of integer edge lengths with absolute value bounded above by M, the time bound is O � (Mn) ν log 3 n � and the exponent is less than 3 for M = O(n α), for α < 0.116 and the current bound on ω.
Fast image and video colorization using chrominance blending
 IEEE TRANSACTIONS ON IMAGE PROCESSING
, 2004
"... Colorization, the task of coloring a grayscale image or video, involves assigning from the single dimension of intensity or luminance a quantity that varies in three dimensions, such as red, green, and blue channels. Mapping between intensity and color is therefore not unique, and colorization is a ..."
Abstract

Cited by 81 (9 self)
 Add to MetaCart
(Show Context)
Colorization, the task of coloring a grayscale image or video, involves assigning from the single dimension of intensity or luminance a quantity that varies in three dimensions, such as red, green, and blue channels. Mapping between intensity and color is therefore not unique, and colorization is ambiguous in nature and requires some amount of human interaction or external information. A computationally simple yet effective approach of colorization is presented in this paper. The method is fast so it can be conveniently used “on the fly, ” permitting the user to interactively get the desired results promptly after providing a reduced set of chrominance scribbles. Based on concepts of luminanceweighted chrominance blending and fast intrinsic distance computations, high quality colorization results for still images and video are obtained at a fraction of the complexity and computational cost of previously reported techniques. Possible extensions of the algorithm here introduced included the capability of changing colors of an existing color image or video as well as changing the underlying luminance.
On RAM priority queues
, 1996
"... Priority queues are some of the most fundamental data structures. They are used directly for, say, task scheduling in operating systems. Moreover, they are essential to greedy algorithms. We study the complexity of priority queue operations on a RAM with arbitrary word size. We present exponential i ..."
Abstract

Cited by 72 (10 self)
 Add to MetaCart
Priority queues are some of the most fundamental data structures. They are used directly for, say, task scheduling in operating systems. Moreover, they are essential to greedy algorithms. We study the complexity of priority queue operations on a RAM with arbitrary word size. We present exponential improvements over previous bounds, and we show tight relations to sorting. Our first result is a RAM priority queue supporting insert and extractmin operations in worst case time O(log log n) where n is the current number of keys in the queue. This is an exponential improvement over the O( p log n) bound of Fredman and Willard from STOC'90. Our algorithm is simple, and it only uses AC 0 operations, meaning that there is no hidden time dependency on the word size. Plugging this priority queue into Dijkstra's algorithm gives an O(m log log m) algorithm for the single source shortest path problem on a graph with m edges, as compared with the previous O(m p log m) bound based on Fredman...