Post on 14-Jan-2016
Project IIRule Optimizer for the Atlas
Reactivity Engine
CNT 5517-5564
Dr. Sumi HelalComputer & Information Science & Engineering Department
University of Florida, Gainesville, FL 32611helal@cise.ufl.edu
Manuals & Downloads
• The Atlas Class Web Page– http://www.icta.ufl.edu/atlas/
• The Atlas Reactivity Engine– http://www.cise.ufl.edu/~helal/classes/AtlasRE.zip
Overall Architecture
Atlas MiddlewareAtlas Middleware
RE Optimizer
Atlas Emulator
Atlas Emulator
Atlas Reactivity Engine
Atlas Reactivity Engine
Atlas Emulator
Atlas Emulator
CommandInterpreterCommandInterpreter
Atlas RE Engine
• An Event/Condition/Action paradigm • A programming model for pervasive space• A Command line interface to interact with the
engine– View Basic Events & Actions. – Predefine: Events, Conditions and Actions– Define Rules– Accept commands & Provide results/feedback
• Engine interacts with the sensors /actuators through the Atlas middleware
EVENTS
Conditions
Rules
Actions
Commands
Tokens & Delimiters
Optimization Frameworks
• Push/Pull Envelop
• Caching
• Evaluation Short Cuts
• Application Characteristics
Push / Pull Envelop
• Configuration of which sensors should participate, and if so, in which mode (push or pull, and if latter, at which frequency).
push
pullpure pushpure push
pure pullpure pull
sensor
Atlas Reactivity Engine
…… sensorsensorsensor
Optimal push/pull envelope
Application Layer
sensor
Example Caching: Time/Frequency Modifier
Evaluation Short Cuts
• Exploit Dominant Events– For a composite event whose sub-events are
connected by logic +, some of its sub-events may have significantly higher probability of occurrence than others which makes them a dominant factor in determining the value of the composite event. ( Likewise, for composite events whose sub-events are connected by logic *, sub-events with lower probability of occurrence become dominant )
Project II Summary
• Form groups of 4 by no later than Friday Nov 5 noon.
• Understand all the components• Study source code of RE Engine• Develop the Optimizer
– Think, formalize and create your algorithms– Implement
• Assess the success/failure of your Optimizer
Deliverables
• You will deliver source code with detailed documentation and about 5-10 pages report describing the following:
• Status of your project: what is completed and what not; what works and what not
• Your optimization ideas and strategies • Formal description of your optimization algorithm• Your experiment results• Any additional features implemented and the
rationale• Conclusions