Consistency Methods for Temporal Reasoning Lin XU Constraint Systems Laboratory Advisor: Dr. B.Y. Choueiry April, 2003 Supported by a grant from NASA-Nebraska, CAREER Award # , and a gift from Honeywell Laboratories.
Lin Xu Tuesday, April 15, Outline Temporal Reasoning motivation & background Simple Temporal Problem (STP) & Temporal Constraint Satisfaction Problem (TCSP) what are they & how to solve them Contribution: 3 research questions their solutions empirical evidence Summary & future directions for research
Lin Xu Tuesday, April 15, Time, always time! Tom wants to serve tea Clear tea pot 3 min Clear tea cups 10 min Boil water 15 min With little reasoning, the task takes 18 min instead of 28 min
Lin Xu Tuesday, April 15, Temporal Reasoning in AI Temporal Logic Temporal Networks Qualitative: interval algebra, point algebra Before, after, during, etc. Quantitative: temporal constraint networks Metric: 10 min before, during 15 min, etc. Simple TP (STP) & Temporal CSP (TCSP)
Lin Xu Tuesday, April 15, Temporal Network: example Tom has class at 8:00 a.m. Today, he gets up between 7:30 and 7:40 a.m. He prepares his breakfast (10-15 min). After breakfast (5-10 min), he goes to school by car (20-30 min). Will he be on time for class?
Lin Xu Tuesday, April 15, Simple Temporal Network (STP ) Variable: Time point for an event Domain: A set of real numbers Constraint: distance between time points ( [5, 10] 5 P b -P a 10 ) Solution: A value for each variable such that all temporal constraints are satisfied
Lin Xu Tuesday, April 15, More complex example Tom has class at 8:00 a.m. Today, he gets up between 7:30 and 7:40 a.m. He either makes his breakfast himself (10-15 min), or gets something from a local store (less than 5 min). After breakfast (5-10 min), he goes to school either by car (20-30 min) or by bus (at least 45 min).
Lin Xu Tuesday, April 15, Possible questions Can Tom arrive school in time for class? Is it possible for Tom to take the bus? If Tom wanted to save money by making breakfast for himself and taking the bus, when should he get up?
Lin Xu Tuesday, April 15, Temporal CSP Constraint: a disjunction of intervals [10, 15] [0, 5] Rest, same as STP Variable: Time point for an event Domain: A set of real numbers Solution: Each variable has a value that satisfies all temporal constraints
Lin Xu Tuesday, April 15, Temporal Networks: STP & TCSP Simple temporal problem (STP) One interval per constraint Can be solved in polynomial time Floyd-Warshall F-W algorithm (all-pairs shortest-paths) Temporal Constraint Satisfaction Problem (TCSP) A disjunction of intervals per constraint is NP-hard Solved with Backtrack search (BT-TCSP) [Dechter]
Lin Xu Tuesday, April 15, Solving the TCSP Formulate TCSP as a meta-CSP: Given Variables: Edges in constraint network Domains of variables: edge labels in constraint network A unique global constraint ( checking consistency of an STP) Find all solutions to the meta-CSP
Lin Xu Tuesday, April 15, BT search for meta-CSP big
Lin Xu Tuesday, April 15, Solving the TCSP Requires finding all solutions to the meta-CSP Every node in the search tree is an STP to be solved An exponential number of STPs to be solved
Lin Xu Tuesday, April 15, Questions addressed Is there a better algorithm for STP than F-W ? exploiting topology of the constraint graph exploiting semantic properties of the temporal constraints Is there a consistency filtering algorithm for reducing the size of TCSP? Can we improve performance of BT-TCSP By using a better STP solver? By avoiding to check STP consistency at every node? By exploiting the topology of the constraint graph? again! By finding a ‘ good ’ variable ordering heuristic?
Lin Xu Tuesday, April 15, Contributions Two new algorithms for solving STP Partial Path Consistency [adapted from Bliek & Sam-Haroud] STP [Xu & Choueiry, TIME 03] A new algorithm for filtering TCSP AC [Xu & Choueiry, submitted] Three heuristics to improve search Articulation points (AP) [classical, never tested] New cycle check (NewCyc) [Xu & Choueiry, submitted] Edge ordering (EdgeOrd) [Xu & Choueiry, submitted] Random generators: 2 for STP & 2 for TCSP
Lin Xu Tuesday, April 15, Contributions Two new algorithms for solving STP Partial Path Consistency [adapted from Bliek & Sam-Haroud] STP [Xu & Choueiry, TIME 03] A new algorithm for filtering TCSP AC [Xu & Choueiry, submitted] Three heuristics to improve search Articulation points (AP) [classical, never tested] New cycle check (NewCyc) [Xu & Choueiry, submitted] Edge ordering (EdgeOrd) [Xu & Choueiry, submitted] Random generators: 2 for STP & 2 for TCSP
Lin Xu Tuesday, April 15, Algorithms for solving the STP GraphCostConsistencyMinimality F-W/PC Complete (n 3 ) Yes DPC Not necessarily O (nW * (d) 2 ) very cheap YesNo PPC Triangulated O (n 3 ) usually cheaper than F-W/PC Yes STP Triangulated Always cheaper than PPC Yes Our approach requires triangulation of the constraint graph
Lin Xu Tuesday, April 15, Partial Path Consistency ( PPC ) Known features of PPC [Bliek & Sam-Haroud, 99] Applicable to general CSPs Triangulates the constraint graph In general, resulting network is not minimal For convex constraints, guarantees minimality (same as F-W, but much cheaper in practice) Adaptation of PPC to STP [this thesis] Constraints in STP are bounded difference, thus convex, PPC results in the minimal network
Lin Xu Tuesday, April 15, STP [TIME 03] STP considers the temporal graph as composed by triangles instead of edges Temporal graph F-W STP PPC
Lin Xu Tuesday, April 15, Advantages of STP A finer version of PPC Cheaper than PPC and F-W Guarantees the minimal network Automatically decomposes the graph into its bi-connected components binds effort in size of largest component allows parallellization Ø Best known algorithm for solving STP use it in BT-TCSP where it is applied an exponential number of times
Lin Xu Tuesday, April 15, Finding the minimal STP
Lin Xu Tuesday, April 15, Determining consistency of STP
Lin Xu Tuesday, April 15, Contributions Two new algorithms for solving STP Partial Path Consistency [adapted from Bliek & Sam-Haroud] STP [Xu & Choueiry, TIME 03] A new algorithm for filtering TCSP AC [Xu & Choueiry, submitted] Three heuristics to improve search Articulation points (AP) [classical, never tested] New cycle check (NewCyc) [Xu & Choueiry, submitted] Edge ordering (EdgeOrd) [Xu & Choueiry, submitted] Random generators: 2 for STP & 2 for TCSP
Lin Xu Tuesday, April 15, Filtering algorithm: AC Remove inconsistent intervals from the label of edge before search. One global, exponential size constraint Polynomial number of polynomial-size ternary constraints
Lin Xu Tuesday, April 15, AC reduces size of TCSP
Lin Xu Tuesday, April 15, It is powerful, especially under high density It uses special, poly-size data structures It is sound, effective, and cheap O (n |E |k 3 ) We show how to make it optimal [to be proved] It uncovers a phase transition in TCSP Advantages of AC
Lin Xu Tuesday, April 15, Contributions Two new algorithms for solving STP Partial Path Consistency [adapted from Bliek & Sam-Haroud] STP [Xu & Choueiry, TIME 03] A new algorithm for filtering TCSP AC [Xu & Choueiry, submitted] Three heuristics to improve search Articulation points (AP) [classical, never tested] New cycle check (NewCyc) [Xu & Choueiry, submitted] Edge ordering (EdgeOrd) [Xu & Choueiry, submitted] Random generators: 2 for STP & 2 for TCSP
Lin Xu Tuesday, April 15, Articulation points (AP) Decompose the graph into bi-connected components Solve each of them independently Binds the total cost by the size of largest component Classical solution, never implemented or tested
Lin Xu Tuesday, April 15, New cycle check (NewCyc) Checks presence of new cycles O (|E |) Checks consistency only if a new cycle is added
Lin Xu Tuesday, April 15, Advantages of NewCyc Reduces effort of consistency checking Does not affect # of nodes visited in BT-TCSP Restricts effort to new bi-connected component
Lin Xu Tuesday, April 15, Edge Ordering in BT-TCSP Repeat your graph
Lin Xu Tuesday, April 15, EdgeOrd Heuristic Order the edges using ‘ triangle adjacency ’ Priority list is a by-product of triangulation
Lin Xu Tuesday, April 15, Localized backtracking Automatic decomposition of the constraint graph no need for AP Advantages of EdgeOrd
Lin Xu Tuesday, April 15, Experimental evaluations With/without: AC, AP, NewCyc, EdgeOrd
Lin Xu Tuesday, April 15, Number of solutions
Lin Xu Tuesday, April 15, Nodes visited (without AC)
Lin Xu Tuesday, April 15, Nodes visited (after AC)
Lin Xu Tuesday, April 15, CC for DPC-TCSP (without AC)
Lin Xu Tuesday, April 15, CC for DPC-TCSP (after AC)
Lin Xu Tuesday, April 15, CC for PPC-A-TCSP (without AC)
Lin Xu Tuesday, April 15, CC for PPC-A-TCSP (after AC)
Lin Xu Tuesday, April 15, CC for STP-TCSP BEST
Lin Xu Tuesday, April 15, Random generators STP generators Implemented two new Tested three GenSTP-1 [Xu & Choueiry, submitted] GenSTP-2 [Courtesy of Ioannis Tsamardinos] SPRAND (sub-class of SPLIB) [Public domain] TCSP generator Implemented two new Tested 1: GenTCSP-1 [Xu & Choueiry, submitted]
Lin Xu Tuesday, April 15, Output from thesis 1 paper accepted in TIME-ICTL papers submitted to CP papers submitted to IJCAI 2003 workshop on Spatial & Temporal Reasoning
Lin Xu Tuesday, April 15, Answers to Question I Is there a better algorithm for STP than F-W ? Exploiting topology: AP improves any STP solver Constraint semantic: convexity STP is more efficient than F-W and PPC
Lin Xu Tuesday, April 15, Answer to Question II Is there a consistency filtering algorithm for reducing the size of TCSP? AC reduces the size of meta-CSP by eliminating intervals from the domain of edge Effective, cheap, almost optimal
Lin Xu Tuesday, April 15, Answers to Question III Can we improve the performance of BT-TCSP by using a better STP solver? Yes, STP is better than DPC to reduce cost of BT By avoiding to check STP consistency at every node? Yes, NewCyc avoids unnecessary checks & localizes updates By exploiting the topology of the constraint graph? Yes, using articulation points By finding a good variable ordering heuristic We propose EdgeOrd, significantly reduces cost of search
Lin Xu Tuesday, April 15, Future work Improve AC, establish optimality Integrate AC with ULT (a closure algorithm) with search, as in forward-checking Exploit interchangeability in BT-TCSP, best method for finding all solution
Lin Xu Tuesday, April 15, The End Thank you for your attention Questions & comments are welcome