The University of Essex Computer Science home Page

Bargain Tournament 3.2
Call for participation -- All are welcome!

The CC283 Assignment 2 is a bargaining game (click here for details of the bargaining rules). I am inviting you to participate in a tournament. All are welcome to participate, including staff, research students and anyone not taking the CC283 module. Click here for submission rules.

All buyers will be played against all sellers, under rules defined by me (click here for details of the tournament rules). The winners are the buyer and the seller that accumulate the highest profit.

For the prize, the best buyer and the best seller programs will both win a certificate plus a bottle of wine from me. This is for fun. Having said that, there could be serious research in it. I intend to organize an international tournament later this year. This tournament is part of the Bargaining Project in the Centre for Computational Finance & Economic Agents.

I look forward to receiving lots of submissions.

Best of luck!
Edward Tsang, 16 January 2004

Submission rule:

  1. Deadline for submission: 23:59pm Sunday 1st February 2004.
  2. Each person is allowed to submit one buyer and one seller maximum (i.e. you can submit both).
  3. Please email your program **as attachment** to me ("edward", non Essex accounts, add "").
  4. In the subject line, please write:
    "Bargaining tournament 3.2 submission -- buyer xxxx"
    "Bargaining tournament 3.2 submission -- seller xxxx"
    depending on the program you are submitting, where xxxx is your login name
  5. If you are submitting one buyer and one seller, please send them in two separate emails.
  6. The filename of your subbmission should begin with your login name, followed by _s.plg or _b.plg for seller and buyer respectively. E.g. my entry could be called "edward_s.plg".
  7. Since I shall use a rule to move the files to the appropriate directories, your file could be missed if you don't following the above rules strictly.

Notes for CC283 students:

  1. If you have submitted your cc283 assignment electronically, there is no need to resubmit your program(s) -- in fact, I prefer you do not resubmit unless you have improved your program.
  2. Feel free to improve your cc283 assignment submissions and submit the new program to this tournament.

How I run the tournament:

  1. I will set the parameters in the parameter file for the tournament.
  2. If your program causes any problems, such as failed or return negative profits, it will be disqualified.
  3. I have final say on the procedures and judgement. No appeals will be accepted.
  4. Your program must generate NO screen output.
  5. Any program that cheats will be disqualified. All winning programs will be inspected carefully.
  6. I aim to announce the results approximately 2 weeks after the deadline. However, if I receive a large number of submissions, I shall have to take longer to run the programs and analyse the results.

Rules for Bargaining Game 3.2:

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. The following parameters will be used in this tournament:
    negotiation_parameter(cost_range, 101, 200 ).
    negotiation_parameter(days_to_sell, 3, 10 ).
    negotiation_parameter(utility_range, 201, 300 ).
    negotiation_parameter(days_to_buy, 3, 10 ).

    It is preferable (though not necessary in this tournament) that your programs can work for other settings. 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

Hit Counter