I am currently researching Goal Oriented Action Planning as a way to build AI that’s capable of relatively emergent behavior.
Based on the world and objects around it, the AI decides the best strategy to fulfill its’ goal (in this case, gathering wood).
Each action it has available carries a certain cost and precondition. Collecting logs has no preconditions but is more costly than chopping wood.
Chopping wood requires picking up an axe first, though.
Over the course of several prototypes, performance and control over the AI was improved. I am using Unity 3D and C# for these prototypes.