The FishMarket Tournaments

Second Edition

Barcelona 1998

Market Interagent


This page will be permanently under construction... Sorry about that mates


Market Interagent Protocol

If we intend to make our buyer agents participate in this tournament, we also need to know the communication protocol between our buyer agents and the market interagents provided by the institution, the FishMarket. The tables below specify the syntax of the messages that your buyer agents and the market interagents can interchange.

Messages that buyers are allowed to send

Message number

Predicate

Parameters

1

admission

login password

2

bid

3

exit

Messages that buyers can receive through their interagents

Message number

Predicate

Parameters

4

deny

deny_code

5

accept

6

open_auction

auction_number

7

open_round

round_number

8

good

good_id good_type starting_price resale_price

9

buyers

{buyerlogin}*

10

goods

{good_id good_type starting_price resale_price}*

11

offer

good_id price

12

sold

good_id buyerlogin price

13

sanction

buyerlogin fine

14

expulsion

buyerlogin

15

collision

price

16

withdrawn

good_id price

17

end_round

round_number

18

end_auction

auction_number

19

closed_market

NOTE: It is important to say that the message numbers along the first columns do not actually belong to the messages' syntax.

Messages will be built as strings according to the following syntax:

predicate {blank space} parameters \n

Notice that messages will be ending with CR LF. Nevertheless, you won't have to get into message handling since our templates will make that work for you. Next, we provide some examples of messages in the table below:

Message

Semantics

admission akira d3456784g Buyer akira requests admission in the market by submitting as password d3456784g.
deny 1 Error: message not accepted by the interagent. Error code = 1.
open_auction 2 Auction number 2 has been opened.
open_round 3 Round number 3 has been opened.
good g1 cod 1500 1700 The next good to be auctioned is good g1 of type cod, and its starting price will be 1500 ptas. whereas the resale price will be 1700 ptas.
buyers warakaman akira fishbroker tindalos ... The buyers taking part in the next bidding round will be: warakaman, akira, fishbroker,...
goods g1 cod 1500 1700 g2 haddock 2000 2800 g3 cod 1200 1600 Lot of goods to be auctioned.
offer g1 1500 Good g1 is offered at price 1500.
sold g1 akira 1300 Good g1 has been sold to akira at price 1300.
sanction tindalos 400 Buyer tindalos has been sanctioned with 400 ptas.
collision 1200 Collision at 1200 ptas. Several buyers sumitted their bids at 1200 ptas.
withdrawn g2 800 Good g2 has been declared out of market by the auctioneer when the offer price reached 800 ptas.
end_round 3 Round number 3 has been closed.
end_auction 2 Auction number 2 has been closed.

The tables above provide the set of legal messages. However, they do not tell us how these messages integrate into a structured conversation. In other words, we must also describe how a buyer agent and his interagent coordinate when holding a conversation. We choose a finite state machine to represent the communication states of a buyer when interacting with his interagent (click here to download a postcript version of this finite state machine). Notice, however, that this diagram displays the interaction between a buyer agent and his interagent from the agent's view. Therefore message numbers followed by / stand for messages sent by a buyer agent (f.i. 1/), while message numbers preceded by / stand for messages received by a buyer agent.

This diagram assumes that whenever a buyer agent attempts to illegally send a message, he will be kept at the same communication state after receiving an error message from his interagent.


http://www.iiia.csic.es/Projects/fishmarket/tour-upc-98
tournament@iiia.csic.es
Updated: April, 29th 1998

[ IIIA | IIIA Agents | Fishmarket Project ]