Multi Swarm Optimization For Robot Using RF Communication - Assignment Point
Multi Swarm Optimization For Robot Using RF Communication
Subject: Physics | Topics:

Multi Swarm Optimization For following Robot
Using RF Communication

This is multi swarm optimization robot where present one master robot and other robots those follow the master robot called coordinator robots. Here master robot transmits signal and follower robots receive that signal and get optimized. By optimization there arises group working concept among the coordinator or follower robots. Then they follow the master robot until it working. Hence here use an optical sensor for localization. In this multi swarm optimization process xbee is used for communication among the robots. Moreover, xbee is used for its high range of distance capacity in communication. By this project, optimization way is developed. All coordinator robots work as optimized way. As robots follow and maintain a constant distant, they can carry also heaviest things and this type of work can help our daily life also. Moreover, multi swarm optimization robotics is based on the use of local rules, and simple robots compared to the complexity of the task to achieve, and inspired by social insects. Large number of simple robots can perform complex tasks in a more efficient way than a single robot, giving robustness and flexibility to the group. In this paper, an overview of multi swarm optimized robotics is given, describing its main properties and characteristics and comparing it to general multi-robotic systems. A review of different research works and experimental results, together with a discussion of the future swarm robotics in real world applications completes this work.


The objective of the SWARM-BOTS undertaking is to investigate new equipment and programming parts of swarm discernment. A swarm-bot is made out of a few little portable robots (with a breadth of 10 cm), called s-bots, ready to self-ruling self-collect into greater substances, called swarm-bots. An unconventional peculiarity of the Swarmbot is that s-bots can misuse rich association gadgets to self-amass into different setups, help one another, perform aggregate transportation, and even impart to one another. This gimmick, which is abused by a few social creepy crawlies, gives an extra measurement to aggregate mechanical technology where cooperation among robots are regularly virtual or occur through pushing activities.

This venture means to help the monetary advancement of the Community by giving another methodology to the outline, development and control of automated frameworks. The target of the SWARM-BOTS task is to study a novel methodology to the outline, equipment usage, test and utilization of gathering toward oneself, sorting toward oneself out, changeable mechanical frameworks called swarm-bots. This novel methodology thinks that its hypothetical establishes in late studies in swarm sagacity that is, in investigations of the sorting toward oneself out and gathering toward oneself abilities demonstrated by social creepy crawlies and other creature social orders. Before the end of the venture a show of the proposed methodology will be made by method for the physical development of no less than one swarm-bot, that is, a storing up toward oneself and sorting toward oneself out robot made out of a number of littler gadgets, called s-bots.

Specifically, we mean to test the achievability of the reconciliation of swarm knowledge, fortification learning and evolutionary reckoning ideal models for the usage of get-together toward oneself and organizing toward oneself changeable robots by developing a swarm-bot model. A major measurable objective will consequently be the (equipment) development of such a model. The task will be viewed as fruitful if a working model fit for on-line relationship toward oneself can be exhibited toward the end of the undertaking.


Swarm mechanical autonomy is a rising field of mechanical autonomy, which is propelled by nature. The ideas furthermore approaches in this field originates from contemplating creature species, which have developed and adjusted to get by, in the changing environment on earth, for a huge number of years. The creature species have created from basic living beings to  complex species. As in Darwin’s evolutionary hypothesis, regular choice and transformations are ideas utilized in swarm mechanical autonomy to advance robot controllers. We discover these ideas extremely fascinating furthermore trust it is conceivable to gain considerably more from nature.

We accept that robots will turn into an expanding piece of our reality later on. In the years ago, we have as of now started to see robots in the ordinary life, outside processing plants also examine labs. This incorporates programmed yard cutters, vacuum cleaners, and conveyance robots utilized as a part of the same rooms and passages as individuals, as at St. Olav’s Hospital in Trondheim. Robots can likewise be utilized as eyes and apparatuses for people in ranges where people can’t go, either on the grounds that it is excessively unsafe or in light of the fact that the range is excessively little. The robots can be utilized for investigating the Moon and Mars, and for scanning for individuals in fallen then again perilous structures, harmed by flames, quakes or tornadoes. We accept that swarm apply autonomy can be helpful out in this present reality, and need to help to the improvement inside the field. Amid our exploration process, we discovered the activities Swarm-bots, Swarmanoid and Symbrion, which have done tries different things with accumulating toward oneself in swarm mechanical technology. These activities show effective gathering toward oneself, with swarms figuring out how to climb inclines, cross gaps and make structures. We discovered these studies exceptionally intriguing, however their gathering toward oneself frameworks were just investigated in a couple of situations. We accept that self assembling need to be considered in more situations before it can be utilized as a part of the certifiable. To help, by proceeding with this exploration, we will investigate the preferences of gathering toward oneself for a swarm of robots in other troublesome situations.

Besides, a mechanical swarm needs to adjust its conduct to the nature’s turf. In the event that the environment is not static however alterable, robots will have significantly more challenges to adjust legitimately. The speedier and the sharper an environment changes, the harder it gets to outline a productive swarm. To wrap things up, in Swarm Robotics the physical robots will probably impact each other, at any rate by their vicinity. In the event that space is tight, obstruction will in all likelihood happen and oblige gainful assignment designs.

Report Overview

The accompanying report comprises of five sections where this introduction chapter contains the literature review, objective and our motivation behind this work is given.

This thesis is included 5 more chapters that take after, where in chapter 2 we have discussed about the implementation technique of our robots. Their communication system, hardware and more on the hardware controlling are also given here. A physical overview is actually given here.

Chapter 3 is the center of this proposition, involving a definite clarification on the swarm algorithm is stated. It discusses the thought behind the picked algorithm, substantiated by consequences of the processing techniques talked about in section 2.

Chapter 4 expects to assemble an idea about the experiments and result analysis which was carried out amid the entire theory and practical work.

Chapter 5 intends to build a decision which can be found by the discussion part of this paper. Both Accuracy and efficiency based decisions of our robots are to be found there.

Chapter 6 is the conclusion part, where a talk about the consequences of this Swarm work and also extents of future research on this theme is available.

System architecture

Description of all useful hard wares

(A) Gear Motor

Gear motor is a great low-cost alternative to modified hobby servos. This low-current motor is a perfect match for dual serial controller, and the compact size makes the controller’s unit an attractive choice for small robot designs.

This gear motor comes pre-assembled, with the gears fully enclosed. There are built-in mounting holes, and the output shaft is 7mm in diameter with two sides flattened.

Some motors can be used as a wheel itself or as a mounting point for other wheels or mechanisms. There are different gear motors which are classified on their operations. For example:

  • Pololu 200:1 plastic gear motor is less expensive and range of operating voltage at 3v to 12v
  • In GM2 gear motor, output shaft parallel to the motor shaft
  • GM7 gear motor is similar but smaller and 120:1 gear motor


We used power supply to the converter and inverter inverted it and sends it to the motor. PWM, voltage and frequency control and speed setting were done in the inverter.

 (B) Motor Driver

The L298N is an integrated monolithic circuit in a 15-lead Multiwatt and PowerSO20 packages. It is a high voltage, high current dual full-bridge driver de-signed to accept standard TTL logic levels and drive inductive loads such as relays, solenoids, DC and stepping motors. Two enable inputs are provided to enable or disable the device independently of the input signals. The emitters of the lower transistors of each bridge are connected together and the corresponding external terminal can be used for the connection of an external sensing resistor. An additional supply input is provided so that the logic works at a lower voltage.

This IC can interface DC motor which can be controlled in both clockwise and counter clockwise direction. The motor operations of two motors can be controlled by input logic at pins 5 & 7 and 10 & 12. The pin diagram of L298N motor driver is shown below;


Besides that, with this L298N driver motor it will control four DC motors at one time but with fix direction of motion. L298N has maximum output current of 2A per channel.

Moreover for protection of circuit from back EMF output diode are included within the L298N. The output supply hitch is external supply has a wide range from 4.5V to 46V which has madeL298Na best choice for DC motor driver. A simple schematic for interfacing a DC gear motor using L298Ndriver motor is shown below:


(C) Ps2 Mouse

