DATA TRANSFER IN A DECENTRALIZED NETWORK OF ROBOTS USING A LOCAL VOTING PROTOCOL

The construction of an effective intelligent information transmission system in a group of cyber-physical systems is one of the important problems in both practical and theoretical contexts. Such a system for transmitting information for a group is being built for a network con-sisting of separate robotic complexes. Increasingly, decentralized solutions are used to build effective interac-tion between group members. As a rule, in networks, decentralization is present in computing software modules, and the data transmission system between nodes is centralized. One of the aspects of such centralization is the need to send data to a speciﬁc destination directly or by relaying through other nodes - routing data in the network. In this work, a method of data transmission in a decentralized network between robotic complexes without reference to routing is proposed. The method consists of the exchange of data on the state of the entire network as a whole between the nodes.


Introduction
Modern realities create new problems and tasks that can be effectively solved using multi-agent systems. Multi-agent systems are decentralized systems in which all participants are agents making independent decisions aimed at performing certain tasks. These tasks are usually set by the user.
Uber can be considered as an example of a multi-agent system with the taxi driver being the agents and the passengers being the users. Another sample is the swarm of robots. Consider the problem: a search operation in an aggressive environment involving hundreds of simple drones, the loss of any of them will not be critical or expensive. Each drone is an agent and has weak communications to communicate with its closest neighbors. The agents, knowing their place on the terrain and the result of their search whether a target has been found or not, transmit and receive this information to their neighbors, and those further down the chain. If they have this information, a swarm of drones passes large areas, carrying out search operations with high efficiency.
To create an effective control system for such a swarm, it is required to learn how to transfer data through a network whose topology is constantly changing, and long-term separation into different connectivity components is also possible. Existing technologies for a network with dynamic topology such as Mesh networks, adhoc networks, TCP/IP, UDP, WDS technology [Shumeye Lakew et al., 2020;Arafat and Moh, 2019] do not ensure the operability of such a system, since they require creating a route before sending information. On the one hand, routing allows data to be transferred from node to node with maximum confidence in the information; on the other hand, with a variable network topology, delivery routes are constantly rebuilt, which requires additional synchronization of the entire network, during which data transmission is suspended. When a group of robots is working, the user's task is not reduced to control a separate node, but to control what is happening in the entire network, receiving and analyzing information relevant to him. At the same time, robots have their own local task, a common global one, and solve them autonomously. Multi-agent solutions, for example, JADE and the like [Poslad, 2007], do not fully meet the requirements of a multi-agent system, since they have special agents: DF -"yellow pages" and AMS -an authoriza- There was a need to create another system to implement data transmission in a network with a constantly changing topology.

Technologies for Wireless Communication in a
Variable Topology Network In this section, we consider the decentralization of the existing technologies in terms of the following four levels of provision: 1. Mathematical -the ability of the mathematical part of the data transmission system to work in a variable topology environment. 2. Algorithmic -a message transfer logic that determines the sequence of message transfer, recipients, communication protocol, and the like. 3. Software -software that includes a data exchange protocol. 4. Hardware -the ability of specific modules to execute certain programs, algorithms and protocols.

FIPA
FIPA is a foundation for intelligent physical agents which develops software standards for agent-based systems [Poslad, 2007]. FIPA has created protocols that govern the operation of multi-agent systems, namely, communication protocols, semantics and syntax of messages. According to the FIPA regulations, special agents must be present in the systems (see Fig. 1): 1. AMS is the agent responsible for the agent management service and agent namespace storage. 2. DF is an agent, which is a yellow page service where agents publish information about their services.
At the mathematical level, the systems regulated by FIPA are tested for multi-agency. However, the presence of special agents at the algorithmic level does not allow the system to pass this test.
There are approximately twenty projects which developed using FIPA standards. The most popular supported project of this kind is JADE [Poslad, 2007], which is investigated in the following subsection.

JADE
JADE is middleware for building distributed multiagent systems which is able to work with limited resources. The platform includes a dynamic environment, a class library, and a set of graphical tools. JADE consists of a set of containers, which are a dynamic runtime environment and each of which can contain several agents. There is always a main container containing special agents: AMS is the agent management system containing DF ("yellow pages"), without which the system does not work. Similarly to FIPA protocols, algorithmic checks for JADE are not passed.

TCP and UDP Protocols
Both TCP and UDP protocols are designed to control the transmission of data on the network [Shumeye Lakew et al., 2020;Arafat and Moh, 2019]. Before data transmission TCP establishes a preliminary connection. In case of data loss, it sends a request for re-sending and removes duplicate packets.
Unlike TCP, UDP protocol does not establish preliminary connections, which simplifies the process of data transfer. Data packets are simply sent to the recipient, which entails the possibility of packet loss and duplication.
Both protocols require routing table-based routing that maps network IP addresses to router addresses (), which requires a consistent network topology. Consequently, working in an ever-changing network topology is not possible. At the mathematical level, the requirement of multi-agency is violated.

WDS technology
WDS is a technology that allows you to create a wireless coverage area by combining multiple access points into one network without a wired connection between them [Shumeye Lakew et al., 2020;Arafat and Moh, 2019]. There is no particular difference in the routing protocols, that is, a routing table, IP addresses, and persistent network topology are also required. The technology is not suitable for working in networks with constantly changing topology.

