architectural design & evaluation - sei digital library · 1 of an industrial agv...
TRANSCRIPT
1
17 M
ay 2
006Architectural Design & Evaluation Architectural Design & Evaluation
Of An Industrial AGV Transportation System Of An Industrial AGV Transportation System With A Multiagent System ApproachWith A Multiagent System Approach
SATURN, 2006
Danny Weyns
DistriNet, Dept. Computer Science,
Katholieke Universiteit Leuven Belgium
2
17 M
ay 2
006
OverviewOverview
• AGV Transportation System
• Software Architecture, ADD
• ATAM o Utility tree
o Analysis of architectural approach
• Some lessons learned
4
17 M
ay 2
006
Main FunctionalitiesMain Functionalities
• Transport assignment
• Execution transports
• IO with machines
• Collision avoidance
• Deadlock prevention
• Battery charging
5
17 M
ay 2
006
Main Quality GoalsMain Quality Goals
• Performance o Transports/hour – bandwidth
• Flexibilityo Deal with change autonomously, exploit opportunities
• Opennesso Deal with AGVs that dynamically leave and enter the
system
6
17 M
ay 2
006
• Centralized architectureo Server assigns transports to AGVs, plans routes etc.
o Low level control AGVs is handled by E’nsor software
• Main quality attributeso Configurability (server is central configuration point)
o Predictability (server manages execution of functionality)
Traditional Traditional approachapproach
7
17 M
ay 2
006
EMCEMC2 2 ProjectProject
• Collaboration Egemin – DistriNet
• Project: 2004 – 2006 (4 FT)
• Main Goal o Cope with quality requirements: flexibility and openness
o Investigate feasibility of applying decentralized architecture for AGV transportation system
• Approach: Situated Multiagent System
8
17 M
ay 2
006
Situated Multiagent SystemSituated Multiagent System
• What is a situated multiagent system (MAS)? 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)
o Interaction is at the core of problem solving (rather than individual capabilities)
Decentralized control
Adaptive behavior
Collective behavior
9
17 M
ay 2
006
OverviewOverview
• AGV Transportation System
• Software Architecture, ADD
• ATAM o Utility tree
o Analysis of architectural approach
• Some lessons learned
10
17 M
ay 2
006
Software ArchitectureSoftware Architecture
• Architectural design processo Principles from Attribute Driven Design (ADD)
Recursive decomposition: select drivers, apply architectural approaches
o Guided by: Reference architecture for situated MAS
ObjectPlaces middleware
• Documentationo Architectural views / view packets
Deployment -- Module -- Component and Connector
14
17 M
ay 2
006
Communicating Communicating Processes View:Processes View:Move action AGVMove action AGV
15
17 M
ay 2
006
AttributeAttribute--Driven DesignDriven Design
• ADD with reference architectureo Reference architecture
blueprint for architectural design
provides build-in mechanisms
o ADD is helpful
as a design approach
for refinement
16
17 M
ay 2
006
OverviewOverview
• AGV Transportation System
• Software Architecture
• ATAMo Utility Tree
o Analysis of architectural approach
• Some lessons learned
17
17 M
ay 2
006
Architecture TradeArchitecture Trade--Off Off Analysis MethodAnalysis Method
• Goals ATAMo Articulation of business goals
o A concise presentation of the architecture
o Utility tree
o Mapping architectural decisions to quality requirements
o Tradeoff points, risks, non-risks
18
17 M
ay 2
006
ATAM for AGV ATAM for AGV Transportation SystemTransportation System
• AGV Software Architectureo Developed independent of concrete system (Product Line like)
o Evaluation in context of particular project (tobacco warehouse)
• Preparation o Preparation utility tree (+ 4 days / 3 stakeholders, 1 evaluator)
• ATAM o June 16th, 2005 -- 10 stakeholders, 2 evaluators
o Presentations: ATAM, business goals, architecture, approaches
o Generation utility tree - analysis architectural approaches
o Round-up
19
17 M
ay 2
006
OverviewOverview
• AGV Transportation System
• Software Architecture
• ATAM o Utility Tree
o Analysis of architectural approach
• Some lessons learned
20
17 M
ay 2
006
Utility treeUtility tree(fragment)(fragment)
relative importance complexity to realize
21
17 M
ay 2
006
OverviewOverview
• AGV Transportation System
• Software Architecture
• ATAM o Utility Tree
o Analysis of architectural approach
• Some lessons learned
22
17 M
ay 2
006
Analysis Architectural approachAnalysis Architectural approach
S3AD 5 Unicastcommunication in Middleware
R3AD 4 Two steps deadlock prevention mechanism
T3AD 3 Dynamic Contract-Net protocol for transport assignment
R2T2AD 2 Agent located on machine controls E’GV
NR3S2AD 1 Choice for .NET remoting
NonrisksRisksTradeoffSensitivityArchitectural decisions
Scenario: The amount of communication, with maximal 12 E’GVs and a maximal load of 140 transports per hour, does not exceed 60% of the bandwidth of the 11Mbps communication channel.
>
>
23
17 M
ay 2
006
OverviewOverview
• AGV Transportation System
• Software Architecture
• ATAM o Utility Tree
o Analysis of architectural approach
• Some lessons learned
24
17 M
ay 2
006
Some Lessons LearnedSome Lessons Learned
• Software architectureo We gained a better insight in
Role of SA in building complex systems
Relationship between MAS and SA
o Qualities trade off (flexibility versus performance)
o SA constraints the system implementation
o Lack of tool support to document SA
>
25
17 M
ay 2
006
Some Lessons LearnedSome Lessons Learned
• ATAMo Utility Tree = most important instrument, yet time
consuming -> good preparation is necessary
o A complete evaluation of a complex system such as the AGV system is not manageable in one day
o Evaluation of specific case versus product line like basic architecture hindered the discussions