Two C++ programs are required, genrules and fpa. In Java, they are combined in the FPA option (Learning menu, Induction submenu).They can also be used independently, by first generating the rules, then their conclusions.
Java interface:
This option behaves differently if there is a current data file or not.
Command lines:
Argument: FIS configuration file name
Optional arguments:
The created rules have a conclusion equal to one. They are stored in a file called 'system name'.rules, this filename appears in the Rules section of the output FIS configuration filename.
This program also creates an intermediate file called info.gen.
Command line example:
genrules iris-sr.fis
Creates the files config.fis (FIS) and info.gen.
or
genrules iriskm.fis -firiskmr.fis
Creates the file iriskmr.fis.
other example:
genrules irisreg.fis -firisregr.fis
Creates the file irisregr.fis
Arguments:
Optional arguments:
The meaning of these parameters is given in the user guide, section Learning Menu, Generate conclusions. The number of generated rules is highly dependent on them.
Command line example:
fpa iriskmr.fis iris
Creates the file configfpa.fis, which has 26 rules, while there were 81 (3*3*3*3) rules in iriskmr.fis.
or
fpa iriskmr.fis iris -d0.1 -e1 -firiskmrfpa.fis
which creates the file iriskmrf.fis with 55 rules.
other example:
fpa irisregr.fis iris -d0.0 -e1 -firisregfpa.fis
which creates the file irisregfpa.fis with 36 rules..
. These configuration files are usable in the inference process.
Java Interface:
Learning menu, Rule induction submenu, wm option
Command line
The wm program requires the following arguments:
Command line example
wm iriskmr.fis iris
Creates the file iriswm.fis with 20 rules
or
wm iriskmr.fis iris -owmiris.fis
which creates the same file called wmiris.fis
Java Interface: Learning menu, Rule induction submenu, Tree option
Command line, :fistree program
The fistree program requires two arguments and has several optional arguments.
Arguments:
Optional parameters:
Tree building, as well as tree pruning, creates two files. Output filenames are generated from the FIS configuration filename. The file with the .tree suffix contains a tree summary, which can be viewed in the java interface, or studied in a text editor. The second file is the corresponding FIS configuration file. It has a .fis suffix.
A file called result.fistree is also created. It is similar to the file result.simple created by the fisimple program (see 5), with some extra information specific to fuzzy trees.
The tree is a regression tree (used criterion=deviance) if the output declared in the FIS configuration file is fuzzy, with non discrete MFs. Otherwise it is a classification tree (used criterion=entropy), with inferred values corresponding to crisp classes if the output is crisp, with the flag classif=yes, or else to fuzzy classes.
Command line example:
fistree iriskmr.fis iris -s0.3
Creates iriskmr.fis.sum.tree and iriskmr.fis.tree.fis, which has 9 rules.
fistree iriskmr.fis iris -s0.1 -p1 -l0.1
Creates the two files above, plus two files for the pruned tree, iriskmr.fis.prunedsum.tree and iriskmr.fis.prunedtree.fis. In this case, the minimum membership threshold is lower than in the previous example, which produces a tree with 34 rules before pruning and 4 after pruning.
To generate the FIS configuration file corresponding to a given MF combination, two C++ programs are required, sethfpfis et hfpfis. In Java, they are combined in a single option.
In C++:
Three arguments are required:
Command line example:
sethfpfis iriskm.hfp "5 2 3 3" irissel.hfp
Creates the file irissel.hfp
Java Interface:
Learning menu, Partitions submenu, HFP MF submenu, Edit HFP file option
Arguments:
Command line example:
hfpfis iris irissel.hfp -e2 -m0.3 -oirissel.fis -liris.sommets
Creates the file irissel.fis with 13 rules.