{'fraction_non_alphanumeric': 0.04013293720731154, 'fraction_numerical': 0.008988367994360239, 'mean_word_length': 4.464914694551458, 'pattern_counts': {'":': 0, '<': 2, '<?xml version=': 0, '>': 1, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 9, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Configuration Lattices for Planar Contact Manipulation Under Uncertainty

This work addresses the challenge of a robot using real-time feedback from contact sensors to reliably manipulate a movable object on a cluttered tabletop. We formulate contact manipulation as a partially observable Markov decision process (POMDP) in the joint space of robot configurations and object poses. The POMDP formulation enables the robot to actively gather information and reduce the uncertainty on the object pose. Further, it incorporates all major constraints for robot manipulation: kinematic reachability, self-collision, and collision with obstacles. To solve the POMDP, we apply DESPOT, a state-of-the-art online POMDP algorithm. Our approach leverages two key ideas for computational efficiency. First, it performs lazy construction of a configuration-space lattice by interleaving construction of the lattice and online POMDP planning. Second, it combines online and offline POMDP planning by solving relaxed POMDP offline and using the solution to guide the online search algorithm. We evaluated the proposed approach on a seven degree-of-freedom robot arm in simulation environments. It significantly outperforms several existing algorithms, including some commonly used heuristics for contact manipulation under uncertainty.


I. INTRODUCTION
Our goal is to enable robots to use real-time feedback from contact sensors to reliably manipulate their environment. Contact sensing is an ideal source of feedback for a manipulator because contact is intimately linked with manipulation: the sense of touch is unaffected by occlusion and directly observes the forces that the robot imparts on its environment.
However, contact sensors suffer from a key limitation: they provide rich information while in contact with an object, but little information otherwise. Fully utilizing contact sensors requires active sensing. Consider the robot shown in fig. 1 that is trying to push a bottle into its palm. The robot is uncertain about the initial pose of the bottle, has only an approximate model of physics, and receives feedback from noisy contact sensors on its fingertips. The robot executes an information-gathering action by moving its hand laterally to force the bottle into one of its contact sensors. Once the bottle is localized, it moves to achieve the goal.
In this paper, our goal is to autonomously generate policies that allow a robot to use real-time feedback from contact sensors to reliably manipulate objects under uncertainty. We specifically consider the problem of quasistatic tabletop manipulation via pushing [33]. The robot's goal is to push a movable object into a hand-relative goal region while avoiding collision with stationary obstacles in the environment.
We formulate the planar contact manipulation problem as a partially observable Markov decision process (POMDP) [ 47] with a reward function that drives the robot towards the goal. Prior work has successfully used an offline POMDP solver [28] to find robust, closed-loop policies for manipulating an object relative to the hand [17,27].
Unfortunately, these hand-relative policies perform poorly when executed on a robotic manipulator because of limited reachability, collision with the environment, and other types of kinematic constraints. These constraints occur frequently during execution, but cannot be represented in a hand-relative POMDP (Rel-POMDP). In this paper, we address this limitation by planning in a POMDP that includes both the fullyobservable configuration of the manipulator and the partiallyobservable pose of the object.
Finding a near-optimal policy for this POMDP is challenging for two reasons. First, a manipulator's configuration space is continuous and high-dimensional, typically having at least six dimensions. Second, it is difficult to perform pre-computation because the optimal policy may dramatically change when an obstacle is added to, removed from, or moved within the environment.
We leverage two key insights to overcome those challenges: 1) We define a configuration lattice PODMP (Lat-POMDP) that models both the configuration of the robot and the pose of the object. Lat-POMDP lazily constructs [8,41] a lattice in the robot's configuration space and uses the lattice to guarantee that the optimal policy does not take infeasible actions (section IV). 2) We prove that the optimal value function of Rel-POMDP is an upper bound on the optimal value function of Lat-POMDP. We use this fact to create a heuristic that guides DESPOT [48], a state-of-the-art online POMDP solver, to quickly find a near-optimal policy for Lat-POMDP with no environment-specific offline pre-computation (section V). We validate the efficacy of the proposed algorithm on a simulation of HERB [49], a mobile manipulator equipped with a 7-DOF Barrett WAM arm [45] and the BarrettHand [51] endeffector, manipulating an object on a cluttered tabletop ( fig. 1, section VI). First, we confirm that DESPOT successfully uses information-gathering actions to achieve good performance in the absence of kinematic constraints. Then, we show that the proposed algorithm outperforms five baselines in cluttered environments.
The proposed algorithm demonstrates that it is possible for an online POMDP planner to simultaneously reason about object pose uncertainty and kinematic constraints in contact manipulation. We are excited about the prospect of exploiting the scalability of recent developments in online POMDP solvers, like DESPOT, to solve more complex tasks in future work (section VII).

II. RELATED WORK
Our work builds on a long history of research on enabling robotics reliably manipulating objects under uncertainty. Early work focused planning open-loop trajectories that can successfully reconfigure an object despite non-deterministic uncertainty [29] in its initial pose [5,14]. More recently, the same type of worst-case, non-deterministic analysis has been used to plan robust open-loop trajectories for grasping [9,10] and rearrangement planning [11,25] under the quasistatic assumption [33,34]. Our approach also makes the quasistatic assumption, but differs in two important ways: it (1) considers probabilistic uncertainty [29] and (2) produces a closed-loop policy that uses real-time feedback from contact sensors.
Another line of research aims to incorporate feedback from contact sensors into manipulator control policies. This approach have been successfully used to optimize the quality of a grasp [42] or servo towards a desired contact sensor observation [30,52]. It is also possible to directly learn a feedback policy that is robust to uncertainty [38,50]. These approaches have achieved impressive real-time performance, but require a higher-level planner to specify the goal.
One common approach is to plan a sequence of move-untiltouch actions that localize an object, then execute an open-loop trajectory to complete the task [16,21,39]. Other approaches, like our own, formulate the problem as a POMDP [23,47] x r q (a) State, a = (q, xr) We formulate planar contact manipulation as a POMDP with a state space (a) that contains the robot configuration q and the pose of the movable object x r . The environment contains one movable object (white glass) and static obstacles. (b) action is a short joint-space trajectory ξ of duration T . After executing an action, the robot receives feedback from (c) binary contact sensors on its end effector. and find a policy that only takes information-gathering actions when they are necessary to achieve the goal [18][19][20].
Unfortunately, most of this work assumes that the endeffector can move freely in the workspace and that objects do not significantly move when touched. More recent approaches have relaxed the latter assumption by incorporating a stochastic physics model into the POMDP [17,27] and using SARSOP [28], an offline point-based [40] POMDP solver, to find a near-optimal policy for manipulating an object relative to the hand. Unfortunately, hand-relative policies often fail when executed on a manipulator due to kinematic constraints or collision with obstacles. We use a hand-relative policy to guide DESPOT [48], an online POMDP solver [44], in Lat-POMDP, a mixed-observable model [36] that includes these constraints.
Lat-POMDP represents the robot's configuration space as a state lattice [41], a concept that we borrow from mobile robot navigation [31] and search-based planning for manipulators [8]. Similar to these approaches, and many randomized motion planners [3,15], we use lazy evaluation to defer collision checking until an action is queried by the planner.

III. PROBLEM FORMULATION
We formulate planar contact manipulation as a partially observable Markov decision process (POMDP) [47]. The robot does not know the true state s t . Instead, the robot tracks the belief state b(s t ) = p(s t |a 1:t , o 1:t ), which is a probability distribution over the current state s t conditioned on the history of previous actions a 1:t = {a 1 , . . . , a t } and observations o 1:t = {o 1 , . . . , o t }. The set of all belief states is known as belief space ∆.
Our goal is to find a policy π : ∆ → A over belief space that optimizes the value function where the expectation E[·] is taken over the sequence of states visited by π. We use V * to denote the optimal value function, the value function of an optimal policy. The discount factor γ ∈ [0, 1) adjusts the relative value of present versus future reward.
In our problem, state s = (q, x o ) ∈ S is the configuration of the robot q ∈ Q and the pose of the movable object 2a). An action a = (ξ, T ) ∈ A is a trajectory ξ : [0, T ] → Q that starts in configuration ξ(0) and ends configuration ξ(T ) at time T ( fig. 2b). We assume that uncertainty over the pose of the object dominates controller and proprioceptive error. Therefore, we treat q as a fully-observable state variable and neglect the dynamics of the manipulator; i.e. model it as being position controlled.
The robot executes a quasistatic, position controlled push if it comes in contact with the movable object. The quasistatic assumption states that friction is high enough to neglect the acceleration of the object; i.e. the object stops moving as soon as it leaves contact [34]. This approximation is accurate for many tabletop manipulation tasks [10,11].
We define the stochastic transition model T (s, a, s ) in terms of a deterministic quasistatic physics model [33] by introducing noise into the parameters [12]. We do not attempt to refine our estimate of these parameters during execution. After executing an action, the robot receives an observation o ∈ {0, 1} no = O from its n o binary contact sensors ( fig. 2c). We assume that a stochastic observation model Ω(s , a, o) is available, but make no assumptions about its form.
The robot's goal is to push the movable object into a handrelative goal region X goal ⊆ X. We encode this in the reward function is the forward kinematics of the end effector. The reward function penalizes states where the movable object is outside of X goal . Note that the choice of −1 reward is arbitrary: any negative reward would suffice.

