A Survey of Applications of Blockchain in Collective Decision-Making Scenarios in Swarm Robotics

Blockchain is a distributed ledger that was introduced to decentralize monetary systems. However, with time, the applications of blockchain in different realms have been identified. Swarm robotics is a field that combines swarm intelligence and robotics to solve real-world problems that cannot be solved by monolithic robots. Collective decision-making is one of the major behaviors implemented by swarm robotics. This study analyzes existing literature on the applications of blockchain in the collective decision-making scenarios in swarm robotics. Consequently, this study introduces a novel taxonomy to study the different applications effectively. The taxonomy categorizes existing literature into (i) application of blockchain in other areas of swarm robotics, (ii) application of blockchain in continuous collective decision-making scenarios, (iii) application of blockchain in discrete collective decision-making scenarios, (iv) application of blockchain in other discrete collective decision-making scenarios, and (v) application of blockchain in the collective perception scenario. Finally, the limitations of existing work such as excessive resource consumption and violation of swarm robotics principles are discussed.


INTRODUCTION
Blockchain helps decentralize systems and, as a result, it is being increasingly used in swarm robotics.However, to the best of the author's knowledge, there has not been a survey on the applications of blockchain in swarm robotics, especially in the area of collective decision-making.Thus, this study aims to fill this gap by providing a survey of the landscape that lies in the cross-section between blockchain and swarm robotics.This survey attempts to answer the following research questions: (i) What are the problem domains of swarm robotics where blockchain has been applied?(ii) How can the applications of blockchain in swarm robotics be classified?(iii) What are the blockchain consensus algorithms used in swarm robotics?
Consequently, this work is the first of its kind to study the applications of blockchain in swarm robotics and, hence, this can be considered an important research contribution of this paper.The structure of this paper is as follows: a primer on blockchain is provided followed by an introduction to swarm robotics.Next, a taxonomy of existing works is proposed, and the subsequent sections discuss the works falling into each category.Finally, the conclusion section discusses the findings of this survey.JINITA Vol. 5, No. 2, December 2023 DOI: doi.org/ 10.35970/ jinita.v5i2.1950

METHOD 2.1. Introduction to blockchain
A blockchain is a distributed ledger that was originally intended to be used to create a decentralized monetary system.However, with time, this technology has evolved to be used to create decentralized applications.All participating nodes in a blockchain get a copy of the ledger.The ledger is a chain of blocks that contains information about transactions.Transactions are carried out using a pair of public and private keys [1].When a transaction needs to be sent to another party, the transactor addresses the transaction to the public key of the recipient and signs the transaction using their private key.To be able to send money, the transactor must have already received the money.So, a successful transaction will have one or more input transactions that are addressed to the public key of the transactor.The nodes in a blockchain can then verify the transaction by decrypting the signature of the transaction using the public key in the input transactions.Since signatures produced using the private key can only be decrypted by the corresponding public key, this acts as proof that the transactor owns the money that they sent.The order of transactions matters to avoid double-spending.So, the transactions are added to a block.The blocks are then chained together using hashes, so the order becomes immutable.The process of producing blocks is called mining and is carried out by dedicated miners.Miners compete with one another to produce the next block that would be added to the chain of blocks.This is an important process since all the nodes need to come to a consensus on which block should be added to their ledger next.The winner is determined by the use of a consensus algorithm with Proof of Work (PoW) being the most popular one at present.The PoW algorithm requires miners to produce blocks whose hash value is less than a specified value.The difficulty of this process can be adjusted by lowering or raising this target value.Miners add nonces to the blocks before hashing them to try to produce the right block hash.When, finally, a node mines the right block, all the nodes agree to add this block to their chain.A simplified version of the functionality of PoW is presented in Figure 1.The right hash value serves as proof that the miner did some work since producing the right hash requires continuous trial and error using CPU time, thus, giving the algorithm its name.This also makes the blockchain immutable since to mutate the order of blocks, the work done to produce them has to be repeated.The immutability of the blockchain, its decentralized nature, and the ability to perform trustless transactions have made blockchain applications extend beyond monetary systems.

