Last Modified 23 March 2008

Behavior Oriented Design (BOD)

Behavior Oriented Design (BOD) is a methodology for developing control of complex intelligent agents, such as virtual reality characters, humanoid robots or intelligent environments.  It combines the advantages of Behavior-Based AI and Object Oriented Design.

Developing a system under BOD involves creating two types of program structures:

BOD agents can be looked at from two perspectives. You can think of the behavior modules as providing the primitives for the POSH plans (the plan primitives are based on methods from the behavior objects), or you could think of the plans providing behavior arbitration (a form of action selection) when the actions recommended by the behavior modules would conflict.

Above all, BOD is a methodology.  Its purpose is to make developing agents as easy as possible.  This requires keeping the agents as simple as possible, so that they are easy to understand, develop and maintain.  The BOD methodology  consists of
Software / code using BOD and providing POSH for python, jython and lisp is available for free download from the AmonI Software Page.   This includes two major sets of behaviour libraries for the python/jython POSH:
  • BOD / MASON for agent based modelling (social simulation), and
  • BOD / UT for building characters in the first-person shooter computer game, Unreal Tournament.
We also are working on a BOD IDE, ABODE.

Note we are always happy to have more BOD Developers (that page also takes bug reports.)




page author: Joanna Bryson