IV. CONFIGURATION LATTICE POMDP
Solving the POMDP formulated in section III is challenging because the state space is continuous, the action space is infinite dimensional, the transition model is expensive to evaluate, and the optimal policy may perform long-horizon information gathering.
In this section, we simplify the problem by constraining the end effector to a fixed transformation relative to the support surface (section IV-A) and build a lattice in configuration space (section IV-B). Configurations in the lattice are connected by action templates that start and end on lattice points (section IV-C). Finally, we define a configuration lattice POMDP that penalizes infeasible actions to insure that the optimal policy will never take an infeasible action (section IV-E).

A. Planar Constraint
We assume that the robot's end effector is constrained to have a fixed transformation sup T ee ∈ SE(3) relative to the support surface T sup ∈ SE(3). A configuration q satisfies this constraint iff where (x r , y r , θ r ) ∈ X r = SE (2) is the pose of the end effector in the plane. Rot(θ,v) denotes a rotation about axisv by angle θ and Trans(v) denotes a translation by vector v.
We also assume that the movable object also has a fixed transformation sup T o ∈ SE(3) relative to the support surface; i.e. that it does not tip or topple. We parameterize its pose as (2) is its pose in the plane.

B. Configuration Lattice
We discretize the space of the end effector poses X r by constructing a state lattice X r,lat ⊆ X r with a translational resolution of ∆x r , ∆y r ∈ R + and an angular resolution of ∆θ r = 2π/n θ for some integer value of n θ ∈ N [41]. The lattice consists of the discrete set of points Each lattice point x r ∈ X r,lat may be reachable from multiple configurations. We assume that we have access to an inverse kinematics function q lat (x r ) that returns a single solution {q} that satisfies T ee (q) = x r or ∅ if no such solution exists. A solution may not exist if x r is not reachable, the end effector is in collision, or the robot collides with the environment in all possible inverse kinematic solutions.
Instead of planning in S, we restrict ourselves to the state space S lat = Q lat × X o where Q lat = xr∈Xr,lat q lat (x r ) is the discrete set of configurations returned by q lat (·) on all lattice points. Note that, despite the structure of the Cartesian lattice, planning occurs in configuration space Q, not the task space X r .

C. Action Templates
Most actions do not transition between states in the lattice S lat . Therefore, we restrict ourselves to action that are instantiated from one of a finite set A lat of action templates. An action template a lat = (ξ lat , T ) ∈ A lat is a Cartesian trajectory ξ lat : [0, T ] → SE(3) that specifies the relative motion of the end effector. The template starts at the origin ξ lat (0) = I and ends at some lattice point ξ lat (T ) ∈ X r,lat . It is acceptable for multiple actions templates in A lat to end at the same lattice point or have different durations.
An action a = (ξ, T ) ∈ A satisfies template a lat at lattice point x r ∈ X r,lat if it satisfies three conditions: These conditions are satisfied if ξ moves between two configurations in Q lat and produces the same end effector motion as the Cartesian trajectory ξ lat .
We define the function Proj(x r , a) → a lat to map an action a to the template a lat it instantiates. The pre-image Proj −1 (x r , a lat ) contains the set of all possible instantiations of action template a lat at x r . We assume that we have access to a local planner φ(q, a lat ) that returns a singleton action {a} ⊆ Proj −1 (q, a lat ) from this set or ∅ to indicate failure. The local planner may fail due to kinematic constraints, end effector collision, or robot collisions.

D. Lattice POMDP
We use the lattice to define a configuration lattice POMDP, The structure of the lattice guarantees that that all instantiations Proj −1 (q, a lat ) of the action template a lat execute the same Cartesian motion ξ lat of the end effector. This motion is independent of the starting pose of the end effector x r and configuration q lat (x r ) of the robot.
If the movable object only contacts the end effector-not other parts of the robot or the environment-then the motion of the object is also independent of these variables. We refer to a violation of this assumption as un-modelled contact. The lattice transition model T lat (s lat , a lat , s lat ) is identical to T (s, a, s ) when a lat is feasible and no un-modelled contact occurs. If either condition is violated, the robot deterministically transitions to an absorbing state s invalid . Similarly, the lattice observation model Ω lat (s lat , a lat , o) is identical to Ω(s, a, o) for valid states and is uniform over O for s lat = s invalid .
We penalize invalid states, infeasible actions, and unmodelled contact in the reward function by assigning min s∈S,a∈A R(s, a) = −1 reward to them.

