Architectural Design of a Distributed Application with

28 July 2017
Architectural Design of a
Distributed Application with
Autonomic Quality Requirements
DEAS
St. Louis, USA, May 21th, 2005
Danny Weyns, Kurt Schelfthout and Tom Holvoet
University of Leuven, Belgium
‹#›
28 July 2017
A challenging application
AGV transportation system
2
Traditional approach
• Centralized architecture
o Server plans routes etc.
o Vehicles are controlled by central
server
28 July 2017
o Server assigns transports to AGVs
o Low level control AGVs is handled
by E’nsor software
• Main non-functional
properties
o Configurability (server is central
configuration point)
o Predictability (server manages
execution of functionality)
3
• AGVs are expected to be flexible and adapt their
behavior autonomously with changing
circumstances
28 July 2017
Aiming for new quality requirements
o Exploit opportunities
 Switch jobs when driving to a load when a more interesting
transport pops up
o Anticipate possible difficulties
 Prefer jobs near to a battery charging station when battery
needs to be charged in the near future
o Cope with particular situations
 Choose the farthest load in the corridor
4
Aiming for new quality requirements
o AGVs leave/enter the system, e.g. for maintenance
o Customers intervene during execution of the system
28 July 2017
• System is expected to deal with openness
We investigate the feasibility of a decentralized architecture aiming
to cope with these new quality requirements
Joint R&D project between AgentWise research group and Egemin
This talk: overview basic architecture of the system
5
• Situated multiagent systems for the AGV
transportation system
• A trace through the architectural design
28 July 2017
Overview
• Round-up
6
Situated multiagent systems
o Set of autonomous entities (agents) explicitly situated in a
shared structure (an environment)
o Agents select actions “here and now”, they do not use long
term planning (locality in time and space)
28 July 2017
• What is a situated multiagent system (MAS)?
o Interaction is at the core of problem solving (rather than
individual capabilities)
Decentralized control
Adaptive behavior
Collective behavior
7
A situated MAS for the
AGV transportation system
• Matching quality properties
• Situated MAS are a promising approach to build
flexible, adaptable, open systems
28 July 2017
• Motivations for situated MAS
• Matching characteristics
 Locality in time and space: order assignment to idle
AGV near to load, collision avoidance, etc.
 Interaction at the core of problem solving: load
manipulation, collision avoidance, etc.
8
• Reference architecture as a guidance for
architectural design
o Embodies knowledge and experiences acquired during
4 years of research
28 July 2017
Reference architecture for
situated MASs
o Serves as a reusable architectural design artifact
o We developed design guidelines for specific modules,
e.g., decision making with free-flow architectures
9
28 July 2017
High-level overview of the reference
architecture
10
• Situated multiagent systems for the AGV
transportation system
• A trace through the architectural design
28 July 2017
Overview
• Round-up
11
28 July 2017
Deployment view of the
decentralized architecture
12
28 July 2017
Top level module decomposition:
situated MAS
13
28 July 2017
Module view of the environment:
layers
 Separate functionality, support reuse
14
28 July 2017
Virtual environment is a
distributed entity
15
28 July 2017
Physical Environment
16
Virtual Environment
magnet strip
Physical
AGV
hull
projection
.
.
4
Virtual
environment
move cost
28 July 2017
AGV agent
7
.
segment
.
node
.
load
17
• Offers a medium to agents to exchange
information and coordinate their behavior
• Synchronizing state of the virtual
environment
28 July 2017
The virtual environment
o Virtual environment as software entity does not exist
 Virtual environment is necessary distributed over the AGVs
 ObjectPlaces middleware keeps state of local virtual
environment synchronized with virtual environments of local
AGVs
18
28 July 2017
AGV agents:
data repository
 Separation of concerns, loose coupling
19
28 July 2017
AGV agents:
blackboard with sequential processing
 Decision making at
different levels of abstraction,
separation of concerns
 Feedback for flexible
decision making
20
• Situated multiagent systems for the AGV
transportation system
• A trace through the architectural design
28 July 2017
Overview
• Round-up
21
The challenge continues
o 2 real AGVs manipulate loads, drive around and avoid collisions in
an industrial test set-up (basics for deadlock prevention)
o The same for n AGvs in a simulated setup
28 July 2017
• Project status (after 1.2 of 2 years)
• Current work
o Methodological evaluation of software architecture: ATAM planned
June
o Order assignment and deadlock avoidance
• Next challenges
o Explore and validate flexibility, adaptability, scalability
o Give guarantees about global behavior
22
o We learned the real value of our research by
applying it in real-world application
 We experienced what “application-driven research” is about
28 July 2017
Lessons learned
o The reference architecture serves as an excellent
guidance for the architectural design
o Stakeholders not involved in the daily development
tend to overestimate the agent metaphor
23