Introduction to swarm robotics
Swarm robotics is an approach whereby the principle of swarm intelligence is applied to robotics to solve problems that cannot be solved by single, monolithic robots or multi-agent robots.Swarm intelligence draws inspiration from biological systems in nature such as bee colonies, ant colonies, bacterial growth, and bird flocking.Such systems involve the coordination of simple individuals to solve complex problems.For instance, insect societies consist of simple, nearly homogenous units that are decentralized and not synchronized and communicate with one another using pheromones to find the best path to a source using a positive feedback mechanism [2].
Robots can defined as entities "capable of both mechanical and informational behavior".Swarm robotics employ simple robots to mimic simple individuals found in biological swarms and can be used to solve real-life problems-that are difficult to solve by other means-using swarm intelligence.Swarm robotics is formally defined as "the study of how a large number of relatively simple physically embodied agents can be designed such that a desired collective behavior emerges from the local interactions among agents and between the agents and the environment" [3].The many advantages of swarm robotics such as being able to mass-produce robots owing to their simplicity, and the reliability that stems from their redundancy mean that this technology can be used for tasks such as those "that cover a region", "that is dangerous", "that scale up or down in time", and "that require redundancy [2][3].
A review carried out by Brambilla et al. classifies the existing works into two major taxonomies, namely methods and collective behaviors [4].The methods taxonomy classifies published works based on the methods used to design swarm robotics systems and, thus, is of less interest to this study.The collective behaviors taxonomy reviews the basic behaviors exhibited by swarms to address real-world challenges.Collective behaviors are categorized into four main groups: spatially organizing behaviors, navigation behaviors, collective decision-making behaviors, and other collective behaviors.The behaviors of interest in this survey are the collective decision-making behaviors.Collective decision-making is the process of having a swarm of robots collectively agree on a single decision.In other words, this is about having the robots in a swarm agree on a certain decision.
According to Brambilla et al., this behavior can be exploited to address two different requirements, viz.consensus achievement, and task allocation.Consensus achievement is the behavior of reaching an agreement on one choice among several other alternatives whereas task allocation is the behavior of robots distributing different tasks among themselves.

Existing applications of blockchain in swarm robotics
Even though blockchain was originally intended to be used to decentralize monetary systems, its usefulness beyond financial technology has been increasingly realized.Blockchain's application in various disciplines such as document authenticity verification, insurance, the Internet of Things, the music industry, decentralized storage, and software-defined networks have been explored [5][6].This survey analyzes the use of blockchain in collective decision-making scenarios in swarm robotics.To analyze the existing works effectively, this research proposes a taxonomy as shown in Figure 2.

Application of blockchain in other areas of swarm robotics
Karthik et al. (2020) used blockchain in swarm robotics to construct a two-dimensional structure [7].This research work used blockchain to carry out trustless communication and serves as an example of the use of blockchain in spatial organizing behaviors.SwarmDAG, a novel protocol proposed by Tran et al. (2019), used blockchain to address challenges caused by network partitions in swarm robotics due to "navigational or communication" issues [8].

Application of blockchain in continuous collective decision-making scenarios
Strobel, Ferrer, and Dorigo (2018) used a blockchain smart contract to reach a consensus on a continuous collective decision-making problem amidst the presence of Byzantine robots [9].The authors employed a smart contract to disregard outlying sensor readings, whereby they mitigated the security challenges caused by Byzantine robots [9].The superiority of the blockchain solution over classical solutions was proven by the authors by comparing the performance of the blockchain solution with classical solutions such as the Linear Consensus Protocol (LCP) and Weighted Mean Subsequence Reduced (W-MSR) algorithms in a simulated environment.The simulated experiment showed the blockchain solution to be able to tolerate more Byzantine robots than the state-of-the-art W-MSR algorithm.

Application of blockchain in discrete collective decision-making scenarios
Singh et al. (2020) used the Proof-of-Authority (PoA) algorithm as the consensus algorithm in their blockchain-based discrete decision-making strategy to solve the inherent challenges-such as excessive resource consumption-posed by using the de-facto PoW algorithm [10].This strategy was demonstrated using a square grid that had three colors, viz.black, white, and gray.The middle of the square was gray whereas black and white colors were found at either end of the square grid.The swarm of robots rested in the middle region initially before starting to explore the grid by moving randomly.If a robot sensed the gray color, no LED was lit.However, if the color white was detected, then the red LED was lit, while if black was detected, then the green LED was lit.When a robot detected a color, while lighting its LED, it also sent a transaction to the blockchain.Only one transaction was allowed for a robot.The designers specified a threshold value in the smart contract and the color that reached the specified threshold value first was deemed the consensus color.The robots in the swarm periodically polled the smart contract to see if a consensus had been reached and if it had been, then they updated their opinion with the converged opinion.
The authors identified the use of the PoW algorithm, which is resource-intensive, as unsuitable for swarm robotics as the robots in a swarm are resource-constrained.Thus, they proposed the use of the PoA algorithm which used three validators to mine blocks.However, it can be argued that this solution centralizes the task of mining in the three validators and, thus, nullifies some of the inherent benefits afforded by swarm robotics such as reliability and redundancy.

