{"title":"具有不确定性的简单时间网络的快速动态可控性检测","authors":"Massimo Cairo, Luke Hunsberger, Romeo Rizzi","doi":"10.4230/LIPIcs.TIME.2018.8","DOIUrl":null,"url":null,"abstract":"Simple Temporal Networks (STNs) are a well-studied model for representing and reasoning about time. An STN comprises a set of real-valued variables called time-points, together with a set of binary constraints, each of the form Y ≤ X + w. The problem of finding a feasible schedule (i.e., an assignment of real numbers to time-points such that all of the constraints are satisfied) is equivalent to the Single Source Shortest Path problem (SSSP) in the STN graph. Simple Temporal Networks with Uncertainty (STNUs) augment STNs to include contingent links that can be used, for example, to represent actions with uncertain durations. The duration of a contingent link is not controlled by the planner, but is instead controlled by a (possibly adversarial) environment. Each contingent link has the form, 〈A, `, u, C〉, where 0 < ` ≤ u <∞. Once the planner executes the activation time-point A, the environment must execute the contingent time-point C at some time A+ ∆, where ∆ ∈ [`, u]. Crucially, the planner does not know the value of ∆ in advance, but only discovers it when C executes. An STNU is dynamically controllable (DC) if there is a strategy that the planner can use to execute all of the non-contingent time-points, such that all of the constraints are guaranteed to be satisfied no matter which durations the environment chooses for the contingent links. The strategy can be dynamic in that it can react in real time to the contingent durations it observes. Recently, an upper bound of O(N3) was given for the DC-checking problem for STNUs, where N is the number of time-points. This paper introduces a new algorithm, called the RUL− algorithm, for solving the DCchecking problem for STNUs that improves on the O(N3) bound. The worst-case complexity of the RUL− algorithm is O(MN +K2N +KN logN), where N is the number of time-points, M is the number of constraints, and K is the number of contingent time-points. If M is O(N2), then the complexity reduces to O(N3); however, in sparse graphs the complexity can be much less. For example, if M is O(N logN), and K is O( √ N), then the complexity of the RUL− algorithm reduces to O(N2 logN). The RUL− algorithm begins by using the Bellman-Ford algorithm to compute a potential function. It then performs at most 2K rounds of computations, interleaving novel applications of Dijkstra’s algorithm to (1) generate new edges and (2) update the potential function in response to those new edges. The constraint-propagation/edge-generation rules used by the RUL− algorithm are distinguished from related work in two ways. First, they only generate unlabeled edges. Second, their applicability conditions are more restrictive. As a result, the RUL− algorithm requires only O(K) rounds of Dijkstra’s algorithm, instead of the O(N) rounds required by other approaches. The paper proves that the RUL− algorithm is sound and complete for the DC-checking problem for STNUs. 2012 ACM Subject Classification Networks → Network Algorithms 23:2 Faster DC Checking for STNUs","PeriodicalId":75226,"journal":{"name":"Time","volume":"35 1","pages":"8:1-8:16"},"PeriodicalIF":0.0000,"publicationDate":"2018-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":"{\"title\":\"Faster Dynamic Controllability Checking for Simple Temporal Networks with Uncertainty\",\"authors\":\"Massimo Cairo, Luke Hunsberger, Romeo Rizzi\",\"doi\":\"10.4230/LIPIcs.TIME.2018.8\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Simple Temporal Networks (STNs) are a well-studied model for representing and reasoning about time. An STN comprises a set of real-valued variables called time-points, together with a set of binary constraints, each of the form Y ≤ X + w. The problem of finding a feasible schedule (i.e., an assignment of real numbers to time-points such that all of the constraints are satisfied) is equivalent to the Single Source Shortest Path problem (SSSP) in the STN graph. Simple Temporal Networks with Uncertainty (STNUs) augment STNs to include contingent links that can be used, for example, to represent actions with uncertain durations. The duration of a contingent link is not controlled by the planner, but is instead controlled by a (possibly adversarial) environment. Each contingent link has the form, 〈A, `, u, C〉, where 0 < ` ≤ u <∞. Once the planner executes the activation time-point A, the environment must execute the contingent time-point C at some time A+ ∆, where ∆ ∈ [`, u]. Crucially, the planner does not know the value of ∆ in advance, but only discovers it when C executes. An STNU is dynamically controllable (DC) if there is a strategy that the planner can use to execute all of the non-contingent time-points, such that all of the constraints are guaranteed to be satisfied no matter which durations the environment chooses for the contingent links. The strategy can be dynamic in that it can react in real time to the contingent durations it observes. Recently, an upper bound of O(N3) was given for the DC-checking problem for STNUs, where N is the number of time-points. This paper introduces a new algorithm, called the RUL− algorithm, for solving the DCchecking problem for STNUs that improves on the O(N3) bound. The worst-case complexity of the RUL− algorithm is O(MN +K2N +KN logN), where N is the number of time-points, M is the number of constraints, and K is the number of contingent time-points. If M is O(N2), then the complexity reduces to O(N3); however, in sparse graphs the complexity can be much less. For example, if M is O(N logN), and K is O( √ N), then the complexity of the RUL− algorithm reduces to O(N2 logN). The RUL− algorithm begins by using the Bellman-Ford algorithm to compute a potential function. It then performs at most 2K rounds of computations, interleaving novel applications of Dijkstra’s algorithm to (1) generate new edges and (2) update the potential function in response to those new edges. The constraint-propagation/edge-generation rules used by the RUL− algorithm are distinguished from related work in two ways. First, they only generate unlabeled edges. Second, their applicability conditions are more restrictive. As a result, the RUL− algorithm requires only O(K) rounds of Dijkstra’s algorithm, instead of the O(N) rounds required by other approaches. The paper proves that the RUL− algorithm is sound and complete for the DC-checking problem for STNUs. 2012 ACM Subject Classification Networks → Network Algorithms 23:2 Faster DC Checking for STNUs\",\"PeriodicalId\":75226,\"journal\":{\"name\":\"Time\",\"volume\":\"35 1\",\"pages\":\"8:1-8:16\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2018-01-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"6\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Time\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.4230/LIPIcs.TIME.2018.8\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Time","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.4230/LIPIcs.TIME.2018.8","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 6
摘要
简单时间网络(STNs)是一个被广泛研究的时间表示和推理模型。一个STN包含一组实值变量,称为时间点,以及一组二进制约束,每个约束的形式为Y≤X + w。寻找可行调度的问题(即,将实数分配给时间点,使所有约束都得到满足)相当于STN图中的单源最短路径问题(SSSP)。具有不确定性的简单时间网络(STNUs)对STNs进行了扩充,使其包括可用于表示具有不确定持续时间的动作的偶然链接。偶然链接的持续时间不是由计划者控制的,而是由(可能是敌对的)环境控制的。每个偶然环节的形式为< A, ', u, C >,其中0 < '≤u <∞。一旦计划者执行激活时间点A,环境必须在某个时间点A+∆,其中∆∈[',u]执行偶然时间点C。至关重要的是,规划者事先并不知道∆的值,只有在C执行时才会发现。如果存在一种策略,计划者可以使用该策略来执行所有非偶然时间点,那么无论环境为偶然链接选择哪个持续时间,所有约束都保证得到满足,那么STNU就是动态可控的(DC)。该策略可以是动态的,因为它可以实时地对它观察到的偶然持续时间做出反应。最近,对于STNUs的DC-checking问题,给出了一个O(N3)的上界,其中N为时间点的个数。本文介绍了一种新的算法,称为RUL−算法,用于解决STNUs的dc检查问题,该算法改进了O(N3)界。RUL−算法的最坏情况复杂度为O(MN +K2N +KN logN),其中N为时间点个数,M为约束个数,K为偶然时间点个数。若M = O(N2),则复杂度降低为O(N3);然而,在稀疏图中,复杂度可以低得多。例如,M = O(N logN), K = O(√N),则RUL−算法的复杂度降低为O(N2 logN)。RUL−算法首先使用Bellman-Ford算法计算一个势函数。然后,它最多执行2K轮计算,交叉使用Dijkstra算法的新应用来(1)生成新边,(2)更新响应这些新边的势函数。RUL−算法使用的约束传播/边缘生成规则与相关工作有两个不同之处。首先,它们只生成未标记的边。二是适用条件较为严格。因此,RUL−算法只需要Dijkstra算法的O(K)轮,而不是其他方法需要的O(N)轮。本文证明了RUL−算法对于STNUs的直流校验问题是健全完备的。2012 ACM主题分类网络→网络算法23:2更快的数据中心检测
Faster Dynamic Controllability Checking for Simple Temporal Networks with Uncertainty
Simple Temporal Networks (STNs) are a well-studied model for representing and reasoning about time. An STN comprises a set of real-valued variables called time-points, together with a set of binary constraints, each of the form Y ≤ X + w. The problem of finding a feasible schedule (i.e., an assignment of real numbers to time-points such that all of the constraints are satisfied) is equivalent to the Single Source Shortest Path problem (SSSP) in the STN graph. Simple Temporal Networks with Uncertainty (STNUs) augment STNs to include contingent links that can be used, for example, to represent actions with uncertain durations. The duration of a contingent link is not controlled by the planner, but is instead controlled by a (possibly adversarial) environment. Each contingent link has the form, 〈A, `, u, C〉, where 0 < ` ≤ u <∞. Once the planner executes the activation time-point A, the environment must execute the contingent time-point C at some time A+ ∆, where ∆ ∈ [`, u]. Crucially, the planner does not know the value of ∆ in advance, but only discovers it when C executes. An STNU is dynamically controllable (DC) if there is a strategy that the planner can use to execute all of the non-contingent time-points, such that all of the constraints are guaranteed to be satisfied no matter which durations the environment chooses for the contingent links. The strategy can be dynamic in that it can react in real time to the contingent durations it observes. Recently, an upper bound of O(N3) was given for the DC-checking problem for STNUs, where N is the number of time-points. This paper introduces a new algorithm, called the RUL− algorithm, for solving the DCchecking problem for STNUs that improves on the O(N3) bound. The worst-case complexity of the RUL− algorithm is O(MN +K2N +KN logN), where N is the number of time-points, M is the number of constraints, and K is the number of contingent time-points. If M is O(N2), then the complexity reduces to O(N3); however, in sparse graphs the complexity can be much less. For example, if M is O(N logN), and K is O( √ N), then the complexity of the RUL− algorithm reduces to O(N2 logN). The RUL− algorithm begins by using the Bellman-Ford algorithm to compute a potential function. It then performs at most 2K rounds of computations, interleaving novel applications of Dijkstra’s algorithm to (1) generate new edges and (2) update the potential function in response to those new edges. The constraint-propagation/edge-generation rules used by the RUL− algorithm are distinguished from related work in two ways. First, they only generate unlabeled edges. Second, their applicability conditions are more restrictive. As a result, the RUL− algorithm requires only O(K) rounds of Dijkstra’s algorithm, instead of the O(N) rounds required by other approaches. The paper proves that the RUL− algorithm is sound and complete for the DC-checking problem for STNUs. 2012 ACM Subject Classification Networks → Network Algorithms 23:2 Faster DC Checking for STNUs