USRG 2002 Elizabeth M. Tsai Jennifer E. Walter Nancy M. Amato Swarthmore College Vassar College Texas A&M University Concurrent Reconfiguration of Hexagonal.

Slides:



Advertisements
Similar presentations
Geometry Point Line Line segment Ray Plane Parallel lines
Advertisements

Octagonal Drawing Johan van Rooij. Overview What is an octagonal drawing Good slicing graphs Octagonal drawing algorithm for good slicing graphs Correctness.
Lines of Symmetry pg. 5 (LT #1)
Every edge is in a red ellipse (the bags). The bags are connected in a tree. The bags an original vertex is part of are connected.
Motion Planning for Point Robots CS 659 Kris Hauser.
Junction Trees: Motivation Standard algorithms (e.g., variable elimination) are inefficient if the undirected graph underlying the Bayes Net contains cycles.
Randomized Motion Planning for Car-like Robots with C-PRM Guang Song and Nancy M. Amato Department of Computer Science Texas A&M University College Station,
1 Motion Planning Algorithms : BUG-family. 2 To plan a path  find a continuous trajectory leading from initial position of the automaton (a mobile robot)
Providing Haptic ‘Hints’ to Automatic Motion Planners Providing Haptic ‘Hints’ to Automatic Motion Planners Burchan Bayazit Joint Work With Nancy Amato.
CS223B Assignment 1 Recap. Lots of Solutions! 37 Groups Many different approaches Let’s take a peek at all 37 results on one image from the test set.
Randomized Motion Planning for Car-like Robots with C-PRM Guang Song, Nancy M. Amato Department of Computer Science Texas A&M University College Station,
SubSea: An Efficient Heuristic Algorithm for Subgraph Isomorphism Vladimir Lipets Ben-Gurion University of the Negev Joint work with Prof. Ehud Gudes.
Deadlock-Free and Collision-Free Coordination of Two Robot Manipulators Patrick A. O’Donnell and Tomas Lozano-Perez ’89 Presented by Vishal Srivastava.
CS 326A: Motion Planning Basic Motion Planning for a Point Robot.
Inverse Kinematics Jacobian Matrix Trajectory Planning
Providing Haptic ‘Hints’ to Automatic Motion Planners Providing Haptic ‘Hints’ to Automatic Motion Planners Burchan Bayazit Joint Work With Nancy Amato.
Chapter 5.4 Artificial Intelligence: Pathfinding.
GEOMETRY.
CSE53111 Computational Geometry TOPICS q Preliminaries q Point in a Polygon q Polygon Construction q Convex Hulls Further Reading.
1 Year 10 Revision Notes. 2 Revision List 1.Types of Number11. 3-d Shapes 2.Rounding12. Volume 3.Time13. Symmetry 4.The Calendar14. Angles 5.Negative.
Modeling. Topology Topology describes an object’s shape, number of spans, and degree. For polygon objects this includes vertex positions.
Basics of Rendering Pipeline Based Rendering –Objects in the scene are rendered in a sequence of steps that form the Rendering Pipeline. Ray-Tracing –A.
Chapter 5.4 Artificial Intelligence: Pathfinding.
Reagan’s unit 5 math vocab
Slide 14-1 Copyright © 2005 Pearson Education, Inc. SEVENTH EDITION and EXPANDED SEVENTH EDITION.
© Manfred Huber Autonomous Robots Robot Path Planning.
UNIT THREE REVIEW Geometry 217. True/False  A translation is an arrangement of shapes that covers a plane completely without gaps or overlaps.  False,
Vertex – A point at which two or more edges meet Edge – A line segment at which two faces intersect Face – A flat surface Vertices, Edges, Faces.
Part 6: Graphics Output Primitives (4) 1.  Another useful construct,besides points, straight line segments, and curves for describing components of a.
Acute angle An angle with a measure less than 90 degrees.
7.1 and 7.2: Spanning Trees. A network is a graph that is connected –The network must be a sub-graph of the original graph (its edges must come from the.
The problem of the shortest path The classic Dijkstra algorithm solution to this problem The adaptation of this solution to the problem of robot motion.
Path Planning for a Point Robot
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars.
Quadratic Surfaces. SPLINE REPRESENTATIONS a spline is a flexible strip used to produce a smooth curve through a designated set of points. We.
Tessellations *Regular polygon: all sides are the same length (equilateral) and all angles have the same measure (equiangular)
1 Deterministic Collision-Free Communication Despite Continuous Motion ALGOSENSORS 2009 Saira Viqar Jennifer L. Welch Parasol Lab, Department of CS&E TEXAS.
Unit 5 Vocab By: Gus Koza. Acute angle An angle that is less than 90 degrees.
ITEC 2620A Introduction to Data Structures Instructor: Prof. Z. Yang Course Website: 2620a.htm Office: TEL 3049.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Administration Feedback on assignment Late Policy
ICRA 2002 Jennifer E. Walter Elizabeth M. Tsai Nancy M. Amato Vassar College Swarthmore College Texas A&M University Choosing Good Paths for Fast Distributed.
Motion What are some words and/or concepts we use when describing motion? Look at an object. Close your eyes. In a few seconds, open them again. Can you.
Geometry Vocabulary Point an exact location in space Line A straight path that goes on forever in both directions A and B are any 2 points on the line.
I go on and on in both directions What am I?. A line.
JRLeon Geometry Chapter 10.1 HGSH
Optimal Path Planning Using the Minimum-Time Criterion by James Bobrow Guha Jayachandran April 29, 2002.
System Model: Physical Module Constraints: 1)A module must have a minimum of two adjacent free sides in order to move. 2) A module must have an adjacent.
Course 3 Binary Image Binary Images have only two gray levels: “1” and “0”, i.e., black / white. —— save memory —— fast processing —— many features of.
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
Beth Tsai Jennifer E. Walter Nancy M. Amato Department of Computer Science Texas A&M University, College Station Distributed Reconfiguration of Metamorphic.
1 Minimum Spanning Tree: Solving TSP for Metric Graphs using MST Heuristic Soheil Shafiee Shabnam Aboughadareh.
Beth Tsai Jennifer E. Walter Nancy M. Amato Department of Computer Science Texas A&M University, College Station Distributed Reconfiguration of Metamorphic.
Geometry Point Line Line segment Ray Plane Parallel lines
CS 326A: Motion Planning Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe,
Polygons and Symmetry Goals: Define a Polygon
Geometry Point Line Line segment Ray Plane Parallel lines
Geometry Point Line Line segment Ray Plane Parallel lines
Point-a location on a plane.
HW2 EE 562.
Warm up Rotate P(-4, -4) 180 Rotate Q(-1, -3) 90 CCW
Warm up Rotate P(-4, -4) 180 Rotate Q(-1, -3) 90 CCW
Warm up Rotate P(-4, -4) 180 Rotate Q(-1, -3) 90 CCW
ITEC 2620M Introduction to Data Structures
Geometry Point Line Line segment Ray Plane Parallel lines
Geometry Point Line Line segment Ray Plane Parallel lines
Geometry Point Line Line segment Ray Plane Parallel lines
Chapter 4 . Trajectory planning and Inverse kinematics
Geometry Point Line Line segment Ray Plane Parallel lines
Presentation transcript:

