Self-Reconfigurable Robots

Download Report

Transcript Self-Reconfigurable Robots

Self-Reconfigurable Robots
Reconfiguration Algorithms
Lei Wei
[email protected]
12/05/2006
Reconfigurable Robot– A Brief Review


A self-reconfigurable modular robotics system
comprises of a collection of homogeneous modules
that can connect, disconnect, and move around
adjacent modules.
What is a reconfiguration plan?

A reconfiguration plan is a sequence of module motions that
changes the shape of the system from a start configuration to
a goal configuration while enforcing constraints such as
avoiding collision and maintaining connectivity.
When we need reconfiguration?
Obstacle avoidance in highly constrained
and unstructured environments
 “Growing” structures composed of
modules to form bridges, buttresses, and
other civil structures in times of
emergency

Primary design goal

To allow the robot to assume any
geometric shape
Applications
Robot could match its geometric
structure to the shape of the surrounding
terrain for versatile locomotion.
 To realize self-repair

Two basic types of self-reconfiguring
system:
Heterogeneous:
the modules may be different
 Homogeneous:
all the modules are identical

Crystalline Atoms



Identical robot modules
Actuated by expansion and contraction
Each module is an atom, each connector a bond,
group of atoms are crystals
Physical Prototype
Physical Prototype (Cont’d)
Physical Prototype (Cont’d)
When fully contracted, the Atom
occupies a square with a 2 inch side.
 When fully expanded, the Atom occupies
a square with a 4 inch side.
 By manipulating the size of the Atom, it
is possible to approximate any finite sold
shape to an arbitrary precision.

Physical Prototype (Cont’d)

Crystalline robot systems are dynamic
structures:
They can move using sequences of
reconfigurations to implement locomotion
gaits
 They can undergo shape metamorphosis

Primitive Operations for Crystal Modules

Expand <atom> <dimension>


Contract <atom> <dimension>


Compress an expanded atom
Bond <atom> <dimension>


Expand a compressed atom
Activate one of the atom’s connectors to bond
with a neighboring atom
Free <atom> <dimension>

Deactivate one of the atom’s connectors to break
a bond with a neighboring atom
Revisit “inchworm gait”

Use of these primitives for generating a
linear locomotion algorithm
Another view of the primitives
Basis for Self-Reconfiguration
As mentioned before, the primary design
goal for a self-reconfiguring robot is to
allow the robot to assume any geometric
shape in a dynamic fashion.
 How can we guarantee a unit modular
robotic system can reconfigure itself?

Requirements for self-reconfiguration


Structure Formation:
groups of modules can be assembled into arbitrarily
shaped rigid structures.
Ensures any geometric structure can be aggregated
from some collection of modules.
Module relocation:
in every structure composed of unit modules, some
unit module can be relocated to each location on the
surface of the structure without human intervention.
Provides for shape metamorphosis in a general way:
From starting structure S to goal G incrementally.
Why Crystalline Modules?


Crystalline Atoms can be packed tightly approximate
any three dimensional structure. By manipulating the
size of the Atom, we can use this to represent any
solid geometric shape to an arbitrary precision.
How to implement relocating a Module on a Crystal?
Module Relocation on Convex
Structure


Unlike other proposed unit modules(Yim,1993;Murata et
al.,1994,1998;Pamecha et al.,1996;Kotay and
Rus,1998,1999)which can relocate only by traveling on the
surface of a structure, Crystalline Atoms can be relocated by
traveling through the volume of a Crystal.
An Atom can be relocated in constant time on any convex
structure.
Module Relocation on non-convex
Structure

When the Crystalline robot structure is
non-convex, a similar algorithm effects
the module relocation operation in O(k)time, where k is the number of concave
angles in the structure.
A planner for Shape Metamorphosis
Given a pair of Crystals (S,G), each
composed of n Atoms, a planner finds a
feasible reconfiguration plan P that
transform S into G.
 A reconfiguration plan P is a partially
ordered sequence of Atom primitive
operations.

The Melt-Grow Algorithm--At a Glance



Notation: S is the starting Crystal
G is the goal Crystal
I is the intermediate Crystal
Input: S, G
Melt-Grow: Melt S into I
Grow G out of I
Melt-Grow Planner (Continued)

Centralized planning algorithm
 Run in O(n^2) time, where n is the number of
Atoms in the Crystal
 Trades optimality for simplicity
 Works on a useful subset Grain(4) of Crystals
Grain(n) Class of Crystals
Contains all crystals that can be tiled by
cubic (or square, in 2D) blocks of Atoms
of side-length n
 The set of planes( or edges, in 2D) that
coincide with all sides of all blocks
intersect only at block edges and corners
 Each block of Atoms is a Grain

Grain(4) example
A 2D Crystal in
Grain(4)
A 2D Crystal not in
Grain(4) because
the bottom grain is
not aligned with
the top ones
Why use Grains?
Moving atoms requires other Atoms to
act as “helpers”
 Using Grains ensures that helper Atoms
are always available
 Expansion and contraction operation
now act on a whole face of the Grain at
one time

Grain Motion Primitives

Scrunch


Relax


Move a compression at one face of a Grain into the adjacent
neighbor Grain
Propagate


Expand a compression at one face of a Grain
Transfer


Create a planar compression in a mobile Grain at one of its
faces
Move a compression at one face of a Grain to the opposing face
of that Grain
Convert

Relocate a compression at one face of a Grain to one of the
orthogonal faces of that Grain
Two Goals of these primitives

They can assembled into linear
sequences to effect Grain relocation
Two Goals of these primitives
(Cont’d)
The second Goal

All the 5 primitives all always feasible

