This invention relates generally to person and object tracking and, in particular, to a distributed, decentralized agent-based computing environment applicable to maintaining surveillance over a geographic region.
Modern military engagements require detecting and monitoring the movement of people and resources, both military and civilian, in real time over a wide area with little direct human supervision. This problem poses a number of challenges to conventional sensing and data processing technologies. In the context of such behavior, it has become increasingly difficult to automatically detect such movements, since the relevant patterns may exist on many disparate levels. In some situations, combinations of geographical movement of personnel, vehicles and objects may need to be analyzed simultaneously. Currently this is a very human-intensive operation, typically requiring numerous individuals.
Active monitoring of human and non-human movement involves the detection and classification of spatio-temporal patterns across a large number of real-time data streams. Approaches that analyze data in a central computing facility tend to be overwhelmed with the amount of data that needs to be transferred and processed in a timely fashion. Also, centralized processing raises proprietary and privacy concerns that may make many data sources inaccessible.
The detection and classification of subtle changes in an activity requires the integration of a wide variety of non-specific real-time data sources into the operation of the tracking system. Furthermore, to guarantee the early detection of a suspicious or critical movement, the system must operate on real-time data that is continuously updated. As a result, there is an immense amount of data that needs to be processed in a timely fashion.
Our co-pending U.S. patent application Ser. No. 10/352,288, entitled “Swarming Agents For Distributed Pattern Detection and Classification,” incorporated herein by reference, describes a swarming agent architecture for the distributed detection and classification of spatio-temporal patterns in a heterogeneous real-time data stream. The invention is not limited to geographic structures or patterns in Euclidean space, and is more generically applicable to non-Euclidean patterns such as topological relations in abstract graph structures. According to this disclosure, large populations of simple mobile agents are deployed in a physically distributed network of processing nodes. At each such node, a service agent enables the agents to share information indirectly through a shared, application-independent runtime environment. The indirect information sharing permits the agents to coordinate their activities across entire populations. The architecture may be adapted to the detection of various spatio-temporal patterns and new classification schemes may be introduced at any time through new agent populations. The system is scalable in space and complexity due to the consequent localization of processing and interactions. The system and method inherently protect potentially proprietary or private data through simple provable local processes that execute at or near the actual source of the data. The fine-grained agents, which swarm in a large-scale physically distributed network of processing nodes, may be designed to perform three major tasks: 1) they may use local sensors to acquire data and guide its transmission; 2) they may fuse, interpolate, and interpret data from heterogeneous sources, and 3) they may make or influence command and control decisions. In contrast to previous approaches involved with command and control, or data acquisition and transmission, such an approach facilitates a swarming agent architecture for distributed pattern-detection and classification.
This invention extends the concept of a swarming agent architecture to provide a distributed, decentralized agent-based computing environment applicable to ground-based surveillance. The approach, called Sensor Network Integration through Pheromone Fusion, or “SNIPF,” provides an end-to-end demonstration that integrates self-contained sensor/communication nodes with novel swarming algorithms to detect foot and vehicular movement through a monitored area with minimal configuration and maintenance.
In the preferred embodiment, a decentralized tracking system according to the invention includes a plurality of computational nodes distributed within an environment. Depending upon the way in which they are deployed, the various nodes are operative to sense the local environment, receive a message from a neighboring node, and transmit a message to a neighboring node. Given these capabilities, the nodes can collectively determine the presence and/or movement of a target and communicate this information to a user.
Though not required, the system may include nodes that are capable of collectively determining the speed and heading of a target, and the gathered intelligence may be communicated to users within, and external to, the environment. A particularly useful configuration may include one or more ‘free’ nodes having relatively limited communications and computational power, and one or more anchor nodes equipped with GPS and/or long-distance communications capabilities.
Important characteristics of the system and method are summarized in Table 1.
As discussed in the Background of the Invention, SNIPF is based on swarm intelligence [1,3], a new approach to information processing that uses the interactions among processors as well as computation within processors to detect, analyze, and respond to sensory input. This approach contrasts with other approaches in common use.
SNIPF processes sensory data in situ, not centrally, in contrast to data mining and data warehousing approaches. In contrast to conventional artificial intelligence approaches, processing is numerical, utilizing insect-inspired digital “pheromones,” and not symbolic implementations. Spatial reasoning draws on each node's location and the limited neighborhood induced by short radio range, rather than using an explicit representation of space, thus different from traditional signal processing.
Each node interacts with its environment in three ways. It reads its local sensors, receives messages broadcast by nearby neighbors, and broadcasts messages that can be received by nearby neighbors. Such a sensor field can detect the presence of a target, localize it, determine its velocity (speed and heading), and communicate this information to users, both external to the sensor field and within it, using only a few thousand bytes of software and requiring only a few hundred bytes per second of bandwidth.
Network Configuration
A SNIPF network has two kinds of nodes. Most nodes (˜95%) are free, with only limited communications and computational power. The nodes are inexpensive and they can run for a long time on small batteries. A few nodes are anchors, with GPS and long-haul communications (e.g., satellite) to transmit the net's findings to commanders. Each node has a unique identifier.
Both kinds of nodes are distributed randomly over the battlespace or other environment of interest (
Once on the ground (or in water), the nodes self-configure and construct gradients to the anchors. These activities repeat periodically (e.g., daily) to account for lost nodes. To reduce message size, nodes define locally unique identifiers. In the preferred implementation, 6 bits are adequate for these identifiers. Each anchor broadcasts its identity and a hop count (initially zero). Every receiving node (
Once in place, the nodes interact in a sensing cycle whose frequency depends on the expected rate of change in the environment. For example, to track vehicles moving on the order of 30 km/h=8.3 m/sec, nodes spaced on average 10 m apart need a sensing cycle of 0.5 sec to guarantee that they see the target when it is in their zone. For pedestrians, cycles of 10 sec suffice, while monitoring construction of a stationary facility could use cycles of several minutes or even hours.
Detecting a Target
For discussion, we assume that a node's sensor responds to targets in its environment by generating a signal σ∈[0,1]. σ may be a primary sensor reading, the output of a “sensor fusion function” that combines readings from multiple sensors, the time rate of change of a sensor instead of its absolute reading, or other derivative data that will be obvious to one skilled in the art of sensor processing. In the preferred implementation, σ is normalized to fall in the range ∈[0,1], but the method here taught may be applied to other ranges as well.
The node translates σ (a real number) to a binary detection indication, using a threshold θ that falls in the open interval corresponding to the range of σ (in the preferred implementation, θ∈(0,1)). If σ≧θ, the node concludes that it sees a target; if σ<θ, it ignores the signal.
SNIPF uses neighbor corroboration (
Table 2 compares SNIPF's detection algorithm with other common data fusion architectures.
Target Location (
Once detected, a target must be located geographically. Of all the nodes that detect the target, those closest to it must recognize that they are the closest. The percentage p of a node's neighbors that detect the target will be higher for a node closer to the target than for one far away. An “edge node” is one that detects the target and whose p is less than φ∈(0,1). Nodes that detect the target but are not edge nodes must be one step closer to the target, and so forth. Nodes already know whether they are edge nodes as a result of target detection. To locate the target, detecting nodes construct a gradient using a small integer (four bits in the preferred implementation) indicating their distance from the edge. A detecting node that hears no edge distance greater than its own knows that it is farthest from the edge, and thus that it is a nearest node.
Determining Target Velocity (
A node estimates target velocity by maintaining a short history (ten steps in the preferred implementation) of its edge distance and measuring how fast it changes. A node in line with the target's vector sees the highest rate of change in its edge distance, while a node on the edge of the detecting range at the maximum distance from the line of movement sees the slowest. A gradient mechanism identifies the nodes of highest change. Their rate of change estimates the target's speed, and their position estimates its direction.
Communications
The sensor net must communicate information about the presence, location, and velocity of the target to other blue units. SNIPF provides two mechanisms for this communication. First, messages can diffuse up gradients to the nearest anchor, whose higher-power radio can pass the information on to a remote headquarters. Second, SNIPF can use target information locally to attract mobile resources, such as SOF personnel or unpiloted robotic vehicles. The mobile entity listens to broadcasts from the nodes. A node that determines that it is closest to the target generates a gradient. Mobile entities climb this gradient to reach the target.
Multiple Target Types
For simplicity, this discussion has assumed a single type of target with a single sensor configuration. It will be apparent to one skilled in the art that SNIPF can handle multiple target types requiring different sensor configurations, by adding a tag to each message indicating the target type with which the message is concerned. Required bandwidth is linear in the number of different sensor configurations.
Hardware Platform
The SNIPF algorithms are extremely robust and economic of processor and communications resources. An anticipated prototype will use a multi-sensor board that includes an acoustic sensor with tone decoder with a range of 6 m@60 db, a magnetometer that can sense a truck at 10 m, and a 2-axis accelerometer with 2 mg sensitivity. Other sensors can be interfaced for additional sensing tasks (e.g., chem./bio sensors, or the multi-frequency Hausdorff antenna shown in
SNIPF can track any entity for which a sensor exists that can function at a range on the order of the communication range. The prototype's sensor suite will be sensitive to targets such as light trucks, talking humans, and animal-drawn carts as well as more traditional military forces and equipment. The HW supports any sensor, and SNIPF (unlike conventional AI or data mining algorithms) makes no assumptions about the nature of the sensors, so the system can be extended easily. One skilled in the art will appreciate that the hardware details described here are by way of example and not restriction, and that the essence of the invention can be applied to other hardware platforms.
Replenishment
The inventive system may optionally repair a net when some nodes die or are removed. If a node detects that the number of its neighbors has dropped, it generates a gradient leading to itself. A lightweight unpiloted robotic vehicle equipped with a new node drops the new node in the area of the attracting node, thus increasing the net's local density and repairing the breach. Refinements of this scheme are possible. For example, if the net detects increased activity in an area previously quiescent the density of nodes in that area can be increased to provide finer resolution of sensing.
Potential users of SNIPF include SOF (via handheld computers with SNIPF-compatible radios), central command (using information exported from the network to identify events requiring further attention), and local commands (who will be interested in exported information, and in addition may deploy unpiloted vehicles such as UAV's or UGV's to move within the sensor field in response to detected targets). SNIPF can also be used by security personnel for perimeter monitoring in military and civilian applications.
This application claims priority from U.S. Provisional Patent Application Ser. No. 60/386,688, filed Jun. 6, 2002; and is a continuation-in-part of U.S. patent application Ser. No. 10/352,288, filed Jan. 27, 2003. The entire content of each application is incorporated herein by reference.
| Number | Name | Date | Kind |
|---|---|---|---|
| 5307289 | Harris | Apr 1994 | A |
| 6885303 | Payton et al. | Apr 2005 | B2 |
| 7113746 | Payton et al. | Sep 2006 | B2 |
| 20030154262 | Kaiser et al. | Aug 2003 | A1 |
| Number | Date | Country | |
|---|---|---|---|
| 20030228035 A1 | Dec 2003 | US |
| Number | Date | Country | |
|---|---|---|---|
| 60386688 | Jun 2002 | US |
| Number | Date | Country | |
|---|---|---|---|
| Parent | 10352288 | Jan 2003 | US |
| Child | 10456221 | US |