Presentation is loading. Please wait.

Presentation is loading. Please wait.

Thesis Presentation: Cellular Automata for Control and Interactions of Large Formations of Robots Ross Mead Committee: Dr. Jerry B. Weinberg Dr. Stephen.

Similar presentations


Presentation on theme: "Thesis Presentation: Cellular Automata for Control and Interactions of Large Formations of Robots Ross Mead Committee: Dr. Jerry B. Weinberg Dr. Stephen."— Presentation transcript:

1 Thesis Presentation: Cellular Automata for Control and Interactions of Large Formations of Robots Ross Mead Committee: Dr. Jerry B. Weinberg Dr. Stephen Blythe Dr. Xudong Yu

2 2 Outline Introduction and Significance Introduction and Significance Comparison of Cellular Automata Approaches Comparison of Cellular Automata Approaches 1-Dimensional Robot-Space Cellular Automata 1-Dimensional Robot-Space Cellular Automata  Algorithm  Implementation 2-Dimensional Robot-Space Cellular Automata 2-Dimensional Robot-Space Cellular Automata  Algorithm Extension  Implementation Conclusions Conclusions Future Work Future Work Q&A Q&A

3 3 Motivation Space Solar Power (SSP) Space Solar Power (SSP) How can a massive collection of robots moving with no group organization coordinate to form a global structure? How can a massive collection of robots moving with no group organization coordinate to form a global structure?

4 4 Problem swarmformation

5 5 Approach Utilize reactive robot control strategies Utilize reactive robot control strategies  closely couple sensor input to actions Treat the formation as a cellular automaton Treat the formation as a cellular automaton  lattice of computational units (cells)  each cell is in one of a given set of states governed by a set of rules governed by a set of rules  complex emergent behavior from simplicity

6 6 “World-Space” Cellular Automata Environment is represented topologically as a 2- or 3-dimensional grid of cells… Environment is represented topologically as a 2- or 3-dimensional grid of cells… a)robot between grid cells b)boundary surrounds the automaton c)automaton wraps along boundaries d)two robots collide trying to occupy same grid cell

7 7 “Robot-Space” Cellular Automata Each robot is represented as a cell c i in a 1-dimensional automaton… Each robot is represented as a cell c i in a 1-dimensional automaton… c i = {H, s, F, S}

8 8 “Robot-Space” Cellular Automata Each robot is represented as a cell c i in a 1-dimensional automaton… Each robot is represented as a cell c i in a 1-dimensional automaton… c i = {H, s, F, S} neighborhood  H i = {c i-1, c i, c i+1 }  c i-1 ← left neighbor  c i+1 ← right neighbor  c j ← some neighbor j C automaton: C ← automaton: = H 1  H 2  …  H n C = H 1  H 2  …  H n = {c 1, c 2, …, c n } = {c 1, c 2, …, c n }

9 9 “Robot-Space” Cellular Automata Each robot is represented as a cell c i in a 1-dimensional automaton… Each robot is represented as a cell c i in a 1-dimensional automaton… c i = {H, s, F, S} state  s i = {p, r des, r act, Γ, Θ, t}  (... described later... ) C automaton: C ← automaton: = H 1  H 2  …  H n C = H 1  H 2  …  H n = {c 1, c 2, …, c n } = {c 1, c 2, …, c n }

10 10 “Robot-Space” Cellular Automata Each robot is represented as a cell c i in a 1-dimensional automaton… Each robot is represented as a cell c i in a 1-dimensional automaton… c i = {H, s, F, S} state transition  s i = {p, r des, r act, Γ, Θ, t}  (... described later... )  s i t = S(s i-1 t-1, s i t-1, s i+1 t-1 )  t ← time step (counter) C automaton: C ← automaton: = H 1  H 2  …  H n C = H 1  H 2  …  H n = {c 1, c 2, …, c n } = {c 1, c 2, …, c n }

11 11 “Robot-Space” Cellular Automata Each robot is represented as a cell c i in a 1-dimensional automaton… Each robot is represented as a cell c i in a 1-dimensional automaton… c i = {H, s, F, S} formation  F = {f(x), R, Φ, p seed }  f(x) ← description  R ← robot separation  Φ ← relative heading  p seed ← start position C automaton: C ← automaton: = H 1  H 2  …  H n C = H 1  H 2  …  H n = {c 1, c 2, …, c n } = {c 1, c 2, …, c n }

12 12 F is sent to some robot, designating it as the seed cell c seed... F is sent to some robot, designating it as the seed cell c seed...  c seed is not a leader, but rather an initiator of the coordination process For purposes of calculating desired relationships, each cell c i considers itself to be at some formation-relative position p i : For purposes of calculating desired relationships, each cell c i considers itself to be at some formation-relative position p i : p i = [ x i f(x i ) ] T  In the case of c seed, this position p seed is given… Algorithm – Formation Definition f(x) = a x 2 p seed c seed

