SlideShare una empresa de Scribd logo
1 de 34
Keith McFarlane keith dot mcfarlane at gmail dot com
Agenda ,[object Object],[object Object],[object Object],[object Object],[object Object]
Concepts
What is sensor fusion? ,[object Object],1 From Wikipedia article on Sensor Fusion ,[object Object],[object Object],[object Object],[object Object],[object Object]
Why give sensor fusion special attention? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Principles for Dynamic World Modeling 1 ,[object Object],[object Object],[object Object],[object Object],[object Object],1 Crowley et al
The Predict-Match-Update Cycle A model for fusing sensor readings into an actionable view of the world  Transform Match Observations Update World Model Predict Sensors gather raw data about the world The data are put into some form that is compatible with the model The data are matched against / merged with previous predictions about the world The model is updated with the new data Predictions are reset based on updated model
Symbolic vs. Numeric Methods ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Concepts
Enterprise Origins: SOA vs. EDA ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Complex Event Processing ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Events ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Event conveyance vs. processing ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Complex Events ,[object Object],[object Object],Event Queue 1 Event Queue 2 Event Queue 3 E1 E1 E1 E1 E1 E2 E2 E2 E2 E3 C1 Detect event count C2 Detect event timing C3 Detect event coincidence
Scenario: Detecting Cheap Gas Rule: My Location within one mile of gas station with price under $2.75 and gas tank low Sends real-time changes in gas prices for a set of gas stations Gas Prices Service Event Processor “ Cheap Gas Nearby” Alert New Price New Price New Price New Price New Price New Price New Location New Location New Location New Location New Location Mobile phone GPS Location Service New Location Gas Level SMS
Event Pattern Abstraction ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Sensor Fusion and CEP Conceptual Relationships Sensor Fusion CEP Collects observations Receives Events Requires normalized observation schema Requires normalized event data Dynamic world modeling Event stream maintenance Matching Event correlation/pattern detection Situational awareness Event pattern abstraction Symbolic fusion Event schema Used to model the world using limited data set and predictive feedback model Used to detect specific situations
 
Esper: Open Source CEP ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],http://docs.codehaus.org/display/ESPER/Esper+performance
Esper Container Architecture Events Source: http://www.espertech.com Esper Lightweight CEP Container Event Stream Connectors and Adapters Historical Data Access Layer Container Core Event Query and Pattern Language Executive Event Query and Pattern Language Esper Engines Statements Statements Statements Statements Statements POJOs Output Adapters
EPL: Event Processing Language ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
EPL: Familiar Concepts from SQL Clause Description SELECT Indicates an that events should be selected based on a set of criteria. Can select on insert stream, remove stream, or both. FROM Defines the event stream(s) or named window(s) from which events should be selected WHERE Allows filtering of events based on a wide range of criteria GROUP BY Allows stratification of events by a set of characteristics HAVING Filters groups specified by the GROUP BY clause INSERT INTO Creates new events in the given named window, allowing events to cascade through the system
An Example EPL Statement ,[object Object],[object Object],[object Object],[object Object],select * from BatteryChargeEvent(charge<400).win:length(5)
Event Streams ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Views ,[object Object],[object Object],[object Object],[object Object],[object Object],win:length win:length_batch win:time win:time_batch win:time_length_batch win:time_accum win:ext_timed ext:sort_window ext:time_order std:unique std:groupby win:firsttime
 
Hardware El Cheapo Laptop Roo232 USB-to-Serial Cable Roomba Sage Reversed Mac Mini-DIN 8  M2M Cable
Roomba Connector ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The Command Pattern
EventBot Data Flow vs. Fusion Model Roomba Events Commands Roomba Connector Event Transformer Esper CEP Event Listeners Transform Match Observations Update World Model Predict World Model
Code Walkthrough ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Next Steps ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
email: keith dot mcfarlane at gmail dot com
References ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

Más contenido relacionado

La actualidad más candente

La actualidad más candente (7)

Kks sre book_ch1,2
Kks sre book_ch1,2Kks sre book_ch1,2
Kks sre book_ch1,2
 
