(C++)
1.0.0
A multi-platform, modular, universal engine for embedding advanced AI in games.
|
The main class encapsulating the decision tree algorithm. More...
#include <DecisionTree.hh>
Public Member Functions | |
DecisionTree (std::unique_ptr< IVectorizer > vectorizer) | |
Constructs a new decision tree object. You have to specify a proper vectorizer object that will be used to calculate values used by considerations (conditions) for the nodes. | |
void | Print () |
Prints the decision tree in a very diagnostic fashion onto standard output (cout). | |
void | Serialize (IDecisionTreeSerializer< ISimulatedGameAction > &serializer) const |
Serializes the content of the tree into the passed serializer object. | |
void | Deserialize (IDecisionTreeSerializer< ISimulatedGameAction > &serializer) |
Populates the tree based on the given serializer. | |
void | Construct (Dataset &dataset, int maxDepth=decisionTreeMaxDepth) |
Runs the decision tree construction algorithm (C45). @dataset contains the training data. @maxDepth is The maximum number of nodes deep in the tree. Unless you are out of memory, it is advised to keep the depth relatively unlimited. | |
virtual std::unique_ptr< ISimulatedGameAction > | GetAction () const override |
Inherited via SimulatedGameHeuristic. | |
virtual bool | IsHeuristicSituation (const ISimulatedGameUnit &unit) const final |
Inherited via SimulatedGameHeuristic. | |
void | SetColumnName (int columnIndex, const std::string &name) |
This will make the Print() function output the name instead of Column[columnIndex]. This name does not affect anything else. | |
void | SetColumnNames (const std::initializer_list< std::string > &consecutiveNames) |
This will make the Print() function output the names instead of Column[columnIndex]. This name does not affect anything else. | |
DecisionTree (const DecisionTree &other)=delete | |
IVectorizer & | GetVectorizer () const |
Returns the reference to the currently used vectorizer by the DecisionTree. Do not use this method, if you have not assigned any. | |
void | SetVectorizer (std::unique_ptr< IVectorizer > vectorizer) |
Moves the vectorizer passed as parameter to the DecisionTree. The DecisionTree uses it to provide action via GetAction(). | |
The main class encapsulating the decision tree algorithm.