Sensorless planning

advertisement
NONDETERMINISTIC
UNCERTAINTY &
SENSORLESS PLANNING
Sensing error
Partial observability
Unpredictable dynamics
Other agents
UNCERTAINTY MODELS

This class: Nondeterministic uncertainty


f(x,u) -> a set of possible successors
Probabilistic uncertainty

P(x’|x,u): a probability distribution over successors
x’, given state x, control u
UNCERTAINTY IN MOTION:
REASONING WITH STATE SETS

x’ = x + e, e  [-a,a]
t=0
-a
-2a
a
t=1
2a
Belief State: x(t)  [-ta,ta]
t=2
BELIEF STATE DYNAMICS

F(x,u) = { x’ | x’=f(x,u) is a possible successor }

e.g., F(x,u) = [x+u-e , x+u+e]
BELIEF STATE DYNAMICS

F(x,u) = { x’ | x’=f(x,u) is a possible successor }


e.g., F(x,u) = [x+u-e , x+u+e]
Belief prediction: given x(0)  X0 and
u(0),…,u(t-1),

Find the set Xt such that any point in Xt is a possible
realization of x(t)

𝑋𝑡 =
𝑥∈𝑋𝑡−1
𝐹(𝑥, 𝑢 𝑡 − 1 )
BELIEF STATE DYNAMICS

F(x,u) = { x’ | x’=f(x,u) is a possible successor }



e.g., F(x,u) = [x+u-e , x+u+e]
Belief prediction: given x(0)  X0 and
u(0),…,u(t-1),

Find the set Xt such that any point in Xt is a possible
realization of x(t)

𝑋𝑡 =
𝑥∈𝑋𝑡−1
𝐹(𝑥, 𝑢 𝑡 − 1 )
Boundary-tracking on a grid: level set methods

Applicable to low dimensions (up to ~4)
SENSORLESS PLANNING
MARBLE IN A TILTING MAZE EXAMPLE

Use natural dynamics of compliance to ensure
that uncertainty stays bounded / shrinks
Command
On contact,
certainty is
increased
Uncertain
outcome
A guaranteed
solution
QUESTIONS
Is a solution possible?
 How is uncertainty represented / transformed?
 Need for actions that reduce uncertainty

GOLDBERG (1998): ORIENTING
POLYGONAL PARTS WITHOUT SENSING

A single parallel jaw gripper can orient parts
that have a polygonal convex hull.
ASSUMPTIONS:
All motions appear in the plane
 The gripper has two parallel jaws
 The gripper moves orthogonally to its jaws
 The object’s convex hull behaves rigidly
 The object is presented in isolation
 The object is initially between the jaws
 Both jaws make contact simultaneously with the
object
 Once contact is made, the jaws stay in contact
with the object throughout the grasping motion.
 There is no friction between the jaws and the
object

SQUEEZE ACTIONS

Let a squeeze action, α, be the combination of
orienting the gripper at angle α w.r.t. a fixed
world frame, closing the jaws as far as possible,
and then opening the jaws.

To avoid squeezing the object right at its endpoints, a
squeeze action, α, can always be followed by closing
the gripper at angle α + ε, rotating it by -ε, and then
opening it.
ORIENTING A RECTANGLE

A 00 squeeze action, followed by a 450 squeeze
action can orient a rectangular part up to
symmetry.
DIAMETER FUNCTIONS

The diameter function, d:S1->R, describes how
the distance between jaws varies, if they were to
make contact with the object at angle θ.

the diameter of the grasped object at direction θ is
defined to be the maximum distance between two
parallel supporting lines at angle θ.
SQUEEZE FUNCTIONS

The squeeze function, s:S1->S1, is a transfer
function, such that if θ is the initial orientation of
the object w.r.t. the gripper, then s(θ) is the
object’s orientation after the squeeze action is
completed.


Define an s-interval to be [a,b), s.t. a, b are points of
discontinuity in the squeeze function.
Define the s-image of a set, s(Θ), to be the smallest
interval containing the following set: {s(θ)|θ is in Θ}.
ORIENTING A RECTANGLE (CONTINUED)
SQUEEZE FUNCTIONS (CONTINUED)
Θ1 – is an example of an s-interval
s(Θ1) – is the s-image of Θ1
ORIENTING A RECTANGLE (CONTINUED)
Possible Orientations
Before the Squeeze Action
Gripper
Orientatio
n
Possible Orientations
After the Squeeze Action
1.
2.
3.
4.
THE ALGORITHM
Goal:
Given a list of n vertices describing the
convex hull of a polygonal part, find the shortest
sequence of squeeze actions guaranteed to orient the
part up to symmetry.

