Learn R Programming

RoughSets (version 1.2-1)

FS.one.reduct.computation: Computing one reduct from a discernibility matrix

Description

It is a function for computing one reduct from a discernibility matrix - it can use the greedy heuristic or a randomized (Monte Carlo) search.

Usage

FS.one.reduct.computation(discernibilityMatrix, greedy = TRUE, power = 1)

Arguments

discernibilityMatrix
a "DiscernibilityMatrix" class representing the discernibility matrix of RST and FRST.
greedy
a boolean value indicating whether the greedy heuristic or a randomized search should be used in computations.
power
a numeric representing a parameter of the randomized search heuristic.

Value

  • A class "ReductSet".

See Also

BC.discernibility.mat.RST and BC.discernibility.mat.FRST.

Examples

Run this code
########################################################
## Example 1: Generate one reducts and
##            a new decision table using RST
########################################################
data(RoughSetData)
decision.table <- RoughSetData$hiring.dt

## build the decision-relation discernibility matrix
res.1 <- BC.discernibility.mat.RST(decision.table, range.object = NULL)

## generate all reducts
reduct <- FS.one.reduct.computation(res.1)

## generate new decision table
new.decTable <- SF.applyDecTable(decision.table, reduct, control = list(indx.reduct = 1))

##############################################################
## Example 2: Generate one reducts and
##            a new decision table using FRST
##############################################################
data(RoughSetData)
decision.table <- RoughSetData$hiring.dt

## build the decision-relation discernibility matrix
control <- list(type.relation = c("crisp"),
                type.aggregation = c("crisp"),
                t.implicator = "lukasiewicz", type.LU = "implicator.tnorm")
res.2 <- BC.discernibility.mat.FRST(decision.table, type.discernibility = "standard.red",
                                    control = control)

## generate single reduct
reduct <- FS.one.reduct.computation(res.2)

## generate new decision table
new.decTable <- SF.applyDecTable(decision.table, reduct, control = list(indx.reduct = 1))

Run the code above in your browser using DataLab