SplunkLive! Frankfurt 2018 - Integrating Metrics & Logs
SplunkLive! Frankfurt 2018 - Integrating Metrics & LogsSplunkLive! Frankfurt 2018 - Integrating Metrics & Logs
SplunkLive! Frankfurt 2018 - Integrating Metrics & Logs
 
Zühlke Meetup - Mai 2017
Zühlke Meetup - Mai 2017Zühlke Meetup - Mai 2017
Zühlke Meetup - Mai 2017
 
FPGA CEP Appliance
FPGA CEP ApplianceFPGA CEP Appliance
FPGA CEP Appliance
 
Splunk Ninjas: New Features and Search Dojo
Splunk Ninjas: New Features and Search DojoSplunk Ninjas: New Features and Search Dojo
Splunk Ninjas: New Features and Search Dojo
 
SplunkLive! Frankfurt 2018 - Data Onboarding Overview
SplunkLive! Frankfurt 2018 - Data Onboarding OverviewSplunkLive! Frankfurt 2018 - Data Onboarding Overview
SplunkLive! Frankfurt 2018 - Data Onboarding Overview
 
Threat Detection in Surveillance Videos
Threat Detection in Surveillance VideosThreat Detection in Surveillance Videos
Threat Detection in Surveillance Videos
 

Destacado

Big Eye At Nits
Big Eye At NitsBig Eye At Nits
Big Eye At Nits
guest68f1f1
 
淋巴水腫之物理治療 楊靜蘭
淋巴水腫之物理治療 楊靜蘭淋巴水腫之物理治療 楊靜蘭
淋巴水腫之物理治療 楊靜蘭
Kit Leong
 

Destacado (20)

Disruptive Technologies Android - Dongle, Smart Glasses, Sensor Fusion, IOT, ...
Disruptive Technologies Android - Dongle, Smart Glasses, Sensor Fusion, IOT, ...Disruptive Technologies Android - Dongle, Smart Glasses, Sensor Fusion, IOT, ...
Disruptive Technologies Android - Dongle, Smart Glasses, Sensor Fusion, IOT, ...
 
Usages robots beam lyon1 decembre2015
Usages robots beam lyon1 decembre2015Usages robots beam lyon1 decembre2015
Usages robots beam lyon1 decembre2015
 
The Challenges of Robotic Design
The Challenges of Robotic DesignThe Challenges of Robotic Design
The Challenges of Robotic Design
 
Big Eye At Nits
Big Eye At NitsBig Eye At Nits
Big Eye At Nits
 
Cyberknife medanta
Cyberknife medantaCyberknife medanta
Cyberknife medanta
 
Flying robot
Flying robot Flying robot
Flying robot
 
Wireless Indoor Localization with Dempster-Shafer Simple Support Functions
Wireless Indoor Localization with Dempster-Shafer Simple Support FunctionsWireless Indoor Localization with Dempster-Shafer Simple Support Functions
Wireless Indoor Localization with Dempster-Shafer Simple Support Functions
 
Fusion, Acquisition - Optimisez la migration et la continuité des outils col...
 Fusion, Acquisition - Optimisez la migration et la continuité des outils col... Fusion, Acquisition - Optimisez la migration et la continuité des outils col...
Fusion, Acquisition - Optimisez la migration et la continuité des outils col...
 
Major trends in the digital world : “Fusion” “Share” and “Data"
Major trends in the digital world :  “Fusion” “Share” and “Data"Major trends in the digital world :  “Fusion” “Share” and “Data"
Major trends in the digital world : “Fusion” “Share” and “Data"
 
Robotics
RoboticsRobotics
Robotics
 
Robotics project ppt
Robotics project pptRobotics project ppt
Robotics project ppt
 
淋巴水腫之物理治療 楊靜蘭
淋巴水腫之物理治療 楊靜蘭淋巴水腫之物理治療 楊靜蘭
淋巴水腫之物理治療 楊靜蘭
 
Lymphoscintigraphy As an Imaging Modality in Lymphatic System
Lymphoscintigraphy As an Imaging Modality in Lymphatic SystemLymphoscintigraphy As an Imaging Modality in Lymphatic System
Lymphoscintigraphy As an Imaging Modality in Lymphatic System
 
