CMP 260
Final Project Guidelines

Important Dates:

Date Item
February 22, 2001 Preliminary project proposal due
March 1, 2001 Final project proposal due
March 8, 2001 Project checkpoint
March 15 and 18, 2001 Project presentations/writeup

Final Project:

You get to select your own final project! However, you need to follow certain guidelines. The first one is the most subjective i.e. it should be interesting and I have to agree to it. A general rule of thumb is if the problem has appeared in Siggraph or IEEE CG & A, then it's probably okay. I'm looking for something with significant graphics, animation, and/or visualization component. The second criteria is the scope of the project. It should be something that can be completed in about 4 weeks.

Additional guidelines to think about when selecting a project. The projects will be rated according to difficulty, graphics content, number of features, risk (if it's a research topic and unsure of outcome), etc. These parameters are used towards 80% functionality and correctness portion of the project grade. For example, a hard/risky project can earn up to 80/80, while a medium difficulty project can earn up to 70/80, and an easy project can earn up to 60/80. The other 20% goes towards your writeup, GUI, etc.

We will also be running a contest amongst your final projects, with you judging your peers' work. The criteria here seem to be the flashiness or glitziness of your project. So consider all these things when selecting your project ideas.

Preliminary Project Proposals:

Give me at least 3 topics that you would like to work on for your final project. Rank them according to your preference. If you have already done some preliminary research, list down the relevant references. For each topic, also note down what you plan to implement. This will help me gauge the difficulty level of your proposal. Send your ideas to me by email: pang@cse. The earlier you send me your suggestions, the earlier you can get started on your project.

Final projects are individual projects. I prefer that students work on different topics. So, that's another incentive for getting those proposals in early -- you get a lock on the topic as soon as your proposal is approved.

Final Project Proposal:

This step should show your understanding of what you will be doing for your final project. It should also include the first draft of the report, based on your readings on the subject matter, etc.

Project Checkpoint:

This step is necessary to ensure that you are making adequate progress in your project -- i.e. that you are not procastinating. There are two things I'm looking for here:

Project Presentation:

You will give a brief (20 minutes) oral presentation of your project. This should give the audience an idea of what your project is about, what's interesting/challenging about it, your approach (algorithm and data structure discussion if relevant), perhaps some preliminary results/images, and answer questions.

Project Demonstration and Report:

The demos will be held in 230BE during the scheduled final exam. Attendance is required. Be sure to submit the following items using

submit cmps260-ap.w01 frinal files-to-submit
Be sure to include: executables, source, Makefile, README (user's guide), and sample images and animation files from your project. We'll be including the latter in the class web page for future generations. DO NOT include data files that are already part of the class data sets. Likewise, do not hardcode filenames or pathnames into your program. Ask for the filename instead. Deadline for submission is before your scheduled presentation.

Your final report should build upon your initial draft. The final paper should include sections describing your own ideas, discussion of relative merits, draw conclusions, and references used. Finally, include a user's guide in the appendix section, and attach a well written and documented program listing. With the exception of the user guide and program listing, the writeup of the report should be in a form where you might submit it for a conference publication.

Make sure there is enough information provided in the report so that a reader can reproduce your work. Also make sure that there is enough information provided in the user's guide so that a user will know how to use your program. A good test would be to ask a non-major friend to try out your program to see if there's sufficient information provided in the user's guide.

Project Requirements:

Possible Topics:

Here are some ideas for the individual project. Note that this is just a random collection of ideas. Some topics are definitely too long for a course project while others may be a bit too short. Pick from this list or use it to generate your own variations. Recall some neat segments from the video you saw in class for other possible ideas.

Last modified Tuesday, 20-Feb-2001 09:44:45 PST.