** **

Fuzzy logic trees are a machine learning method that applies the principles of fuzzy logic to standard logical decision trees. They are trained by simulated annealing. This website will be updated with results and succesful applications. The fuzzy operation used is the biased ordered weighted average. Each node is binary, and moves continuously from AND-like to OR-like operation. The less important input is interpolated towards the dominant one. A C program to generate the trees is available, with an auxiliary Java program for viewing the trees graphically.

Basic Concepts of Fuzzy Logic Trees

The Algorithm

Notes on the Algorithm

The Implementation

Java Tree Viewer

ViewFuzzy.jar

buildfuzzy.c buildfuzzy.h |
Simulated annealing main loop |

csv.c csv.h |
Loads a csv file |

csvtodataset.c csvtodataset.h |
Coverts csv to internal data format |

dataset.c dataset.h |
Internal data format |

fuzzylogictree.c fuzzylogictree.h |
Logic for tree |

fuzzyops.c fuzzyops.h |
Fuzzy logic operations |

traintree.c |
main program file |

read.me |

Windows executable

* All software provided free. Please cite my Master's thesis * ** Fuzzy Logic Trees, University of Leeds, Faculty of Biological Sciences (2005), by Malcolm A. McLean **