Incremental Task and Motion Planning: A Constraint-Based Approach
Neil T. Dantam
Zachary K. Kingston
Lydia E. Kavraki
Robotics: Science and Systems XII - 2016 via Local CrossRef
This paper discusses an approach to integrated task and motion planning. They argue that the primary requirement for the task planner is the ability generate task plans based on the motion planning results. To this end, they employ Satisfiability Modulo Theories solver to solve for a task plan, and dynamically add or remove task constraints based on the motion planning results.
More specifically, their task and motion planner, IDTMP, begins with only initial and goal state constraints, as well as the preconditions and effects at time step 0. It also begins with a time step of 1, which means it will try to find a task within one time step. If it determines that it is unable to produce a task of length 1 that abides by the constraints, it pops the goal constraint and then add additional preconditions and effects at time step h+1, and then add the goal constraint back in. They repeat this until a feasible task plan is found.
Once the task plan is found, it then tries to find a set of motions plans that is associated with each task operators. They have a special operator, $\lambda_\rho$, which computes the goal configuration for motion planner; however, note that for complex task and motion planning tasks, this function is not easy to define. If a feasible motion plan is not found in any one of the operators, they add the constraint that says you should not try this task operator in this state, and re-plan the task plan using this constraint.
They prove the probabilistic completeness by noting the fact that the incremental SMT solver considers all previous task plans and RRT is probabilistic complete. The experiment is shown for a rather simple task of stacking box objects on top of another; comparison to only one other method is shown.
While this paper has some interesting ideas, such as incrementally incorporating motion planning results as constraints for finding a task plan, it lacks some motivations as to why they had to use SMT solver. Would simple CSP solver suffice? A random sampling planner? Also, their task is rather too simple, and they get away with the difficulty of sampling continuous parameters for task operators without any explanation. Their comparison with only one benchmark makes this approach not very convincing.