Method, device and medium for coordinating neighbor discovery conflict for robot network
By adopting a neighbor discovery conflict coordination method that adaptively adjusts the time slot length and backoff window, the problem of frequent beacon conflicts in robot networks is solved, achieving rapid response and efficient coordination, and improving the efficiency and flexibility of neighbor discovery.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- GUANGDONG POLYTECHNIC NORMAL UNIV
- Filing Date
- 2022-10-20
- Publication Date
- 2026-04-28
AI Technical Summary
In robot networks, beacon collisions are frequent during neighbor discovery. Existing methods struggle to effectively adjust slot lengths and backoff windows, leading to increased discovery latency and failing to meet the demands of rapid topology changes.
This paper presents a neighbor discovery conflict coordination method for robot networks. By adaptively adjusting the time slot length and backoff window, it estimates the network state using the number of beacon receptions and conflict information, and combines a cross-layer beacon conflict coordination mechanism to quickly respond to beacon conflicts.
It enables rapid discovery between nodes in the event of beacon collisions, reduces discovery latency, and improves the efficiency and flexibility of neighbor discovery, making it suitable for various distributed wireless networks.
Smart Images

Figure CN115767761B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of communication technology, and in particular to a neighbor discovery conflict coordination method, computer device, and computer-readable storage medium for robot networks. Background Technology
[0002] With the development of robotics and wireless communication technologies, robots have been combined with wireless sensors to form robot wireless sensor networks. Robot networks are widely used in various fields, such as environmental monitoring, unmanned exploration, and data collection. These applications are mostly accomplished by multiple robots working collaboratively, and this collaborative operation requires information exchange through the robot network. The process by which a robot, as a node in the network, interacts with other nodes and dynamically discovers them during network construction is called neighbor discovery. Because robots are mobile, nodes in a robot network need to constantly discover their neighbors.
[0003] In distributed networks, neighbor discovery between nodes requires them to receive information from each other. Therefore, designing activation and sleep scheduling rules to ensure mutual information reception is known as the Neighbor Discovery problem. Researchers typically discretize continuous time into several consecutive time segments, known as a time-slot model. Traditional neighbor discovery protocols use duty cycle (the proportion of a node's active time within a work cycle) to measure node energy, with the primary design goal of ensuring neighbor discovery is completed within a finite time and minimizing discovery latency. Most protocols assume that a pair of nodes can discover each other if they activate simultaneously at the same time. By designing node activation / sleep time sequences, they aim to enable nodes to reach the same active state more quickly, thus reducing discovery latency. For example, the Disco protocol designs a time sequence based on two prime numbers, allowing for neighbor discovery with a theoretically bounded discovery latency given a duty cycle. Quorum-type protocols, on the other hand, design a method to generate a matrix-like time sequence based on the duty cycle. The Hello protocol is a matrix-form time series designed by combining prime number and Quorum techniques. In the sequence, each node is continuously activated in a time slot of more than half its length after each cycle.
[0004] However, for robots, the energy consumption of movement is greater than that of communication. Therefore, robot nodes remain active and continuously discover neighbors, resulting in a large number of beacon interactions in the network. In practical applications of neighbor discovery in robot networks, beacon collisions between different nodes are a significant obstacle to neighbor discovery. Handling beacon collisions in neighbor discovery mainly involves two methods: random backoff and time slot length adjustment. Random backoff mechanisms, such as CSMA / CA, require nodes to randomly select a period of time within a backoff window after detecting a collision, and then stop sending beacons during this period. However, when the number of nodes in the network is too large, the backoff mechanism cannot effectively achieve the purpose of collision handling. Another collision handling method is to change the time slot length after a collision. However, rapidly increasing the time slot length will cause the node's work cycle to become too long, wasting too much time resources and preventing the robot from completing its task; while increasing the time slot length too slowly will prevent the robot node from receiving valid information to complete its task. Furthermore, since robots may continuously move while completing tasks, the node distribution of the robot network may change from dense to sparse or from sparse to dense, making fixed-length time slots difficult to meet such application requirements. Therefore, how to enable the robot to adaptively adjust the neighbor discovery time slot length according to the current network state is a problem worth paying attention to.
[0005] Peking University proposed a neighbor discovery beacon collision avoidance protocol based on beacon collision detection. Both methods employ a collision handling mechanism that doubles the time slot length after a beacon collision. However, neither method fully considers the impact of changing the time slot length on discovery latency. With a large number of nodes, if a node experiences consecutive beacon collisions, the time slot length of some nodes will increase exponentially. Even if the overall network collisions are not frequent, the time required for neighbor discovery will increase dramatically, leading to a sharp increase in the time required for the robot to complete the task, or even preventing it from completing it. Therefore, directly applying current methods to robot networks with rapidly changing topologies is unlikely to yield good results.
[0006] In summary, to ensure that neighbor discovery in distributed wireless networks can discover each other within a limited time in practical application scenarios and to enhance the practicality of neighbor discovery protocols, a method that can fully resolve the beacon conflict problem in neighbor discovery protocols is needed. Summary of the Invention
[0007] The technical problem to be solved by the present invention is to provide a neighbor discovery conflict coordination method, computer device and computer-readable storage medium for robot networks, which can adaptively adjust the time slot length and backoff window according to the network status for conflict coordination.
[0008] To address the aforementioned technical problems, this invention provides a neighbor discovery and conflict coordination method for robot networks, comprising: initializing reference parameters and listening to channels and detecting conflicts based on the reference parameters to update the number of beacons, the beacon reception list, and the conflict flag; identifying conflicts based on the conflict flag; when no conflict is identified, re-initializing the reference parameters and listening to channels and detecting conflicts based on the reference parameters to update the number of beacons, the beacon reception list, and the conflict flag; when a conflict is identified, adjusting the time slot length and backoff time based on the number of beacons, the conflict flag, a preset time slot adjustment step size, and a preset backoff window coefficient, and then listening to channels based on the backoff time to update the beacon reception list; and controlling the robot's working state based on the beacon reception list, the backoff time, and a preset beacon duration.
[0009] As an improvement to the above scheme, the step of adjusting the real-time slot length and backoff time according to the number of beacons, the collision flag bits, the preset slot adjustment step size, and the preset backoff window coefficient includes: according to formula N E =B R +CF+1, calculate the current number of neighbors N E Among them, B R Where L is the number of beacons and CF is the collision flag bit; according to the formula L' = S * (N E -2), update the real-time slot length L', where S is the preset slot adjustment step size; calculate the conflict window BW according to the formula BW=A*L', where A is the preset backoff window coefficient; select an integer in the interval [0,BW-1] as the backoff time BT.
[0010] As an improvement to the above scheme, the reference parameters include a local clock, the number of beacons, a collision flag bit, and a reply flag bit. The step of listening to the channel and detecting collisions based on the reference parameters to update the number of beacons, the beacon reception list, and the collision flag bit includes: S11, determining whether the value of the local clock is less than or equal to the real-time slot length; if yes, proceed to S12; otherwise, identify the collision based on the collision flag bit; S12, determining whether the value of the reply flag bit is "0"; if yes, proceed to S13; otherwise, proceed to S15; S1 3. Determine if the value of the local clock is "1". If yes, send a Hello beacon and proceed to S14; otherwise, proceed to S16. S14. Determine if a collision is detected. If yes, set the collision flag to "1" and proceed to S15; otherwise, proceed to S17. S15. Send an Answer beacon and set the reply flag to "0", then proceed to S17. S16. Listen to the channel and receive beacons. If the node receives a beacon, set the reply flag to "1" and update the beacon count B.R The value of B, so that R =B R +1, add the beacon to the beacon receiving list and run S17, otherwise run S17 directly; S17, update the value of the local clock T so that T = T + 1, and run S11.
[0011] As an improvement to the above scheme, the step of identifying a conflict based on the conflict flag bit includes: determining whether the value of the conflict flag bit is "1"; if the value is "1", it indicates that a conflict has been identified; if the value is "no", it indicates that a conflict has not been identified.
[0012] As an improvement to the above scheme, the step of listening to the channel according to the backoff time to update the beacon receiving list includes: S21, determining whether the backoff time is greater than 0; if yes, then proceeding to S22; if no, then re-initializing the reference parameters and listening to the channel and detecting collisions according to the reference parameters to update the number of beacons, the beacon receiving list, and the collision flag bit; S22, listening to the channel and receiving beacons; if a beacon is received, then adding the beacon to the beacon receiving list and updating the value of the backoff time BT so that BT = BT-1, and returning to S21; if no beacon is received, then updating the value of the backoff time BT so that BT = BT-1, and returning to S21.
[0013] As an improvement to the above scheme, the step of controlling the robot's working state according to the beacon reception list, the backoff time, and the preset beacon duration includes: determining in real time whether the robot stopping condition has been met; if the determination is yes, driving the robot to stay in place; if the determination is no, updating the position information of neighboring nodes according to the beacon reception list and clearing the beacon reception list, then driving the robot to move to the target position and causing the robot to stay at the target position for a specific time.
[0014] As an improvement to the above scheme, according to formula T S =BT*T Beacon Calculate the specific time T that the robot stays at the target location. S Where BT is the backoff time, and T is the distance between the two points. Beacon Set the preset beacon duration.
[0015] As an improvement to the above scheme, before initializing the baseline parameters, the scheme further includes: initializing global parameters, which include backoff time, real-time slot length, and beacon reception list.
[0016] Accordingly, the present invention also provides a computer device including a memory and a processor, wherein the memory stores a computer program, and the processor executes the steps of the above-described neighbor discovery conflict coordination method for robot networks.
[0017] Accordingly, the present invention also provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the above-described neighbor discovery conflict coordination method for robot networks.
[0018] Implementing this invention has the following beneficial effects:
[0019] This invention innovatively proposes a cross-layer beacon conflict coordination mechanism that combines robot networks and robot motion control;
[0020] This invention can estimate network conditions based on the number of beacon receptions and beacon collision information, autonomously adjust time slot length and backoff window, achieve collision coordination, and has strong adaptability;
[0021] By setting different adjustment step sizes, this invention can perform various fine-grained adjustments after a conflict, so that the robot's performance in actual applications is as close as possible to the theoretical performance in a conflict-free situation.
[0022] If a beacon conflict occurs during the neighbor discovery process, it can respond quickly to the conflict, achieve efficient conflict coordination, significantly reduce the discovery delay caused by beacon conflicts, and ensure rapid discovery between nodes in the event of a beacon conflict.
[0023] This invention can coordinate conflicts based on the node's own information without requiring additional node information, thus ensuring that the method can be flexibly applied to various distributed wireless networks, making it highly flexible. Attached Figure Description
[0024] Figure 1 is a flowchart of the neighbor discovery conflict coordination method for robot networks according to the present invention;
[0025] Figure 2 is another flowchart of the neighbor discovery conflict coordination method for robot networks according to the present invention;
[0026] Figure 3 is a schematic diagram showing the completion rate of robot motion control algorithms with 20-300 nodes among different algorithms;
[0027] Figure 4 is a schematic diagram of the average collision probability of nodes in the range of 20-300 nodes among different algorithms;
[0028] Figure 5 is a schematic diagram of robot network coverage for 20-300 nodes across different algorithms. Detailed Implementation
[0029] To make the objectives, technical solutions, and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings.
[0030] Referring to Figure 1, Figure 1 shows a flowchart of the neighbor discovery conflict coordination method for robot networks according to the present invention, which includes:
[0031] S101, initialize the reference parameters and listen to the channel and detect collisions according to the reference parameters to update the number of beacons, the beacon reception list and the collision flag bit;
[0032] It should be noted that before initializing the baseline parameters, the global parameters also need to be initialized first. The global parameters include the backoff time BT, the real-time time slot length L', and the beacon list BeaconList. The global parameters are initialized by setting BT=0, L'=L, and BeaconList={}, where L is the preset initial time slot length.
[0033] Accordingly, the reference parameters include the local clock T and the number of beacons B. R The collision flag (CF) and reply flag (Reply) are initialized with the base parameter set to T=1. R =0, CF=0, Reply=0.
[0034] Specifically, the steps of listening to the channel and detecting collisions based on reference parameters to update the number of beacons, the beacon reception list, and the collision flag bits include:
[0035] K11 determines whether the value of the local clock is less than or equal to the real-time time slot length. If yes, K12 is executed; otherwise, the conflict is identified based on the conflict flag bit.
[0036] K12 checks if the value of the reply flag is "0". If it is, K13 is executed; otherwise, K15 is executed.
[0037] K13 checks if the local clock value is "1". If it is, a Hello beacon is sent and K14 is executed; otherwise, K16 is executed.
[0038] K14 determines whether a conflict is detected. If yes, the conflict flag is set to "1" and K15 is executed. Otherwise, K17 is executed.
[0039] K15, send the AnKwer beacon and set the reply flag to "0", then execute K17;
[0040] K16 listens to the channel and receives beacons. If a node receives a beacon, it sets the reply flag to "1" and updates the beacon count B. R The value of B, so that R =B R +1, add the beacon to the beacon receiving list and run K17; otherwise, run K17 directly.
[0041] K17, update the value of the local clock T so that T = T + 1, then run K11.
[0042] S102, Identify collisions based on collision flag bits;
[0043] Specifically, the steps for identifying collisions based on collision flag bits include:
[0044] (1) Determine if the value of the collision flag bit is "1";
[0045] (2) If the judgment is yes, it means that a conflict has been identified;
[0046] (3) If the judgment is negative, it means that no conflict was identified.
[0047] S103, if no collision is identified, return to step S101; if a collision is identified, adjust the time slot length and backoff time according to the number of beacons, collision flag bit, preset time slot adjustment step size, and preset backoff window coefficient, and then listen to the channel according to the backoff time to update the beacon reception list.
[0048] Specifically, the steps for adjusting the real-time time slot length and backoff time based on the number of beacons, collision flag bits, preset time slot adjustment step size, and preset backoff window coefficient include:
[0049] (1) According to formula N E =B R +CF+1, calculate the current number of neighbors N E Among them, B R Where CF represents the number of beacons and CF represents the collision flag.
[0050] (2) According to the formula L'=S*(N) E -2), update the real-time time slot length L', where S is the preset time slot adjustment step size;
[0051] (3) Calculate the conflict window BW according to the formula BW=A*L', where A is the preset backoff window coefficient;
[0052] (4) Select an integer in the interval [0, BW-1] as the backoff time BT.
[0053] Therefore, in a distributed network, when neighbors between nodes discover a conflict in beacon transmissions, without the need for coordination or allocation from external nodes or base stations, the nodes immediately determine the number of nodes within their communication range and activate a conflict coordination mechanism to adjust their own time slot length, thus achieving rapid coordination.
[0054] Additionally, the steps for listening to the channel based on the backoff time to update the beacon receiver list include:
[0055] K21, determine if the backoff time is greater than 0; if yes, then execute K22; if no, then reinitialize the reference parameters and listen to the channel and detect collisions according to the reference parameters to update the number of beacons, the beacon reception list and the collision flag bit.
[0056] K22 listens for the channel and receives beacons; if a beacon is received, it adds the beacon to the beacon receiving list and updates the backoff time BT so that BT = BT-1, and returns to K21; if no beacon is received, it updates the backoff time BT so that BT = BT-1, and returns to K21.
[0057] S104 controls the robot's working state according to the beacon reception list, backoff time, and preset beacon duration.
[0058] It should be noted that steps S101 and S104 belong to two independent threads. There is no necessary order between steps S101 and S104. Step S104 can be performed at the same time as step S101. In each loop, the two threads start and end synchronously.
[0059] Specifically, the steps for controlling the robot's working state based on the beacon reception list, backoff time, and preset beacon duration include:
[0060] (1) Real-time determination of whether the robot stops;
[0061] (2) If the judgment is yes, drive the robot to stay in place;
[0062] (3) If the judgment is negative, update the location information of the neighboring nodes according to the beacon receiving list and clear the beacon receiving list, then drive the robot to the target location and make the robot stay at the target location for a specific time.
[0063] Furthermore, according to formula T S =BT*T Beacon Calculate the specific time T that the robot stays at the target location. S Where BT is the backoff time, and T is the distance between the two points. Beacon Set the preset beacon duration.
[0064] Therefore, after detecting a conflict, the robot can increase the time it stays in place, thereby reducing the clustering of robot nodes and lowering the density of nodes.
[0065] In summary, this invention innovatively proposes a cross-layer beacon conflict coordination mechanism that combines robot networks and robot motion control. When a node detects a beacon conflict, it can adaptively adjust the time slot length and its own movement waiting time based on an estimate of the number of neighbors within the current communication range, thereby reducing the probability of beacon conflicts and ensuring neighbor discovery among robots.
[0066] Referring to Figure 2, Figure 2 shows another flowchart of the neighbor discovery conflict coordination method for robot networks according to the present invention, which includes:
[0067] Preset parameters: backoff window coefficient A, time slot adjustment step size S, initial time slot length L, and beacon duration T Beacon .
[0068] Initialize global parameters: backoff time BT = 0, real-time slot length L' = L, beacon list BeaconList = {};
[0069] Thread 1:
[0070] S201, Initialize baseline parameters: B, the number of beacons received in each round of neighbor discovery. R =0, CF flag = 0, local clock T = 1, Reply flag = 0;
[0071] S202, determine whether T is less than or equal to L', if yes, run S203, otherwise run S210;
[0072] S203, check if Reply is equal to 0. If yes, proceed to S204; otherwise, proceed to S206.
[0073] S204, check if T equals 1. If yes, send a Hello beacon and run S205; otherwise, run S207.
[0074] S205, Has a conflict been detected? If yes, set CF=1 and run S206; otherwise, run S209.
[0075] S206, send an Answer beacon and set Reply=0, then execute S209;
[0076] S207, Listen to the channel and receive the beacon, then proceed to S208;
[0077] S208, if the node receives the beacon, then set Reply = 1, B R =B R +1, add the beacon to the BeaconList and run S209; otherwise, run S209 directly.
[0078] S209, set T = T+1, and run S202;
[0079] S210, determine if CF is 1. If yes, execute S211; otherwise, execute and execute S201.
[0080] S211, Estimate the current number of neighbors N E =B R +CF+1, calculate the real-time time slot length L'=S*(N E -2), calculate the conflict window BW = A*L', BT randomly selects an integer from the interval [0, BW-1], and execute S212;
[0081] S212, if BT>0, then execute S213; otherwise, execute S201.
[0082] S213, Listen to the channel and receive the beacon, then execute S214;
[0083] S214. If a beacon is received, proceed to S215; otherwise, proceed to S216.
[0084] S215, add the beacon to BeaconList and execute S216;
[0085] S216, set BT = BT-1, execute S212;
[0086] Thread 2:
[0087] S217: If the stopping condition of the robot movement algorithm is met, the robot is stopped in place and S217 is executed again; otherwise, S218 is executed.
[0088] S218, Update the position information of neighboring nodes according to BeaconList, and clear the list BeaconList = {};
[0089] S219, running a robot movement algorithm to control the robot's movement;
[0090] S220, causing the robot to remain stationary BT*T Beacon The time is set, and S217 is executed.
[0091] In summary, this invention overcomes the problem of neighbor discovery algorithms failing to discover neighbors in robot networks due to beacon collisions, thus improving the efficiency of neighbor discovery. This invention can effectively alleviate the beacon collision problem in the practical application of neighbor discovery algorithms in mobile robot networks, providing support for the application of mobile robot networks.
[0092] The present invention will be further described in detail below with reference to specific embodiments:
[0093] Example 1: No beacon collisions when the robot is not stopping.
[0094] Preset parameters: backoff window coefficient A, time slot adjustment step size S, initial time slot length L = 4, beacon duration T Beacon ;
[0095] Initialize global parameters: backoff time BT = 0, real-time slot length L' = L, beacon list BeaconList = {};
[0096] In each iteration of the loop, thread 1 and thread 2 start and end synchronously.
[0097] Thread 1:
[0098] 1. Thread 1 initialization: The number of beacons received in each round of neighbor discovery, B. R =0, CF flag = 0, local clock T = 1, Reply flag = 0;
[0099] 2. When T=1 and Reply=0, the node sends a Hello beacon;
[0100] 3. T = T + 1;
[0101] 4. When T=2, the node listens to the channel and receives the beacon. The robot receives the beacon and sets Reply=1.
[0102] 5. T = T + 1;
[0103] 6. When T=3, since Reply=1, the robot replies to the Answer beacon and sets Reply=0;
[0104] 7. T = T + 1;
[0105] 8. T=4, the node listens to the channel and receives the beacon;
[0106] 9. T = T + 1;
[0107] 10. T=5, CF flag=0, thread 1 ends;
[0108] Thread 2:
[0109] 1. Update the location information of neighboring nodes based on the BeaconList;
[0110] 2. Clear BeaconList;
[0111] 3. Run the robot's movement algorithm to control the robot's motion;
[0112] 4. BT=0, thread 2 ends.
[0113] Example 2: Beacon collisions occur when the robot is not stopping its movement.
[0114] Preset parameters: backoff window coefficient A, time slot adjustment step size S, initial time slot length L = 4, beacon duration T Beacon ;
[0115] Initialize global parameters: backoff time BT = 0, real-time slot length L' = L, beacon list BeaconList = {};
[0116] In each iteration of the loop, thread 1 and thread 2 start and end synchronously.
[0117] Thread 1 (Regular Work Phase):
[0118] 1. Thread 1 initialization: The number of beacons received in each round of neighbor discovery, B. R =0, CF flag = 0, local clock T = 1, Reply flag = 0;
[0119] 2. When T=1 and Reply=0, the node sends a Hello beacon and detects a beacon collision, so it sets CF=1;
[0120] 3. T = T + 1;
[0121] 4. When T=2, the node listens to the channel and receives the beacon. The robot receives the beacon and sets Reply=1.
[0122] 5. T = T + 1;
[0123] 6. When T=3, since Reply=1, the robot replies to the Answer beacon and sets Reply=0;
[0124] 7. T = T + 1;
[0125] 8. T=4, the node listens to the channel and receives the beacon;
[0126] 9. T = T + 1;
[0127] Thread 2 (Regular Working Phase):
[0128] 1. Update the location information of neighboring nodes based on the BeaconList;
[0129] 2. Clear BeaconList;
[0130] 3. Run the robot's movement algorithm to control the robot's motion;
[0131] Thread 1 (Beacon Collision Handling Phase):
[0132] 1. Local clock T=5, conflict flag CF=1, enter the conflict handling stage;
[0133] 2. Estimate the current number of neighbors N. E =B R +CF+1, calculate the real-time time slot length L'=S*(N E -2), calculate the conflict window BW = A*L', and BT randomly selects an integer (assumed to be 3) from the interval [0, BW-1].
[0134] 3. BT=3, the node listens for channels and receives beacons. If a beacon is received, the beacon message is added to the BeaconList;
[0135] 4. Let BT = BT-1;
[0136] 5. BT=2, the node listens for channels and receives beacons. If a beacon is received, the beacon message is added to the BeaconList;
[0137] 6. Let BT = BT-1;
[0138] 7. BT=1: The node listens for channels and receives beacons. If a beacon is received, the beacon message is added to the BeaconList.
[0139] 8. Let BT = BT-1;
[0140] 9. When BT = 0, the current loop of thread 1 ends.
[0141] Thread 2 (Beacon Collision Handling Phase):
[0142] 1. Staying in place BT*T Beacon time;
[0143] 2. The current loop of thread 2 ends.
[0144] In this embodiment, both thread 1 and thread 2 include a regular working phase and a beacon conflict handling phase to achieve effective conflict handling.
[0145] Example 3: When the robot stops moving
[0146] Preset parameters: backoff window coefficient A, time slot adjustment step size S, initial time slot length L = 4, beacon duration T Beacon ;
[0147] Initialize global parameters: backoff time BT = 0, real-time slot length L' = L, beacon list BeaconList = {};
[0148] In each iteration of the loop, thread 1 and thread 2 start and end synchronously.
[0149] Thread 1:
[0150] 1. Thread 1 will not be affected after the robot stops moving, and the process is the same as described above.
[0151] Thread 2:
[0152] 1. Remain in place and stop moving.
[0153] The invention will be further described in detail below with reference to specific simulation experiments. In the simulation experiments, the following algorithm is applied to the classic robot motion control algorithm (Liu, H.; Chu, X.; Leung, YW; Du, R. Simple movement control algorithm for bi-connectivity in robotic sensor networks. IEEE J Sel Areas Commun, 2010, 28, 994–1005), enabling the robot to autonomously form a network topology with the largest perception range through information interaction. Each result is obtained based on statistics from 1000 independent runs.
[0154] Example 4:
[0155] Simulation experiments were conducted using the "Neighbor Discovery Conflict Coordination Method for Robot Networks" of this invention; wherein, in this invention, the backoff window coefficient A = 1 and the time slot adjustment step size S = 9 are set;
[0156] Comparative Example 1:
[0157] Simulation experiments were conducted using the CSMA / CA algorithm.
[0158] Comparative Example 2:
[0159] Simulation experiments were conducted using the DSLC (a neighbor discovery beacon collision avoidance protocol based on beacon collision detection proposed by Bian Kaigui's team) algorithm;
[0160] Comparative Example 3: Simulation experiments were conducted on the performance of the ideal case (i.e., the "ideal conflict-free case") without considering beacon conflicts.
[0161] As shown in Figure 3, in addition to the DSLC algorithm, CSMA / CA and the present invention can both enable motion control algorithms to be completed.
[0162] As shown in Figure 4, the present invention has the lowest conflict probability in most scenarios, and its advantages gradually increase as the number of nodes increases; that is, compared with other conflict mechanisms, the conflict handling performance of the method of the present invention is excellent when facing a large number of nodes.
[0163] As shown in Figure 5, the present invention outperforms other algorithms in scenarios with any number of nodes and is very close to the ideal situation.
[0164] As can be seen from the above, the method proposed in this invention surpasses other methods in terms of performance.
[0165] Accordingly, the present invention also discloses a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor, when executing the computer program, implements the steps of the aforementioned neighbor discovery conflict coordination method for robot networks. Simultaneously, the present invention also discloses a computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements the steps of the aforementioned neighbor discovery conflict coordination method for robot networks.
[0166] The above description represents the preferred embodiments of the present invention. It should be noted that those skilled in the art can make various improvements and modifications without departing from the principles of the present invention, and these improvements and modifications are also considered to be within the scope of protection of the present invention.
Claims
1. A neighbor discovery and conflict coordination method for robot networks, characterized in that, include: Initialize the reference parameters and listen to the channel and detect collisions based on the reference parameters to update the number of beacons, the beacon reception list, and the collision flag bit; Conflicts are identified based on the conflict flag bits. If no collision is detected, the reference parameters are reinitialized, and the channel is monitored and collisions are detected based on the reference parameters to update the number of beacons, the beacon reception list, and the collision flag bit. When a collision is detected, the time slot length and backoff time are adjusted according to the number of beacons, the collision flag bit, the preset time slot adjustment step size, and the preset backoff window coefficient. Then, the channel is monitored according to the backoff time to update the beacon reception list. The robot's working state is controlled according to the beacon reception list, backoff time, and preset beacon duration. The step of adjusting the real-time slot length and backoff time according to the number of beacons, the collision flag bits, the preset slot adjustment step size, and the preset backoff window coefficient includes: according to formula N E =B R +CF+1, calculate the current number of neighbors N E Among them, B R Where L is the number of beacons and CF is the collision flag bit; according to the formula L' = S * (N E -2), update the real-time slot length L', where S is the preset slot adjustment step size; calculate the conflict window BW according to the formula BW=A*L', where A is the preset backoff window coefficient; select an integer in the interval [0,BW-1] as the backoff time BT.
2. The neighbor discovery and conflict coordination method for robot networks as described in claim 1, characterized in that, The reference parameters include a local clock, the number of beacons, a collision flag, and a reply flag. The step of listening to the channel and detecting collisions based on the reference parameters to update the number of beacons, the beacon reception list, and the collision flag includes: S11, determine whether the value of the local clock is less than or equal to the real-time time slot length. If yes, proceed to S12. If no, identify the conflict based on the conflict flag bit. S12, determine whether the value of the reply flag bit is "0"; if yes, proceed to S13; otherwise, proceed to S15. S13, determine whether the value of the local clock is "1"; if yes, send a Hello beacon and run S14; otherwise, run S16. S14, determine whether a conflict is detected. If yes, set the value of the conflict flag bit to "1" and run S15. If no, run S17. S15, send an Answer beacon and set the value of the reply flag bit to "0", then execute S17; S16, listen to the channel and receive beacons. If the node receives a beacon, it sets the value of the reply flag bit to "1" and updates the beacon quantity B. R The value of B, so that R =B R +1, add the beacon to the beacon receiving list and run S17; otherwise, run S17 directly. S17, update the value of the local clock T so that T = T + 1, and run S11.
3. The neighbor discovery conflict coordination method for robot networks as described in claim 1 or 2, characterized in that, The step of identifying a conflict based on the conflict marker bit includes: Determine whether the value of the conflict flag bit is "1"; If the judgment is yes, it means that a conflict has been identified; If the result is negative, it means that no conflict was identified.
4. The neighbor discovery and conflict coordination method for robot networks as described in claim 1, characterized in that, The step of listening to the channel based on the backoff time to update the beacon reception list includes: S21, determine whether the retreat time is greater than 0. If the determination is yes, then execute S22. If the determination is negative, the reference parameters are reinitialized and the channel is monitored and collisions are detected based on the reference parameters to update the number of beacons, the beacon reception list, and the collision flag bit. S22, listen to the channel and receive the beacon. If a beacon is received, add the beacon to the beacon reception list and update the backoff time BT so that BT = BT - 1, then return to S21. If no beacon is received, update the backoff time BT to make BT = BT-1, and return to S21.
5. The neighbor discovery and conflict coordination method for robot networks as described in claim 1, characterized in that, The step of controlling the robot's working state according to the beacon reception list, the backoff time, and the preset beacon duration includes: Real-time determination of whether the robot stops; If the judgment is yes, the robot is driven to stay in place; If the determination is negative, the location information of the neighboring nodes is updated according to the beacon receiving list and the beacon receiving list is cleared. Then, the robot is driven to move to the target location and the robot stays at the target location for a specific time.
6. The neighbor discovery conflict coordination method for robot networks as described in claim 5, characterized in that, According to formula T S =BT*T Beacon Calculate the specific time T that the robot stays at the target location. S Where BT is the backoff time, and T is the distance between the two points. Beacon Set the preset beacon duration.
7. The neighbor discovery conflict coordination method for robot networks as described in claim 1, characterized in that, Before initializing the baseline parameters, the process also includes initializing global parameters, which include backoff time, real-time slot length, and beacon reception list.
8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 7.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Neighbor discovery conflict coordination method and system, computer equipment and storage medium
CN114040375A
Beaconing in small wavelength wireless networks
US20190069215A1