Proposed Multi-ST Model for Collaborating Multiple Robots in Dynamic Environments
Abstract
:1. Introduction
- •
- The Multi-ST model enables single and collaborating multiple robots to achieve optimal CPP while implementing avoidance of both static and dynamic obstacles. Novel obstacle avoidance is implemented using a rule-based approach with updating of the rules in the knowledge base (KB) to optimize CPP.
- •
- The proposal set out in this paper provides an effective basis upon which the complex problems resulting from CPP by multiple collaborating mobile robots can be solved (or at least mitigated). Where multiple robots operate in concert in a DOE, each robot can exchange the coverage and obstacle information with other collaborating robots.
- •
- Multiple robots operating in a DOE can complete a defined task more effectively than is the case for a single robot which provides: (a) operational advantages in diverse domains and systems, and (b) significant savings in terms of time with improved effectiveness when employed in the exploration and coverage of unknown environments.
2. Related Research
3. Preliminaries
3.1. Networked Robot Systems
3.2. Spanning Trees
- off-line ST:
- Provides a priori knowledge of the DOE to the robot(s) relating to static and dynamic obstacles. The algorithm finds an optimal path in linear time [73] where n is the number of cells in the DOE. Pettie and Ramachandran note that “…although our time bound is optimal, the exact function describing it is not known at present…”, for a detailed discussion on the topic see [73].
- on-line ST:
- Provides no a priori knowledge of the dynamic DOE where the location of static obstacles will be a priori known. This method addresses the related mathematics using information such as the location of static [generally known] and/or dynamic [generally unknown] obstacles. Dynamic obstacles will include cooperating with multiple robots operating in concert in the same DOE. Using the knowledge database, the online method can manage both static and dynamic obstacles. In the online ST algorithm, the robot incrementally constructs a spanning tree for a grid representing the DOE. The process is as follows:
- Step 1
- The path of the robot is formed from the mega-cell containing the initial position of the robot to an empty neighbor mega-cell in a counter-clockwise direction.
- Step 2
- During the construction of the spanning tree, the robot subdivides every cell it encounters into four identical sub-cells of size.
- Step 3
- Following step 2, the robot follows a sub-cell path that circumnavigates the incrementally constructed spanning tree until the defined operational environment is covered.
- Step 4
- The robot then returns to the initial (starting) position in the opposite direction, avoiding traversing any cell previously traversed twice (because the mega-cell size is of size).
Assumption: the size of mega-cell is where the smaller cell size is . |
Input: for the robot’s initial position cell there is no a priori knowledge of the DOE. |
Recursive ST function: where is a cell containing the starting robot position and is the parent cell. |
Initial ST function: where is the starting cell. |
The algorithmic process is as follows: |
1 Mark the current cell as an old cell |
2 Scan the neighboring cell of in counter-clockwise order While (x has free neighboring cell): Cell is free Construct a spanning tree edge from Move to a sub-cell of as described below Execute function STC End While |
3 If the current cell is not the initial cell return to the parent-cell |
4 Terminate function STC |
3.3. The Online Spiral Spanning Tree Algorithm
3.4. The Full Spiral Spanning Tree Algorithm
Initialization: Call ST where S is the starting cell |
FSST |
1 Mark the current cell as an old cell |
2 Scan the neighbor cell of in counter-clockwise order. While ( has new obstacles-free neighbor): If ( find obstacle): If there is a cell available return Else continue to scan other neighbors If is suitable Construct a spanning tree edge from Move to cell Call recursive STC-full End While |
3 If the current cell is not the initial cell, return to the parent cell |
4 Terminate FSST |
The pseudo-code is as follows: |
FSST() { current.setStatus false; if (not scan neighbor cell) { neighbor findNewNeighbor(current); } else { robotWork ; } } |
4. The Proposed Multi-ST Model
4.1. Conceptual Terms and Definitions
- Let CR be an objective function designed to minimize the optimal paths in priority selection of coverage robots in decision-making when dealing with multiple robots;
- Let be presented as a linguistic value in the variables and these linguistic values in the fuzzy weights ;
- Assume that a collaboration of multiple decision-making robots is present in domain S;
- Let E be the decision makers’ input for the proposed Multi-ST Model in domain S;
- Let be a set of Robots S, where m is the number of Robots.
- Let the quantified semantics work in the mapping of , presented in linguistic values for fall in the range [0,1].
- Calculate an objective function value for in domain S;
4.2. Collaborate Multiple Decision Making of Robots
- Step 1:
- Implement collaborative multiple decision-making to support multiple robots. The proposed model identified multiple objectives for the optimal paths in the priority selection of coverage robots as shown in Equation (1):
- Step 2:
- Consider an objective function by dealing with multiple decision-making of Robots;
- Step 3:
- The decision variables can be considered objectives in the multiple criteria decision-making of robots.
- Step 4:
- Consider constraints in multiple decision-making for the aggregation of multiple robots’ tasks where .
- Step 5:
- Identify all paths identified in monitoring multiple robots using the FSST algorithm.
- Step 6:
- Consider the rule and update its weight to the Knowledge Base for each node of visited, consider Rule represented by and apply as follows. In fuzzy rule-based reasoning, the fuzzy rules are generally expressed for two input variables and one output as a decision variable, as given by Equation (2):
- Step 7:
- Find the appropriate rules considered by decision-makers and apply these weights and rules in the KB. upon checking the KB, the rule currently being considered exists in the KB, action the considered rule a new rule matched in the proposed model that can be added to the KB.
5. Experimental Results
5.1. Case Study of Multi-Robot Coverage Model
- Effective collaboration: consider two mobile robots A and B. For robot A robot B is a potential dynamic obstacle and vice versa. Avoiding each other while completing the designated tasks requires managed collaboration.
- Division of the operating environment: how can robots cooperate in concert to assist with another robot’s errors while working to complete the designated task.
- A robot can move continuously among two sub-cells without obstacles in a vertical or horizontal direction.
- There will be an initial position for each robot and the robot terminates its run at the initial starting point.
- A complete coverage path is applied through a robot that has scanned the entire work area of a dynamic environment.
- The robot’s coordination works in each cell to avoid blocking another collaborating robot.
- 1
- Robot moves to cell and Robot moves to cell
- 2
- In step 1 mega-cell is marked as an old cell previously entered into the visited array for robot and this is repeated for the mega-cell for the robot
- 3
- In step 2 while searching for new adjacent cells, robot failed to locate or identify new cells above or on the left because they belonged to the spanning tree of robot . Therefore, robot moves to the cell below which was mega-cell
- 4
- Robot failed to locate a new cell, and therefore, would return to the previous cell at step 3
- 5
- The FSST algorithm terminates when the whole of the DOE has been covered and the robot, e.g., robot , has returned to its original initializing cell
5.2. Robot Processing in Coverage Path Planning Collaborations
- The initial position of the robot is given as input to the algorithm and the output is the convex hull of that robot. The robot can scan neighboring cells clockwise (up-left-down-right) starting from its parent and create the convex hull clockwise.
- Following the scanning of the neighboring cells, the unvisited cells will be marked as visited. The robot moves to the right side of the convex hull and eventually reaches the position of the starting sub-cell. It is assumed that in practice the robot is capable of leaving traces in the sub-cells it covers.
- To track the traces created in the terrain we use a visited array so that robots can determine whether that sub-cell has been covered or not. It is also assumed that there is a detection device in the actual robot capable of checking the traces of sub-cells in the current cell and its four neighbors immediately. It is assumed that we will use a stack to store information about nodes after each robot visit. The steps and the state of the stack are represented as follows:
- Push the current node onto the stack, find the first neighboring node counter-clockwise from the current node.
- If node is not empty the robot moves from the current node to node . Mark the current node as the pre-node of node . Mark node as visited.
- If node is empty pop the current node from the stack.
- The robot moves from the current node to the node at the top of the stack. Mark the pre-node of the node at the top of the stack as the current node.
- Repeat the process until the stack is empty.
5.3. Analysis of the Multi-ST with the Knowledge Base
6. Experimental Testing and Evaluation
6.1. The System Requirements
- The DOE and the operating system must provide the user with a system that enables easy robot manipulation and operation with data entry and options to easily change the input data being important factors in the design of the system.
- In operation, basic information related to the robot(s) operation will be shown in a status bar to aid efficient user monitoring, follow-up, and robot management.
- On termination of a system run, the data extracted will be automatically saved in an Excel spreadsheet file for analysis. The input KB data will be included using the Excel spreadsheet file.
6.2. The Basic Elements of the Operating System
- MegaCell: is a class that contains attributes of position , the parent cell, and state (old or not).
- CellPane: is the cell that the robot passes through in each move where CellPane is equal to 1/4 of MegaCell. The primary task of this class is to hold state properties to know whether the cell has obstructions, properties to display the dirt (the evaluation uses a cleaning robot), and the robot’s direction on a map.
- Robot: is the most important class. The class holds the attributes for the initializing location, current cell location, working time, number of moves, the visited cell array, the parent-cell array, etc.
- Server: is a class that holds general information about the whole DOE map and includes data such as the list of all running robots, the list of cells, whether the cell status is old or not, and the list of static and dynamic obstructions, etc.
- MainGui: is the construction layer on the DOE map interface for robots. It contains menus along with component interfaces of the modes.
- Logger class: is responsible for reading and writing data to Excel files, classes related to KB system governance, and classes containing CPP properties on the dirty level of the floor, etc.
6.3. Evaluation Demonstration
- In the first case: robots were placed in the corner of the map or placed evenly; however, the DOE for each robot is the same.
- In the second case: when two robots are adjacently placed, it resulted in a bad case where one robot prevented the development of other robots resulting in uneven coverage (or) a different number of cells covered by the robots. Moreover, in this case, when the robots are placed in cells close to each other, it is easy to lead to a bad case where the robots will limit the growth of the ST for the other robot(s) resulting in the number of cells covered by each robots displaying significant unevenness and disparity.
7. Results and Analysis
7.1. Analysis
- In the first case, when the robots are placed at the corners of the map or placed at equal distances from each other, the working area of each robot is approximately the same.
- However, in the second case, when the robots are placed in adjacent cells, it can lead to a worst-case scenario where the robots will restrict the growth of each other’s convex hulls, resulting in an uneven and significantly different number of cells covered by each robot.
7.1.1. Experimental Testing Results
- It can be seen that using multiple robots is only effective when the number of robots in the area is sufficient to evenly divide the working areas, resulting in the most optimal time and number of iterations.
- From this analysis, we may conclude that for CPP, multiple-robot operation is more effective than is the case for single-robot operation and, from the analyzed results, choosing multiple robots is generally more effective than using a single robot.
- However, in reality, more robots do not always mean more efficiency. It is essential to consider using the required number of robots and the financial cost.
- Moreover, optimizing the number of robots and the choice of starting positions in the best cases will help save costs and reduce the number of iterations along with optimizing robot working time.
7.1.2. The Impact of the Knowledge Base
- The reason for the reduction in the working time is the initial limitation of the ST algorithm.
- Applying the KB helps to maximize the working time of the robots in dynamic DOE even though it may require the robots to increase movement, leading to unwanted overlapping areas. However, the overlapping area can be acceptable as it is insignificant compared to the total shared DOE.
8. Discussion
- The capability for robots to achieve avoidance of static and dynamic obstacles in ‘real-time’. A moving robot is in practice a dynamic (moving) obstacle for other robots and this induced significant complexities in managing CPP. While our proposed approach displays good performance, identifying the optimal (best) solution in terms of time and traversing efficiency is arguably not possible.
- The robustness of the designed system algorithm in terms of effectiveness and efficiency along with the capability to manage effectively multiple robots operating in concert to complete defined shared tasks.
- Using individual rules for each robot with updating of the provided basis upon which improvements in the efficiency of CPP can be achieved. Moreover, minimizing duplication and repetition in areas covered in the DOE improves task efficiency. Rules considered for each robot can form the basis for intelligent data processing for collaborating robots based on common rules stored in the KB which is continually updated.
- The time taken to complete the coverage of a DOE is reduced as shown in our evaluation and experimental testing.
- The rule-based approach implemented in our proposed model allows robots with individual rules that are defined to enable optimal autonomous decision-making by the robots to achieve multiple tasks.
- The evaluation demonstration (see Section 6.3) has provided a basis upon which online and offline implementation may be realized.
- We have identified that locating robots too close together at initialization will lead to a robot blocking the development of other robots ST. As indicated in Figure 6, the minimum spacing must be where multiple robots are located in at least adjacent cells. Moreover, autonomous optimal rule definition and updating is a limitation of the proposed method.
- The CPP problem in a dynamic DOE for multiple robots operating in concert represents a challenge when considered in terms of NP-completeness, we briefly introduce research addressing NP-completeness and NP-hard problems in Section 2. For a discussion on the topic see [75,76]. As discussed in this paper, multi-robot operation represents an NP-hard problem where solutions are hard to find but easy to verify and are solved by a non-deterministic Machine in polynomial time.
- There are significant complexities inherent in managing CPP in a dynamic DOE where such complexities represent an NP Hard problem as discussed in Section 2. It is clear that the paths in CPP will change dynamically in ‘real-time’ and, while identifying an optimal static path is possible in a non-dynamic DOE, the identification of optimal paths in a dynamic DOE is not a realistic proposition. This limitation is shared with the Traveling Salesman Problem (TSP) as discussed in [11] and Bouzid et al. in [6] where CPP is addressed as it relates to UAV (i.e., drones) in a 3D DOE.
- The rule-based approach implemented in our proposed method requires robot-specific rules which are defined to enable the optimization of the rules based on rule frequency and robot experiences in the identification of the optimal path(s) in CPP. The design and optimization of autonomous rules currently represent an identified limitation.
8.1. Open Research Questions
8.2. Practical Managerial Significance
9. Concluding Observations
Author Contributions
Funding
Data Availability Statement
Acknowledgments
Conflicts of Interest
References
- Galceran, E.; Carreras, M. A survey on coverage path planning for robotics. Robot. Auton. Syst. 2013, 61, 1258–1276. [Google Scholar] [CrossRef]
- Choset, H. Coverage for robotics—A survey of recent results. Ann. Math. Artif. Intell. 2001, 31, 113–126. [Google Scholar] [CrossRef]
- Pham, H.V.; Lam, T.N. A New Method Using Knowledge Reasoning Techniques for Improving Robot Performance in Coverage Path Planning. Int. J. Comput. Appl. Technol. 2019, 60, 57–64. [Google Scholar] [CrossRef]
- Van Pham, H.; Moore, P. Robot Coverage Path Planning under Uncertainty Using Knowledge Inference and Hedge Algebras. Machines 2018, 6, 46. [Google Scholar] [CrossRef]
- Xu, A.; Viriyasuthee, C.; Rekleitis, I. Efficient complete coverage of a known arbitrary environment with applications to aerial operations. Auton. Robot. 2014, 36, 365–381. [Google Scholar] [CrossRef]
- Bouzid, Y.; Bestaoui, Y.; Siguerdidjane, H. Quadrotor-UAV optimal coverage path planning in cluttered environment with a limited onboard energy. In Proceedings of the 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Vancouver, BC, Canada, 24–28 September 2017; pp. 979–984. [Google Scholar] [CrossRef]
- Agmon, N.; Hazon, N.; Kaminka, G. Constructing spanning trees for efficient multi-robot coverage. In Proceedings of the 2006 IEEE International Conference on Robotics and Automation ICRA 2006, Orlando, FL, USA, 15–19 May 2006; pp. 1698–1703. [Google Scholar] [CrossRef]
- Gabriely, Y.; Rimon, E. Spiral-STC: An on-line coverage algorithm of grid environments by a mobile robot. In Proceedings of the 2002 IEEE International Conference on Robotics and Automation (Cat. No.02CH37292), Washington, DC, USA, 11–15 May 2002; Volume 1, pp. 954–960. [Google Scholar] [CrossRef]
- Raja, P.; Pugazhenthi, S. Optimal path planning of mobile robots: A review. Int. J. Phys. Sci. 2012, 7, 1314–1320. [Google Scholar] [CrossRef]
- Almadhoun, R.; Taha, T.; Seneviratne, L.; Zweiri, Y. A survey on multi-robot coverage path planning for model reconstruction and mapping. SN Appl. Sci. 2019, 1, 847. [Google Scholar] [CrossRef]
- Bektas, T. The multiple traveling salesman problem: An overview of formulations and solution procedures. Omega 2006, 34, 209–219. [Google Scholar] [CrossRef]
- Hazon, N.; Kaminka, G. Redundancy, Efficiency and Robustness in Multi-Robot Coverage. In Proceedings of the 2005 IEEE International Conference on Robotics and Automation, Barcelona, Spain, 18–22 April 2005; pp. 735–741. [Google Scholar] [CrossRef]
- Even, G.; Garg, N.; Könemann, J.; Ravi, R.; Sinha, A. Min–max tree covers of graphs. Oper. Res. Lett. 2004, 32, 309–315. [Google Scholar] [CrossRef]
- Agmon, N.; Hazon, N.; Kaminka, G.A.; The MAVERICK Group. The giving tree: Constructing trees for efficient offline and online multi-robot coverage. Ann. Math. Artif. Intell. 2008, 52, 143–168. [Google Scholar] [CrossRef]
- Zheng, X.; Koenig, S.; Kempe, D.; Jain, S. Multirobot Forest Coverage for Weighted and Unweighted Terrain. IEEE Trans. Robot. 2010, 26, 1018–1031. [Google Scholar] [CrossRef]
- Laporte, G.; Asef-Vaziri, A.; Sriskandarajah, C. Some Applications of the Generalized Travelling Salesman Problem. J. Oper. Res. Soc. 1996, 47, 1461–1467. [Google Scholar] [CrossRef]
- Kooij, R.E.; Achterberg, M.A. Minimizing the effective graph resistance by adding links is NP-hard. Oper. Res. Lett. 2023, 51, 601–604. [Google Scholar] [CrossRef]
- Cheeseman, P.C.; Kanefsky, B.; Taylor, W.M. Where the really hard problems are. In Proceedings of the IJCAI’91: Proceedings of the 12th International Joint Conference on Artificial Intelligence, Sydney, Australia, 24–30 August 1991; Volume 91, pp. 331–337. [Google Scholar]
- Bollobás, B. Random Graphs; Academic Press: New York, NY, USA, 1985. [Google Scholar]
- Anderson, I. B. Bollobás, Random graphs (London Mathematical Society Monographs, Academic Press, London, 1985), 447 pp. Proc. Edinb. Math. Soc. 1987, 30, 329. [Google Scholar] [CrossRef]
- Ramkumar Sudha, S.K.; Mishra, D.; Hameed, I.A. A coverage path planning approach for environmental monitoring using an unmanned surface vehicle. Ocean. Eng. 2024, 310, 118645. [Google Scholar] [CrossRef]
- Garey, M.R. Computers and Intractability: A Guide to the Theory of NP-Completeness; Fundamental; W. H. FREEMAN AND COMPANY: New York, NY, USA, 1997. [Google Scholar]
- Zheng, X.; Jain, S.; Koenig, S.; Kempe, D. Multi-robot forest coverage. In Proceedings of the 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems, Edmonton, AB, Canada, 2–6 August 2005; pp. 3852–3857. [Google Scholar] [CrossRef]
- Chen, P.; Pei, J.; Lu, W.; Li, M. A deep reinforcement learning based method for real-time path planning and dynamic obstacle avoidance. Neurocomputing 2022, 497, 64–75. [Google Scholar] [CrossRef]
- Zhu, D.; Wang, S.; Shen, J.; Zhou, C.; Li, T.; Yan, S. A multi-strategy particle swarm algorithm with exponential noise and fitness-distance balance method for low-altitude penetration in secure space. J. Comput. Sci. 2023, 74, 102149. [Google Scholar] [CrossRef]
- Rybus, T.; Wojtunik, M.; Basmadji, F.L. Optimal collision-free path planning of a free-floating space robot using spline-based trajectories. Acta Astronaut. 2022, 190, 395–408. [Google Scholar] [CrossRef]
- Lumelsky, V.; Mukhopadhyay, S.; Sun, K. Dynamic path planning in sensor-based terrain acquisition. IEEE Trans. Robot. Autom. 1990, 6, 462–472. [Google Scholar] [CrossRef]
- Acar, E.U.; Choset, H.; Rizzi, A.A.; Atkar, P.N.; Hull, D. Morse Decompositions for Coverage Tasks. Int. J. Robot. Res. 2002, 21, 331–344. [Google Scholar] [CrossRef]
- Cheng, K.P.; Mohan, R.E.; Nhan, N.H.K.; Le, A.V. Graph Theory-Based Approach to Accomplish Complete Coverage Path Planning Tasks for Reconfigurable Robots. IEEE Access 2019, 7, 94642–94657. [Google Scholar] [CrossRef]
- Oksanen, T.; Visala, A. Coverage path planning algorithms for agricultural field machines. J. Field Robot. 2009, 26, 651–668. [Google Scholar] [CrossRef]
- Cheng, P.; Keller, J.; Kumar, V. Time-optimal UAV trajectory planning for 3D urban structure coverage. In Proceedings of the 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems, Nice, France, 22–26 September 2008; pp. 2750–2757. [Google Scholar] [CrossRef]
- Le, A.V.; Prabakaran, V.; Sivanantham, V.; Mohan, R.E. Modified A-Star Algorithm for Efficient Coverage Path Planning in Tetris Inspired Self-Reconfigurable Robot with Integrated Laser Sensor. Sensors 2018, 18, 2585. [Google Scholar] [CrossRef] [PubMed]
- Moravec, H.; Elfes, A. High resolution maps from wide angle sonar. In Proceedings of the 1985 IEEE International Conference on Robotics and Automation, St. Louis, MO, USA, 25–28 March 1985; Volume 2, pp. 116–121. [Google Scholar] [CrossRef]
- Sipahioglu, A.; Kirlik, G.; Parlaktuna, O.; Yazici, A. Energy constrained multi-robot sensor-based coverage path planning using capacitated arc routing approach. Robot. Auton. Syst. 2010, 58, 529–538. [Google Scholar] [CrossRef]
- Yang, S.; Luo, C. A neural network approach to complete coverage path planning. IEEE Trans. Syst. Man, Cybern. Part B Cybern. 2004, 34, 718–724. [Google Scholar] [CrossRef]
- Manimuthu, A.; Le, A.V.; Mohan, R.E.; Veerajagadeshwar, P.; Huu Khanh Nhan, N.; Ping Cheng, K. Energy Consumption Estimation Model for Complete Coverage of a Tetromino Inspired Reconfigurable Surface Tiling Robot. Energies 2019, 12, 2257. [Google Scholar] [CrossRef]
- LaValle, S.M. Planning Algorithms; Cambridge University Press: Cambridge, UK, 2006. [Google Scholar] [CrossRef]
- Wiemann, T.; Lingemann, K.; Hertzberg, J. Automatic Map Creation For Environment Modelling In Robotic Simulators. In Proceedings of the European Conference on Modelling and Simulation, Ålesund, Norway, 27–30 May 2013. [Google Scholar]
- Luo, R.C.; Lai, C.C. Enriched Indoor Map Construction Based on Multisensor Fusion Approach for Intelligent Service Robot. IEEE Trans. Ind. Electron. 2012, 59, 3135–3145. [Google Scholar] [CrossRef]
- Huang, X.; Sun, M.; Zhou, H.; Liu, S. A Multi-Robot Coverage Path Planning Algorithm for the Environment With Multiple Land Cover Types. IEEE Access 2020, 8, 198101–198117. [Google Scholar] [CrossRef]
- Hameed, I.A. Intelligent Coverage Path Planning for Agricultural Robots and Autonomous Machines on Three-Dimensional Terrain. J. Intell. Robot. Syst. 2014, 74, 965–983. [Google Scholar] [CrossRef]
- Shnaps, I.; Rimon, E. Online Coverage of Planar Environments by a Battery Powered Autonomous Mobile Robot. IEEE Trans. Autom. Sci. Eng. 2016, 13, 425–436. [Google Scholar] [CrossRef]
- Wei, M.; Isler, V. Coverage Path Planning Under the Energy Constraint. In Proceedings of the 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, Australia, 21–25 May 2018; pp. 368–373. [Google Scholar] [CrossRef]
- Wu, C.; Dai, C.; Gong, X.; Liu, Y.J.; Wang, J.; Gu, X.D.; Wang, C.C.L. Energy-Efficient Coverage Path Planning for General Terrain Surfaces. IEEE Robot. Autom. Lett. 2019, 4, 2584–2591. [Google Scholar] [CrossRef]
- Tang, J.; Sun, C.; Zhang, X. MSTC*: Multi-robot Coverage Path Planning under Physical Constrain. In Proceedings of the 2021 IEEE International Conference on Robotics and Automation (ICRA), Xian, China, 30 May–5 June 2021; pp. 2518–2524. [Google Scholar] [CrossRef]
- Aldana-Galván, I.; Catana-Salazar, J.; Díaz-Báñez, J.; Duque, F.; Fabila-Monroy, R.; Heredia, M.; Ramírez-Vigueras, A.; Urrutia, J. On optimal coverage of a tree with multiple robots. Eur. J. Oper. Res. 2020, 285, 844–852. [Google Scholar] [CrossRef]
- Duchoň, F.; Babinec, A.; Kajan, M.; Beňo, P.; Florek, M.; Fico, T.; Jurišica, L. Path Planning with Modified a Star Algorithm for a Mobile Robot. Procedia Eng. 2014, 96, 59–69. [Google Scholar] [CrossRef]
- Cui, S.G.; Wang, H.; Yang, L. A simulation study of A-star algorithm for robot path planning. In Proceedings of the 16th International Conference on Mechatronics Technology, Tianjin, China, 16–19 October 2012; pp. 506–510. [Google Scholar]
- Duchoň, F.; Hunady, D.; Dekan, M.; Babinec, A. Optimal Navigation for Mobile Robot in Known Environment. Appl. Mech. Mater. 2013, 282, 33–38. [Google Scholar] [CrossRef]
- Pham, H.V.; Moore, P. Applied Hedge Algebra Approach with Multilingual Large Language Models to Extract Hidden Rules in Datasets for Improvement of Generative AI Applications. Information 2024, 15, 381. [Google Scholar] [CrossRef]
- Pham, H.V.; Moore, P.; Truong, D.X. Proposed Smooth-STC Algorithm for Enhanced Coverage Path Planning Performance in Mobile Robot Applications. Robotics 2019, 8, 44. [Google Scholar] [CrossRef]
- Long, C.K.; Van Hai, P.; Tuan, T.M.; Lan, L.T.H.; Ngan, T.T.; Chuan, P.M.; Son, L.H. A novel Q-learning-based FKG-Pairs approach for extreme cases in decision making. Eng. Appl. Artif. Intell. 2023, 120, 105920. [Google Scholar] [CrossRef]
- Pham, H.V.; Long, C.K.; Khanh, P.H.; Trung, H.Q. A Fuzzy Knowledge Graph Pairs-Based Application for Classification in Decision Making: Case Study of Preeclampsia Signs. Information 2023, 14, 104. [Google Scholar] [CrossRef]
- Long, C.K.; Van Hai, P.; Tuan, T.M.; Lan, L.T.H.; Chuan, P.M.; Son, L.H. A Novel Fuzzy Knowledge Graph Pairs Approach in Decision Making. Multimed. Tools Appl. 2022, 81, 26505–26534. [Google Scholar] [CrossRef]
- Pham, V.H.; Nguyen, Q.H.; Le, T.T.; Nguyen, T.X.D.; Phan, T.T.K. A proposal model using deep learning model integrated with knowledge graph for monitoring human behavior in forest protection. Telecommun. Comput. Electron. Control TELKOMNIKA 2022, 20, 1276–1287. [Google Scholar] [CrossRef]
- Van Pham, H.; Moore, P.; Cong Cuong, B. Applied picture fuzzy sets with knowledge reasoning and linguistics in clinical decision support system. Neurosci. Inform. 2022, 2, 100109. [Google Scholar] [CrossRef]
- Van Pham, H.; Nguyen, H.N. Applied Picture Fuzzy Sets to Smart Autonomous Driving Vehicle for Multiple Decision Making in Forest Transportation. In Proceedings of the Intelligent Data Engineering and Analytics; Bhateja, V., Yang, X.S., Chun-Wei Lin, J., Das, R., Eds.; Springer: Singapore, 2023; pp. 441–453. [Google Scholar]
- Moore, P.; Van Pham, H. On Context and the Open World Assumption. In Proceedings of the 2015 IEEE 29th International Conference on Advanced Information Networking and Applications Workshops, Gwangiu, Republic of Korea, 24–27 March 2015; pp. 387–392. [Google Scholar] [CrossRef]
- Tuan, N.T.; Moore, P.; Thanh, D.H.V.; Pham, H.V. A Generative Artificial Intelligence Using Multilingual Large Language Models for ChatGPT Applications. Appl. Sci. 2024, 14, 3036. [Google Scholar] [CrossRef]
- Amada, J.; Okafuji, Y.; Matsumura, K.; Baba, J.; Nakanishi, J. Investigating the crowd-drawing effect, on passersby, of pseudo-crowds using multiple robots. Adv. Robot. 2023, 37, 423–432. [Google Scholar] [CrossRef]
- Helbing, D.; Molnár, P. Social force model for pedestrian dynamics. Phys. Rev. E 1995, 51, 4282–4286. [Google Scholar] [CrossRef]
- Han, Y.; Liu, H.; Moore, P. Extended route choice model based on available evacuation route set and its application in crowd evacuation simulation. Simul. Model. Pract. Theory 2017, 75, 1–16. [Google Scholar] [CrossRef]
- Kala, R. Autonomous Mobile Robots, Planning, Navigation and Simulation; Elsevier: Amsterdam, The Netherlands, 2024; A volume in Emerging Methodologies and Applications in Modelling. [Google Scholar] [CrossRef]
- Miao, Z.; Zhou, F.; Yuan, X.; Xia, Y.; Chen, K. Multi-heterogeneous sensor data fusion method via convolutional neural network for fault diagnosis of wheeled mobile robot. Appl. Soft Comput. 2022, 129, 109554. [Google Scholar] [CrossRef]
- Zhang, J.; Chen, B.; Zhang, Y.; Jiang, C.; Song, A. 3D self-deployment of jumping robot sensor nodes for improving network performance in obstacle dense environment. Measurement 2023, 207, 112410. [Google Scholar] [CrossRef]
- Sanfeliu, A.; Hagita, N.; Saffiotti, A. Network robot systems. Robot. Auton. Syst. 2008, 56, 793–797. [Google Scholar] [CrossRef]
- Sanfeliu, A.; Andrade-Cetto, J.; Barbosa, M.; Bowden, R.; Capitán, J.; Corominas, A.; Gilbert, A.; Illingworth, J.; Merino, L.; Mirats, J.M.; et al. Decentralized Sensor Fusion for Ubiquitous Networking Robotics in Urban Areas. Sensors 2010, 10, 2274–2314. [Google Scholar] [CrossRef]
- Borenstein, J.; Everett, H.R.; Feng, L.; Wehe, D. Mobile robot positioning: Sensors and techniques. J. Robot. Syst. 1997, 14, 231–249. [Google Scholar] [CrossRef]
- Carcieri, S.M.; Jacobs, A.L.; Nirenberg, S. Classification of Retinal Ganglion Cells: A Statistical Approach. J. Neurophysiol. 2003, 90, 1704–1713. [Google Scholar] [CrossRef] [PubMed]
- Nirenberg, S.; Carcieri, S.M.; Jacobs, A.L.; Latham, P.E. Retinal ganglion cells act largely as independent encoders. Nature 2001, 411, 698–701. [Google Scholar] [CrossRef] [PubMed]
- Zaid, I.M.; Sajwani, H.; Halwani, M.; Hassanin, H.; Ayyad, A.; AbuAssi, L.; Almaskari, F.; Samad, Y.A.; Abusafieh, A.; Zweiri, Y. Virtual prototyping of vision-based tactile sensors design for robotic-assisted precision machining. Sens. Actuators A Phys. 2024, 374, 115469. [Google Scholar] [CrossRef]
- Sumi, M. Simulation of artificial intelligence robots in dance action recognition and interaction process based on machine vision. Entertain. Comput. 2025, 52, 100773. [Google Scholar] [CrossRef]
- Pettie, S.; Ramachandran, V. An Optimal Minimum Spanning Tree Algorithm. J. ACM 2002, 49, 16–34. [Google Scholar] [CrossRef]
- Berndtsson, M.; Lings, B. Logical Events and Eca Rules; Technical Report HS-IDA-TR-95-004; University of Skovde: Skövde, Sweden, 1995. [Google Scholar]
- Hochba, D.S. Approximation algorithms for NP-hard problems. ACM Sigact News 1997, 28, 40–52. [Google Scholar] [CrossRef]
- Tindell, K.W.; Burns, A.; Wellings, A.J. Allocating hard real-time tasks: An NP-hard problem made easy. Real-Time Syst. 1992, 4, 145–165. [Google Scholar] [CrossRef]
- Kim, H.; Rajkumar, R.R. Memory reservation and shared page management for real-time systems. J. Syst. Archit. 2014, 60, 165–178. [Google Scholar] [CrossRef]
- Samsuria, E.; Mahmud, M.S.A.; Abdul Wahab, N.; Romdlony, M.Z.; Zainal Abidin, M.S.; Buyamin, S. Adaptive fuzzy-genetic algorithm operators for solving mobile robot scheduling problem in job-shop FMS environment. Robot. Auton. Syst. 2024, 176, 104683. [Google Scholar] [CrossRef]
Stack R1 | Stack R2 | |
---|---|---|
A (Initial node of Robot 1) | Z (Initial node of Robot 2) | |
A-B | Z-Y | |
A-B-C | Z-Y-X | |
… | … | … |
A-B-C-D-E-F-G | Z-Y-X-W-V-U-T | |
Push I | Push R | … |
A-B-C-D-E-F-G-H-I | Z-Y-X-W-V-U-T-S-R | |
Push K | Pop R | … |
A-B-C-D-E-F-G-H-I-K | Z-Y-X-W-V-U-T-S | |
Push L | Pop S | … |
A-B-C-D-E-F-G-H-I-K-L | Z-Y-X-W-V-U-T | |
… | … | … |
A-B-C-D-E-F-G-H-I | Pop Z | |
… | null | … |
Pop A | null | |
null | … | |
Finish |
Robot Event Rules and Event Code | |||
---|---|---|---|
Event Code | Rule Name | Event Code | Rule Name |
a1 | Mobile obstacle ahead | a10 | Wall on the left |
a2 | Mobile obstacle on the left | a11 | Wall on the right |
a3 | Mobile obstacle on the right | a12 | Wall behind |
a4 | Mobile obstacle behind | b1 | Go ahead |
a5 | Another robot ahead | b2 | Turn left |
a6 | Another robot on the left | b3 | Turn right |
a7 | Another robot on the right | b4 | Backward |
a8 | Another robot behind | b5 | Stand |
a9 | Wall ahead |
Defined Rules in the Knowledge-Base | |||||
---|---|---|---|---|---|
Code | IF | THEN | Code | IF | THEN |
1 | a1 | b2 | 44 | a1&&a7&&a8 | b2 |
2 | a2 | b1 | 45 | a2&&a3&&a4 | b1 |
3 | a3 | b1 | 46 | a2&&a3&&a5 | b4 |
4 | a4 | b1 | 47 | a2&&a3&&a8 | b1 |
5 | a5 | b2 | 48 | a2&&a4&&a5 | b3 |
6 | a6 | b1 | 49 | a2&&a4&&a7 | b1 |
7 | a7 | b1 | 50 | a2&&a5&&a7 | b4 |
8 | a8 | b1 | 51 | a2&&a5&&a8 | b3 |
9 | a1&&a2 | b3 | 52 | a2&&a7&&a8 | b1 |
10 | a1&&a3 | b2 | 53 | a3&&a4&&a5 | b2 |
11 | a1&&a4 | b2 | 54 | a3&&a4&&a6 | b1 |
12 | a1&&a6 | b3 | 55 | a3&&a5&&a6 | b4 |
13 | a1&&a7 | b2 | 56 | a3&&a5&&a8 | b2 |
14 | a1&&a8 | b2 | 57 | a3&&a6&&a8 | b1 |
15 | a1&&a8 | b1 | 58 | a4&&a5&&a6 | b3 |
16 | a2&&a4 | b1 | 59 | a4&&a5&&a7 | b2 |
17 | a2&&a5 | b3 | 60 | a4&&a6&&a7 | b1 |
18 | a2&&a7 | b1 | 61 | a5&&a6&&a7 | b4 |
19 | a2&&a8 | b1 | 62 | a5&&a6&&a8 | b3 |
20 | a3&&a4 | b1 | 63 | a6&&a7&&a8 | b1 |
21 | a3&&a5 | b2 | 64 | a1&&a2&&a3&&a4 | b5 |
22 | a3&&a6 | b1 | 65 | a1&&a2&&a3&&a8 | b5 |
23 | a3&&a8 | b1 | 66 | a1&&a2&&a7&&a4 | b5 |
24 | a4&&a5 | b2 | 67 | a1&&a2&&a7&&a8 | b5 |
25 | a4&&a6 | b1 | 68 | a1&&a6&&a3&&a4 | b5 |
26 | a4&&a7 | b1 | 69 | a1&&a6&&a3&&a8 | b5 |
27 | a5&&a6 | b3 | 70 | a5&&a2&&a3&&a4 | b5 |
28 | a5&&a7 | b2 | 71 | a5&&a2&&a3&&a8 | b5 |
29 | a5&&a8 | b2 | 72 | a9 | b2 |
30 | a6&&a7 | b1 | 73 | a10 | b1 |
31 | a6&&a8 | b1 | 74 | a11 | b1 |
32 | a7&&a8 | b1 | 75 | a12 | b1 |
33 | a1&&a2&&a3 | b4 | 76 | a1&&a10 | b3 |
34 | a1&&a2&&a4 | b3 | 77 | a1&&a11 | b2 |
35 | a1&&a2&&a7 | b4 | 78 | a1&&a12 | b2 |
36 | a1&&a2&&a8 | b3 | 79 | a2&&a9 | b3 |
37 | a1&&a3&&a4 | b2 | 80 | a2&&a11 | b1 |
38 | a1&&a3&&a6 | b4 | 81 | a2&&a12 | b1 |
39 | a1&&a3&&a8 | b2 | 82 | a3&&a9 | b2 |
40 | a1&&a4&&a6 | b3 | 83 | a3&&a10 | b1 |
41 | a1&&a4&&a7 | b2 | 84 | a3&&a12 | b1 |
42 | a1&&a6&&a7 | b4 | .... | .... | .... |
43 | a1&&a6&&a8 | b3 |
Terrain Type | Starting Positions of Robot # | |||||||
---|---|---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 1 | 2 | 3 | 4 | |
Type | (0,0) | (23,23) | (23,0) | (0,23) | (11,11) | (11,12) | (12,11) | (12,12) |
Obstacle Free | 148 | 150 | 150 | 134 | 45 | 85 | 211 | 241 |
Indoor With Obstacles | 145 | 131 | 142 | 161 | 70 | 72 | 199 | 233 |
Number of Cells Covered by Each Robot in the Same Terrain with Different Starting Positions | ||||||||
---|---|---|---|---|---|---|---|---|
Robots | Time | Average | Maximum | |||||
1 | 57,600 | - | - | - | - | - | 57,600 | 57,600 |
2 | 29300 | 28800 | - | - | - | - | 29,050 | 29,300 |
2* | 28,900 | 28,900 | - | - | - | - | 28,900 | 28,900 |
3 | 4500 | 29,700 | 25,500 | - | - | - | 19,900 | 29,700 |
3* | 20,000 | 18,800 | 18,800 | - | - | - | 19,200 | 20,000 |
4 | 4500 | 8500 | 21,100 | 24,100 | - | - | 14,550 | 24,100 |
4* | 15,600 | 13,900 | 13,900 | 14,900 | - | - | 14,575 | 15,600 |
5 | 18,200 | 4800 | 10,200 | 16,200 | 9000 | - | 11,800 | 18,200 |
5* | 2900 | 14,100 | 13,100 | 14,000 | 14,100 | - | 13,880 | 14,100 |
6 | 4500 | 4500 | 19,400 | 4400 | 15,800 | 9800 | 9734 | 19,400 |
6* | 11,800 | 8800 | 15,000 | 7600 | 8200 | 7200 | 8567 | 15,000 |
7 | - | - | - | - | - | - | 8586 | 18,000 |
8 | - | - | - | - | - | - | 7688 | 14,100 |
9 | - | - | - | - | - | - | 6867 | 13,500 |
10 | - | - | - | - | - | - | 6180 | 9900 |
11 | - | - | - | - | - | - | 5664 | 9200 |
12 | - | - | - | - | - | - | 5083 | 8500 |
Starting Position of the Robot | ||||||||
---|---|---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 1 | 2 | 3 | 4 | |
Position | (0,0) | (23,23) | (23,0) | (0,23) | (11,11) | (11,12) | (12,11) | (12,12) |
Environment without obstacles | 148 | 150 | 150 | 134 | 45 | 85 | 211 | 241 |
Environment with obstacles | 145 | 131 | 142 | 161 | 70 | 72 | 199 | 233 |
4 Obstacles | 10 Obstacles | |||||
---|---|---|---|---|---|---|
Number of Robots | Number of Movement Steps | Number of Iterations | Iteration Rate | Number of Movement Steps | Number of Iterations | Iteration Rate |
1 | 2508 | 12 | 0.48 | 2523 | 32 | 1.26 |
2 | 2510 | 12 | 0.48 | 2524 | 32 | 1.27 |
3 | 2515 | 16 | 0.64 | 2529 | 36 | 1.42 |
5 | 2521 | 18 | 0.71 | 2532 | 40 | 1.58 |
10 | 2517 | 14 | 0.56 | 2549 | 52 | 2.04 |
20 | 2545 | 24 | 0.94 | 2580 | 72 | 2.79 |
30 | 2572 | 25 | 0.97 | 2617 | 98 | 3.74 |
50 | 2620 | 36 | 1.37 | 2734 | 203 | 7.42 |
Not Applying KB | Applying KB | |||||
---|---|---|---|---|---|---|
Number of Robots | Number of Movement Steps | Number of Iterations | Operating Time (s) | Number of Movement Steps | Number of Iterations | Operating Time (s) |
1 | 2503 | 3 | 362,442 | 2523 | 32 | 103,512 |
2 | 2502 | 2 | 299,027 | 2524 | 32 | 53,212 |
5 | 2504 | 4 | 238,810 | 2532 | 40 | 34545 |
10 | 2516 | 16 | 144,395 | 2549 | 52 | 32,634 |
20 | 2536 | 20 | 108,630 | 2531 | 25 | 31,108 |
50 | 2668 | 56 | 87,961 | 2653 | 135 | 28,402 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Pham, H.V.; Do, H.Q.; Nguyen Quang, M.; Asadi, F.; Moore, P. Proposed Multi-ST Model for Collaborating Multiple Robots in Dynamic Environments. Machines 2024, 12, 797. https://doi.org/10.3390/machines12110797
Pham HV, Do HQ, Nguyen Quang M, Asadi F, Moore P. Proposed Multi-ST Model for Collaborating Multiple Robots in Dynamic Environments. Machines. 2024; 12(11):797. https://doi.org/10.3390/machines12110797
Chicago/Turabian StylePham, Hai Van, Huy Quoc Do, Minh Nguyen Quang, Farzin Asadi, and Philip Moore. 2024. "Proposed Multi-ST Model for Collaborating Multiple Robots in Dynamic Environments" Machines 12, no. 11: 797. https://doi.org/10.3390/machines12110797
APA StylePham, H. V., Do, H. Q., Nguyen Quang, M., Asadi, F., & Moore, P. (2024). Proposed Multi-ST Model for Collaborating Multiple Robots in Dynamic Environments. Machines, 12(11), 797. https://doi.org/10.3390/machines12110797