13 13 The desired relationship r i→j,des from c i to some neighbor c j is determined by calculating a vector v from p i to the intersection f(v x ) and a circle centered at p i with radius R: The desired relationship r i→j,des from c i to some neighbor c j is determined by calculating a vector v from p i to the intersection f(v x ) and a circle centered at p i with radius R: R 2 = (v x – p i,x ) 2 + (f(v x ) – p i,y ) 2 r i → j,des = [ v x f(v x ) ] T  The relationship is rotated by –Φ to account for robot heading... Algorithm – Desired Relationships f(x) = a x 2 R r i→i-1,des r i→i+1,des desired relationship with left neighbor c i-1 desired relationship with right neighbor c i+1 –v–v +v+v p seed

14 14 p i-1 p i+1 F and r i→j,des are communicated locally within the neighborhood. F and r i→j,des are communicated locally within the neighborhood. Each neighbor c j repeats the process, but considers itself to be at different formation-relative position p j … Each neighbor c j repeats the process, but considers itself to be at different formation-relative position p j …  determined by the desired relationship from the sending neighbor c i p j = p i + r i → j,des Algorithm – Desired Relationships f(x) = a x 2 Note: r j→i,des = –r i→j,des p seed

15 15 Propagate changes in neighborhoods in succession. Propagate changes in neighborhoods in succession. Calculated relationships generate a connected graph that yields the shape of the formation. Calculated relationships generate a connected graph that yields the shape of the formation. Algorithm – Desired Relationships f(x) = a x 2

16 16 Using sensor readings, robots calculate an actual relationship r i→j,act with each neighbor c j. Using sensor readings, robots calculate an actual relationship r i→j,act with each neighbor c j. State of H i governs robot movement: State of H i governs robot movement:  rotational error Θ i and translational error Γ i  relationships based on individual coordinate systems Algorithm – Actual Relationships

17 17 Algorithm – Formation Manipulation

18 18 Algorithm – Formation Manipulation

19 19 Algorithm – Formation Manipulation

20 20 Algorithm – Formation Manipulation

21 21 Algorithm – Formation Manipulation

22 22 Algorithm – Formation Manipulation

23 23 Scooterbot II base -strong, but very light -differential steering system XBCv2 microcontroller -Interactive C -back-EMF PID motor control -color camera ZigBee module -packet communication -share state information within neighborhood within neighborhood Color-coding system -visual identification -neighbor localization (actual relationships) (actual relationships) Implementation– Robot Platform Implementation – Robot Platform

24 24 Implementation – Color-Coding System Visual identification Visual identification  the color of each robot is assigned based on ID: orange for odd, green for even orange for odd, green for even Neighbor localization (actual relationships) Neighbor localization (actual relationships)  r i→j,act = [ d i→j α i→j ] T

25 25 Implementation – State Diagram

26 Implementation – Results 26... and because embedding Windows’ own media format is a too much for PowerPoint... [ Click Here ] Click HereClick Here

27 Extending the Formation Definition Consider a set f' of M mathematical functions: Consider a set f' of M mathematical functions: f' = {f 1 (x), f 2 (x),..., f M (x)}F = {f', R, Φ, p seed } For desired relationships, each f m (x) is considered individually... For desired relationships, each f m (x) is considered individually...  yielding its own 1-dimensional neighborhood m h i  resulting in M neighborhoods and a 2-dimensional cellular automaton ( M > 1 ) H i = 1 h i  2 h i ...  M h i = { M c 1-1, …, 2 c 1-1, 1 c 1-1, c 1, 1 c 1+1, 2 c 1+1, …, M c 1+1 } 27 f 2 (x) = x √3 f 3 (x) = –x √3 f 1 (x) = 0 1 {c i-1, c i, c i+1 } 1 h i = 1 {c i-1, c i, c i+1 } 2 {c i-1, c i, c i+1 } 2 h i = 2 {c i-1, c i, c i+1 } 3 {c i-1, c i, c i+1 } 3 h i = 3 {c i-1, c i, c i+1 } R

28 28 How can this be applied to SSP? Reflector viewed as 2-dimensional lattice of robots and, thus, a 2-dimensional cellular automaton... Reflector viewed as 2-dimensional lattice of robots and, thus, a 2-dimensional cellular automaton...

29 29 Multi-Function Formations

30 Desired relationship: r i → j,des = [ v x f(v x ) ] T Desired relationship: r i → j,des = [ v x f(v x ) ] TWhathappened? Original: R 2 = (v x – p i,x ) 2 + (f(v x ) – p i,y ) 2 Original: R 2 = (v x – p i,x ) 2 + (f(v x ) – p i,y ) 2 30 Multi-Function Formations

31 Desired relationship: r i → j,des = [ v x f(v x ) ] T Desired relationship: r i → j,des = [ v x f(v x ) ] TWhathappened? Original: R 2 = (v x – p i,x ) 2 + (f(v x ) – p i,y ) 2 Original: R 2 = (v x – p i,x ) 2 + (f(v x ) – p i,y ) 2 Alternative: R 2 = v x 2 + f(v x ) 2 Alternative: R 2 = v x 2 + f(v x ) 2 31 Multi-Function Formations

