59
Agent-based Agent-based E-commerce E-commerce System System Maria Ganzha Maria Ganzha Marcin Paprzycki Marcin Paprzycki http://agentlab.swps.edu.pl http://agentlab.swps.edu.pl

Agent-based E-commerce System

  • Upload
    renata

  • View
    43

  • Download
    0

Embed Size (px)

DESCRIPTION

Agent-based E-commerce System. Maria Ganzha Marcin Paprzycki http://agentlab.swps.edu.pl. Agent-based E-commerce System. 1. Introduction. Assumptions. Modelling a distributed marketplace  Internet e-buyers visit e-shops with a desire to purchase products - PowerPoint PPT Presentation

Citation preview

Page 1: Agent-based E-commerce System

Agent-basedAgent-basedE-commerce E-commerce

SystemSystemMaria GanzhaMaria Ganzha

Marcin PaprzyckiMarcin Paprzyckihttp://agentlab.swps.edu.plhttp://agentlab.swps.edu.pl

Page 2: Agent-based E-commerce System

Agent-basedAgent-basedE-commerce E-commerce

SystemSystem1. Introduction1. Introduction

Page 3: Agent-based E-commerce System

AssumptionsAssumptionsModelling a distributed marketplace Modelling a distributed marketplace Internet Internet

e-buyers visit e-shops with a desire to purchase e-buyers visit e-shops with a desire to purchase productsproducts

buyers negotiate prices with sellersbuyers negotiate prices with sellersclients decide which store to buy fromclients decide which store to buy from

““wholesalers” provide products for e-shopswholesalers” provide products for e-shopsUtilizing software agents for all e-commerce Utilizing software agents for all e-commerce

functionsfunctionsdevelop complete system skeleton develop complete system skeleton all agent all agent

functions and agent interactions implementedfunctions and agent interactions implemented

Page 4: Agent-based E-commerce System

Use case of the systemUse case of the system

Page 5: Agent-based E-commerce System

What's different (1)What's different (1)Multiple items of a product placed for sale Multiple items of a product placed for sale

one after another one after another series of price series of price negotiationsnegotiations

Multiple items sold Multiple items sold price negotiations are price negotiations are organized differently organized differently “discrete process” “discrete process” Buyer Agents (BA) “collected” and released in groups Buyer Agents (BA) “collected” and released in groups

to participate in negotiationsto participate in negotiationswhile negotiation takes place BA’s communicate only while negotiation takes place BA’s communicate only

with the Seller Agent (SeA)with the Seller Agent (SeA)meanwhile next group of BA’s is collected (as they meanwhile next group of BA’s is collected (as they

arrive) and will participate in the next negotiationarrive) and will participate in the next negotiation

Page 6: Agent-based E-commerce System

What's different (2)What's different (2)Multiple subsequent auctions (involving Multiple subsequent auctions (involving

items of the same product) take place items of the same product) take place price negotiation mechanism can changeprice negotiation mechanism can change

Model of a complete e-commerce systemModel of a complete e-commerce systemactions that take place before negotiationsactions that take place before negotiationsactions that take place after negotiationsactions that take place after negotiationsproduct logisticsproduct logistics

Clients choose shop from which to make a Clients choose shop from which to make a purchase purchase “airline reservation” model “airline reservation” model

Page 7: Agent-based E-commerce System

Agent-basedAgent-basedE-commerce E-commerce

SystemSystem2. Ontologies and their utilization2. Ontologies and their utilization

Page 8: Agent-based E-commerce System

Ontology of products (1)Ontology of products (1)

Product taxonomy inspired by the Global Product taxonomy inspired by the Global Products Classification (GPC) standardsProducts Classification (GPC) standards

shoesshoescamerascameras

Product skeleton Product skeleton created by sub-classing the base ontologycreated by sub-classing the base ontology

shoes of the same style and brandshoes of the same style and brandProduct variationProduct variation

instance of a product skeleton instance of a product skeleton shoes of given style and brand of a particular shoes of given style and brand of a particular

size and coloursize and colour

Page 9: Agent-based E-commerce System

Ontology of productsOntology of products

InstanceInstance

