Undergrad Research Project - Hardware Optimization of Decision Tree Learning

Spring 2016

Abhinand Sukumar
Shawn Blanton
Project description

The goal of this research project is to design and implement a Gini impurity calculation accelerator on FPGA. The Gini impurity calculation is a crucial step in the training phase of decision trees, and is a good target for acceleration on hardware due to available parallelism and a clever optimization of the Gini impurity calculation function. The project is broken down into a few main stages: 1) Establishing a MATLAB software reference, 2) Implementing a working Decision Tree Training Phase accelerator in simulation, and 3) Implementing a working Decision Tree Training Phase accelerator on hardware. There are also additional optional tasks if time permits, such as a comparison between the Gini impurity and Entropy measures, and the integration of training and evaluation phases on hardware. The student will also attend some ACTL group meetings and have the opportunity to report his/her progress and findings.


1) Introduce and allow the student to familiarize themselves with the FPGA development environment, 2) Gain a deeper understanding of the Decision Tree training process, 3) Offer insight on the general life cycle of research.

Return to project list