Each primitive maintains 3 invariants:
The moving Grain remains internally connected
 The Atoms in the moving Grain never crash
 There is some connected path from some Atom
in every neighboring Grain, through the moving
Grain, to some Atom in every other neighboring
Grain

The Melt-Grow Planner

Melt algorithm


Melt works by finding a mobile Grain g in S,
transporting g to a place in I, and repeating
until all Grains are in I.
Grow algorithm

Grow works by selecting mobile Grains from
I and transporting them to locations in G
until all Grains are in G
Why use an intermediate Crystal?
To help maintain stability during
reconfiguration in situations where
gravity is present
 To simplify the selection of mobile Grains
 A Grain is mobile iff it can be removed
without disconnecting the Crystal

Revisit example of Melt-Grow algorithm
S
I
G
An Example Simulated Preplanned
Reconfiguration (Dog to Couch)
An Example Simulated Preplanned
Reconfiguration (Dog to Couch)
Potential Applications and Drawbacks
Ability to adapt would allow such a robot
system to maneuver around, through, or
over a wide degree of obstacles
 Could navigate through narrow or
awkward passage ways
 Seems suitable only for tasks that do not
require rapid movement

Potential Applications and Drawbacks
(Cont’d)
The reconfiguration planning proposed is
a centralized algorithm requiring a
controller to know status of the entire
system
 The reconfiguration algorithm trades
optimality for simplicity

How to achieve optimal plan?
We need to define what the optimal
means.
 Optimality for reconfiguration strategies
can be measured in different ways:

Minimizing the number of module moves
 Minimizing time for reconfiguration
 Minimizing energy consumption during
reconfiguration

Lattice Kinematics
See the white board
 Lattice metric: denoted by  L (a, b)
where a and b are lattice points.


If the robot system is composed of square
modules, distance between modules would
be given by the Taxicab/Manhattan metric.
General Formulation of
Reconfiguration Problem

The Kinematics constraints governing
the motion:
Modules can only move into spaces which
are not already occupied.
 Every module must remain connected to at
least one other module.
 A single module may only move one lattice
space per timestep.

General Formulation of
Reconfiguration Problem (Cont’d)

Under those constraints, the reconfiguration
problem becomes:
Determination of the sequence of module
motions from any given initial configuration to
any given final configuration in a preferably
minimal number of moves.
 In order to solve this problem, a concept of
distance between configurations is needed.
Defining Distance Between
Configurations

Let the present configuration of the robot be
described by the set of modules A. And Let the
new configuration be defined by the set B.
 One possible configuration metric:
1
 ( A, B)  
0
(1)
C

A B
AB
Another is the Overlap metric:
 C( 2) ( A, B)  n | A  B |
Optimal Assignment Metric
The optimal assignment metric  ( A, B) between
two configurations A and B is given by an
optimal assignment of each element in A to an
element in B, such that the sum of the
distances between modules for the
assignment is minimized.
 Equivalently, this can be represented as
finding a minimum weight matching in a
bipartite graph.

(3)
C
Optimal Assignment Metric (Cont’d)

Let’s formalize the problem:
ai  b j
1
mij  
0
 dij   L (ai , b j ) is
otherwise
the lattice distance between
module a i and b j
Optimal Assignment Metric (Cont’d)

An arbitrary assignment will have an
associated cost function:

With the constraints:
Optimal Assignment Metric (Cont’d)

Finally, we can define:

is the set of all possible assignments
and is equivalent to the set of
permutations of module labels.
An Example

Fig (a) shows the present configuration of a six
module robot. (b) shows the new configuration and (c)
shows a labeling of the modules in the two
configurations
Complexity of the Problem
For any number of modules n, the
number of connected configurations
possible appears to be exponential in n.
 We have to look for heuristics which can
give a near optimal solution.

References
1.
2.
3.
4.
Daniela Rus and Marsette Vona, Crystalline Robots: SelfReconfiguration with Compressible Unit Modules, Autonomous
Robots,2001
Kotay,K., Rus,D.,M., and McGray,C., The Self-reconfigurable
robotics molecule. In Proceedings of the 1998 International
Conference on Robotics and Automation
Kotay,K., Rus,D.,M., and McGray,C., The Self-Reconfiguring
robotic molecule: Design and Control algorithms. In the 1998
Workshop on Algorithmic Foundations of Robotics.
Kotay,K., Rus,D.,1998. Motion synthesis for the selfreconfiguring robotic module. In proceedings of the 1998
International Conference on Intelligent Robots and Systems.
References
5.
6.
7.
8.
Kotay,K. and Rus, D. 1999. Locomotion versatility through
self-reconfiguration. Robotics and Autonomous Systems.
Yim, M.1993. A reconfigurable modular robot with multiple
modes of locomotion. In Proceedings of the 1993 JSME
Conference on Advanced Mechatronics, Tokyo, Japan.
Murata,S., Kurokawa,H.,and Kokaji,S. 1994. Self-assembling
machine. In Proceedings of the 1994 IEEE International
Conference on Robotics and Automation, San Diego.
Murata,S.,Kurokawa,H.,Yoshida,E.,Tomita,K., and Kokaji, S.
1998. A 3-D self-reconfigurable structure. In proceedings of the
1998 IEEE International Conference on Robotcs and
Automation, Leuven.
References
9. Pamecha,A.,Chiang,C.-J.,Stein,D., and Chirikjian,G.1996. Design
and implementation of metamorphic robots. In proceedings of the
1996 ASME Design Engineering Technical Conference and
Computers in Engineering Conference, Irvine,CA
10. A.Pamecha, I. Ebert-Uphoff, and G. Chirikjian, Useful metrics for
modular robot motion planning, in IEEE Transactions on Robotics
and Automation. Vol.13, 1997.