WEB SERVICES COMPOSING BY MULTIAGENT NEGOTIATION

Similar documents
Software Frameworks for Advanced Procurement Auction Markets

Agent-based Architecture for Flexible Lean Cell Design, Analysis and Evaluation

Evaluating Workflow Trust using Hidden Markov Modeling and Provenance Data

CREATION OF INTELLIGENT DISTRIBUTED CONTROL SYSTEM BASED ON MULTI AGENT TECHNOLOGY

Autonomous Agents and Multi-Agent Systems* 2015/2016. Lecture Reaching Agreements

LECTURE 7: Reaching Agreements

Traditional auctions such as the English SOFTWARE FRAMEWORKS FOR ADVANCED PROCUREMENT

Automated Negotiation System in the SCM with Trade-Off Algorithm

WITH the deregulation of electrical power systems, market

Preference Ordering in Agenda Based multi-issue negotiation for Service Level Agreement

Multiagent Systems: Spring 2006

Chapter 2 Social Group Utility Maximization Framework

Miscomputing Ratio: The Social Cost of Selfish Computing

Research on incentive mechanism of supply chain based on RFID technology 1

Optimizing the supply chain configuration with supply disruptions

A Cooperative Approach to Collusion in Auctions

Agent Based Reasoning in Multilevel Flow Modeling

Markets and Values. The Evolution of Intrinsic Motivation. Tim Besley and Maitreesh Ghatak. November 2015

Analysis of Agile and Multi-Agent Based Process Scheduling Model

Rationing Poor Consumers to Reduce Prices

Operation and supply chain management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology Madras

Multi-objective Evolutionary Optimization of Cloud Service Provider Selection Problems

Towards Safe Coordination in Multi-agent Systems

Negotiation Decision Analysis on Pricing of Mobile Application Development with the Trading Platform under the B2B Market

Robust Multi-unit Auction Protocol against False-name Bids

Metaheuristics. Approximate. Metaheuristics used for. Math programming LP, IP, NLP, DP. Heuristics

Research on the Service Modeling Method of Information Management Software based on the Petri Net Model

TRENDS IN MODELLING SUPPLY CHAIN AND LOGISTIC NETWORKS

Software Next Release Planning Approach through Exact Optimization

Balancing Risk and Economics for Chemical Supply Chain Optimization under Uncertainty

Intelligent Business Transaction Agents for Cross-Organizational Workflow Definition and Execution

AMulti-AgentDesignforaHomeAutomation System dedicated to power management

Task allocation via coalition formation among autonomous agents *

ICIMTR International Conference on Innovation, Management and Technology Research, Malaysia, September, 2013

Production Planning under Uncertainty with Multiple Customer Classes

Heuristic Algorithms for Simultaneously Accepting and Scheduling Advertisements on Broadcast Television

ADAPTIVE MULTIAGENT SYSTEMS APPLIED ON TEMPORAL LOGISTICS NETWORKS. P. Knirsch (1) andi.j.timm (1)

Information Integration of Virtual Enterprise Based on Service-Oriented Architecture

A Conceptual Model of a Workflow Management System Based on Web Services

The Core Pareto Optimality and Social Welfare Maximizationty

Modeling of competition in revenue management Petr Fiala 1

College of information technology Department of software

SINGLE MACHINE SEQUENCING. ISE480 Sequencing and Scheduling Fall semestre

AN APPLICATION OF LINEAR PROGRAMMING IN PERFORMANCE EVALUATION

Supply Chain Network Design under Uncertainty

A Semantic Service Oriented Architecture for Enterprise Application Integration

Benefits of Learning in Negotiation

Research on Optimization of Delivery Route of Online Orders

Advanced skills in CPLEX-based network optimization in anylogistix

Lecture 7 - Auctions and Mechanism Design

Service Selection in Web Service Composition: A Comparative Review of Existing Approaches

Economics 101 Spring 2017 Answers to Homework #5 Due Thursday, May 4, 2017

Buyer Heterogeneity and Dynamic Sorting in Markets for Durable Lemons

A Concept-based Model to Facilitate Automated Negotiation in Multi-agent Systems

Scheduling and Coordination of Distributed Design Projects

Good practice in Gender Statistics - Dissemination of Gender Statistics in Georgia

A Business-Driven Web Service Creation Methodology

Increasing Wireless Revenue with Service Differentiation

CHAPTER 2 LITERATURE SURVEY

PARALLEL LINE AND MACHINE JOB SCHEDULING USING GENETIC ALGORITHM

Your use of the JSTOR archive indicates your acceptance of the Terms & Conditions of Use, available at

A Multi-Agent Design for a Home Automation System dedicated to power management

A Bayesian Approach to Operational Decisions in Transportation Businesses

TRANSPORTATION PROBLEM AND VARIANTS

Network Flows. 7. Multicommodity Flows Problems. Fall 2010 Instructor: Dr. Masoud Yaghini

Introduction to Artificial Intelligence. Prof. Inkyu Moon Dept. of Robotics Engineering, DGIST