E. Optimal Policy Feasibility
Our formulation of Lat-POMDP guarantees that an optimal policy π * lat will never take an infeasible action: Theorem 1. An optimal policy π * lat of Lat-POMDP will not execute an infeasible action in belief 1−γ and an optimal policy π lat executes the invalid action in belief state b. The robot receives a reward of −1 and transitions to s invalid . For all time after that, regardless of the actions that π lat takes, the robot receives a reward of R lat (s invalid , ·) = −1 at each timestep. This yields a total reward of V πlat lat = −1 1−γ , which is the minimum reward possible to achieve.
The value function of the optimal policy satisfies the denotes the value of taking action a in belief state b, then following the optimal policy for all time. This contradicts the fact that Therefore, π lat must not be the optimal policy.
We can strengthen our claim if (1) we guarantee that every lattice point reachable from the q 0 has at least one feasible action and (2) it is possible to achieve the goal with non-zero probability. Under those assumptions we know that 1−γ and theorem 1 guarantees that π * lat will never take an infeasible action. One simple way to satisfy condition (1) is to require that all actions are reversible; i.e. make the lattice an undirected graph.

V. ONLINE POMDP PLANNER
Lat-POMDP has a reward function that changes whenever obstacles are added to, removed from, or moved within the environment. An offline POMDP solver, like point-based value iteration [40] or SARSOP [28] would require re-computing the optimal policy for each problem instance.
Instead, we use DESPOT, a state-of-the-art online POMDP solver that uses regularization to balance the size of the policy against its quality [48]. DESPOT incrementally explores the action-observation tree rooted at b(s 0 ) by performing a series of trials. Each trial starts at the root node, descends the tree, and terminates by adding a new leaf node to the tree.
In each step, DESPOT chooses the action that maximizes the upper boundV [b] and the observation that maximizes weighted excess uncertainty, a regularized version of the gap between the upper and lower bounds. This search strategy heuristically focuses exploration on the optimally reachable belief space [28]. Finally, DESPOT backs up the upper and lower bounds of all nodes visited by the trial. There are key two challenges in solving Lat-POMDP: First, we must construct the configuration lattice. We use lazy evaluation to interleave lattice construction with planning. By doing so, we only evaluate the parts of the lattice that are visited by DESPOT (section V-A).
Second, we must provide DESPOT with upper and lower bounds on the optimal value function to guide its search. We derive these bounds from a relaxed version of the problem that ignores obstacles by only considering the pose of the movable object relative to the hand (sections V-B to V-D).

A. Lattice Construction
DESPOT uses upper and lower bounds to focus its search on belief states that are likely to be visited by the optimal policy. We exploit this fact to avoid constructing the entire lattice. Instead, we interleave lattice construction with planning and only instantiate the lattice edges visited by the search, similar to the concept lazy evaluation used in motion planning [3,15].
We begin with no pre-computation and run DESPOT until it queries the transition model T lat , observation model Ω lat , or reward function R lat for a state-action pair (x r , a lat ) that has not yet been evaluated. When this occurs, we pause the search and check the feasibility of the action by running the local planner φ(x r , a lat ). We use the outcome of the local planner to update the Lat-POMDP model and resume the search. Figure 3 shows the (a) full lattice and (b) subset evaluated by DESPOT. Feasible action templates are shown as green, infeasible action templates are shown as red, and unevaluated action templates are shown as gray. Note that DESPOT evaluates only a small number of state-action pairs, obviating the need for performing computationally expensive collision checks on much of the lattice.
Note that it is also possible to use a hybrid approach by evaluating some parts of the lattice offline and deferring others to be computed online. For example, we may compute inverse kinematics solutions, kinematic feasibility checks, and selfcollision checks in an offline pre-computation step. These values are fixed for a given support surface and, thus, can be used across multiple problem instances. Other feasibility tests, e.g. collision with obstacles in the environment, are lazily evaluated online.

