FS.permutation.heuristic.reduct.RST {RoughSets}R Documentation

The permutation heuristic algorithm for computation of a decision reduct

Description

It is a function implementing the permutation heuristic approach based on RST.

Usage

FS.permutation.heuristic.reduct.RST(
  decision.table,
  permutation = NULL,
  decisionIdx = ncol(decision.table)
)

Arguments

decision.table

an object of a "DecisionTable" class representing a decision table. See SF.asDecisionTable.

permutation

a logical value, an integer vector orNULL (the default). If an integer vector with a length equal the cardinality of the conditional attribute set of the decision table is given (it must contain a permutation of integers from 1:(ncol(decision.table) - 1) ), then it will define the elimination order. Otherwise, if permutation is NULL or TRUE a random permutation will be generated. In the case when permutation is FALSE, the elimination will be performed in the order of attributes in the decision system.

decisionIdx

an index of the decision attribute. The default value is the last column of a decision table.

Details

Basically there are two steps in this algorithm which are

More details regarding this algorithm can be found in (Janusz and Slezak, 2012).

Additionally, SF.applyDecTable has been provided to generate new decision table.

Value

A class "FeatureSubset" that contains the following components:

Author(s)

Andrzej Janusz

References

A. Janusz and D. Ślęzak, "Utilization of Attribute Clustering Methods for Scalable Computation of Reducts from High-Dimensional Data". Proceedings of Federated Conference on Computer Science and Information Systems - FedCSIS, p. 295 - 302 (2012).

Andrzej Janusz and Dominik Slezak. "Rough Set Methods for Attribute Clustering and Selection". Applied Artificial Intelligence, 28(3):220–242, 2014.

See Also

FS.quickreduct.RST and FS.reduct.computation.

Examples

###################################################
## Example 1: Generate reduct and new decision table
###################################################
data(RoughSetData)
decision.table <- RoughSetData$hiring.dt

## generate single reduct
res.1 <- FS.permutation.heuristic.reduct.RST(decision.table,
                                             permutation = NULL,
                                             decisionIdx = 5)
print(res.1)

res.2 <- FS.permutation.heuristic.reduct.RST(decision.table,
                                             permutation = 4:1,
                                             decisionIdx = 5)
print(res.2)

## generate new decision table according to the reduct
new.decTable <- SF.applyDecTable(decision.table, res.1)

[Package RoughSets version 1.3-8 Index]