1 #ifndef GRAIL_C45_ALGORITHM_H
2 #define GRAIL_C45_ALGORITHM_H
4 #include "../DT/DecisionNode.h"
5 #include "C45IterationParameters.h"
6 #include "C45ValueDecisionCounter.h"
8 #include <unordered_set>
15 class ISimulatedGameAction;
30 std::unique_ptr<DecisionNode<ISimulatedGameAction>>
ConstructTree(
Dataset& dataset,
int maxDepth = decisionTreeMaxDepth);
41 std::unique_ptr<DecisionNode<ISimulatedGameAction>> PerformSplit(
C45IterationParameters& params,
int bestColumnIndex);
44 std::unordered_set<int> usedColumns;
This class encapsulates the C4.5 Algorithm used to generate a decision tree (see Grail....
Definition: C45Algorithm.h:22
const std::unordered_set< int > & GetUsedColumns() const
Gets indices of columns in the dataset used for learning with the C4.5 Algorithm that were actually u...
Definition: C45Algorithm.cpp:132
std::unique_ptr< DecisionNode< ISimulatedGameAction > > ConstructTree(Dataset &dataset, int maxDepth=decisionTreeMaxDepth)
Constructs a new decision tree based on the provided dataset. The decision type is given by generic a...
Definition: C45Algorithm.cpp:53
Definition: Dataset.hh:20
Base class for all actions in SimulatedGame. Derive from it for your actions.
Definition: ISimulatedGameAction.hh:41
The whole class should be INTERNAL; part of the private interface.
Definition: C45IterationParameters.h:13