USRG 2002 Elizabeth M. Tsai Jennifer E. Walter Nancy M. Amato Swarthmore College Vassar College Texas A&M University Concurrent Reconfiguration of Hexagonal Metamorphic Robots: Algorithms for Fast Execution and Obstacle Envelopment

USRG 2002 Metamorphic Robotic Systems What are metamorphic robots? robots with the capability to change shape i.e. Transformers What are Transformers? fighting robots that transform into everyday objects (e.g. cars, planes, appliances) Sunstreaker Soundwave

USRG 2002 Transformer Background Two types of transformers… 1)Autobots “good guys” lead by Optimus Prime 2) Decepticons “bad guys” lead by Megatron

USRG 2002 Metamorphic Robotic Systems We model robots like those developed by Chirikjian (ICRA94) Metamorphic modules are... 1)Uniform in structure and capability homogenous with regular symmetry modules fit together with minimal gaps 2)Individually mobile to allow system to change shape modules can connect, disconnect, and move over adjacent modules System composed of masses or clusters of robots (modules)

USRG Determine sequence of moves to reconfigure modules from an initial configuration I to a final configuration G Motion Planning Problem Statement time I G | I | = |G| = n (number of modules in system) any module can fill any cell in G Step 1: move 3 CCW Step 2: move 3 CCW Step 3: move 2 CCW Step 4: move 2 CCW Step 5: move 2 CCW Additionally, we want as many modules as possible to move concurrently.

USRG D hexagonal modules move by... Our Approach SSSSS A chain of unmoving modules that other modules move across during reconfiguration is called the substrate path. A combination of rotation and changing joint angles, disconnecting and connecting sides at appropriate times Modules “crawl” over unmoving neighbors ( S for substrate) Centralized motion plan for efficient concurrent reconfiguration that avoids deadlock and collision without message passing

USRG )Select an admissible substrate path that approximately bisects the goal configuration. General Reconfiguration Strategy 3)Fill in the goal portion of the substrate path first, then fill in rest of goal cells above and below substrate path. I and G initially intersect in some goal cell in the westernmost column of G 1)Determine if G is admissible. If not, report failure.

Admissible Structures Pockets like this occur frequently in systems of hexagonal modules due to module shape. Our admissible structures are defined to eliminate configurations that contain such pockets

Admissible Structures Pockets like this occur frequently in systems of hexagonal modules due to module shape. Our admissible structures are defined to eliminate configurations that contain such pockets

Admissible Structures Pockets like this occur frequently in systems of hexagonal modules due to module shape. Our admissible structures are defined to eliminate configurations that contain such pockets

Admissible Structures Pockets like this occur frequently in systems of hexagonal modules due to module shape. Our admissible structures are defined to eliminate configurations that contain such pockets

Admissible Structures Pockets like this occur frequently in systems of hexagonal modules due to module shape. Our admissible structures are defined to eliminate configurations that contain such pockets

Admissible Structures Pockets like this occur frequently in systems of hexagonal modules due to module shape. Our admissible structures are defined to eliminate configurations that contain such pockets c 1 c 2 c 3 i Hierarchy of Admissible Structures viable cell – cell with clearance of three on each side cell i has SE-clearance

Admissible Structures Pockets like this occur frequently in systems of hexagonal modules due to module shape. Our admissible structures are defined to eliminate configurations that contain such pockets c 1 c 2 c 3 i Hierarchy of Admissible Structures viable cell – cell with clearance of three on each side cell i has SE-clearance admissible surface – surface composed of viable cells Goal cell Obstacle cell

Admissible Structures admissible substrate path – an east- monotone admissible surface allows traversal on both sides without collision or deadlock and spans G Substrate path cell Goal cell

Admissible Structures admissible substrate path – an east- monotone admissible surface allows traversal on both sides without collision or deadlock and spans G Admissible G Inadmissible G Substrate path cell Goal cell admissible goal – contains an admissible substrate path

Admissible Structures admissible substrate path – an east- monotone admissible surface allows traversal on both sides without collision or deadlock and spans G Admissible G Inadmissible G Substrate path cell Goal cell admissible goal – contains an admissible substrate path Our admissibility definitions are directly related to the degree of parallelism possible – i.e. how closely moving modules can be spaced without becoming deadlocked

USRG 2002 Selecting Substrate Paths Our method for finding the best admissible substrate path for reconfiguration is summarized as follows: 1) Convert G to an acyclic graph, H, and direct the edges 2)Use a graph traversal algorithm combined with a weighting heuristic to rank all candidate paths by straightness 3)Use a second heuristic to select a path that most evenly bisects the goal Example Substrate Path Selection: (1) Goal G converted to H (2a) Cost 1 path (2b) Cost 0 path (3) Selected path best bisects goal

USRG 2002 Simulation Results The effectiveness of our strategy to choose the “best” path was verified using a simulator to count the number of rounds needed to reconfigure different goal shapes. Path chosen Other paths Number of Rounds (1) (2) (3) (1)

USRG 2002 Simulation Results The running time of the TraverseGraph algorithm was also verified by our simulator by counting the total number of vertex visits for a given graph.

USRG 2002 Reconfiguration with a Single Obstacle We consider the presence of a single obstacle in the environment that must… be enclosed completely inside the goal be admissible not involve purple swingy-weapons or water What is an admissible obstacle? an obstacle that contains an admissible surface How to check for obstacle admissibility For each obstacle cell on the perimeter of the obstacle… …for each side of the cell that is a goal cell… …check two and three cells over for another goal cell (i.e. pocket of size 1 or 2) Obstacle with pocket of size 1 Megatron is an inadmissible obstacle

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell

USRG 2002 Determining Substrate Path with a Single Obstacle Original Idea 1)Direct the edges west of the goal to determine the “entrance” point for the path 2)Direct the edges inside the obstacle to determine the “exit” point for the path 3)Direct the edges east of the goal, going out of the exit point 4)Form the final substrate path by concatenating the above path segments But wait! We have a problem! Small pockets that modules can’t crawl through can form where the substrate path meets the obstacle These pockets are a result of the East-To-West filling-in strategy Goal cell Substrate goal cell Pocket formed by obstacle and filled goal cells

USRG 2002 Repairing the Obstacle To remedy the “pocket problem,” we “repair” the obstacle surface to make it traversable. Why? want to avoid modules getting trapped when filling in from east to west want modules to crawl over obstacle surface as a substrate path during reconfiguration How do we “repair” an obstacle? form a cone shape with the eastern-most column of the obstacle as its base fill in this cone from south to north, and from west to east Unrepaired obstacle Repaired obstacle Goal cell Obstacle cell Repaired cell

USRG 2002 Future Work 1.Develop algorithms for dealing with multiple obstacles in the environment. 2.Algorithmic work: asynchronous reconfiguration algorithms. procedures for deadlock and collision resolution. “complete” reconfiguration, from arbitrary initial to arbitrary goal. 3. Build fighting robots.