6.2 Communication Definition
6.2.2 Equipment Module Agent Communication Protocol
The equipment module agent plays a pivotal role in the whole configuration methodology. Therefore, this agent needs to execute a wide range of communication protocols, which are the most complex. Because the communication protocols for the requirements agent have been already defined, these will not be covered in this description since it would be a mere mirror of the previously described protocols. The biggest amount of interaction in the proposed configuration methodology occurs between different equipment module agents. The several stages of these interactions can be found in chapter 5, while in this chapter the specific problems of each of these stages will be detailed.
The Establish Collaboration protocol is the first one that is required for the interactions between different equipment module agents. The importance of the protocol is quite clear since it provides the formal means to establish a preliminary collaboration. The basis for the decision on whether or not to establish collaboration will be defined in the operational description of the equipment module agent. The protocol however, only requires the description of the options and how to proceed in relation to them. The description provided in chapter 5 tells us that the equipment module agent will use an updated version of the requirements definition that includes the original requirements minus what the agent will contribute. Therefore there is a clear definition for the content of the message. This protocol falls clearly under the request category, where the agent requests other agents for collaboration based on a given set of requirements. The answer to this is either an acceptance or rejection of the request. The nature of this protocol is to provide a preliminary collaboration, therefore it is designed to achieve simply that, and it is self-contained because it result is a list of collaboration, which is a self-contained result.
The next step of the configuration methodology requires the equipment module agents to exchange information that contain the individual descriptions of all the members involved in a given collaboration. This step requires that all agents
133 involved in collaborations have provided this information before the individual equipment module agents can proceed to the next step. Therefore this requires an
Exchange Module Information protocol, which once triggered, it is only complete
upon the arrival of all the information. The definition of the type of protocol is quite straightforward, since it is a mere request. However, the contents of the reply need to be clearly defined. In chapter 4 a model for the description of equipment modules is present and can be used in this exchange. An important note is the restriction that upon this request equipment module agent always needs to provide an answer, otherwise the configuration method might freeze. Also within this protocol and based on the described models, the request for the equipment module information will only occur if a preliminary collaboration exists. However, the protocol should cater for the eventuality of this request being performed by an agent that does not have a preliminary collaboration established. In this situation, the agent should reply an invalid request, to ensure the overall described behaviour.
The following step is the establishment of formal collaborations which requires a more complex configuration protocol. The reason for this is the fact that different Equipment Module Agents have different beliefs on what is the best solution, which leads them to making different decisions. In this step the agents are required to establish formal collaborations which are based in their internal assessment model. The problem with these decisions is that according to the model, agents only refuse formal collaborations if their collaboration quota has been fulfilled, as defined in
chapter 5. Therefore, opposite decisions might lead to stalemate situations where the
agents are in an infinite wait state. Figure 6.2 provides an example of this where agents A, B and C want to select conflicting collaborations, therefore creating a stalemate situation as described above.
Figure 6.2 - Example of Stalemate Situation
3 1 Agent Environment 2 6 B 7 5 9 8 A 4 C
134 To avoid stalemate situations the Establish Formal Collaboration protocol has a timer. The timer period reflects the valuation that each individual equipment module agent has of a given configuration solution. The idea is that the higher the valuation the more time the agent is willing to wait for it. This is important for the protocol because the Equipment Module Agent drops the formal collaboration request, and it has to inform all involved members through a cancellation message. Besides this, there are two other outcomes for this protocol to finish, either all have accepted the formal collaboration or in the case of one rejection this collaboration is dropped. The content of the exchanged messages requires only the ID of the configuration.
Once the configurations are established, the equipment module agents proceed to the validation phase. In this phase an Expert Validation Request protocol is required for the interactions with the MAS expert agent. The information that needs to be sent to this agent consists on the configuration description, which follows the model presented in chapter 4. Similarly to the previous defined protocols, this is a request where an answer is mandatory. The answer might confirm the validity and completeness of the solution or provide a new set of requirements, which again will follow the models presented in chapter 4.
The creation and deployment of performance simulation agents is quite straightforward, and the creation process allows for the transferring of a lot of the information required. However, because these agents were designed to be reused, the connections that it establishes are sent in the Request for Simulation protocol. It is important to note that only the owner of the agent can request this, therefore if other agents try to request a simulation the agent will return an invalid request answer. So the trigger for this protocol is a request by the equipment module agent to the performance characteristic agent that contains the connectivity information. The answer for this request is either the failure to perform simulation, which will occur when a performance simulation agent cannot be reached, or the results for simulation. The content for these replies use either the results of the simulation or provides the information of which agent or agents could not be reached to perform the simulation.
135 The kill order is processed in a separate protocol to ensure the clear separation between the different actions. This protocol is named Kill Order, which consists of an order type message that returns a confirmation.
The final protocol that detailed interactions between different equipment module agents is the Establish Unique Collaboration protocol. This protocol follows the same approach as the one previously described to establish formal collaborations to avoid stalemate situations. Therefore this protocol is triggered by a request for a unique collaboration which merely needs to provide the ID of the configuration solution. The reply might be a rejection or an acceptance, with the safeguard of the possibility of the cancelation of the request. The detailed sequence diagrams for the
Equipment Module Agents where these protocols are invoked can be found in the Appendix B.