100 likes | 235 Views
Event Use Cases: Location-based Services. Logistics, Airspace Management and Consumer Telecoms Dr John Bates Founder & Vice President, Apama Mark Palmer General Manager & Vice President, Apama David Swan Director of Engineering, Apama. Spatial Event-based Systems.
E N D
Event Use Cases:Location-based Services Logistics, Airspace Management and Consumer Telecoms Dr John Bates Founder & Vice President, Apama Mark Palmer General Manager & Vice President, Apama David Swan Director of Engineering, Apama
Spatial Event-based Systems • Events with spatial properties becoming more prevalent due to increasing sensor capture: • GPS + wireless • Specialized location devices • Fine-grained RFID • Sensing external systems, e.g. radar • Principles of spatial event applications • Track multiple (moving) objects • Monitor “zones” around each object • Take actions when specific zones intersect
Apama Use Cases • Military/Government • Digital Battlespace • Airspace Monitoring • Logistics • Truck and Cargo Monitoring • Transportation • Train network monitoring • Airline baggage tracking • Telecommunications • Location-based services, e.g. Dating, Couponing
Apama Digital Battlespace time Men Locations Minefield Locations • Warn any squad commander if any of his men come within ½ km of a mine field
Anticipitory Flight OperationsMonitor, analyze air space conflicts and detect course anomalies Monitor: Check vertical & horizontal separation by constantly monitoring flight position event streams • Act: • Suggest plane re-route • Alert the authorities as a precaution • Analyze: • Analyze alternative flight paths • Is plane deviating from its specified course? • Is plane’s trajectory changing towards a listed high risk zone?
Event System Enhancements • Support Cartesian coordinate system • Add Location type • Encapsulate spatial container (X1,Y1,X2,Y2) or (X1,Y1,Z1,X2,Y2,Z2) • Provide operations and behaviour, e.g. • Intersection • Within eventMovingObject { stringname; locationloc; } MovingObject(‘Plane 1’, 30.12,23.67,41.96, 32.23,25.45,43.34);
Example Event Language Snippet eventMovingObject { // The event definition stringname; locationloc; } MonitorCollisionDetector { // The main monitor MovingObjectmo, co; // Store the latest events for // “Plane 1” and any nearby objects actiononload { // Look for all updates of “Plane 1” followed by an update from an // an object that is within 2.0 Meters and take an action. However, // if an update is from “Plane 1” do not take an action and stop // using “Plane 1’s” old position. Restart with the new location. on allMovingObject (name = ‘Plane 1’):mo { on allMovingObject (loc = mo.loc.expand(2.0)):coand notMovingObject (name = ‘Plane 1’) { // Take whatever action necessary print co.name + “ is near “ + mo.name; } }
Example 2 – Monitor ALL objects eventMovingObject { // The event definition stringname; locationloc; } MonitorCollisionDetector { // The main monitor MovingObjectmo, co; // Store the latest events for actiononload { // Look for all updates of any object followed by a second update of // an object that is within 2.0 Meters and take an action. However, // if the second update is from the same object do not take an // action and stop using the old position of the first object; // instead restart with the new location. on allMovingObject ():mo { on allMovingObject (loc = mo.loc.expand(2.0)):coand notMovingObject (name = mo.name) { // Take whatever action necessary print co.name + “ is near “ + mo.name; } }
Logistics • Show me the locations of all trucks • Show me any trucks behind schedule by greater than 15 minutes • Show me any trucks that have perishable cargo that are > 1 hour behind schedule and temperature is > 30 degrees
Telco – Location Aware Services • Location Aware Couponing • match participants with the location & services offered by retail outlets • Location Aware Matching (“Buddy Finder”, “Dating”) • match the location and profiles of all participants