Download presentation
Presentation is loading. Please wait.
Published byAugust Harmon Modified over 6 years ago
1
Concurrent Graph Exploration with Multiple Robots
Hui Wang 12/1/2018
2
Outline Introduction Previous work (background) Concurrency concerns
Skeleton of operation model 12/1/2018
3
Outline Introduction Previous work (background) Concurrency concerns
Skeleton of operation model 12/1/2018
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 12/1/2018
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. 12/1/2018
6
Outline Introduction Previous work (background) Concurrency concerns
Skeleton of operation model 12/1/2018
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 12/1/2018
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?’ 12/1/2018
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 12/1/2018
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 vunknown to 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 12/1/2018 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/1/2018
12
Multiple robot exploration example
12/1/2018
13
12/1/2018
14
Multiple robot exploration on Real system
12/1/2018
15
Outline Introduction Previous work (background) Concurrency concerns
Skeleton of operation model 12/1/2018
16
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 12/1/2018
17
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. 12/1/2018
18
Outline Introduction Previous work (background) Concurrency concerns
Skeleton of operation model 12/1/2018
19
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 12/1/2018
20
Skeleton of operation model
Operation at rendezvous place Challenge: synchronization 12/1/2018
21
Skeleton of operation model
Operation at non-rendezvous place Challenge: establish communication (synchronous, asynchronous?) 12/1/2018
22
References [1] G. Dudek, M. Jenkin, E. Milios, and D. Wilkes. Robotic exploration as graph construction. IEEE Transactions on Robotics and Automation, 7: , (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) (wiki) [3] H. Wang. Multiple Robot Graph Exploration. Master’s Thesis. York University, (webpage) Thank you 12/1/2018
23
Extra slide: Two robots vs. single robot
12/1/2018
24
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 12/1/2018
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.