Your SlideShare is downloading. ×
 Three-dimensional construction with mobile robots and modular blocks
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

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

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


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