edu.stanford.multiagent.gamer
Class RandomGraphicalGame

java.lang.Object
  |
  +--edu.stanford.multiagent.gamer.ParameterizedObject
        |
        +--edu.stanford.multiagent.gamer.Game
              |
              +--edu.stanford.multiagent.gamer.GraphicalGame
                    |
                    +--edu.stanford.multiagent.gamer.RandomGraphicalGame

public class RandomGraphicalGame
extends GraphicalGame

Generate a Graphical Game with any given structure as long as the structure has been implemented as a graph class. For example, can be used to create Ring Structured Games and Tree Structured Games. This is a working version of the graphical game with random payoffs. Other styles of payoffs are not yet implemented.


Field Summary
 
Fields inherited from class edu.stanford.multiagent.gamer.GraphicalGame
graph
 
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
RandomGraphicalGame()
           
 
Method Summary
protected  void checkParameters()
          Checks if Parameter values are consistent.
 void doGenerate()
          Generate the matrices for each node of the graph graph and the graph connecting neighbors to each other.
protected  java.lang.String getGameHelp()
          Return help screen information about the given game class.
protected  void initGraph()
          Initialize a graph with the number of nodes equal to the number of players.
 void initialize()
          Initializes using preset parameter values
 void randomizeParameters()
          Sets values of any unset parameters randomly.
 void setParameters(edu.stanford.multiagent.gamer.ParamParser p, boolean randomize)
          Sets multiple parameters at once using a ParamParser.
 
Methods inherited from class edu.stanford.multiagent.gamer.GraphicalGame
addEdge, addEdge, getPayoff, setNodeMatrix, writeGame
 
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
 
Methods inherited from class edu.stanford.multiagent.gamer.ParameterizedObject
getBooleanParameter, getDoubleParameter, getLongParameter, getParamDescription, getParameter, getParameters, getStringParameter, setParameter, setParameter, setParameters
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RandomGraphicalGame

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

setParameters

public void setParameters(edu.stanford.multiagent.gamer.ParamParser p,
                          boolean randomize)
                   throws java.lang.Exception
Description copied from class: ParameterizedObject
Sets multiple parameters at once using a ParamParser.

Overrides:
setParameters in class ParameterizedObject
Parameters:
p - the ParamParser containing the parameters and their values
randomize - should be set to true if it is desired that any unset parameters be randomized
Throws:
java.lang.Exception

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

initGraph

protected void initGraph()
Initialize a graph with the number of nodes equal to the number of players.

Specified by:
initGraph in class GraphicalGame

doGenerate

public void doGenerate()
Generate the matrices for each node of the graph graph and the graph connecting neighbors to each other.

Specified by:
doGenerate in class ParameterizedObject