# The Role of Multi-Agent Systems in Realizing Asset Administration Shell Type 3
## 2 Background
### Multi-Agent Systems  
As previously mentioned, the definitions and requirements associated with AAS Type 3 closely align with the fundamental principles of MAS, particularly regarding autonomy, intelligence, and collaborative behavior. In this context, this section introduces the concepts of agents, industrial agents, and MAS, highlighting the characteristics and functionalities that make MAS a suitable and promising approach for implementing AAS Type 3 solutions. The development of agent-based applications has gained significant attention due to the distributed and autonomous nature of these software entities. Although no universally accepted definition exists, and the term remains a subject of ongoing debate and controversy, a classic definition of agent is as follows: \"An agent is a computer system that is situated in some environment, and that is capable of autonomous action in this environment in order to meet its design objectives\" [4]. Moreover, the agents possess several characteristics:  
* Encapsulation: Agents represent physical or logical objects within an environment. * Autonomy: Agents operate without direct human or external intervention and have control over their actions and internal state. * Learning ability: Agents can learn from their experiences. * Reactivity: Agents perceive their environment and respond in a timely manner to changes in order to fulfill their design objectives. * Proactiveness: Agents exhibit goal-directed behavior by taking the initiative to achieve their design objectives. * Social ability: Agents interact with other agents (and possibly humans) to achieve their design objectives. Additionally, agents can be specifically designed to meet the I4.0 requirements, known as industrial agents, a specialization of traditional software agents, which inherit their characteristics and are enhanced with additional capabilities to comply with several industrial requirements, namely hardware integration, reliability, fault-tolerance, scalability, industrial standard compliance, quality assurance, resilience, manageability, and maintainability [9]. Generally, industrial agents follow a two-layered approach (see Figure 2) comprising high-level control (HLC) and low-level control (LLC) [9; 27]. HLC is responsible for providing intelligence and adaptation features to support decision-making processes, e.g., through monitoring, diagnosis, prediction, and optimization functions. However, it is incapable of delivering real-time performance. On the other hand, LLC is responsible for executing low-level control tasks that guarantee real-time constraints, often through PLCs or industrial PCs running control programs compliant with IEC 61131, IEC 61499, or similar standards. This separation allows HLC to handle complex, high-level decision-making while LLC maintains stable, real-time operations. Addressing complex real-world problems often requires the combined and cooperative efforts of multiple agents, as a single agent has limited capabilities. As illustrated in Figure 2, a MAS can be described as a society of intelligent, autonomous, and cooperative agents representing physical or logical objects of a system. In contrast to traditional centralized control strategies, MAS offers a decentralized approach to designing large-scale, complex systems by decentralizing the system's control and distributing it to autonomous and cooperative agents rather than being concentrated in a single authority. The overall functionality of the system emerges through interactions among these individual agents, e.g., through collaboration, negotiation, and delegation of responsibilities, where each agent contributes with unique knowledge and skills toward achieving both individual and shared objectives. Furthermore, MAS enables the decomposition of complex tasks into manageable subtasks, each assigned to a capable agent, ensuring that even intricate challenges can be effectively addressed in a decentralized manner [4, 8].