Final project
At the end of the quarter, you are expected to submit a 4-page report on a final project of your choosing. The report for your project should involve at least the following components:
- 5 points. Description of the engineering topic you chose; the choice of topics is open, but it should be related to an engineering problem, rather than a pure computer science topic, such as image, speech, or vision.
- 10 points. Describe the technical problem of interest and its difficulties.
- 10 points. Review the published literature and available approaches that are relevant to your problem.
- 20 points. Propose and describe the algorithm that you picked to solve your problem. This should be preferably a published method or a known technique that has been tested and validated before, in order to limit last-minute surprises. It is best to focus on methods covered during this quarter such as support vector machines, deep neural networks, physics-informed neural networks, etc.
- 20 points. Implement your method using your language and framework of choice. You can use TensorFlow or PyTorch. Reusing existing code is fine but you must cite your sources and describe the changes and additions you have made to the code. Turn in your code with your written report. This does not count against the length of the report.
- 5 points. Describe the steps you have taken to verify that your code is correctly implementing the algorithm.
- 10 points. Choose and describe the datasets, problem settings and parameters that you used for your code validation and benchmarks.
- 15 points. Plot and present the results of your benchmarks. Discuss and interpret the results. Make sure you explore a range of inputs and algorithm parameters to give a good sense of how the method performs.
- 5 points. Discuss the limitations of the proposed approach and some ideas to improve it.
We recommend to keep it simple. Start with a modest project and clearly achievable goals. Then if all goes well, you can add “bonus” results. It is better to start simple and add later, than start with an ambitious goal and then abandon it for something much simpler at the last minute.
To help you plan ahead and make sure that you will be on track for the deadline, we request that you submit a plan for your final project. See gradescope for the deadline. This plan is worth 10 points. This plan should be a one-page document describing:
- A brief description of the project you envision.
- A brief literature survey of relevant methods that apply to your problem.
- A timeline of the tasks to complete, with dates, until the successful submission of your project at the end of the quarter.
Submission instructions: there will be three assignments on gradescope:
- Preliminary plan: 10 points
- Final project code (upload a single file, e.g., Python notebook or Python code): 20 points
- Final project written report (upload a single PDF file): 80 points
If you wish, there is an option to work in teams on a project. I recommend teams of at most 2 students. 3 students is an option, but it is discouraged. 4 or more is not allowed. The amount of work you put into the project must be the same whether or not you are part of a team.
For teams of 2 students, you should submit a 6-page report. Teams of 3 should submit an 8-page report.
We will enable the group submission option on Gradescope, with which one member per group can make the submission and add the rest of the group. The submission process is the same as before, and the option to add group members will be available after you upload your files. No additional action is required if you are not adding group members. Besides making a group submission, please make sure to include a list of all the team members in the PDF, at the beginning.
In addition, each member of the team must submit a short document that describes what each team member (including yourself) contributed to the project.