Fault-Tolerant Formations of Mobile Robots

Slides:



Advertisements
Similar presentations
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Advertisements

SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
1 Software Design Introduction  The chapter will address the following questions:  How do you factor a program into manageable program modules that can.
COORDINATION and NETWORKING of GROUPS OF MOBILE AUTONOMOUS AGENTS.
What is Software Design?  Introduction  Software design consists of two components, modular design and packaging.  Modular design is the decomposition.
Copyright Irwin/McGraw-Hill Software Design Prepared by Kevin C. Dittman for Systems Analysis & Design Methods 4ed by J. L. Whitten & L. D. Bentley.
Geometric aspects of variability. A simple building system could be schematically conceived as a spatial allocation of cells, each cell characterized.
A Platform for Local Interactions between Robots in Large Formations Ross Mead Jerry B. Weinberg Jeffrey R. Croxell.
1/22 Robot Formations Using Only Local Sensing And Control Jakob Fredslund, Maja J Mataric {jakobf, Interaction Lab, University.
A Multi-Agent System for Visualization Simulated User Behaviour B. de Vries, J. Dijkstra.
GS 3 GS 3 : Scalable Self-configuration and Self-healing in Wireless Networks Hongwei Zhang & Anish Arora.
What is it? A mobile robotics system controls a manned or partially manned vehicle-car, submarine, space vehicle | Website for Students.
A Platform for Local Interactions between Robots in Large Formations Ross Mead Jerry B. Weinberg Jeffrey R. Croxell.
Artificial Intelligence Chapter 2 Stimulus-Response Agents
Nuttapon Boonpinon Advisor Dr. Attawith Sudsang Department of Computer Engineering,Chulalongkorn University Pattern Formation for Heterogeneous.
Leslie Luyt Supervisor: Dr. Karen Bradshaw 2 November 2009.
INTERNATIONAL INSTITUTE FOR GEO-INFORMATION SCIENCE AND EARTH OBSERVATION Transition Rule Elicitation Methods for Urban Cellular Automata Models Junfeng.
Robust localization algorithms for an autonomous campus tour guide Richard Thrapp Christian Westbrook Devika Subramanian Rice University Presented at ICRA.
SE: CHAPTER 7 Writing The Program
Algorithms for Control and Interaction of Large Formations of Robots Ross Mead Dr. Jerry B. Weinberg Dr. William White.
Boundary Assertion in Behavior-Based Robotics Stephen Cohorn - Dept. of Math, Physics & Engineering, Tarleton State University Mentor: Dr. Mircea Agapie.
F 1 ← y = x 2 F 2 ← y = 0.05 sin(10 x) F1 → F2F1 → F2F1 → F2F1 → F2 F1 → F2F1 → F2F1 → F2F1 → F2 To manage the robot formation, a graphical user interface.
Thesis Presentation: Cellular Automata for Control and Interactions of Large Formations of Robots Ross Mead Committee: Dr. Jerry B. Weinberg Dr. Stephen.
In our previous work, robots are treated as cells in a 1-dimensional cellular automaton (Mead et al. 2007). Each robot “cell state” consists of its distance.
University of Windsor School of Computer Science Topics in Artificial Intelligence Fall 2008 Sept 11, 2008.
Controlling the Behavior of Swarm Systems Zachary Kurtz CMSC 601, 5/4/
Behavior-based Multirobot Architectures. Why Behavior Based Control for Multi-Robot Teams? Multi-Robot control naturally grew out of single robot control.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
System Model: Physical Module Constraints: 1)A module must have a minimum of two adjacent free sides in order to move. 2) A module must have an adjacent.
Done by Fazlun Satya Saradhi. INTRODUCTION The main concept is to use different types of agent models which would help create a better dynamic and adaptive.
4/22/20031/28. 4/22/20031/28 Presentation Outline  Multiple Agents – An Introduction  How to build an ant robot  Self-Organization of Multiple Agents.
Author:Zarei.M.;Faez.K. ;Nya.J.M.
2010 IEEE Global Telecommunications Conference (GLOBECOM 2010)
Authors: Jiang Xie, Ian F. Akyildiz
Cmpe 589 Spring 2006.
Hierarchical Clustering: Time and Space requirements
Classroom Assessment A Practical Guide for Educators by Craig A
Software Testing.
“Internet of Things” – The new age drivers of Power Distribution Automation Speaker: Jayant Sinha Date of session: 2 Oct, 2015.
Prepared by Ertuğrul Kuzan
Networking Devices.
Chapter 16 Participating in Groups and Teams.
Introduction to Wireless Sensor Networks
Extensions, System Outline and Correlation Modes and
International Workshop
Complexity Time: 2 Hours.
Vineet Mittal Should more be added here Committee Members:
Adviser:Ming-Yuan Shieh Student:shun-te chuang SN:M
On Multi-Arm Manipulation Planning
CHAPTER 3 Architectures for Distributed Systems
Luís Filipe Martinsª, Fernando Netoª,b. 
Lecture 23 Polymorphism Richard Gesick.
Chapter 24 Testing Object-Oriented Applications
A Fusion-based Approach for Tolerating Faults in Finite State Machines
Data and Computer Communications
Artificial Intelligence Chapter 2 Stimulus-Response Agents
Chapter 19 Testing Object-Oriented Applications
An Introduction to Software Architecture
Department of Electrical Engineering
IEEE MEDIA INDEPENDENT HANDOVER DCN:
Distributed Systems CS
Chapter 19 Testing Object-Oriented Applications
Fundamentals of Neural Networks Dr. Satinder Bal Gupta
Chapter 5 (through section 5.4)
CHAPTER I. of EVOLUTIONARY ROBOTICS Stefano Nolfi and Dario Floreano
Use Case Analysis – continued
IEEE MEDIA INDEPENDENT HANDOVER DCN:
Communication Driven Remapping of Processing Element (PE) in Fault-tolerant NoC-based MPSoCs Chia-Ling Chen, Yen-Hao Chen and TingTing Hwang Department.
Learning and Memorization
Outline Theoretical Foundations
Presentation transcript:

Fault-Tolerant Formations of Mobile Robots Ross Mead CS Dept., University of Southern California, USA Rob Long Jerry B. Weinberg Dept. of CS, Southern Illinois University Edwardsville, USA

Outline Conclusions Future Work Q&A Problem Statement Considerations Approach Algorithm Implementation Evaluation Conclusions Future Work Q&A 2

Problem Statement swarm formation How can a large collection of robots moving with no group organization coordinate to form a global structure? swarm formation 3

Considerations In related work on formations, robotic units know… where they belong in the formation who their neighbors are supposed to be Criteria of Fredslund & Matarić 2002: generality – conforming to a variety of formations stability – maintaining the formation dynamic switching capability – responding to commands for changes in its organization robustness/scalability – responding to changes in group size obstacle avoidance – dealing with large and small obstructions 4

Approach Utilize reactive robot control strategies closely couple sensor input to actions Treat the formation as a cellular automaton lattice of computational units (cells) each cell is in one of a given set of states state transitions governed by a set of rules complex emergent behavior from simplicity It relies solely on communication with local robot neighbors, and hence has the advantage of eliminating the need for each robot to maintain information about the global or overall structure of the entire formation. 5

“Robot-Space” Cellular Automata Each robot in the formation is represented as a cell ci in an n-dimensional automaton of N cells… ci = {hi, si, F, S} In keeping with a simple reactive control strategy, the approach of Mead et al. [18, 19] is to treat the robots in the formation as cells in a 1-dimensional robot-space cellular automaton [Fig. 13]. This distinguishes itself in that the actual robots that make up the global structure (i.e., not the structure itself) are represented by the cells. This approach overcomes many of the limitations inherent in a world-space automaton, eliminating the dependence on the environment and reducing the complexity of the automaton. 6

“Robot-Space” Cellular Automata C ← automaton: C = h1 U h2 U … U hN = {c1, c2, …, cN} Each robot in the formation is represented as a cell ci in an n-dimensional automaton of N cells… ci = {hi, si, F, S} neighborhood hi = ci U { n neighbors } n ≤ nmax In keeping with a simple reactive control strategy, the approach of Mead et al. [18, 19] is to treat the robots in the formation as cells in a 1-dimensional robot-space cellular automaton [Fig. 13]. This distinguishes itself in that the actual robots that make up the global structure (i.e., not the structure itself) are represented by the cells. This approach overcomes many of the limitations inherent in a world-space automaton, eliminating the dependence on the environment and reducing the complexity of the automaton. 7

“Robot-Space” Cellular Automata C ← automaton: C = h1 U h2 U … U hN = {c1, c2, …, cN} Each robot in the formation is represented as a cell ci in an n-dimensional automaton of N cells… ci = {hi, si, F, S} state si = {pi, ri,des, ri,act, Γi, Θi, ti} (... described later ...) In keeping with a simple reactive control strategy, the approach of Mead et al. [18, 19] is to treat the robots in the formation as cells in a 1-dimensional robot-space cellular automaton [Fig. 13]. This distinguishes itself in that the actual robots that make up the global structure (i.e., not the structure itself) are represented by the cells. This approach overcomes many of the limitations inherent in a world-space automaton, eliminating the dependence on the environment and reducing the complexity of the automaton. 8

“Robot-Space” Cellular Automata C ← automaton: C = h1 U h2 U … U hN = {c1, c2, …, cN} Each robot in the formation is represented as a cell ci in an n-dimensional automaton of N cells… ci = {hi, si, F, S} state transition si = {pi, ri,des, ri,act, Γi, Θi, ti} (... described later ...) sit = S(... si-1t-1, sit-1, si+1t-1 ...) t ← time step (counter) In keeping with a simple reactive control strategy, the approach of Mead et al. [18, 19] is to treat the robots in the formation as cells in a 1-dimensional robot-space cellular automaton [Fig. 13]. This distinguishes itself in that the actual robots that make up the global structure (i.e., not the structure itself) are represented by the cells. This approach overcomes many of the limitations inherent in a world-space automaton, eliminating the dependence on the environment and reducing the complexity of the automaton. 9

“Robot-Space” Cellular Automata C ← automaton: C = h1 U h2 U … U hN = {c1, c2, …, cN} Each robot in the formation is represented as a cell ci in an n-dimensional automaton of N cells… ci = {hi, si, F, S} formation F = {f’(x), R, Φ, pseed} f’(x) ← description R ← robot separation Φ ← relative heading pseed ← start position In keeping with a simple reactive control strategy, the approach of Mead et al. [18, 19] is to treat the robots in the formation as cells in a 1-dimensional robot-space cellular automaton [Fig. 13]. This distinguishes itself in that the actual robots that make up the global structure (i.e., not the structure itself) are represented by the cells. This approach overcomes many of the limitations inherent in a world-space automaton, eliminating the dependence on the environment and reducing the complexity of the automaton. 10

Algorithm – Formation Definition F is sent to some robot, designating it as the seed cell cseed... cseed is not a leader, but rather an initiator of the coordination process For purposes of calculating desired relationships, each cell ci considers itself to be at some formation-relative position pi: pi = [ xi f(xi) ]T In the case of cseed, this position pseed is given… f(x) = a x2 Note that cseed is not a leader, but rather an initiator of the coordination process. cseed pseed 11

Algorithm – Desired Relationships The desired relationship ri→j,des from ci to some neighbor cj is determined by calculating a vector v from pi to the intersection f(vx) and a circle centered at pi with radius R: R2 = (vx – pi,x)2 + (f(vx) – pi,y)2 ri→j,des = [ vx f(vx) ]T Relationships are rotated by –Φ to account for robot heading... f(x) = a x2 R –v +v pseed desired relationship with left neighbor ci-1 ri→i-1,des ri→i+1,des desired relationship with right neighbor ci+1 12

Algorithm – Desired Relationships The desired relationship ri→j,des from ci to some neighbor cj produces a unique formation-relative position pj: pj = pi + ri→j,des rj→i,des = –ri→j,des (for stability) f(x) = a x2 pi-1 pi+1 pseed ri→i-1,des ri→i+1,des 13

Algorithm – Desired Relationships ci announces an auction for pj–denoted A(pj)–iff: ||pi – pseed|| < ||pj – pseed|| Γi ≈ 0 (for densest packing) (for stability) f(x) = a x2 pi-1 pi+1 pseed 14

Algorithm – Desired Relationships A robot that receives an auction message for pj will announce a bid B(pj) iff n = 0 (i.e., it has no neighborhood and, thus, is not yet part of the automaton) or: n < nmax pj is closer to pseed (for repair) (for densest packing) f(x) = a x2 pi-1 pi+1 pseed 15

Algorithm – Desired Relationships A robot that receives an auction message for pj will announce a bid B(pj): B(pj) = E d + X n d ← distance from robot to pj (weighted by energy cost modifier E) n ← number of existing neighbors (weighted by relation cost modifier X) f(x) = a x2 pi-1 pi+1 pseed 16

Algorithm – Desired Relationships After a period of time, ci announces the winning bidder based on the minimum bid B(pj)… F and ri→j,des are communicated locally within the neighborhood. Each neighbor cj repeats the process, but considers itself to be at its own unique formation-relative position pj. f(x) = a x2 pi-1 pi+1 pseed 17

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

Algorithm – Actual Relationships Using sensor readings, robots calculate an actual relationship ri→j,act with each neighbor cj. State of all cells in hi governs robot movement: rotational error Θi and translational error Γi relationships based on relative coordinate systems 19

Algorithm – Extended Definition 20

Algorithm – Extended Definition 21

Implementation 22

Evaluation – Generality The generality of a system refers to its ability to conform to a variety of different formations. Analysis from various trials and experiments has suggested a classification of the formations that can currently be produced… Analysis from various trials and experiments suggests that the algorithm is extremely general and has warranted a classification of the formations that can currently be produced: 23

Evaluation – Generality Non-formation (swarm) Explicit formation Straight line formation Function-based formation Branching formation Lattice formation 24

Evaluation – Stability A system’s ability to maintain formation (once established) dictates its stability. To test the control algorithm against this principle, we manipulated one or many robots in a variety of different formations, changing both position and orientation… To test the control algorithm against this principle, we manipulated one or many robots (either via remote control or by hand) in a variety of different formations, changing both its position and orientation. 25

Evaluation – Dynamic Switching Dynamic switching capabilities refer to the ability of the system to respond to an operator’s commands for changes in formation organization. To manipulate the formation, a human operator sends one of a variety of commands to any single robot… propagates changes in the automaton causes a chain reaction in neighbors results in a global transformation To manipulate the formation, a human operator need only send one of a variety of commands to any single robot. This propagates changes in the automaton, causing a chain reaction in neighbors, which then change states accordingly, resulting in a global transformation of the formation. Commands include formation translation, rotation, scaling, resizing, and change [6]. The ease with which an operator can manipulate formations with potentially large numbers of robots is a hallmark of this system. The current implementation, however, presents a limitation in formation transitions that require a change in the size of the neighborhood—recall that neighborhoods are currently specified manually (i.e., they are static) and, thus, cannot accommodate such scenarios. This limitation is clear when an operator commands a change from, say, a function-based formation (e.g., a parabola; two neighbors) to a lattice formation (e.g., a hexagon; six neighbors). Section V describes a method for dynamic neighborhoods to allow such a transition. 26

Evaluation – Robustness/Scalability Evaluating robustness/scalability considers the ability of a system to respond to changes in group size. Algorithm is independent of the number of robots. Robots can be reassigned to new tasks or exhibit failure. As numbers begin to dwindle or the task changes, other robots may join the ranks to increase the numbers. Relying only on local information within an established neighborhood, it can be shown that the algorithm is independent of the number of robots; however, in the current implementation, the number of robots must be given at startup so that neighborhood of each robot can be initialized (i.e., all neighborhoods are specified manually). While this number can, indeed, be any value that corresponds to the true number of robots in the system, once set, this implementation is limited to only this number. This is not acceptable for most real-world applications. It is quite common for robots to be reassigned to different tasks or exhibit failure; likewise, as numbers begin to dwindle or the task changes, it is possible that other robot units join the ranks to increase these numbers. A robust formation control system must be tolerant of this. In Section V, we propose a method to address dynamic neighborhoods, thus, overcoming groups of static size. 27

Evaluation – Robustness/Scalability Relying only on local information within an established neighborhood, it can be shown that the algorithm is independent of the number of robots; however, in the current implementation, the number of robots must be given at startup so that neighborhood of each robot can be initialized (i.e., all neighborhoods are specified manually). While this number can, indeed, be any value that corresponds to the true number of robots in the system, once set, this implementation is limited to only this number. This is not acceptable for most real-world applications. It is quite common for robots to be reassigned to different tasks or exhibit failure; likewise, as numbers begin to dwindle or the task changes, it is possible that other robot units join the ranks to increase these numbers. A robust formation control system must be tolerant of this. In Section V, we propose a method to address dynamic neighborhoods, thus, overcoming groups of static size. 28

Conclusions Presented a distributed cellular automata-based formation control architecture capable of controlling large numbers of robots. Discussed a distributed auctioning method to allow robot formation to reconfigure autonomously. Examined the architecture with respect to necessary characteristics to handle real-world events. 29

Questions? For more information, please visit http://roboti.cs.siue.edu/projects/formations/ or see the following papers: 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 23rd 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 23rd 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 22nd 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 22nd National Conference on Artificial Intelligence (AAAI-07), 1889-1890. Vancouver, British Columbia. 30