Introduction / 1: |
Software Architecture and Middleware / 1.1: |
Software Architecture / 1.1.1: |
Middleware / 1.1.2: |
Agent-Oriented Methodologies / 1.2: |
Case Study / 1.3: |
Overview of the Book / 1.4: |
Overview of Architecture-Based Design of Multi-Agent Systems / 2: |
General Overview of the Approach / 2.1: |
Architectural Design in the Development Life Cycle / 2.1.1: |
Steps of Architecture-Based Design of Multi-Agent Systems / 2.1.2: |
Functional and Quality Attribute Requirements / 2.2: |
Architectural Design / 2.3: |
Architectural Patterns / 2.3.1: |
ADD Process / 2.3.2: |
Middleware Support for Multi-Agent Systems / 2.4: |
Documenting Software Architecture / 2.5: |
Architectural Views / 2.5.1: |
Architectural Description Languages / 2.5.2: |
Evaluating Software Architecture / 2.6: |
From Software Architecture to Downstream Design and Implementation / 2.7: |
Summary / 2.8: |
Capturing Expertise in Multi-Agent System Engineering with Architectural Patterns / 3: |
Situated Multi-Agent Systems / 3.1: |
Single-Agent Systems / 3.1.1: |
Multi-Agent Systems / 3.1.2: |
Target Domain of the Pattern Language for Situated Multi-Agent Systems / 3.2: |
Overview of the Pattern Language / 3.3: |
Pattern Template / 3.4: |
Virtual Environment / 3.5: |
Primary Presentation / 3.5.1: |
Architectural Elements / 3.5.2: |
Interface Descriptions / 3.5.3: |
Design Rationale / 3.5.4: |
Situated Agent / 3.6: |
Selective Perception / 3.6.1: |
Roles and Situated Commitments / 3.7.1: |
Free-Flow Trees Extended with Roles and Situated Commitments / 3.8.1: |
Protocol-Based Communication / 3.9: |
Architectural Design of Multi-Agent Systems / 3.9.1: |
Designing and Documenting Multi-Agent System Architectures / 4.1: |
Designing and Documenting Architecture in the Development Life Cycle / 4.1.1: |
Inputs and Outputs of ADD / 4.1.2: |
Overview of the ADD Activities / 4.1.3: |
The Domain of Automated Transportation Systems / 4.2: |
Business Case / 4.2.2: |
System Requirements / 4.2.3: |
General Overview of the Design / 4.3: |
Challenges at the Outset / 4.3.1: |
The System and Its Environment / 4.3.2: |
Design Process / 4.3.3: |
High-Level Design / 4.3.4: |
Architecture Documentation / 4.4: |
Introduction to the Architecture Documentation / 4.4.1: |
Deployment View / 4.4.2: |
Module Uses View / 4.4.3: |
Collaborating Components View / 4.4.4: |
Middleware for Distributed Multi-Agent Systems / 4.5: |
Middleware Support for Distributed, Decentralized Coordination / 5.1: |
Middleware in Distributed Software Systems / 5.1.1: |
Middleware in Multi-Agent Systems / 5.1.2: |
Scope of the Middleware and Requirements / 5.2: |
Objectplaces / 5.2.2: |
Views / 5.2.3: |
Coordination Roles / 5.2.4: |
Middleware Architecture / 5.3: |
High-Level Module Decomposition / 5.3.1: |
Group Formation / 5.3.2: |
View Management / 5.3.3: |
Role Activation / 5.3.4: |
Collision Avoidance in the AGV Transportation System / 5.4: |
Collision Avoidance / 5.4.1: |
Collision Avoidance Protocol / 5.4.2: |
Software Architecture: Communicating Processes for Collision Avoidance / 5.4.3: |
Task Assignment / 5.5: |
Schedule-Based Task Assignment / 6.1: |
FiTA: Field-Based Task Assignment / 6.2: |
Coordination Fields / 6.2.1: |
Adaptive Task Assignment / 6.2.2: |
Dealing With Local Minima / 6.2.3: |
DynCNET Protocol / 6.3: |
Monitoring the Area of Interest / 6.3.1: |
Convergence / 6.3.3: |
Synchronization Issues / 6.3.4: |
Evaluation / 6.4: |
Test Setting / 6.4.1: |
Test Results / 6.4.2: |
Tradeoff Analysis / 6.4.3: |
Evaluation of Multi-Agent System Architectures / 6.5: |
Evaluating Multi-Agent System Architectures with ATAM / 7.1: |
Architecture Evaluation in the Development Life Cycle / 7.1.1: |
Objectives of a Multi-Agent System Architecture Evaluation / 7.1.2: |
Overview of the ATAM Activities / 7.1.3: |
AGV Transportation System for a Tea Processing Warehouse / 7.2: |
Evaluation Process / 7.2.2: |
Quality Attribute Workshop / 7.2.3: |
Analysis of Architectural Approaches / 7.2.4: |
Reflection on ATAM for Evaluating a Multi-Agent System Architecture / 7.3: |
ATAM Follow-Up and Demonstrator / 7.4: |
Related Approaches / 7.5: |
Architectural Approaches and Multi-Agent Systems / 8.1: |
Architectural Styles / 8.1.1: |
Reference Models and Architectures for Multi-Agent Systems / 8.1.2: |
Middleware for Mobile Systems / 8.2: |
Work Related to Views / 8.2.1: |
Work Related to Coordination Roles / 8.2.2: |
Scheduling and Routing of AGV Transportation Systems / 8.3: |
AI and Robotics Approaches / 8.3.1: |
Multi-Agent System Approaches / 8.3.2: |
Conclusions / 9: |
Reflection on Architecture-Based Design of Multi-Agent Systems / 9.1: |
It Works! / 9.1.1: |
Reflection on the Project with Egemin / 9.1.2: |
Lessons Learned and Challenges / 9.2: |
Dealing with Quality Attributes / 9.2.1: |
Designing a Multi-Agent System Architecture / 9.2.2: |
Integrating a Multi-Agent System with Its Software Environment / 9.2.3: |
Impact of Adopting a Multi-Agent System / 9.2.4: |
?-ADL Specification of the Architectural Patterns / A: |
Language Constructs / A.1: |
Virtual Environment Pattern / A.2: |
Situated Agent Pattern / A.3: |
Synchronization in the DynCNET Protocol / B: |
Synchronization of Abort and Bound Messages / B.1: |
Synchronization of Scope Dynamics / B.2: |
Overview / C: |
Invariant / C.2: |
Maintaining the Invariant / C.3: |
Glossary |
References |
Index |
Introduction / 1: |
Software Architecture and Middleware / 1.1: |
Software Architecture / 1.1.1: |