ECMFA 2015 - Energy Consumption Analysis and Design with Foundational UML

18
Energy Consumption Analysis and Design of Energy - Aware WSN Agents in fUML Luca Berardinelli, Antinisca Di Marco, Stefano Pace, Luigi Pomante and Walter Tiberti 11th European Conference on Modelling Foundations and Applications 2015 L’Aquila, Italy, July 20 – 24, 2015 Part of the conferences at STAF 2015

Transcript of ECMFA 2015 - Energy Consumption Analysis and Design with Foundational UML

  1. 1. Energy Consumption Analysis and Design of Energy-Aware WSN Agents in fUML Luca Berardinelli, Antinisca Di Marco, Stefano Pace, Luigi Pomante and Walter Tiberti 11th European Conference on Modelling Foundations and Applications 2015 LAquila, Italy, July 20 24, 2015 Part of the conferences at STAF 2015
  2. 2. Outline Introduction: Wireless Sensor Network, Agilla Middleware Problem: No Energy Aware Agilla Middleware Contribution: Energy Measurements and Energy-Aware Agilla Problem: No MDE for Agilla Contribution: Agilla Modeling Framework (AMF) o Foundational UML for AMF as Simulation Infrastructure o Energy Analysis Extension of AMF Conclusions 2
  3. 3. Introduction: WSN and Agilla Wireless Sensor Network (WSN) o Spatially distributed, autonomous sensor that cooperate to accomplish a task. o Sensor nodes are small, low-cost, wireless, and battery powered. o Application domain: domotics, disaster relief, security, health Agilla Middleware (MW) o A Mobile Agent Middleware for Wireless Sensor Networks http://mobilab.wustl.edu/projects/agilla/ o Assembly like: Agent, Task, Instruction levels. o Agents can migrate with their execution state. o Implemented on top of TinyOS, open source OS, for resource- constrained nodes written in nesC, a C dialect. 3 VISION is a project funded by an ERC Starting Independent Grant
  4. 4. Problem: No Energy-aware Agilla Lack of energy consumption monitoring capability. Lack of energy consumption measurements of Agilla MW, and hardware platforms for WSNs. Base Station PC Temp C Reader (R) R R R RR 4
  5. 5. Contribution: Extension of Agilla MW Energy-aware Agilla MW New battery instruction added to the Agilla MW ISA http://mobilab.wustl.edu/projects/agilla/isa.html battery provides voltage information with a precision of 100 mV. Technically, the new instruction reads data from the ADC and puts it on the top of the agent stack after some processing (e.g., a value 33 represents 3.3V). New Battery-Aware Reader Agent. Battery-Aware Reader (baR) baR 5
  6. 6. Contribution: Extension of Agilla MW Measurements on real target platform: IRIS Memsic node. Execution Time (in milliseconds) of each instruction of the Agilla ISA (in EPEW2013). Energy Consumption (in Milliamp Hours, mAh) of each instruction of the Agilla ISA. ET/EC = constant Working with Warning Good condition Serious Warning time Volt Ideal condition3 2.8 2.4 1/8 sec 1 sec sensing every Energy Consumption = , =1 6 Battery-Aware Reader (baR)
  7. 7. Problem: No MDE 4 Agilla Traditionally, WSN applications have been developed with a code-and-fix approach. Lack of (model-based) software engineering approaches. Risk of missing non-functional requirements. No tailored approaches for WSN in general, Agilla in particular. Base Station PC Temp C Reader (R) R R R RR 7
  8. 8. Contribution: AMF Agilla Modeling Framework (AMF), a model-based simulation framework based on Foundational UML (ongoing work) Extension of Agilla MW and AMF framework to support Energy Analysis Luca Berardinelli, Antinisca Di Marco, Stefano Pace: fUML-Driven Design and Performance Analysis of Software Agents for Wireless Sensor Network. ECSA 2014: 324-339 Luca Berardinelli, Antinisca Di Marco, Stefano Pace, Stefano Marchesani, Luigi Pomante: Modeling and Timing Simulation of Agilla Agents for WSN Applications in Executable UML. EPEW 2013: 300-311 Jrmie Tatibouet, Arnaud Cuccuru, Sbastien Grard, Franois Terrier: Principles for the realization of an open simulation framework based on fUML (WIP). SpringSim (TMS-DEVS) 2013 8
  9. 9. Contribution: AMF Agilla Modeling Framework (AMF), a model-based simulation framework based on Foundational UML (ongoing work) Extension of Agilla MW and AMF framework to support Energy Analysis 1. Everything is a (UML) Model: the Case Study, AMF, Analysis Results 2. Timing, Performance and Energy consumption analyses enabled on top of fUML 3. No need of model transformations to external notations 4. Tool supported (UML Modeling Tools, fUML Virtual Machine, AMF) 9
  10. 10. Contribution: AMF (fUML background) COMPONENTS COMPOSITE STRUCTURES DEPLOYMENTS INTERACTIONS STATE MACHINES USE CASES CLASSES ACTIONS ACTIVITIES PROFILES lightweight extensions by Foundational UML (fUML) - OMG Standard v.1.1 (2013) - dynamic semantics for UML Classes and Activities - Virtual Machine (Java) 10
  11. 11. Contribution: AMF (fUML background) Foundational UML (fUML) - OMG Standard v.1.1 (2013) - dynamic semantics for UML Classes and Activities - Virtual Machine (Java) 11
  12. 12. Contribution: AMF- App.Design Classes and hierarchical set of UML Activities (flow of Task actions, flow of Instructions) Agent structure and Task actions are user-defined Instruction actions represent the predefined Agilla ISA, i.e., they are re-usable model elements AMF Model Library 12 Where is it? @ simulation time
  13. 13. Contribution: AMF- Library&Simulation AMF tailored for Agilla programmers: Modeling as coding, 1:1 mapping, no abstraction Activities are modeled as sequences of actions: no need to explicitly model the control flow reader_obj:AgentComp start_obj:TaskComp pushc_obj:Pushc setvar_obj:Setvar fUML Instance Model @simulation time after parsing own_tasks own_instr rjump_obj:Setvar if cc=1 if cc=0 Parsing support by AML Library: it builds a hierarchical graph of TaskComp and InstrComp Semantics support by AML Library: behavior() of InstrComp accesses linked InstrComp and Agilla data structures (e.g., stack, condition code) modeled in fUML 13
  14. 14. Contribution: AMF- Simulation https://code.google.com/a/eclipselabs.org/p/agilla-modeling-framework/ (Old Version, Timing Analysis, No Parsing Only Sequential Flows, Only Constant Time Values) 14
  15. 15. Contribution: AMF- Energy Analysis Energy Consumption = =1 , #1 #4 #5 15 #2 #3
  16. 16. Contribution: AMF- Energy Analysis R = Reader baR = Battery Aware Reader Sc1, Sc2, Sc3: The three different simulation scenarios differ from the agents sleep time between two consecutive sense and dispatch (rout) of temperature to the base station (BS) As expected, the baReader agent saves energy (from 38,37% in Sc1 up to 43,22% in Sc3); Energy consumption is invariant w.r.t. the sensing frequency (sleep busy wait) Lower delta max-min in R than in baR (more complex control flow in baR, too few runs) max min max min 16
  17. 17. Conclusion PROs o Everything is a model, including your analysis tool o No model transformations to external notations Agilla Middleware supports software agents for WSN Problem: No Energy-aware Agilla Contribution: Extension of Agilla MW and Energy Measurements Problem: No MDE 4 Agilla Contribution: Extension of the Agilla Modeling Framework based on fUML 17
  18. 18. Conclusion CONs o high modeling effort for fUML library provider (not user!) o scalability issue: fUML VM is not optimized Agilla Middleware supports software agents for WSN Problem: No Energy-aware Agilla Contribution: Extension of Agilla MW and Energy Measurements Problem: No MDE 4 Agilla Contribution: Extension of the Agilla Modeling Framework based on fUML 18