System method and computer-accessible medium for blockchain-based distributed ledger for analyzing and tracking environmental targets
11533593 · 2022-12-20
Assignee
Inventors
Cpc classification
H04L9/3239
ELECTRICITY
B25J9/1664
PERFORMING OPERATIONS; TRANSPORTING
B25J9/1676
PERFORMING OPERATIONS; TRANSPORTING
G05B2219/39146
PHYSICS
B25J9/162
PERFORMING OPERATIONS; TRANSPORTING
International classification
Abstract
An exemplary multi-robot system can include, for example, a first robot(s), which can include a communication arrangement and a sensor arrangement configured to detect a presence of an object(s) within a predetermined distance from the first robot(s), and determine a distance from the first robot(s) to the object(s), where the first robot(s) can broadcast a query to the object(s) using the communication arrangement, identify the object(s) as a second robot(s) or a non-robot based on a response received from the object(s). The sensor arrangement can be a Light Detection and Ranging (LiDAR) sensor arrangement. The LiDAR sensor arrangement can be a two-dimensional LiDAR sensor arrangement.
Claims
1. A multi-robot system, comprising: at least one first robot comprising: a transceiver, and a sensor configured to detect a presence of at least one first object within a predetermined first distance from the at least one first robot, and determine a second distance from the at least one first robot to the at least one first object, wherein the at least one first robot broadcasts a query to the at least one first object using the transceiver, and identifies the at least one first object as at least one second robot or a non-robot based on at least one first response received from the at least one first object, and wherein, when the transceiver receives the at least one first response and at least one second response from at least one second object which provides a third distance from the at least one robot that has substantially the same value as the second distance, the at least one first robot is configured to: make a motion; determine a fourth distance from the at least one first robot to the at least one first object; broadcast an updated query to the at least one first object; and identify the at least one first object as at least one second robot or the non-robot based on at least one third response received from the at least one first object confirming the fourth distance.
2. The system of claim 1, wherein the sensor is a Light Detection and Ranging (LiDAR) sensor.
3. The system of claim 2, wherein the LiDAR sensor is a two-dimensional LiDAR sensor.
4. The system of claim 1, wherein the at least one first robot is an autonomous robot.
5. The system of claim 1, wherein the second distance is a Euclidean distance.
6. The system of claim 1, wherein the at least one first robot identifies the at least one first object as the at least one second robot if the at least one first response is received from the at least one first object.
7. The system of claim 6, wherein the at least one first response includes a first unique identification number for the at least one second robot, a second unique identification number of the at least one first robot, a confirmation of the second distance, a replying query number and a robot state.
8. The system of claim 7, wherein the robot state includes at least one of idling, exploring, charging, servicing, foraging, low-battery, inactive, or excavating.
9. The system of claim 1, wherein the at least one first robot identifies the at least one first object as the non-robot if no response is received from the at least one first object.
10. The system of claim 1, wherein the at least one first robot includes a unique identification number, and wherein the query includes the unique identification number.
11. The system of claim 1, wherein the query includes (i) a unique identification number of the at least one first robot, (ii) the second distance, (iii) an angle, and (iv) a query number.
12. The system of claim 1, wherein the at least one first robot is configured to store an identity of the at least one second robot if the at least one first response is received.
13. The system of claim 1, wherein the at least one first robot is further configured to: generate first map information; receive second map information obtained from the at least one second robot; and generate a combined map based on the first and second map information.
14. A non-transitory computer-accessible medium having stored thereon computer-executable instructions for communicating within a multi-robot system, wherein, when a computer system executes the instructions, the computer system is configured to perform procedures comprising: receiving first information related to a presence of at least one first object within a predetermined first distance using a sensor; transmitting a query to the at least one first object using a transceiver; and identifying the at least one first object (i) as at least one robot when at least one first response is received from the at least one first object or (ii) as a non-robot when no response is received from the at least one first object; wherein, when the transceiver receives the at least one first response and at least one second response from at least one second object which provides a third distance from the at least one robot that has substantially the same value as the second distance, the transceiver is configured to: broadcast an updated query to the at least one first object including a fourth distance; and identify the at least one first object as at least one robot or the non-robot based on at least one third response received from the at least one first object confirming the fourth distance.
15. The computer-accessible medium of claim 14, wherein the sensor is a two-dimensional Light Detection and Ranging (LiDAR) sensor.
16. The computer-accessible medium of claim 14, wherein the second distance is a Euclidean distance.
17. The computer-accessible medium of claim 14, wherein the query includes a unique identification number of a robot configured to run the computer-accessible medium.
18. The computer-accessible medium of claim 14, wherein the multi- robot system is a decentralized multi-robot system (DMRS).
19. The computer-accessible medium of claim 14, wherein the computer system is further configured to: generate first map information; receive second map information obtained from the at least one robot; and generate a combined map based on the first and second map information.
20. A method for communicating within a multi-robot system, comprising: receiving first information related to a presence of at least one first object within a predetermined first distance using a sensor; sending a query to the at least one first object using a transceiver; and using a computer hardware arrangement, identifying the at least one first object (i) as at least one robot when at least one first response is received from the at least one first object or (ii) as a non-robot when no response is received from the at least one first object; wherein, when the transceiver receives the at least one first response and at least one second response from at least one second object which provides a third distance from the at least one robot that has substantially the same value as the second distance, the transceiver is configured to: broadcast an updated query to the at least one first object including a fourth distance; and identify the at least one first object as at least one robot or the non-robot based on at least one third response received from the at least one first object confirming the third distance.
21. A system for communicating within a multi-robot system, comprising: a sensor configured to detect a presence of at least one first object within a predetermined first distance; a transceiver configured to transmit a query to the at least one first object; and a computer hardware arrangement configured to identify the at least one first object (i) as at least one robot when at least one first response is received from the at least one first object using the transceiver or (ii) as a non-robot when no response is received from the at least one first object; wherein, when the transceiver receives the at least one first response and at least one second response from at least one second object which provides a third distance from the at least one robot that has substantially the same value as the second distance, the transceiver is configured to: broadcast an updated query to the at least one first object including a fourth distance; and identify the at least one first object as at least one robot or the non-robot based on at least one third response received from the at least one first object confirming the fourth distance.
22. The system of claim 1, wherein the transceiver is configured to broadcast the query using radio frequency (RF) communication.
23. The system of claim 1, wherein the transceiver is configured to broadcast the query using long range radio frequency (RF) communication.
24. The system of claim 1, wherein the transceiver is configured to receive the first and second responses substantially simultaneously.
25. The system of claim 1, wherein the sensor is a 360-degree lidar.
26. The system of claim 1, wherein the at least one robot is further configured to identify whether the at least one object belongs to a list of authorized agents using a first unique identification number provided in the at least one first response.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Further objects, features and advantages of the present disclosure will become apparent from the following detailed description taken in conjunction with the accompanying Figures showing illustrative embodiments of the present disclosure, in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23) Throughout the drawings, the same reference numerals and characters, unless otherwise stated, are used to denote like features, elements, components or portions of the illustrated embodiments. Moreover, while the present disclosure will now be described in detail with reference to the figures, it is done so in connection with the illustrative embodiments and is not limited by the particular embodiments illustrated in the figures and the appended claims.
DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS
(24) The present disclosure relates generally to a blockchain-based distributed ledger, and more specifically, to exemplary embodiments of an exemplary system method and computer-accessible medium for blockchain-based distributed ledger for analyzing and tracking environmental-targets, e.g., in decentralized robot swarms. The exemplary system, method and computer-accessible medium, according to an exemplary embodiment of the present disclosure, can also be used for autonomous surveillance as well.
(25) A dark-room exchange (“DRE”) can be based on the visualization of two individuals (e.g., A and B) and a life-sized statue in a dark room. As shown in the diagrams of
(26) In the above two scenarios, A may only perceive the presence of an entity in the dark room. By posing a simple query, in the first scenario the receipt of a response facilitates A to establish the presence of B in the room, and in the second scenario the lack of a response facilitates A to establish the presence of a non-living object in the room.
(27) In the exemplary DRE-DMRS, each robot can perceive unidentified entities in its neighborhood (“NBHD”) by using only the two-dimensional (“2D”) LiDAR range data in real-time. Having perceived entities in its NBHD, a robot can utilize the Euclidean distance (“ED”) to the unknown objects for probing and verifying their identities. Using a query-reply conversation model, the robots can hold conversations to verify each other's identities as well as non-robot obstacles. Each robot can be assigned a unique ID, which the robots can add to queries and responses. Both query and response messages can use packaging characters to construct a single string message containing the utilized information.
(28) As shown in the exemplary diagram of
Exemplary Neighbor Identification Scenarios
(29) The following exemplary identification scenarios can be used for an exemplary procedure to identify neighbors in DRE-DMRS robots. All agents in the swarm can broadcast queries and respond to received queries.
Exemplary Identifying a Stranger
(30) When a robot comes in the vicinity of an unknown object, it can broadcast a query with its own identity and its ED from the unknown object, and wait for any replies. If the unknown object can be another robot, it can receive the query, establish that the querying robot can be at the same ED, and thus respond positively to the query along with its own identity. After receiving the response, the querying robot can assign the responding robot's identity to the unknown object. For example, the diagram shown in
(31) As shown in the exemplary diagram of
Exemplary Identifying Twins
(32) A robot in the exemplary DRE-DMRS can send a query with multiple EDs if it encounters multiple unidentified objects as illustrated in
(33) A querying robot can encounter an entity at ED d that also happens to be the ED between another robot and some entity. For example, as shown in the diagram of
(34) If the robot replies positively to multiple EDs from a same query, the querying robot discards both EDs and performs a small random motion before re-querying only the responding robot. This exemplary scenario can be called single-robot duplicate (“SRD”), and is shown in
(35) Additionally, the presence of multiple entities at similar EDs can result in conversations with SRDs and MRDs. The procedure to identify SRD and MRD scenarios in the exemplary DRE-DMRS is described below.
Exemplary TurtleBot3 Simulated Environment
(36) TurtleBot, based on the Robot Operating System (“ROS”) (see, e.g., Reference 25) is an exemplary affordable mobile robot platform that is extensively used in robotics research and education. TurtleBot3, (see, e.g., Reference 25) the third generation of this platform, hosts an array of features such as a modular assembly, 360° LiDAR, Dynamixel smart actuators, Raspberry-Pi3 single-board computer (“SBC”), 9-axis IMU, etc. DRE-DMRS swarm system of the exemplary embodiments of the present disclosure solely utilizes the LiDAR for sensing. The simulated environment includes a network of TurtleBot3 robots operating in a decentralized manner. Gazebo robot simulation software (see, e.g., Reference 25) and the ROS environment can be used to perform real-time simulation of the TurtleBots.
(37)
Exemplary Scan Processing and Tracking Nodes
(38) The scan processing node 610 executing on a robot can extract the 2D range data from the on-board LiDAR and process the data to identify objects of interest in the robot's NBHD. The LiDAR can have detection range of up to 300 cm and 1° resolution at 5 Hz. The laser range data acquired in the polar coordinate form {(r.sub.i, φ.sub.i), i=0, . . . , 359°} can be converted to the Cartesian coordinate form {(x, y).sub.i(x.sub.i, y.sub.i)=(r.sub.i cos φ.sub.i, r.sub.i sin φ.sub.i)}. The range data can be segmented into clusters based on the ED between two consecutive points. Two points belong to the same cluster if, for example:
||(x, y)i−(x, y)i−1||<σ,
where ||⋅|| can denote that ED and σ can be the maximum allowable distance between consecutive points belonging to the same cluster. σ=5 cm was deemed to yield acceptable clustering results for segmenting disjointed entities. Average cluster position (X.sub.i,Y.sub.i) for each cluster with p points can be calculated as, for example:
(39)
(40) The scan processing node 610 can package the average position, cluster size, and the cluster's distance from the robot for k detected clusters as {(Xi, Yi, pi, di), i=1, . . . , k}, where di=||(Xi, Yi)||, and publishes to the “scan_proc” topic.
(41) The tracking node 615 can subscribe to the scan_proc topic to track detected clusters in real-time. Each cluster can be assigned a unique tracking ID. The comparison between a set of clusters detected at time t, namely k.sub.t and the set of clusters detected previously at time t−1, namely k.sub.t-1, can be viewed as a linear assignment problem. Using an exemplary Munkres procedure for minimal distance assignment, (see, e.g., Reference 26) the clusters in the newly detected cluster-set can be assigned corresponding tracking IDs from the previous cluster-set. Tracking node 615 can appends the unique tracking ID b to each detected cluster as {(X.sub.i, Y.sub.i, p.sub.i, d.sub.i, b.sub.i), i=1, . . . , k} and publish the information to the “scan_trac” topic. Tracking can be limited to 100 cm due to the limited resolution offered by Turtlebot3 LiDAR and poor quality of detection of small objects, such as another Turtlebot3, at distances greater than 100 cm.
Exemplary Communication Network and Parsing Node
(42) The exemplary communication network can be important in the functioning of a DMRS. In the exemplary DRE-DMRS simulation, communication channels can be modeled based on a 2-way radio. As illustrated in
(43) The parsing node 625 can be execute internally on each robot, and can be responsible for subscribing to the q_channel and r_channel pipes (through reply parser 630 and Query parser 635) for parsing and routing data to query and reply nodes, respectively. The Parser node 625 can decode the query and response messages by removing packaging characters and extracting relevant information. The parser node 625 can filter out the responses to the queries that were not sent by the robot running the parser node 625.
Exemplary Reply and State Nodes
(44) The reply node 640 running on a robot can subscribe to the scan_trac topic and listen to incoming queries from other robots through the parser node 625. Once a query can be received, the reply node 640 can compare the query distance d.sub.q with distances {d.sub.i, i=1, . . . , k} of k clusters detected and tracked by the scan procedure node 610 and the tracking node 615, respectively. The comparison can include the calculation of a confidence rating c.sub.i based on a Gaussian distribution with standard deviation σ.sub.r=3.16 cm and scaling factor β=2505 as, for example,
(45)
(46) Note that the above values of σ.sub.r, and β were determined experimentally. For c.sub.i>95%, the reply node responds “True” to the query, else a “False” can be broadcast through the r_channel. State node 645 can be an independent node which monitors the current state of the robot and publishes the state identifier to the “state_info” topic. Additionally, the reply node 640 can subscribe to the state_info topic and appends the current state identifier to the reply message.
Exemplary Query Node
(47) The query node 620 on a robot can subscribe to the scan_trac topic and can be responsible for identifying the objects in its NBHD by initiating a conversation. Every new unidentified object that can be passed to the query node 620 by the tracking node 615 can be given an initial identity of 99. Following the initial ID assignment, the query node 620 can publish a query on the q_channel with the ED corresponding to the detected objects with ID 99. Post-query, the query node 620 can wait 0.5 seconds for any robots in the NBHD to respond to the query. After the wait time, the query node 620 can inspect incoming data to check for positive responses. If a positive response is received, the ID 99 of the unidentified object can be replaced by the ID of the positively responding robot. If none of the responses can be positive, the query node 620 can automatically classify the unidentified object by assigning it the ID 999, which can indicate that the unidentified object can be declared as a non-robot.
(48) A query published by query node 620 can contain multiple EDs corresponding to multiple unidentified objects. This can usually arise during the start-up, or when a robot encounters a new group of robots or obstacles. Multiple robots can respond positively to a query distance leading to MRD or a single robot can respond positively to multiple EDs within the same query causing SRD. To overcome these situations, the following exemplary procedure can be implemented to analyze the incoming responses to detect the presence of MRD and/or SRD. For example,
(49) For m unidentified objects in the querying robot's NBHD, an incoming response data set can be represented by {ri,u, i=1, . . . , p and u=1, . . . , m} where ri,u can be the ith robot's Boolean response to the u.sup.th query distance d.sub.u. For the querying robot, consider its response verification matrix R below, which can be a p×m matrix, where p can denote the number of responding robots,
(50)
(51) Next, a single-robot duplicate check vector S, given below, can inspect if a response includes multiple positives
(52)
(53) Similarly, a multi-robot duplicate check vector M, given below, can inspect if multiple robots responded positively to a specific CD within the same query
(54)
(55) TABLE-US-00001 TABLE I DL entry inference DL Entry Meaning RAFB@TS.sub.1&S.sub.B A found B at time TS.sub.1 in state S.sub.B RALB@TS.sub.2 A lost B at time TS.sub.2 RAS2@TS.sub.3 A changed state to 2 at time TS.sub.3 *Grey characters indicate packaging characters
(56) Using Eqs. (2) and (3), an output vector Γ can be computed below, which can indicate the validity of each of the p responses. Thus, for example:
Γ={Γ.sub.i}, Γ.sub.i=Σ.sub.j=1.sup.mr.sub.i,jS.sub.iM.sub.j, i=1, . . . , p. (4)
(57) The appearance of a zero at an index g in the Γ vector (e.g., Γ.sub.g=0) can correspond to the presence of a MRD and/or a SRD in the response stored at r.sub.g,:. Such exemplary responses can be discarded and the identity of the corresponding robot can be recorded into a vector A for re-verification. Clean responses that do not contain duplicates can be processed by assigning the responding robot's ID to the unidentified object detected at the positively identified query distance. After assignment of clean responses, if A contains robots for re-verification, the querying robot can rotate to a random angle between −180° to 180° and move linearly for 15 cm. Following a random movement, the robot can re-initiate the query process, now only requesting responses from robots whose IDs can be in the vector Λ. This process can be repeated until no duplicates can be present. The identity of detected robots in the neighborhood can be published by the query node to the “robot_detections” topic.
Exemplary Distributed Ledger Node
(58) The DL node 650 can run as a parallel process on each robot, and can subscribe to the “robot_detections” topic published by the query node 620. On each robot, the DL node 650 can create and updates two ledgers, local (“LL”) and global (“GL”), with the former containing the NBHD information of the local robot and the latter containing the NBHD information shared by other robots. Ledger entries can be populated with detection information, time stamp, and neighboring robot state. Similar to the DRE query-response structure, the DL entries can be encoded into a string using packaging characters as shown in Table I below.
(59)
(60) The DL update process for merging and separating a robot with an MRS is shown in
(61) As shown in the diagram of
(62)
(63) The DL node further subscribes to the state_info topic to acquire the current state identifier of the robot. In addition to identifying a robot's state when it merges with the MRS, DLs can permit or facilitate the MRS to update the robot state information in real-time. As shown in
Exemplary Graphing Node
(64) The graphing node 655 can run in series with the DL node 650 on each robot and can be responsible for generating the network graph of the DMRS. The graphing node 655 can merge the GL and LL entries and sort them in chronological order. The sorted list of entries can be used to generate a real-time network graph. The graph can be refreshed at every DL update instance. Although the graphing node 655 can iterate through the entire sorted ledger entries during every DL update instance, it can be a vital process to ensure that the neighborhood can be accurately updated. For example, if a new robot merged with the DMRS, it can contain ledger entries with time stamps that precede ledger entries of the DMRS. The graphing node 655 can therefore sort the merged ledger entries chronologically and process the entire ledger to generate the network graph. The graphing node 655 can provide an intuitive mechanism to impart a human operator full awareness of the MRS.
Exemplary Simulation Results
(65) For an MRS include n robots, a single query by a robot can receive n−1 responses, thus n queries can receive n(n−1) responses, for example, as the number of robots in the MRS can increase the processing time can increase.
(66) Regardless of the number of unidentified entities in the DSS, the querying robot can automatically identify any non-responding entity as a non-robot. Thus, the average identification time for a non-robot obstacle does not change with the number of non-robots. However, a querying robot's ED tie with a non-robot and a responding robot can cause the responding robot to reply with a SRD, triggering the querying robot to perform a random motion to break the ED symmetry. The delay associated with this scenario can be similar to MRD/SRD correction time shown in
(67) TABLE-US-00002 TABLE II New neighbor success Neighbors 1 2 3 4 5 6 7 Success % 100 98 98 97 91 83 81
Exemplary Mapping
(68) According to an exemplary embodiment of the present disclosure, two or more independent robots can be tasked to explore and map separate sections of an unexplored area. Upon completing their assigned exploration task, each robot can converge at a common location (e.g., which can be predetermined ahead of time or which can be set ad hoc after completing the assigned exploration task). After identifying each other, the robots can then share their respective maps with peers. Further, each robot can merge the maps transmitted by peers with its own acquired map to produce a new map of the entire area (e.g., which can include a larger area than for each robot individually).
(69) In order to generate a distributed map, the exemplary system, method and computer-accessible medium can share an occupancy grid map (“OGM”) via a peer-to-peer (“P2P”) network without loss by encrypting the OGM to a string message on the sender side and decrypting on the receiver side.
(70) During the merging of a map from different robots, the exemplary system, method and computer-accessible medium can, e.g., crop a region of interest (“ROI”) using a circular region around the current position of the robots. Each robot can then estimate several approximate poses (e.g., positions and orientations) of the sending robot and use these poses to perform an iterative closest point (“ICP”) procedure to ensure the most optimal registration.
(71) In order to generate a combined map, according to one example, the exemplary robots can utilize the exemplary DRE procedure, for example, as described herein, to identify each other during initial contact. Using the exemplary DRE, the robots can acquire the approximate pose of the sending robot relative to itself. This information can then be utilized to perform a map merging procedure, which can scatter multiple random poses (e.g., 10, 20, 30, 40, etc.) in close proximity (e.g., a 5 cm, a 10 cm, a 15 cm radius, etc.) to the initial estimate. The estimated points can then be used as initial points for the exemplary ICP procedure.
(72) After merging the maps, the robots can store the received map locally in its distributed ledger. This information can be tagged with a timestamp and the identity and the approximate pose of the robot that provided it. This entry can facilitate another robot in the future to merge this information to its own map by calculating the relative pose with respect to itself.
(73)
(74)
(75)
Exemplary Conclusion
(76) The exemplary DRE can be used to identify and localize neighbors in a decentralized multi-robot system. This can provide a human operator a novel and intuitive interface for monitoring the neighborhoods and states of the MRS agents. As shown in the diagram of
(77) In addition to storing the network graph information, the ledger can be used to identify and update the current state of all agents of the MRS in real-time. For example, agents in the MRS can be used to share intent and cast a vote for collective decision making. Moreover, objects in another object's shadow cannot be tracked or detected by the current tracking methodology. In some exemplary embodiments of the present disclosure, a Kalman filter based multi-target tracking can be included for improved object tracking. The exemplary system can be implemented for agent-to-agent cooperation by communicating state and intent messages in a swarm of self-driving vehicles via direct short-range communication (“DSRC”). Additionally, encrypted conversations between the robots can be utilized, creating a secure and immutable distributed ledger.
(78)
(79)
(80) As shown in
(81) Further, the exemplary processing arrangement 1805 can be provided with or include an input/output ports 1835, which can include, for example a wired network, a wireless network, the internet, an intranet, a data collection probe, a sensor, etc. As shown in
(82) The foregoing merely illustrates the principles of the disclosure. Various modifications and alterations to the described embodiments will be apparent to those skilled in the art in view of the teachings herein. It will thus be appreciated that those skilled in the art will be able to devise numerous systems, arrangements, and procedures which, although not explicitly shown or described herein, embody the principles of the disclosure and can be thus within the spirit and scope of the disclosure. Various different exemplary embodiments can be used together with one another, as well as interchangeably therewith, as should be understood by those having ordinary skill in the art. In addition, certain terms used in the present disclosure, including the specification, drawings and claims thereof, can be used synonymously in certain instances, including, but not limited to, for example, data and information. It should be understood that, while these words, and/or other words that can be synonymous to one another, can be used synonymously herein, that there can be instances when such words can be intended to not be used synonymously. Further, to the extent that the prior art knowledge has not been explicitly incorporated by reference herein above, it is explicitly incorporated herein in its entirety. All publications referenced are incorporated herein by reference in their entireties.
EXEMPLARY REFERENCES
(83) The following references are hereby incorporated by reference in their entireties. [1] G. Avinash and S. Mohan, “A review of research in multi-robot systems,” Proc. IEEE 7th Int. Conf. on Industrial and Information Systems (ICIIS), pp. 1-5, 2012. [2] M. Brambilla et al., “Swarm robotics: A review from the swarm engineering perspective,” Swarm Intelligence, vol. 7, no. 1, pp. 1-41, 2013. [3] J. C. Barca and Y. A. Sekercioglu, “Swarm robotics reviewed,” Robotica, vol. 31, no. 3, pp. 345-359, 2013. [4] E. Şahin, “Swarm robotics: From sources of inspiration to domains of application,” Int. Workshop on Swarm Robotics, Lecture Notes in Computer Science, vol. 3342, E. Şahin and W. M. Spears, Eds., Berlin, Germany: Springer-Verlag, pp. 10-20, 2004. [5] Y. Tan and Z. Y. Zheng, “Research advance in swarm robotics,” Defence Technology, vol. 9, no. 1, pp. 18-39, 2013. [6] J. Krüger, T. K. Lien, and A. Verl, “Cooperation of human and machines in assembly lines,” CIRP Annals-Manufacturing Technology, vol. 58, no. 2, pp. 628-646, 2009. [7] E. Guizzo, “Three engineers, hundreds of robots, one warehouse,” IEEE Spectrum, vol. 45, no. 7, 26-34, 2008. [8] R. Bogue, “Growth in e-commerce boosts innovation in the warehouse robot market,” Industrial Robot: An Int. Journal, vol. 43, no. 6, pp. 583-587, 2016. [9] A. Faíña et al., “Towards an evolutionary design of modular robots for industry,” Foundations on Natural and Artificial Computation, Lecture Notes in Computer Science, vol. 6686, J. M. Ferrández, et al., Eds., Berlin, Germany: Springer-Verlag, pp. 50-59, 2011. [10] A. M. Naghsh et al., “Analysis and design of human-robot swarm interaction in firefighting,” Proc. IEEE Int. Symp. Robot and Human Interactive Communication (RO-MAN), pp. 255-260, 2008. [11] R. R. Murphy, “Rescue robotics for homeland security,” Communications of the ACM, vol. 47, no. 3, pp. 66-68, 2004. [12] M. S. Couceiro et al., “A low-cost educational platform for swarm robotics,” Int. J. of Robots, Education and Art, vol. 2, no. 1, pp. 1-15, 2012. [13] Team in Flight, INTEL drones at the Olympic games, Available at:
(84) https://www.intel.com/content/www/us/en/sports/olympic-games/drones.html. [14] J. Y. C. Chen and M. J. Barnes, “Human-agent teaming for multirobot control: A review of human factors issues,” IEEE Tran. on Human-Machine Systems, vol. 44, no. 1, pp. 13-29, 2014. [15] A. Kolling et al., “Human interaction with robot swarms: A survey,” IEEE Tran. on Human-Machine Systems, vol. 46, no. 1, pp. 9-26, 2016. [16] A. Kolling et al., “Towards human control of robot swarms,” Proc. ACM/IEEE int. conf. on Human-Robot Interaction (HRI), pp. 89-96, 2012. [17] B. Khoshnevis and G. Bekey, “Centralized sensing and control of multiple mobile robots,” Computers and Industrial Engineering, vol. 35, no. 3-4, pp. 503-506, 1998. [18] C. Y. Wong et al., “A hierarchically structured collective of coordinating mobile robots supervised by a single human,” Software Design and Development: Concepts, Methodologies, Tools, and Applications. Hershey, Pa.: IGI Global, pp. 1142-1164, 2014. [19] J. T. Feddema, C. Lewis, and D. A. Schoenwald, “Decentralized control of cooperative robotic vehicles: Theory and application,” IEEE Tran. on Robotics and Automation, vol. 18, no. 5, pp. 852-864, 2002. [20] N. Sandell et al., “Survey of decentralized control methods for large scale systems,” IEEE Tran. on Automatic Control, vol. 23, no. 2, pp. 108-128, 1978. [21] M. S. Couceiro et al., “Benchmark of swarm robotics distributed techniques in a search task,” Robotics and Autonomous Systems, vol. 62, no. 2, 200-213, 2014. [22] M. C. De Gennaro and A. Jadbabaie, “Formation control for a cooperative multi-agent system using decentralized navigation functions,” Proc. IEEE American Control Conf., pp. 1346-1351, 2006. [23] H. Sayama, “Decentralized control and interactive design methods for large-scale heterogeneous self-organizing swarms,” Advances in Artificial Life, Lecture Notes in Computer Science, vol. 4648, F. Almeida e Costa et al., Eds., Berlin, Germany: Springer-Verlag, pp. 675-684, 2007. [24] G. Beni and J. Wang, “Theoretical problems for the realization of distributed robotic systems,” Proc. IEEE Conf. Robotics and Automation (ICRA), vol. 3, pp. 1914-1920, 1991. [25] Y. S. Pyo et al., ROS Robot Programming, Seoul, Republic of Korea: ROBOTIS Co., Ltd., 2017. [26] P. Konstantinova, A. Udvarev, and T. Semerdjiev, “A study of a target tracking algorithm using global nearest neighbor approach,” Proc. Int. Conf. on Computer Systems and Technologies, pp. 290-295, 2003.