A Generic Framework for Continuous Motion Pattern Query Evaluation Petko Bakalov University of California Riverside, CA 92521 email@cs.ucr.edu Vassilis J. Tsotras University of California Riverside, CA 92521 tsotras@cs.ucr.edu Abstract We introduce a novel query type defined over streaming moving object data, namely, the Continuous Motion Pattern (CMP) Queries. A motion pattern is defined as a sequence of distinct spatial predicates, each attached to a temporal constraint. The spatial predicates can be of various types (range, nearest neighbor, etc.) The temporal constraints are relative to the current time instant and are used to spec- ify the order of the spatial predicates on the time axis. A CMP query is continuously reevaluated over streaming spa- tiotemporal data, producing the moving objects which sat- isfy the query’s motion pattern. We first introduce an easily maintainable indexing scheme for spatiotemporal streams that facilitates the evaluation of the spatial predicates over their temporal constraints. Using this scheme we propose a generic framework for efficiently answering a wide range of CMP queries. The effectiveness of our algorithms in re- ducing the query computation cost and I/O operations is revealed through a thorough experimental evaluation. 1 Introduction The widespread use of location detection devices (RFID, GPS etc.) has enabled the creation of complex tracking and situational awareness systems which continuously monitor the position of moving objects of interest and can thus pro- vide complex services to their end users. Example applica- tions include security monitoring, vehicle tracking, traffic management, etc. In a typical surveillance system architec- ture the set of monitored objects continuously report their position to the data collection device using data packets containing their identifier, current location and timestamp. These data packets are combined into a single spatiotem- poral stream that is forwarded to a centralized server for query processing. The system users register their queries to the server and continuously receive the result based on the changing state of the data. The described streaming architecture differs from the static spatiotemporal archives like [11, 5] in two major as- pects. First, the continuous nature of the streaming data requires real time processing using relatively simple data structures for indexing. Second, in the streaming environ- ment the query evaluation is a continuous process. Unlike the typical snapshot queries over the static archives that are evaluated only once, continuous queries require a continu- ous reevaluation since results become obsolete and invalid as information about the monitored objects changes. Recent research in continuous spatial query processing has been focused mainly on single predicate queries, where the predicate is a Range [3, 12] or a Nearest Neighbor [6]. In this paper we focus on the continuous evaluation of “mo- tion pattern” (i.e. CMP) queries. Here a single query is expressed with multiple predicates, correlated over time. We argue that since the data produced by the moni- tored moving objects is “trajectorial” in nature, users of these surveillance and tracking systems should also be able to query the “behavior” of the moving objects over time. Consider for instance a criminal offenders monitoring ap- plication (like tracNET24 or ExacuTrack) which tracks the movement of law offenders (through special wearable GPS devices) inside a given area and alerts the correctional offi- cers for any suspicious or illegal behavior. The suspicious behavior can be defined as a CMP query like: “Continu- ously report objects that did pass through all five bank of- fices in the area and have been in areas not covered with surveillance cameras for more than 20 minutes in the last half an hour”. In this example, the object behavior is cap- tured by the sequence of spatial (range) predicates ordered by time, where the temporal predicates are relative to the ever increasing current time. This type of query cannot be answered with processing methods focused only on the cur- rent state of the stream; rather, we need to maintain and query appropriate past states (the history) of the spatiotem- poral stream. Motion pattern queries [4] have been well studied for static spatiotemporal archives (i.e., when all data is known in advance and the query is evaluated once). To the best of our knowledge there is no work for this problem in the 1