Computer Science 385
Design and Analysis of Algorithms

Spring 2019, Siena College

Academic Celebration Project
Group Formation: 4:00 PM, Monday, March 18, 2019
Proposals Due: 4:00 PM, Monday, March 25, 2019
Progress Reports Due: 4:00 PM, Monday, April 8, 2019
Event Date: Friday, April 26, 2019
Final Submission: 4:00 PM, Monday, April 29, 2019

There is an exciting event taking place at Siena for the first time this semester: an all-day Academic Celebration on Friday, April 26, 2019. Classes are cancelled for that day, and instead everyone will participate in a variety of talks, poster sessions, demonstrations, and other events sharing and celebrating your academic achievements and those of your fellow students and the faculty. Plan to be on campus the whole day.

There will be a session dedicated to our course at a time to be determined in a location to be determined. Everyone is required to attend and participate in our session, which will be open to the campus community. The goal of this project is to learn about a few algorithms, implement them, apply them to some interesting data, and share what you learn at the Academic Celebration.

This project is worth 150 points in the problem sets category.

As this is the first Academic Celebration, it's also the first time an Algorithms class is participating in it, so watch this page and listen in class for updates, clarifications, and other news related to this project.

Group Formation and Repositories

Everyone is strongly encouraged, but not required, to form groups for this project. Groups of 3 should work well, but requests to form larger groups will be considered in cases where the work proposed is sufficient to justify a larger team. Groups must be formed by 4:00 PM, Monday, March 18, 2019 by an email to jteresco AT with the names and GitHub ids of all team members. You will receive a reply with the link to follow to set up your GitHub repository. Only one member of the group should follow the link to set up the repository on GitHub, then others will be granted write access.

Project Requirements

The goal of this project is to study, implement, and analyze algorithms beyond what we have time to discuss in class, labs, and problem sets. Here are the guidelines:


The project requies a series of deliverables over the last several weeks of the semester.


The first deliverable is a written proposal, due at 4:00 PM, Monday, March 25, 2019. This should be done by creating a file in your GitHub repository. The preferred mechanism is a document in GitHub markdown, but you are also permitted to commit and push a PDF document proposal.pdf to your repository. You are encouraged to discuss your ideas right away. Your proposal, at most one page in length, should describe your proposed project, what specifically you plan to investigate and implement, and how you plan to go about it. Describe the major milestones for your project, a rough schedule for achieving these milestones, and which milestones you believe are most important for your project to be considered a success. If you will need access to any special hardware or software, include that in your proposal. Your proposal should convince me that you have an interesting, worthwhile, and relevant topic and that it is feasible in the time available.

The proposal is worth 20 points.

Progress Report

By 4:00 PM, Monday, April 8, 2019, submit a progress report. This may again be a GitHub markdown file or a PDF document progress.pdf committed and pushed to your repository. This should outline your progress to date, indicate any changes to your plans since the proposal, and include a more specific timetable for completion of the project.

The progress report is worth 20 points.

Academic Celebration Presentations

Everyone is required to take part in the presentation of their group's work at the Academic Celebration on Friday, April 26, 2019. Presentations could take the form of brief talks, posters, or other demonstrations of your work. You should aim to find a presentation format or formats that works well for your group and project. It needs to work well for two audiences: those with a good understanding of algorithms (your classmates, other upper-level Computer Science students, faculty), and others in attendance who would have very limited exposure to algorithms. Your task is to teach those in attendance a little bit about the algorithms you have studied and why they are interesting to you, and possibly, to them.

The Academic Celebration presentation is worth 30 points.

Final Submission

By 4:00 PM, Monday, April 29, 2019, all projects materials must be submitted by commiting and pushing to your GitHub repository. The submission should include all of your code, presentation materials, a writeup of your findings (again, either as a GitHub markdown document or a PDF document final.pdf), and any supporting materials such as data sets, empirical analysis results, solutions obtained, etc.

Your final submission is worth the remaining 80 points.