We have used Ps2 mouse for getting value from microcontroller. We were facing a big trouble for getting this mouse. One of our group members had this mouse. During our experiment we burned that mouse. As we know now a day’s most of the time we use USB cabled mouse which available at the present timebecause of its simple construction, cheap and also easy to make and get.

Ps2 is a standard type of connection used to connect keyboards, mice, and other input devices to a computer. Generally, it refers to the types of cables (PS/2 cable), ports (PS/2 port), and other connectors used with these types of keyboards and mice. Sometimes it is seen that PS/2 ports on some server machines and other custom computer setups but it’s not common.

Now a day’s PS/2 standard has been completely replaced by USB in consumer machines.


(D) Batteries

9v battery and 12v battery 9v battery was used for operating arduinouno. If we would use higher volt battery, the system might be burnt. Moreover, 12 volt was used for operating motor driver.


Communications of swarm robot

Swarm robotics is the study of robotic systems consisting of a large group of relatively small and simple robots that interact and cooperate with each other in order to jointly solve tasks that are outside by their own individual capabilities. Swarm robotic systems typically exhibit interesting properties such as high degrees of parallelism, redundancy, and robustness.

Swarm-bots was concerned with the design, implementation and control of the s-bots: a swarm of small robots moving on a combination of tracks and wheels that can self-organize and self-assemble. Swarmanoid goes a step further, aiming at the development and control of a heterogeneous swarm consisting of three different types of robots: foot-bots, which move over the ground and have capabilities that are similar to those of the s-bots, eye-bots, which fly and have the capability to attach to the ceiling, and hand-bots, which have arms and grippers to manipulate objects and are able to climb in the vertical space using a rope.

In our project we have made two robots which communicate with each other. Robot 1 transmit signal to robot 2 and robot 2 receive it and follow the first one.

There is an opportunity to make this small project bigger. These two robots can transmit signal to one another also receive signal both of them. In our experiment only one robot can transmit signal in a certain time and another one can receive it and follow the first robot maintaining a certain distance. After that the process is repeated until both robots reach the highest distance.

 (A) Communication systems used in swarm robot

  1. i) Arduino Uno

Arduino is a single-board microcontroller, intended to make the application of interactive objects or environments more accessible. The hardware consists of an open-source hardware board designed around an 8-bit Atmel AVR microcontroller, or a 32-bit Atmel ARM. Current models feature an USB interface, 6 analog input pins, as well as 14 digital I/O pins which allow attaching various extension boards. It comes with a simple integrated development environment (IDE) that runs on regular personal computers and allows writing programs for Arduino using C or C++.


An Arduino board consists of an Atmel 8-bit AVR microcontroller with complementary components to facilitate programming and incorporation into other circuits. An important aspect of the Arduino is the standard way that connectors are exposed, allowing the CPU board to be connected to a variety of interchangeable add-on modules known as shields.

Some shields communicate with the Arduino board directly over various pins, but many shieldsare individually addressable via an I²C serial bus, allowing many shields to be stacked and used inparallel.

Official Arduinos have used the mega AVR series of chips, specifically the ATmega8, ATmega168, ATmega328, ATmega1280, and ATmega2560. A handful of other processors have been used by Arduino compatibles. Most boards include a 5 volt linear regulator and a 16 MHz crystal oscillator (or ceramic resonator in some variants), although some designs such as the Lily Pad run at 8 MHz and dispense with the onboard voltage regulator due to specific form-factor restrictions. An Arduino’s microcontroller is also pre-programmed with a boot loader that simplifies uploading of programs to the on-chip flash memory, compared with other devices that typically need an external programmer. Software: Arduino programs are written in C or C++. The Arduino IDE comes with a software library called “Wiring” from the original Wiring project, which makes many common input/output operations much easier. Users only need define two functions to make a run able cyclic executive program.

setup(): a function run once at the start of a program that can initialize settings.

loop(): a function called repeatedly until the board powers off.

In our system we have used two arduino. The system is always moving to detect the position of fire by a USB camera. One arduino is used for controlling the movement of the mover, the camera, and the motors of the system. Whenever the system can detect a fire then first arduino send signal to the second arduino. The task of the first arduino stops here and after that the task of the second arduino starts. The second arduino then control the task of the solenoid valve. After the system can detect the fire then the solenoid valve throw fluid mechanism to the fire detected area. This whole process is worked by the second arduino.