B. Hand-Relative POMDP
Recall from section IV that the motion of the end effector and the object is independent of the pose of the end effector x r or the robot configuration q. We use this insight to define a hand-relative POMDP Rel-POMDP (S rel , A lat , O, T rel , Ω rel , R rel ) with a state space that only includes the pose x o,rel = x −1 r x o ∈ S rel of the movable object relative to the hand. The hand-relative transition model T rel , observation model Ω rel , and reward function R rel are identical to the original model when no un-modelled contact occurs. Rel-POMDP is identical to the hand-relative POMDP models used in prior work [17,26,27] and is equivalent to assuming that environment is empty and the robot is a lone end effector actuated by an incorporeal planar joint.

C. Lat-POMDP Upper Bound
Rel-POMDP is a relaxation of Lat-POMDP that treats all actions as feasible. As such: Theorem 2. The optimal value function V * rel of Rel-POMDP is an upper bound on the optimal value function V * lat of Lat- for all b ∈ ∆. Proof: We define a scenario ψ = (s 0 , ψ 1 , ψ 2 , . . . ) as an abstract simulation trajectory that captures all uncertainty in our POMDP model [35,48]. A scenario is generated by drawing the initial state s o ∼ b(s 0 ) from the initial belief state and each random number ψ 1 ∼ uniform[0, 1] uniformly from the unit interval. Given a scenario ψ, we assume that the outcome of executing a sequence of actions is deterministic; i.e. all stochasticity is captured in the initial state s 0 and the sequence of random numbers ψ 1 , ψ 2 , . . . .
Suppose we have a policy π for Rel-POMDP that executes the sequence of actions a lat,1 , a lat,2 , . . . in scenario ψ. The policy visits the sequence of states s rel,1 , s rel,2 , . . . and receives the sequence of rewards R 1 , R 2 , . . . . Now consider executing π in the same scenario ψ on Lat-POMDP. Without loss of generality, assume that π first takes an infeasible action or makes un-modelled contact with the environment at timestep H. The policy receives the same sequence of rewards R 1 , R 2 , . . . , R 2 , . . . , R H−1 , −1, −1, . . . as it did on Rel-POMDP until timestep H. Then, it receives −1 reward for taking an infeasible action, transitions to the absorbing state s invalid , and receives −1 reward for all time.
Consider the optimal policy π * lat of Lat-POMDP. There exists some Rel-POMDP policy π mimic that executes the same sequence of actions as π * lat in all scenarios. From the reasoning above, we know that V πmimic rel ≥ V * lat . We also know that V * rel ≥ V πmimic rel because the value of any policy is a lower bound on the optimal value function.
Therefore, V * rel ≥ V πmimic rel ≥ V * lat ; i.e. the optimal value function V * rel of Rel-POMDP is an upper bound on the optimal value function V * lat of Lat-POMDP. This result implies that any upper boundV rel is an upper bound on the value of the optimal value functionV rel ≥ V * rel ≥ V * lat . Therefore, we may also useV rel as an upper bound on Lat-POMDP. The key advantage of doing so is that theV rel may be pre-computed once per hand-object pair. In contrast, the same upper bound onV lat must be re-computed for each problem instance.

D. Lower Bound
We also use Rel-POMDP as a convenient method of constructing a lower bound V lat for Lat-POMDP. As explained above, the value of any policy is a lower bound on the optimal value function. We use offline pre-computation to compute a rollout policy on π rollout for Rel-POMDP once per handobject pair. For example, we could use MDP value iteration to compute a QMDP policy [32] or a point-based method [28,40] to find a near-optimal policy.
Given an arbitrary policy π rollout computed in this way, we construct an approximate lower bound V lat for Lat-POMDP by estimating the value V πrollout lat of executing π rollout on Lat-POMDP using rollouts. Approximating a lower bound with a rollout policy is commonly used in POMCP [46], DESPOT [48], and other online POMDP solvers.

