Title: Self-Reconfigurable Robots
1 Self-Reconfigurable Robots
- Reconfiguration Algorithms
- Lei Wei
- lwei_at_cs.unc.edu
- 12/05/2006
2Reconfigurable 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.
3When 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
4Primary design goal
- To allow the robot to assume any geometric shape
5Applications
- Robot could match its geometric structure to the
shape of the surrounding terrain for versatile
locomotion. - To realize self-repair
6Two basic types of self-reconfiguring system
- Heterogeneous
- the modules may be different
- Homogeneous
- all the modules are identical
7Crystalline Atoms
- Identical robot modules
- Actuated by expansion and contraction
- Each module is an atom, each connector a bond,
group of atoms are crystals
8Physical Prototype
9Physical Prototype (Contd)
10Physical Prototype (Contd)
- 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.
11Physical Prototype (Contd)
- Crystalline robot systems are dynamic structures
- They can move using sequences of reconfigurations
to implement locomotion gaits - They can undergo shape metamorphosis
12Primitive Operations for Crystal Modules
- Expand ltatomgt ltdimensiongt
- Expand a compressed atom
- Contract ltatomgt ltdimensiongt
- Compress an expanded atom
- Bond ltatomgt ltdimensiongt
- Activate one of the atoms connectors to bond
with a neighboring atom - Free ltatomgt ltdimensiongt
- Deactivate one of the atoms connectors to break
a bond with a neighboring atom
13Revisit inchworm gait
- Use of these primitives for generating a linear
locomotion algorithm
14Another view of the primitives
15Basis 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?
16Requirements 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.
17Why 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?
18Module Relocation on Convex Structure
- Unlike other proposed unit modules(Yim,1993Murata
et al.,1994,1998Pamecha et al.,1996Kotay 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.
19Module 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.
20A 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.
21The 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
22Melt-Grow Planner (Continued)
- Centralized planning algorithm
- Run in O(n2) time, where n is the number of
Atoms in the Crystal - Trades optimality for simplicity
- Works on a useful subset Grain(4) of Crystals
23Grain(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
24Grain(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
25Why 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
26Grain Motion Primitives
- Scrunch
- Create a planar compression in a mobile Grain at
one of its faces - Relax
- Expand a compression at one face of a Grain
- Transfer
- Move a compression at one face of a Grain into
the adjacent neighbor Grain - Propagate
- 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
27Two Goals of these primitives
- They can assembled into linear sequences to
effect Grain relocation
28Two Goals of these primitives (Contd)
29The 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
30The 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
31Why 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
32Revisit example of Melt-Grow algorithm
S
I
G
33An Example Simulated Preplanned Reconfiguration
(Dog to Couch)
34An Example Simulated Preplanned Reconfiguration
(Dog to Couch)
35Potential 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
36Potential Applications and Drawbacks (Contd)
- 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
37How 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
38Lattice Kinematics
- See the white board
- Lattice metric denoted by
- 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. -
39General 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.
40General Formulation of Reconfiguration Problem
(Contd)
- 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.
41Defining 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
- Another is the Overlap metric
42Optimal Assignment Metric
- The optimal assignment metric 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.
43Optimal Assignment Metric (Contd)
- Lets formalize the problem
- is the lattice distance between
module and
otherwise
44Optimal Assignment Metric (Contd)
- An arbitrary assignment will have an associated
cost function - With the constraints
45Optimal Assignment Metric (Contd)
- Finally, we can define
- is the set of all possible assignments and
is equivalent to the set of permutations of
module labels.
46An 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
47Complexity 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.
48References
- 1. Daniela Rus and Marsette Vona, Crystalline
Robots Self-Reconfiguration with Compressible
Unit Modules, Autonomous Robots,2001 - 2. Kotay,K., Rus,D.,M., and McGray,C., The
Self-reconfigurable robotics molecule. In
Proceedings of the 1998 International Conference
on Robotics and Automation - 3. 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. - 4. Kotay,K., Rus,D.,1998. Motion synthesis for
the self-reconfiguring robotic module. In
proceedings of the 1998 International Conference
on Intelligent Robots and Systems.
49References
- 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.
50References
- 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.