140 likes | 297 Views
Domain-Dependent View of Multiple Robots Path Planning. Pavel Surynek Charles University, Prague Czech Republic. Outline of the Talk. Problem definition Motivation by real-world problems Motivation for the domain-dependent view why don’t use domain-independent approach
E N D
Domain-Dependent Viewof Multiple RobotsPath Planning Pavel Surynek Charles University, PragueCzech Republic
Outline of the Talk • Problem definition • Motivation by real-world problems • Motivation for the domain-dependent view • why don’t use domain-independent approach • Difficulty of the problem • Domain-dependent polynomial-time solving algorithm • Complexity analysis • polynomial-time • Final remarks STAIRS 2008 Pavel Surynek
Multi-robot Path Planning (Ryan, 2007) • Input:Graph G=(V,E), V={v1,v2,...,vn} and a set of robots R={r1,r2,...,rμ}, where μ<n • each robot is placed in a vertex (at most one robot in a vertex) • a robot can move into an unoccupied vertex through an edge (no other robot is allowed to enter the vertex) • initial positions of robots ... simple function S0: R→V • goal positions of robots ... simple function S+: R→V • Task: Find a sequence of allowed moves for robots such that all the robots reach their goal positions starting from the given initial positions STAIRS 2008 Pavel Surynek
Motivation • Rearrangement of robots in tight space • Motion planning fora group of robots • Automated trafficcontrol STAIRS 2008 Pavel Surynek
Graph Initial positions Goal positions Motivating experiments (1) • Problems motivated by heavy car traffic • ignoring traffic rules • Several planners (SGPlan, SATPlan, LPG) were evaluated on these problems STAIRS 2008 Pavel Surynek
Motivating experiments (2) STAIRS 2008 Pavel Surynek
Analysis of experiments • All the problems are small - graphs of about 15 vertices • SGPlan and SATPlan are trying to find shortest possible solutions - this complicates the task • SGPlan and SATPlan often do not solve the problem within the time limit of 2 minutes • LPG searches for a suboptimal solution • LPG performs as best however still not able to solve several problems in the time limit of 2 minutes • Conclusion: Domain-independent planners do not perform well on the problem STAIRS 2008 Pavel Surynek
Difficult or easy? • Is the problem difficult or easy (NP-complete or polynomial-time solvable)? • Answer: If at least two vertices are unoccupied the problem is polynomial-time solvable • Outline of the algorithm: • decompose the graph into bi-connected components (result is a tree where vertices are represented by bi-connected components) • move robots into their goal bi-connected components or decide that it is not possible • solve the problem within the individual bi-connected components STAIRS 2008 Pavel Surynek
B6 B3 B6 B1 B4 B5 B2 Algorithm: decomposition into bi-connected components • Decomposition of the graph G=(V,E) intobi-connected components • an undirected G=(V,E) graph is bi-connected if |V|≥3 and for every vV H=(V-{v},E’) is connected (E’ is E restricted on V-{v}) • Result is a tree of singleton vertices andbi-connected components ... denoted B1,B2,...,Bk • (Bi is a vertex or a bi-connected component) STAIRS 2008 Pavel Surynek
G=(V,E) G=(V,E) r1 r4 r2 r3 r1 r6 r15 r14 r2 r3 r7 r5 r11 r4 r10 r4 r2 r8 C2 r1 C4 r3 C1 r12 r9 C3 r17 r13 r16 Algorithm: moving robots into goal bi-connected components (1) • Observation: Arbitrary vertex in the graph can be made unoccupied • Observation:A robot canbe moved to arbitrary vertexwithin the bi-connectedcomponent “Shift” robots along a path connecting unoccupied vertex and vertex to be freed STAIRS 2008 Pavel Surynek
r1 bi-connectedcomponent bi-connectedcomponent Bj Bi Algorithm: moving robots into goal bi-connected components (2) • Observation:To move a robot from one bi-component to another bi-component we need to free a path between the components • If the path cannot be freed the problem is unsolvable STAIRS 2008 Pavel Surynek
r1 ? ? 2-connectedremainder r1 r2 ? ? ? ? ? ? ? ? ? ? ? ? ? ? 2-connectedremainder r3 r4 r5 r2 r1 r6 ? ? 2-connectedremainder Algorithm: solving problem within bi-connected component • Observation:Bi-connected componentcan be constructed froma cycle by adding loops • We inductively placerobots into loopsstarting with the lastloop and proceedingto the original cycle • By placing robots in aloop we obtain thesmaller problem • For the last cycle we needtwo unoccupied vertices STAIRS 2008 Pavel Surynek
Complexity analysis • Decomposition of the graph into bi-connected components: O(|V|+|E|) • Moving robots into goal bi-connected components: O(|V|3) • Solving problem in the individualbi-connected component: O(|V|3) • The algorithm requires O(|V|3) steps in total STAIRS 2008 Pavel Surynek
Conclusion and remarks • We proposed a polynomial-time solving algorithm for multiple robots path planning problem in the case where there are at least two unoccupied vertices • The work on the specialized domain-dependent algorithm is partially motivated by inefficiency of domain-independent planners on the problem • Currently we are working on the generalization of the approach - some theoretical results are already known (Wilson, 1973) STAIRS 2008 Pavel Surynek