| Tracking Objects In Motion |
|
By Mark Myers, ObjectFX Corporation Published in GeoWorld, February 2007 Technologies such as the Global Positioning System (GPS) and Radio Frequency Identification (RFID), as well as a new generation of sensing devices, have made it possible to monitor just about any human or physical activity and pinpoint that activity in time and space. Sensor networks and ubiquitous communication infrastructure can tie such data to back-end systems for a variety of applications. Beyond GISTraditional GISs play a supporting role in these applications by providing a visual backdrop and location information for relatively static elements such as roads, buildings and geographic features as well as by displaying the location and geographic context of tracked objects. For example, a "breadcrumb trail" can be used to show the movement of a tracked object through time and space. In a "geofencing" application, GIS tools are typically used to draw or select boundaries that are monitored for "enter" and "exit" events. Spatial queries and other spatial operations can be applied to determine if a tracked object is inside or outside a designated area. These tools may be adequate for the most basic geofencing applications, but they fall short of exploiting the full value of dynamic location data in two respects:
A Spatiotemporal Rule EngineTo improve this situation, we need a specialized, "pluggable" middleware component capable of processing large amounts of spatial and temporal data in a streaming format against a set of constantly changing rules and boundaries. The concept isn’t a radical departure, but a natural evolution of a long-standing concept adapted to spatiotemporal rule processing. As a middleware component, a spatiotemporal rule engine should be easily integrated. Beyond the core engine capable of processing spatiotemporal rules, the resources required by such a system are minimal: a database of spatial and temporal boundaries that define the areas and timeframes of interest, and a set of rules defined by users. Interfaces to such a system can be minimal and straightforward. Inputs can be "location reports" or "observations" from collection systems that contain, at minimum, a unique identifier for the tracked object, a time stamp and a location. Additional metadata may be included and used in rule processing. The system’s output can be considered an "event" that’s produced when a rule tests true, and it typically would contain contextual information identifying the event’s subject and targets, time and position, and rule logic used to detect it. Events produced by a spatiotemporal rule engine can trigger downstream actions that are under the control of the "host" application. For example, an event could cause a symbol or alert to appear on a map to inform a human operator, trigger an automated response from another application or generate an e-mail alert. The Human ElementAutomated rule processing isn’t a substitute for human reasoning. It’s a way to encapsulate human understanding in a set of rules so we can mine large amounts of location data and reduce them to manageable proportions, letting humans focus on what’s most important. |