Towards a framework for a service-oriented automated negotiation

0 downloads 0 Views 306KB Size Report
Automated negotiation plays an important role in the process of reaching a .... English auction (auctioneer starts with the minimum acceptable price and bidders.
Towards a framework for a service-oriented automated negotiation Manuel Resinas, Pablo Fernandez, Rafael Corchuelo The Distributed Group ETS. Ingenieria Informatica Avda. Reina M ercedes s/n, 41012 Sevilla http://www.tdg-seville.info

Abstract. Automated negotiation plays an important role in the process of reaching a mutually acceptable agreement between service consumer and service provider about the terms of the service is being provided. In the last years, a vast amount of work about negotiation protocols and decision-making models have been proposed to achieve this automated negotiation. However, the goodness of each proposal depends on the negotiation context. Hence, several negotiators implementing different negotiation techniques should be required in a real world environment. Therefore, a common framework is needed to support all them and to select the proper technique in each case, making the development of automated negotiators easier. This is a novel research line in automated negotiation, where the need of these frameworks has been identified, but there are no solid proposals yet. We present a framework that supports the most significant negotiation protocols and strategies, makes a neat distinction between negotiation protocols and strategies, defines the steps of the decision-making process and allows new protocols and strategies to be added to the system.

1 Introduction In recent years, Internet and web services have opened new ways of subcontracting in the software industry through the use of services provided by a company in the bus iness process of another one. To offer a guarantee on the quality of the service, ele ctronic contracts or agreements can be settled to establish both functional and non functional requirements that must be observed by the service provider during the se rvice execution. Automating the creation of agreements, so that the human particip ation in the process was reduced to the minimu m possible shall bring the following a dvantages: cutting the cost of reaching an agreement, increasing the speed in the contracting process, and allowing the establishment of new business relationships in a more flexib le way. However, providers’ preferences are usually opposed to consumers’ ones. Prov iders want to reach an agreement about the use of a service in the most profitable terms for them, wh ich, generally, are not the most beneficial to the consumer. Therefore, both parties must negotiate in order to reach a mutually acceptable agreement. Here is where automated negotiation techniques play their main role.

2

Manuel Resinas, Pablo Fernandez, Rafael Corchuelo

In the last years, much work has been done in the development of protocols and strategies to carry out this automated negotiation. However, depending on the negotiation context (object which is being negotiated, time constraints of the parties, number of parties participating in the negotiation), several negotiators imp lementing different negotiation protocols and strategies might be needed. The reason is that the goodness of a negotiation technique depends on that negotiation context. For instance, if the n egotiation deadline is near, the negotiator should concede more than in the beginning of the negotiation. Therefore, a framework that integrates all those negotiation techniques and selects the best option to use in every mo ment is needed. This is a novel research line in automated negotiation because although much work has been done recently in automated negotiation, all efforts have been centered in the development of either new negotiation protocols or decision-making techniques. In this paper, we outline a framework to build automated negotiators that shall present the following features. First, it integrates the most significant negotiation strategies that have been proposed in the literature. Second, it supports a wide variety of negotiation protocols. Third, it establishes a neat distinction between negotiation protocols and decision-making techniques. Fourth, new strategies and negotiation protocols can be easily added to the framework. Finally, the framework must be defined with a high level of detail and the relations between its different comp onents must be clearly established. The structure of this article is the following. Next , in Section 2 we introduce the concepts of automated negotiation. In Section 3, the proposed framework is described. Finally, in Section 4 the related work is analysed and in Section 5 we co nclude and discuss future work.

2 Automated negotiation concepts The automated negotiation process can be understood as a search, in the space of possible agreements, of a mutually acceptable agreement by the parties that are carrying out the negotiation. Different categories of automated negotiation can be e stablished based on the characteristics of the parties involved in the negotiation and their relationship. In this work, we focus on the so-called service-oriented negotiations [24]. The goal of this kind of negotiation is to reach an agreement between a service provider and a service consumer about the terms and guarantees of the service consumption. This scenario defines the characteristics of the negotiation that shall be carried out. It is a non-cooperative negotiation because the parties involved in it are selfish and, therefore, they just try to maximise their own benefit. It is also a negotiation with part ial informat ion because if a party has access to the private informat ion of other parties, it may use it in its own benefit to get a more profitable agreement. Finally, a service oriented automated negotiation has hard computational constraints, because we are interested in negotiating in a real-world scenario. Three different parts must be taken into consideration in an automated negotiation process [14]: the negotiation object (what is being negotiated), the negotiation protocol (which are the rules of the negotiation and how the parties communicate each ot h-

Towards a framework for a service-oriented automated negotiation

3

er) and the decision-making model or strategy that are followed by the parties involved in the negotiation. These three parts are not independent but strongly related: depending on the negotiation object, it is better to use one negotiation protocol over another one, and, depending on the negotiation protocol, a specific decision -making model must be follo wed. Next, we detail these three parts. 2.1 Neg otiation object In a service-oriented negotiation, the negotiation object is an agreement establishing the terms of the service consumption. Therefore, the goal of the negotiation is to find the values o ranges of those terms so that the agreement is optimu m or, at least, acceptable to the parties involved in the negotiation. Several proposals have been presented about the format of these agreements [26], but the most significant is WS-Agreement [1], that probably shall become in the standard of agreement definit ions. 2.2 Neg otiation protocol The negotiation protocol establishes the rules that govern the negotiation and the way the communicat ion between the different parties involved in the negotiation is carried out. The most common negotiation protocols can be categorized into auctions and bilateral negotiations [13]. Auctions consist in one or more parties called auctioneers, who start the auction, and other parties called bidders that bid following a protocol that may allo w one or several rounds. There are a lot of kinds of auctions [25], but the most popular are [3]: English auction (auctioneer starts with the min imu m acceptable price and bidders raise their b ids until either nobody bid higher or a time limit is reached), Dutch au ction (auctioneer starts with the maximu m price and then lowers it while no offers are made, the first one that bids wins the auction), Vickrey au ction (b idders don’t know what the other bidders are offering, the highest bid wins the auction, but the price paid is the price of the second higher bid) and the first-price sealed-bid auction (like the Vickrey auction but the price paid is the higher bid price). Bilateral negotiations consist in exchanging offers and counteroffers between se rvice provider and service consumer. This negotiation may be without restrictions on the content of the offer and counteroffer [24]; with restrictions such as the range of values of, at least, one term in the counteroffer must be narrower than in the offer [15]. They may use a system of votes to avoid local min ima in the negotiation of complex contracts [17]. The terms of the agreement may be negotiated one -by-one following an established agenda [10]. It may be possible to commit and deco mmit an agreement depending on the needs of the parties [21] or to argu ment why an offer is good to persuade the other party to accept it [22]. Another examp le of negotiation protocols is the FIPA Contract Net [7]. Obviously, a concrete negotiation protocol may present several of these characteristics or introduce small variat ions to them.

4

Manuel Resinas, Pablo Fernandez, Rafael Corchuelo

2.3 Decision making models The decision making model determines the way the different parties involved in the negotiation process shall behave. That is, what is being considered as an acceptable offer, what it is not, how the counteroffer is built or how the bid is carried out. Two parts are distinguished in the decision making model: the offer evaluation and the construction of a counteroffer. The most common way of evaluating offers is through the definition of utility functions to each term of the agreement. Depending on the value of the term, it has a certain utility to the party [8]. The total utility of the agreement is usually calculated as the weighted sum of the utilit ies of each term of the agreement [23]. After evaluating the offer, it is decided whether it is acceptable to us and, if it is not, a counteroffer is built. A wide variety of techniques have been developed to ge nerate counteroffers. The most significant are: those that use time-dependant functions, resource-dependant functions, etcetera to obtain the counteroffer by modifying the values of the terms of the offer [8]; those that try to make the counteroffer more a ppealing to the opponent by sending the counteroffer with the highest similarity to the received offer [9]; those that use constraint resolution techniques [19] or that are based on fuzzy constraints [18], and those that interpret the negotiation as if it were a game and use techniques similar to those used in chess games [16]. Genetic alg orith ms have also been used to calculate offline wh ich is the best strategy to use d epending on the conditions of the negotiation in a certain instant [3, 11]. Finally, it is useful to model our opponent in the negotiation to know its preferences and to build better counteroffers. Bayesian learning [28] and kernel density estimation techniques [6] have been proposed to build that model.

3 Frame work for automated negotiations In the previous section, we enumerated several proposals about negotiation protocols and decision-making models for automated negotiation. However, any proposal seems to be better than the others, but the goodness of a proposal depends on the negotiation context (object which is being negotiated, time constraints of the parties, number of parties participating in the negotiation). Hence, several negotiators implementing different negotiation techniques could be required in a real world environment. Therefore, there is a need for a common framework to unify them and to make the deve lopment of automated negotiators easier. In our framework we try to reach this goal through:  Identify the communication primitives of the negotiation protocols to get the hig hest independence between negotiation protocol and decision making model.  Define the different parts that constitute an automated negotiator.  Describe the information that an automated negotiator must handle.  Establish the phases of the decision making process.

Towards a framework for a service-oriented automated negotiation

5

Our framework supports and allows the integration of the most significant negotiation protocols and decision-making models. Specifically, all decision making models mentioned in the previous section and all protocols but [17, 10, 22]. 3.1 Neg otiation protocols One main goal of the framewo rk is to establish a neat distinction between the negotiation protocol and the decision making model and to make them as independent as possible of each other. This cannot be done completely because, for instance, the d ecision making model fo r an auction is different than the decision -making model fo r a bilateral negotiation. However, the same decision-making model might be used for two similar bilateral negotiation protocols. Six co mmun ication primitives have been identified in the negotiation protocols. Specifically: accept (accept a proposal), rejectNegotiation (cancel the whole negotiation process), rejectProposal (reject the proposal but the negotiation goes on), propose (make a proposal), commit (co mmit to a given proposal) and inform (additional informat ion about the negotiation, for instance, a new bid has been done). These primitives make it possible to build decision-making models, with independence of the specific negotiation protocols.1 Therefore, two aspects must be defined for each negotiation protocol supported by the framework: a mapping fro m the specific messages of the protocol to the communication primit ives and a set of rules specifying when and how these primit ives can be used in a particular state of the negotiation. Hence, adding a new negotiation protocol to the framework is as easy as defining these two aspects for the protocol. The management of the messages received fro m the opponent is shown in Fig. 1. First, they are checked against the protocol rules to validate them and they are tran sformed into the negotiation primit ives . Next, they are sent to the decision-making system together with the set of possible answers, which are generated by using the prot ocol rules and the current state of the negotiation. Finally, the answer produced by the decision-making system is converted into a message in the negotiation protocol that is being used and it is sent to the opponent. 3.2 Decision-making models As shown in Fig. 1, the entry of the decision-making process is the received communication primitive and a set of possible answers depending on the current state of the negotiation. The result of that process is usually a message that shall be sent to the opponent, but occasionally, the decision may be to send no answer and wait for the opponent to send more informat ion. The decision making process has five phases: history update, evaluation and mo deling, response type selection, strategy selection and counteroffer generation.

1

Note that ACL is just an implementation of these communication primitives.

6

Manuel Resinas, Pablo Fernandez, Rafael Corchuelo

Fig. 1. Negotiation protocol management

The first step after receiving a message is to add it to the negotiation history. Th is is carried out in the history update phase. We must keep this history because some heuristics that can be used to generate a counteroffer or to model the opponent may require this in formation like in [6]. Next, the offer is evaluated and the model of the opponent is updated. This is performed in the evaluation and modeling phase. Evaluation consists in calculating how good is the received offer. This evaluation is usually carried out by using utility fun ctions [8]. However, other evaluation mechanisms may be used like in [4]. On the other hand, it is useful to know the opponent’s preferences (what agreement is willing to get) and characteristics (how the opponent tries to achieve that agreement, for instance, whether it is a hard or soft negotiator) to make a more effective negotiation. To do so, Bayesian learning or kernel density estimat ion mechanis ms may be used as mentioned in Section 2.3. In the response type selection phase, it is decided what response is to be sent to the opponent. That is, we decide if the proposal is accepted, rejected or if a counteroffer shall be generated. If it is decided to generate a counteroffer, the strategy selection phase take place. The negotiation strategy determines the guidelines that are going to be followed to build the counteroffer. For instance, if we are going to concede [8], to make a trade off based on similarity with the received offer [9] or to use any other strategy that had been proposed in the literature. In this phase, first we decide whether a change of n egotiation strategy is needed and if it is so, then we determine wh ich other strategy must be used to generate the counteroffer. Th is decision shall be made based on the negotiation history, the opponent model, our own preferences and our previous neg otiations experience. Finally, in the counteroffer generation phase, the counteroffer is built following the selected strategy.

Towards a framework for a service-oriented automated negotiation

7

Table 1. Proposals comparison

[2] [7] [5] [27] [12] Ours

Several protocols

DM support

No No Y Y Y Y

No No No Y Y Y

Protocol/ DM Separation N/A N/A N/A Y Y Y

Evaluation indep. of strategy N/A N/A N/A No Y Y

Dynamic DM phases change of strategy N/A N/A N/A N/A N/A N/A No No Y No Y Y

4 Related work In Table 1 we show a co mparison of works that present different negotiation frameworks. WS-AgreementNegotiation [2] is a draft of a specification that is being developed by GRAAP-W G that extends WS-Agreement [1] with negotiation capabilit ies. However, it only specifies the protocol and the communication mechanism between the different parties. It doesn’t deal with the decision making process. This is also the case of FIPA Contract Net Protocol [7], where it is only defined the commun ication between parties. In fact, our framework may support both protocols if a mapping to communicat ion primit ives is done and the protocol rules are defined. In Bartolini et al. [5], a framework for automated negotiation is developed but it is only focused on negotiation protocols. It defines a rules taxonomy and several me ssages protocols to specify how parties may start a negotiation, how the messages are validated, when it is finished the negotiation, and how the final agreement is built. However, it does not cover the decision making process. Hence, this work is complementary to ours because it describes rules and components that may be included as part of the elements mentioned in Section 3.1. The work developed in [27] is closer to ours because a neat distinction between negotiation protocol and decision making model is made and they use a plug -in mechanism to support new protocols and strategies. Nevertheless, it is not possible to change dynamically the negotiation strategy depending on the state of the negotiation; it does not distinguish several phases in the decision making process (everything a ppears in the same module), and it does not define how the protocol plug -in interacts with the strategy plug-in. In PANDA [12] a framework is proposed that mixes utility functions and rules to carry out the decision making process. A set of commun ication primit ives is used to make independent the decision making of the negotiation protocol like in our framework. The decision-making co mponent is composed of rules, utility functions and an object pool with several estimat ion lib raries, the negotiation history and the cu rrent offer. However, this component is vaguely defined and it establishes neither the inte rface of the estimation libraries objects nor the process that must be followed in the

8

Manuel Resinas, Pablo Fernandez, Rafael Corchuelo

decision-making. Another problem is that the strategy selection is done through rules created manually. Nevertheless, the global architecture includes some elements that may be future extensions of our framework such as a negotiation coordinator or a uti lity updater.

5 Conclusions and future work During last years, negotiation protocols and decision-making techniques have been developed but, as no one has proven to be better than the others, but it depends on the negotiation context, there is a need for a system that integrate them all and select the best option to use in every mo ment. In this work we outline such a framework. Its main features are that it gives support to the most significant negotiation protocols and strategies, allows to add easily new ones, defines the negotiation capabilities of the negotiator in a modular way, makes possible to reuse strategies, offers evaluation mechanis ms and negotiation protocols in several negotiators, and, unlike other works, the communicat ion between negotiation protocol and decision -making is clearly defined as well as the phases of the decision making process. This article forms the basis for reaching our goal of building automated negotiators easily. However, some work still has to be done. The main current research lines are, on the one hand, to detail the strategy selection phase, analyzing the best way to perform this selection and the interactions between different strategies. On the other hand, we are working in a negotiation coordinator that allows us to carry out n simultaneous negotiation as in [20].

References [1] A. Andrieux, K. Czajkowski, A. Dan, K. Keahey, H. Ludwig, J. Pruyne, J. Rofrano, S. T uecke, and M . Xu. WS-Agreement specification, 2004. [2] A. Andrieux, K. Czajkowski, A. Dan, K. Keahey, H. Ludwig, J. Pruyne, J. Rofrano, S. T uecke, and M . Xu. WS-AgreementNegotiation sp ecification, draft, 2004. [3] P. Anthony and N. R. Jennings. Developing a bidding agent for multiple heterogeneous auctions. ACM Trans. Internet Technology, 3(3):185-217, 2003. [4] R. Bordley and M . LiCalzy. Decision analysis using targets instead of utility functions. Decisions in Economics and Finance, 23(1):53-74, 5 2000. [5] R. Choren, A. Garcia, C. Lucena, and A. Ramonovsky, editors. A Software Framework For Automated Negotiation. Springer Verlag, 2005. [6] R. M . Coehoorn and N. R. Jennings. Learning on opponent's preferences to make efective multi-issue negotiation trade-offs. In ICEC '04: Proc. of the 6th Intern. Conf. On Electronic Commerce, pages 59-68, New York, N Y, USA, 2004. ACM Press. [7] F. T. Communication. Fipa contract net interaction protocol specification. http://www.fipa.org/specs/pesspecs.tar.gz. [8] P. Faratin, C. Sierra, and N. R. Jennings. Negotiation decision functions for autonomous agents. Int. Journal of Robotics and Autonomous Systems, 24(3-4):159-182, 1998. [9] P. Faratin, C. Sierra, and N. R. Jennings. Using similarity criteria to make tradeoffs in automated negotiations. Artificial Intelligence, 142:205-237, 12 2002.

Towards a framework for a service-oriented automated negotiation

9

[10] S. S. Fatima, M . Wooldridge, and N. R. Jennings. An agenda-based framework for multiissue negotiation. Artificial Intelligence, 152(1):1-45, 1 2004. [11] S. S. Fatima, M . Wooldridge, and N. R. Jennings. A comparative study of game theoretic and evolutionary models of bargaining for software agents. Artificial Intelligence Rev., 23(2):187-205, 2005. [12] H. Gimpel, H. Ludwig, A. Dan, and B. Kearney. Panda: Specifying policies for automated negotiations of service contracts. In Service-Oriented Computing- ICSOC 2003, pages 287302. Springer-Verlag, 2003. [13] M . He, N. R. Jennings, and H.-F. Leung. On agent-mediated electronic commerce. IEEE Trans. On Knowledge and Data Engineering, 15(4):985-1003, 7 2003. [14] N. R. Jennings, P. Faratin, A. R. Lomuscio, S. Parsons, M . Wooldridge, and C. Sierra. Automated negotiation: Prospects, methods and challenges. Group Decision and Negotiation, 10:199-215, 3 2001. [15] A. H. Karp. Rules of engagement for automated negotiation. Technical Report HPL-2003152, HP Laboratories, 7 2003. [16] A. H. Karp, R. Wu, K.-Y. Chen, and A. Zhang. A game tree strategy for automated negotiation. In ACM Conference On Electronic Commerce, pages 228-229, 2004. [17] M . Klein, P. Faratin, H. Sayama, and Y. Bar-Yam. Protocols for negotiating complex contracts. IEEE Intelligent Systems, 18(6):32-38, 2003. [18] R. Kowalczyk. Fuzzy e-negotiation agents. Soft Computing, 6(5):337-347, 2002. [19] R. Kowalczyk and V. Bui. On constraint-based reasoning in e-negotiation agents. In Agent-M ediated Electronic Commerce III, pages 31-46. Springer-Verlag, 2001. [20] T. D. Nguyen and N. R. Jennings. Coordinating multiple concurrent negotiations. In Proc. 3rd Int. Conf. On Autonomous Agents and M ulti-Agent Systems, 2004. [21] T. D. Nguyen and N. R. Jennings. Reasoning about commitments in multiple concurrent negotiations. In Proc. 6th Int. Conf. On E-Commerce, pages 77-84, 2004. [22] S. D. Ramchurn, N. R. Jennings, and C. Sierra. Persuasive negotiation for autonomous agents: A rhetorical approach. In Proc. IJCAI Workshop On Computational M odels of Nat ural Argument, pages 9-17, 2003. [23] A. Ruiz-Cortés. Una Aproximación Semicualitativa Al Tratamiento Automático de Requisitos de Calidad. PhD thesis, Universidad de Sevilla, 2002. [24] C. Sierra, P. Faratin, and N. R. Jennings. A service-oriented negotiation model between autonomous agents. In Proc. Of the 8th European Workshop On Modelling Auton. Agents in a M ulti-Agent World, pages 17-35. Springer-Verlag, 1997. [25] M . Ströbel and C. Weinhardt. M ontreal taxonomy for electronic negotiation, The. Group Decision and Negotiation, 12(2):143-164, 3 2003. [26] D. Trastour, C. Bartolini, and C. Preist. Semantic web support for the business-to-business e-commerce pre-contractual lifecycle. Comput. Networks, 42(5):661-673, 2003. [27] M . T. Tu, F. Gri el, M . M erz, and W. Lamersdorf. A plug-in architecture providing dynamic negotiation capabilities for mobile agents. In M obile Agents: Second International Workshop. Proceedings., volume 1477. Springer-Verlag, 9 2003. [28] D. Zeng and K. Sycara. Bayesian learning in negotiation. Int. J. Hum.-Comput. Stud., 48(1):125-141, 1998.