The Job Assignment Problem: A Study in Parallel and Distributed Machine Learning

Autonomous Units for Communication-based Dynamic Scheduling

A Multi-Agent Design for a Home Automation System dedicated to power management

A Reputation-Oriented Reinforcement Learning Strategy for Agents in Electronic Marketplaces

A Simulation-based Multi-level Redundancy Allocation for a Multi-level System

Service Oriented Architecture

OPT: An Approach to Organizational and Process Improvement

A Fuzzy Multiple Attribute Decision Making Model for Benefit-Cost Analysis with Qualitative and Quantitative Attributes

Introduction to Systems Analysis and Design

Developing Rule-Enhanced Dynamic Virtual Enterprise Integration Frameworks

Clock-Driven Scheduling

Constraint-based Preferential Optimization

An optimization framework for modeling and simulation of dynamic systems based on AIS

Customer Learning and Revenue Maximizing Trial Provision

Pellucid Agent Architecture for Administration Based Processes

An Evolutionary Solution to a Multi-objective Scheduling Problem

Flexible Provisioning of Service Workflows

Formal Identification of Right-Grained Services for Service-Oriented Modeling

Safety of the Reinforcement Learning Based Functions, Challenges, Approaches

Self-sustainable Agent Organizations in Massively Multi-Player On-Line Role-Playing Games A Conceptual Framework

Carbon Footprint Optimization - Game Theoretic Problems and Solutions

An Autonomic Service Oriented Architecture in Computational Engineering Framework

Price Tests for Entry into Markets in the Presence of Non-Convexities

GENETIC ALGORITHMS. Narra Priyanka. K.Naga Sowjanya. Vasavi College of Engineering. Ibrahimbahg,Hyderabad.

Computational Complexity and Agent-based Software Engineering

Reaction Paper Influence Maximization in Social Networks: A Competitive Perspective

Factory Operations Research Center (FORCe II)

COLLABORATIVE WORKSPACE OVER SERVICE-ORIENTED GRID

A Computational Model For Online Agent Negotiation

Efficient Task Scheduling Over Cloud Computing with An Improved Firefly Algorithm

A Genetic Algorithm for Order Picking in Automated Storage and Retrieval Systems with Multiple Stock Locations

Multiple Products Partner Selection Model of Virtual Enterprise based on Multi-agent Systems

Operations and Supply Chain Management Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Computing Locational Contingency Reserves

Transcription:

Jrl Syst Sci & Complexity (2008) 21: 597 608 WEB SERVICES COMPOSING BY MULTIAGENT NEGOTIATION Jian TANG Liwei ZHENG Zhi JIN Received: 25 January 2008 / Revised: 10 September 2008 c 2008 Springer Science + Business Media, LLC Abstract Composing web services is gained daily attention in Service Oriented Computing. It includes the dynamic discovery, interaction and coordination of agent-based semantic web services. The authors first follow Function Ontology and Automated Mechanism Design for service agents aggregating. Then the problem is formulated but it is ineffective to solve it from the traditional global view. Because the complexity is NP-complete and it is difficult or even impossible to get some personal information. This paper provides a multi-agent negotiation idea in which each participant negotiates under the condition of its reservation payoff being satisfied. Numerical experiment is given and well evaluates the negotiation. Key words 1 Introduction Feasible coalition, multi-agent systems, negotiation, web services composing. With the increasing of web services in internet, automated discovery, interaction, and composition of Web Services for satisfying new requirements has gained daily expanding attentions and interests [1]. At present, there are mainly two computing mechanisms for the computing paradigm. The first one is service-oriented architecture which has been paid lots of attentions for distributed computing and communication on loose coupling and heterogeneous platforms [2]. However, there might be another mechanism by considering Web Services as active entities (service agent) distributed in internet which can autonomously recognize the newly emergent requirements and compete or cooperate with others for realizing (part of) the requirements [3]. We follow the latter and such computing mechanism is demonstrated by the following scenario. Service requesters publish service requests in internet. The service agents need to be able to recognize the requests and decide which request may bring them payoff. A Function Ontology (FO) is given to help service requester to publish its service request, and also help service agents to decompose service request into (sub) functions and then recognize the service Jian TANG Liwei ZHENG Institute of Mathematics, Academy of Mathematics and Systems Science, Chinese Academy of Sciences, Beijing, 100190, China; Graduate School of the Chinese Academy of Sciences, Beijing, 100049, China. Email: jtang@amss.ac.cn; wizlw@amss.ac.cn. Zhi Jin Institute of Mathematics, Academy of Mathematics and Systems Science, Chinese Academy of Sciences, Beijing, 100190, China; Institute of Computing Technology, Beijing, 100190, China. Email: zhijin@amss.ac.cn. This research is supported by the National Natural Science Fund for Distinguished Young Scholars of China under Grant No. 60625204, the Key Project of National Natural Science Foundation of China under Grant No. 60736015, and the National 863 Hight-Tech Project of China under Grant No. 2006AA01Z155, the Knowledge Innovation Program of the Chinese Academy of Sciences.

598 JIAN TANG LIWEI ZHENG ZHI JIN request. Service agents who can provide (sub-) service request gather together to realize (part of) service request (agent aggregation). After that, Automated Mechanism Design (AMD) [4 5] is used to generate the protocols to make these service agents choose one way to decompose the service request without manipulation or getting involved in irrationally. Then the problem of assigning (sub) functions to different service agents needs to be resolved and is concentrated on in this paper. First, which service agents, i.e., a service agent group, are to satisfy the service request should to be decided. Service requester prefers those service agents who provide better service. So each service agent would join the service agent group that is better than others. But not all the service agents can join a service agent group without limitation: new service agent will shrink every service agents benefit in the group for the new one will share a part of total benefit; on the other hand, a service agent group needs the service agent to join lack of whom the group cannot fulfill some functions so that the service request cannot be satisfied. In this paper, we strictly define such a group and call it feasible coalition. Such feasible coalition is to satisfy the request. Service agents in feasible coalition will fulfill all the functions of the service request. We are to decide how to assign these functions to proper service agents. The idea is maximizing service requester and service agents total benefit on the condition of their reservation payoff being satisfied [7]. We design a bipartite graph to record the information of service agents and functions, and then formulate the problem as a 0-1 integer programming problem. This is an NP-complete problem. Solve the problem straightforward from the global view is not effective. From the point of view of multi-agent systems, this paper provides a way by multi-agent negotiation. Detailed description of it will be given in this paper. We simulate the negotiation in 4 groups with different service agents and service requester. The result shows that the successful rate of negotiation is high; the negotiation result is close to the optimal; additionally, negotiation process is easy to be convergent; service requester could expect high satisfaction degree (higher than 0.8) and mostly, service agents could get higher total satisfaction degree than the expect average value. This paper is organized as follows. Section 2 gives a brief introduction of service agents aggregation and feasible coalition. Section 3 formulates the model on the problem of assigning functions of service request to proper service agents and then proves it to be NP-complete. Then the multi-agent negotiation is provided in section 4. Section 5 simulates the negotiation and analyzes the result. Section 6 gives related work and concludes the paper. 2 Preliminaries 2.1 Service Agents Aggregation Based on Function Ontology and AMD Request is published on the Internet and then service agents match themselves to participate those requests that they are capable of fulfilling. Generally speaking, the request is published through standard form and there are some work for describing it, such as WSDL [7], OWL-S [8], Environment-Ontology [9], and so on. In this paper, we follow the way of Function-Ontology to describe request and let service agents understand request [10]. Request is decomposed into and described as a tree called Requirement Decomposition Tree like figure. In the tree, request could be decomposed into subfunctions F1 1, F2 1,, Fn 1 1. They are AND children of the request which means that to satisfy the request, we should fulfill all these subfunctions. Then each subfunctions could be further decomposed. There may be several ways to fulfill each subfunction. We denote them F DM1 1, F DM2 1,, F DMm 1 1 (Function Decomposition Mode).

WEB SERVICES COMPOSING BY MULTIAGENT NEGOTIATION 599 Req F... F... i k... FDM FDM FDM FDM m n F F... F F F... F F F... F F F... i j j+1 k p p+1 q r r+1 Fn 2 Figure 1 Requirement Decomposition Tree They are OR children of each subfunctions which means that to fulfill a subfunction, we could choose only one FDM child of it to continue. So finally, when request is published, actually it is Requirement Decomposition Tree that is published. If a service agent can accomplish a function, the node of this function in the tree is said to be matched by service agent. So when service agents are matching functions, they are matching the nodes of the tree. By matching themselves under the nodes of tree, service agents aggregate to satisfy the request. To fulfill the goal of service agents aggregation, we use AMD [4 5] which ensures the service agents to participate in the aggregation and avoids the manipulation of service agents. AMD is an approach, where the mechanism is computationally created for the specific problem instance at hand. In AMD, we need: a finite set of outcomes O; a finite set of N agents; for each agent i, a finite set of types Θ i, a probability distribution γ i over Θ i (in the case of correlated types, there is a single joint distribution γ over Θ 1 Θ 2 Θ N ), a utility function u i : Θ i O R; an objective function whose expectation the designer wishes to maximize. In this paper, AMD will finally give an outcome selection function o : Θ 1 Θ 2 Θ N O. Here, let N agents be N service agents. In order to apply AMD in our work to fulfill the goal of service agents aggregation, we should define the outcome set and each service agents type set. In this paper, they are defined below. Definition 1 (Type Set) The type set of a service agent is defined as a vector set whose elements are all the permutations of nodes that, written in the form of vector, the service agent could match on the Requirement Decomposition Tree. Definition 2 (Outcome Set) The outcome set of a Top-Level function (F 1 1,F 1 2,, F 1 n 1 ) is defined as a vector set whose elements are vector (F DM 1 i 1, F DM 2 i 2,, F DM s i s ), s N satisfying the following two conditions: 1) Each member of the vector is FDM node of Requirement Decomposition Tree, and the order is from the top to bottom of the tree.

600 JIAN TANG LIWEI ZHENG ZHI JIN Req F 1 F 2 FDM 1 FDM 2 FDM 3 FDM 4 F 3 F 4 F 5 F 6 F 7 F 8 F 9 FDM 5 FDM 6 F 10 F 11 F 12 Figure 2 Requirement Decomposition Tree of Req 2) Every vector denotes one unique path to accomplish a top-level function With above definitions, Automated Mechanism Design is applied so that the service agent would participate the aggregation without manipulation. We give an example to illustrate the above definitions. For convenience, we simplify the index of function F and FDM by using just subscript. It will be the same in the rest of this paper. Suppose the Requirement Decomposition Tree of a request Req is given like Figure 2. It means that the request Req could be decomposed into two functions: F 1 and F 2 ; F 1 could be done by two modes (F DM 1, F DM 2 ), which means either mode is a way to satisfy F 1 ; the mode F DM 1 is decomposed into two functions: F 3 and F 4, and so do the rest nodes. Suppose that there are two service agents: A 1 and A 2. A 1 could match the nodes F 4, F 5, F 10, F 12, and A 2 could match the nodes F 6, F 10, F 11. According to Definition 1, the type set of A 1 is {(F 4, F 5, F 10, F 12 ), (F 4, F 5, F 12, F 10 ), }, and the type set of A 2 is {(F 6, F 10, F 11 ), (F 6, F 11, F 10 ), }; according to Definition 2, the outcome set of F 1 is {(F DM 1, F DM 5 ), (F DM 1, F DM 6 ), (F DM 2 )}. Suppose that AMD selects the outcome (F DM 1, F DM 5 ) from the outcome set, which means that we accomplish function F 1 by completing the nodes F 4, F 10, and F 11. In this case, F 4 could be done by A 1 ; F 10 could be done by both A 1 and A 2 ; F 11 could be done by A 2. The rest work we need to do is to decide which service agent (A 1 or A 2 ) to accomplish F 10. 2.2 Feasible Coalition In the last section, we have an outcome that denotes a way of satisfying request. Then we are to assign each functions we should fulfill in the outcome to the capable service agents. Service requester prefers those service agents who provide better service. So each service agents would join the service agent group that is better than others. But not all the service agents can join a service agent group without limitation: new service agent will shrink every service agents benefit in the group for the new one will share part of total benefit; on the other hand, a service agent group needs the service agent to join lack of whom the group cannot fulfill some functions so that the service request cannot be satisfied, that is to say, some agents may be surplus. For example, a service request can be satisfied by three agents, so the fourth and the more agents are surplus. An agent group without surplus is called a coalition. Service requester prefers the coalition that satisfies the service request best. Such a coalition is called feasible coalition. To strictly define the feasible coalition, the quality of service should be defined first.

WEB SERVICES COMPOSING BY MULTIAGENT NEGOTIATION 601 Maximilien [11] gave a QoS Ontology for Web Services, which includes most of the familiar quality evaluation items, such as responding time, throughput, latency, Load Balancing, etc. This Ontology can also be used to evaluate service agent. By referring the QoS Ontology, the service requester can evaluate the candidate service agent in each quality item. In this sense, we give a quality evaluation function for the service that A fulfills the function F. Assume the evaluation is carrying on in n quality items, and a unique evaluation interval [0, M], M R is used, the function is n Q(A, F ) = ω i σ i, in which, σ i [0, M] is the evaluation value for the ith quality item, ω i, n ω i = 1 is the weight of preference for the ith quality item of the service requester. To evaluate the coalition, service requester computes the weighted sum of qualities that every function of the service request is assigned to the service agent, who, in the coalition, has the best quality of doing it. Having no information on how service agents collaborate to satisfy request, service requester will choose the coalition that has the largest such a value. On the other hand, service agents wants to form a coalition that is better than other coalitions and will be chosen by service requester. Strictly, the definition of the feasible coalition is given below. Definition 3 (Feasible Coalition) Suppose service request is decomposed into m functions F = {F 1, F 2,, F m } and F i s weight is p i, m p i = 1, service agent A i can fulfill the function F j, and the quality of the fulfillment is Q(A i, F j ); let W i = {F j A i can fulfill F j }; C = {A 1, A 2,, A n } is a feasible coalition, iff: 1) n W i = F ; ( n 2) j, W i )\W j F ; 3) m p j max Q(A i, F j ) has the largest value of all coalitions. j=1 i The first constraint means that coalition is required to have the ability to satisfy the service request; the second constraint means that no service agents are surplus, because any surplus agents will shrink others agents benefits; the third constraint means that the coalition can fulfill the service request best. Under these three constraints, surplus service agents are eliminated and the rest ones are capable of satisfying the request. Feasible coalition is chosen by service requester to satisfy its request. 3 Basic Model and Formulation When feasible coalition is formed, service requester and service agents are to decide how to get the service request satisfied. Service requester wants each function to be assigned to the service agent who has the best quality value of doing it; but this assignment cannot be always satisfying all the service agents who has the right to quit so that the service request will be unsatisfied. To satisfy the service request again, extra time and cost is taken. So service requester could not always get the best assignment, and also service agents could not be always fulfilling all the functions they are competent for, which makes them earn maximal payment. However, we could take the assumption that service requester and service agents would accept the assignment that satisfies their reservation payoff [6]. Reservation payoff is the minimal payoff that one accepts; any payoff under the reservation will be refused. Service requester and service agents reservation payoff are all satisfied if and only if there is no one to refuse the

