Progetto PRIN: Specifica e verifica di protocolli di interazione fra agenti - PowerPoint PPT Presentation

About This Presentation
Title:

Progetto PRIN: Specifica e verifica di protocolli di interazione fra agenti

Description:

Progetto PRIN: Specifica e verifica di protocolli di interazione fra agenti Viviana Mascardi Alessandria, 29-03-06 Progetto PRIN: Specifica e verifica di protocolli ... – PowerPoint PPT presentation

Number of Views:41
Avg rating:3.0/5.0
Slides: 5
Provided by: unig177
Category:

less

Transcript and Presenter's Notes

Title: Progetto PRIN: Specifica e verifica di protocolli di interazione fra agenti


1
  • Progetto PRIN Specifica e verifica di protocolli
    di interazione fra agenti
  • Viviana Mascardi
  • Alessandria, 29-03-06



2
Publisher side
3

exec(s('sd FruitMarket',0)) - exec(s(s('sd
FruitMarket',0),0)). exec(s(s('sd
FruitMarket',0),0)) - traceable_receive('RE
QUEST','availability_and_price(fruit(F))',
'fruitBuyer_at_klimt1099/JADE'), exec(s(s('sd
FruitMarket',0),1)). exec(s(s('sd
FruitMarket',0),1)) - check_case_guard_pass
ed(s(s(s('sd FruitMarket',0),1),0),no_guard),
!, exec(s(s(s('sd FruitMarket',0),1),0)).
exec(s(s(s('sd FruitMarket',0),1),0)) -
exec(s(s(s(s('sd FruitMarket',0),1),0),0)).
exec(s(s(s(s('sd FruitMarket',0),1),0),0)
) - traceable_send('INFORM','available(fr
uit(F),price(EuroForKg))',
'fruitBuyer_at_klimt1099/JADE'),
exec(s(s(s(s('sd FruitMarket',0),1),0),1)).
process( parameters(
ontology('FruitMarketOntology'),
content_language('first order logic')),
protocol_name('sd FruitMarket'),
agent_publisher(short_name('fruitSeller_at_klimt1099
/JADE'), long_name('fs/fruitSeller
fruitSellerClass')), agent_reader(short_n
ame('fruitBuyer_at_klimt1099/JADE'),
long_name('fb/fruitBuyerfruitBuyerClass')),
main_fragment( seq(
send(msg('REQUEST', 'availability_and_price
(fruit(F))')),
switch(case(no_guard,
seq(receive(msg('INFORM', 'available(fruit(F),pri
ce(EuroForKg))')),
receive(msg('PROPOSE', 'buy(fruit(F),price(EuroFor
Kg))')), switch(case(no_guard,
seq(send(msg('REQUEST',
'delivery_modes')),
receive(msg('INFORM', 'delivery_mode(ListOfModes)'
)),
Generated Prolog code
Prolog representation
Execution in DCaseLP
graphical and textual traces
THE PROTOCOL STARTS
Received message REQUEST
availability_and_price(fruit(F))
fruitBuyer_at_klimt1099/JADE Checked case guard
s(s(s('sd FruitMarket',0),1),0) no_guard Sent
message INFORM available(fruit(F),price(EuroForK
g)) fruitBuyer_at_klimt1099/JADE Sent message
PROPOSE buy(fruit(F),price(EuroForKg))
fruitBuyer_at_klimt1099/JADE Checked case guard
s(s(s(s(s('sd FruitMarket',0),1),0),2),0)
no_guard Received message REQUEST
delivery_modes fruitBuyer_at_klimt1099/JADE Sent
message INFORM delivery_mode(ListOfModes)
fruitBuyer_at_klimt1099/JADE Received message
REQUEST accepted_payment_methods
fruitBuyer_at_klimt1099/JADE Sent message INFORM
accepted_payment_methods(ListOfMethods)
fruitBuyer_at_klimt1099/JADE Checked case guard
s(s(s(s(s(s(s('sd FruitMarket',0),1),0),2),0),4),0
) no_guard Received message ACCEPT-PROPOSAL
sell(fruit(F), amount(A), payment_method(M),
delivery_mode(D)) fruitBuyer_at_klimt1099/JADE
THE PROTOCOL TERMINATED SUCCESSFULLY


Publisher side
4
process( parameters(
ontology('FruitMarketOntology'),
content_language('first order logic')),
protocol_name('sd FruitMarket'),
agent_publisher(short_name('fruitSeller_at_klimt1099
/JADE'), long_name('fs/fruitSeller
fruitSellerClass')), agent_reader(short_n
ame('fruitBuyer_at_klimt1099/JADE'),
long_name('fb/fruitBuyerfruitBuyerClass')),
main_fragment( seq(
send(msg('REQUEST', 'availability_and_price
(fruit(F))')),
switch(case(no_guard,
seq(receive(msg('INFORM', 'available(fruit(F),'))
, receive(msg('PROPOSE',
'buy(fruit(F),price(E4Kg))')),
WSDL WS-BPEL documents

1
Prolog representation
ltdefinitions xmlns"http//schemas.xmlsoap.org/wsd
l/" lttypesgt ltxsschema xmlns"http//www.w3.org/
2001/XMLSchema"/gt ltxselement name"accept-proposa
l_ca" type"xsstring fixed"accept-proposal"/gt
ltxselement name"agree_ca" type"xsstring"
fixed"agree"/gt ltxselement name"cfp_ca"
type"xsstring" fixed"cfp"/gt ltxselement
name"confirm_ca" type"xsstring"
fixed"confirm"/gt ltxselement name"disconfirm_ca"
type"xsstring" fixed"disconf
2
exec(s(s('sd FruitMarket',0),1)) -
check_case_guard_passed(s(s(s('sd
FruitMarket',0),1),0),no_guard),
exec(s(s(s('sd FruitMarket',0),1),0)).
exec(s(s(s('sd FruitMarket',0),1),0)) -
exec(s(s(s(s('sd FruitMarket',0),1),0),0)).
exec(s(s(s(s('sd FruitMarket',0),1),0),0)) -
traceable_send('INFORM','available(fruit(F)
,price(EuroForKg))', 'fruitBuyer_at_klimt109
9/JADE'), exec(s(s(s(s('sd
FruitMarket',0),1),0),1)).
Reasoning stage
Generated Prolog code
3
4
Execution in DCaseLP
THE PROTOCOL STARTS
Received message REQUEST
availability_and_price(fruit(F))
fruitBuyer_at_klimt1099/JADE Checked case guard
s(s(s('sd FruitMarket',0),1),0) no_guard Sent
message INFORM available(fruit(F)
fruitBuyer_at_klimt1099/JADE Sent message
PROPOSE buy(fruit(F),price(E4Kg))
fruitBuyer_at_klimt1099/JADE Checked case guard
s(s(s(s(s('sd FruitMarket',0),1),0),2),0)
no_guard Received message REQUEST
delivery_modes fruitBuyer_at_klimt1099/JADE Sent
message INFORM delivery_mode(ListOfModes)
fruitBuyer_at_klimt1099/JADE Received message
REQUEST accepted_payment_methods
fruitBuyer_at_klimt1099/JADE Sent message INFORM
accepted_payment_methods(ListOfMethods)
fruitBuyer_at_klimt1099/JADE Checked case guard
s(s(s(s(s(s(s('sd FruitMarket',0),1),0),2),0),4),0
) no_guard Received message ACCEPT-PROPOSAL
sell(fruit(F), amount(A), payment_method(M),

delivery_mode(D))
fruitBuyer_at_klimt1099/JADE THE
PROTOCOL TERMINATED SUCCESSFULLY
Write a Comment
User Comments (0)
About PowerShow.com