21
CHARLES UNIVERSITY IN PRAGUE CHARLES UNIVERSITY IN PRAGUE CHARLES UNIVERSITY IN PRAGUE http://d3s.mff.cuni.cz faculty of mathematics and physics An Architecture Framework for Experimentations with Self- Adaptive Cyber-Physical Systems Michal Kit Ilias Gerostathopoulos Tomas Bures Petr Hnetynka Frantisek Plasil [email protected]

An Architecture Framework for Experimentations with Self

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: An Architecture Framework for Experimentations with Self

CHARLES UNIVERSITY IN PRAGUE

http://d3s.mff.cuni.cz

faculty of mathematics and physics

CHARLES UNIVERSITY IN PRAGUE

http://d3s.mff.cuni.cz

faculty of mathematics and physics

CHARLES UNIVERSITY IN PRAGUE

http://d3s.mff.cuni.cz

faculty of mathematics and physics

An Architecture Framework for Experimentations with Self-

Adaptive Cyber-Physical Systems

Michal KitIlias Gerostathopoulos

Tomas BuresPetr HnetynkaFrantisek Plasil

[email protected]

Page 2: An Architecture Framework for Experimentations with Self

Smart Cyber-Physical Systems

• Open-ended: no strict system boundaries

• Decentralized

• Physical world Distribution

Mobility

• Communication WiFi, 3G/4G, but also MANETS, VANETS etc.

How can we endow such systems with self-adaptive and self-organizing capabilities?

2Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

Page 3: An Architecture Framework for Experimentations with Self

What is special about smart CPS?

3Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

Self-adaptation in smart CPS is hard... especially when combined with dependability.

• No global state• Dynamic physical structure• Unstable connections: no communication

guarantees• Communication delays: data becomes obsolete• Inherent dynamism stemming from external

uncertainty and openness• Emergent behavior

Page 4: An Architecture Framework for Experimentations with Self

Example: E-mobility

POI: WorkTime: 7AM-4PM

POI: CinemaTime: 2PM-4PM

POI: ShoppingTime: 4PM-6PM

POI: ShoppingTime: 4PM-6PM

POI: HomeTime: 6:45PM

POI: HomeTime: 6:30PM

4Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

Page 5: An Architecture Framework for Experimentations with Self

5

Systematic Experimentation

To build self-adaptive smart CPS we need to first experiment with different adaptation approaches

An experimentation framework should have:

• Suitable abstractions

Goals, agents/components, component grouping

• Simulation capabilities

Network communication (including ad-hoc networks)

Environment behavior

Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

Page 6: An Architecture Framework for Experimentations with Self

DEECo

Component framework for self-adaptive smart CPS

• Suitable abstractionsArchitecture: autonomous components & ensembles

Requirements: invariants

• Simulation capabilitiesNetwork-accurate communication (OMNET++)

Agent-based simulations of the environment (MATSim)

jDEECo: Java-based implementation of DEECo

• Based on internal Java DSL (Java annotations)

6Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

Page 7: An Architecture Framework for Experimentations with Self

jDEECo Features

7Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

Page 8: An Architecture Framework for Experimentations with Self

Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

DEECo – Architecture Abstractions

8

Page 9: An Architecture Framework for Experimentations with Self

Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

DEECo – Architecture Abstractions

(component)Vehicle

schedule

route

(component)ParkingLot

position

freePlaces

(component)Vehicle

schedule

route

(component)ParkingLot

position

freePlaces

(component)ParkingLot

position

freePlaces

(component)ParkingLot

position

freePlaces

(component)ParkingLot

position

freePlaces

(component)ParkingLot

position

freePlaces

Component

Knowledge

Processes

9

Page 10: An Architecture Framework for Experimentations with Self

Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

DEECo – Architecture AbstractionsEnsemble AvailableParkingLotsCloseToDestination {

v: IVehiclep: IParkingLot

membership : proximity(p.position, v.route) <= DIST_THR

&& p.freePlaces >= FREE_PLACES_THR

knowledge exchange {v.availablePakingLots <- p.id

}}

(ensemble)AvailableParkingLotsCloseToDestination

(component)ParkingLot

position

freePlaces

(component)ParkingLot

position

freePlaces

Component Vehicle = {position: IPositionavailableParkingLots: IParkingLot[]route: IRouteschedule: ISchedule…

process updatePlan {function = updatePlaninputKnowledge = [position,

availableParkingLots, …]outputKnowledge = [route, …]scheduling = periodic(1s)

…} }

Component ParkingLot = {freePlaces: Intposition: IPosition…process updateFreePlaces {

…}

}

10

Page 11: An Architecture Framework for Experimentations with Self

Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

DEECo – Architecture Abstractions

(component)ParkingLot

position

freePlaces

Component

Knowledge

Processes

Ensemble

Membership Condition

?Holds

Knowledge Exchange

11

Page 12: An Architecture Framework for Experimentations with Self

Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

DEECo – Architecture Abstractions(ensemble)

AvailableParkingLotsCloseToDestination Ensemble AvailableParkingLotsCloseToDestination {v: IVehiclep: IParkingLot

membership : proximity(p.position, v.route) <= DIST_THR

&& p.freePlaces >= FREE_PLACES_THR

knowledge exchange {v.availablePakingLots <- p.id

}}

12

Page 13: An Architecture Framework for Experimentations with Self

Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

DEECo – Architecture Abstractions

(ensemble)AvailableParkingLotsCloseToDestination

(ensemble)AvailableParkingLotsCloseToDestination

(ensemble)VehiclesCloseByWithTrafficUpdate

13

Ensemble VehiclesCloseByWithTrafficUpdate {v1: IVehiclev2: IVehicle

membership : proximity(v1.position, v2.position) <= DIST_THR

knowledge exchange {v1.trafficInfo <- v2.trafficInfo

}}

Page 14: An Architecture Framework for Experimentations with Self

Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

DEECo – Architecture Abstractions

(ensemble)AvailableParkingLotsCloseToDestination

(ensemble)AvailableParkingLotsCloseToDestination

(ensemble)VehiclesCloseByWithTrafficUpdate

14

Page 15: An Architecture Framework for Experimentations with Self

Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

DEECo – Architecture Abstractions

(ensemble)AvailableParkingLotsCloseToDestination

(ensemble)AvailableParkingLotsCloseToDestination(ensemble)

VehiclesCloseByWithTrafficUpdate

15

Page 16: An Architecture Framework for Experimentations with Self

Requirements Abstractions

16Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

Invariants capture operational normalcy at every time instant

Decomposition of invariants forms design trees• Akin to goal-oriented requirements elaboration

Leaf invariants are operationalized via • Component processes and knowledge exchange functions• Monitors

Alternative decompositions provide alternative system realizations• Used at runtime to drive architecture reconfiguration

Page 17: An Architecture Framework for Experimentations with Self

Support for Goal-Oriented Design

17Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

GMF-based designer

Structural checking

Code generation (jDEECo)

EMF model used for runtime requirements reflection

Page 18: An Architecture Framework for Experimentations with Self

Support for Network Simulations

18

Detailed network simulator

Rich library of communication models

Rich library of hardware models

Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

Page 19: An Architecture Framework for Experimentations with Self

Support for Environment Simulations

19

Agent-Based Traffic Simulator

Simulates people mobility according to their plans

Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

Page 20: An Architecture Framework for Experimentations with Self

Support for Visualization

20

Customizable map-based visualizationInspection of ensemble forming/disbanding

Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

Page 21: An Architecture Framework for Experimentations with Self

Conclusions

21Ilias Gerostathopoulos, SEAMS ‘15, 18.05.2015 An Architecture Framework for Experimentations with Self-Adaptive Cyber-Physical Systems

Self-adaptation is hard to achieve in smart CPS

Framework for Experimentations with self-adaptive CPS

https://github.com/d3scomp/JDEECo