602 JIAN TANG LIWEI ZHENG ZHI JIN assignment and quit. On the condition of reservation payoff being satisfied, service requester and service agents prefer higher payoff. We measure the assignment from the point of view of maximizing social welfare, i.e., sum up the satisfaction degree of service requester and service agents, assignment which has the larger value is preferred. In a feasible coalition C, suppose there are n agents A 1, A 2,, A n, and m functions F 1, F 2,, F m. For each F i, p i is F i s weight and m p i = 1. Agent A i has ability to fulfill F j, and the quality is Q(A i, F j ) [0, M]. Suppose W i F = {F 1, F 2,, F m } is the set of functions which A i has the ability to fulfill; T i W i is the set of functions fulfilled by A i in a solution S which is an n-dimensional vector (T 1, T 2,, T n ) requiring {T 1, T 2,, T n } to be a set-partitioning of F. Given the reservation quality requirement of the service requester Q (reservation payoff) and the reservation payment requirement P i (reservation payoff) of each agents A i, we want to find a solution S which satisfies: 1) Q(S ) n Q(C) + P i (S ( ) Q(S) n P i (C) = max S Q(C) + P i (S) P i (C) 2) Q(S ) Q, P i (S ) P i, i = 1, 2,, n; in which, Q(S) = P i (S) = n ) ; j T i p j Q(A i, F j ) [0, M] is the quality of solution S; j T i p j Q(A i,f j ) Q(S) P (S) is the payment of agent A i in solution S; P (S) = f(q(s)) is the payment function that service requester is willing to pay in solution S; Q(C) = m j=1 p j max Q(A i, F j ) is the value that each function be assigned to the service i agent who has the best quality value of doing it; P i (C) = Q(S) the functions in W i. j W i p j Q(A i,f j ) P (S) is service agent A i s maximal payment that it is assigned all Definition 4 (satisfaction degree of Service Requester) Given feasible coalition C and solution S, the satisfaction degree of service requester is defined as SDR(C, S) = Q(S) Q(C). Definition 5 (satisfaction degree of service agents) Given feasible coalition C and solution S, the satisfaction degree of service agents A i is defined as SDA i (C, S) = P i(s) P i (C). So, with the definitions above, the two constraints mean that we want to find the solution which maximizes service requester and service agents total satisfaction degree under the condition of every reservation payoff being satisfied. The problem given above is an NP-complete problem.

WEB SERVICES COMPOSING BY MULTIAGENT NEGOTIATION 603 Consider a special case of the problem. Let n = 2, W 1 = {F 1, F 3, F 4,, F m }, W 2 = {F 2, F 3, F 4,, F m }, Q(A 1, F j ) = Q(A 2, F j ), j = 3, 4,, m. Then S, Q(S) = p 1 Q(A 1, F 1 )+ p 2 Q(A 2, F 2 ) + m j=3 p jq(f j ) is a constant value. Let P 1 = (p 1 Q(A 1, F 1 ) + 1 2 P 2 = (p 2 Q(A 2, F 2 ) + 1 2 m j=3 m j=3 p j Q(F j )) f(q(s)), Q(S) p j Q(F j )) f(q(s)). Q(S) We are to find a solution S, such that P i (S ) P i, i = 1, 2. Notice that P 1 (S ) + P 2 (S ) = P 1 +P 2 = f(q(s)), the problem equals the partition problem on set {p j Q(F j )}, j = 3, 4,, m. This is known as an NP-complete problem. Actually, we can formulate the problem as 0-1 integer programming in graph. Consider a bipartite graph G = (V 1 +V 2, E), V 1 = {A 1, A 2,, A n }, V 2 = {F 1, F 2,, F m }, E = {A i F j F j W i }, each A i F j has a weight value c ij = Q(A i, F j ). Let x ij be either 0 or 1, the problem can be expressed in canonical form: n ( ) 1 1 max + x ij p j c ij p j max c ij p j c ij j i j W j W i i s.t. 1 = p j max j i n c ij n j W i x ij p j c ij + n j W i x ij p j c ij j W i p j c ij x ij p j c ij Q, j W i x ij p j c ij ( j W i n ) n f x ij p j c ij P i, i = 1.2,, n, x ij p j c ij j W i j W i n j, x ij = 1, where x ij = 0 or 1, i = 1, 2,, n, j W i. 4 Multi-Agent Negotiation We formulated the problem and proved that it was at least an NP-complete problem. Moreover, values like Q, P i is the private information of service requester or service agents. Sometimes, even they themselves could not tell the concrete value. All these difficulties prevent us from finding a solution from a global view by solving the 0-1 integer programming problem. From the point of view of MAS, we provide a negotiation framework, in which the private information of service requester and service agents is not needed but let the service requester and service agents make decision wether they stay or quit by themselves. Figure 3 shows the process of negotiation. When feasible coalition is formed, service requester and service agents start negotiating as the following steps:

