Thursday, October 18, 2007

Applications of Intelligent Systems

For a number of years - since actually doing some emergent fractals work in C++ back in 1993 or so - i have been interested in intelligent and emergent systems. I read Emergence a few years back and it only hightened my awareness and desire that rather than creating some elete intelligent system, rather i'd like to add intelligent components to my applications.

I watched the self-aware robots talk by Hod Lipson at TED. If i wasn't doing what i do now, THAT is what i'd like to do. Not so much the robots (although myself and son are playing with Lego MindStorms) but the software and ideas that create and apply this stuff. Amazing.

After looking for some books on writing this (couldn't find any in C#) i found the seminal book "Artificial Intelligence: A Modern Approach" by Stuart Russell and Peter Norvig. I will re-write their algorithms in C# as needed - there is a Java effort going on too that is cool.

HOWEVER, the single post that really illustrates what i want from this is in Peter Norvig's "Doing the Martin Shuffle".

He discusses and demonstrates a real world technique that could be used to improve how the iPod shuffles the songs it plays to you. How ironic as it's Google (who doing amazing rsearch) and Apple (who do amazing UX) kind of sums up my take on thing.. trying new concepts with actual people!

So the next step IMHO is to take something like the AI book and also take some ideas in the real world (web 2.0 apps are all the rage so why not start there!) and show how intelligent components could be plugged in.

Very cool stuff!

No comments: