The University of Essex

Bargain Tournament 3.2 -- Rules

The game involves a buyer and a seller.

  1. The seller is given a cost and the number of days within which it has to sell (DTS);
  2. The buyer is given a utility and the number of days within which it has to buy (DTB);
  3. Both the buyer and the seller know that the cost is randomly drawn from the range [MinCost, MaxCost], the utility is randomly drawn from the range [MinUtil, MaxUtil] and the DTS and DTB randomly drawn from the range [MinTime, MaxTime] independently (which means DTS and DTB are not necessarily the same). These parameters are defined by the predicate negotiation_parameter:
    negotiation_parameter( cost_range, MinCost, MaxCost ).
    negotiation_parameter( days_to_sell, MinTime, MaxTime ).
    negotiation_parameter( utility_range, MinUtil, MaxUtil ).
    negotiation_parameter( days_to_buy, MinTime, MaxTime ).

    You may access negotiation_parameter/3 directly.
  4. The seller does not know the buyer’s utility and DTB;
  5. The buyer does not know the seller’s cost and DTS;
  6. The plays make alternate bids, starting with the seller;
  7. When both plays bid for the same price, a sale is agreed;
  8. If a sale cannot be agreed before any player runs out of time, the negotiation terminates; no penalty is paid by either player;
  9. Past bargaining is forgotten;
  10. The history of each negotiation is given to the player {in reverse order), e.g.:
    [+106, -106, +192, -53, +215]
    The seller always goes first. In this example, the seller asked for a price of 215, the buyer offered 53, which the seller countered with 192, etc. Finally, they agreed on the price of 106.

Professor Edward Tsang
Department of Computer Science and
Centre for Computational Finance & Economic Agents
University of Essex
Tel: +44 1206 872774
Fax: +44 1206 872788

Maintained by Edward Tsang; Last updated: 2009.01.21