Senior project ideas
Im nearing the end of my degree and need to start thinking about my senior project. The idea that I had was to make a keno game that used a simple random number generator. Then a separate program I could use to crack the number generator and predict the next series of numbers in the keno game. Do you think I am being too abitious about my project? Can it be done? If not Maybe you could give me some ideas that I could try. If this is a good project, has anybody read any good literature about random numbers that could help me. :confused:
I have a big interest in chess so I would write a Chess program, or actually I would write a Fischerandom Chess program! That's a challenge. But you shall choose a task that You think is interesting and that you think you can successfully complete in the time given. To solve your keno game you need a fair amount of input numbers, I suspect. . . and then you can try different well known pseudo-random number generators and iterate throug all possible seeds. The problem is that a new seed is probably selected before each keno game, etc. So to predict the next keno game you would have to know the pseudo-random algorithm and also the seed used, etc. Think about if you construct this program, will you ever have the computing power and time to show to your professor that it works? Would such an algorithm be usefull? Writing a compiler seems to be an interesting challenge, and there is already open-source of such code, like Dev C++, etc., that you can look at. Good luck!
By "senior", do you mean college? If so, I'd suggest something a bit more substantial than a Keno game. My senior project was a programming language and an interpreter for that language. The language was designed to model computer hardware down to the logic gate and buss line level. You could write a program that would simulate a CPU with peripherals and memory connected over a synchronous or asynchronous bus, and could execute the instruction set of said machine.
This was too ambitious for an undergraduate project, as I discovered. Several PhD projects that I've seen were less ambitious. My advisor didn't realize just how hard this project was when I proposed it, or she would never have approved it. I only got part of it done, but I graduated anyway.
As others have said, a compiler is a good advanced project. Another might be a Postscript optimizer. Other things I've seen done as senior projects include graphical rendering systems, database engines, theorem provers, molecular modelers, text editors, accounting packages, and reservation systems.
Select something that is not trivial, requires an understanding of the problem space, has well defined requirements and goals, and that you believe that you can do in roughly half the time available to you.