A Trustworthy Agent Based Online Auction System

emptyslowInternet και Εφαρμογές Web

12 Νοε 2013 (πριν από 3 χρόνια και 10 μήνες)

82 εμφανίσεις

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:
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
).


Open source platform implemented in Java (ubiquity
,
portability).


Complies with the FIPA specification.


Supports asynchronous m
essage 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#1

Client#2

Auction Server


Main Agent


Responsible
to

creat
e

new users,
login,
creat
e

auctions and get
the list of auctions.


Creat
es

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


G
UI

Server


Receives
command
s
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
command
s
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
us
ing 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.


Class Diagram

JADE Strategies

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


Bidding Strategy

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 <
Condition
> THEN <
Action
>


AND, OR, <,>,<=,>=


e.g.:


IF

Start_Bid
<
= CURRENT_BID
AND

Max_Bid
<

MAX_BID
THEN

CURRENT_BID = CURRENT_BID + FIX_BID


Customize Bidding Strategy

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.

Trustworthy Auction Client

Trustworthy Auction Server

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

IP

No of
Feedback



Cross
Feedback

More

Yes

Same IP


Probable Shill
Bidding

Yes

No

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.

Security Agent

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.