grail (C  1.0.0
A multi-platform, modular, universal engine for embedding advanced AI in games.
Grail.Simulation.ISimulatedGameHeuristic Interface Reference

Interface that encapsulates an algorithm responsible for action-selection inside SimulatedGame (MCTS). This action-selection is performed in certain situations instead of sampling from the whole action space. The goal is to reduce the combinatorial complexity or just provide scripted behavior in certain moments of the game. More...

Inheritance diagram for Grail.Simulation.ISimulatedGameHeuristic:

Public Member Functions

ISimulatedGameAction GetAction ()
 If @IsHeuristicSituation() function returns true, then this method returns action to be executed. More...
 
bool IsHeuristicSituation (in ISimulatedGameUnit unit)
 This function tests whether the heuristic should apply in the current moment in the game. More...
 

Detailed Description

Interface that encapsulates an algorithm responsible for action-selection inside SimulatedGame (MCTS). This action-selection is performed in certain situations instead of sampling from the whole action space. The goal is to reduce the combinatorial complexity or just provide scripted behavior in certain moments of the game.

Member Function Documentation

◆ GetAction()

ISimulatedGameAction Grail.Simulation.ISimulatedGameHeuristic.GetAction ( )

If @IsHeuristicSituation() function returns true, then this method returns action to be executed.

Returns

Implemented in Grail.Simulation.DecisionTree.

◆ IsHeuristicSituation()

bool Grail.Simulation.ISimulatedGameHeuristic.IsHeuristicSituation ( in ISimulatedGameUnit  unit)

This function tests whether the heuristic should apply in the current moment in the game.

Parameters
unit
Returns
If true then the action will be chosen accordint to the heuristic. If false: it will be chosen according to the MCTS selection formula.

Implemented in Grail.Simulation.DecisionTree.


The documentation for this interface was generated from the following file: