SlideShare a Scribd company logo
1 of 27
Multi-Robot Systems CSCI 7000-006 Wednesday, September 2, 2009 NikolausCorrell
So far Reactive algorithms Lowest-level control for individual autonomous robots Coordination mechanism for swarms of individually simple individuals Coordination via local communication or by modifying the environment
Today More advanced reactive algorithms Message propagation and information gradients Threshold-based algorithms
Information Gradients Example: find hot-spot in the environment Given Robot swarm Every robot can sample temperature Robots can exchange info Course question Algorithm What else do you need to know? 4 4 4 7 8 3 9 7 6 7 6 6 5 5 2 5
Tracking down a hot spot Need local range and bearing or global position Algorithm: Sample temperature Broadcast temperature Receive from neighbors Broadcast direction to hottest neighbor Other application: routingYouTube Open E-puck Range & Bearing Miniaturized Board for Local Communication in Swarm Robotics. A. Gutierrez, A. Campo, M. Dorigo, J. Donate, F. Monasterio-Huelinand L. Magdalena. ICRA 2009.
Information Gradients: Static and Mobile Systems Similar to artificial potential fields But: robots/embedded systems provide the force field Multiple sources can emit competing gradients http://borg.cc.gatech.edu/gnats
Information Gradients: Programming Language MIT Proto (Scheme dialect) Functional language “Program” evaluates into a motion vector Commands Integrate over neighborhood Differentiate over neighborhood (gradient) … Key: every information used in the program is also broadcast (def cluster-to (src) 	(* -1 (grad (distance-to src)))) (cluster-to (is-light)) http://groups.csail.mit.edu/stpg/proto.html
Example: Deployment of Wifi Networks Goal: Communication Infrastructure Self-Deployment, Self-Repair Applications Natural disasters Military Environmental Monitoring
Challenges 3m (GPS) Positioning Bearing Unidirectional communication Local-to-global: coding & algorithms Locomotion Its just me here! Heeello! Everybody maintain coverage!
Algorithm Only sensor: number of neighbors Move randomly until local topology constraints are fulfilled Connected to gateway Minimum number of neighbors Maximum number of neighbors 3 2 2 4 1 if ( 2 < neighbors < 4)     move else     stop
How to establish connection? Gateway emits special message Nodes forward gateway message “Hop-count” to gateway Count-to-infinity problem Unconnected if number of hops larger than total number of nodes 2 1 0 2 3 0 3 4 0
Proto Algorithm Parameters
System Architecture 1 Hz IP Layer IP Layer IP Layer IP Layer IP Layer IP Layer IP Layer OLSRd (Optimized Link State Routing) Link Layer Link Layer Link Layer Link Layer Link Layer Link Layer Atheros MIPS 180MHz Mobile Layer Mobile Layer Mobile Layer Mobile Layer Mobile Layer Mobile Layer Link Layer Deployment Algorithm PROTO Mobile Layer iRobot Create 20 Hz Differential Wheels Drive
Topology vs. control parameters(centralized deployment) ( 1 < neighbors < 3) ( 2 < neighbors < 4) ( 3 < neighbors < 5)
Area coverage vs. control parameters(centralized deployment) ( 2 < neighbors < 4) ( 1 < neighbors < 5) ( 1 < neighbors < 6)
Indoor Experiment 9 robots Central deployment 500m2 ~ 30min
Taking advantage of Localization and Communication Baseline: deployment algorithm Algorithms Move to last-known-good position Move to last-known-good and disperse Consensus and flocking Course Question: Why would you need the consensus and flocking algorithm? Hint: local minima of the dispersion algorithm.  Videos: Anna Derbakova
Threshold-based algorithms React probabilistically to stimulus Threshold determines likelihood Different thresholds for competing stimuli Biological inspiration: social insects Probability to do task i Stimulus intensity Krieger, M.J.B. & Billeter, J-B. (2000). The call of duty: Selforganised task allocation in a population of up to twelve mobile robots Robotics Autonom. Sys. 30: 65-84.
Example 1: Task Allocation(Krieger & Billeter) Goal: forage for “energy” in the environment Maintain energy in the “nest” on a certain level Ant-like task allocation and recruitment in cooperative robots. M. Krieger, J. Billeter and L. Keller. Nature, vol 406, pp. 992-995, August 2006.
System architecture and algorithm Nest maintains information on colony energy and broadcast this information Robots receive energy from the nest Robots forage randomly for “food”, increasing nest energy Robots forage only when nest energy falls below a certain threshold Beacon provides visual cue for finding the nest
Results Krieger, M.J.B. & Billeter, J-B. (2000). The call of duty: Selforganised task allocation in a population of up to twelve mobile robots Robotics Autonom. Sys. 30: 65-84.
Example 2: Aggregation Goal: Aggregation (Monday) Threshold-based task allocation Workers estimate availability of work (stimulus) Workers take a rest when there is little work Self-regulation of swarm activity
Results
Analysis Homogenous controllers Local perception of stimulus (heterogeneous team) leads to diversity Fully scalable: number of agents do not matter Course question: What happens if threshold is too low What happens if threshold is too high How find optimal threshold?
Optimizing the response threshold Systematic search /parameter sweep Performance metric is steadily increasing Comparing snap-shot of the experiment at T=10h Too few workers Too many workers (clusters get destroyed) 10 robots, 20 seeds
Summary Reactive algorithms, information gradients and response-thresholds are powerful heuristics for generating complex behavior Information gradients enabled by range and bearing hardware Potential for extreme miniaturization and large numbers of agents
Upcoming  Friday: Message passing in ROS Next week: Monday: Labor Day Wednesday: (multi-robot) Localization Friday: Lab, navigation

More Related Content

Similar to September 2, Reactive Algorithms II

02/2017 Santa Clara, California: Networks of autonomous devices and their imp...
02/2017 Santa Clara, California: Networks of autonomous devices and their imp...02/2017 Santa Clara, California: Networks of autonomous devices and their imp...
02/2017 Santa Clara, California: Networks of autonomous devices and their imp...Frank Alexander Reusch
 
IRJET- Survey Paper on Human Following Robot
IRJET- Survey Paper on Human Following RobotIRJET- Survey Paper on Human Following Robot
IRJET- Survey Paper on Human Following RobotIRJET Journal
 
Wireless sensor networks
Wireless sensor networksWireless sensor networks
Wireless sensor networksDilum Bandara
 
(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...
(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...
(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...Naoki Shibata
 
Comparative study between metaheuristic algorithms for internet of things wir...
Comparative study between metaheuristic algorithms for internet of things wir...Comparative study between metaheuristic algorithms for internet of things wir...
Comparative study between metaheuristic algorithms for internet of things wir...IJECEIAES
 
Open Source Software Tools for Synchrophasor Applications
Open Source Software Tools for  Synchrophasor ApplicationsOpen Source Software Tools for  Synchrophasor Applications
Open Source Software Tools for Synchrophasor ApplicationsLuigi Vanfretti
 
Agents In An Exponential World Foster
Agents In An Exponential World FosterAgents In An Exponential World Foster
Agents In An Exponential World FosterIan Foster
 
2021 itu challenge_reinforcement_learning
2021 itu challenge_reinforcement_learning2021 itu challenge_reinforcement_learning
2021 itu challenge_reinforcement_learningLASSEMedia
 
Virtual Science in the Cloud
Virtual Science in the CloudVirtual Science in the Cloud
Virtual Science in the Cloudthetfoot
 
Term Paper Presentation
Term Paper PresentationTerm Paper Presentation
Term Paper PresentationShubham Singh
 
Space solarpower
Space solarpowerSpace solarpower
Space solarpowerisrokids
 
A benchmark dataset to evaluate sensor displacement in activity recognition
A benchmark dataset to evaluate sensor displacement in activity recognitionA benchmark dataset to evaluate sensor displacement in activity recognition
A benchmark dataset to evaluate sensor displacement in activity recognitionOresti Banos
 
Optical Switching in the Datacenter
Optical Switching in the DatacenterOptical Switching in the Datacenter
Optical Switching in the DatacenterKostas Katrinis
 
Enhancing indoor localization using IoT techniques
Enhancing indoor localization using IoT techniquesEnhancing indoor localization using IoT techniques
Enhancing indoor localization using IoT techniquesMohamed Nabil, MSc.
 

Similar to September 2, Reactive Algorithms II (20)

August 31, Reactive Algorithms I
August 31, Reactive Algorithms IAugust 31, Reactive Algorithms I
August 31, Reactive Algorithms I
 
02/2017 Santa Clara, California: Networks of autonomous devices and their imp...
02/2017 Santa Clara, California: Networks of autonomous devices and their imp...02/2017 Santa Clara, California: Networks of autonomous devices and their imp...
02/2017 Santa Clara, California: Networks of autonomous devices and their imp...
 
November 16, Learning
November 16, LearningNovember 16, Learning
November 16, Learning
 
Sensor net
Sensor netSensor net
Sensor net
 
IRJET- Survey Paper on Human Following Robot
IRJET- Survey Paper on Human Following RobotIRJET- Survey Paper on Human Following Robot
IRJET- Survey Paper on Human Following Robot
 
Wireless sensor networks
Wireless sensor networksWireless sensor networks
Wireless sensor networks
 
(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...
(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...
(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...
 
Comparative study between metaheuristic algorithms for internet of things wir...
Comparative study between metaheuristic algorithms for internet of things wir...Comparative study between metaheuristic algorithms for internet of things wir...
Comparative study between metaheuristic algorithms for internet of things wir...
 
Open Source Software Tools for Synchrophasor Applications
Open Source Software Tools for  Synchrophasor ApplicationsOpen Source Software Tools for  Synchrophasor Applications
Open Source Software Tools for Synchrophasor Applications
 
Agents In An Exponential World Foster
Agents In An Exponential World FosterAgents In An Exponential World Foster
Agents In An Exponential World Foster
 
2021 itu challenge_reinforcement_learning
2021 itu challenge_reinforcement_learning2021 itu challenge_reinforcement_learning
2021 itu challenge_reinforcement_learning
 
Virtual Science in the Cloud
Virtual Science in the CloudVirtual Science in the Cloud
Virtual Science in the Cloud
 
Big Data and IOT
Big Data and IOTBig Data and IOT
Big Data and IOT
 
Term Paper Presentation
Term Paper PresentationTerm Paper Presentation
Term Paper Presentation
 
Space solarpower
Space solarpowerSpace solarpower
Space solarpower
 
September 11, Deliberative Algorithms II
September 11, Deliberative Algorithms IISeptember 11, Deliberative Algorithms II
September 11, Deliberative Algorithms II
 
A benchmark dataset to evaluate sensor displacement in activity recognition
A benchmark dataset to evaluate sensor displacement in activity recognitionA benchmark dataset to evaluate sensor displacement in activity recognition
A benchmark dataset to evaluate sensor displacement in activity recognition
 
Optical Switching in the Datacenter
Optical Switching in the DatacenterOptical Switching in the Datacenter
Optical Switching in the Datacenter
 
1. GRID COMPUTING
1. GRID COMPUTING1. GRID COMPUTING
1. GRID COMPUTING
 
Enhancing indoor localization using IoT techniques
Enhancing indoor localization using IoT techniquesEnhancing indoor localization using IoT techniques
Enhancing indoor localization using IoT techniques
 

More from University of Colorado at Boulder

Three-dimensional construction with mobile robots and modular blocks
 Three-dimensional construction with mobile robots and modular blocks Three-dimensional construction with mobile robots and modular blocks
Three-dimensional construction with mobile robots and modular blocksUniversity of Colorado at Boulder
 

More from University of Colorado at Boulder (20)

Three-dimensional construction with mobile robots and modular blocks
 Three-dimensional construction with mobile robots and modular blocks Three-dimensional construction with mobile robots and modular blocks
Three-dimensional construction with mobile robots and modular blocks
 
Template classes and ROS messages
Template classes and ROS messagesTemplate classes and ROS messages
Template classes and ROS messages
 
NLP for Robotics
NLP for RoboticsNLP for Robotics
NLP for Robotics
 
Indoor Localization Systems
Indoor Localization SystemsIndoor Localization Systems
Indoor Localization Systems
 
Vishal Verma: Rapidly Exploring Random Trees
Vishal Verma: Rapidly Exploring Random TreesVishal Verma: Rapidly Exploring Random Trees
Vishal Verma: Rapidly Exploring Random Trees
 
Lecture 10: Summary
Lecture 10: SummaryLecture 10: Summary
Lecture 10: Summary
 
Lecture 09: SLAM
Lecture 09: SLAMLecture 09: SLAM
Lecture 09: SLAM
 
Lecture 08: Localization and Mapping II
Lecture 08: Localization and Mapping IILecture 08: Localization and Mapping II
Lecture 08: Localization and Mapping II
 
Lecture 07: Localization and Mapping I
Lecture 07: Localization and Mapping ILecture 07: Localization and Mapping I
Lecture 07: Localization and Mapping I
 
Lecture 06: Features and Uncertainty
Lecture 06: Features and UncertaintyLecture 06: Features and Uncertainty
Lecture 06: Features and Uncertainty
 
Lecture 05
Lecture 05Lecture 05
Lecture 05
 
Lecture 04
Lecture 04Lecture 04
Lecture 04
 
Lecture 03 - Kinematics and Control
Lecture 03 - Kinematics and ControlLecture 03 - Kinematics and Control
Lecture 03 - Kinematics and Control
 
Lecture 02: Locomotion
Lecture 02: LocomotionLecture 02: Locomotion
Lecture 02: Locomotion
 
Lecture 01
Lecture 01Lecture 01
Lecture 01
 
Lectures 11+12: Debates
Lectures 11+12: DebatesLectures 11+12: Debates
Lectures 11+12: Debates
 
Lecture 09: Localization and Mapping III
Lecture 09: Localization and Mapping IIILecture 09: Localization and Mapping III
Lecture 09: Localization and Mapping III
 
Lecture 10: Navigation
Lecture 10: NavigationLecture 10: Navigation
Lecture 10: Navigation
 
Lecture 08: Localization and Mapping II
Lecture 08: Localization and Mapping IILecture 08: Localization and Mapping II
Lecture 08: Localization and Mapping II
 
Lecture 07: Localization and Mapping I
Lecture 07: Localization and Mapping ILecture 07: Localization and Mapping I
Lecture 07: Localization and Mapping I
 

Recently uploaded

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 

Recently uploaded (20)

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 

September 2, Reactive Algorithms II

  • 1. Multi-Robot Systems CSCI 7000-006 Wednesday, September 2, 2009 NikolausCorrell
  • 2. So far Reactive algorithms Lowest-level control for individual autonomous robots Coordination mechanism for swarms of individually simple individuals Coordination via local communication or by modifying the environment
  • 3. Today More advanced reactive algorithms Message propagation and information gradients Threshold-based algorithms
  • 4. Information Gradients Example: find hot-spot in the environment Given Robot swarm Every robot can sample temperature Robots can exchange info Course question Algorithm What else do you need to know? 4 4 4 7 8 3 9 7 6 7 6 6 5 5 2 5
  • 5. Tracking down a hot spot Need local range and bearing or global position Algorithm: Sample temperature Broadcast temperature Receive from neighbors Broadcast direction to hottest neighbor Other application: routingYouTube Open E-puck Range & Bearing Miniaturized Board for Local Communication in Swarm Robotics. A. Gutierrez, A. Campo, M. Dorigo, J. Donate, F. Monasterio-Huelinand L. Magdalena. ICRA 2009.
  • 6. Information Gradients: Static and Mobile Systems Similar to artificial potential fields But: robots/embedded systems provide the force field Multiple sources can emit competing gradients http://borg.cc.gatech.edu/gnats
  • 7. Information Gradients: Programming Language MIT Proto (Scheme dialect) Functional language “Program” evaluates into a motion vector Commands Integrate over neighborhood Differentiate over neighborhood (gradient) … Key: every information used in the program is also broadcast (def cluster-to (src) (* -1 (grad (distance-to src)))) (cluster-to (is-light)) http://groups.csail.mit.edu/stpg/proto.html
  • 8. Example: Deployment of Wifi Networks Goal: Communication Infrastructure Self-Deployment, Self-Repair Applications Natural disasters Military Environmental Monitoring
  • 9. Challenges 3m (GPS) Positioning Bearing Unidirectional communication Local-to-global: coding & algorithms Locomotion Its just me here! Heeello! Everybody maintain coverage!
  • 10. Algorithm Only sensor: number of neighbors Move randomly until local topology constraints are fulfilled Connected to gateway Minimum number of neighbors Maximum number of neighbors 3 2 2 4 1 if ( 2 < neighbors < 4) move else stop
  • 11. How to establish connection? Gateway emits special message Nodes forward gateway message “Hop-count” to gateway Count-to-infinity problem Unconnected if number of hops larger than total number of nodes 2 1 0 2 3 0 3 4 0
  • 13. System Architecture 1 Hz IP Layer IP Layer IP Layer IP Layer IP Layer IP Layer IP Layer OLSRd (Optimized Link State Routing) Link Layer Link Layer Link Layer Link Layer Link Layer Link Layer Atheros MIPS 180MHz Mobile Layer Mobile Layer Mobile Layer Mobile Layer Mobile Layer Mobile Layer Link Layer Deployment Algorithm PROTO Mobile Layer iRobot Create 20 Hz Differential Wheels Drive
  • 14. Topology vs. control parameters(centralized deployment) ( 1 < neighbors < 3) ( 2 < neighbors < 4) ( 3 < neighbors < 5)
  • 15. Area coverage vs. control parameters(centralized deployment) ( 2 < neighbors < 4) ( 1 < neighbors < 5) ( 1 < neighbors < 6)
  • 16. Indoor Experiment 9 robots Central deployment 500m2 ~ 30min
  • 17. Taking advantage of Localization and Communication Baseline: deployment algorithm Algorithms Move to last-known-good position Move to last-known-good and disperse Consensus and flocking Course Question: Why would you need the consensus and flocking algorithm? Hint: local minima of the dispersion algorithm. Videos: Anna Derbakova
  • 18. Threshold-based algorithms React probabilistically to stimulus Threshold determines likelihood Different thresholds for competing stimuli Biological inspiration: social insects Probability to do task i Stimulus intensity Krieger, M.J.B. & Billeter, J-B. (2000). The call of duty: Selforganised task allocation in a population of up to twelve mobile robots Robotics Autonom. Sys. 30: 65-84.
  • 19. Example 1: Task Allocation(Krieger & Billeter) Goal: forage for “energy” in the environment Maintain energy in the “nest” on a certain level Ant-like task allocation and recruitment in cooperative robots. M. Krieger, J. Billeter and L. Keller. Nature, vol 406, pp. 992-995, August 2006.
  • 20. System architecture and algorithm Nest maintains information on colony energy and broadcast this information Robots receive energy from the nest Robots forage randomly for “food”, increasing nest energy Robots forage only when nest energy falls below a certain threshold Beacon provides visual cue for finding the nest
  • 21. Results Krieger, M.J.B. & Billeter, J-B. (2000). The call of duty: Selforganised task allocation in a population of up to twelve mobile robots Robotics Autonom. Sys. 30: 65-84.
  • 22. Example 2: Aggregation Goal: Aggregation (Monday) Threshold-based task allocation Workers estimate availability of work (stimulus) Workers take a rest when there is little work Self-regulation of swarm activity
  • 24. Analysis Homogenous controllers Local perception of stimulus (heterogeneous team) leads to diversity Fully scalable: number of agents do not matter Course question: What happens if threshold is too low What happens if threshold is too high How find optimal threshold?
  • 25. Optimizing the response threshold Systematic search /parameter sweep Performance metric is steadily increasing Comparing snap-shot of the experiment at T=10h Too few workers Too many workers (clusters get destroyed) 10 robots, 20 seeds
  • 26. Summary Reactive algorithms, information gradients and response-thresholds are powerful heuristics for generating complex behavior Information gradients enabled by range and bearing hardware Potential for extreme miniaturization and large numbers of agents
  • 27. Upcoming Friday: Message passing in ROS Next week: Monday: Labor Day Wednesday: (multi-robot) Localization Friday: Lab, navigation

Editor's Notes

  1. We are not interested in working on the locomotion axis for now
  2. OLSRd updates the mesh topology on IP routing level every 1s by exchanging “HELLO” messagesOur algorithm runs on the link layer and exchanges messages at 20HzWe implemented a virtual machine for the swarm programming language PROTO that facilitates programming the swarm, details are in the paper.
  3. Centralized deployment leads to rather compact distributions.If the number of max neighbors is too low, robots might need to go to far away from the cluster and get lost (top row).If the number of min neighbors is too high, robots on the outer boundary of the cluster tend to move away from the cluster (no range and bearing info!).Notice that this is a snapshot (time = 5000 time steps) and convergence is asymptotic.
  4. Higher numbers of max neighbors lead to denser deployments (lower coverage area).All parameters show similar asymptotic behavior.
  5. Real robot experiments confirm results qualitatively. The initial deployment location was around robot 7 (static). The system spread out autonomously and converged to configurations similar to that shown in the experimental snapshot above.
  6. A naïveapporach is to move towards the last known good position. This leads to poor coverage, however.A better way to do is to disperse at the same time, which is not provably complete, however (local minima).A provably optimal algorithm is to find consensus on an optimal direction of motion and then move in a flock. This is a tradeoff between time to completion and provable properties (consensus takes time).