604 JIAN TANG LIWEI ZHENG ZHI JIN Start Choose Modified solutions Service Requester s... Service Agents Can propose... Can modify Can not modify Refuse Evaluate Accept Can not propose End Solution Service Requeater /Start node Service Agents End node Decision node Figure 3 Process of Negotiation 1) Service requester proposes a solution S 0 he prefers the most. Let S 0 be the proposition solution S. 2) Each A i, i = 1, 2,, n, evaluates S and make decision to accept or refuse S according to their preference. If all the service agents accept S, the negotiation terminates; if not, the service agent who refuses S should modify the solution and propose the modified one. The negotiation terminates if there exists an agent who refuses S but fails to propose a modified solution; else go to step 3. 3) Service requester chooses one solution to be proposed as the proposition solution S in all the modified solutions proposed by service agents in step 2. If service requester fails to choose a solution out, the negotiation terminates; else go to step 2. First, service requester can propose the solution S 0 simply by assigning each function F i to the agent that fulfills F i best, i.e., the agent that has the max Q(A, F i ). Moreover, there should be Q(S 0 ) Q. In the second step, A i modifies the solution S according to his preference only. For example, in solution S, A 1 is assigned to fulfill F 1, but A 1 prefers to fulfill F 1 and F 2 ; in this case, A 1 will modify solution S to that A 1 fulfills F 1, F 2, and remain the other parts of S unchanged, i.e., A 1 does not care other agents but modifies the solution only according to his preference. Agent A i accepts the solution S when P i (S) P i. The proposed modified solution by an agent should be an accepted one of it, otherwise it fails to propose a modified solution. Additionally, every agents never propose the solution which was chosen by service requester before. The reason is that if service requester does not choose this solution, it is meaningless for agents to propose this one, and if service requester chooses this solution, the negotiation will circulate. Agent A i accepts the solution S when P i (S) P i. The proposed modified solution by an agent should be an accepted one of it, otherwise it fails to propose a modified solution. Third, service requester choose among all the modified solutions. If the best solution S does not meet Q(S) Q, the negotiation cannot be dealt. The negotiation is deterministic and convergent. At the beginning of negotiation, the proposition S 0 of service request is deterministic because all the service agents qualities of fulfilling functions are given and deterministic. Then modifications of proposed solution by service agents are deterministic. Also, the choosing modified solution of service agents by service requester is deterministic. To show the negotiation is convergent, we want to prove that the negotiation would not be trapped into circulation. This is soundness because all service agents never propose the solution which was chosen by service requester before.

WEB SERVICES COMPOSING BY MULTIAGENT NEGOTIATION 605 Total times Total times Ratio Negotiation rounds Figure 4 Ratio of Negotiation to Optimal Result Figure 5 Rounds of Negotiation 5 Numerical Experiment and Result Analysis We simulate the negotiation process to test the negotiation. In the numerical experiment, there are 4 groups: 10 service agents and 20 functions; 3 service agents and 21 functions; 4 service agents and 20 functions; 5 service agents and 20 functions. Each group is simulated for 100 times and each time we randomly generate the information of service agents and service requester, i.e., the quality of service of service agents, reservation payoff of service agents, and reservation quality requirement of service request. Five statistic data are concerned: the successful rate of negotiation, the result of negotiation comparing with optimal result in theory, the negotiation rounds when the negotiation process is terminated, the satisfaction degree of service requester, and the satisfaction degree of service agents. Take the group with 10 service agents and 20 functions for example, the statistic data are explained as follows. First, within 100 simulations, they all have solutions with optimal total satisfaction degree. By negotiating, 4 of them fail, that is to say, there are 4 times that service requester and service agents could not get consensus, but there is a solution which could satisfy every one. So the successful rate of the negotiation is (100 4)/100 = 96%. Second, the result of negotiation comparing with optimal result in theory is concerned. Denote the total satisfaction degree of negotiation σ and optimal total satisfaction degree σ. We draw Figure 4 to show the statistic data about τ = σ /σ. Except that 4 times negotiation fails, τ is no less than 0.8. Further, most of them (65 in 96) are more than 0.9. Third, we want to know when the negotiation terminates, i.e., how many rounds does the negotiation take? Every time service requester chooses one solution and proposes it (first time service requester proposes one) in the modified solutions proposed by service agents, we say that the negotiation passes one round. In our numerical experiment, we tolerate the negotiation round no more than 100 or we stop it without waiting for its termination. The numerical experiment data of negotiation round is given in Figure 5, in which, there are 3 times that negotiation rounds are more than 10, but the others are less than 10. So, no matter the negotiation is successful or not, the negotiation is easy to be convergent. Next is the satisfaction degree of service requester. Figure 6 shows the numerical experiment data of satisfaction degree of service requester. There are 96 successful negotiations. All of them have the service requester satisfaction degree higher than 0.8. Further, most of these negotiations (95 in 96) have the value higher than 0.9. According to the data given in Figure 6, if the negotiation is successful, the service requester could get high satisfaction degree. How about the service agents satisfaction degree? In our numerical experiment setting,

