Presentation on theme: "A Trustworthy Agent Based Online Auction System Rinkesh Patel CIS Master Project – Spring 2006 Advisor: Dr. Haiping Xu."— Presentation transcript:
A Trustworthy Agent Based Online Auction System Rinkesh Patel CIS Master Project – Spring 2006 Advisor: Dr. Haiping Xu
Online Auctions Most Online Auctions specialize in person-to- person activity where individual sellers or small businesses sell their items directly to consumers. In these auctions, the seller — not the site — has the merchandise, and often, the site will not take responsibility for any problems that may arise between buyers and sellers. Ebay, Amazon, Yahoo Auctions…
Multi Agent System Multi-Agent System –An intelligent agent is an autonomous computer program capable of carrying out one or more tasks on behalf of (human) user. –A multi-agent system is a concurrent system that contains more than one agent. Agent Properties includes –Autonomy : agents operate autonomously, having a control over their actions and internal state –Sociability : agents interact with other agents using some communication language –Reactivity : agents perceive their environment, and respond in a timely fashion to environment changes. –Pro- Activeness : agents do not simply act in response to their environment, they are able to exhibit goal-directed behavior by taking the initiative.
Outline Part 1: Agent Based Online Auction System –Is a multi-agent system that facilitates online auctions on behalf of users. –Provides users with different default bidding strategies. –Allows users to customize their bidding strategies Part 2: Trustworthy Agent Based Online Auction System –Introduces a Security Agent that detects real-time Shilling Behaviors and inform to bidding agents. –Provides a Secure Online Auction System Conclusions and Future Work Part 1:Part 1: Agent Based Online Auction System –Is a multi-agent system that facilitates online auctions on behalf of users. –Provides users with different default bidding strategies. –Allows users to customize their bidding strategies
Objective Develop an online auction system using Java Agent DEvelopment Framework (JADE). Provide an agent system that facilitates online auctions on behalf of users. Develop a Search Agent which matches the requirements of user from available auction items. Provide agents to the users with different strategies for the bidding on items. Develop a Security Agent –monitors ongoing auctions for undesired bidding patterns –informs the other bidders for abnormal bidding behaviors
JADE Description of JADE –JADE stands for Java Agent Development Framework (www.jade.tilab.com).www.jade.tilab.com –Open source platform implemented in Java (ubiquity, portability). –Complies with the FIPA specification. –Supports asynchronous message passing communication. Features of JADE –Agents can be distributed across machines. –Supports agent migration. –Includes graphical tools to monitor the agents.
JADE Behaviors –A behavior 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 behavior is scheduled following a round robin algorithm. –Methods of the agents involving behaviours: addBehaviour, removeBehaviour. –Examples of Behaviours already included in JADE: SimpleBehaviour CyclicBehaviour TickerBehaviour WakerBehaviour ReceiverBehaviour ParallelBehaviour SequentialBehaviour
Architecture Client(s ) Server Database Security Agent Main Agent Auction Agent GUI Agent Selling/Bidding Agent Search Agent GUI Decision Tree Responsible for creating a new accounts and new auctions Controls a particular auctions Provide safe and secure auctions Detects Shilling Search for auction on behalf of user GUI for interaction with user Interacts with other Agents Bid/Sell on behalf of user.
Architecture Database Security Agent Main Agent Auction Agent GUI Agent Bidding Agent Search Agent GUI Decision Tree Search Agent Bidding Agent GUI GUI Agent Auction Agent Server Client#1Client#2
Auction Server Main 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 Agent –In 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.
Auction Server GUI Server –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. Search Agent –Responsible for searching for items on behalf of the user. –Notifies the user when auctions of his/her desired items are available. Security Agent –Provides Safe and Secure Environment.
Auction Client GUI 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. Seller Agent –is responsible of placing auctions on behalf of the user. Buyer Agent –Join the auctions on behalf of the User.
Auction Client Bidding Agent –Is responsible of placing bids automatically on behalf of the user. –Can be configured by the user using one of the available strategies (OneShotBid, PeriodicBid,…) or using Custom strategies to bid on particular auction. –Custom Strategies provide a better way to configure bidding agents. –User can developed any strategy on which bidding agent will configured to work.
Bidding Strategies How it works –Every strategy (BidConfiguration) contains an object behavior that extends one of the JADE Behaviors. –Actual Bidding process happens when the action method of the JADE behavior. –The BidConfiguration object contains a JPanel where the user enters the parameters for the bidding. –The JPanel is displayed inside a Dialog where the user chooses the strategy with a combo box. –Auction System Provides, –Normal Strategy : OneShotBehavior –Incremental Strategy : PeriodicBehaviour
Custom Strategies We propose an option to create and apply bidding strategies for bidding agent by users. Bidding Template: –We have provided a standard template for custom strategies. IF THEN –AND, OR,, = e.g.: –IF Start_Bid <= CURRENT_BID AND Max_Bid < MAX_BID THEN CURRENT_BID = CURRENT_BID + FIX_BID
Bidding Procedure 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.
Outline Part 1: Agent Based Online Auction System –Is a multi-agent system that facilitates online auctions on behalf of users. –Provides users with different default bidding strategies. –Allows users to customize their bidding strategies Part 2: Trustworthy Agent Based Online Auction System –Introduces a Security Agent that detects real-time Shilling Behaviors and inform to bidding agents. –Provides a Secure Online Auction System Conclusions and Future Work
Agent based Online Auctions Not Trustable –Agent-based online auction have not yet become popular because they are not trustable. e.g. one of the big concerns in online auctions is the shilling behavior problem. Not Real Time –E-Bay, the world’s leading and widely used Auction site does not have any real time software tools to detect shilling behaviors. Shill Hunter : Software used in E-Bay to check closed auctions.
Shill Bidding Shill bidding is the deliberate placing of bids to artificially raise the price of an item and is not allowed. Shill bidding occurs when the seller disguises himself as a legitimate bidder by using a second identity or account solely for the purpose of pushing up the sale price.
Shill Bidding Examples Example # John lists 2 boats (#1 and #2), both with a $10,000 reserve price at the same time. On boat #1, Alison bids $6,000 on the boat, but the Reserve Price is not met. To get the bidding higher, John places a bid himself at $7,000, using a different user name. Another bidder, Marlon, then bids $8000. The item doesn’t sell successfully. On boat #2, Dave bids $8000. John then bids $9000, using a different user name. Dave bids $10,000 and wins the boat.
How to do Shill Bidding Bidding on own Item Dummy Bidder Devoted Bidder –With Reserve Price –Without Reserve Price Bidder-to-Seller Feedback Short Term Bidder Using Bidding Agent Strategies it is possible to replicate same behavior.
How to Spot Shilling Security Agent: –Shill bidding is one of the major problems in real time auctions –Security agent detects patterns in ongoing auctions which are resembles shilling behaviors, and using a concept of decision tree agent takes decision for degree of shilling behaviors. –Shilling Patterns: Devoted Bidder Shotgun Feedback Numerous Retraction Concurrent Bidding
How to Spot Shilling… Many bids on an auction from different users who has 0 feedback are probable suspect. High bidder retracts bid after pumping up the bidding. Background Check –Bidder has same country/server/location/terms/ registration date as auction seller. An account that has won auctions, but never received any feedback. An even stronger indication is an account that has received feedback from only this seller. Bidders all sign up within a short period of time. The first bid is received minutes after the auction was listed. Usually bidder took their time to check auction item and bidding for that.
Decision Tree Same Account Yes No Shill Bidding First bid Right after bid placement Regular Same IPNo of Feedback …Cross Feedback More Yes Same IP Probable Shill Bidding Yes No Less … … … …
Security Agent Monitors bidding behaviors in ongoing auctions Detects possible shilling behaviors. If founds any such behaviors, then informs all current bidding agents of that auction. On the basis of degree of shilling behavior, Security agent informs that agent about unfair and biased behavior and takes possible actions. Upon receiving shilling behavior information in online auctions, the bidding agent can take appropriate actions accordingly in order to protect the users’ interests.
Conclusions & Future work Proposed a general architecture for agent-based online auction system. Designed a security agent that supports detection of shilling behaviors. Developed a prototype of trustworthy agent-based online auction system. Will design a language that supports flexible configuration of bidding strategies. Will develop a more sophisticated security agent that can effectively and efficiently detect shilling behaviors.