This function implements the Dynamically Adjusted Approximate Reducts heuristic (DAAR) for feature selection based on RST. The algorithm modifies the greedy approach to selecting attributes by introducing an additional stop condition. The algorithm stops when a random probe (permutation) test fails to reject a hypothesis that the selected attribute introduces illusionary dependency in data (in a context of previously selected attributes).
1 2 3 4 5 6  FS.DAAR.heuristic.RST(decision.table, attrDescriptions = attr(decision.table,
"desc.attrs"), decisionIdx = attr(decision.table, "decision.attr"),
qualityF = X.gini, nAttrs = NULL,
allowedRandomness = 1/ncol(decision.table),
nOfProbes = ncol(decision.table), permsWithinINDclasses = FALSE,
inconsistentDecisionTable = NULL)

decision.table 
an object of a 
attrDescriptions 
a list containing possible values of attributes (columns) in \
codedecision.table. It usually corresponds to 
decisionIdx 
an integer value representing an index of the decision attribute. 
qualityF 
a function used for computation of the quality of attribute subsets. Currently, the following functions are included:

nAttrs 
an integer between 1 and the number of conditional attributes. It indicates
the attribute sample size for the Monte Carlo selection of candidating attributes.
If set to 
allowedRandomness 
a threshold for attribute relevance. Computations will be terminated when the relevance of a selected attribute fall below this threshold. 
nOfProbes 
a number of random probes used for estimating the attribute relevance (see the references). 
permsWithinINDclasses 
a logical value indicating whether the permutation test should be conducted within indescernibility classes. 
inconsistentDecisionTable 
logical indicating whether the decision table is suspected
to be inconsistent or 
As in the case of FS.greedy.heuristic.reduct.RST
the implementation can use
different attribute subset quality functions (parameter qualityF
) and Monte Carlo
generation of candidating attributes (parameter nAttrs
).
A class "FeatureSubset"
that contains the following components:
reduct
: a list representing a single reduct. In this case, it could be a superreduct or just a subset of features.
type.method
: a string representing the type of method which is "greedy.heuristic"
.
type.task
: a string showing the type of task which is "feature selection"
.
model
: a string representing the type of model. In this case, it is "RST"
which means rough set theory.
relevanceProbabilities
: an intiger vector with estimated relevances of selected attributes.
epsilon
: a value between 0 and 1 representing the estimated approximation threshold.
Andrzej Janusz
A. Janusz and S. Stawicki, "Applications of Approximate Reducts to the Feature Selection Problem", Proceedings of International Conference on Rough Sets and Knowledge Technology (RSKT), vol. 6954, p. 45  50 (2011).
A. Janusz and D. Ślęzak, "Random Probes in Computation and Assessment of Approximate Reducts", Proceedings of RSEISP 2014, Springer, LNCS vol. 8537: p. 53  64 (2014).
FS.greedy.heuristic.reduct.RST
and FS.reduct.computation
.
1 2 3 4 5 6 7 8 9 10 11 12  ###################################################
## Example 1: Evaluate reduct and generate
## new decision table
###################################################
data(RoughSetData)
decision.table < RoughSetData$hiring.dt
## evaluate a single reduct
res.1 < FS.DAAR.heuristic.RST(decision.table)
## generate a new decision table corresponding to the reduct
new.decTable < SF.applyDecTable(decision.table, res.1)

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.
All documentation is copyright its authors; we didn't write any of that.