multi-agent system for online auctions jose manuel valladares pernas cis master project - fall 2004...

15
Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Post on 22-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

Jose Manuel Valladares PernasCIS Master Project - Fall 2004

Advisor: Dr. Haiping Xu

Page 2: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

What is an agent?An intelligent agent is a semi-autonomous computer program capable of carrying out one or more tasks specified by the user or another program.Like a software ‘robot’ capable of being programmed to carry out a wide variety of tasks.

Main PropertiesAutonomy: agents operate without the direct intervention of

humans or others, and have some kind of control over their actions and internal state.

Social Ability: agents interact with other agents (and possibly humans) via some kind of agent-communication language.

Reactivity: agents perceive their environment, and respond in a timely fashion to changes that occur in it.

Pro-activeness: agents do not simply act in response to their environment, they are able to exhibit goal-directed behavior by taking the initiative.

Page 3: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

Objective of the ProjectDesign and develop an auction system based on an existing multi-agents framework (JADE). Provide an agent system that facilitates online auctions on behalf of users.Provide agents to the users with different strategies for the searching and bidding on items.Test and compare the different strategies for searching and bidding for items.

Requirements of the SystemAllow different types of auctions (English, Dutch, …).For every type of auction provide several strategies for the agents.In addition of delegating the searching and bidding to the agents, the user can also interact with the system directly.

Page 4: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

Description of JADEJADE stands for Java Agent Development Framework (www.jade.tilab.com).Open source platform implemented in Java (ubiquity, portability).Complies with the FIPA specification.Support asynchronous message passing communication.

Features of JADEAgents can be distributed across machines.Supports agent migration.Includes graphical tools to monitor the agents.LEAP add-on lightweight libraries to use in mobile phones or PDAs.

Page 5: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

Architecture

Page 6: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

Another view

Page 7: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

Main AgentResponsible to create new users, login, create auctions and get the list of auctions.Creates the Auction Agent when a new auction is added to the system.Responds to the queries for items or auctions.

Auction AgentIn charge of the control of a particular auction.Users register to the auction and then send bids to the Auction Agent. The Auction Agent notifies the registered users of the price changes of the item.At the end of the auction, this agent notifies the winner and the seller and passes control to the Main Agent.When the auction is over, this agent is deleted.

Page 8: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

GUI AgentReceives commands from the user and acts correspondingly. It doesn’t have pro-active behavior.It does all the actions available in the user interface.Updates the auction information when messages are received from the other agents.

Bidding AgentIt is responsible of placing bids automatically on behalf of the user.It can be configured by the user using one of the available strategies (OneShotBid, PeriodicBid, AlwaysFirst, …).

Search AgentResponsible for searching for items on behalf of the user.Notifies the user when auctions of her desired items are available.

Page 9: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

Auction State Diagram

Page 10: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

JADE BehavioursA behaviour is basically an Event Handler, a method which describes how an agent reacts to an event: the reception of a message or a Timer interrupt.The Event Handler code is placed in a method called action. Every behaviour is scheduled following a round robin algorithm.Methods of the agents involving behaviours: addBehaviour, removeBehaviour.Examples of Behaviours already included in JADE:

SimpleBehaviour CyclicBehaviourTickerBehaviour WakerBehaviourReceiverBehaviourParallelBehaviour SequentialBehaviour

Page 11: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

Class Diagram of the System

Page 12: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

Detail of Strategies

Page 13: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

How it worksEvery strategy (BidConfiguration) contains an object behaviour that extends one of the JADE Behaviours.In the action of the behaviour is where the negotiation for the bidding happens.The BidConfiguration object contains also a JPanel where the user enters the parameters for the bidding.This JPanel is displayed inside a Dialog where the user chooses the strategy with a combo box.

Page 14: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

How it works (II)When the user enters the information for the automatic bidding:

The BidConfiguration object is populated with the data and passed to the BiddingAgent.The BiddingAgent calls the setupBehaviour method that registers the behaviour object contained in the BidConfiguration.When the event that the behaviour is listening to happens the method action is called and the bidding happens.

Page 15: Multi-Agent System for Online Auctions Jose Manuel Valladares Pernas CIS Master Project - Fall 2004 Advisor: Dr. Haiping Xu

Multi-Agent System for Online Auctions

Steps to Add a new StrategyCreate a class that implements IBidConfiguration.Contains a JPanel to show for the strategy configuration.Contains a behaviour that extends one of the JADE Behaviours.

Current status of the ProjectImplementation finished.Pending Test cases.Pending Final Document.