606 JIAN TANG LIWEI ZHENG ZHI JIN Total times Figure 6 Satisfied Degree of Service Requester Satisfaction Degree of Service Requester Total times Figure 7 Satisfied Degree of Service Requester satisfaction degree of service agents each agent can do averagely 6 functions. On the other hand, there are 10 service agents and 20 functions; so the average number of functions that each agent could be assigned is that 20/10 = 2. Then the average expect satisfaction degree could be calculated by 2/6 = 0.33. So the total satisfaction degree of 10 service agents is 0.33 10 = 3.3. We record the total satisfaction degree of 10 service agents and show them in Figure 7. Within 96 negotiation that are successful, 20 of them have the total satisfaction degree of service agents lower than 3.3, and there are 76 negotiations that have the total satisfaction degree of service agents higher than 3.3. According to the analysis given in the above paragraph, such a result indicates that in the negotiation, service agents could frequently get higher total satisfaction degree than the expect average value. Analysis of other three group is similar with the group with 10 service agents and 20 service requester. For comparison, the concrete statistic data is given in Table 1, from which, we see that in all the group, the successful rate is more than 90%. All the properties discussed in the 10&20 group remain. According to the above statistic data, we can conclude that the successful rate of negotiation is high; negotiation result is close to the optimal; additionally, negotiation process is easy to be convergent; service requester could expect high satisfaction degree (higher than 0.8) and mostly, service agents could get higher total satisfaction degree than the expect average value. 6 Related Work and Conclusion Composing web services is one of hot issues in Service Oriented Computing. It includes the dynamic discovery, interaction and coordination of agent-based semantic Web Services. For example, DAML-S provides the information that allow web service to connect and interact autonomously with little intervention from the programmers [12]. A web service architecture has also been proposed that takes advantage of DAML-S information to support automatic discovery and interaction between web service [3]. In this paper, we follow the Function Ontology idea and AMD so that service agents can autonomously decompose, recognize, and discover the service request, and then aggregate. Next, dynamic web services selection is emphasized and gained more and more attention. The idea is connecting web services research and multi-agent systems. Maximilien and Singh [11,13] proposed a multi-agent approach that naturally provided a solution to the selection problem. This approach is based on an architecture and programming model in which agents represent applications and services. Unlike our multi-agent negotiation, the selection is based

WEB SERVICES COMPOSING BY MULTIAGENT NEGOTIATION 607 Table 1 Statistic Data of Negotiation Agent& Successful Result Negotiation Requester Agents Function Rate Ratio round Satisfaction Satisfaction 0 4 0 0 0 4 0 4 0.0 0.1 0 0 10 97 0.0 0.1 0 0.0 1.0 0 0.1 0.2 0 11 20 3 0.1 0.2 0 1.0 2.0 0 0.2 0.3 0 21 30 0 0.2 0.3 0 2.0 3.0 0 0.3 0.4 0 31 40 0 0.3 0.4 0 3.0 4.0 78 10&20 96% 0.4 0.5 0 41 50 0 0.4 0.5 0 4.0 5.0 17 0.5 0.6 0 51 60 0 0.5 0.6 0 5.0 6.0 1 0.6 0.7 0 61 70 0 0.6 0.7 0 6.0 7.0 0 0.7 0.8 0 71 80 0 0.7 0.8 0 7.0 8.0 0 0.8 0.9 31 81 90 0 0.8 0.9 1 8.0 9.0 0 0.9 1.0 65 91 100 0 0.9 1.0 95 9.0 10.0 0 0 9 0 0 0 9 0 9 0.0 0.1 0 0 10 89 0.0 0.1 0 0.0 1.0 0 0.1 0.2 0 11 20 4 0.1 0.2 0 1.0 2.0 0 0.2 0.3 0 21 30 2 0.2 0.3 0 2.0 3.0 61 0.3 0.4 0 31 40 0 0.3 0.4 0 3.0 4.0 30 7&21 91% 0.4 0.5 0 41 50 0 0.4 0.5 0 4.0 5.0 0 0.5 0.6 0 51 60 2 0.5 0.6 0 5.0 6.0 0 0.6 0.7 0 61 70 1 0.6 0.7 0 6.0 7.0 0 0.7 0.8 1 71 80 1 0.7 0.8 0 7.0 8.0 0 0.8 0.9 4 81 90 0 0.8 0.9 3 8.0 9.0 0 0.9 1.0 86 91 100 1 0.9 1.0 88 9.0 10.0 0 0 8 0 0 0 8 0 8 0.0 0.1 0 0 10 87 0.0 0.1 0 0.0 1.0 0 0.1 0.2 0 11 20 2 0.1 0.2 0 1.0 2.0 0 0.2 0.3 0 21 30 2 0.2 0.3 0 2.0 3.0 90 0.3 0.4 0 31 40 2 0.3 0.4 0 3.0 4.0 2 5&20 92% 0.4 0.5 0 41 50 1 0.4 0.5 0 4.0 5.0 0 0.5 0.6 0 51 60 0 0.5 0.6 0 5.0 6.0 0 0.6 0.7 0 61 70 2 0.6 0.7 0 6.0 7.0 0 0.7 0.8 0 71 80 0 0.7 0.8 0 7.0 8.0 0 0.8 0.9 1 81 90 1 0.8 0.9 2 8.0 9.0 0 0.9 1.0 91 91 100 3 0.9 1.0 90 9.0 10.0 0 0 6 0 0 0 6 0 6 0.0 0.1 0 0 10 92 0.0 0.1 0 0.0 1.0 0 0.1 0.2 0 11 20 2 0.1 0.2 0 1.0 2.0 0 0.2 0.3 0 21 30 3 0.2 0.3 0 2.0 3.0 93 0.3 0.4 0 31 40 0 0.3 0.4 0 3.0 4.0 1 4&20 94% 0.4 0.5 0 41 50 1 0.4 0.5 0 4.0 5.0 0 0.5 0.6 0 51 60 1 0.5 0.6 0 5.0 6.0 0 0.6 0.7 0 61 70 0 0.6 0.7 0 6.0 7.0 0 0.7 0.8 0 71 80 0 0.7 0.8 0 7.0 8.0 0 0.8 0.9 2 81 90 0 0.8 0.9 2 8.0 9.0 0 0.9 1.0 92 91 100 1 0.9 1.0 92 9.0 10.0 0