Mesh Network
Mesh network is a distributed network of a set of clusters. The most effective use of a mesh network occurs when there are from eight to sixteen access points in a cluster [Willis and Shenoy, 2019;Nurlan et al., 2019;Gramacho et al., 2019;Esrafilian et al., 2020;Darroudi et al., 2020]. Each cluster has a nodal point that connects to the backbone. All other nodes in the cluster know the cluster topology. That is, special agents appear on the network that combine clusters, the loss of which will destroy the connectivity of the network.
The IEEE 802.11s standard requires the HWMP routing protocol. It implies two options for building a path: reactive and proactive. In the reactive version, a node wishing to transmit information to another node sends a broadcast PREQ (Path Request) packet, which propagates throughout the network until it reaches the destination. The addressee, in turn, sends a PREP (Path Reply) acknowledgement packet, upon receipt of which the initiating node learns the route. Information about the topology is received not only by the addressee but also by all nodes through which the packets pass. In the proactive version, root nodes are assigned, which periodically send out PREQ packets. In the presence of a constantly changing topology, such packets will forever wander through the network, since there are quite possible cases when the addressee and the addressee will be in different connectivity components, that is, the route simply cannot be built.
Decentralization in mesh networks is supported at the mathematical level, however, at the algorithmic level, special agents appear, without which the network cannot be connected. Also, the routing algorithm in the network simply does not allow building the required routes if its topology allows the presence of different connectivity components.

Ad-hoc Network and MANET Network
The radio network and the mobile radio network, respectively, which implement decentralized control, operate with a variable network topology. All nodes are the same: they are client nodes. Based on the connectivity of the network, the data transfer path is built dynamically.
As well as in mesh networks, there are proactive (OLSR, TBRPF, DSDV) and reactive protocols (AODV) for routing, with all the ensuing features described above. The main difference is that there is no clustering, and hence the absence of root nodes.
The routing algorithm does not allow building a route with a topology that allows for the presence of different connectivity components.

Consensus Algorithm for Transfer Data in Network with Change Topology
With a variable network topology, one of the options for data transmission can be a system that allows you to synchronize the states of all nodes. Consider the network that can be represented by G = (N, E). Graph has N = 1, 2, 3....n nodes, and E directional links which exist between two nodes. Each node i, i ∈ N has N i , N i ⊂ N neighbors and E i , E i ⊂ E outgoing link to neighbor j, j ∈ N i , where |E i | = |N i |. Each node i has the state x i in time t. For example, the state could be the knowledge the global coordinate of all members of group. Let us set the task of synchronizing understanding of the state of the entire system as a whole (for instance, knowledge of the location of all members of the group) by all members of the group. To synchronize data, we will use Local Voting Protocol [Amelina, 2013;Amelina and Fradkov, 2014;Amelina et al., 2015]. In [Vergados et al., 2017;Vergados et al., 2018], the application of the protocol to the problem of uniform loading of a wired network when streaming data is described.
So, the dynamics of each node is described by: where f i t is change of a state (for example, change of location) of an agent i at time instant t, u i t is the control provided be local voting algorithm. Nodes of system are said to reach consensus at time t if x t i = x t j , ∀i, j ∈ N, i = j.
At time instant t node i sends to the neighbors j its own load x i t . We assume that to form the control (or redistribution) strategy each agent i has observations about its neighbors' state with noise and delay: We conduct a test using laptops as the start and end points of the transfer. We use three ESP32 boards to transfer packet information.
Two tests were performed. Their goal was to compare the performance of Mesh and LV protocol under the conditions of interest.
The first test was as follows. Three boards were connected in such a way that the two outer ones did not see each other, but saw the board among themselves (see Fig.  3). It was necessary to measure how long it would take for the signal to pass between the edge boards in the case of the Mesh protocol (in this case, the network has already been built) or to stabilize the signal in the case of the LV protocol. In the second test, three boards were again taken and connected as in the previous test (see Fig. 3). Then the network was torn apart, removing the middle board from the network (see Fig. 4). Then this board was returned back and they measured how long it would take to restore the network and the signal transit time between the outer boards. Based on the results of the tests carried out, tables were built (Table 1, Table 2), where the mean and median values were taken as the measurement values. 10 tests of each type were carried out for each protocol. Tests show that with a constant network topology, data transmission using mesh technology is almost instantaneous (about 1 second delay), and using the LV protocol with a delay (about 20 seconds delay). With a variable network topology, the transmission of messages using a mesh is significantly degraded (about 30 seconds delay), and with the use of LV, the delay remains at the same level. Also, tests have shown that, to increase the data transfer rate, a hardware platform requires a module with at least 1 Gb of RAM and at least 32 Gb ROM, generating and scanning the network modules with the ability to control at the signal setting level.

Conclusion
The result of the research was the understanding that the existing protocols do not allow the implementation of the required data transmission system, since they require the global information is routing of data, which is the main obstacle to work in the given conditions. In the work the data transmission tasks is transform into a synchronization problem. Data transmission in the new setting has a delay, but it works in the absence of a connection to a common source of knowledge. Local voting protocol is used to synchronize data. The closer the members of the group are to each other, the more accurately they update data about each other. It is shown that data transmission using the protocol makes it possible to work in a network without being tied to routing. The paper highlights the parameters of the hardware platform, in which a programmable frequency generation and scanning module should play one of the main elements to increase transfer rate. In addition, the software should have an algorithm for autonomous adjustment of the LV transmission algorithm parameters, which will also to increase the transmission rate. In future works, it is planned to use the prototype of the software on a groups of 10 and 100 robots.