In the Communication Ontological Description (COD) diagram we describe the agents’ knowledge and their communications (considering related ontology, content language and agent interaction protocol). Some of these communications descend from the already studied agents’ interactions, some others will be here introduced as a consequence of the study performed in the next phases and iterations.
The Communication Ontology Diagram, is expressed in form of an UML class diagram including two different kind of elements: agents and communications. In Figure 1 we can see a portion of COD diagram reporting one of the communications of our case study; in this one the COD agent (that is a fragment agent) asks to the DOD agents the list of ontology elements that it will propose to the designer when he introduces a new communication in the diagram (see the PTK form used to introduce communication parameters shown in Figure 2).
In Figure 1, each agent is reported as a yellow-filled class with the agent stereotype and each communication is shown as a relationship between two agents and identified by a unique name. The communication parameters are detailed in a class associated to the relationship. Each communication is described in terms of: ontology (this parameter values come from the elements of the ontology defined in the DOD phase), agent interaction protocol (AIP, the choice agent interaction protocol is totally free but our tool, PTK, supports only FIPA compliant protocols), content language (we usually adopt RDF but any language, FIPA compliant or not, could be choosen).
The “Ontology_Request” communication between the COD agent (initiator) and the DOD agent (participant) refers to the MAS Description type of data (defined in the DOD diagram) the content language is RDF and the adopted AIP is Query (one of the standard FIPA interaction protocols). This description is both easy to understand and very complete and it allows the simultaneous definition of two related elements: the agent’s knowledge and its communications specification.
Figure 1 . An example of Communication Ontological Description (COD) diagram
Figure 2 . The PTK (PASSI ToolKit) form used to introduce the communication details
In designing this diagram we start from the results of the A.Id. phase. A class is introduced for each identified agent, and an association is introduced for each communication between two agents (ignoring at the moment distinctions about agents’ roles). Obviously it is necessary to introduce the proper data structure (coming from the entities described in the DOD) in each agent in order to store the exchanged data.
The association line that represents each communication is drawn from the initiator of the conversation to the other agent as can be deducted from the description of their interaction performed in the RId phase.
An important piece of experience we achieved during the almost four years of designing with PASSI is that being our agents conceived to be communication intensive, each one of them could be related to several similar (i.e. with common elements like the ontology or content language) communications. In this case, in order to optimize our architecture, we often identify a hierarchy like the one reported in Figure 3. There we can see that two different communications are just the specialization of a more general one (GetMASElements) and this offers the opportunity of improving the design of the COD agent by unifying the management of these conversations in one unique task.
Figure 3 . It is often possible to enhance the quality of the design by introducing inheritance among different communications.
Next phase: Role Description
Previous phase: Domain Ontology Description
Home: PASSI 2 homepage