## Randomized algorithms for finding the shortest negative cost cycle in networks

##### Author(s)

Orlin, James B; Subramani, K.; Wojciechowki, Piotr
DownloadAccepted version (230.4Kb)

##### Terms of use

##### Metadata

Show full item record##### Abstract

In this paper, we design and analyze a fast, randomized algorithm for the problem of finding a negative cost cycle having the smallest number of edges in a directed, weighted graph. This problem will henceforth be referred to as the Shortest Negative Cost Cycle problem (SNCC). SNCC is closely related to the problem of checking whether a directed, weighted graph contains a negative cost cycle (NCCD). NCCD is an extremely well-studied problem within the domains of operations research and theoretical computer science. SNCC is important in its own right and finds several applications in program verification (Satisfiability modulo theories), abstract interpretation and real-time scheduling. It is also an important subroutine in solving the generalized submodular flow problem, which has applications in trading networks. The randomized algorithm presented in this paper for SNCC determines a shortest negative cost cycle with probability at least (1−e−1) in O(m⋅n⋅logn) time, on a network with n vertices and m edges. This is, in general, a significant improvement over the best deterministic bound of O(m⋅n⋅|C∗|) over the same parameters, where C∗ is a shortest negative cost cycle. This algorithm requires Ω(n⋅logn) random bits. We then propose a second randomized algorithm that runs in O(m⋅n⋅logn) expected time and requires O(n) random bits (expected).

##### Date issued

2017-12##### Journal

Discrete Applied Mathematics

##### Publisher

Elsevier BV

##### Citation

Orlin, James B., et al. “Randomized Algorithms for Finding the Shortest Negative Cost Cycle in Networks.” Discrete Applied Mathematics 236 (February. 2018): 387–94.

Version: Author's final manuscript

##### ISSN

1872-6771

0166-218X