Saturday, May 24, 2008

Robot behavior, Babies, Careers and HTMs

Greetings everyone,

The crew had to disband to address career and lifestyle changes. Trevor had a baby, Rob is the .NET architect and team lead for a rapidly growing company and Bert picked up a heavy consulting gig for 5 months ... but I'm back in the AI game and ready to start blogging again.

The crew still gets together occasionally and we try to work on the behavior AI code as much as possible. Here's a quickie update from the past year.


  • We've learned ALOT from trial and error and have decided to perform a bottom-up approach to a generalized AI behavior system.
  • We've ditched MS Robotics Studio (for now - steep learning curve) but we still utilize the CCR (Concurrency and Coordination Runtime) to help us coordinate threading in our code.

We've written custom code to integrate to robotic substrates (Lego and iRobot). I will be publishing a C#.NET-based implementation of the iRobot Create specification in a future blog posting.

  • Integration of our custom HTM code (Hierarchical Temporal Memory) has been deferred to a more appropriate "strata" of our AI behavior framework. (see Mammalian layer in diagram below)
  • We're pursuing a more biologically inspired approach by focusing on evolutionary models of animal behavior.
  • We've also added an emotion machine implementation to our framework (not shown below)

This is obviously a simplified object model of our new framework. Since we're not publishing our code publicly - I cannot provide any more details on the object model (the true object model has 40-50 classes). But this gives you a good idea on the layered hierarchical approach we're using for our AI behavior system.


I will be discussing the inspiration behind this new design in the next post.
Great to be back.