# A Multi-Agent System in Education Facility Design
## 3 A Multi-Agent Design System Structure  
In practical applications, where solution parts have different characteristics, different agents with specific roles and knowledge can be effectively used. The proposed multi-agent system, which supports the design of educational facilities, consists of a manager agent and several task-specific grammar-based agents acting simultaneously and performing different subtasks by communicating through a common message buffer. The manager controls the design process and maintains all necessary information such as constraints, currently created designs, completed designs, and allowable agent interactions. The task-specific agents are each responsible for a separate part of the design and return their solutions to the manager. The overall design solutions are handled by a single manager agent, whose role is similar to that of the human design team manager [32]. At the beginning of the design process, the designer formulates a set of design requirements on the basis of a given design task and environmental conditions. These requirements, together with legal norms and standards, constitute the design criteria for a given project and are passed on to the manager agent. The constraints handled by the manager and sent to the invoked agents correspond to the requirements determining the designer's preferences, like the number of playgrounds or the existence of a parking lot. They are stored as the values of graph attributes and constrain the use of grammar rules by agents. The constraints provided by the manager agent also allow for specifying the parameters of shapes in shape grammar rules. As the agents can apply only rules which comply with the imposed restrictions, the generated solutions always fulfill the design criteria. If some constraints cannot be met, the solutions are not created. The information flow within the system is shown in Figure 1.  
The exchange of messages between agents in the system is developed based on a table architecture. Every message sent in the system has a specific type and associated data. There are two types of message templates: In the first type, a message consists of a special label, called a communication label, and a set of variables with values determining the parameters for the grammars of the invoked agents, like the number of building floors, areas, sizes, and the orientation of spaces. The second template type is in the form of a graph generated by an agent. A system of agents is situated within an environment understood here as a design space composed of all possible designs in which the design process takes place. On the basis of the given design task and specified design criteria, admissible design solutions are searched for in the design space. The grammar-based multi-agent system, which supports the design process, can be defined formally as follows:  
**Definition 1**. : _A grammar-based multi-agent design system MADS is a tuple MADS = (Env, \(M_{B}\), \(Ag_{1}\),...,\(Ag_{n}\)), where:_  
1. _Env is an environment in the form of a design space._
2. \(M_{B}\) _is a message buffer used by agents._
3. \(Ag_{1}\),..., \(Ag_{n}\) _are grammar-based design agents._  
Figure 1: Information flow in the proposed multi-agent system. The distinguished facility manager agent is responsible for designing the arrangement of the whole ground. Layouts of the facility can be composed of six types of spaces intended for a kindergarten building, yard, playgrounds, recreational areas, sports facilities, and parking lots. The manager agent delegates tasks to the agents responsible for designing the areas created by him. The number and types of areas are specified in the design criteria. The manager agent also activates the agent responsible for generating a building form. Once this form is created, the agents designing the building floor layouts are activated.