Architectural Design & Evaluation Architectural Design & Evaluation 17 May 2006 Of An Industrial AGV Transportation System Of An Industrial AGV Transportation System With A Multiagent System Approach With A Multiagent System Approach SATURN, 2006 Danny Weyns DistriNet, Dept. Computer Science, Katholieke Universiteit Leuven Belgium 1
Overview Overview • AGV Transportation System 17 May 2006 • Software Architecture, ADD • ATAM o Utility tree o Analysis of architectural approach • Some lessons learned 2
AGV Transportation System AGV Transportation System 17 May 2006 3
Main Functionalities Main Functionalities • Transport assignment 17 May 2006 • Execution transports • IO with machines • Collision avoidance • Deadlock prevention • Battery charging 4
Main Quality Goals Main Quality Goals • Performance o Transports/hour – bandwidth 17 May 2006 • Flexibility o Deal with change autonomously, exploit opportunities • Openness o Deal with AGVs that dynamically leave and enter the system 5
Traditional Traditional approach approach 17 May 2006 • Centralized architecture o Server assigns transports to AGVs, plans routes etc. o Low level control AGVs is handled by E’nsor software • Main quality attributes o Configurability (server is central configuration point) o Predictability (server manages execution of functionality) 6
2 Project EMC 2 Project EMC • Collaboration Egemin – DistriNet 17 May 2006 • 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 7
Situated Multiagent System Situated Multiagent System • What is a situated multiagent system (MAS)? 17 May 2006 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 8
Overview Overview • AGV Transportation System 17 May 2006 • Software Architecture, ADD • ATAM o Utility tree o Analysis of architectural approach • Some lessons learned 9
Software Architecture Software Architecture • Architectural design process o Principles from Attribute Driven Design (ADD) 17 May 2006 Recursive decomposition: select drivers, apply architectural approaches o Guided by: Reference architecture for situated MAS ObjectPlaces middleware • Documentation o Architectural views / view packets Deployment -- Module -- Component and Connector 10
Overview of the reference architecture Overview of the reference architecture 17 May 2006 11
Deployment View: System Deployment View: System 17 May 2006 12
Module Uses View: AGV Control System Module Uses View: AGV Control System 17 May 2006 13
Communicating Communicating Processes View: Processes View: Move action AGV Move action AGV 17 May 2006 14
Attribute- -Driven Design Driven Design Attribute • ADD with reference architecture o Reference architecture 17 May 2006 blueprint for architectural design provides build-in mechanisms o ADD is helpful as a design approach for refinement 15
Overview Overview • AGV Transportation System 17 May 2006 • Software Architecture • ATAM o Utility Tree o Analysis of architectural approach • Some lessons learned 16
Architecture Trade- -Off Off Architecture Trade Analysis Method Analysis Method • Goals ATAM 17 May 2006 o 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 17
ATAM for AGV ATAM for AGV Transportation System Transportation System • AGV Software Architecture 17 May 2006 o 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 16 th , 2005 -- 10 stakeholders, 2 evaluators o Presentations: ATAM, business goals, architecture, approaches o Generation utility tree - analysis architectural approaches o Round-up 18
Overview Overview • AGV Transportation System 17 May 2006 • Software Architecture • ATAM o Utility Tree o Analysis of architectural approach • Some lessons learned 19
Utility tree Utility tree (fragment) (fragment) 17 May 2006 complexity to realize relative importance 20
Overview Overview • AGV Transportation System 17 May 2006 • Software Architecture • ATAM o Utility Tree o Analysis of architectural approach • Some lessons learned 21
Analysis Architectural approach Analysis Architectural approach 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. Architectural Sensitivity Tradeoff Risks Nonrisks decisions 17 May 2006 AD 1 Choice for .NET S2 NR3 remoting AD 2 Agent located T2 R2 on machine controls E’GV AD 3 Dynamic T3 Contract-Net protocol for transport > assignment AD 4 Two steps R3 deadlock prevention mechanism AD 5 Unicast S3 communication in Middleware > 22
Overview Overview • AGV Transportation System 17 May 2006 • Software Architecture • ATAM o Utility Tree o Analysis of architectural approach • Some lessons learned 23
Some Lessons Learned Some Lessons Learned • Software architecture 17 May 2006 o 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 24
Some Lessons Learned Some Lessons Learned • ATAM 17 May 2006 o 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 25
Thanks! 17 May 2006 26
Analysis Architectural approach Analysis Architectural approach < 17 May 2006 > 27
< 17 May 2006 28
B- -usage experiments usage experiments B 17 May 2006 < 29
Recommend
More recommend