首页 | 本学科首页   官方微博 | 高级检索  
     


Solving Systems of Difference Constraints Incrementally
Authors:G Ramalingam  J Song  L Joskowicz  R E Miller
Affiliation:(1) IBM T. J. Watson Research Center, P.O. Box 704, Yorktown Heights, NY 10598, USA., US;(2) Institute of Computer Science, The Hebrew University, Jerusalem 91904, Israel., IL;(3) Department of Computer Science, University of Maryland, College Park, MD 20742, USA., US
Abstract:Difference constraints systems consisting of inequalities of the form x i - x j b i,j occur in many applications, most notably those involving temporal reasoning. Often, it is necessary to maintain a solution to such a system as constraints are added, modified, and deleted. Existing algorithms handle modifications by solving the resulting system anew each time, which is inefficient. The best known algorithm to determine if a system of difference constraints is feasible (i.e., if it has a solution) and to compute a solution runs in Θ (mn) time, where n is the number of variables and m is the number of constraints. This paper presents a new efficient incremental algorithm for maintaining a solution to a system of difference constraints. As constraints are added, modified, or deleted, the algorithm determines if the new system is feasible and updates its solution. When the system becomes infeasible, the algorithm continues to process changes until it becomes feasible again, at which point a feasible solution will be produced. The algorithm processes the addition of a constraint in time O(m + n log n) and the removal of a constraint in constant time when the original system is feasible. More precisely, additions are processed in time O( || Δ || + |Δ| log|Δ| ) , where |Δ| is the number of variables whose values are changed to compute the new feasible solution, and || Δ || is the number of constraints involving the variables whose values are changed. When the original system is infeasible, the algorithm processes any change in O(m + n log n) amortized time. The new algorithm can also be used to check for the existence of negative cycles in dynamic graphs. Received September 25, 1997; revised November 16, 1997.
Keywords:, Difference constraints, Incremental algorithm, Linear constraints, Shortest-path problem, Dynamic negative cycle,
本文献已被 SpringerLink 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号