public class SingleTreeNode
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected static double[] |
bounds |
SingleTreeNode[] |
children |
static double |
egreedyEpsilon |
static double |
epsilon |
static java.util.Random |
m_rnd |
double |
maxValue |
int |
nVisits |
SingleTreeNode |
parent |
StateObservation |
state |
static int |
totalIters |
double |
totValue |
int[][] |
visitedTiles |
Constructor and Description |
---|
SingleTreeNode(java.util.Random rnd,
int[][] visSpace) |
SingleTreeNode(StateObservation state,
SingleTreeNode parent,
java.util.Random rnd,
int[][] visSpace) |
Modifier and Type | Method and Description |
---|---|
void |
backUp(SingleTreeNode node,
double result) |
int |
bestAction() |
SingleTreeNode |
egreedy() |
SingleTreeNode |
expand() |
boolean |
finishRollout(StateObservation rollerState,
int depth) |
int |
getCurrentAction(SingleTreeNode node) |
int |
getMaxVisitedValue() |
int |
getNumberOfReverseActions(SingleTreeNode node) |
int |
getNumberOfSameActions(SingleTreeNode node) |
int |
getNumberOfUselessMoves(SingleTreeNode node) |
boolean |
isUselessMove(StateObservation oldState,
StateObservation newState) |
void |
mctsSearch(ElapsedCpuTimer elapsedTimer) |
int |
mostVisitedAction() |
boolean |
notFullyExpanded() |
double |
rollOut() |
SingleTreeNode |
treePolicy() |
SingleTreeNode |
uct() |
double |
value(StateObservation a_gameState) |
public static double epsilon
public static double egreedyEpsilon
public StateObservation state
public SingleTreeNode parent
public SingleTreeNode[] children
public double totValue
public double maxValue
public int nVisits
public int[][] visitedTiles
public static java.util.Random m_rnd
protected static double[] bounds
public static int totalIters
public SingleTreeNode(java.util.Random rnd, int[][] visSpace)
public SingleTreeNode(StateObservation state, SingleTreeNode parent, java.util.Random rnd, int[][] visSpace)
public void mctsSearch(ElapsedCpuTimer elapsedTimer)
public SingleTreeNode treePolicy()
public int getCurrentAction(SingleTreeNode node)
public int getNumberOfReverseActions(SingleTreeNode node)
public int getNumberOfSameActions(SingleTreeNode node)
public boolean isUselessMove(StateObservation oldState, StateObservation newState)
public int getNumberOfUselessMoves(SingleTreeNode node)
public int getMaxVisitedValue()
public SingleTreeNode expand()
public SingleTreeNode uct()
public SingleTreeNode egreedy()
public double rollOut()
public double value(StateObservation a_gameState)
public boolean finishRollout(StateObservation rollerState, int depth)
public void backUp(SingleTreeNode node, double result)
public int mostVisitedAction()
public int bestAction()
public boolean notFullyExpanded()