EECS/MSAI 349 Problem Set 1

Due 11:59PM Wednesday October 17

Updated Oct 15 21:45:00 CDT 2018


In this assignment, you will work in teams of 1 or 2 to implement decision trees. You can collaborate within your partner on the code and write-up, but each student must turn in an individual homework write-up. You may discuss the homework with other teams, but do not take any written record from the discussions. Also, do not copy any source code from the Web.

The algorithm you should implement is the same as that given in the decision tree lecture slides (slide 24, the "ID3" algorithm).

We have written code to read in the data for you (parse.py). It represents each example as a dictionary, with attributes stored as key:value pairs. The target output is stored as an attribute with the key "Class".

Guidelines

Steps to complete the homework

The correct functionality of your code is then worth ten points, making a total of fifteen points for the assignment.

One last suggestion: You may find it helpful to consult the starter code from 2016's decision tree homework for reference, but be aware that that assignment involved continuous attributes and used a much more complex design than you will need for this homework.

Submission Instructions

You'll turn in your homework as a single zip file, in Canvas. Specifically:

  1. Create a single pdf file ps1.pdf with the answers to the questions above, and your graphs.
  2. Create a single ZIP file containing:
  3. Turn the zip file in under Problem Set 1 in Canvas.