VI. EXPERIMENTAL RESULTS
We validated the efficacy of the proposed algorithm by running simulation experiments on a robot equipped with a 7-DOF Barrett WAM arm [45] and the BarrettHand [51] endeffector. The robot attempts to push a bottle into the center of its palm on a table littered with obstacles.

A. Problem Definition
The state space of the problem consists of the configuration space Q = R 7 of the robot and the pose of the object X o relative to the end effector. The robot begins in a known initial configuration q 0 and the initial pose of the bottle x o is drawn from a Gaussian distribution centered in front of the palm with a covariance matrix of Σ 1/2 = diag[5 mm, 10 cm]. At each timestep, the robot chooses an action a lat that moves 1 cm at a constant Cartesian velocity in the xy-plane, receives an observation o from its n o = 2 fingertip contact sensors, and receives a reward R.
The goal is to push the object into the 4 cm × 6 cm goal region X goal centered in front of the palm. We evaluate the performance of the policy by: (1) computing the probability that the object is in the goal region at each timestep and (2) computing the discounted sum of reward with γ = 0.99. If the robot takes an infeasible action, the simulation immediately terminates and the robot receives −1 reward for all remaining timesteps 1) Transition Model: The motion of the object is assumed to be quasistatic [33] and is simulated using the Box2D physics simulator [7]. We simulate uncertainty in the model by sampling the hand-object friction coefficient and center of the object-table pressure distribution from Gaussian distributions at each timestep [12,26].
2) Observation Model: After each timestep the robot receives a binary observation from a contact sensor on each of its fingertips. We assume that the sensors perfectly discriminate between contact and no-contact [26,27], but provide no additional information about where contact occurred on the sensor. The robot must take information-gathering actions, by moving side-to-side, to localize the object relative to the hand.
3) Rel-POMDP Discretization: We discretize S rel with a 1 cm resolution over a region of size 20 cm × 44 cm centered around the palm. We compute a transition model, observation model, and reward function for Rel-POMDP by taking the expectation over the continuous models by assuming that each discrete state represents a uniform distribution over the corresponding area of the continuous state space. We use these discrete models in both our Rel-POMDP and Lat-POMDP experiments.
States that leave the discretized region around the hand are treated as un-modelled contact. As in prior work [17,27], discretization is necessary to speed up evaluation of the model and to enable calculation of the QMDP and SARSOP baseline policies described below.

B. State Lattice Construction
The robot's actions tessellate X r into a lattice centered at T ee (q 0 ) with a resolution of ∆x r = ∆y r = 1 cm. First, we select a configuration q lat (x r ) using an iterative inverse kinematics solver initialized with the solution of an adjacent lattice point. Then, we use a Cartesian motion planner to find a trajectory that connects adjacent points while satisfying the constraints imposed by the action templates. In most configurations, the 1 cm lattice is sufficiently dense to simply connect adjacent lattice points with a straight-line trajectory in configuration space. Forward kinematics, inverse kinematics, and collision detection is provided by the Dynamic Animation and Robotics Toolkit (DART) [1].
As described in section V-A, the kinematic structure of the lattice is computed offline for the height of the support surface, but no collision checking is performed. Collision checks are deferred to runtime when the planner queries the feasibility of an action template. At that point, the edge is checked for collision against the environment using the Flexible Collision Library (FCL) [37].

C. Policies
We compare the quality of the policy produced by the proposed algorithm (Lat-DESPOT) against several policies: 1) Rel-QMDP: Choose the action at each timestep that greedily optimizes the single-step Q-value of the MDP value function associated from Rel-POMDP [32]. QMDP is optimal if all uncertainty disappears after executing one action and, as a result, does not perform multi-step information-gathering actions. QMDP is commonly used in robotic applications due to its speed, simplicity, and good performance in domains where information is easily gathered [13,22].
2) Rel-SARSOP: Compute a near-optimal policy for Rel-POMDP using SARSOP, an offline point-based method [28]. Rel-SARSOP serves as a baseline to demonstrate that information-gathering is beneficial and to verify that DESPOT is capable of finding a near-optimal solution. SARSOP has been shown to perform well on Rel-POMDP in prior work [17,27]. As in that work, we used the implementation of SARSOP provided by the APPL toolkit and allowed it to run for 10 minutes.
3) Rel-DESPOT: Use DESPOT to find a near-optimal policy for Rel-POMDP [48]. The solver uses Rel-QMDP as an upper bound and rollouts of Rel-QMDP as a lower bound (see section V-D for an explanation of a rollout policy). We 4) Lift-QMDP and Lift-SARSOP: Use the state lattice to evaluate the feasibility of the action returned by Rel-QMDP and Rel-SARSOP, respectively, before executing it. If the desired action is infeasible, instead execute the action with the highest estimated Q-value. This represents a heuristic solution for modifying a Rel-POMDP policy to avoid taking infeasible actions.
5) Lat-DESPOT: The proposed algorithm described in section V. We run DESPOT [48] on Lat-POMDP using Rel-QMDP as the upper bound and rollouts of Lift-QMDP as the lower bound (see section V-D for an explanation of a rollout policy). Just as with Rel-DESPOT, we used the implementation of DESPOT provided by the APPL toolkit and tuned all parameters on a set of training problem instances.

