edu.stanford.multiagent.gamer
Class CoordinationGame

java.lang.Object
  |
  +--edu.stanford.multiagent.gamer.ParameterizedObject
        |
        +--edu.stanford.multiagent.gamer.Game
              |
              +--edu.stanford.multiagent.gamer.PureCoordinationMatrix
                    |
                    +--edu.stanford.multiagent.gamer.CoordinationGame
Direct Known Subclasses:
CollaborationGame

public class CoordinationGame
extends PureCoordinationMatrix

Return an instance of a coordination game. Note that our definition of coordination games allows for the values of different equilibria to be Pareto-ordered but not necessarily all the same. If it is desired that all equilibria yield the same payoff, the collaboration game should be used. Both the coordination game and the collaboration game are common payoff.


Field Summary
protected static Parameters.ParamInfo[] cgParam
           
 
Fields inherited from class edu.stanford.multiagent.gamer.Game
actions, DEFAULT_HIGH, DEFAULT_LOW, intMult, intPayoffs, players, pMaxPayoff, pMinPayoff, pNormalize, symActions
 
Fields inherited from class edu.stanford.multiagent.gamer.ParameterizedObject
parameters
 
Constructor Summary
CoordinationGame()
           
 
Method Summary
protected  void checkParameters()
          Checks if Parameter values are consistent.
 void doGenerate()
          Generate one payoff for every outcome, making sure that all of the equilibrium outcomes (those on the diagonal of the matrix) are higher than all of the non-equilibrium outcomes.
protected  java.lang.String getGameHelp()
          Return help screen information about the given game class.
 void initialize()
          Initializes using preset parameter values
 void randomizeParameters()
          Sets values of any unset parameters randomly.
 
Methods inherited from class edu.stanford.multiagent.gamer.PureCoordinationMatrix
getPayoff, initMatrix, setPayoff
 
Methods inherited from class edu.stanford.multiagent.gamer.Game
generate, getAutoNormPayoff, getDescription, getHelp, getName, getNormPayoff, getNumActions, getNumActions, getNumPlayers, getOutputPayoff, getOutputPayoff, getPayoff, getRangeHelp, parseActions, parsePlayersActions, parsePlayersSameNumberActions, parseSameNumberActions, setDescription, setName, setNormMinAndMax, setNumActions, setNumActions, setNumPlayers, writeGame
 
Methods inherited from class edu.stanford.multiagent.gamer.ParameterizedObject
getBooleanParameter, getDoubleParameter, getLongParameter, getParamDescription, getParameter, getParameters, getStringParameter, setParameter, setParameter, setParameters, setParameters
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cgParam

protected static Parameters.ParamInfo[] cgParam
Constructor Detail

CoordinationGame

public CoordinationGame()
                 throws java.lang.Exception
Method Detail

initialize

public void initialize()
                throws java.lang.Exception
Description copied from class: Game
Initializes using preset parameter values

Overrides:
initialize in class Game
Throws:
java.lang.Exception

checkParameters

protected void checkParameters()
                        throws java.lang.Exception
Description copied from class: ParameterizedObject
Checks if Parameter values are consistent. Must be implemented by every non-abstract subclass of ParameterizedObject.

Specified by:
checkParameters in class ParameterizedObject
Throws:
java.lang.Exception - if anything is wrong with the parameter values

randomizeParameters

public void randomizeParameters()
Description copied from class: ParameterizedObject
Sets values of any unset parameters randomly. Can and should be overridden in subclasses to handle a non-uniform distribution and for constraints on parameters.

Overrides:
randomizeParameters in class ParameterizedObject

getGameHelp

protected java.lang.String getGameHelp()
Description copied from class: Game
Return help screen information about the given game class.

Specified by:
getGameHelp in class Game

doGenerate

public void doGenerate()
Generate one payoff for every outcome, making sure that all of the equilibrium outcomes (those on the diagonal of the matrix) are higher than all of the non-equilibrium outcomes.

Specified by:
doGenerate in class ParameterizedObject