Abstract
In this work, we propose a new approach for coordinating generated agents’ plans dynamically. The purpose is to take into consideration new conflicts introduced in new versions of agents’ plans. The approach consists in finding the best combination which contains one plan for each agent among its set of possible plans whose execution does not entail any conflict. This combination of plans is reconstructed dynamically, each time agents decide to change their plans to take into account unpredictable changes in the environment. This not only ensures that new conflicts are likely to be introduced in the new plans that are taken into account but also it allows agents to deal, solely, with the execution of their actions and not with the resolution of conflicts. For this, we use genetic algorithms where the proposed fitness function is defined based on the number of conflicts that agents can experience in each combination of plans. As part of our work, we used a concrete case to illustrate and show the usefulness of our approach.
Introduction
Distributed planning [1, 2] consists of distributing the generation and/or execution of action plans over a set of agents. These agents can be cooperative in the sense that they have a common global objective and complementary capacities to achieve it or, individualistic in the sense that they have individual objectives which they can ensure the achievement without external help. In both cases, the agents must be able to generate plans which allow the achievement of either of the sub – objectives necessary for an overall objective or individual objectives. Distributed planning has enriched the automated planning field as a result of exploiting multi – agent paradigm advantages. Indeed, it has made it possible to go beyond the use of classical representation languages which have exploded a great complexity in plan generation algorithms, the resolution of which has become a major problem for the artificial intelligence community. In the literature, work on distributed planning are available. We cite, among others [3, 4, 5, 6].
The fact that multi-agent planning is distributed over a set of agents that have a strong dependence on their tasks and share the same resources, forces us to give more importance to coordination [24, 25]. The aim is to avoid conflicts that appear when several agents need the same resources simultaneously for the execution of their plans. Coordination includes a set of devices, regulations, and additional actions that it is necessary to accomplish so that the actions of the different agents are possible. The latter can be achieved either by conflict anticipation techniques before the execution of the agents’ plans [7, 8, 9, 10, 12, 13, 14] or by conflict resolution techniques during execution of agent plans [15, 16, 17, 18, 19, 20, 21, 22, 23].
When it comes to dynamic distributed planning, coordination activity becomes more difficult. In fact, in distributed dynamic planning, each agent can make changes in its set of actions to be planned, in order to take into account, the unpredictable changes in its environment. This puts the agents in front of a new planning problem and obsoletes the plans they were performing because they do not take new actions into account. Agents must, therefore, generate new plans dynamically as they change considering new actions. Nevertheless, a big problem arises concerning the coordination of these newly generated plans since new conflicts can be introduced during the execution of the new actions that are inserted in the new plans.
However, two scenarios arise depending on the coordination applied to the initial plans:
In the case where the coordination of the initial plans was based on conflict anticipation techniques before the execution of these plans, the new conflicts introduced are not taken into account, which reduces the initial coordination effort to nothing. In the case where the coordination of the initial plans was based on conflict resolution techniques during the execution of these plans, new conflicts, the number of which increases with each change in plans, force agents to make efforts to resolve them, which delays or even prevents them from achieving their goals.
To overcome these constraints, we propose a new approach for coordinating generated agents’ plans dynamically, able to take into account the evolution of many conflicts caused by the change of agents’ plans. The remainder of this paper is organized as follows. In Section 2, we give a brief overview of major-related work. We describe, in Section 3, the proposed approach. Section 4 illustrates the proposed approach using a concrete case study. Finally, some conclusions and future work directions are given in Section 5.
Literature review
Several work in the literature have been proposed for the coordination of the plans. We will focus on the proposed work for coordination prior to the execution of the plans and those proposed for coordination during the plan’s execution.
Coordination prior to the execution of the plans
Coordination prior to the execution of the plans can be: (i) after planning using plan merging methods and (ii) before planning using social laws.
Among the works proposed for coordination after planning, Georgeff [7, 8] proposes a process model to formalize the actions open to an agent. Parts of such a process model are the correctness conditions, which are defined by the state of the world and must be valid before the execution of the plan may succeed. Two agents can help each other by changing the state of the world in such a way that the correctness conditions of the other agent become satisfied.
Stuart [9] uses a propositional temporal logic to specify constraints on plans, which guaranteed that only feasible states of the environment can be reached. These constraints are given to a theorem prover to generate sequences of communication actions (in fact, these implement semaphores) that guarantee that no event will fail. To both improve efficiency and resolve conflicts, one can introduce restrictions on individual plans to ensure efficient merging.
The work [10] proposes a distributed plan synchronization algorithm. It is based on a representation of the world by states similar to the formalism strips [11]. The production of the plans is carried out by the agents according to their local goals. Each agent is then responsible for synchronizing its plans with the other agents. The construction of a structured plan is broken down into two phases. First, the agent develops a plan independently without considering the plans produced by other agents. Then, it tries to synchronize its plan by broadcasting it to the other agents.
Among the works proposed for coordination before planning, the work of Yang et al. [12] and Foulser et al. [13] proposed some social laws that each agent has to follow in its plans. Thereafter Briggs [14] proposed more flexible laws, where agents first try to plan using the strictest laws, but when a solution cannot be found, agents are allowed to relax these laws somewhat.
Although this work has contributed significantly to the field by proposing new strategies for plan coordination, it does not adapt to dynamic planning in which agents can change their plans at any time to take into account unpredictable changes in the environment. Indeed, with the changes in the plans, new conflicts are not taken into consideration during the coordination of the initial plans, it can be introduced which reduces the effort of the initial coordination to nothing. Contrary to these approaches, our approach makes it possible to consider the new conflicts that can be introduced with the changes in plans.
Coordination during the execution of plans
The work of the coordination during the execution of the plans focuses a lot more on (i) negotiation protocol (case of a cooperative negotiation). These protocols allow agents in conflict to enter into a series of exchanges and compromises in order to reach an agreement, that is, a solution that satisfies all the parties. Among these protocols we find: Contract-Net protocol [15, 16], Cammarata protocol [17] and multi-stage protocol [18, 19]. (ii) game theory [20], heuristics [21], auctioning [22] or on argumentation [23] (case of a competitive negotiation).
Coordination during the execution of plans can be adapted to dynamic planning since the appearance of a new conflict caused by the change of plans; the agents solve it and continue the execution of their plans. However, with the evolution of the number of conflicts, the agents find themselves more in the process of resolving conflicts than executing their plans, which delays them or even prevents them from completing the execution of their plans. Contrary to these approaches, our approach makes it possible to find, among the sets of possible plans of the agents, the set of plans whose execution does not involve any conflict. This is dynamic whenever there is a change in the sets of plans caused by unpredictable changes in the environment. As a result, agents find themselves only executing their plans and unsolicited in resolving conflicts.
The proposed approach for coordinating generated agents’ plans dynamically
Our approach consists in coordinating, dynamically, the plans of the agents that are likely to undergo changes following the unpredictable changes in the environment. This approach is based on the following principle:
To achieve its goal, the agent can generate several plans consisting of a sequence of actions whose execution order differs from one plan to another. However, the execution of one of these plans (the plan X, for example) can put the agent in several conflict situations with the other agents if several actions in the plan X are executed on the same resource, simultaneously with the actions of the other agent’ plans. While the execution of another plan (the plan Y, for example) may create no conflict between this agent and the other agents if no action in the plan Y is executed on the same resource, simultaneously, as the actions of other agent plans. This implies that the number of conflicts that agents can encounter depends on their choice of plans to execute in parallel.
In this regard, we propose a new centralized dynamic coordination approach in which a coordinating agent is tasked with selecting the best combination which contains one plan for each agent among its set of possible plans. The identified combination must guarantee that executing the actions of the plans it contains will not cause any conflict due to the fact that they do not use the same resource simultaneously. This combination is reconstructed dynamically, each time the agents are faced with a new planning problem, with new sets of actions to plan, with respect to which the agents will decide to change their sets of possible plans. For each new combination, the coordinating agent takes into consideration the new conflicts that may be introduced following the execution of the new actions, inserted in the new plans.
According to our approach, each agent
For this, we use genetic algorithms where the proposed fitness function (F) is defined based on the number of potential conflicts that agents can experience in each combination of plans. We set: F
Initially, at time t, each agent generates its set of possible plans
The coordinating agent, through the use of genetic algorithms, generates subpopulations with which it gets closer, as the fitness function is satisfied. This repeats until we get the best combination of plans to execute. During the execution of this combination, if one of the agents
The planning problem at time
Each agent is defined by 4 parts as follows:
The set of actions The current state of the agent. An action revision function Rev_ A plan revision function Rev_
According to our approach, the coordination problem can be defined as follows
where
where
Based on this set, the coordinating agent generates the best possible combination.
Each agent
where
Each action
where
where
where
Diagrammatic representation of the formal framework.
Figure 1 shows a diagrammatic representation of the formal framework.
Each agent
Based on the sets of plans
First, each individual
Then, a selection step is applied. This step makes it possible to eliminate the least relevant individuals (combinations) from Pop
The next step is to cross the previously selected individuals to obtain the new Pop1 population. It consists in applying for every two individuals (parents) a crossing operator in order to obtain a new individual (descendant). The latter is composed of a part of parent 1 and a part of parent 2.
To diversify the solutions over generations, a mutation step is used. This mutation consists of modifying a small part of a character in certain individuals of the new generation randomly.
From the Pop
Dynamic coordination of plans
In the event of the appearance of a new planning problem
The set of plans The initial population Pop The set of resources will be increased by the new resources to be used by the new actions.
The algorithm of our approach is presented in Algorithm 1. The function
To validate our approach, we apply it to a concrete case study: A merchandise distribution system. The objective of this system is to distribute articles Art
the agent
In what follows, we will first apply the approach to a given system state for which the agents have generated their sets of possible plans and the coordinating agent has created the best combination between the possible generated plans. In a second step, we will propose a change that will be applied during the execution of the plans of the combination found by the coordinating agent to show the dynamism of the approach. In this case study, for the genetic algorithm, we adopted a real coding and we chose the following values: maximum number of generations
Suppose that at time
System state at instant 
Suppose that the requests at this time are:
At instant t0, the set of actions of each agent
The set
The set of possible initial plans to accomplish the requests of the initial planning problem
Five possible initial plans for each agent A
To coordinate the initial plans, the coordinating agent must find the best combination, between the sets of possible plans generated by the agents, whose execution does not lead to any conflict. It starts by generating the initial population Pop
Ten vectors (possible combinations) of initial population Pop
Ten vectors (possible combinations) of initial population Pop
Figure 3 demonstrates the evaluations of the initial population Pop
Evaluation of the population Pop
After 30 generations here is the best-obtained vector (Fig. 4).
The plans of the best-obtained vector V
The plans of the best-obtained vector V
The best vector 
The plans of the
Representation of plans 
The best vector 
Five new possible plans for each agent A
Suppose that during the execution of the initial plans
Req
At the instant
The plans of the best-obtained vector V
The plans of the best-obtained vector V
Representation of the new plans of the new combination 
The new set of resources used by these actions are:
The new set of possible plans for solving the new planning problem
The coordinating agent, in this case, must find a new combination, between the new sets of possible plans generated by the agents based on their new sets of actions, the execution of which will not suffer any conflict. To do this, it follows the same steps applied for the generation of the initial
The set of plans The initial population Pop0 will be generated based on this new set of plans The resource set will be the new
Applying the approach with these new conditions gives the following vector (Fig. 6).
The plans of the best-obtained vector
The plans of the obtained vector
Distributed planning has enriched the field of planning as a result of exploiting the advantages of the multi-agent paradigm. However, the use of the latter introduced new challenges that are not present in the classic version of planning. Indeed, in distributed planning, each agent can make changes in its set of actions to be planned, in order to take into account the unpredictable changes in its environment. However, another problem arises concerning the coordination of these newly generated plans since new conflicts can be introduced during the execution of the new actions inserted in the new plans. These new conflicts are not taken into consideration in the coordination approaches before the execution of the plans, which explains the uselessness of these approaches with dynamic planning. As for the coordination approaches during the execution of the plans, even if in the latter, the agents can resolve the new conflicts each time they appear, this will, however, have the consequence of delaying them in the execution of their plans. In this work, we have proposed a new adaptive dynamic coordination approach with dynamic distributed planning, capable of considering the evolution of many of the conflicts caused by the change of agents’ plans. In this approach, a coordinating agent is in charge of finding the best combination, between the sets of possible plans generated by the agents, the execution of which does not lead to any conflict. This combination is reconstructed in a dynamic way, each time the agents decide to change their sets of possible plans to take into account the unpredictable changes in the environment. For each new combination, the coordinating agent takes into consideration the new conflicts that may be introduced following the execution of the new actions, inserted in the new plans. The proposed approach was applied to a concrete case study of a merchandise distribution system in order to show its effectiveness by taking into account the evolution of many conflicts caused by the change in agents’ plans. According to the obtained results, it would be interesting to incorporate the proposed approach into the JADE platform for supporting the coordination of generated agents’ plans dynamically.
Footnotes
Author’s Bios
