An important component of this course is your final project. The goal of the final project is to explore new ideas in optimization in the broad sense. The ideal outcome would be a paper that would be a seed for a strong conference paper. Projects will be done in pairs. You should find someone to team up with and start brainstorming now. The projects will require submitting three milestones. Milestones should be prepared in LaTeX and the PDF should be submitted to canvas.
Milestone 1: Project proposal (due Wednesday, February 24th at 23:59)
Write a 1-2 page document that describes the plan for your project. The document should include (note that depending on your project, some items might not be applicable):
- Collaboration: projects will be done in pairs; if there is an odd number of student, the remaining student will be paired with Prof. Singer. Your proposal should contain the name of both people in the par and how you intend to split up the work.
- Model/Problem: what is the optimization problem you are trying to solve, which model does it stem from?
- Data: if you are going to use data to evaluate algorithms, describe which datasets you are planning to use and how you are going to collect it.
- Deliverables: what is/are the end product(s) of your project? For example, is it a new algorithm? a theoretical guarantee about an optimization algorithm? an implementation of an algorithm? etc.
- Next steps: which next steps are you planning to take? are their simple heuristics or simple cases you could consider first? already existing algorithms you could compare yourself to?
Milestone 2: Status report (due Wednesady, March 30th at 23:59)
Building upon your proposal, the status report should be a document (3 to 5 pages) which should contain:
- Any change you had to make regarding the focus or goal of your project. Explain why you had to make those changes.
- Data: by now, you should have collected all the data that you will need to complete your project. Describe the difficulties you encountered (if any) in the data collection process.
- Completed steps: which of the Next steps described in your proposal have you completed so far? Do you have theoretical results, at least in specific cases? Which algorithms/heuristics have you implemented and evaluated so far (submit the code you wrote alongside your status report)?
- Next steps: which next steps are you planning to take from this point until submission of the project? Should you take a completely different approach to the one you have taken thus far? Are there improvements to the algorithms you currently have developed? Are there different benchmarks you should compare against? Are there extensions or generalizations of the problem you can consider? Are there interesting special cases you can analyze?
Milestone 3: Final report (due Monday, May 2nd at 9am)
The final report should be a document of up to 10 pages. It should be as close as possible to a scientific paper: use the style template of your favorite conference. The report should contain (roughly) the following sections: abstract, introduction, related work, problem, results, experiments/evaluations, conclusion/discussion.