1 / 54

Elizabeth M. Tsai Jennifer E. Walter Nancy M. Amato

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

Download Presentation

Elizabeth M. Tsai Jennifer E. Walter Nancy M. Amato

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

  3. Transformer Background Two types of transformers… • Autobots 2) Decepticons • “good guys” • lead by Optimus Prime • “bad guys” • lead by Megatron

  4. Metamorphic Robotic Systems • We model robots like those developed by Chirikjian (ICRA94) • System composed of masses or clusters of robots (modules) 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

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

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

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

  8. 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

  9. 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

  10. 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

  11. 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

  12. 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

  13. c c c 1 2 3 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 Hierarchy of Admissible Structures • viable cell – cell with clearance of three on each side i

  14. c c c 1 2 3 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 Hierarchy of Admissible Structures • viable cell – cell with clearance of three on each side • admissible surface – surface composed of viable cells Goal cell i Obstacle cell

  15. 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

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

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

  18. 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 • Use a graph traversal algorithm combined with a weighting heuristic to rank all candidate paths by straightness • Use a second heuristic to select a path that most evenly bisects the goal Example Substrate Path Selection: (3) Selected path best bisects goal (2a) Cost 1 path (1) Goal G converted to H (2b) Cost 0 path

  19. Path chosen Other paths 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. 120 96 100 92 91 89 77 80 60 Number of Rounds (1) (1) (1) (1) (1) 40 (2) (3) (3) (2) (1) (1) (3) (2) (2) 20 0

  20. 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.

  21. 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) 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 Megatron is an inadmissible obstacle Obstacle with pocket of size 1

  22. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments

  23. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  24. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  25. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  26. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  27. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  28. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  29. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  30. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  31. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  32. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  33. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  34. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  35. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  36. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  37. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  38. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  39. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  40. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  41. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  42. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  43. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  44. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  45. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  46. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  47. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  48. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  49. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

  50. Determining Substrate Path with a Single Obstacle • Original Idea • Direct the edges west of the goal to determine the “entrance” point for the path • Direct the edges inside the obstacle to determine the “exit” point for the path • Direct the edges east of the goal,going out of the exit point • Form the final substrate path by concatenating the above path segments But wait! We have a problem! Goal cell Substrate goal cell • 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

More Related