Skip to the content.

COMP364 Final Project

Introduction

The objective of the final project is to implement, write up, and present an AI-related experiment involving creativity, research, experimentation, and programming. Students may work individually or in teams of two or three people. Any suitable AI-related topic may be selected for the project. A number of suggested topics are provided below, but other topics are also possible — please consult with the instructor to ensure the suitability of your proposed topic. The main requirements for a good topic are:

  1. It provides potential for substantial programming, and
  2. It provides potential for conducting interesting experiments.

The time allocated for work on the final project includes three class meetings spread over the last three weeks of the semester. The total amount of effort expected for the project is equivalent to about 1.5 weeks of work for this course, or roughly 12 hours of work outside of class time.


Grading

Grading will be structured as follows:


Milestones

The project consists of three milestones: FP1, FP2, and FP3. FP1 and FP2 are ungraded checkpoints designed to help keep your project on schedule. FP3 constitutes the final submission of code, report, and presentation/poster. The specific requirements for each milestone are as follows:


Potential Project Topics

Below is a list of suggested project topics:

  1. Homework Extensions: Select an optional extension from one of the course homework assignments and thoroughly analyze and report on the results.
  2. Landmark-Based Search: Implement A* search with a landmark-based heuristic, and compare its performance against other search algorithms on real road network data.
  3. Model Comparison: Compare the performance of a decision tree and a neural network on a classification dataset of your choice.
  4. Decision Tree Enhancements: Extend your decision tree implementation from HW2 to handle missing values and numeric data, and implement tree pruning. Conduct experiments to quantify whether and by how much pruning improves performance.
  5. Backpropagation Implementation: Manually implement the backpropagation learning algorithm for a feedforward neural network from scratch, and conduct experiments to demonstrate its efficacy.
  6. Convolutional Neural Networks: Implement a convolutional neural network (CNN) for image classification, and experiment with how varying key hyperparameters impacts model performance.
  7. Choose your own topic: You are free to suggest any other topic to the instructor. It will likely be approved provided it builds on material studied in this course.

Final Remarks