A System based on Swarm Intelligence and Ant Foraging Techniques By Kristin Eicher-Elmore.

Slides:



Advertisements
Similar presentations
Heuristic Search techniques
Advertisements

AI Pathfinding Representing the Search Space
Comparing Effectiveness of Bioinspired Approaches to Search and Rescue Scenarios Emily Shaeffer and Shena Cao 4/28/2011Shaeffer and Cao- ESE 313.
Sensor Based Planners Bug algorithms.
How Do You Make a Program Wait?. 1. What is an algorithm? 2. Can you think of a reason why it might be inconvenient to program your robot to always go.
Concurrency The need for speed. Why concurrency? Moore’s law: 1. The number of components on a chip doubles about every 18 months 2. The speed of computation.
Robot Sensor Networks. Introduction For the current sensor network the topography and stability of the environment is uncertain and of course time is.
Honda Shadow Owners UK 2nd Person Drop Off Bike Convoy
Sonar and Localization LMICSE Workshop June , 2005 Alma College.
Problem Solving Agents A problem solving agent is one which decides what actions and states to consider in completing a goal Examples: Finding the shortest.
AIR NAVIGATION Part 3 The 1 in 60 rule.
Wireless Networks for Multi- Robot Communications Creating a Sensor Network of Robots.
Navigating the BOE-BOT
A 296 MicroMouse project By Brian Kuriyama. Profit!
Programming Logic and Design, Third Edition Comprehensive
Autonomy using Encoders Intro to Robotics. Goal Our new task is to navigate a labyrinth. But this time we will NOT use motor commands in conjunction with.
OutLine Overview about Project Wii Robot Escaper Robot Problems and Solutions Demo.
Engineering H193 - Team Project Gateway Engineering Education Coalition P. 1 Spring Quarter 2008 Robot Programming Tips Week 4 Day 2 By Matt Gates and.
Brent Dingle Marco A. Morales Texas A&M University, Spring 2002
Chapter 2: Algorithm Discovery and Design
M & M EE 296 Final Presentation Spring 2004 Presentation Overview Team Member Introduction Project Overview Overall Design Description Final Project.
CHAPTER 10 Recursion. 2 Recursive Thinking Recursion is a programming technique in which a method can call itself to solve a problem A recursive definition.
Chapter 2: Algorithm Discovery and Design
LSU 11/01/2004System Testing and Debugging1 Programming Unit, Lecture 7.
Tal Saiag & Anna Itin May 2013
June 12, 2001 Jeong-Su Han An Autonomous Vehicle for People with Motor Disabilities by G. Bourhis, O.Horn, O.Habert and A. Pruski Paper Review.
Tom and Jerry By: Nicholas Johnson & Joshua Hartman EEL-5666 – Intelligent Machines Design Lab.
Energy Saving In Sensor Network Using Specialized Nodes Shahab Salehi EE 695.
Distributed Systems 15. Multiagent systems and swarms Simon Razniewski Faculty of Computer Science Free University of Bozen-Bolzano A.Y. 2014/2015.
Abstract Design Considerations and Future Plans In this project we focus on integrating sensors into a small electrical vehicle to enable it to navigate.
1 Autonomous Foraging in a Simulated Environment.
Programming Concepts Part B Ping Hsu. Functions A function is a way to organize the program so that: – frequently used sets of instructions or – a set.
Ruslan Masinjila Aida Militaru.  Nature of the Problem  Our Solution: The Roaming Security Robot  Functionalities  General System View  System Design.
1 Ch. 7 Recursion similar to iteration in that you repeatedly do a little bit of the task and then “loop” again and work on a smaller piece - eventually.
Chapter 2: Algorithm Discovery and Design Invitation to Computer Science, C++ Version, Third Edition.
Invitation to Computer Science, Java Version, Second Edition.
Maze Challenge Maze Challenge activity > TeachEngineering.org
CEG 4392 : Maze Solving Robot Presented by: Dominic Bergeron George Daoud Bruno Daoust Erick Duschesneau Bruno Daoust Erick Duschesneau Martin Hurtubise.
EEL 5666: Intelligent Machine Design Laboratory Final Presentation by Rob Hamersma April 12, 2005.
Robotica Lecture 3. 2 Robot Control Robot control is the mean by which the sensing and action of a robot are coordinated The infinitely many possible.
Kavita Singh CS-A What is Swarm Intelligence (SI)? “The emergent collective intelligence of groups of simple agents.”
6 Chapter 61 Looping Programming Logic and Design, Second Edition, Comprehensive 6.
Phong Le (EE) Josh Haley (CPE) Brandon Reeves (EE) Jerard Jose (EE)
The Alternative Larry Moore. 5 Nodes and Variant Input File Sizes Hadoop Alternative.
Artificial Intelligence in Game Design Complex Steering Behaviors and Combining Behaviors.
Technical Seminar Presentation Presented By:- Prasanna Kumar Misra(EI ) Under the guidance of Ms. Suchilipi Nepak Presented By Prasanna.
DRILL Answer the following question’s in your notebook: 1.How does ACO differ from PSO? 2.What does positive feedback do in a swarm? 3.What does negative.
Scientific Debugging. Errors in Software Errors are unexpected behaviors or outputs in programs As long as software is developed by humans, it will contain.
CE Operating Systems Lecture 2 Low level hardware support for operating systems.
M1G Introduction to Programming 2 3. Creating Classes: Room and Item.
Chapter 10 Algorithmic Thinking. Learning Objectives Explain similarities and differences among algorithms, programs, and heuristic solutions List the.
Biologically Inspired Computation Ant Colony Optimisation.
Artificial Intelligence in Game Design Lecture 8: Complex Steering Behaviors and Combining Behaviors.
©2006 CSUC Institute for Research in Intelligent Systems AAROM: A System based on Swarm Intelligence and Ant Foraging Techniques April 10, 2008 Kristin.
Mile-long hurdle race Suppose that we want to program Karel to run a one-mile long hurdle race, where vertical wall sections represent hurdles. The hurdles.
Path Planning Based on Ant Colony Algorithm and Distributed Local Navigation for Multi-Robot Systems International Conference on Mechatronics and Automation.
Ben Miller.   A distributed algorithm is a type of parallel algorithm  They are designed to run on multiple interconnected processors  Separate parts.
Routing Algorithms Lecture Static/ Dynamic, Direct/ Indirect, Shortest Path Routing, Flooding, Distance Vector Routing, Link State Routing, Hierarchical.
BEGINNER FLL PROGRAMMING WORKSHOP BY DROIDS ROBOTICS & EV3LESSONS.
Artificial Intelligence in Game Design Lecture 20: Hill Climbing and N-Grams.
Chapter 2: Algorithm Discovery and Design Invitation to Computer Science.
Deriving Consistency from LEGOs What we have learned in 6 years of FLL by Austin and Travis Schuh © 2005 Austin and Travis Schuh, all rights reserved.
Swarm Robotics Research Team A Robotic Application of the Ant Colony Optimization Algorithm The Ant Colony Optimization (ACO) algorithm is generally used.
Room Mapping with the IntelliBrain2 Chris Miller.
How Do You Make a Program Wait?
Computer Hardware What is a CPU.
COGNITIVE APPROACH TO ROBOT SPATIAL MAPPING
Review and Ideas for future Projects
An Introduction to VEX IQ Programming with Modkit
Exploring Computer Science Lesson 6-11
Presentation transcript:

A System based on Swarm Intelligence and Ant Foraging Techniques By Kristin Eicher-Elmore

What is Swarm Intelligence? Swarm Intelligence is a system in which more than one unsophisticated agents work together to create a solution to difficult tasks.

Some definitions relevant to Swarm Intelligence Collective behavior: The process of a group of agents working together to achieve a common goal. Reactive behavior: The reaction of an agent to an outside stimulus such as a light. Emergent Phenomena: The process where new behaviors develop dynamically during the process of solving a task.

Why is using Swarm Intelligence Techniques Important for Robotics Systems? Cost Effectiveness of: Hardware and Software

Cost Effectiveness of Hardware Simple agents have inexpensive hardware that can be easily replaced if an agent is damaged or lost in a hazardous environment. Inexpensive hardware leads to the ability to create large groups of agents that will be able to cover a large area.

Cost Effectiveness of Software Using simple agents means that the Software must be kept relatively simple and uncomplicated. These systems generally will not have the memory space for complex algorithms. Thus, the reaction times will generally be quicker for fast reaction times.

Purpose of the System To create a model for a system that will use features of the ant foraging techniques to find the shortest path to a goal for Search and Rescue applications. Military uses Fire and disaster rescue Police uses Any situation where there is danger and the need to get to a victim quickly.

