I've been in programming college for about 3 months now and wanted to discuss an idea with you guys;
I want to build an AI that can teach a person things like maths, science and programming. The AI should be flexible in a way that it should be able to modify its own lessons to the users learning style and be able to improve itself through a series of algorithms.
Id like to make this an open source project for all to use to help assist both people in developed countries (USA, Canada, Europe etc.) as well as people in developing countries to assist in their education infrastructure. Any advice at all would be greatly appreciated as I am fairly new to programming and I am not even sure where to begin but together I feel we could really make a difference in the world with an AI like this.
Yeah, same here I definitely agree with explorer, @jonnyp3f I'd recommend starting a small and learning the concepts of how AI works, and start building a strong foundation to which you can add onto later on when you start learning more. I'm kind of in the same boat as you, I am a freshmen at university majoring in computer engineering, I am currently learning C++, object orientated programming, data structures, algorithms, unix system administration courses, etc.., but I am also going to work on Java Android Development during the Winter break. It's good to have your own little projects that you work on and have fun with, also dont forget about using github.
Wow, what a project to undertake after just 3 months of coding. I certainly admire your ambition mate.
So I assume its going to be something like KhanAcademy but with an A.I aspect that looks at the error rate and/or success rate of given modules then either speeds up the learning (moving through the topics of a given subject) or slow down and rehash what was learnt if the user has had errors/failures etc.
A few questions:
What was your rough time-frame that you wanted to have a protoype up and running for testing?
Will it be a web based service or stand-alone install on user devices?
here is my 2 cents. When taking on a project like this one, break it up into sections, and then again into sub section. for example. focus on making the problem generator first. then break up the problem generator into subjects like calculus, algebra 1, geometry, etc... once you have completed the generator, then you can start the AI. which will utilize the problem generator code.
It is my experience that designing the code is often much more important, and much harder to do well than actually writing the code. if you write bad code, you can just re-write it. if you design the code wrong... lets just say you won't be very happy for the next week or so.
I want to get a prototype for testing before summer next year,
Id like for it to be a web front end application with a "lite" version for cellphones and tablets.
Ill be taking your suggestions and starting off with the Math problem generator and checker, and doing all kinds of generators for different kinds of math equations, from simple addition and multiplication all the way to parabola and vector calculus. Ill keep you guys posted on how the project is going.