These videos show the PR2 executing DARRT(H)(Connect) plans for a variety of problems and domains. The plans are not smoothed; some post-processing could increase execution speed. The robot is simply executing a pre-computed plan; there is no planning time shown in these videos.

Tool Use Domain

An example of using DARRT(H) to plan for tool use. In this world, the CD on the table is too small and breakable for the robot to grasp. Instead, it must use a spatula to pick the CD up and transfer it to a specific point in the environment. DARRTH finds three subgoals in this world: Achieving a configuration to push the CD, picking up the spatula, and picking up the CD using the spatula. These are subtitled in the video. This particular plan was computed by DARRT. [Download]

The same example as above except in this video the CD "jumps" onto the spatula. The video on the left shows the entire plan sped up 10x while the one on the right shows just the CD jumping onto the spatula in real time. This was not the intended behavior, but an excellent example of tool use!. [Download]

Plate Domain: DARRTH

In these worlds the plate is too flat for the robot to pick up directly so it plans to first push it to the edge of the table and then to grasp it. The goals in these domains were to take the plate to a specific point in the environment. These domains are described in A Hierarchical Approach to Manipulation with Diverse Actions.

These videos are all DARRTHConnect plans. They are subtitled with when the robot achieves each subgoal. In these worlds, there were always two subgoals: Achieving a position to push the plate and grasping the plate..

World 0: A reasonably easy world in which the start and goal are close together. However, the plan chosen is roundabout because we solved using a randomized planner. This shows that the robot can successfully execute multiple pushes. DARRTH plans are not always so convoluted as shown in the other vides. [Download]

World 1: A slightly more complicated world in which the robot begins near the plate but the goal is farther away. [Download]

World 2: A world in which the robot both starts far from the plate and the goal is far from the plate's starting position. [Download]

World 3: A world in which the robot starts far from the plate and the goal is close to the plate's starting position but there is a barrier in the way. The robot must plan a path around the barrier. [Download]

World 4: A world chosen to be difficult for DARRTH. Here you can see that achieving the first subgoal actually puts the robot in a worse position than it started from as its base is now between the legs of the table. [Download]

Plate Domain: DARRT

Videos of the PR2 executing DARRT plans for manipulating objects. The domains shown here are from Manipulation with Multiple Action Types.

Because the plate is too flat for the robot to grasp while the plate lies on the table, the robot plans to slide the plate to the edge of the table where it can grasp it (sped up 4X). [Download, Download realtime]

A harder version of the problem in which the robot must either slide the plate towards itself (more difficult IK solution) or use multiple pushes (sped up 4X). [Download, Download realtime]

To slide the plate off of the table, the robot must push it at least twice making for a very difficult problem. [Download, Download realtime]

Although we often experiment with plates because we are interested in non-prehensile manipulation, the planner can also plan full paths for a normal pick and place. [Download, Download realtime]

Because DARRT does not yet consider uncertainty, any error in the detection of the plate or the localization of the base during movement can result in failure. The clips show some of the possible ways in which the execution can fail. [Download]

An earlier version of the planner that did not move the PR2's base. [Download]