A3 - Symptom Management
A3 - Symptom ManagementA3 - Symptom Management
A3 - Symptom Management
 
Determining a vascular cause for leg pain and referrals
Determining a vascular cause for leg pain and referralsDetermining a vascular cause for leg pain and referrals
Determining a vascular cause for leg pain and referrals
 
Measuring for Lower Extremity Compression Garments
Measuring for Lower Extremity Compression GarmentsMeasuring for Lower Extremity Compression Garments
Measuring for Lower Extremity Compression Garments
 
Dvt
DvtDvt
Dvt
 
Vascular disorders
Vascular disordersVascular disorders
Vascular disorders
 
Leg Ulcer
Leg UlcerLeg Ulcer
Leg Ulcer
 
DVT
DVTDVT
DVT
 

Similar a Open Source Event Processing for Sensor Fusion Applications

MICE: Monitoring and modelIng of Context Evolution
MICE: Monitoring and modelIng of Context EvolutionMICE: Monitoring and modelIng of Context Evolution
MICE: Monitoring and modelIng of Context Evolution
Luca Berardinelli
 
Discrete event systems comprise of discrete state spaces and event
Discrete event systems comprise of discrete state spaces and eventDiscrete event systems comprise of discrete state spaces and event
Discrete event systems comprise of discrete state spaces and event
Nitish Nagar
 
Aceu2009 Apache Synapse Events
Aceu2009 Apache Synapse EventsAceu2009 Apache Synapse Events
Aceu2009 Apache Synapse Events
guest60ed0b
 

Similar a Open Source Event Processing for Sensor Fusion Applications (20)

Guido schmutz-jax2011-event-driven soa
Guido schmutz-jax2011-event-driven soaGuido schmutz-jax2011-event-driven soa
Guido schmutz-jax2011-event-driven soa
 
Eda on the azure services platform
Eda on the azure services platformEda on the azure services platform
Eda on the azure services platform
 
Mythbusters: Event Stream Processing v. Complex Event Processing
Mythbusters: Event Stream Processing v. Complex Event ProcessingMythbusters: Event Stream Processing v. Complex Event Processing
Mythbusters: Event Stream Processing v. Complex Event Processing
 
FIWARE Complex Event Processing
FIWARE Complex Event ProcessingFIWARE Complex Event Processing
FIWARE Complex Event Processing
 
FIWARE Complex Event Processing
FIWARE Complex Event ProcessingFIWARE Complex Event Processing
FIWARE Complex Event Processing
 
Cogility intel-web site-v1.0
Cogility intel-web site-v1.0Cogility intel-web site-v1.0
Cogility intel-web site-v1.0
 
Event-driven Infrastructure - Mike Place, SaltStack - DevOpsDays Tel Aviv 2016
Event-driven Infrastructure - Mike Place, SaltStack - DevOpsDays Tel Aviv 2016Event-driven Infrastructure - Mike Place, SaltStack - DevOpsDays Tel Aviv 2016
Event-driven Infrastructure - Mike Place, SaltStack - DevOpsDays Tel Aviv 2016
 
Processing Patterns for Predictive Business
Processing Patterns for Predictive BusinessProcessing Patterns for Predictive Business
Processing Patterns for Predictive Business
 
Complex Event Processing - A brief overview
Complex Event Processing - A brief overviewComplex Event Processing - A brief overview
Complex Event Processing - A brief overview
 
S4: Distributed Stream Computing Platform
S4: Distributed Stream Computing PlatformS4: Distributed Stream Computing Platform
S4: Distributed Stream Computing Platform
 
Intelligent Monitoring
Intelligent MonitoringIntelligent Monitoring
Intelligent Monitoring
 
MICE: Monitoring and modelIng of Context Evolution
MICE: Monitoring and modelIng of Context EvolutionMICE: Monitoring and modelIng of Context Evolution
MICE: Monitoring and modelIng of Context Evolution
 
