610 likes | 1.34k Views
Self-Reconfigurable Robots Reconfiguration Algorithms Lei Wei lwei@cs.unc.edu 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.
E N D
Self-Reconfigurable Robots Reconfiguration Algorithms Lei Wei lwei@cs.unc.edu 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 (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> • Expand a compressed atom • Contract <atom> <dimension> • Compress an expanded atom • Bond <atom> <dimension> • 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
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 • 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
Two Goals of these primitives • They can assembled into linear sequences to effect Grain relocation
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
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 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: • Another is the Overlap metric:
Optimal 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.
Optimal Assignment Metric (Cont’d) • Let’s formalize the problem: • is the lattice distance between module and otherwise
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. 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.
References • 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.