edu.princeton.repeatedgames.rgsolve.games.specialgames
Class ArmsRace

java.lang.Object
  extended by edu.princeton.repeatedgames.rgsolve.games.Game
      extended by edu.princeton.repeatedgames.rgsolve.games.specialgames.ArmsRace
All Implemented Interfaces:
java.io.Serializable

public class ArmsRace
extends Game
implements java.io.Serializable

An "Arms Race", where action profile (a1, a2) yields military expenditures Xi = max(i) * ai/(mi-1). Utility is then U(i) = threat(i)*(Xi - Xj) - fatigue(i) * Xi^2.

See Also:
Serialized Form

Field Summary
(package private)  double fatigue1
          quadratic cost of expenditure to player 1
(package private)  double fatigue2
          quadratic cost of expenditure to player 2
(package private)  double max1
          maximum expenditure of player 1
(package private)  double max2
          maximum expenditure of player 2
private static long serialVersionUID
          Serialization ID
(package private)  double threat1
          Linear value of expenditure excess of player 1 relative to 2
(package private)  double threat2
          Linear value of expenditure excess of player 2 relative to 1
 
Fields inherited from class edu.princeton.repeatedgames.rgsolve.games.Game
description, extension
 
Constructor Summary
ArmsRace(int m1, int m2, double delta, double threat1, double threat2, double fatigue1, double fatigue2, double max1, double max2)
           
 
Method Summary
 double payoff1(int a1, int a2)
          payoff to player 1
 double payoff2(int a1, int a2)
          payoff to player 2
 
Methods inherited from class edu.princeton.repeatedgames.rgsolve.games.Game
actionUsable, copyUsableActions, delta, m, m1, m2, payoff, setActionUsable, setDescription, setDiscount, usableActionsDefined
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
Serialization ID

See Also:
Constant Field Values

max1

double max1
maximum expenditure of player 1


threat1

double threat1
Linear value of expenditure excess of player 1 relative to 2


fatigue1

double fatigue1
quadratic cost of expenditure to player 1


max2

double max2
maximum expenditure of player 2


threat2

double threat2
Linear value of expenditure excess of player 2 relative to 1


fatigue2

double fatigue2
quadratic cost of expenditure to player 2

Constructor Detail

ArmsRace

public ArmsRace(int m1,
                int m2,
                double delta,
                double threat1,
                double threat2,
                double fatigue1,
                double fatigue2,
                double max1,
                double max2)
Method Detail

payoff1

public double payoff1(int a1,
                      int a2)
Description copied from class: Game
payoff to player 1

Specified by:
payoff1 in class Game
Parameters:
a1 - player 1 action
a2 - player 2 action
Returns:
the payoff to player 1

payoff2

public double payoff2(int a1,
                      int a2)
Description copied from class: Game
payoff to player 2

Specified by:
payoff2 in class Game
Parameters:
a1 - player 1 action
a2 - player 2 action
Returns:
the payoff to player 2