Page 10: Agent-based E-commerce System

Ontology of products (2)Ontology of products (2)

:Product:Product

a owl:Class .a owl:Class .

:Clothing:Clothing

rdfs:subClassOf :Product .rdfs:subClassOf :Product .

:Shoes:Shoes

rdfs:subClassOf :Clothing .rdfs:subClassOf :Clothing .

:ShoesWithLaces:ShoesWithLaces

rdfs:subClassOf :Shoes .rdfs:subClassOf :Shoes .

:AthleticShoes:AthleticShoes

rdfs:subClassOf :Shoes .rdfs:subClassOf :Shoes .

:hasPrice:hasPrice

a owl:ObjectProperty ;a owl:ObjectProperty ;

rdfs:domain :Product ;rdfs:domain :Product ;

rdfs:range :Price .rdfs:range :Price .

:hasBrand

a owl:DatatypeProperty ;

rdfs:domain :Product ;

rdfs:range xsd:string .

:hasColor

a owl:ObjectProperty ;

rdfs:domain :Product ;

rdfs:range :Color .

:hasSize

a owl:ObjectProperty ;

rdfs:domain :Product ;

rdfs:range :Size .

Page 11: Agent-based E-commerce System

Ontology of product – instance (1) Ontology of product – instance (1)

@prefix cc: @prefix cc: <http://www.ibspan.waw.pl/e-cap/product/clothing-<http://www.ibspan.waw.pl/e-cap/product/clothing-catalog.owl#> catalog.owl#>

@prefix prod: @prefix prod: <http://www.ibspan.waw.pl/e-cap/product/product.owl#> .<http://www.ibspan.waw.pl/e-cap/product/product.owl#> .

@prefix : @prefix : <http://www.ibspan.waw.pl/e-cap/db/cic/products.owl#> .<http://www.ibspan.waw.pl/e-cap/db/cic/products.owl#> .:Product1165510834375 a :Product1165510834375 a cc:ProtectiveLowerBodyWearBrick, cc:ProtectiveLowerBodyWearBrick,

a prod:ProductEntity ;a prod:ProductEntity ;cc:hasConsumerLifestage cc:Unclassified ;cc:hasConsumerLifestage cc:Unclassified ;cc:hasGender cc:Female ;cc:hasGender cc:Female ;cc:hasIfDisposable cc:Yes ;cc:hasIfDisposable cc:Yes ;cc:hasSafetyFeatures cc:ColdResistant ;cc:hasSafetyFeatures cc:ColdResistant ;cc:hasTypeOfMaterial cc:Combination ;cc:hasTypeOfMaterial cc:Combination ;cc:hasTypeOfProtectiveLowerBodyWear cc:hasTypeOfProtectiveLowerBodyWear cc:ProtectiveKneePadscc:ProtectiveKneePads

Page 12: Agent-based E-commerce System

Ontology of product – instance (2)Ontology of product – instance (2)@prefix avc: <http://www.ibspan.waw.pl/e-cap/product/audio-@prefix avc: <http://www.ibspan.waw.pl/e-cap/product/audio-visual-catalog.owl#> .visual-catalog.owl#> .

@prefix prod: @prefix prod: <http://www.ibspan.waw.pl/e-cap/product/product.owl#> .<http://www.ibspan.waw.pl/e-cap/product/product.owl#> .

@prefix : @prefix : <http://www.ibspan.waw.pl/e-cap/db/cic/products.owl#> .<http://www.ibspan.waw.pl/e-cap/db/cic/products.owl#> .

:Product1165506706750 a avc:Televisions_Hand_HeldBrick,:Product1165506706750 a avc:Televisions_Hand_HeldBrick,

prod:ProductEntity ;prod:ProductEntity ;

avc:hasColourFormat avc:Black_White ;avc:hasColourFormat avc:Black_White ;

avc:hasTypeOfTelevisions avc:Plasma ;avc:hasTypeOfTelevisions avc:Plasma ;

avc:hasIfWithRadio avc:Yes ;avc:hasIfWithRadio avc:Yes ;

avc:hasScreenSize avc:_2.5Inch .avc:hasScreenSize avc:_2.5Inch .