608 JIAN TANG LIWEI ZHENG ZHI JIN on the trust (Qos) value including reputation etc., and the agents are waiting for being chosen. Shehory and Kraus [14] proposes algorithm for task allocation, but all agents who are assigned tasks are maximize one outcome, not the benefit of themselves. Differently, our negotiation framework gets the service requester and all the service agents involved in and each of them is maximizing its benefit. In negotiation, reservation payoff is the key. Reservation payoff being satisfied, no one quits. Finally, the numerical experiment well evaluates the negotiation and shows that the successful rate of negotiation is high; negotiation result is close to the optimal; additionally, negotiation process is easy to be convergent; service requester could expect high satisfaction degree (higher than 0.8) and mostly, service agents could get higher total satisfaction degree than the expect average value. References [1] K. Sycara, M. Paolucci, A. Ankolekar, and N. Srinivasan, Automated discovery, interaction and composition of semantic web services, 2003, Journal of Web Semantics, 1(1): 27 46. [2] T. Aphrodite, An overview of standards and related technology in web services, Distributed and Parallel Databases, 2002, 12(2 3): 135 162. [3] M. Paolucci, K. Sycara, and T. Kawamura, Delivering semantic web services, Technical Report CMU-RI-TR-02-32, Robotics Institute, Carnegie Mellon University, May, 2003. [4] V. Conitzer and T. Sandholm, Complexity of mechanism design, in Proceedings of the 18th Conference on Uncertainty in Artificial Intelligence (UAI), 2002. [5] T. Sandholm, Automated mechanism design: A new application area for search algorithms, in Proceedings of the International Conference on Principles and Practice of Constraint Programming (CP), 2003. [6] H. Simon, Yiandaijuecelilundejishi (Foundations of modern decision-making theory: Principles of bounded rationality), Beijing Economics Institute, Beijing, China, 1989. [7] E. Christensen, F. Curbera, G. Meredith, and S. Weerawarana, Web services description language (WSDL) 1.1, 2001. URL: http://www.w3.org/tr/wsdl. [8] D. Martin, M. Burstein, J. Hobbs, et al., OWL-S: Semantic markup for web services, Member Submission 22, W3C, November, 2004. URL: http://www.daml.org/services/owl-2/1.0/. [9] L. S. Hou, Z. Jin, and D. B. Wu, Modeling and verifying web services driven by requirements: An ontology based approach, Science in China (F), 2006, 49(6): 792 820. [10] L. W. Zheng and Z. Jin, Requirement driven agent collaboration based on functional ontology and AMD, in 11th IEEE International Workshop on Future Trends of Distributed Computing Systems, IEEE Computer Society, 189 198. [11] E. Maximilien and M. Singh, A framework and ontology for dynamic web services selection, IEEE Internet Computing, 2004, 8(5): 84 93. [12] A. Ankolekar, M. Burstein, J. R. Hobbs, et al., Web service description for the semantic web, in Proceedings of the 1st International Semantic Web Conference (ISWC), 2002. [13] E. M. Maximilien and M. P. Singh, Toward autonomic web services trust and selection, in Proceedings of the 2nd international conference on Service oriented computing, 2004, 212 221. [14] O. Shehory and S. Kraus, Mehtods for task allocation via agent coalition formation, Artificial Intelligence, 2005, 101(1 2): 165 200.