  Robots need task planning to sequence and execute actions toward achieving
their goals. On the other hand, Behavior Trees provide a mathematical model for
specifying plan execution in an intrinsically composable, reactive, and robust
way. PDDL (Planning Domain Definition Language) has become the standard
description language for most planners. In this paper, we present a novel
algorithm to systematically create behavior trees from PDDL plans to execute
them. This approach uses the execution graph of the plan to generate a behavior
tree. The most remarkable contribution of this approach is the algorithm to
build a Behavior Tree that optimizes its execution by paralyzing actions,
applicable to any plan, taking into account the actions' causal relationships.
We demonstrate the improvement in the execution of plans in mobile robots using
the ROS2 Planning System framework.
