  Many planning applications involve complex relationships defined on
high-dimensional, continuous variables. For example, robotic manipulation
requires planning with kinematic, collision, visibility, and motion constraints
involving robot configurations, object poses, and robot trajectories. These
constraints typically require specialized procedures to sample satisfying
values. We extend PDDL to support a generic, declarative specification for
these procedures that treats their implementation as black boxes. We provide
domain-independent algorithms that reduce PDDLStream problems to a sequence of
finite PDDL problems. We also introduce an algorithm that dynamically balances
exploring new candidate plans and exploiting existing ones. This enables the
algorithm to greedily search the space of parameter bindings to more quickly
solve tightly-constrained problems as well as locally optimize to produce
low-cost solutions. We evaluate our algorithms on three simulated robotic
planning domains as well as several real-world robotic tasks.
