Presentation is loading. Please wait.

Presentation is loading. Please wait.

Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmic Aspects of Dynamic Intelligent Systems.

Similar presentations


Presentation on theme: "Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmic Aspects of Dynamic Intelligent Systems."— Presentation transcript:

1 Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmic Aspects of Dynamic Intelligent Systems Part 4: Maintaining communication among mobile robots Friedhelm Meyer auf der Heide

2 Friedhelm Meyer auf der Heide 2 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity The Smart Teams Project within the SPP Organic Computing We aim at laying the algorithmic foundations for a scenario where a team of robots – we call it a Smart Team – has to organize itself in order to fulfill tasks like - exploring an unknown terrain and - executing work in this terrain. The tasks of such a Smart Team are similar to the fundamental challenges of all social life forms: Explore, (self-)organize, communicate, and jointly act.

3 Friedhelm Meyer auf der Heide 3 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Screenshot of our Smart Teams Simulator

4 Friedhelm Meyer auf der Heide 4 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity The Smart Teams Project within the SPP Organic Computing Exploration: How to explore the unknown terrain efficiently using a group of robots? Communication: How to guarantee a stable communication network among the robots?

5 Friedhelm Meyer auf der Heide 5 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity What I will talk about … Scenario: An explorer starts from a base camp along an arbitrary (winding) path. As its communication radius is bounded, relay robots (also with bounded communication radius) follow him, in order to maintain a communication chain.

6 Friedhelm Meyer auf der Heide 6 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Base camp, relays, explorer: the static problem Given a valid configuration of relay stations between the explorer and the base camp. How to transform the chain in a (close to) shortest one? Challenge: Each relay has to base its movement on simple local rules, only dependent on the relative positions of its predecessor and successor in the chain!! base camp explorer

7 Friedhelm Meyer auf der Heide 7 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Base camp, relays, explorer: the dynamic problem The explorer starts an exploration from the base camp, along an unknown, maybe winding path. Relays follow the explorer and keep the communication chain connected. Number of relays used should remain linear in the distance between base camp and explorer. How fast may the explorer move? Challenge: Each relay has to base its movement on simple local rules, only dependent on the relative positions of its predecessor and successor in the chain!!

8 Friedhelm Meyer auf der Heide 8 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Agenda Two strategies: -Go-To-The-Middle -Hopper More general problems

9 Friedhelm Meyer auf der Heide 9 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Go-To-The-Middle Go-To-The-Middle Strategy In each round: every relay station moves to the middle position between its neighbors relay i relay i+1 relay i+2

10 Friedhelm Meyer auf der Heide 10 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Go-To-The-Middle... explorer base camp

11 Friedhelm Meyer auf der Heide 11 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Go-To-The-Middle Analysis (static) for each relay consider its distance from the line between explore and base camp describe the distances as a vector v = (d 1,…,d n ) How is v modified by one go-to-the-middle step? d i new = ½ (d i-1 + d i+1 ) base camp explorer didi

12 Friedhelm Meyer auf der Heide 12 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Go-To-The-Middle Analysis (static) Connection between distance vectors v, v before/after applying one step of Go-To-The-Middle: n x n matrix A ½ ½½ ½½ ½½ ½½ ½ v = v A

13 Friedhelm Meyer auf der Heide 13 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Go-To-The-Middle Analysis (static) For the initial distance vector v, each v i n. We look for a t* such that, for the distance vector v* = v A t* after t* rounds, each v* j 1. Techniques from Markov Chain theory yield: (n 2 ) = t* = O(n 2 log(n)) Go-To-The-Middle is very slow.

14 Friedhelm Meyer auf der Heide 14 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Go-To-The-Middle Analysis (dynamic) Explorer walks along a cycle of radius D around the base camp. Length of communication chain has to be O(D) all times. How fast is the explorer allowed to walk (relative to the unit speed of the relays)? Speed is (1/D)

15 Friedhelm Meyer auf der Heide 15 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Conclusion about Go-To-The-Middle Simple strategy, based on simple local rule. Needs many rounds in the static case. Causes the explorer to move very slowly in the dynamic case. Can we do better??