Ant Foraging Techniques Ant foraging techniques were chosen because of the ant’s ability to find the shortest path to a goal.

Ant Foraging Technique Definitions Stigmergy: Indirect communication used for communication between different insects such as ants. It is opposed to direct cues such as visual or auditory ones. Pheromones: The chemical scent used by ants to communicate with one another in an indirect way. Mass recruitment: The process by which ants are directed towards a food source through the use of pheromone trails.

How does Mass Recruitment work to find the shortest path? The first ant to find the food source and return to the nest leaves a pheromone trail for the other ants to follow. Another ant follows this trail since it has the freshest and strongest scent and leaves a scent trail reinforcing the path. The path is now established and it will be the shortest one because of the fact that the first one to return took the least time finding the food.

Problems with adhering strictly to ant foraging techniques Ants will meander around until they find a food source. When they return this path is usually the shortest but wandering will not work with a robot without ensuring that it has a good efficient search algorithm.

The algorithm: How this system ensures a good solution The use of colored zones. Constant changing of search methods Constant search for food source through each search iteration Adequate obstacle avoidance Quick and Responsive RF Communication

The use of colored zones Once the robot reaches this marker the search method is changed to a forward search and this ensures that the robot will keep moving on and to keep the boe-bot from doubling back if it is making a left or right wall hug search. This feature serves to force a progression towards the goal.

Making progress with colored zones

Constantly changing search methods Changing search methods from a forward to a right wall hug, and a left wall hug search make sure that the robot will not keep trying the same route over and over and wander aimlessly. These search methods are stored in memory to be communicated to the follower ants as a map.

Robot changing search methods

Constant search for the food The food is searched for prior to every step forward the robot makes. This ensures that the robot will not miss it. When the robot senses the food it will enter a separate search loop that does not involve the switching of search methods performed when in travel mode. This further ensures that the food will not be passed by.

Food Search

Quick Obstacle Avoidance If the robot becomes stuck in a corner it will make a sweep of the surrounding area to find the farthest path from the wall closest to the robot that is clear for both sensors. The robot also moves quickly through obstacles.

Robot becoming Unstuck in a Corner

Robot moving through Obstacle Course

Quick and Responsive RF Communication Fast wireless communication means the follower robots can make a quick trip to the food goal.

The Scout Robot Communicating to Follower Robots

The System Algorithm Attempts to Find the Shortest Path by: Using Zones to mark progress so that scouts make quicker progress by not becoming stuck in one area. Using more than one search method so that the robot does not end up hugging one wall or traveling forward and going along every obstacle until the goal is reached. Sensing for the food at a constant rate so it isn’t passed Obstacle Avoidance techniques that make sure the robots do not become stuck in a corner for too long.

Emergent Behavior: Nature vs. Boe-Bot Similarities Differences Sensing around obstaclesNo pheromone decay A follower ant will scout its own way to a food source if it becomes lost Pheromone information is used as a guide rather than a strict trail

Platform All code is written in pBasic for a Board of Education BS2pe chip using the Parallax Basic Stamp Editor

Hardware Parallax 433 Mhz Transceiver Ultrasonic Ping Sensors Photo-Resistors

The Code contains two Controller Subsets Scout Search Loop Follower Search Loop Each robot contains the same code, but a flag indicates whether the robot starts out as a scout or a follower

Observations and Results Obstacle Avoidance Getting out of corners Finding the Light XOR Error Checking and RF communication Maze size and Progression

Obstacle Avoidance The code is successful at keeping the robot away from both walls and moving forward for forward search, and hugging the right and left walls for forward search. The robot is always successful at this. If the robot somehow gets very close to a wall on one side, the ultrasonic becomes blinded. During debugging it was found to record a large distance when it is in fact right up close to it. All of the sensors do this. So sometimes they get stuck running straight into a wall at a slight angle.

Getting out of Corners Involves doing a sweep of the area and chooses the first direction that is away from obstructions on both sides of the robot in a direction away from the obstruction. On average only two tries are required to get out of a corner. At most three. The robot always chose the right direction.

Finding the Light Very successful since sensors are checked a every step Once the robot senses it a separate sweep and search is made until the light source has been approached. Each robot has always found the light if close enough and situations were rare of a robot going by it when close unless another robot was blocking the light. Average distance when light found was five-seven inches away.

XOR Error Checking and RF Communication XOR checksums are calculated at both ends and compared before a message is accepted as correct. The scout will send out a message three times with two seconds in between to ensure the correct message is received. However during debugging and testing communication never failed after the first attempt.

Maze size and Progression If the maze walls are too far apart then when the robots go over a colored zone or marker, they don’t realize they are making progress. They might double back and think it was new ground they were seeing when in fact it was the same marker it has already seen. There did not seem to be any way to solve this in code. The only solution seems to be keeping the walls from being too far apart.

Live Demonstration

Recorded Demo

Challenges and Changes Communication and Error Checking Hardware Changes Mapping Technique Changes

Communication and Error Checking At first there was more communication going on. Each robot, scout and follower transmitted and received. This was changed because of an eventual lack of memory space. Because both scouts and followers transmitted and received the XOR error checking scheme was more exact and involved the receiver sending error messages to the transmitter asking for another transmission. Again this was simplified due to little memory space.

Hardware Challenges and Changes All code was simplified because major hardware changes were needed. The main challenge was a lack of memory space due to the needs of the transceiver. An extra chip a BS2 and a bread board were added. The extra chip made it necessary to consider building a battery pack that would hold five batteries since more voltage was needed. A power supply temporarily solved this problem.

Hardware Challenges and Changes cont. One chip the BS2pe ran logic and movement, the BS2 ran the transceiver. The biggest problem that could not be resolved: chip to chip communication. The BS2pe would not stop its program execution to notice the interrupt from the BS2 with the transceiver. The BS2pe ran at 6000 instructions per second and the BS2 ran at 4000 instructions per second. The BS2 ran at a speed too slow to interrupt the program execution of the BS2pe, so the code was simplified.

Mapping Techniques At first actual directions were used instead of search techniques. This used too much memory space and because each robot moves differently due to differences in servo motors, search technique mapping was more efficient.

Future Improvements Obstacle Avoidance and Colored Zones Finding the Goal (victim) Greater number of Agents and Scouts

Obstacle Avoidance and Zones Obstacle Avoidance code could remain the same yet with more durable robots with better traction and the ability to deal with potholes, etc.. Instead of contrasting markers used to keep track of progress, gps devices could be used that would keep track of where the robot is in relation to its starting point and the robot could actually see forward progression from the starting point.

Finding the Victim Instead of using light sensors, a thermal infrared camera could be used to identify victims.

Greater Number of Agents and Scouts A very large number of Scouts would be used to create better coverage of an area. Once the victim was found by the quickest agent, RF communication with more sophisticated error checking could be used to bring followers equipped with special equipment bringing temporary relief like oxygen and water until rescuers could reach the injured.

Conclusion A successful swarm has these components: Collective behavior Emergent behavior Reactive Behavior

Collective Behavior in this System Each agent shares the goal of finding the food. When one Scout finds this food, a guide is sent to the rest of the ants so that they can find the food as well. All ants are cooperating together to find the food.

Emergent Behavior Dynamic behaviors emerge during each run of the program. A follower might find an optimal solution better than the guide it received from the Scout because it does not follow the directions blindly but as a hint of the right moves to make to the goal sensing for the light as it goes.

Emergent Behavior cont. A separate search for the light source with the proper obstacle avoidance and sweep methods for the light if it has been sensed can create differing behaviors in each ant even if they took the same route enabling that no mistakes of missing the light can be made. Changing search methods over time create possible changes in behavior that keep an ant from being stuck in a rut following one method.

Reactive Behavior Apparent intelligence in insects comes from there reactions to their environment. Robots do can be made to react in similar ways with very simple sensors and hardware. Thus, swarm intelligence is an ideal way to create large and simple systems that can solve difficult problems with ease.