multi agent online auction system

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

Upload: mahrukh-majeed

Post on 01-Jul-2015

246 views

Category:

Technology


4 download

DESCRIPTION

Multi agent online auction system.

TRANSCRIPT

Page 1: Multi Agent Online Auction System

Multi-Agent System for Online Auctions

Jose Manuel Valladares PernasCIS Master Project - Fall 2004

Advisor: Dr. Haiping Xu

Page 2: Multi Agent Online Auction System

Multi-Agent System for Online AuctionsWhat 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 Abil i ty: 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 Online Auction System

Multi-Agent System for Online AuctionsObjective of the Project

Design 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 Online Auction System

Multi-Agent System for Online AuctionsDescription of JADE

JADE 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 Online Auction System

Multi-Agent System for Online AuctionsArchitecture

Page 6: Multi Agent Online Auction System

Multi-Agent System for Online AuctionsAnother view

Page 7: Multi Agent Online Auction System

Multi-Agent System for Online AuctionsMain Agent

Responsible 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 Online Auction System

Multi-Agent System for Online AuctionsGUI Agent

Receives 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 Online Auction System

Multi-Agent System for Online AuctionsAuction State Diagram

Page 10: Multi Agent Online Auction System

Multi-Agent System for Online AuctionsJADE Behaviours

A 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 Online Auction System

Multi-Agent System for Online AuctionsClass Diagram of the System

Page 12: Multi Agent Online Auction System

Multi-Agent System for Online AuctionsDetail of Strategies

Page 13: Multi Agent Online Auction System

Multi-Agent System for Online AuctionsHow it works

Every 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 Online Auction System

Multi-Agent System for Online AuctionsHow 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 Online Auction System

Multi-Agent System for Online AuctionsSteps to Add a new Strategy

Create 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.