Principles of CMOS VLSI design: a systems perspective
Principles of CMOS VLSI design: a systems perspective
Introduction to algorithms
Artificial Intelligence - Special issue on knowledge representation
A practical algorithm for exact array dependence analysis
Communications of the ACM
The definition of dependence distance
The definition of dependence distance
Dynamic Programming for Detecting, Tracking, and Matching Deformable Contours
IEEE Transactions on Pattern Analysis and Machine Intelligence
Scaling Algorithms for the Shortest Paths Problem
SIAM Journal on Computing
Constraint-based array dependence analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
ABCD: eliminating array bounds checks on demand
PLDI '00 Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation
An Analysis of Zero-Clairvoyant Scheduling
TACAS '02 Proceedings of the 8th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
Negative-Cycle Detection Algorithms
ESA '96 Proceedings of the Fourth Annual European Symposium on Algorithms
A Comprehensive Approach to Array Bounds Check Elimination for Java
CC '02 Proceedings of the 11th International Conference on Compiler Construction
"Ratio Regions": A Technique for Image Segmentation
ICPR '96 Proceedings of the 13th International Conference on Pattern Recognition - Volume 2
A Zero-Space algorithm for Negative Cost Cycle Detection in networks
Journal of Discrete Algorithms
Chain programming over difference constraints
Nordic Journal of Computing
New efficient shortest path simplex algorithm: pseudo permanent labels instead of permanent labels
Computational Optimization and Applications
Hi-index | 0.00 |
In this paper, we develop a greedy strategy for the problem of checking whether a network (directed graph) with positive and negative costs on its edges has a negative cost cycle. We call our approach the Vertex Contraction algorithm; it is the first known greedy strategy for this problem. As per the literature, all known approaches to the problem of detecting negative cost cycles are based on dynamic programming or scaling. It is well known that the negative cost cycle detection problem is equivalent to the problem of checking whether a system of linear difference constraints is feasible. Our algorithm exploits this equivalence and uses polyhedral projection on the polyhedron of linear difference constraints, corresponding to the input network, to detect the presence of negative cost cycles. We use a variant of the Fourier-Motzkin elimination procedure to effect polyhedral projection and contrast the performance of our algorithm with the "standard" Bellman-Ford algorithm for the same problem. We observed that the Vertex Contraction algorithm performed an order of magnitude better than the Bellman-Ford algorithm on a range of randomly generated inputs, thereby conclusively demonstrating the superiority of our approach. From the perspective of asymptotic analysis, the Bellman-Ford algorithm is superior to our algorithm, in that it runs in time O(mċn) in the worst case, on a network with m edges and n vertices, whereas the worst-case complexity of our algorithm is O(n3).