OVERVIEW

ANNOUNCEMENT

RULES

DISCLAIMERS

SAMPLE STRATEGIES


CONTACTS

FAQs


 


OVERVIEW

This computer tournament, partly funded by the NSF and UNLV’s College of Business, centers around an iterated Prisoners’ Dilemma with exit option (IPDEO). Many multi-party interactions, including business relationships such as strategic alliances and joint ventures, may be better modeled with an option that allows either party to opt out of the relationship at any time. This tournament will test strategies under this modified version of two-party relationships to determine the best strategy.

ORIGINAL ANNOUNCEMENT

Research faculty in the Department of Management, University of Nevada Las Vegas (UNLV) are sponsoring a computerized strategy tournament with a winner-take-all prize of $1000.  You are invited to submit a programmed strategy to play a repeated prisoner’s dilemma game with an exit option. Your strategy will compete against every other programmed strategy in a round-robin style tournament. 

Participants will write their strategies using Java, or appropriately detailed pseudo-code or traditional flowchart techniques, that researches can convert to Java. Participants will also be asked to complete a brief questionnaire that describes and collects summary information concerning the strategy submitted. The deadline to submit a programmed strategy is January 31, 2004. In addition to a chance of winning the $1000 cash prize, all participants will receive a copy of the tournament results and a draft copy of the final research report. 

If you are interested in participating, please go to http://www.unlv.edu/faculty2/phelan/IPDEO/ipdeoHome.html for a complete description of the tournament’ rules and requirements.

Thanks to the Prisoner's Dilemma Competition, Academy of Management , the Game Theory Society, and the Strategic Management Society for carrying this announcement.

RULES 

  1. Strategies must be submitted in Java, pseudo-code, or a sufficiently detailed flowchart that can be readily converted to Java.
     
  1. The winner-take-all prize of $1000 (USD) will be determined by how well the strategy performs in a round-robin style tournament. Each programmed strategy will be paired with every other programmed strategy (including itself) for three different game lengths and two different exit payoffs (E, see below) for a total of six treatments. An average points per move (APM) will be calculated for each treatment.  The tournament winner will be the strategy with the highest average APM across the six treatments.
     
  1. Programmed strategies will play the following symmetric prisoner’s dilemma game, where the payoffs in each cell of the table represent yours and your opponent’s earnings, respectively, for each trial of the game:

 

 

 

Opponent’s Choice

 

 

Cooperate

Compete

Your Choice

Cooperate

8, 8

0, 10

Compete

10, 0

3,3

 

  1. During any move a strategy may elect to exit the game. In this case, each strategy will earn the “exit payoff” for each move that remains. The exit payoff, which will not change during the course of a game, will be 4 for half the treatments and 7 for the other half. The exact value of this variable, E, will be available at the beginning of each game.
     
  1. The following variables will be available to each programmed strategy at the beginning of each trial:

    E            the exit payoff
    R            the alternative selected by you opponent’s strategy on the last trial (R=1 at start)
    C            the current move (C=1 at start)
    W           the cumulative points earned by your programmed strategy in the current pairing
    Note: E will not change during the course of the game. R, C and W will be updated each round.

    The game length will be one of three possible values that will remain fixed within a treatment. These values will be randomly selected at the start of the tournament from a uniform distribution between 15 and 250 moves (inclusive).

    Please note, all internal variable values will be reset at the start of each treatment.
     
  2. Each strategy must return:
    S             your strategy for current round (S=1 cooperate, S=2 defect, S=3 exit)

     
  1. The deadline for submitting a programmed strategy is January 31, 2004. Participants may submit only one (1) strategy for the tournament.
     
  1. Participants will be asked to complete a brief questionnaire prior to the beginning of the tournament that characterizes their programmed strategy.

DISCLAIMERS

  1. Researchers for this project and their close associates and relations are not eligible for the prize.
  2. The research team reserves the right to reject any strategy that:
    1. substantially duplicates another strategy already in the tournament
    2. cannot be adequately converted to Java code
  3. The research team reserves the right to change any aspect of the tournament subject to at least 7 days advanced notice to all participants of any such changes.
  4. The winner of the tournament shall be determined by the highest payoff per round across all trials. The judges' ruling is final and no correspondence will be entered into.

SAMPLE STRATEGIES

Pseudo-Code Java

 Tit for Tat

IF (C = 1) THEN S = 1

IF (C > 1) THEN S = R

 

public class titfortatStrat extends strategy2 implements strategyInterface2
{

//FIELDS
int E;
String stratName=
"Tit for Tat Always"; //all strategies must have name

//CONSTRUCTORS - this routine is called at the start of the tournament - E is the payoff for the exit option

public titfortatStrat(int E)
{
this.E=E;
}
//end constructor

//METHODS - all strategies must implement the play() method which is called every round of a game

public int play (int R, int C, int W )
{
int S=0;
S=R;

if (R==3) S=3; //required statement - game ends after opponent exits
return S;
}

public String getName()
{
return stratName;
}

} //end class


Cooperate with Exit Trigger

IF (C = 1) THEN S = 1

IF (C > 1) THEN

            IF (R = 1) THEN S = 1

            IF (R > 1) THEN S = 3

 


public
class cooperateWithTrigger extends strategy2 implements strategyInterface2
{

//FIELDS
int E;
String stratName=
"Cooperate with Trigger"; //all strategies must have name

//CONSTRUCTORS - this routine is called at the start of the tournament - E is the payoff for the exit option

public titfortatStrat(int E)
{
this.E=E;
}
//end constructor

//METHODS - all strategies must implement the play() method which is called every round of a game

public int play (int R, int C, int W )
{
int S=0;
if (R==1) S=1;
if (R>1) S=3;

if (R==3) S=3; //required statement - game ends after opponent exits
return S;
}

public String getName()
{
return stratName;
}

} //end class

CONTACTS
Please direct your enquiries to an appropriate member of the research team:

  1. Steven Phelan, steven.phelan@ccmail.nevada.edu (Researcher, Java programmer)
  2. Richard Arend, richard.arend@ccmail.nevada.edu (Researcher)
  3. Darryl Seale, dseale@unlv.nevada.edu (Researcher)

FAQs

to be determined

 

 

[Hit Counter]