Application of blockchain in other discrete collective decision-making scenarios
Nguyen et al. (2020) utilized blockchain to solve five types of best-of-n problems [11].The five types are: • same quality same cost [12] • same quality different cost [13] • different quality same cost In all of these scenarios, robots started from a rest area, moved around randomly while perceiving the quality of their opinion for a given time, and then returned to the rest area to disseminate their opinion and its corresponding quality.The cost of the opinion was determined by the distance between the rest area and the area the robot explored.When in the rest area, robots first checked if a consensus had been reached by querying the smart contract.If consensus had been reached, then they entered the stop state.Otherwise, the robots estimated their influence factor.The influence factor ifij of opinion i of robot j was given by: Where w1 and w2 were the positive weight for quality and cost (0  w1; w2  1), qi was the quality of the opinion i, cij was the exploration cost incurred by robot j to perceive opinion i, and C was a constant that denoted the maximum exploration time.Once the influence factor was estimated, robots called the JINITA Vol. 5, No. 2, December 2023 DOI: doi.org/ 10.35970/ jinita.v5i2.1950smart contract to submit their influence factor.Subsequently, robots called the smart contract to find the best opinion based on the influence factor and then vote for the best opinion.Once this was done, robots changed their opinion to the best opinion and began exploring again.The authors showed that the blockchain approach provided a more accurate and faster performance than the non-blockchain approaches.However, this solution also does not account for Byzantine robots and the use of the PoW algorithm means that this approach is ill-suited for resource-constrained robots.

Application of blockchain in the collective perception scenario
Blockchain was applied to the collective perception scenario by Strobel et al. (2018) as the authors attempted to solve the Byzantine problem in the DMMD, DMVD, and DC strategies of Valentini, Brambilla, et al. (2016) [14] [15].The authors deployed a private Ethereum network, and the mining difficulty was kept constant unlike in a typical blockchain network.An auxiliary geth node was used to publish the smart contract to the blockchain.The robots in the swarm first registered themselves by sending a transaction to the blockchain.Once all the robots were registered, the auxiliary node stopped mining.During registration, robots sent their public key to the smart contract and then listened to the events that were created during registration, which included the initial opinion of the robots, their block numbers, and the block hashes.The robots followed the routines as in the classical approach such as exploration and dissemination.However, during the dissemination state, instead of broadcasting their opinion to their neighbors, robots voted using the smart contract.Robots voted every 5 seconds, so the higher the quality of their opinion, the higher the number of votes was.
After voting, robots called the smart contract to execute the decision-making strategy.In the case of DMMD, the smart contract chose the opinions of two pseudorandom robots and returned the opinion of the majority.When DMVD was used, the opinion of a pseudorandom robot was returned.When DC was used, robots passed both their opinion and the quality of their opinion to the smart contract.Then, the smart contract chose a pseudorandom robot and compared the quality of the opinion of the robot that called the smart contract with that of the pseudorandom robot and returned the opinion with the higher quality.Following this, during the last 30 seconds of the dissemination state, the robots engaged in mining.This was to make sure the votes and the calls to get the best opinion were both executed by the smart contract since these are sent as transactions and need to be mined to be included in the blockchain.Strobel et al. (2018) used exogenous fault detection to detect Byzantine robots in the swarm [16].A vote from a robot was ignored if it was based on an outdated opinion.An opinion was considered outdated if it had not been updated during the last 25 blocks.Robots were also allowed only a maximum of 50 votes during each dissemination state when DMMD and DMVD were used.In the case of DC, robots got only one vote.Moreover, votes were rejected if the blockchain versions were different.Even though Strobel et al. (2018) managed to solve the Byzantine problem using blockchain, the swarm took longer to reach consensus in comparison to the classical approaches.This was because the blockchain used the PoW consensus algorithm which consumed extra time.Additionally, the PoW algorithm is also resourceintensive and, hence, is not suitable for running on simple robotic devices.Although Strobel et al. (2018) propounded a solution to the Byzantine problem that the classical decision-making strategies are vulnerable to, the Byzantine problem that stems from the PoW algorithm remained unsolved.
When the PoW algorithm is used, a node or a group of nodes with a hash rate over 50% of the total hash rate of the network can successfully compromise the security of the network [17].This form of attack is popularly known as the 51% attack and the solution of Strobel et al. ( 2018) is susceptible to it.In addition to this, the authors attempted to directly port the classical strategies to blockchain.In the classical strategies, one major phase was the dissemination of opinions of robots.This was important because robots can communicate their opinion only to their neighboring robots and the opinion does not get distributed across all robots.In contrast, peer-to-peer communication in blockchain ensures that information conveyed to one node gets distributed across all nodes.Thus, it can be argued that blockchain, by its design, offers a better alternative to the dissemination phase of classical strategies.
Therefore, robots need to publish their opinion along with their quality to the smart contract only once.The robots can also spend less time in the dissemination state since communicating with a few robots is enough to send and receive blocks.Thus, by developing a blockchain-native consensus strategy that exploits the inherent benefits of blockchain, the performance of the blockchain-based consensus strategy can be greatly improved.

Figure 1 A
Figure 1 A flowchart explaining the Proof of Work Algorithm.

Figure 2
Figure 2 Taxonomy of applications of blockchain in swarm robotics