Pinned Project Overview Post

Project Overview

Introduction There have been numerous researches conducted for the development of algorithms that can be used for environment exploration an...

Tuesday, July 25, 2023

[POST :02] Algorithm Development Insight

When I was going through different online resources, there was some confusion in the text from different resources [Turned out I grasped the information in the wrong way]. Despite having these problems resolved after a discussion with my supervisor, I'm going to mention the major problems I had so you too can have an idea about these aspects.

Q1. Do agents need to stick together all the time without separating from the group?

This became a problem for me because when I think of swarm robots, this is what comes to my mind.
Source: https://en.wikipedia.org/wiki/Swarm_behaviour

All the robots clumped together

Then my supervisor pointed out that what makes a group of robots a swarm is not how hard they try to be in a grouped formation (This is known as flocking and also a separate research domain in swarm robotics) but how they communicate with each other (How they should communicate is mentioned in the next question). This means the robots do not have to stick together all the time just because swarms found in nature (a school of fish) stick together. So the short answer to my question is NO. They don't have to stick together all the time.

Q2. Can I use the swarm to update a global map depending on the data collected by the swarm, and make it available to the robots?

Again, the short answer is NO. Here is why. A swarm of robots should have decentralized control and decentralized communication. Meaning a single robot will only communicate with the neighboring robots only. If it has access to a global map located in a central server, the agents become individuals of a multi-robot system.

Q3.Can I assume the robots have a reliable way to communicate with each other and ignore any problems or limitations that might be there in robot to robot communication?

In other words, my question is whether it is okay to forget the technical implications and focus only on the development of the algorithm. While this seems okay since my topic is only about the algorithm, ignoring the real-world technical limitations and implications could make my algorithm not suitable for real-world applications. So if I want this to be real-world compatible, I need to think of the practical implementation of the algorithm too.

No comments:

Post a Comment