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
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
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
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
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
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)
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
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
Jérémie Tatibouet, Arnaud Cuccuru, Sébastien
Gérard, François Terrier:
Principles for the realization of an open simulation
framework based on fUML (WIP).
SpringSim (TMS-DEVS) 2013
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
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
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
Contribution: AMF (fUML background)
Foundational UML (fUML)
- OMG Standard v.1.1 (2013)
- dynamic semantics for UML
Classes and Activities
- Virtual Machine (Java)
11
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
…
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
…
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
Contribution: AMF- Energy Analysis
Energy Consumption = ∑𝑖𝑖=1
𝑛𝑛
𝑚𝑚𝑚𝑚𝑚𝑖𝑖 𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖
,
𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖 ∈ 𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐 𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓
#1 #4 #5 …
15
#2 #3
Contribution: AMF- Energy Analysis
• R = Reader
• baR = Battery Aware Reader
Sc1, Sc2, Sc3: The three different
simulation scenarios differ from
the agent’s 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
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
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

ECMFA 2015 - Energy Consumption Analysis and Design with Foundational UML

  • 1.
    Energy Consumption Analysis andDesign 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
  • 2.
    Outline • Introduction: WirelessSensor 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.
    Introduction: WSN andAgilla • 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.
    Problem: No Energy-awareAgilla • 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.
    Contribution: Extension ofAgilla 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.
    Contribution: Extension ofAgilla 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.
    Problem: No MDE4 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.
    Contribution: AMF • AgillaModeling 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 Jérémie Tatibouet, Arnaud Cuccuru, Sébastien Gérard, François Terrier: Principles for the realization of an open simulation framework based on fUML (WIP). SpringSim (TMS-DEVS) 2013 8
  • 9.
    Contribution: AMF • AgillaModeling 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.
    Contribution: AMF (fUMLbackground) 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.
    Contribution: AMF (fUMLbackground) Foundational UML (fUML) - OMG Standard v.1.1 (2013) - dynamic semantics for UML Classes and Activities - Virtual Machine (Java) 11
  • 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.
    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.
    Contribution: AMF- Simulation https://code.google.com/a/eclipselabs.org/p/agilla-modeling-framework/ (OldVersion, Timing Analysis, No Parsing  Only Sequential Flows, Only Constant Time Values) 14
  • 15.
    Contribution: AMF- EnergyAnalysis Energy Consumption = ∑𝑖𝑖=1 𝑛𝑛 𝑚𝑚𝑚𝑚𝑚𝑖𝑖 𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖 , 𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖 ∈ 𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐 𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 #1 #4 #5 … 15 #2 #3
  • 16.
    Contribution: AMF- EnergyAnalysis • R = Reader • baR = Battery Aware Reader Sc1, Sc2, Sc3: The three different simulation scenarios differ from the agent’s 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.
    Conclusion PROs o Everything isa 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.
    Conclusion CONs o high modelingeffort 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