Three-dimensional construction with mobile robots and modular blocks


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Three-dimensional construction with mobile robots and modular blocks

  1. 1.
  2. 2. Three-Dimensional Construction with Mobile Robots and Modular Blocks<br />Written By: Justin Werfel and <br />RadhikaNagpal<br />Presented By: Russell Winkler<br />
  3. 3. Self-Reconfigurable Mobile Robots<br />Designed For<br />Frequent Reconfiguration<br />Locomotion over different terrains<br />Three-dimensional playback<br />Not Designed For<br />Static Structures<br />Bridges<br />Tables<br />
  4. 4. Goal<br />“To be able to deploy an unspecified number of robots into an obstacle-free workspace, along with a supply of free blocks and a single-block ‘seed’ for the structure, and have construction proceed without further intervention.”<br />
  5. 5. Assumptions<br />Weightless environment<br />Active units may move freely in any direction and in three dimensions<br />All blocks are cubic<br />Blocks contain self aligning connectors<br />Once a block is attached it is never detached<br />
  6. 6. The Units<br />Passive Units<br />No mobility<br />Limited communication<br />Locally with physically attached neighbors<br />To active units<br />Optimized for structural stability<br />Active Units<br />Manipulators of passive units<br />Do not communicate with other active units<br />
  7. 7. The Passive Units (Blocks)<br /><ul><li>The “seed” block
  8. 8. Knowledge of “shape map”
  9. 9. Coordinates (0,0,0)</li></ul>“seed” block<br />I need blocks here<br /><ul><li>The seed block knows where blocks need to be attached in the local reference of it’s 6 sides and communicates this to the active units (robots)</li></ul>Other Blocks placed in its row<br /><ul><li>When the robots connects a new block, the block receives the shape map, it’s coordinates, and other relevant block information</li></ul>Information is passed back to other blocks regarding the newly filled position<br />Other Blocks placed in its plane<br />
  10. 10. Block Rules<br />The Shape Map Rule <br />A block cannot be placed at any site that does not match the shape map (duh)<br />
  11. 11. Block Rules<br />The Row Rule<br />A contiguous group of blocks in the same row can start with its first block attached anywhere, but successive blocks must be attached contiguously from there<br />Blocks can be attached to EITHER of these spots, but not both<br />
  12. 12. More Block Rules<br />The Plane Rule<br />A contiguous group of blocks in the same plane can originate anywhere but thereafter must grow from that point of origin<br />If this entire face has been designated to add blocks to, A block may be added to ANY of the faces, but after the first addition, blocks must be added from that first block<br />
  13. 13. The Rules in Action<br />The Desired Shape<br />The shape map does not specify that a block should be placed here<br />ILLEGAL!<br />Violates the plane rule<br />ILLEGAL!<br />ILLEGAL!<br />Violates the row rule<br />
  14. 14. The Rules in Action<br />Following these rules will provably result in the reliable construction of any structure meeting these criteria<br />There are no loops<br />No more than two “couches”<br />Kind of<br />Any close parts<br />Like a U shape<br />
  15. 15. Back to Blocks<br /><ul><li>Seed block with 6 open faces
  16. 16. Add an additional block, now both blocks have 5 open faces
  17. 17. Faces with an attached block are designated as done
  18. 18. Add more blocks, the center four have 4 open faces and the outer blocks have 5 open faces
  19. 19. Add a block in another row and the blocks send signals informing other blocks that their faces are no longer open.
  20. 20. Faces that are not involved in the shape map are immediately designated as closed</li></ul>Faces are now “closed”<br />Faces are now “corners”<br />
  21. 21. Back to Blocks<br />Each block maintains information about all 6 faces<br />Each face maintains information on 3 state variables<br />A plane “P” that is parallel to the face<br />Two rows that extend out from where a block attached to the face would go<br />Information and updates are only passed to blocks that are involved in the change of a particular row or plane to minimize communication traffic<br />This is based on the blocks coordinates<br />If all three state variables for a particular face are “open” or “corner” then a block may be attached to that face<br />
  22. 22. The Cost of Communication<br />Communication further than a single block is rare<br />Only when the first block is placed in a new row is there a need to update more than just the neighboring blocks<br />Communication time grows linearly with the size of the project<br />Thusly!<br />
  23. 23. Enough About Blocks!<br />A robot algorithm is required to place blocks in such a way that<br />Every face is visited at least once<br />Previously closed faces are re-visited<br />Attempt to reduce communication costs<br />Attempt to reduce robot movement costs (time)<br /><ul><li>Algorithms must me measured according to
  24. 24. Total distance travelled by all robots
  25. 25. The number of messages sent from blocks to robots
  26. 26. The number of messages sent from physically connected blocks</li></li></ul><li>Robot Algorithms – Random Walk<br />While the structure is not complete, bring a block to the structure<br />If the current face is closed, randomly move to another adjacent face<br />Repeat until block has been placed<br />Go get another block<br />
  27. 27. Robot Algorithms – Random Walk<br />Pros<br />Guaranteed to finish (if left long enough)<br />Requires little inter-block communication<br />Cons<br />Extremely time intensive<br />Requires more robot movement than the other algorithms<br />Requires a lot of block-robot communication<br />
  28. 28. Robot Algorithms – Systematic Search<br />Robots move systematically along the perimeter of the structure<br />Robots first move along the perimeter on a single plane<br />If no open or corner face was found on that plane, the robot navigates to the next plane<br />When the robot finds a face for the block, it will retrieve another block and return to the previous position to continue its new search<br />
  29. 29. Robot Algorithms – Systematic Search<br />Pros<br />Guarantees the structure will be complete<br />Involves less revisiting of previously covered faces potentially reducing the required time<br />Requires little inter-block communication<br />Cons<br />Much more complicated algorithmically<br />Requires more communication between block and robot<br />Requires state memory on the Robot<br />
  30. 30. Robot Algorithms – Gradient-Following<br />When a robot with a block approaches the structure, the robot queries the block for the closest available open face<br />The block provides the robot with a coordinate for the closest open face<br />The robot navigates to the open face and attaches the block<br />
  31. 31. Robot Algorithms – Gradient-Following<br />Pros<br />Requires the least amount of total distance for the robots to travel<br />Requires the least amount of communication between robot and block<br />Cons<br />Requires increased inter-block communication<br />Requires blocks to track gradient information<br />
  32. 32. The Comparison<br />D – Distance<br />M1 – Block-Robot Communication<br />M2 – Inter-Block Communication<br />
  33. 33. How Many Robots?<br />It depends…<br />Size of the project<br />Size and ability of the robot being used<br />To many and they interfere with each other<br />To few and time is wasted<br />Depending on the Project<br />Develop a density of how many robots should be working on the particular project according to how many open faces are available<br />The more open faces on the structure, the more robots can be deployed<br />
  34. 34. Conclusions<br />Rules make programming simple<br />Subdividing the problem into separate tasks handled by unique pieces makes life easier<br />Future possibilities<br />Include structures that are currently unavailable (loops, couches, etc)<br />Specialized systems could require specialized rules that allow the row and plane rule to be less restrictive<br />
  35. 35. Questions?<br />