ii) XBEE and XBEE shield

The combination of Arduino and XBEE is a very popular option for an electronics project. People can use it to remote control a robot. Here demonstrates the test program on Arduino for communicating with XBEE.

The original official soft serial library of Arduino , can only use the default pins ( Rx pin0 and Tx pin1 ) for serial communication. That’s only one set for Arduinoduemilanove, while the other IO pins are doing nothing over there. In reality, we need more than one UART interface for Arduino to communicate with other microcontroller unit in the same time.

Except XBEE, if we want to talk to our PC , GPS module , HVAC sensor module , mouse , or keyboard , in the same time , we cannot do it with the official library. That’s why we need to use an external library like NewSoftSerial.

New Soft Serial allows to talk to other device which comes with UART. We can assign any two pins, one for Rx and the other for Tx, from D/AO number 0 to 13 plus D/AI 0 to 5.

And the transfer rate can reach up to 57600 bps. It is a very powerful and convenient tool. The XBEE Shield gives Arduino a seamless interface to XBEE-one of the most popular wireless platforms around. With XBEE, instead of being tied down by a serial cable – inches away from a paired device –Arduino can pass data over the air to another device hundreds of feet away.

XBEE is so popular because of its simplicity. XBEEs are controlled over a serial interface– in the most basic operation they can be used as a wireless serial cable.


In our experiment we used two XBEE and a XBEE shield. Our supervisor Dr. Khalilur Rahman gave us one XBEE but that did not work. Then we bought new XBEE and another one we collected from our friend.

Hardware control

The whole program is done by arduino and XBEE. At first we took values of x and y until the value reaches up to 255 from Ps2 mouse which shows that the system is working. We pass a code from pc to operate arduino which is placed in two robots then the command passes to motor driver and the motor started rotating. After that arduino passes command to XBEE router. All these processes are done by router robot. On the other hand, arduino of coordinator robot receives command from XBEE coordinator with XBEE shield and send it to motor driver and then gear motor. After that slave robot start working. We use XCTU software to write XBEE. By using this software the user is able to upgrade the firmware, update the parameters, and perform communication testing easily.

Swarm Optimization

Concept Of Swarm Robotics

The main concept of swarm robotics is the study of how to coordinate large number of robots without relying on any external infrastructure or on any form of centralized control. These robots can perform complex tasks in a more efficient way than a single robot . Swarm robotics takes its inspiration from societies of insects that can perform tasks that are beyond the capabilities of the individuals.

Algorithm In Swarm Robotics

In swarm robotics, there will be a router robot and others will be coordinator robots. The router robot takes a decision and then delivers it all coordinator robots. After taking the commands, coordinator robots then follow the decision and perform a complex task which is beyond the capabilities of a single robot. If the router robot gives a decision that go forward, backward, left, right, follow each other etc. Using such algorithm, swarm robots can move stuff from one place to another. Moreover, there are many others algorithm in swarm robotics.

Examples: (a) Particle swarm optimization.

 (b) Ant Colony optimization.

 (c)Artificial bee colony algorithm.

 (d) Grey wolf optimizer.

 (e)Multi swarm optimization.

Multi-Swarm Optimization

Multi-swarm streamlining is a variation of Particle swarm enhancement focused around the utilization of numerous sub-swarms rather than one swarm. The general approach in multiswarm streamlining is that each one sub-swarm concentrates on a particular locale while a particular expansion technique chooses where and when to dispatch the sub-swarms. The multi-swarm framework is particularly fitted for the streamlining on multi-modal issues, where various optima exist.


Details Of Swarm Robotic


The word “swarm” is quite appropriate to distinguish that type of group robots. The fact is that the group robots we are dealing with is not just a group. It has some special characteristics, which in fact are found in swarms of insects, decentralized control, simple and identical members. Swarm robotics has its origins in swarm intelligence. Initially, the main focus of swarm robotics research was to study and validate biological research. Early collaboration between robotists and biologist helped swarm robotics research, which has since become a research field in its own right. In recent, years, the focus of swarm robotics has been shifting from a bio-inspired field of robotics, swarm robotics is increasingly becoming an engineering field whose focus is on the development of tools and methods to solve real problem.

Swarm intelligence:

Swarm intelligence is the discipline that deals with natural and artificial systems composed of many individuals that coordinate using decentralized control and self-organization. In particular, the discipline focuses on the collective behaviors that result from the local interaction of the individuals with each other and with their environment.

Our Optimization Process in Swarm Robotics

We basically tried to establish an optimization way where a master robot which is called as a “Router Robot” can control other slave robots known as “Coordinator Robot”. If router robot commands them to go forward or backward or left or right then all coordinator robots will execute those commands. It means all coordinator robots just follow the router robot. This router robot is controlled by external force.


Experiment and result analysis

How It Was Experimented

It was experimented in our lab. Initially experiment was conducted to determine the mouse coordinate values. Research found that we can hack optical mouse and get coordinate values.

Our actual intention for using that optical mouse was to localize every robot individually. We used an optical mouse where ADNS5020 optical sensor was used and there were no macro-controller. We directly used arduinouno to read out the ADNS5020 optical sensor’s given values.

After getting those coordinate values, we used Xbee module for transmit those values wirelessly and this transmitter Xbee is known as router xbee. We used Xbee because of its high range frequency and low data lose rate. Xbee was connected with arduinouno via Xbee Shield. Then another Xbee which is known as coordinator xbee were receiving those coordinate values continuously and sending those values to another arduinouno. Now using those coordinate values last arduino took some decisions and executed those decisions through gear motors.

During the experiment that was done several times, one arduinouno got damaged and it had to be replaced with another one. Moreover, one motor driver was also needed to be repaired because of short circuit. But finally, the coordinator robot was being controlled by router robot. On that time, room temperature was 24 degree and the distance from the router robot to coordinator robot was 1 meter.

Our router robot was controlled by external forces and our coordinator robot was followed it. Mainly, if we move our router robot to forward or backward or left or right then our coordinator robot will also be moved according to the commands.


Accuracy Of This Experiment

Our overall experiment was fulfilled seventy percent of its desire goal. But the accuracy was not same. Sometimes coordinator robot was not responded so accurately because of problem in optical sensor.


In our thesis we wanted to make contacts with the help of mouse between the two robots. Xbee and Xbee shield have worked well but there is a concern for us because the co-ordinate values of the mouse which works as a co-ordinaor doesn’t make the proper communication with the router(receiver). When the co-ordinate values continuously comes to the router after some period that values go to zero. For this reason it cannot communicate fully but it can follow most of the commands. So rather acting like an swarm bot it follows the commands.

So we suggest the people to minimize this problem for those who will be interested to work on this project in future. Communication system can be very smooth if they can fix this particular problem. More on this prototype robots can be more effective and more efficient if more hard paid off and can do the betterment for this robotics society.

We have tried to make up for this problem but couldn’t make proper solution for the time shortage. But what we have made can be good enough for working in many fields like agriculture, rmg sector or in the industries.

In these aspect we would think that someone or some people will take this project and make a better prototype or may be final version of this follower to enlighten our thought.


In our daily life we face traffic jam regularly. Moreover, we lift different type of heavy things, and in garment sectors sometimes workers carry loads and heavy machines. Our swarm robots can give solution of above problems by communicating with each other. Swarm robotics system can minimize traffic problem if we can use it in traffic control system. On the other hand, many robots together can lift heavy machines or materials.

Besides, swarm robot can do domestic tasks as well. The swarm robots that we made have accuracy at 75% to 80%. If we work with it in a big plot in future, accuracy will increase. Swarm robots have together working concept which is important doing any challenging work. It is possible to work with swarm technology and will get success.

Dr Roderich Gross, head of the Natural Robotics Lab, in the Department of Automatic Control and Systems Engineering at the University of Sheffield, says swarming robots could have important roles to play in the future of micro medicine, as ‘nanobots’ are developed for non-invasive treatment of humans. On a larger scale, they could play a part in military, or search and rescue operations, acting together in areas where it would be too dangerous or impractical for humans to go. In industry too, robot swarms could be put to use, improving manufacturing processes and workplace safety.

Related Physics Paper: