Suggested Projects for Summer 2010
- Open Source Projects
I am sure you have heard something about the Open-source revolution. Think of programs like firefox, linux isetc. that you use every day. The development community for these programs have evolved in such a way as to encourage other programmers to join their projects and make additions to their code with ease. So, in our view, it would be a great idea to try and develop something like addons for firefox or maybe an app for facebook using the facebook API. The project will result in something cool and concrete and also give you an opportunity to learn a lot about how open-source world works.
- Genetic Programming
This project is to expose the interested students to one of the most novel and revolutionary ideas in the world of computing today - Genetic Algorithms. Genetic Programming is basically programming inspired from Evolution. The basic approach is to model possible solutions of an Optimization problem as chromosomes of a species. One starts with some pool of random chromosomes and defines the laws of evolution ( crossover, mutation, survival of fittest etc.) and observes the species evolve. After sufficient time, the healthiest chromosomes should correspond to near optimal solution of the original problem.
References:
1. Wikipedia
2. http://www.genetic-programming.org/
3. http://www.obitko.com/tutorials/genetic-algorithms/
4. http://rogeralsing.com/2008/12/07/genetic-programming-evolution-of-mona-lisa/ - Vector Image Editor
We have done some raster image editing already and want to follow up with a program for Vector Image Editing (something like Inkscape or Corel Draw).
References:
1. Wikipedia [Scalar Vector Graphics]
2. http://www.inkscape.org/doc/devdocs.php?lang=en
3.http://www.w3.org/Graphics/SVG/ - Strategic Game (With GUI and autoplayer with Mini-Max)
We want to be able to develop some strategic games like chess, checkers or brainvita. (Okay, maybe not chess! It's far too common!) We will focus on two things:
1. A presentable front-end and
2. Developing an efficient AI for auto-player. We suggest using Mini-max algorithm for the latter purpose but original ideas are of course always welcome.
References:
1. Wikipedia (again!) [Minimax]
2. http://www.ocf.berkeley.edu/~yosenl/extras/alphabeta/alphabeta.html
3. www.progtools.org/games/tutorials/ai_contest/minmax_contest.pdf
4. http://www.fierz.ch/strategy1.htm
5. http://www-cs-students.stanford.edu/~amitp/gameprog.html - Fractal Generator
A program that will showcase a large variety of fractals (with different coloring schemes) and should also help in defining one's own fractals.
References:
1. Wikipedia (you are catching the general trend here, aren't you?)
2. http://math.rice.edu/~lanius/frac/
3. http://www.skytopia.com/project/fractal/mandelbulb.html(just for motivation)
4. http://math.bu.edu/DYSYS/chaos-game/node1.html - Audio Editor
The audio editor will include features like mixing of tracks, effects like echo or wahwah, amplification, bass-boost, fft-filter, equalizer, removing background hiss/hum noise.
References:
1. http://wiki.audacityteam.org/wiki/HowAudacityWorks (Lol. No wikipedia this time) - Micro-mouse
The standard robotics problem made famous by Techfest. Working in coordination with Robotics club, implement some algorithms of Micro-mouse (flood-fill hopefully of some high level like flood-fill 12 or 13) in a microcontroller.
References
1. Wikipedia
2. http://www.micromouseonline.com/book/micromouse-book
3. http://www.astrolog.org/labyrnth/algrithm.htm - Ant Colony/ Fish Tank Simulation
The basic idea here is that ant colonies and fish schools show great organizational behaviour that emerges from simple rules for interaction amongst each individual member (Swarm Intelligence). You will have to be creative and come up with the rules of your simulation world and also need to work on the GUI end. Play GOD!
References
1. Wikipedia
2. http://www.not-equal.eu/myrmedrome/main_en.html - CAS (Computer Algebra System) [Large Project]
Computer Algebra System is a software for engineers to do huge scientific computation. A CAS designed such that it is very easy to work on even for those who are not much familiar with programming. Writing and computing expressions in a CAS is just like writing mathematical formula on a piece of paper and solving them(nt by hand of course). We plan to have bigger team for this project as compared to other projects. The work will be didvde into three parts:
1. Symbolic manipulation
2. Numerical computation
3.interacive GUI
References
1.Good old wikipedia
2.http://www.gnu.org/software/gsl/
3.http://www.math.wpi.edu/IQP/BVCalcHist/calc5.html
Previous Years Projects:
Mentors:- Eshan Chatopadhyay
Project Members:-Archit Gupta & Akshay Mittal
Mentors:-Jishnu Das
Project Members:-Rohan Sharma & Sagar Setu
Mentors:-
Project Members:-Soumya Jain,Puneet Chugh & Varun Jindal
Mentors:- Eshan Chatopadhyay
Project Members:-Sanjay Nanda & Utkarsh Lath
Mentors:-Jishnu Das
Project Members:-Rahul Verma & Mohit