controllers.sampleMCTS

## Class SingleTreeNode

- java.lang.Object
- - controllers.sampleMCTS.SingleTreeNode

-     public class SingleTreeNode
      extends java.lang.Object

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `SingleTreeNode[]` | `children`
    `static double` | `egreedyEpsilon`
    `static double` | `epsilon`
    `static java.util.Random` | `m_rnd`
    `int` | `nVisits`
    `SingleTreeNode` | `parent`
    `StateObservation` | `state`
    `double` | `totValue`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SingleTreeNode(java.util.Random rnd)`
    `SingleTreeNode(StateObservation state, SingleTreeNode parent, java.util.Random rnd)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `backUp(SingleTreeNode node, double result)`
    `int` | `bestAction()`
    `SingleTreeNode` | `egreedy()`
    `SingleTreeNode` | `expand()`
    `boolean` | `finishRollout(StateObservation rollerState, int depth)`
    `void` | `mctsSearch(ElapsedCpuTimer elapsedTimer)`
    `int` | `mostVisitedAction()`
    `boolean` | `notFullyExpanded()`
    `double` | `rollOut()`
    `SingleTreeNode` | `treePolicy()`
    `SingleTreeNode` | `uct()`
    `double` | `value(StateObservation a_gameState)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### epsilon

          public static double epsilon

    - #### egreedyEpsilon

          public static double egreedyEpsilon

    - #### state

          public StateObservation state

    - #### parent

          public SingleTreeNode parent

    - #### children

          public SingleTreeNode[] children

    - #### totValue

          public double totValue

    - #### nVisits

          public int nVisits

    - #### m_rnd

          public static java.util.Random m_rnd

  - ### Constructor Detail

    - #### SingleTreeNode

          public SingleTreeNode(java.util.Random rnd)

    - #### SingleTreeNode

          public SingleTreeNode(StateObservation state,
                        SingleTreeNode parent,
                        java.util.Random rnd)

  - ### Method Detail

    - #### mctsSearch

          public void mctsSearch(ElapsedCpuTimer elapsedTimer)

    - #### treePolicy

          public SingleTreeNode treePolicy()

    - #### expand

          public SingleTreeNode expand()

    - #### uct

          public SingleTreeNode uct()

    - #### egreedy

          public SingleTreeNode egreedy()

    - #### rollOut

          public double rollOut()

    - #### value

          public double value(StateObservation a_gameState)

    - #### finishRollout

          public boolean finishRollout(StateObservation rollerState,
                              int depth)

    - #### backUp

          public void backUp(SingleTreeNode node,
                    double result)

    - #### mostVisitedAction

          public int mostVisitedAction()

    - #### bestAction

          public int bestAction()

    - #### notFullyExpanded

          public boolean notFullyExpanded()