Social Co-ordination


An important part of a node administrator's time is not spent in local problem-solving, but in co-ordinating its work with other administrators. In the particular case of ExperNet, three types of situations require co-ordination:

  1. Information acquisition, when additional observations are needed, which are available (or can be acquired) within the agent society, but are not accessible (or cannot be acquired) by the node itself.

  2. Responsibility conflicts, when different agents intend to perform similar tasks.

  3. Interest conflicts, when one agent does not agree with its role in a certain repair plan or with the effects that some plan will have on its local situation.

    We model the process of co-ordination in the above situations as conversations [1], i.e. logically coherent sequences of agent interactions. Conversations that cope with responsibility conflicts are very simple, as they just involve one interaction, transferring the responsibility for some task from the sender to the receiver. We propose three kinds of conversations of this type: diagnosis and repair delegation, repair delegation and isolation delegation. Information acquisition problems are managed by means of the observable acquisition and the plan refinement conversations, in the course of which a needy agent asks some target agent for a certain observable or plan; the latter may either reply with this information or by notifying its inability (or unwillingness) to facilitate it. Plan acceptance conversations manage interest conflicts, where all affected agents need to agree in order that a proposed plan be accepted.

    Interactions within a conversation are based on a message-passing model. Every message that is exchanged during such interactions can be considered as Speech Acts, as by emitting it the sender wants to influence the behaviour of the receiver [14]. The following table resumes the different messages that are used in the network management model as well as their intended effect on the receiver.

    Table 1. Types of Messages and Interactions

    Message types Receiverís intended reaction
    Ask for observable acquires observable & informs sender
    Ask for plan acceptance decides about acceptance & informs sender
    Ask For plan refinements refines plan & informs sender
    Do diagnosis and repair performs diagnosis and repair tasks
    Do isolation performs problem isolation
    Do repair performs repair task
    Answer with observable informs about observable
    Answer with plan acceptance informs about plan acceptance
    Answer with plan refinements informs about plan refinements



    Within conversations there are various degrees of freedom for the involved agents, as they usually may choose from several behaviour options (in the simplest case to accept or to reject a request). An agent's choice is not just determined by information respecting its local situation, but also by its knowledge and experience with other nodes in the network. It thus maintains agent models of all acquaintances that it interacts with including itself [11]. These models endow the agent acquires with additional capabilities:

  1. Problem interest: checks whether the modelled agent is believed to interested in being notified about a problem (e.g. because it is indirectly affected by that problem and wants to isolate it in order to keep its effects as local as possible);

  2. Plan interest: checks whether the modelled agent needs to be notified about a given plan (either because it is involved in it or because its side-effects concern the modelled agent);

  3. Plan rights: checks whether there is a need to obtain the agreement of the modelled agent for enacting a given plan;

  4. Observation capability, checks whether the modelled agent is believed to by capable of acquiring the value of a given observable;

  5. Diagnosis capability, determines if the modelled agent is capable of performing diagnosis for a given symptom;

  6. Plan repair capability, checks whether it can elaborate a plan for a given problem;

  7. Plan refinement capability,  analyses whether the agent may refine a given abstract plan for a given problem.

    On this basis, the three step local problem-solving cycle of an agent can be extended, leading to the following control loop, followed by ExperNet agents:


Figure 3: Structure of the method followed by an agent to manage the network.

1. Detect symptoms.

2. Inform agents interested in the symptoms, in order to diagnose them.

3. Diagnose problem (if the agent is responsible). If there are missing observables, ask agents for acquiring the corresponding value.

4. Inform agents interested in problems, in order to isolate them.

5. Inform agents interested in problems, in order to repair them.

6. Generate a repair plan (if the agent is responsible).If necessary, asks agents for plan acceptance

info.h5.gif (1109 bytes)