1 / 24

Concurrent Graph Exploration with Multiple Robots

This paper discusses the concurrent exploration of a graph-like world with multiple robots, addressing concurrency concerns and exploring fundamental issues related to concurrent data structure exploration. The paper presents a skeleton of the operation model and discusses previous work in the field.

Download Presentation

Concurrent Graph Exploration with Multiple Robots

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 Graph Exploration with Multiple Robots Hui Wang

  2. Outline • Introduction • Previous work (background) • Concurrency concerns • Skeleton of operation model

  3. Outline • Introduction • Previous work (background) • Concurrency concerns • Skeleton of operation model

  4. Introduction • Address robotic exploration problem on a graph-like world • Robot(s) given an unknown environment modeled as a graph • Goal is to establish a graph representation of the underlying world (mapping) • Exist single robot exploration algorithm • Extended to multiple robot case in my Master’s studies • Simple nature of synchronization and parallelism modeled

  5. Introduction (cont’) • Extend the multiple robot exploration with concurrency concerns. • Useful framework within which to explore fundamental issues related to concurrent data structure exploration. • E.g., robot (thread) synchronization, contention, and communication • Allows for in-depth investigation of real life exploration challenges, e.g., measuring real execution time. • Subject to refinement in later work.

  6. Outline • Introduction • Previous work (background) • Concurrency concerns • Skeleton of operation model

  7. Previous work (background) • Problem: Given an unknown environment modeled as an embedded graph • Embedding: Explicit specification of the order of edges incident upon each vertex of the graph

  8. Previous work (background) • Unpleasant Constraints • No prior knowledge of the environment at all (except starting place) • No distance and orientation metric (compass) • Edges are featureless, vertices featureless except degree • Cannot label real edges, vertices….. • Still solvable? Generally not • Unless augment robot with disambiguation capability. • E.g., use marker (bread crumbs) to solve the ‘have I been here before?’ problem `Have I been here before?’

  9. Single robot exploration • Key idea: maintains currently known sub-graph S, which evolves during process • Basic operation: selects an unexplored edge eunknown from currently known graph S, explores to an unknown end (vertex) vunknown of the edge • Critical question: whether the end vunknown was known, i.e., vunknown in S? • Deterministic solution: drops marker (bread crumbs) at vunknown, searches S for the marker. S eunknown v1 vu v2 v3

  10. Single robot exploration (cont’) • drop marker at vunknown, search S for the marker. • if marker is not found in S // both eunknown and vunknown are unknown add eunknown and vunknownto S • else if marker is found in S // vunknown is v2 , only eunknown is unknown add eunknown to S S eunknown v1 vu v2 v3 S eunknown v1 v2 v3

  11. Multiple robots exploration • Extended to multiple robots case. • Same word model, • Unique marker • Common starting place, percept each other, and communicate (within vertex) • Expectation: perform tasks faster, more robust than single one • Alternating phases of independent exploration and coordinated merging of partial representations. Merge similar. common map := initial starting place while common map has unexplored part Partition the common map (Task split) Explore in parallel Meet at rendezvous place (common) after a certain time steps Merge the partial maps Merged map shared by all robots, becoming new common map End while

  12. Multiple robot exploration example

  13. Multiple robot exploration on Real system

  14. Outline • Introduction • Previous work (background) • Concurrency concerns • Skeleton of operation model

  15. Concurrency concerns • Pervious work assumes simple nature of parallelism and synchronization • Operation not in full parallel • Sufficient for specific problem solving (evaluate edge traversal) • Not sufficient for other concerns (evaluate real execution time ) • Concurrent modeling better reflects real life exploration • Allow for investigation of more challenging problem • e.g., meet in edge (hallway) • e.g., resource contention, real time allocation

  16. Concurrency concerns • Start with the basic algorithm -- modeling, implementing and testing • Incorporating concurrency-related enhancements developed • opportunistic communication • parallelism in the merge phase • Investigating more concurrency-related problems based on the concurrent model of the problem. • encountering each other on edges • evaluating by real resource consumption, e.g., execution time • dealing with large groups (k ≥ 2) of robots. • More new ideas acquired during the progress of the course work.

  17. Outline • Introduction • Previous work (background) • Concurrency concerns • Skeleton of operation model

  18. Skeleton of operation model • We model the operation at each vertex as a sequence of action ( sense, initiate-communication, manipulate, move ). • We assume the first 3 operation (sense, initiate-communication, manipulate, move) requires mutual exclusion. • We distinguish two types of operation and communication at a vertex: • at a rendezvous place • at a non-rendezvous place

  19. Skeleton of operation model • Operation at rendezvous place • Challenge: synchronization

  20. Skeleton of operation model • Operation at non-rendezvous place • Challenge: establish communication (synchronous, asynchronous?)

  21. References [1] G. Dudek, M. Jenkin, E. Milios, and D. Wilkes. Robotic exploration as graph construction.IEEE Transactions on Robotics and Automation, 7: 859-864, 1991. (wiki) [2] G. Dudek, M. Jenkin, E. Milios, and D. Wilkes. Topological exploration with multiple robots.In 7th International Symposium on Robotics and Automation (ISORA).1998. (wiki) [3] H. Wang. Multiple Robot Graph Exploration. Master’s Thesis. York University, 2007. (webpage) Thank you

  22. Extra slide: Two robots vs. single robot

  23. Extra Slide: About isomorphic • Problem (goal) : Given an unknown environment modeled as a graph, formulate an exploration strategy which enable the robot to form a representation of environment that is isomorphic to the finite world it has been assigned to explore. • isomorphic:Two graphs are isomorphic if there is a one-to-one correspondence between their vertices and there is an edge between two vertices of one graph if and only if there is an edge between the two corresponding vertices in the other graph. v2 v1 v1 v2 v3 v4 v4 v3

More Related