49
Computer and Information Science | Computer Systems Department Final Seminar 24/6/2013 Co-Swarm: Cooperative area exploration using a swarm o f mobile robots June 2013 1 Final Seminar

[Gp][final seminar][presentation]

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: [Gp][final seminar][presentation]

Computer and Information Science | Computer Systems Department

Final Seminar 24/6/2013

Co-Swarm: Cooperative area exploration using a swarm of mobile robots June 2013 1Final Seminar

Page 2: [Gp][final seminar][presentation]

• Team – Ahmed Mohamed Emad– Abdelrahman Ehab Soliman– Muhammed Aly Huessin– Anas Awad Ismail

• Academic Supervisors – Prof. Dr. Hossam El-Din Fahem– Dr. Wael S. El-Kilany– TA. Agwad Hammad

Team Members

Co-Swarm: Cooperative area exploration using a swarm of mobile robots June 2013 2Final Seminar

Page 3: [Gp][final seminar][presentation]

• Overview :– Problem Definition – Previous Work

• Objective• Co-Swarm :

– System Architecture – Module_1 (Plan)– Module_2 (Sense)– Module_3 (Act)– Communication

• System Constraints• Experiments (Demo)• Conclusion and Future Work• References

Outline

Outline

Overview

ObjectiveCo-Swarm

System ConstraintsExperiments

Conclusion Future Work

References

Co-Swarm: Cooperative area exploration using a swarm of mobile robots June 2013 3Final Seminar

Page 4: [Gp][final seminar][presentation]

Problem Definition“In Robotics, the exploration problem deals with the use of a

robot to maximize the knowledge over a particular area.

The exploration problem arises in mapping and search and

rescue situations, where an environment might be

dangerous or inaccessible to humans ”

Overview

Outline OverviewObjective

Co-Swarm System Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm: Cooperative area exploration using a swarm of mobile robots June 2013 4Final Seminar

Page 5: [Gp][final seminar][presentation]

Problem Overview– The exploration problems appeared when the humans think

to use robots to discover unknown areas that may be dangerous or inaccessible for humans.

– Robot needs a map to operate in a particular environment.

– Autonomous Exploration :  The ability of robots to autonomously travel around an unknown environment gathering the necessary information to obtain a useful map for navigation.

– Optimization Problem: NP-Complete Problem

Overview

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

June 2013 5

Page 6: [Gp][final seminar][presentation]

Previous Work• In absence of global position information,

(SLAM) techniques are deployed to construct a map.

• State of the art:– Classic non-coordinated strategies– Classic coordinated strategies– Integrated non-coordinated strategies – Integrated coordinated strategies

Overview

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

June 2013 6

Page 7: [Gp][final seminar][presentation]

Previous Work• In absence of global position information,

(SLAM) techniques are deployed to construct a map.

• State of the art:– Classic non-coordinated strategies– Classic coordinated strategies

• Frontier-Based Exploration using Multiple Robots – Brain Yamuchi 1998

– Integrated non-coordinated strategies – Integrated coordinated strategies

Overview

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

June 2013 7

Page 8: [Gp][final seminar][presentation]

What’s Swarm ?! • New bio-inspired approach to control the coordination of

(Multi-Robot System)MRS, which consists of large numbers of mostly simple physical robots.

• This collective behavior leads to the field of Artificial Swarm Intelligence.

Overview

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-Swarm System Constraints

ExperimentsConclusion

Future WorkReferences

June 2013 8

Page 9: [Gp][final seminar][presentation]

Why Swarm ?!• Simple and Elegant.– Can be represented by State Machine.

• Scalable.• Decentralized.• Usage of local interactions.

Overview

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

June 2013 9

Page 10: [Gp][final seminar][presentation]

“Speedup the area exploration mission using swarm of Mobile Robots”

Objective

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline Overview

ObjectiveCo-Swarm

System ConstraintsExperimentsConclusion

Future WorkReferences

June 2013 10

Page 11: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

• Robot Control Methodology (S-P-A)

Co-Swarm |System Architecture

June 2013 11

Page 12: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Frontier-Based Exploration – Brain Yamuchi 1998

– Central Idea:• Gain the most new information about the world.• Move to the boundary between open space and

uncharted space.

Co-Swarm | Planning

June 2013 12

Page 13: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Planning

June 2013 13

Page 14: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Evidence Grid• Our Spatial Representation for the Environment.• A Cartesian Grid containing cells and each cell

contains its state whether it is Open , Occupied or unknown.

Frontier Detection• Frontiers are regions on the boundary between open

space and unexplored space.• A process analogous to edge detection and region

extraction in computer vision is used to find the boundaries between open space and unknown space.

Co-Swarm | Planning

June 2013 14

Page 15: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Navigate to Frontiers• The robot attempts to navigate to the nearest

accessible unvisited frontier.• Motion Planning with Obstacle Avoidance.• Path Finding Algorithm  A*.

Co-Swarm | Planning

June 2013 15

Page 16: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Planning

June 2013 16

Frontier-Based Exploration (Single Robot)

Page 17: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Planning

June 2013 17

Frontier-Based Exploration (Mutli-Robot)

Page 18: [Gp][final seminar][presentation]

Co-Swarm |System Architecture

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

June 2013 18

Page 19: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm |System Architecture

June 2013 19

Page 20: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Planning

June 2013 20

Self-Organizing Models–Mobility Sensor Models• Fully Coordinated Control Model.• Fully Random Model.• Emergent Motion Control.

– Flocking Algorithm.– Anti-Flocking Algorithm

Page 21: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Planning

June 2013 21

Self-Organizing Models–Mobility Sensor Models• Fully Coordinated Control Model.• Fully Random Model.• Emergent Motion Control.

– Flocking Algorithm.

–Anti-Flocking Algorithm

Page 22: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Planning

June 2013 22

Anti-Flocking Algorithm

Page 23: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Planning

June 2013 23

Critical Cases Handling – More than one robot navigate to the same

frontier.– Robot cuts the road of another one.

Page 24: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Planning

June 2013 24

Page 25: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Planning

June 2013 25

Page 26: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Sensing

June 2013 26

Sensing the environment– Using PSD– Using Ultrasonic

Page 27: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Sensing

June 2013 27

Sensing the environment– Using PSD– Using Ultrasonic

Page 28: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Acting| Framework Design

June 2013 28

Motion Engine

Direction

Ultra Sonic PSD

Path Executor

Command interpreter

Serial Communication (USART)

PID Controller Motor Driver

Local Grid Generator

Message

Path[0] … Path[Length -1]

Reply

L_Grid[0] … L_Grid[Length -1]

Distance I , or Angle I Angle i

Requ

est f

or D

ist.

Distance

Request for Dist.

Speed

ENA. signal

Distance

Dis

tanc

e

Request for L_Grid .

Page 29: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Acting| Framework

June 2013 29

Commands Interpreter Module–Message Splitting– Function Signature– Passing Parameters

Page 30: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Acting| Framework

June 2013 30

Commands Interpreter Module

Path Executor

Command interpreter

Serial Communication (USART)

Local Grid Generator

Message

Path[0] … Path[Length -1]

Reply

L_Grid[0] … L_Grid[Length -1]

Page 31: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Acting| Framework

June 2013 31

Path Executer Module– Fetch the next step and its direction.– Call the desired function

Page 32: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Acting| Framework

June 2013 32

Path Executer Module

Motion Engine

Path Executor

Command interpreter

Path[0] … Path[Length -1]

Distance I , or Angle I

Page 33: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Acting| Framework

June 2013 33

Local Grid Generator– Receive Request .– Uses the Motion Engine Module to move the

robot in a certain angle– Uses the PSD Sensor Adapter to explore robot

local area .– Returns the information about each cell in

robot local whether it is open or occupied.

Page 34: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Acting| Framework

June 2013 34

Local Grid Generator

Local Grid Generator

Angle i

Requ

est f

or D

ist.

Dis

tanc

e

Motion Engine

PSD

Command interpreter

L_Grid[0] … L_Grid[Length -1] Request for L_Grid .

Page 35: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Acting

June 2013 35

Motion Engine– Used for controlling robot motion in a specific

direction and for a given distance .– Or used to perform rotation operation on the

robot for a given angle– Motion Engine is responsible for obstacle

detection and avoidance by using the Ultra sonic sensor and PSD sensor .

Page 36: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Acting

June 2013 36

Motion Engine

Motion Engine

Direction

Ultra Sonic PSD

Path Executor

PID Controller Motor Driver