THE ALGORITHM
Compute the squeeze function;
Find the widest single step in the squeeze
function and set Θ1 equal to the corresponding
s-interval;
While there exists an s-interval Θ s.t.
|s(Θ)|<|Θi|:
1)
2)
3)
•
•
4)
Set Θi+1 equal to the widest such s-interval
Increment i;
Return the list (Θ1 , Θ2 , …, Θi ).
ORIENTING A RECTANGLE (CONTINUED)
The squeeze function plots illustrate steps 2 and 3 of the algorithm:
The output list is: (Θ1 , Θ2)
RECOVERING THE ACTION PLAN
Goal:
Given a list of i s-intervals (Θ1 , Θ2 , …, Θi )
generated by the described algorithm, construct a
plan, ρi ,consisting of i squeeze actions (ai , ai-1 , …,
a1) that collapses all orientations in Θi to the
unique orientation s(Θ1).

RECOVERING THE ACTION PLAN

Observe that for the list (Θ1 , Θ2 , …, Θi ,.. Θn):
|s(Θi+1)|<|Θi|, therefore we could collapse the
interval s(Θi+1) to a point with a single squeeze action
at angle 0 if s(Θi+1) could be aligned with Θi.
This can be done by rotating the gripper by:
s(θi+1) - θi = ai degrees,
where θi and s(θi+1) can be taken as the start of the sinterval Θi and the start of the s-image of s(Θi+1),
respectively.
ORIENTING A RECTANGLE (CONTINUED)
One possible way of aligning s(Θ2) with Θ1 for the rectangular part example is to
rotate the gripper by 450, which results in shifting s(Θ2) by -450 = -π/4.
ALGORITHM ANALYSIS

Correctness:


Completeness:


For any plan ρ, ρ(θ + T) = ρ(θ) + T, where T is the smallest
period in the object’s squeeze function. Thus, the plan ρ
orients the part up to symmetry. It also does it in the
minimal number of steps (see the paper).
Given a starting s-interval, we can either find a larger sinterval that has a smaller s-image, or the starting sinterval is a period of symmetry in the squeeze function.
Therefore, we can generate a sequence of s-intervals (Θ1 ,
Θ2 , …, Θi ) of increasing measure.
Complexity:

Runs in time O(n2log n) and finds plans of length O(n2)
(Note: there are newer derivations of lower complexity)
EXTENSION: PUSH-GRASP ACTIONS
Assuming simultaneous contact is unreliable
 Let a push-grasp action, α, be the combination
of orienting the gripper at angle α w.r.t. a fixed
world frame, translating the gripper in direction
α + π/2 for a fixed distance, closing the jaws as
far as possible, and then opening the jaws.
 Can derive a push-grasp squeeze function as
before and apply the same algorithm

NONDETERMINISM IN SENSING

Achieve goal for every possible sensor result in
belief state
Move
1
2
Minimizing # of
sensor results
reduces
branching factor
Sense
3
4
Outcomes
INTRUDER FINDING PROBLEM
robot’s
visibility
region
hiding
region



cleared region
robot
1
2
3
4
5
6
A moving intruder is hiding in a 2-D workspace
The robot must “sweep” the workspace to find
the intruder
Both the robot and the intruder are points
DOES A SOLUTION ALWAYS EXIST?
No !
Easy to test:
“Hole” in the workspace
Hard to test:
No “hole” in the workspace
INFORMATION STATE
a = 0 or 1
c = 0 or 1
b = 0 or 1
(x,y)
0  cleared region
1  hidding region

Example of an information state = (x,y,a=1,b=1,c=0)

An initial state is of the form (x,y,1, 1, ..., 1)

A goal state is any state of the form (x,y,0,0, ..., 0)
CRITICAL LINE
b=1
a=0
a=0
b=1
Information state is unchanged
b=0
a=0
Critical line
CRITICALITY-BASED
DISCRETIZATION
A
E
B
C
D
Each of the regions A, B, C, D, and E
consists of “equivalent” positions of the robot,
so it’s sufficient to consider a single position
per region
CRITICALITY-BASED
DISCRETIZATION
(C, 1, 1)
A
(B, 1)
E
B
C D
(D, 1)
CRITICALITY-BASED
DISCRETIZATION
(C, 1, 1)
A
(B, 1)
(D, 1)
E
B
C
D
(C, 1, 0)
(E, 1)
CRITICALITY-BASED
DISCRETIZATION
(C, 1, 1)
A
(B, 1)
(D, 1)
E
B
C D
(C, 1, 0)
(B, 0)
(D, 1)
(E, 1)
CRITICALITY-BASED
DISCRETIZATION
(C, 1, 1)
A
(B, 1)
(D, 1)
E
B
C
D
Discretization chosen explicitly
to get small search trees
(C, 1, 0)
(B, 0)
(D, 1)
(E, 1)
REMARKS
Planners that use nondeterministic uncertainty
models optimize for the worst case
 In general, devising good discretizations /
information state representations takes a bit of
ingenuity

NEXT TIME

Probabilistic uncertainty
Download