PlannerInitiatives

Some things that we'd like to add to the Planner:

Support for other "planning" algorithms

We'd like to be able to plug-in other decision making algorithms into the Planner:

  • Use a SAT solver to find combinations of Techniques that work and some method to rank them
  • Better exploit node cloning to expose more choices to the Planner.
Trust Mechanisms
The Planner has no story for security and trust. We'd like to be able to create plug-ins for different kinds of trust systems and include trust as a factor in deciding between Techniques.
Learning

Since the Planner may be run repeatedly in similar situations, it would be useful if the Planner could learn (and cache) what generally works and doesn't work in a particular situation. For example, if invoke the PlayJazz goal and we're at home where nothing has changed, the Planner should just be able to run a known Plan Tree rather than having to explore everything all over again.

Another example: if a Technique with given arguments always over-promises and under-delivers, the Planner should learn this and start discounting the Satisfaction value of the bad Technique. This is related to Trust Mechanisms.

Feedback

We would like to add mechanisms so that users can modify the decisions that the Planner makes. Threre are two parts to this:

  1. Figuring out how to let the user see what the Planner plans to do (harder to do), and
  2. Letting the user change what the Planner is going to do (somewhat easier to do if we have a good way of explaining what the Planner is going to do)
General Improvements
  • Remove unused features (e.g., serially stage)
  • Clean up redundant parts of the code (e.g., Property notification + nodes in the tree)
  • Integrate ideas from Grace's planner3 branch. Mainly: Goal-level satisfaction formulas.

last edited 2008-04-12 20:02:20 by JustinMazzolaPaluska