16 Friedhelm Meyer auf der Heide 16 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Hopper The Hopper strategy is executed in sequential runs. The Hop operation

17 Friedhelm Meyer auf der Heide 17 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Hopper remove: dist < 1 shorten: (angle <90)

18 Friedhelm Meyer auf der Heide 18 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Go-To-The-Middle... explorer base camp

19 Friedhelm Meyer auf der Heide 19 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Hopper explorer base camp 2 runs, can be pipelined, a new run starts every 3rd step.

20 Friedhelm Meyer auf der Heide 20 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Hopper Note: Runs of the Hopper strategy can be pipelined, m runs on a chain of length n need time n+3m. Static problem: How short chains can be obtained? How many runs are needed to obtain them?

21 Friedhelm Meyer auf der Heide 21 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Analysis of the Hopper Strategy explorer base camp U0U0 A configuration of the strategy For each i, |u i | · 1 D = | u i | = distance [ explorer ! base camp] u i | = length of chain U1U1 U2U2 U3U3 U4U4 U5U5

22 Friedhelm Meyer auf der Heide 22 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity The Hop-Operation vivi v i-1 v i+1 vivi u0u0 uiui u0u0 uiui

23 Friedhelm Meyer auf der Heide 23 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Hop Runs: Runs only consisting of Hop-Operations u0u0 u2u2 u0u0 u1u1 u0u0 u1u1 u2u2 u3u3 u0u0 u3u3 u 0, …, u n is transformed to u 1, …, u n, u 0. The length of the chain remains unchanged.

24 Friedhelm Meyer auf der Heide 24 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity 1 The Remove-Operation vivi v i-1 v i+1 u0u0 uiui u0u0 uiui +

25 Friedhelm Meyer auf der Heide 25 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity u0u0 u2u2 u0u0 u1u1 Remove Runs: Runs with a Remove-Operation 1 u0u0 u1u1 u2u2 u3u3 u0u0 u3u3 + One relay is removed. The new vector is a positive linear combination of old vectors.

26 Friedhelm Meyer auf der Heide 26 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity vivi The Shorten-Operation v i-1 v i+1 vivi u0u0 uiui < 90° u0u0 uiui + ½( ) u0u0 uiui +

27 Friedhelm Meyer auf der Heide 27 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Shorten Runs: Runs with Shorten-Operation u0u0 u2u2 u0u0 u1u1 u0u0 u1u1 u2u2 u3u3 ½ ( ) u 0 u3u3 + ½ ( ) u0u0 u3u3 + The new vectors are positive linear combinations of old vectors. If |u 0 | > 1/2 and |u 3 | > 1/2, then the chain length is reduced by at least 1/3. The new vectors have length ¸ 1/2.

28 Friedhelm Meyer auf der Heide 28 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Analysis of the Hopper-Strategy How many hop runs can be executed? Two vectors are conflicting, if they form an angle · 90 o Non-conflicting vectors of a configuration: vectors forming an angle > 90 o with all other vectors of the configuration. Non-conflicting suffix of a configuration: suffix consisting of non-conflicting vectors

29 Friedhelm Meyer auf der Heide 29 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Analysis of the Hopper-Strategy There are at most n remove runs. There are at most 3n shorten runs, applied to vectors both of length > 1/2. There are at most 2n+1 other shorten runs, because only the n+1 initial vectors and those resulting from remove operations can be shorter than 1/2. We have at most 6n+1 runs, plus the hop runs.

30 Friedhelm Meyer auf der Heide 30 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Analysis of the Hopper-Strategy A hop run extends the non-conflicting suffix (by u 0 ). Remove and shorten runs do not shrink the non- conflicting suffix. Thus: at most n hop runs ensure that there are no conflicting vectors in the chain. Thus: at most 7n+1 runs ensure that there are no conflicting vectors in the chain.

