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
Agent-basedAgent-basedE-commerce E-commerce
SystemSystemMaria GanzhaMaria Ganzha
Marcin PaprzyckiMarcin Paprzyckihttp://agentlab.swps.edu.plhttp://agentlab.swps.edu.pl
Agent-basedAgent-basedE-commerce E-commerce
SystemSystem1. Introduction1. Introduction
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
Use case of the systemUse case of the 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
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
Agent-basedAgent-basedE-commerce E-commerce
SystemSystem2. Ontologies and their utilization2. Ontologies and their utilization
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
Ontology of productsOntology of products
InstanceInstance
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 .
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
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 .
Ontology of productsOntology of products
InstanceInstance
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
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 )
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.
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
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
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”))
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
Before NegotiationBefore Negotiation
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
Modular AgentsModular Agents
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
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
Agent-basedAgent-basedE-commerce E-commerce
SystemSystem3. Trust in the system3. Trust in the 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
Trust in the SystemTrust in the 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
Initial Trust Sequence DiagramInitial Trust Sequence Diagram
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
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.
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
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
-γ
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”
Agent-basedAgent-basedE-commerce E-commerce
SystemSystem4. Price negotiations4. Price negotiations
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
Negotiation Host Structured Negotiation Host Structured Into SubagentsInto Subagents
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
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!
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
JESS JESS representedrepresented
rulerule
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??
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
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
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
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
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)
Agent-basedAgent-basedE-commerce E-commerce
SystemSystem6. Logistics6. Logistics
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
Use Case of LogisticsUse Case of Logistics
END of Agent-basedEND of Agent-basedE-commerce SystemE-commerce System