Decision Tree Toolkit: A Component-Based Library of Decision Tree Algorithms

This paper reports on the development of a library of decision tree algorithms in Java. The basic model of a decision tree algorithm is presented and then used to justify the design choices and system architecture issues. The library has been designed for flexibility and adaptability. Its basic goal was an open system that could easily embody parts of different conventional as well as new algorithms, without the need of knowing the inner organization of the system in detail. The system has an integrated interface (ClassExplorer), which is used for controlling and combining components that comprise decision trees. The ClassExplorer can create objects "on the fly", from classes unknown during compilation time. Conclusions and considerations about extensions towards a more visual system are also described.