A Generic Negotiation Model for MAS Using XML * Philippe Mathieu ´ Equipe SMAC, LIFL Universit´ e de Lille I Villeneuve d’Ascq, France mathieu@lifl.fr Marie-H´ el` ene Verrons ´ Equipe SMAC, LIFL Universit´ e de Lille I Villeneuve d’Ascq, France verrons@lifl.fr Abstract – In this paper, we present a generic negotiation model for multi-agent systems (MAS), built on three levels : a communication level, a negotiation level and a strategic level, which is the only level specific to the application. XML files are used to configure the system, freeing the end-user with recompilations each time he wants to change a param- eter. The aim of this paper is then to show that it is possible to describe precisely a generic model that we can use in sev- eral negotiation problems. This model has been implemented by a Java API called ANTS used to build our applications. ANTS is the only platform which enables the use of different communication systems and of negotiation strategies inde- pendent of any attribute like price . . . These researches on negotiation take place in software engineering works for ar- tificial intelligence and multi-agent systems. Keywords: Negotiation, multi-agent systems, artificial in- telligence, XML, software engineering. 1 Introduction With the progress of information technology, multi-agent systems and electronic market places, the need of automatic agents able to negotiate with the others on behalf of the user becomes stronger and stronger. As a matter of fact, two problems motivate agent negotiations : the complexity of the decision making and the quantity of the messages required. In certain cases, specially with cascaded renegotiations, the number of messages can be in O(m n ) if n is the depth of the cascaded process and m the number of agents involved in one negotiation. In this paper, we focus on the former one. Since several years, negotiation has been studied by many researchers ([6, 4]), and many negotiation systems have been achieved in specific domains like auctions or market places often in the aim of electronic commerce, let’s cite Magnet [3] developed by the university of Minnesotta and works done at HP Laboratories [1]. Of course, negotia- tion can be used in other domains like meeting schedul- ing or reservation systems, but it seems that these ways have not been really studied. When studying such nego- tiation problems, we can see that many used notions are the same in many systems. For example, contracts, * 0-7803-7952-7/03/$17.00 c 2003 IEEE. resources, contractors, participants have a semantic equivalent in all negotiation systems. Our aim in the software engineering field, is to show that these no- tions can be reified in a generic and open negotiation model and to build the corresponding API. This model should be wide enough to allow classical negotiation applications to be cover without an adaptation effort, and to possess enough parameters to adapt to different models, which is a difficult engineering problem. Although it is difficult to define formally what is negotia- tion, we will base our arguments on the following consensual definition, which can be applied to many fields such as auc- tions, appointment taking systems, games or others. definition : Negotiation is carried out on a contract to ob- tain common resources and on the request of an initia- tor. It brings together a set of participants and an initia- tor and runs until an agreement satisfying a percentage of participants is reached. Participants equally try to obtain the best possible solution for themselves while giving a minimum set of information to the others. This definition is of course inspired of the Contract Net Pro- tocol proposed by Smith [8] in 1980, which is a fundamental of all negotiation works [7]. To conceive our model, three levels are necessary. The internal level which contains the management of data struc- tures and speech acts necessary for agents to evolve their knowledge; the communication level allowing agents to send messages in a centralised way if agents are on the same com- puter, or in a distributed way if they are on different com- puters; the strategic level allowing agents to reason on the problem and infer on the knowledge obtained from the oth- ers. In our work, each level can be changed independently of the others. It is for example possible to use ANTS in a round robin way with synchronous communication with all agents on the same computer to achieve a video game where virtual beings will negotiate turn to turn, and to use it in a distributed way with asynchronous communication for elec- tronic marketplace. In our model, the negotiating agent is composed of reactive micro-agents, where each micro-agent manages a negotiation. The success of a negotiation depends of course on strate- gies adapted to the problem processed. We will not discuss