31 Friedhelm Meyer auf der Heide 31 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Analysis of the Hopper-Strategy A hop run extends the non-conflicting suffix (by u 0 ). Remove and shorten runs do not shrink the non- conflicting suffix. Why ?? These run produce new vectors, why not new conflicts, too? Thus: at most n hop runs ensure that there are no conflicting vectors in the chain. Thus: at most 7n+1 runs ensure that there are no conflicting vectors in the chain.

32 Friedhelm Meyer auf der Heide 32 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Analysis of the Hopper-Strategy We have seen: all configurations consist of vectors that are positive linear combinations of the initial vectors. Lemma. Consider vectors u and u 0, …, u n. If the angle between u and u i is > 90 o for each i, then the angle between u and any positive linear combination v of the u i ´s is > 90 o. Thus, new vectors do not conflict with any vector from the current or future non-conflicting suffix!

33 Friedhelm Meyer auf der Heide 33 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Lemma. Consider vectors u and u 0, …, u n. If the angle between u and u i is > 90 o for each i, then the angle between u and any positive linear combination v of the u i ´s is > 90 o. u the u i s v

34 Friedhelm Meyer auf der Heide 34 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Summing up At most 7n+1 runs ensure that there are no conflicting vectors in the chain. A chain of pairwise non-conflicting vectors has length at most p 2 D. m runs can be pipelined, so that they need at most 3m+n steps. Theorem: The Hopper Strategy needs at most 22n+3 steps to reduce the chain length to at most p 2 D, and the number of relays to less than 3D.

35 Friedhelm Meyer auf der Heide 35 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Hopper Strategy – Dynamic Case Theorem: The explorer may walk with constant speed (relative to the speed of the relays), so that the chain length and the number of relays used is always linear in the current distance between explorer and base camp.

36 Friedhelm Meyer auf der Heide 36 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Extensions

37 Friedhelm Meyer auf der Heide 37 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Many explorers

38 Friedhelm Meyer auf der Heide 38 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Many explorers

39 Friedhelm Meyer auf der Heide 39 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Many explorers Static problem: how to reduce the number of relays? A simple strategy Go-To-The-Center -A random relay walks to the center of its neighbors, i.e. to the center of their smallest enclosing ball. - If it moves to a position of another relay, it goes home

40 Friedhelm Meyer auf der Heide 40 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Many explorers Static problem: how to reduce the number of relays? A simple strategy: -A random relay walks to the center of ist neighbors, i.e. to the center of their smallest enclosing ball. - If it moves to a position of another relay, it goes home

41 Friedhelm Meyer auf der Heide 41 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Animation 1 GoToTheMiddleSimulation.avi

42 Friedhelm Meyer auf der Heide 42 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Animation 2 GoToTheMiddleSimulationQuadrat.avi

43 Friedhelm Meyer auf der Heide 43 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Animation 1

44 Friedhelm Meyer auf der Heide 44 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Animation 2

45 Friedhelm Meyer auf der Heide 45 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Properties of Go-To-The-Center The ideal situation: The configuration eventually describes a minimum Steiner tree connecting the explorers. -The convex hull of the configuration converges to the convex hull of the explorers. -The topology (the unit disk graph) will not change anymore after a finite number of steps. -The number of relays will eventually be proportional to the area of the convex hull of the explorers (Some assumption needed.).

46 Friedhelm Meyer auf der Heide 46 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Conclusion Designing simple local strategies for fullfilling global tasks in dynamically changing networks is a challenge! Our example: maintaining connectivity among moving robots using mobile relays. Many open questions: - What about obstacles? - What about unprecise measurements? -What can be achieved in the many-explorers case? -Speed of convergence?? - What can not be achieved?

47 Friedhelm Meyer auf der Heide 47 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Thank you for your attention! Friedhelm Meyer auf der Heide Heinz Nixdorf Institute & Computer Science Department University of Paderborn Fürstenallee 11 33102 Paderborn, Germany Tel.: +49 (0) 52 51/60 64 80 Fax: +49 (0) 52 51/60 64 82 Mailto: fmadh@upb.de http://wwwhni.upb.de/en/alg


Download ppt "Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmic Aspects of Dynamic Intelligent Systems."

Similar presentations


Ads by Google