SOPRANO Ambient Middleware (AAL)
SOPRANO Ambient Middleware (AAL)SOPRANO Ambient Middleware (AAL)
SOPRANO Ambient Middleware (AAL)
 
Optimizing Your SOA with Event Processing
Optimizing Your SOA with Event ProcessingOptimizing Your SOA with Event Processing
Optimizing Your SOA with Event Processing
 
Discrete event systems comprise of discrete state spaces and event
Discrete event systems comprise of discrete state spaces and eventDiscrete event systems comprise of discrete state spaces and event
Discrete event systems comprise of discrete state spaces and event
 
Data Analysis In The Cloud
Data Analysis In The CloudData Analysis In The Cloud
Data Analysis In The Cloud
 
Aceu2009 Apache Synapse Events
Aceu2009 Apache Synapse EventsAceu2009 Apache Synapse Events
Aceu2009 Apache Synapse Events
 
Observability foundations in dynamically evolving architectures
Observability foundations in dynamically evolving architecturesObservability foundations in dynamically evolving architectures
Observability foundations in dynamically evolving architectures
 
Deconstructing Monoliths with Domain Driven Design
Deconstructing Monoliths with Domain Driven DesignDeconstructing Monoliths with Domain Driven Design
Deconstructing Monoliths with Domain Driven Design
 
Processing Patterns for PredictiveBusiness
Processing Patterns for PredictiveBusinessProcessing Patterns for PredictiveBusiness
Processing Patterns for PredictiveBusiness
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 

Open Source Event Processing for Sensor Fusion Applications

  • 1. Keith McFarlane keith dot mcfarlane at gmail dot com
  • 2.
  • 4.
  • 5.
  • 6.
  • 7. The Predict-Match-Update Cycle A model for fusing sensor readings into an actionable view of the world Transform Match Observations Update World Model Predict Sensors gather raw data about the world The data are put into some form that is compatible with the model The data are matched against / merged with previous predictions about the world The model is updated with the new data Predictions are reset based on updated model
  • 8.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15. Scenario: Detecting Cheap Gas Rule: My Location within one mile of gas station with price under $2.75 and gas tank low Sends real-time changes in gas prices for a set of gas stations Gas Prices Service Event Processor “ Cheap Gas Nearby” Alert New Price New Price New Price New Price New Price New Price New Location New Location New Location New Location New Location Mobile phone GPS Location Service New Location Gas Level SMS
  • 16.
  • 17. Sensor Fusion and CEP Conceptual Relationships Sensor Fusion CEP Collects observations Receives Events Requires normalized observation schema Requires normalized event data Dynamic world modeling Event stream maintenance Matching Event correlation/pattern detection Situational awareness Event pattern abstraction Symbolic fusion Event schema Used to model the world using limited data set and predictive feedback model Used to detect specific situations
  • 18.  
  • 19.
  • 20. Esper Container Architecture Events Source: http://www.espertech.com Esper Lightweight CEP Container Event Stream Connectors and Adapters Historical Data Access Layer Container Core Event Query and Pattern Language Executive Event Query and Pattern Language Esper Engines Statements Statements Statements Statements Statements POJOs Output Adapters
  • 21.
  • 22. EPL: Familiar Concepts from SQL Clause Description SELECT Indicates an that events should be selected based on a set of criteria. Can select on insert stream, remove stream, or both. FROM Defines the event stream(s) or named window(s) from which events should be selected WHERE Allows filtering of events based on a wide range of criteria GROUP BY Allows stratification of events by a set of characteristics HAVING Filters groups specified by the GROUP BY clause INSERT INTO Creates new events in the given named window, allowing events to cascade through the system
  • 23.
  • 24.
  • 25.
  • 26.  
  • 27. Hardware El Cheapo Laptop Roo232 USB-to-Serial Cable Roomba Sage Reversed Mac Mini-DIN 8 M2M Cable
  • 28.
  • 30. EventBot Data Flow vs. Fusion Model Roomba Events Commands Roomba Connector Event Transformer Esper CEP Event Listeners Transform Match Observations Update World Model Predict World Model
  • 31.
  • 32.
  • 33. email: keith dot mcfarlane at gmail dot com
  • 34.