Sunday, January 17, 2010

Fun With AI

So at my robotics club, one of the other mentors and I are both extremely interested in AI, and he has been talkin with me about some different projects we're working on. Some of the younger kids became interested, and we started to describe to them the simplistic view of AI. He used the example of balancing a stick on a finger. Picking up an aluminum bar, he demonstrated how an AI robot would slowly learn to balance the stick. Then I gave the specific example of evolutionary algorithms (which i have the most experience with). He then said that evolutionary algorithms wouldn't be able to do that... but I was adamant that it could be done. So I've decided to prove him wrong by actually doing it.

...Starting Work
I've started writing a 2D simple physics engine to just be used for this balancing the stick problem. I will be utilizing the JGAP Java package to simplify the work I have to do, by providing all of the mutation and crossover algorithms. Basically this will boil down my work to providing it the correct functions that the program will be allowed to call.

...The Constraints
I have given some arbitrary constraints for this problem. I will allow it to work on a fake track that is a set length, probably 1 or 2 feet. Like i said, this demonstration will only be in two dimensions. As you can see this problem is actually not very complicated at all. Oh yea, this project will be in Java, and I'll post all code once I'm done.

I've been very lazy about coding over this break from school, so this challenge will hopefully kick me into gear and get me working much harder then I have been during my last week at home. To clarify, I actually program 40 hrs a week at my job, but outside of work, I haven't gotten much done.

No comments:

Post a Comment