This is the internal function that implements the Thrift's technique based
on a genetic algorithm. It is used to tackle regression tasks. Users do not need to call it directly,
but just use `frbs.learn`

and `predict`

.

1 2 3 4 | ```
GFS.Thrift(data.train, popu.size = 10, num.labels, persen_cross = 0.6,
persen_mutant = 0.3, max.gen = 10, range.data.ori, type.defuz = "WAM",
type.tnorm = "MIN", type.snorm = "MAX", type.mf = "TRIANGLE",
type.implication.func = "ZADEH")
``` |

`data.train` |
a matrix ( |

`popu.size` |
the size of the population which is generated in each generation. |

`num.labels` |
a matrix describing the number of linguistic terms. |

`persen_cross` |
a real number between 0 and 1 representing the probability of crossover. |

`persen_mutant` |
a real number between 0 and 1 representing the probability of mutation. |

`max.gen` |
the maximal number of generations for the genetic algorithm. |

`range.data.ori` |
a matrix containing the ranges of the original data. |

`type.defuz` |
the type of the defuzzification method. For more detail, see |

`type.tnorm` |
the type of t-norm. For more detail, please have a look at |

`type.snorm` |
the type of s-norm. For more detail, please have a look at |

`type.mf` |
the type of shape of membership function. See |

`type.implication.func` |
the type of implication function. See |

This method was developed by Thrift using Mamdani's model as fuzzy IF-THEN rules. In this method, we consider a table as a genotype with alleles that are fuzzy set indicators over the output domain. The phenotype is produced by the behavior produced by the fuzzification, max-* composition, and defuzzification operations. A chromosome (genotype) is formed from the decision table by going rowwise and producing a string of numbers from the code set. Standard crossover and mutation operators can act on these string.

P. Thrift, "Fuzzy logic synthesis with genetic algorithms", In Proceedings of the Fourth International Conference on Genetic Algorithms (ICGA91), San Diego (United States of America), pp. 509 - 513 (1991).

`GFS.Thrift.test`

, `frbs.learn`

, and `predict`

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.