Fuzzy Logic Trees Homepage

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.

By Malcolm Mclean (Homepage)

Site Contents

Introduction to Fuzzy Logic Trees
Basic Concepts of Fuzzy Logic Trees
The Algorithm
Notes on the Algorithm
The Implementation

Java Tree Viewer

BuildFuzzy Program source

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

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