openModeller
Version 1.5.0
|
#include <ruleset.hh>
Public Member Functions | |
GarpRuleSet (int size) | |
~GarpRuleSet () | |
int | size () |
int | numRules () |
void | clear () |
void | trim (int rules) |
void | filter (PerfIndex perfIndex, double threshold) |
GarpRule * | get (int index) |
int | insert (PerfIndex perfIndex, GarpRule *rule) |
int | replace (int index, GarpRule *rule) |
int | remove (int index) |
int | add (GarpRule *rule) |
int | findSimilar (GarpRule *rule) |
Scalar | getValue (const Sample &x) const |
void | performanceSummary (PerfIndex perfIndex, double *best, double *worst, double *average) |
void | gatherRuleSetStats (int gen) |
void | log () const |
Private Attributes | |
GarpRule ** | _rules |
int | _size |
int | _numRules |
Stores a set of Garp rules. Consists of a valid Garp model. Provide basic methods for manipulating the set of rules as a whole.
Definition at line 53 of file ruleset.hh.
GarpRuleSet::GarpRuleSet | ( | int | size | ) |
GarpRuleSet::~GarpRuleSet | ( | ) |
Definition at line 66 of file ruleset.cpp.
References _rules, and clear().
int GarpRuleSet::add | ( | GarpRule * | rule | ) |
Adds new rule at the end of rule set.
rule | Pointer to rule to be added to rule set. Once rule is added, rule set gains control over memory allocated to rule after insertion, i.e., rule set will deallocate memory for that rule when rule is eliminated. |
Definition at line 244 of file ruleset.cpp.
References _numRules, _rules, and _size.
Referenced by Garp::_setConfiguration(), Garp::colonize(), Garp::select(), TEST(), and testHelperAddRules().
void GarpRuleSet::clear | ( | ) |
Remove all rules from rule set.
Definition at line 91 of file ruleset.cpp.
References trim().
Referenced by Garp::select(), TEST(), and ~GarpRuleSet().
void GarpRuleSet::filter | ( | PerfIndex | perfIndex, |
double | threshold | ||
) |
Eliminates rules with performance below a certain threshold from the rule set.
perfIndex | Index on performance array that will be considered for elimination of rules. |
threshold | Minimum performance value a rule must present to remain in the rule set. Rules with performance value below threshold are removed from rule set. |
Definition at line 122 of file ruleset.cpp.
References _numRules, and _rules.
Referenced by Garp::iterate(), and TEST().
int GarpRuleSet::findSimilar | ( | GarpRule * | rule | ) |
Checks whether there is rule in the rule set that is similar to a given rule.
rule | Pointer to rule |
Definition at line 267 of file ruleset.cpp.
References _numRules, and _rules.
Referenced by Garp::keepFittest().
void GarpRuleSet::gatherRuleSetStats | ( | int | gen | ) |
Definition at line 344 of file ruleset.cpp.
References _numRules, _rules, GarpRule::getPerformance(), GarpRule::getPrediction(), PerfUtil, and GarpRule::type().
GarpRule * GarpRuleSet::get | ( | int | index | ) |
Returns pointer to rule at a given position in rule set
index | Index of rule to be returned |
Definition at line 201 of file ruleset.cpp.
References _numRules, and _rules.
Referenced by Garp::_getConfiguration(), Garp::crossover(), Garp::evaluate(), Garp::keepFittest(), Garp::mutate(), printPerfs(), Garp::select(), and TEST().
Returns rule prediction for a given data vector.
Definition at line 285 of file ruleset.cpp.
References _numRules, _rules, and GarpRule::getPrediction().
Referenced by Garp::getValue().
Inserts a rule in the rule set, preserving sort order
perfIndex | Index on performance array that will be considered during insertion to find correct position for new rule in the rule set. |
rule | pointer to the new rule being inserted. Rule set gains control over memory allocated to rule after insertion, i.e., rule set will deallocate memory for that rule when rule is eliminated. |
Definition at line 165 of file ruleset.cpp.
References _numRules, _rules, and GarpRule::getPerformance().
Referenced by Garp::keepFittest().
void GarpRuleSet::log | ( | ) | const |
Definition at line 332 of file ruleset.cpp.
References _numRules, _rules, Log::info(), Log::instance(), and GarpRule::log().
int GarpRuleSet::numRules | ( | ) |
Returns the number of rules currently stored in the rule set.
Definition at line 83 of file ruleset.cpp.
References _numRules.
Referenced by Garp::_getConfiguration(), Garp::colonize(), Garp::crossover(), Garp::evaluate(), Garp::keepFittest(), Garp::mutate(), printPerfs(), Garp::select(), and TEST().
void GarpRuleSet::performanceSummary | ( | PerfIndex | perfIndex, |
double * | best, | ||
double * | worst, | ||
double * | average | ||
) |
Returns performance statistics of the rule set.
perfIndex | Base calculation on this performance array index. |
best | Returns best performance value found in rule set. |
worst | Returns worst performance value found in rule set. |
average | Returns average performance of rules in rule set. |
Definition at line 304 of file ruleset.cpp.
References _numRules, _rules, and GarpRule::getPerformance().
Referenced by Garp::iterate(), Garp::select(), and TEST().
int GarpRuleSet::remove | ( | int | index | ) |
Remove rule at a given position in rule set
index | Index of rule to be removed. |
Definition at line 225 of file ruleset.cpp.
References _numRules, and _rules.
Referenced by Garp::keepFittest().
int GarpRuleSet::replace | ( | int | index, |
GarpRule * | rule | ||
) |
Replaces rule at a given position in rule set by another rule provided
index | Index of rule to be replaced. |
rule | Pointer to rule that will replace old one. Once rule is added, rule set gains control over memory allocated to rule after insertion, i.e., rule set will deallocate memory for that rule when rule is eliminated. |
Definition at line 212 of file ruleset.cpp.
References _numRules, and _rules.
Referenced by TEST().
int GarpRuleSet::size | ( | ) |
Returns size of rule set, i.e., the maximum number of rules that can be stored in the rule set.
Definition at line 75 of file ruleset.cpp.
References _size.
Referenced by GarpRuleSet(), and TEST().
void GarpRuleSet::trim | ( | int | rules | ) |
Remove last rules in a rule set, trimming it to a certain number of rules.
rules | Number of rules that will remain in the rule set. It will preserve the first rules and will eliminate remaining ones from rule set. |
Definition at line 99 of file ruleset.cpp.
References _numRules, _rules, and _size.
Referenced by clear(), Garp::iterate(), and TEST().
|
private |
Definition at line 185 of file ruleset.hh.
Referenced by add(), filter(), findSimilar(), GarpRuleSet(), gatherRuleSetStats(), get(), getValue(), insert(), log(), numRules(), performanceSummary(), remove(), replace(), and trim().
|
private |
Definition at line 183 of file ruleset.hh.
Referenced by add(), filter(), findSimilar(), GarpRuleSet(), gatherRuleSetStats(), get(), getValue(), insert(), log(), performanceSummary(), remove(), replace(), trim(), and ~GarpRuleSet().
|
private |
Definition at line 184 of file ruleset.hh.
Referenced by add(), GarpRuleSet(), size(), and trim().