For the final project, you will submit a 2–3 page report describing a project related to the class. In particular the project should compare the performance of two algorithms discussed in class (one can be an algorithm implemented as part of the problem sets, but not both). We study primarily algorithms for inference and learning. However, there are other unexplored topics in the book including decision making, clique tree construction, causality, and continuous-valued variables.
Select two algorithms and determine a suitable set of experiments to elicit the differences between the two. Implement the methods and run the experiments. Then, submit a report on your findings along with the code. Your report should not repeat material in the book or from class. Assume the reader already knows this material. Instead, concentrate on describing what you did and on a good analysis of the experimental results.
Draw conclusions supported by the data. Your first run of experiments should suggest what additional experiments you should perform. You will be judged based on how well you design your experiments to illicit the differences between the two algorithms. If one algorithm looks to be always better, then you probably need to select different experiments to show in which situations the other algorithm is a better choice.
Your assignment will be graded according to the following criteria.
writing clarity: 5
technical correctness: 8
experimental design: 9
quality of analysis: 8 (+)
maximum subscore: 30
complexity: 10
relationship to CS272: 10 (×)
maximum multiplier: 100
total score: subscore × multiplier / 100
You should e-mail or talk to me to get a sense of how well your project would fit with CS 227 before beginning.