CSC 200: Impossible Projects


You will be part of a team assigned to one of the following projects. Each of the projects represents a significant computer system, that you will have to implement. The projects are "impossible" in that, as far as I am aware, what might be considered a "complete" solution has not yet been produced by anyone. On the other hand, there is considerable prior art that is applicable to each of the problems and the solution spaces are gradual enough that interesting results are possible in the course of a semester project.

In general I expect you to write your own code. Components that you do not write yourself need approval from the class instructor (me). Standard stuff that does not directly bear on the "difficult" aspect of your problem (e.g. image i/o or linear algebra operations) will generally be OK, but you still need to run them by me.

Assignment 1:

Ignorance is usually a liability, but one exception to this rule is when ignorance causes you to look at a problem with fresh eyes, and without preconceptions. Usually this yields little, and you just see a blurry version of what others have, with much effort, seen more clearly; but on rare occasions, a picture will flip. So it is worthwhile, when first encountering a novel problem or a new aspect of an old one, to spend a few days to see what you can make of it on your own.

Spend a good chunk of time examining about your project problem, specifically what the difficult aspects seem to be, and what approaches might be worth trying. Go as far as you can along these lines, looking up peripheral information about possible methods as needed, but WITHOUT researching the problem directly. Break your thinking time up over a couple of days. After effort on a problem, your brain seems to keep working on it in the background. You may find an answer waiting when you open the door again. It may even come knocking to get out.

Write a couple of pages on your thoughts. On Tuesday, the teams will assemble, spend the first 30-40 minutes brainstorming and combining ideas, and then present the brainstorming results to the rest of the class.
Due Thursday, February 10.

Back to CSC 200 main page