32 Desired relationship: r i → j,des = [ v x f(v x ) ] T Desired relationship: r i → j,des = [ v x f(v x ) ] TSimilarly... Original: R 2 = (v x – p i,x ) 2 + (f(v x ) – p i,y ) 2 Original: R 2 = (v x – p i,x ) 2 + (f(v x ) – p i,y ) 2 32 Multi-Function Formations

33 Similarly... Alternative: R 2 = v x 2 + f(v x ) 2 Alternative: R 2 = v x 2 + f(v x ) 2 33 Multi-Function Formations

34 34 Implementation– Robot Platform Implementation – Robot Platform

35 35 Implementation – Robot “Faces” Visual identification Visual identification  each robot has a unique three-color column... vertical locations of color bands correspond to ID vertical locations of color bands correspond to ID green on top for even, magenta on top for odd green on top for even, magenta on top for odd 5 locations × 4 locations = 20 unique faces 5 locations × 4 locations = 20 unique faces

36 36 Implementation – Robot “Faces” “All around me are familiar faces... ”

37 Implementation – Results 37 [ Click Here ] Click HereClick Here

38 Conclusions – Algorithm Designed and implemented a general distributed robot formations algorithm... Designed and implemented a general distributed robot formations algorithm...  able to conform to a wide variety of formations Robots represented as cells in multi- dimensional cellular automata... Robots represented as cells in multi- dimensional cellular automata...  simple rule sets produce complex group behavior Distinguishes itself as leaderless algorithm... Distinguishes itself as leaderless algorithm...  only communication is to instigate coordination 38

39 Conclusions – Robot Platform Hardware Hardware 19 robots developed. Accurate motion control. Reasonable execution time. Reliable communication. Robot faces were excellent! Software  Extensive and reusable collection of libraries. Greatest implementation hurdle—Interactive C...  most time spent debugging  workarounds—not fixes  serial library deadlock  bug list is... amusing...  imposes harsh program size ... stay away! 39

40 Conclusions – Formation Classification I.Non-formation (swarm) II.Explicit formation III.Straight line formation IV.Function-based formation V.Branching formation VI.Lattice formation 40

41 Conclusions – Erroneous Relationships Theoretically possible to calculate more than two relationships... Theoretically possible to calculate more than two relationships... To alleviate this, solve for two minimums: To alleviate this, solve for two minimums: e(v) = |v x – p i,x | 41

42 Future Work Dynamic neighborhoods Dynamic neighborhoods Seed election Seed election Formation repair Formation repair Obstacle avoidance Obstacle avoidance Global positioning Global positioning 3-dimensional formations Disconnected formations Formation classification Analysis [ Click here ]Click here Formation management 42

43 43 Questions? Mead, R. & Weinberg, J.B. (2008). A Distributed Control Algorithm for Robots in Grid Formations. To appear in the Proceedings of the Robot Competition and Exhibition of The 23 rd National Conference on Artificial Intelligence (AAAI-08), Chicago, Illinois. Mead, R. & Weinberg, J.B. (2008). A Distributed Control Algorithm for Robots in Grid Formations. To appear in the Proceedings of the Robot Competition and Exhibition of The 23 rd National Conference on Artificial Intelligence (AAAI-08), Chicago, Illinois. Mead, R. & Weinberg, J.B. (2008). 2- Dimensional Cellular Automata Approach for Robot Grid Formations. To appear in Student Abstracts and Poster Program of The 23 rd National Conference on Artificial Intelligence (AAAI-08). Chicago, Illinois. Mead, R. & Weinberg, J.B. (2008). 2- Dimensional Cellular Automata Approach for Robot Grid Formations. To appear in Student Abstracts and Poster Program of The 23 rd National Conference on Artificial Intelligence (AAAI-08). Chicago, Illinois. Mead, R., Weinberg, J.B., & Croxell, J.R. (2007). A Demonstration of a Robot Formation Control Algorithm and Platform. To appear in the Proceedings of the Robot Competition and Exhibition of The 22 nd National Conference on Artificial Intelligence (AAAI-07), Vancouver, British Columbia. Mead, R., Weinberg, J.B., & Croxell, J.R. (2007). An Implementation of Robot Formations using Local Interactions. In the Proceedings of The 22 nd National Conference on Artificial Intelligence (AAAI- 07), 1889-1890. Vancouver, British Columbia. For more information, please visit http://roboti.cs.siue.edu/projects/formations/ or see the following papers: http://roboti.cs.siue.edu/projects/formations/


Download ppt "Thesis Presentation: Cellular Automata for Control and Interactions of Large Formations of Robots Ross Mead Committee: Dr. Jerry B. Weinberg Dr. Stephen."

Similar presentations


Ads by Google