D. Rel-POMDP Experiments
We begin with a preliminary experiment on Rel-POMDP. Our goal is to: (1) validate that discretizing Rel-POMDP does not harm the performance of the optimal policy on the underlying continuous problem, (2) confirm that informationgathering is necessary, (3) verify that Rel-DESPOT does not perform worse than Rel-SARSOP, and (4) estimate V * rel [b 0 ]. 1) Discretization Validation: Figure 4 shows simulation results averaged over 500 instances of the experiment described above. Figure 4-Left shows the value of each policy achieved in 100 timesteps on simulated on the discretized Rel-POMDP problem described in section VI-A3. Figure 4-Right shows the probability that the movable object is in X goal at each timestep when simulated using the continuous model. The close agreement between the results suggests that discretizing the state space does not harm the performance of the policy on the underlying continuous problem.
2) Necessity of Information-Gathering: Rel-QMDP ( ) performs poorly on this problem, achieving < 30% success probability, because it pushes straight and does not attempt to localize the object. Rel-SARSOP ( ) and Rel-DESPOT ( ) execute information-gathering action by moving the hand laterally to drive the movable object into one of the fingertip contact sensors. Once the object has been localized, the policy successfully pushes it into the goal region. These results are consistent with prior work [17,27] and confirm that information-gathering is necessary to perform well on this problem.
3) Rel-DESPOT Policy: Our intuition is that it is more difficult to solve Lat-POMDP than Rel-POMDP. Therefore, it is important that we verify that DESPOT can successfully solve Rel-POMDP before applying it to Lat-POMDP. Our results confirm this is true: Rel-DESPOT ( ) achieves comparable value and success probability to Rel-SARSOP ( ).