Page 13: Agent-based E-commerce System

Ontology of productsOntology of products

InstanceInstance

Page 14: Agent-based E-commerce System

Product registration (1)Product registration (1)

SA registers sold products with the CIC SA registers sold products with the CIC using ACL REQUEST messagesusing ACL REQUEST messagesmessage content specified using message content specified using FIPA Semantic FIPA Semantic

LanguageLanguage (FIPA SL) (FIPA SL)FIPA SL term representing an action has the FIPA SL term representing an action has the

form: form:

(action (action Agent ActionAgent Action))Specifically:Specifically:

AgentAgent = the agent performing the action = the agent performing the actionAction Action = the action which is [to be] performed= the action which is [to be] performed

Page 15: Agent-based E-commerce System

Product registration (2)Product registration (2) AgentAgent = CIC = CIC

(agent-identifier(agent-identifier:name [email protected]:name [email protected]:addresses http://www.ibspan.waw.pl:9999):addresses http://www.ibspan.waw.pl:9999)

Action = register set of products sold by a SAAction = register set of products sold by a SA(Add-Product-Shop(Add-Product-Shop

(Entry(Entry:product (set PD1 ... PDn):product (set PD1 ... PDn):shop Shop:shop Shop:gatekeeper Gatekeeper)):gatekeeper Gatekeeper))

PDPDii = product descriptions in OWL (Lite) = product descriptions in OWL (Lite) ontology ontology instanceinstance

(ProductDescription(ProductDescription:language "owl":language "owl":description OWL-EXPRESSION ):description OWL-EXPRESSION )

Page 16: Agent-based E-commerce System

Product registration (3)Product registration (3)

Products that are sold have to be registered Products that are sold have to be registered with the CICwith the CIC

Product IDProduct IDextension of product ontology to specify that a extension of product ontology to specify that a

given shop sells a given productgiven shop sells a given productshop identified by its Gatekeeper Agent (GA)shop identified by its Gatekeeper Agent (GA)

:GA-1 a :gatekeeperAgent;:GA-1 a :gatekeeperAgent;

:name [email protected] ;:name [email protected] ;

:addresses http://www.ibspan.waw.pl:9999 ;:addresses http://www.ibspan.waw.pl:9999 ;

:shop 767 ;:shop 767 ;

:sells :Product4094094049.:sells :Product4094094049.

Page 17: Agent-based E-commerce System

Usage scenarioUsage scenarioSystem is running for some timeSystem is running for some time

SA’s have registered their products with the CICSA’s have registered their products with the CICstored in a Jena repositorystored in a Jena repository

middleware over a database to manage stored in the system middleware over a database to manage stored in the system instances of ontologiesinstances of ontologies

CA’s know where the CIC isCA’s know where the CIC isCA’s have interacted with some SA’sCA’s have interacted with some SA’sSA’s have interacted with some CA’sSA’s have interacted with some CA’s

Scenario Scenario what happens when user wants what happens when user wants to buy a pair of athletic shoesto buy a pair of athletic shoesassumption assumption user interacts with its CA through user interacts with its CA through

a web-based interfacea web-based interface

Page 18: Agent-based E-commerce System

Processing User RequestProcessing User Request A query-string (URL extension) representing user A query-string (URL extension) representing user

request reaches the CArequest reaches the CA Example:Example:

?productClass=AthleticShoes?productClass=AthleticShoes&hasColor=BlackColor&prize:ofCurrency=EUR&hasColor=BlackColor&prize:ofCurrency=EUR&prize:value:leftBound=25&prize:value:rightBound=50&prize:value:leftBound=25&prize:value:rightBound=50&size:value1=36&size:value1=37&size:value1=36&size:value1=37

CA translates query-string into a SPARQL queryCA translates query-string into a SPARQL query SPARQL rather than RDQL becauseSPARQL rather than RDQL because

SPARQL is more expressive than RDQLSPARQL is more expressive than RDQL SPARQL is about to obtain standardizationSPARQL is about to obtain standardization JENA already includes working SPARQL moduleJENA already includes working SPARQL module SPARQL query engine is better testedSPARQL query engine is better tested

Page 19: Agent-based E-commerce System

SPARQL Query exampleSPARQL Query examplePREFIX my:PREFIX my:

<http://jacs.ibspan.waw.pl/ontology#><http://jacs.ibspan.waw.pl/ontology#>SELECT ?product, ?gatewaySELECT ?product, ?gateway

{ ?gateway :sells ?product; }{ ?gateway :sells ?product; }{ ?product, { ?product,

rdfs:subClassOf my:AthleticShoe ;rdfs:subClassOf my:AthleticShoe ;my:hasColor my:BlackColor ;my:hasColor my:BlackColor ;my:hasPrize ?prize ;my:hasPrize ?prize ;my:hasSize ?size }my:hasSize ?size }

{ ?prize, { ?prize, my:ofCurrency my:EUR ;my:ofCurrency my:EUR ;my:value ?prizeValue }my:value ?prizeValue }

{ ?size my:value ?sizeValue },{ ?size my:value ?sizeValue },FILTERFILTER

((?sizeValue = “36.0” || ?sizeValue = “37.0”) &&((?sizeValue = “36.0” || ?sizeValue = “37.0”) &&(?prizeValue >= “25.0” && ?prizeValue <= “50.0”))(?prizeValue >= “25.0” && ?prizeValue <= “50.0”))

Page 20: Agent-based E-commerce System

CIC result set and what next?CIC result set and what next?

CA packs the SPARQL query into an ACL CA packs the SPARQL query into an ACL QUERY-REF message send to CIC agentQUERY-REF message send to CIC agent

CIC returns a (possibly empty) set of CIC returns a (possibly empty) set of answers packed in an ACL INFORM answers packed in an ACL INFORM message containing expressions like this:message containing expressions like this:(set (set

(sequence (sequence PDPD11 GAGA11) ... ) ...

(sequence (sequence PDPDnn GAGAnn))))CA evaluates this list based on “trust/image”CA evaluates this list based on “trust/image”Based on results of evaluation CA will Based on results of evaluation CA will

interact with selected e-shopsinteract with selected e-shops

Page 21: Agent-based E-commerce System

Before NegotiationBefore Negotiation

Page 22: Agent-based E-commerce System

Before Price NegotiationsBefore Price NegotiationsCA asks the GA about admission rulesCA asks the GA about admission rules

GA checks CA-trust + product availability and GA checks CA-trust + product availability and respondsrespondsno more productno more productgo away go away we do not trust you we do not trust youBA’s have to comeBA’s have to come

CA creates and sends a BACA creates and sends a BABA’s created locallyBA’s created locally

RESULT RESULT BA skeleton is “in” BA skeleton is “in”GA provides BA with negotiation “details”GA provides BA with negotiation “details”BA requests strategy (for THAT negotiation)BA requests strategy (for THAT negotiation)RESULT RESULT BA is ready and informs the GA BA is ready and informs the GA

Page 23: Agent-based E-commerce System

Modular AgentsModular Agents

Page 24: Agent-based E-commerce System

Negotiation and AfterNegotiation and AfterGA manages a pool of SeAs GA manages a pool of SeAs

when the time comes, it releases the list of BAs when the time comes, it releases the list of BAs to a free and appropriately configured SeA for to a free and appropriately configured SeA for negotiationnegotiation

When negotiation is finishedWhen negotiation is finishedSeA informs winning BA and SA (via GA)SeA informs winning BA and SA (via GA)SA (via SDA) determines for how long to reserve SA (via SDA) determines for how long to reserve

the product for the winner BA/CAthe product for the winner BA/CAdepending on BA/CA “image/trust”depending on BA/CA “image/trust”

SA informs the BA about the reservation SA informs the BA about the reservation conditionsconditions

BA informs its CA about results on negotiationBA informs its CA about results on negotiation

Page 25: Agent-based E-commerce System

Decision TimeDecision TimeCA receives ACL INFORM messages from CA receives ACL INFORM messages from

its BAsits BAs inform about winning or loosing negotiationsinform about winning or loosing negotiationscome completely asynchronous come completely asynchronous varying time of reservationvarying time of reservation

CA utilizes multicriterial analysis to decideCA utilizes multicriterial analysis to decide to make purchase utilizing an available offerto make purchase utilizing an available offer to try for a better priceto try for a better price to abandon purchaseto abandon purchase

Page 26: Agent-based E-commerce System

Agent-basedAgent-basedE-commerce E-commerce

SystemSystem3. Trust in the system3. Trust in the system

Page 27: Agent-based E-commerce System

Trust and ImageTrust and Image

Maria.Merchant

I trust you. I believein your responsibility.

Costin.Client

I also trust you. I believe in your honesty.

But your prices are too high

for me...

And I could afford to buy at

your shop

trusttrust – standard conceptualization – standard conceptualizationa peer’s belief in another peer’s capabilities, honesty and a peer’s belief in another peer’s capabilities, honesty and reliability based on its own direct experiencesreliability based on its own direct experiences

trusttrust – in our system – in our systemfulfilment of a contractfulfilment of a contract

product matching our orderproduct matching our orderdelivery timedelivery time

reliability of the buyerreliability of the buyerimageimage – involves „perceptions”– involves „perceptions”

given shop is „cheap” or „expensive”given shop is „cheap” or „expensive”

Paweł.Client

Page 28: Agent-based E-commerce System

Trust in the SystemTrust in the System

Page 29: Agent-based E-commerce System

Client TrustClient Trust

Most processes that can visibly change Most processes that can visibly change trust in a given store take place during trust in a given store take place during Sale finalizationSale finalization involves, among others, payment and involves, among others, payment and

delivery of products delivery of products

Page 30: Agent-based E-commerce System

Initial Trust Sequence DiagramInitial Trust Sequence Diagram

Page 31: Agent-based E-commerce System

Shop TrustShop Trust

Most of process which can visibly change Most of process which can visibly change trust take place during After-negotiation trust take place during After-negotiation period:period:SA create reservationSA create reservationBA:BA:

confirm purchaseconfirm purchasereject purchase (?time?)reject purchase (?time?)no answer/answer after deadlineno answer/answer after deadline

Page 32: Agent-based E-commerce System
Page 33: Agent-based E-commerce System

Modelling TrustModelling Trust

T n x = 1−α TA en T n−1 x +αTA e n

T n x ∈[−1,1 ]

TA en ∈ [−1,1 ]

α∈ 0,1

Trust of the Shop in Client x after n-th interaction event performed by the Client. Trust adjustment of n-th interaction event; impact of an interaction event on trust change.

Page 34: Agent-based E-commerce System

Effect of Effect of αα

Marcin.Merchant

Maria.Merchant

Maciej.Client

“I can be really mad, when you make me angry, but I also forget about negative behaviours quickly.

Radical merchant

Careful merchant

“You must be really obnoxious to make me angry, but as soon you managed to do it, I won't change my opinion about you so fast.”

“I want to buy new shoes and I'm gonna try to negotiate with Maria's and Marcin's shops.”

Brave client

TTn(Maria)=0 Tn(Marcin)=0

α=0.1 Tn(Maciej)=0

Tn(Maciej)=0α=0.8

Page 35: Agent-based E-commerce System

TATA((ee) – How Can It Look Like) – How Can It Look Like Reservation time is Reservation time is ttresres, no-penalty time is , no-penalty time is ttnopnop, reservation , reservation

cancellation time is cancellation time is ttcant cant

1.1. BA has finalized purchase at time t BA has finalized purchase at time t [0, [0,ttresres]]TA(e) =1TA(e) =1

2.2. BA has cancelled reservation at time BA has cancelled reservation at time ttcancan[0,[0,ttnopnop] ] TA(e) = 0 TA(e) = 0

3.3. BA has cancelled reservation at time BA has cancelled reservation at time ttcancan ( (ttnopnop, , ttresres]. Let us ]. Let us assume that the maximum penalty for cancellation at time assume that the maximum penalty for cancellation at time ttcancan = = ttresres is γ, where 0  ≤ γ ≤ α, and the TA(e) is linear is γ, where 0  ≤ γ ≤ α, and the TA(e) is linear function, then TA(e) = a* function, then TA(e) = a* ttcancan + b, where a = γ / ( + b, where a = γ / (ttresres – – ttnopnop) ) and b = –γ and b = –γ ttnopnop /( /(ttresres – – ttnopnop))

4.4. if BA has not responded in time t ≤ if BA has not responded in time t ≤ ttresres, then TA(e) = –α, then TA(e) = –α

tnop tres

Page 36: Agent-based E-commerce System

CommentsCommentsTrust value as a part of CA's strategyTrust value as a part of CA's strategy

it will buy one item, while has multiple it will buy one item, while has multiple reservationsreservations

which to reject imediately?which to reject imediately?which can expire?which can expire?where not to send agent back to negotiations?where not to send agent back to negotiations?etc.etc.

knowing that over time good and bad behaviors knowing that over time good and bad behaviors are being forgotten and the incoming agent is are being forgotten and the incoming agent is treated as „unknown”treated as „unknown”

Page 37: Agent-based E-commerce System

Agent-basedAgent-basedE-commerce E-commerce

SystemSystem4. Price negotiations4. Price negotiations

Page 38: Agent-based E-commerce System

Price Negotiation OverviewPrice Negotiation OverviewBJP frameworkBJP framework

negotiation “participants”negotiation “participants”host host negotiation “manager” negotiation “manager”buyer(s)buyer(s)seller(s)seller(s)

negotiation process has phases:negotiation process has phases:proposal submissionproposal submissionagreement formationagreement formation

Our systemOur system admission to negotiations – Gatekeeper agent (GA) – not a admission to negotiations – Gatekeeper agent (GA) – not a

part of negotiationspart of negotiations rules for admission to negotiations – outside of the hostrules for admission to negotiations – outside of the host

Page 39: Agent-based E-commerce System

Negotiation Host Structured Negotiation Host Structured Into SubagentsInto Subagents

Page 40: Agent-based E-commerce System

Negotiation RulesNegotiation RulesEnforce specific negotiation mechanismEnforce specific negotiation mechanism

for checking the validity of negotiation proposals for checking the validity of negotiation proposals – – ProposalValidatorProposalValidator

for protocol enforcement – for protocol enforcement – ProposalEnforcerProposalEnforcerfor updating the negotiation status and informing for updating the negotiation status and informing

participants – participants – InformationUpdaterInformationUpdaterfor agreement formation – for agreement formation – AgreementMakerAgreementMaker for controlling the negotiation termination – for controlling the negotiation termination –

NegotiationTerminatorNegotiationTerminator

Page 41: Agent-based E-commerce System

English AuctionEnglish Auction

single-itemsingle-itemfirst-pricefirst-priceopen-cryopen-cryascending auctionsascending auctionssingle seller and many buyerssingle seller and many buyerstime limit for ending the auctiontime limit for ending the auctionseller reservation priceseller reservation price

simple, well-known, !uninteresting!simple, well-known, !uninteresting!

Page 42: Agent-based E-commerce System

Posting Rule Posting Rule

IFIFThere is a valid proposal Pr submitted by a There is a valid proposal Pr submitted by a

participant with role ‘Buyer’ on product A participant with role ‘Buyer’ on product A

ANDAND

There is an active proposal submitted by a There is an active proposal submitted by a participant with role ‘Seller’ on product Aparticipant with role ‘Seller’ on product A

THENTHEN

Proposal Pr is postedProposal Pr is posted

Page 43: Agent-based E-commerce System

JESS JESS representedrepresented

rulerule

Page 44: Agent-based E-commerce System

Dutch AuctionDutch AuctionSingle item Dutch auctionSingle item Dutch auction

Seller begins with a high asking price which is Seller begins with a high asking price which is lowered until buyer is willing to accept the price, lowered until buyer is willing to accept the price, or a predetermined minimum price is reached or a predetermined minimum price is reached (no sale)(no sale)

Multiple-item Dutch auction??Multiple-item Dutch auction??

Page 45: Agent-based E-commerce System

Dutch Auction Scenario (1)Dutch Auction Scenario (1)Participants:Participants:

Negotiation HostNegotiation Host (“location” where the (“location” where the negotiations takes place)negotiations takes place)

Single Single Seller AgentSeller Agent (SeA) (SeA)

Multiple Multiple Buyer AgentsBuyer Agents (BA)s (BA)s

NN units of product units of product PP are to be sold are to be soldInitial bid posted on the Initial bid posted on the BlackboardBlackboard

Page 46: Agent-based E-commerce System

Dutch Auction Scenario (2)Dutch Auction Scenario (2)

SeASeA subsequently reduces the price subsequently reduces the price

One One of BAsof BAs (e.g. (e.g. BABA55) responds with an ACL ) responds with an ACL

message informing that it is ready to purchase M, M message informing that it is ready to purchase M, M ≤ N, units of P at a price equal to the current bid≤ N, units of P at a price equal to the current bid

then number of available units is reduced by M and then number of available units is reduced by M and BABA

55 is is removedremoved from negotiations (each BA is from negotiations (each BA is

allowed to submit at most one successful bid)allowed to submit at most one successful bid)

Process continues until (1) all N units are sold, or Process continues until (1) all N units are sold, or (2) minimal price of the (2) minimal price of the SeASeA is reached, or (3) time is reached, or (3) time of inactivity is overof inactivity is over

Page 47: Agent-based E-commerce System

Seller RulesSeller Rules

Seller is allowed to shout a new price when Seller is allowed to shout a new price when one of the following conditions holds:one of the following conditions holds: it is the first shoutit is the first shoutone of Buyers submitted a bid that was one of Buyers submitted a bid that was

successfulsuccessfulno successful bids were received and at least Tno successful bids were received and at least Tmm

time units elapsed since the last shouttime units elapsed since the last shout

Page 48: Agent-based E-commerce System

Improvement-Seller RuleImprovement-Seller RuleIFIF

participant with role ‘Seller’ has posted proposal Pparticipant with role ‘Seller’ has posted proposal Pr r

andand

value of last offer posted by ‘Seller’ is B value of last offer posted by ‘Seller’ is B

andand

minimum decrement is H minimum decrement is H

andand

X(PX(Prr) ≤ B − H) ≤ B − H

THENTHENproposal Pproposal Prr is active is active

Page 49: Agent-based E-commerce System

ExperimentsExperiments

JADE agent environmentJADE agent environmentJAVA Expert System Shell (JESS)JAVA Expert System Shell (JESS)up to 20 machines in a single networkup to 20 machines in a single networkhomogeneous environment (Windows or homogeneous environment (Windows or

Linux)Linux)heterogeneous environment (Windows + heterogeneous environment (Windows +

Linux)Linux)system is being re-implemented, so next system is being re-implemented, so next

slides represent “what was” (IT WORKED)slides represent “what was” (IT WORKED)

Page 50: Agent-based E-commerce System
Page 51: Agent-based E-commerce System
Page 52: Agent-based E-commerce System
Page 53: Agent-based E-commerce System
Page 54: Agent-based E-commerce System

Agent-basedAgent-basedE-commerce E-commerce

SystemSystem6. Logistics6. Logistics

Page 55: Agent-based E-commerce System

LogisticsLogistics

SDA controls supply and demand informationSDA controls supply and demand informationSDA sends product level prediction for a SDA sends product level prediction for a

time-period (i.e. weekly prediction for 5 time-period (i.e. weekly prediction for 5 weeks)weeks)

WA analyses the status of the warehouse WA analyses the status of the warehouse and decides how many to buyand decides how many to buy

Order (if necessary) is send to the Logistics Order (if necessary) is send to the Logistics Agent (LA)Agent (LA)

LA utilizes a pool for Ordering Agents to LA utilizes a pool for Ordering Agents to process and orderprocess and order

Page 56: Agent-based E-commerce System

Use Case of LogisticsUse Case of Logistics

Page 57: Agent-based E-commerce System
Page 58: Agent-based E-commerce System
Page 59: Agent-based E-commerce System

END of Agent-basedEND of Agent-basedE-commerce SystemE-commerce System