Local Grid Generator

Distance I , or Angle I Angle i

Requ

est f

or D

ist.

Distance

Request for Dist.

Speed

ENA. signal

Distance

Dis

tanc

e

Page 37: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Acting

June 2013 37

PID Controller– PID : It is a generic control loop feedback

mechanism (controller) widely used in industrial control systems, we used it to be able to control the wheels rotation of the robots with regular speed .

Page 38: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Acting

June 2013 38

PID Controller

Page 39: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Communication

June 2013 39

Due to use of External Brain:– Robot-To-Brain Communication (USART, Bluetooth)

– Brain-To-Brain Communication (Wireless Lan)

Page 40: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Communication

June 2013 40

Data Exchange Scheme– Timelines

Page 41: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Communication

June 2013 41

Robot BrainSTR (X,Y, Orientation)#

RDY#

GRD (Center, Size)#

LGD (X0 – Xsize-1) $

CTS#

UPD#

RQP (X,Y)#

PTH [0 … n]$

RDP #

.

.

.STP#

STP#

Page 42: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Co-Swarm | Communication

June 2013 42

Brain Brain

BLG (X0 – Xsize-1) $

UPD#

Page 43: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

System Constraints

June 2013 43

• Cell Size equal to Object Size (Fixed).• 4-direction Robot motion only.• Uncertainty in Localization.

Page 44: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Experiments | Obstacle Detection/Avoidance

June 2013 44

Page 45: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Experiments |Path Executer

June 2013 45

Page 46: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

Experiments

Conclusion

Future WorkReferences

Conclusion

June 2013 46

• Using swarm with applying Anti-Flocking solves restrictions of frontier-based approach instead of using complex solutions like SLAM techniques.

Page 47: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Future Work

June 2013 47

• Robot Motion Planning in Eight Directions using Voronoi diagram.

• Dynamic Path finding using D* Lite.• Monte-Carlo localization (Markov

localization).• Migration of the AI Agent to the Cloud

(Cloud Robotics).

Page 48: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future WorkReferences

Tools And Technologies

June 2013 48

• Exploration Simulator – C++/CLI, C# windows Application– Microsoft Visual Studio 2010

• Embedded Software (Robot Framework):– C on AVR Studio

• ASANAA: Team Management System

• Github, Bitbucket: Source Control.

Page 49: [Gp][final seminar][presentation]

Co-Swarm: Cooperative area exploration using a swarm of mobile robotsFinal Seminar

Outline OverviewObjective

Co-SwarmSystem Constraints

ExperimentsConclusion

Future Work

References

References

June 2013 49

[1] Sebastian Thrun. Probabilistic Robotics, (1999-2000) [2] R.Murphy. An introduction to AI Robotics.MIT Press, 2000[3] Yamauchi, B. A frontier-based approach for autonomous exploration. In Proceedings of the 1997 IEEE International Symposium on Computational Intelligen ce in Robotics and Automation, (Monterey, CA, July 1997), pp. 146-151.[4] Yamauchi,B . Frontier-Based Exploration Using Multiple Robots.In the Proceedings of the Second International Conference on Autonomous Agents (Agents ‘98), Minneapolis, MN,May 1998, ACM Press.[5] Yun-Qian Miao, Alaa Khamis, Mohamed Kamel, "Applying Anti-Flocking Model in Mobile Surveillance Systems," Special Session on Distributed Surveillance Systems, International Conference on Autonomous and Intelligent Systems (AIS 2010), June 21-23, 2010, Povoa de Varzim, Portugal [Acceptance rate: 68%]. [6] Martin C. Martin Hans P. Moravec , Robot Evidence Grids,Tech. report CMU-RI-TR-96-06, Robotics Institute, Carnegie Mellon University, March, 1996.[7] Angie Shia , Survey of Swarm Robotics Techniques – A Tutorial,Special Topics Chair IEEE RAS Region 6[8] Don Miner ,Swarm Robotics Algorithms: A Survey (2007)[9] Miguel Juliá.Arturo Gil .Oscar Reinoso, A comparison of path planning strategies for autonomous exploration and mapping of unknown environments.[10] A Behavior-Based Strategy for Single and Multi-Robot Autonomous Exploration,Sensors 2012,13 July 2012.[11] Alaa Khamis , Motion Planning in robots , lectures notes at GUC.