E. Lat-POMDP Experiments
We evaluate the proposed approach (Lat-DESPOT) on Lat-POMDP in four different environments: (a) an empty table, (b) obstacles on the right, (c) obstacles on the left, and (d) more complex obstacles on the right. Note that kinematic constraints are present in all four environments, even the empty table, in the form of reachability limits, self-collision, and collision between the arm and the table. Scenes (b), (c), and (d) are constructed out of objects selected from the YCB dataset [6]. Figure 5 shows results for each scene averaged over 500 instances of the problem. Just as in the Rel-POMDP experiments, Figure 5-Top shows the value V lat achieved by each policy when evaluated on the discretized version of Lat-POMDP. Figure 5-Middle shows the probability that the movable object is in X goal at each timestep, treating instances that have terminated as zero probability. Figure 5-Bottom shows the proportion of Rel-QMDP, Rel-SARSOP, and Rel-DESPOT policies that are active at each timestep; i.e. have not yet terminated by taking an infeasible action. Note that all six policies-even Rel-MDP, Rel-SARSOP, and Rel-DESPOTare subject to kinematic constraints during execution.
1) Baseline Policies: Rel-QMDP (RM ) and Lift-QMDP (LM ) to perform poorly across all environments, achieving < 30% success probability, because they do not take multi-step information-gathering actions. Figure 5 confirms this: both QMDP policies perform poorly on all four environments.
Rel-SARSOP (RS ) and Rel-DESPOT (RD ) perform well on environments (a) and (b) because they hit obstacles late in execution. The converse is true on environments (c) and (d): both policies hit obstacles so quickly that they perform worse than Rel-QMDP! Lift-SARSOP (LS ) performs near-optimally on environments (a) and (b) because it: (1) does not take infeasible actions and (2) gathers information. However, it performs no better than Rel-QMDP on problem (d). This occurs because Lift-SARSOP myopically considers obstacles in a one-step lookahead and may oscillate when blocked. Small changes in the environment are sufficient to induce this behavior: the key difference between environments (b) and (d) is the introduction of a red box that creates a cul-de-sac in the lattice.
2) Lat-DESPOT Policy: Our proposed approach, Lat-DESPOT ( ), avoids myopic behavior by considering action feasibility during planning. Lat-DESPOT performs no worse than Lift-SARSOP on environments (a) and (b) and outperforms it on environments (c) and (d). Unlike Rel-SARSOP, Lat-DESPOT identifies the cul-de-sac in (d) during planning and avoids becoming trapped in it. In summary, Lat-DESPOT is the only policy that performs near-optimally on all four environments.
Our unoptimized implementation of Lat-DESPOT took between 200 µs and 2.4 s to select an action (a 1 cm motion of the end-effector) on a single core of a 4 GHz Intel Core i7 CPU. The policy was slowest to evaluate early in execution, when information-gathering is necessary, and fastest once the movable object is localized; i.e. once the upper and lower bounds become tight. The QMDP and SARSOP policies, which perform no planning online, took an average of 1.6 µs and 218 µs respectively. We are optimistic about achieving real-time performance from Lat-DESPOT by parallelizing scenario rollouts, optimizing our implementation of the algorithm, and leveraging the loose coupling between the optimal preand post-contact policies [27].
3) Upper Bound Validation: Finally, we combine the data in fig. 4-Left and fig. 5-Top to empirically verify the bound we proved in theorem 2; i.e. the optimal value function V * rel of Rel-POMDP is an upper bound on the optimal value function V * lat of Lat-POMDP. Note that the value of Rel-SARSOP ( ) and Rel-DESPOT ( ) on Rel-POMDP ( fig. 4-Left) are greater (i.e. less negative) than the value of all policies we evaluated on Lat-POMDP ( fig. 5-Top). The data supports our theory: the optimal value achieved on Rel-POMDP is no worse than the highest value achieved on Lat-POMDP in environment (a) and greater than the highest value achieved in environments (b), (c), and (d).

VII. DISCUSSION
In this paper, we formulated the problem of planar contact manipulation under uncertainty as a POMDP in the joint space of robot configurations and poses of the movable object (section I). We simplify the problem by constructing a lattice in the robot's configuration space and prove that, under mild assumptions, the optimal policy of Lat-POMDP will never take an infeasible action (section IV). We find a near-optimal policy for Lat-POMDP using DESPOT [48], a state-of-the-art online POMDP solver, guided by upper and lower bounds derived from Rel-POMDP (section V).
Our simulation results show that Lat-DESPOT outperforms five baseline algorithms on cluttered environments: it achieves a > 90% success rate on all environments, compared to the best baseline (Lift-SARSOP) that achieves only a 20% success rate on difficult problems. They also highlight the importance of reasoning about both object pose uncertainty and kinematic constraints during planning. Lat-DESPOT is a promising first step towards using recent advances in online POMDP solvers, like DESPOT [48], to achieve that goal. However, Lat-DESPOT has several limitations that we plan to address in future work: First, our approach assumes that the robot has perfect proprioception and operates in an environment with known obstacles. In practice, robots often have imperfect proprioception [4,24] and uncertainty about the pose of all objects in the environment. We hope to relax both of these assumptions by replacing the deterministic transition model for robot configuration with a stochastic model that considers the probability of hitting an obstacle.
Second, we are excited to scale our approach up a larger repertoire of action templates (including non-planar motion), solving more complex tasks, and planning in environments that contain multiple movable objects. Solving these more complex problems will require more informative heuristics. We are optimistic that more sophisticated Rel-POMDP policies, e.g. those computed by a point-based method [43] or Monte Carlo Value Iteration [2], could be used to guide the search.
Third, our approach commits to a single inverse kinematics solution q lat (x r ) for each lattice point. This prevents robots like HERB, which has a seven degree-of-freedom manipulator, from using redundancy to avoid kinematic constraints. We plan to relax this assumption in future work by generating multiple inverse kinematic solutions for each lattice point and instantiating an action template for each. Our intuition is that many solutions share the same connectivity and, thus, may be treated identically during planning.
Finally, we plan to implement Lat-DESPOT on a real robotic manipulator and evaluate the performance of our approach on real-world manipulation tasks.