Abstract
In this work, we propose a new distributed dynamic planning approach based on constraint satisfaction, able to take into account the satisfaction of the constraints in all new versions of generated plans. Our approach is to generate, a new plan by each agent, whenever there is a change in its set of actions to plan caused by the unpredictable changes of the environment. This does not alter the satisfaction of the constraints taken into account during the generation of the initial plan. Our approach allows the integration of all the new actions, generated by the changes, in the new plan at the right place, which preserves the satisfaction of the constraints. For this, the approach uses genetic algorithm where the fitness function is defined on the basis of the constraints to be satisfied. The proposed approach is supported by a formal framework and applied on a concrete case study to illustrate and show its usefulness.
Introduction
Planning is a central issue in Artificial Intelligence, which the aim is to generate an action plan at a symbolic level from an initial state to a previously defined goal [1]. In its classical version, planning has been developed considerably because of the richness of the modeling languages and the efficiency of the systems of generation of the plans. Nevertheless, classical planning suffered from a weakness caused by the fact that it was based on two strong simplifying assumptions: the provision of perfect knowledge at all times of the state of the system and the effects of actions and The certainty that the changes in the state of the system arise solely from the execution of the actions of the plan. To overcome this weakness, the field of planning in the uncertain [2] has developed, proposing to integrate probabilistic actions and additive utility functions on the goals, leading to a family of approaches for planning based on decision theory [3] and using representational languages traditionally known in artificial intelligence: logic, constraints, or Bayesian networks. The use of these representational languages has caused a great deal of complexity in the algorithms for generating plans, the resolution of which has become a challenge for artificial intelligence community.
The extension of planning in multi-agent systems has resulted in distributed planning [4, 5] where the planning domain is distributed over a set of agents. These agents may be cooperative in the sense that they have a common overall objective and complementary capacities to achieve it or individualistic in the sense that they have individual objectives which they are able to achieve without external help. In both cases, the agents must be able to generate plans that allow the realization either of the sub-objectives necessary for a global objective or of the individual objectives. In the literature, there is some work on distributed planning. We cite, among others [6, 7, 8, 9].
Unlike object paradigm, the agent has a behavior characterized mainly by four properties [10]: autonomy, sensitivity, locality and flexibility. Indeed, the agent is not limited to reacting to the invocations of specific methods, as is often the case in the object paradigm, but also to any other observable change in its environment. Taking these changes into account automatically translates into a set of new actions that the agent must perform. The determination of these actions depends on the nature of the agent [11]. Indeed if, for example, the agent is rational, the actions to be determined must not be in opposition to the utility function of the agent, if the agent is with purpose, these actions must not be in opposition with the purpose of the agent, if the agent is reactive with model, these actions are predetermined by a set of rules. The behavior of the agent therefore has advantages, however, the new actions, introduced by the unpredictable change of its environment, can create a problem in distributed planning. This is especially noticeable when distributed planning is based on satisfying the constraints imposed by the system, by the agents or by the agents’ coordination.
Indeed, in classical planning, the set of actions to be planned is defined beforehand and does not undergo any change thus ensuring, a reliability of the generated plan regarding the constraints to consider when generating the latter, until the end of its execution. In distributed planning, however, each agent may have changes in the set of actions to be planned, as a result of unpredictable changes in the environment. Indeed, because of the changes, the plan that the agent was executing becomes obsolete because it does not take into account the new actions. The agent is therefore forced to generate a new plan in which it integrates the new actions. However, a problem arises with respect to the constraints to be satisfied. Indeed, the agent must integrate the new actions in the new plan without altering the satisfaction of the constraints taken into account during the generation of the initial plan.
This represents the focal point of our work, in which we propose a new distributed dynamic planning approach, able to take into account changes that may occur on the set of actions to plan and ensure the satisfaction of the constraints in the new generated plans. Our approach fits into the context of distributed planning for distributed plans (several planners, several executors) where each agent can produce and execute its own plan independently of other agents. In this type of planning, there is no overall plan. To ensure coordination between these plans, agents must satisfy, in addition to the constraints that they have, the necessary constraints to avoid conflict situations in all versions of generated plans. In the case of non-determination of constraints to avoid conflict situations, agents execute their plans (without prior coordination) and in the event of a conflict situation, they resolve it either by negotiation [12] or by arbitration (iterative coordination).
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 works in the literature have been proposed for distributed planning. We will focus on proposed work for dynamic distributed planning and proposed work for distributed planning based on constraint satisfaction. Distributed dynamic planning approach was proposed in paper [13, 15]. In paper [13], the authors proposed an approach of multi-agent (MA) plan repair (MA-REPAIR), based on multi-agent planning (MASTRIPS) as introduced in [14]. MA-STRIPS is an approach to planning for teamwork and coordination extending the classical STRIPS-based planning techniques. According to the MA-REPAIR approach, the multi-agent team computes a team plan using a fully decentralized MA-STRIPS planning algorithm, and subsequently executes the plan, while at the same time monitoring of possible failures of plan execution. Upon an occurrence of such a failure, the team stops execution and invokes a plan repair algorithm and fixes the failed joint plan in order to reach a joint goal state from the state in which the failure occurred.
In paper [15], the authors proposed prefix and suffix-based approaches to MA plan repair. Their work showed that these repairing approaches save communication in contrast to replanting from scratch in tightly coupled problems with action failures; however a research question which plan repairing techniques are more appropriate for which planning domains and problems remained unanswered. In this work, we generalize the prefix and suffix-based approaches from their work and present a study on how particular multi-agent plan repair techniques and particular parameterizations perform in different planning domains.
Although these works have considerably forwarded the domain by proposing novel strategies for distributed dynamic planning, they did not discuss the satisfaction of the constraints in the dynamic generation of new plans. Unlike these approaches, our approach is able to take into account unpredictable changes in the environment by generating new plans. This does not alter the satisfaction of the constraints taken into account during the generation of the initial plan.
Other constraint satisfaction based approaches for multi-agents planning systems were proposed [16, 17, 18, 19]. Here agents search cooperatively an optimal plan satisfying a predefined set of constraints distributed over them. Although this approach gives good results in the case of a small size problem and a static environment, the performance of these systems falls in the case of a large distributed problem with a dynamic environment. This is explained by the fact that, when searching for a global optimal plan, each agent maintaining a certain number of constraints has to share their values (values of constraints) every time with other agents of the system until reaching a global optimal plan satisfying all the constraints and generated cost verifies a predefined objective function. These interactions between agents generates a huge number of communications which negatively influences system’s performance, namely when the environment’s dynamicity is high. Unlike these approaches, our approach works even if the agents’ environment is dynamic. In addition, in our approach each agent generates its own plan independently of the other agents which minimizes the interactions between agents, attenuates the complexity of the distributed planning problem and hence improves the performance of the searched solution.
Proposed approach to distributed dynamic planning based on constraint satisfaction
According to our approach, each agent must generate the most appropriate plan, based on its set of actions that it has at a given moment, to satisfy all the set of constraints imposed by the system, by the agent or by the coordination between the agents. Each agent must regenerate a new plan, dynamically, whenever the its set of actions to plan changes. For each generated new plan, the agent integrates the new actions in the new plan while respecting the constraints to be satisfied. This approach is based on the following principle:
To achieve its goal, each agent can generate multiple plans with the same set of actions in a different order from one plan to another. Depending on the order of the actions, the agent may be very close to or far from satisfying the constraints. In this case, the satisfaction of all constraints allows establishing the best order of actions to be planned by the agent, whatever the changes occurring on the set of actions. The question that arises is: how can the agent recognize the best order that can enable him to meet the constraints? For this, we use genetic algorithm where the proposed fitness function is defined on the set of constraints that the agent must satisfy in the plan it must generate.
Initially at time
According to our approach, the planning problem at time
Each agent is defined by:
A set of actions to be executed at time A set of constraints to be satisfied during the generation of the plan at instant A fitness function to be optimized, by the agent, during the generation of its plan. It is defined on the basis of the constraint fitness functions. The current state of the agent. An action review function that updates the agent’s actions at any time.
According to our approach, the distributed planning problem could be defined as follows:
where
Coordination: represents the chosen coordination process to be used in the case of non-determination of constraints to avoid conflict situations.
Figure 1 shows a diagrammatic representation of the formal framework.
The solution to this distributed planning problem, at instant
where
Diagrammatic representation of the formal framework.
Each agent
Agent
Firstly, each
Secondly, a selection step is applied. This step eliminates the worst plans of the
Thirdly, this step is to cross the previously selected plans to obtain the new
Finally, to diversify the solutions over the generations, a mutation step is used. This mutation consists in randomly modifying a small part of a character in certain individuals of the new generation. This step is carried out with a very low probability, and consists, for example, in exchanging two consecutive actions in a plan.
From the population
Dynamic generation of plans
Each agent
The set of actions to be planned The initial population The initial state of the agent for this plan will be the state of the agent at time The initial system’s state for this plan will be the system’s state at time
Our approach is presented in Algorithm 1. The part that allows the generation of plans using genetic algorithm is realized by the function:
InputinputOutputoutput Generation
To validate our approach, we apply it to a well-known problem: The Dynamic Pick and Delivery Problem (DPDP) where the objective is to distribute articles (or items)
The choice of the case study was based on the fact that it allows the illustration of different stages of the proposed approach in a simple and clear way. In the following, we will at first time
In this case study we have adopted three (3) reactive agents with model whose determination of actions to perform is predefined by a set of rules. In our case study, agents use two rules:
for each request
When the battery of an agent
We suppose that the three agents must satisfy the same constraints. The first constraint is to minimize distance the second constraint is to reduce number of obstacles in distribution.
The finesse function of each constraint is:
where Point
The fitness functions must be optimized by each agent
The system state is defined each time by the position of the clients
and the final state of each agent is
The coordination process chosen in the case of conflict events is the process of coordination by arbitration where the arbitrator or mediator has the various possible points of conflict and how to resolve them.
For the genetic algorithm, we chose the following values: Initial population size
The case study is developed using JADE platform [20].
Suppose that at the instant
The system state at the instant 
At the instant
To generate an initial plan, each agent
In order to find a better
Evaluation: this step consists in calculating the fitness function Selection: this step is to eliminate the worst plans of the Crossing: this step consists of crossing the previously selected plans to obtain the new
The steps described above will be reapplied on the obtained population
Figure 3 shows the best plans obtained by agents
Representation of the best plans obtained by agents 
Let us suppose that during the execution of the initial plans by each agent, at instant
The agents concerned by this change must generate a new plan in which they take into account the new actions necessary to fulfill the new requests. For the generation of this new
The action set of each agent
The initial population,
Applying of our approach providing these new conditions gives the following plans (see Snippet 8). In these new plans, the new actions (marked in red) have been integrated in the right place to respect the satisfaction of the constraints taken into account during the generation of the initial plan.
Figure 4 shows the best new plans obtained by agents
Representation of the best new plans obtained by agents 
The obtained results show that the proposed approach offers several advantages, namely taking into account of changes that may occur on all the actions to be planned by each agent following the taking into account of the changes observable in its environment. The second advantage is that the constraints are respected in every version of the generated plan. Indeed, the proposed approach allows the integration of the new actions in the correct order so as not to alter the satisfaction of the constraints taken into account during the generation of the initial plan. Another interesting advantage of the proposed approach is it avoids returning to the zero point for the generation of a new plan since each agent takes into consideration only the old actions not executed of the old plan to which it adds new actions generated by the changes. Also, the use of genetic algorithm allows ensuring that generated plans are the best ones and computed in reasonable time. Moreover and besides that the proposed approach is independent of agents’ architecture, each agent generates its own plans independently of the other agents, which minimizes the interactions between agents, attenuates the complexity of the distributed planning problem and hence improves the performance of the searched solution.
Conclusion
Agent-oriented technology has become a full-fledged paradigm of software engineering with its own methodological elements in terms of design and programming. The success of this paradigm, in relation to other paradigms, rests on its own functional and behavioral characteristics such as autonomy, pro-activity, sensitivity, flexibility, etc. The extension of planning in multi-agent systems has resulted in distributed planning. This extension has enriched the field of planning following the exploitation of the advantages of the multi-agent paradigm. However, the use of the latter has introduced new non-existent challenges in the classic version of planning. This is especially noticeable when distributed planning is based on satisfying of the constraints imposed by the system, by the agents or by the agents’ coordination.
Indeed, in distributed planning, each agent can make changes in its set of actions to plan, in order to take into account the unpredictable changes in its environment. The agent is therefore forced to generate a new plan in which it integrates the new actions. However, a problem arises with respect to the constraints to be satisfied. Indeed, the agent must integrate the new actions in the new plan without altering the satisfaction of the constraints taken into account during the generation of the initial plan. In this paper, a new distributed dynamic planning approach is proposed, able to take into account the changes that can occur on the set of actions to plan and ensure the satisfaction of the constraints in the new generated plans.
According to our approach, each agent starts by generating its initial plan, in which it establishes the best order, of the set of initial actions it must execute in order to satisfy the set of constraints in the most satisfactory way. During the execution of the generated plan, if the agent is faced with a change, against which new actions must be executed, another plan will be generated dynamically to take these actions into account. In this new plan, the agent must establish the best order between the old non-executed actions of the old plan and the new actions generated by the changes in order to satisfy all the constraints. The generation of the plans is repeated in a recursive manner, taking, each time, as a new initial state; the state in which the set of actions of the agent undergoes a change. The proposed approach is validated on a concrete case study: DPDP. According to the obtained results, it would be interesting to integrate our approach into the agent development platforms as a separate library to support the planning process.
As future work, we plan in the short term to study the computation time of the generated plans in the objective to optimize it. One way to attain this aim is to consider soft and hard constraints which allow obtaining approximate solutions with less response time.
Footnotes
Authors’ Bios
