Presentation on theme: "Multiagent systems and E-Commerce 제조통합자동화 연구실 세미나 발표자 : 정성원 발표일자 : 2001.3.23."— Presentation transcript:
Multiagent systems and E-Commerce 제조통합자동화 연구실 세미나 발표자 : 정성원 발표일자 :
Reference Papers Software Agents Michael R. Genesereth COMMUNICATIONS OF THE ACM VOL 37, NO 7, 1994 Cooperative Multiagent Systems: A Personal View of the state of the Art Victor R. Lesser IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING VOL 11, NO 1, 1999
Contents Software Agent Cooperative Multiagent Systems A Brokering Protocol for Agent-Based E-Commerce Discussion
Agent What is Agent? It perceives the world in which it is situated. It has the capability of interacting with other agents. It is pro-active in the sense that it may take the initiative and persistently pursues its own goals.
Software Agent What is software agent? A software agent is a program that performs a specific task on behalf of a user, independently or with little guidance A software agent exchanges the data and logical information, individual commands and scripts by its common language Questions What is an appropriate agent communication language? How do we build agents capable of communicating in this language? What communication architectures are conductive to cooperation?
Agent Communication Language A universal communication language Procedural approach Based on the idea that communication can be best modeled as the exchange of procedural directives Scripting language – TCL Declarative approach Based on the idea that communication can be best modeled as the exchange of declarative statements ACL The vocabulary ACL Inner language called KIF(Knowledge Interchange Format) Outer language called KQML(Knowledge Query and Manipulation Language)
KIF (Knowledge Interchange Format) What is KIF? KIF, a particular logic language, has been proposed as a standard to use to describe things within computer systems, e.g expert systems, databases, agents, etc. A prefix version of first order predicate calculus, with various extensions to enhance its expressiveness Examples (>(*(width chip1)(length chip1)) (*(width chip1)(length chip1))) (=>(and (real-number ?x) (even-number?n)) (> (expt?x?n) 0))
KQML (Knowledge Query and Manipulation Language) What is KQML KQML is a Lisp-based language that was developed as part of the ARPA Knowledge Sharing Effort. KQML is based on speech act theory, and message types are indicated by performative. Example (ask-one : content (PRICE IBM ? Price) : receiver stock-server : language LPROLOG : ontologyLYSE-TICKS) Performative : Message type
Predefined performatives of KQML Basic informatives (constatives) Tell(share a piece of knowledge) Deny(retract or negate a speech act) Untell(retract a statement ; equals deny tell) Query performatives Evaluate (evaluate an expression ; details depend on language) Reply(I am sending you data to answer your query) Ask-if(Yes-no question) Ask-one(send me one response that matches my query) Ask-all(send me all responses that match my query) Predefined performatives of KQML 1993
KQML performative parameters : sendersymbol identifying the sender : receiversymbol identifying the recipient : reply-withidentifier that must appear in the reply : contentthe content of the message : languagelanguage in which content is expressed : ontologyontology used by content Some performatives take additional parameters There are defaults for parameters that are omitted Basic set of KQML performative parameters 1993
Multiagent system What is Multiagent System? A collection of, possibly heterogeneous, computational entities, having their own problem solving capabilities and which are able to interact in order to reach an overall goal. MAS is seen as a system revealing a kind of synergy that would not be expected from the sum of its component agent.
Application of Multiagent Systems Applications Domain (Examples) Distributed situation assessment Distributed resource scheduling and planning Distributed expert systems Advantages Speed-up due to concurrent processing Less communication bandwidth requirements because processing is located nearer the source of information More reliability because of the lack of a single point of failure Easier system development due to modularity coming from the decomposition into semiautonomous agents
The Nature of Multiagent Interaction The need to interact when agents solve the subproblems The subproblems are the same or overlapping The information one agent has is needed to solve subproblems The interactions among agents in a multiagent system Impossible solve subproblem p i without solving p j Solving p j may simply make it easier to solve p i Knowing the solution to p j may obviate the need to solve p i
Key Principles Used In Building Multiagent Systems The need to view the performance of a multiagent system in terms of an interdependent set of criteria There is no single approach to organizing agent behavior that will be right for all situations The need for flexibility in agent problem solving Sophisticated domain problem-solving architecture Increasing the scope of activities The need to exploit the efficiencies of organized behavior in coordinating large agent societies Organizing the agents in terms of roles and responsibilities can significantly decrease the computational burden on coordination decisions
A Brokering Protocol for Agent-Based E-Commerce Kwang Mong, Sim and Raymond Chan IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS VOL 30, NO 4, 2000
Introduction(1/2) Some of activities of information brokering in e-commerce Connecting buyers and sellers Selection, evaluation, filtering and assignment Request Advertisement
Introduction(2/2) The goals of this research Design and implement an algorithm that connects buyer and seller agents Devise a brokering protocol for specifying and structuring the interactions among electronic intermediaries and trading agents Design and engineer a testbed that models and simulates some of the activities of information brokering in the domain of securities trading
Connecting Buyers and Seller(1/4) Selecting request and advertisements That are not expired or withdrawn With profiles and preferences that are closely matched That have not been previously assigned
Connecting Buyers and Seller(2/4) Evaluating Connections The utility U A domain specific attribute The utility of a connection C i For Example – Securities trading Price(P), Volume(V) and Desirability(D) Values of P,V and D range from 0 to 1 with the following interpretations
Connecting Buyers and Seller(3/4) Filtering Cutoff point A smaller value of, A larger value of The need to optimizing value of
Connecting Buyers and Seller(4/4) Assigning buyers and seller This stage makes the completion of the selecting cycle for a request and releases the connection results to buyers and sellers for review Stopping condition Number of connection equals to the expected number of response specified by the buyer Request has already gone through a prespecified number of cycles of selection and filtering
Agent-Based Information Brokering Testbed Agent-based information brokering testbedThe stages of brokering protocol Recommend
Information Exchange Among Agents The types of messages Requests from buyer agents Advertisements from seller agents Connections of request to advertisements Withdrawals of requests or advertisements Results of decisions Request ( request-id : id-type; buy-agent-id : id-type; buy-stock-name : stock-name; buy-valid-period: period; buy-volume: volume; buy-price: double; expected-response: integer; ) Ex)
Experimentation and Evaluation Experiments Average Connection Time – stable Satisfactions Balanced Loading
Discussion What can we do with agents? Analysis system and make a framework Define the type of message ……. How can we validate our framework?