Target Recognition and Navigation Path Optimization Based on NAO Robot

: The NAO robot integrates sensors, vision systems, and control systems. Its monocular vision system is adopted to locate the target object in the three-dimensional space of robots. Firstly, a positioning model based on monocular vision is established according to the principle of small hole perspective. Then, the position coordinates of the target center are obtained in the image coordinate system. In the model mentioned above, the relationship between position coordinates and image coordinates is established at a certain space height. According to this relationship, the two-dimensional coordinates in the image are converted into the three-dimensional coordinates in the robot coordinate system. After getting the target location, we establish the navigation map and ﬁnd the optimal path under the unknown environment. Based on the simultaneous localization and the mapping (SLAM) theory, the sonar sensor of the NAO robot is used to detect the distance between the robot and the obstacles or between the robot and the end landmark. Moreover, the sonar sensor and the camera are used to distinguish the obstacle and the landmark. After the navigation map is built, the bi-directional parallel search strategy and the simulated annealing algorithm are introduced to improve the traditional artiﬁcial bee colony algorithm, and the improved artiﬁcial bee colony algorithm is proposed to ﬁnd an optimal path in the navigation map. Finally, the experimental results show that based on the built environment map, the robot can ﬁnd an optimal path from the origin to the landmark on the premise of avoiding obstacles.


Introduction
In recent years, the technology of the fully autonomous humanoid robot has developed rapidly and become the most popular research field. Robots can be used to replace workers to finish a lot of complex work and detect harsh environments. How to make robots integrate well into human life is also a hot topic [1]. Robot-based target location and navigation path planning are the most important functions of humanoid robots. The NAO robot as a bipedal robot compared to multi-legged robots and wheeled robots has the advantage of flexibility in a low gait environment, and for some specific tasks, such as target object grasping, etc., it can perform more like a human [2]. Many research results have been on target location and navigation path optimization based on the NAO robot. For example, the camera calibration is carried out to determine the parameters which define the relationship between the reference 3D coordinate system and the camera coordinate frame. These parameters are combined with the transformation and the parameters related to the camera [3]. According to the recognized objects in the robot database, the robot's monocular camera can realize the object recognition and avoid obstacles through some measures. In actual experiments, the Nao robot can effectively perform actions in a messy environment [4], improving the gait planning under complex working conditions to save

NAO Robot's Monocular Vision Spatial Target Localization
Because the NAO robot can only work with a single camera, this paper proposed to use the monocular vision positioning technology for target positioning. First, a monocular vision positioning model is established [22]. Through the geometric calculation, the twodimensional coordinates in the image are transformed into three-dimensional coordinates in the robot coordinate system to achieve the spatial target positioning. As a typical system of visual positioning system [23], the monocular vision system has achieved many research results on the target position positioning model. However, the height of the actual target object has been ignored in many studies. In the grasping experiment based on the Nao robot, the object should appear at a certain height, so the positioning based on the plane target cannot meet the requirements. In this paper, the position coordinates of the target center in the image coordinate system are obtained with the image recognition method, and then the monocular vision positioning model is used to establish the relationship between the positions coordinates and the image coordinates at a fixed height in space. Finally, the position coordinates of the target in the NAO robot coordinate system are obtained.

Image Preprocessing
As the basis of target recognition, image preprocessing is also the data module of subsequent image processing stages. First, the image needs to be separated and filtered through specific channels [24]. The color image formats supported by Nao robots mainly include YUV422, RGB, and HSV, among which RGB color space is the most common. It is composed of three colors: R (red), G (green), and B (blue). Other colors are composed of them in different proportions [25]. During the experimental test, it is found that in general, the red ball can be accurately separated using either RGB or HSV color spaces. However, in the case of poor light (too strong or too weak), HSV color space is more stable. Therefore, this paper adopts HSV color space as the color space of the Nao robot visual image processing.
How to separate the target from the image according to the threshold is also one of the important tasks of robot target recognition. For the color image obtained with the camera, it is difficult to separate the target with binarization according to a threshold, so it is necessary to sample and calibrate the thresholds of the three components. Under the illumination condition of the actual experimental environment, select the color area of the target in the image, count the color characteristics of each point, and get the upper and lower limit values of each component in the HSV color space [26]. The image is binarized according to the threshold, and the results are observed and adjusted in time. When the effect is ideal, the corresponding threshold is recorded as the final threshold. After the threshold is determined, the image needs to be filtered. Because Gaussian filtering can effectively suppress noise and smooth the image, this paper uses Gaussian filtering [27] to blur the local information of the image, which is conducive to the next step of Hough circle detection [28].

Target Recognition
In the image preprocessing stage, the red image areas have been marked, but these areas contain some interference, which needs to be further extracted through geometric features. Hough circle detection [29,30] is used in this paper to further extract the target and obtain its central coordinates. In the process of using the Hough circle transformation to detect the shape, each boundary pixel (x, y) of the image is extracted with the Canny detection algorithm, and then judged according to Equation (1). If the three parameters of the detection circle, namely C (x 0 , y 0 , r), meet Equation (1), the value of the accumulator will be increased by 1, and finally, a group of peaks will be selected, which is the required center coordinates and radius.
During the experiment, many small balls may be detected using the Hough circle transform, which may also contain some noise, so the results need to be further processed. For each red ball detected, a green circumscribed square, with the center of the red ball and 4 times the radius of the red ball as the side length, is drawn. Then, we calculate the ratio of red and green pixels in the square area. In the ideal case, the proportion of red pixels is 0.196, as shown in Equation (2), and the proportion of green pixels is 0.804. In the actual detection, there are many uncertain factors (such as circle detection error, a color change caused by uneven light, interferences, etc.), which are difficult to achieve in the ideal situation. During the experiment, we set the condition that the percentage of red and green pixels is 0.12 and 0.1, respectively.

Monocular Vision Location and Ranging
The monocular vision positioning model is shown in Figure 1. According to the small hole perspective model, the position of the target in space is obtained through the transformation between the image coordinates and the actual space coordinates. When positioning the target object in robot coordinates, the height of the target should be lower than that of the camera. ideal situation. During the experiment, we set the condition that the percentage of red and green pixels is 0.12 and 0.1, respectively.

Monocular Vision Location and Ranging
The monocular vision positioning model is shown in Figure 1. According to the small hole perspective model, the position of the target in space is obtained through the transformation between the image coordinates and the actual space coordinates. When positioning the target object in robot coordinates, the height of the target should be lower than that of the camera. The local image can be obtained by observing the monocular vision positioning model, in which (a) top view, (b) side view, and (c) image coordinate system is shown in Figure 2.   ideal situation. During the experiment, we set the condition that the percentage of red and green pixels is 0.12 and 0.1, respectively.

Monocular Vision Location and Ranging
The monocular vision positioning model is shown in Figure 1. According to the small hole perspective model, the position of the target in space is obtained through the transformation between the image coordinates and the actual space coordinates. When positioning the target object in robot coordinates, the height of the target should be lower than that of the camera.  Figure 2.   In the figure, θ headpitch is the head pitch angle, θ headyaw is the head deflection angle, θ ball pitch is the vertical field angle, θ ballyaw is the horizontal field angle, H is the camera height,w is the image width, h is the image height, (X 0 , Y 0 ) is the image coordinate system coordinates, (X 1 , Y 1 ) is the world coordinate system coordinates, r is the small ball radius, θ c_direction is 47.64 • .
After image preprocessing, (X 0 , Y 0 ), w and h are the image resolution 640 × 480 pix, θ c_pitch is the maximum value of the camera's vertical field angle, θ c_yaw is the maximum value of the camera's pitch angle, where H, θ headpitch , X camera , Y camera are obtained through internal functions.
tan( θ c_direction ×pi 180 From Equations (3)-(6), the coordinates of the small ball world coordinate system (X 1 , Y 1 ) can be obtained. When the ball has a certain height, the NAO robot coordinate system is taken as the three-dimensional coordinate system. The height of the small ball is h 1 , modify Equation (5).
Bring Equation (9) into Equation (6) to get the coordinates of the ball at a certain height; h 2 is the height from the origin to the ground under the robot coordinate system. The coordinates of the ball in the robot coordinate system are (X 1 , There is a certain error in the spherical coordinates obtained by calculation. To eliminate the error, the error coefficient k is proposed to compensate for the actual distance, as shown in: The error coefficient k can be solved with a quartic polynomial: Remark 1. Since the two cameras of the NAO robot are on the forehead and mouth (hardware structure design problem), the overlapping area scanned with the two cameras is small. Thus, the stereo vision and full vision systems cannot be used in the NAO robot. Furthermore, as a typical system of visual positioning system, the monocular vision system has achieved many research achievements on the target location model, which has good stability.

Simultaneous Localization and Mapping Theory
The SLAM is a theoretical framework to build real-time location and graphs, which are widely used in navigation task. At present, the theory has a lot of development, such as the EKF-SLAM algorithm, the visual SLAM algorithm, and so on. The basic theory of the SLAM is that the robot avoids obstacles automatically and navigates by walking. To pinpoint the robot's current position, the grid theory is introduced. The robot's current position can be seen as one of the grids of the area. The robot walks from the current grid to the next grid. The procedure is shown in Figure 3. position can be seen as one of the grids of the area. The robot walks from the current grid to the next grid. The procedure is shown in Figure 3.  In the theoretical framework of SLAM, there are two important concepts, the Q-learning algorithm, and the K-means algorithm, to help the robot build an environment map.

Q-Learning Algorithm
Q-learning algorithm is a method of online iterative calculation and incremental learning, which can use an autonomous agent to achieve the objective optimal action through constant learning and selection under the premise of not establishing the environmental model. With the increase of self-learning times, the value of Q becomes larger and larger until convergence in the end. Therefore, updating the value of Q is the key to the Q-learning algorithm. The update rule is written as Equation (12). In the theoretical framework of SLAM, there are two important concepts, the Q-learning algorithm, and the K-means algorithm, to help the robot build an environment map.

Q-Learning Algorithm
Q-learning algorithm is a method of online iterative calculation and incremental learning, which can use an autonomous agent to achieve the objective optimal action through Appl. Sci. 2022, 12, 8466 6 of 14 constant learning and selection under the premise of not establishing the environmental model. With the increase of self-learning times, the value of Q becomes larger and larger until convergence in the end. Therefore, updating the value of Q is the key to the Q-learning algorithm. The update rule is written as Equation (12).
where R(s, a) is the reward element, Q(s, a) is the training value of action a under the state s, max a Q(ŝ,â) is the maximum value of all possible actions in the next stateŝ, γ ∈ (0, 1) and is a learning parameter.

K-Means Algorithm
K-means algorithm [11] takes the Euclidean distance as the similarity criterion and the error sum of squares as the criterion function, which means taking the distance between the data points and the prototype as the optimized objective function and getting the adjustment criterion of the iterative operation using a method for finding the extreme value of the function.
The raw data set is (x 1 , x 2 , . . . , x n ), each datum x i is the dimensional vector of d. The purpose of clustering is to classify the raw data into k class under the condition of the given classification group number k, namely S = {S 1 , S 2 , . . . , S k }. In the numerical model, the minimum value is adopted in Equation (13).

Navigation Map Building
The main purpose of the robot navigation path study is to update the value of Q at different states and different behaviors in real-time. There are four movement directions of the robot from the current state to the next state: forward, backward, left, and right. The selection of next state depends on the value of Q. The movement probability P is introduced to decide next direction. The movement probability is written as Equation (14).
where P(a i |s) represents the probability of direction a i in the current state s. Q(s, a i ) represents the Q value of direction a i in the current state s. The direction of maximum probability is the direction of the robot to move to a new state. Before the robot begins to execute the navigation task, the initial value of Q is 0 in any behaviors in any state, the robot updates the value of Q in real-time during walking according to the surrounding environment. When the robot meets obstacles, a penalty factor is added. When the robot meets the final landmark, an incentive factor is added. The scope of the obstacle is R 1 , when the distance between the obstacle and the robot is less than d 1 ; the penalty factor R(s, a) is −100, namely, R(s, a) = −100. The scope of the end landmark is R 2 , when the distance between the final landmark and the robot is less than d 2 ; the incentive factor R(s, a) is 100, namely, R(s, a) = 100. Figure 4 shows this process. The value of the penalty factor and incentive factor is written as where r represents the distance between the robot and obstacles or and the final landmark in the current state.
In many cases, the traditional K-means algorithm can only classi which limit the popularization of the K-means algorithm. Therefore means algorithm is improved in this experiment. The procedure of cl the improved K-means algorithm is as follows: (1) Randomly choose k elements from n elements as the center of k c (2) According to average, each object is assigned to similar clusters.
(3) Recalculate the distance between each cluster and the shortest clu (4) If the distance of any two clusters is less than 0 d , the two cluste average distance of two original cluster centers is taken as the cen Otherwise, go to step (2) to continue. (5) If the result no longer changes, the algorithm is over. Otherwis continue.
The procedure of Simultaneous Localization and Mapping is as premise of avoiding obstacles: (1) Collect the surrounding environment with two sonar sensors. The value of the penalty factor and incentive factor is written as Equation (15).
where r represents the distance between the robot and obstacles or between the robot and the final landmark in the current state. In many cases, the traditional K-means algorithm can only classify specified groups which limit the popularization of the K-means algorithm. Therefore, the traditional Kmeans algorithm is improved in this experiment. The procedure of classifying data with the improved K-means algorithm is as follows: (1) Randomly choose k elements from n elements as the center of k clusters.
(2) According to average, each object is assigned to similar clusters.
(3) Recalculate the distance between each cluster and the shortest cluster. (4) If the distance of any two clusters is less than d 0 , the two clusters are merged. The average distance of two original cluster centers is taken as the center of a new cluster. Otherwise, go to step (2) to continue. (5) If the result no longer changes, the algorithm is over. Otherwise, go to step (4) to continue.
The procedure of Simultaneous Localization and Mapping is as follows under the premise of avoiding obstacles: (1) Collect the surrounding environment with two sonar sensors.
(2) Classify these data with the K-means clustering algorithm to detect the number of obstacles and the distance between robot and obstacle. (3) Make sure the value of penalty and incentive factor according to the detecting results. (4) The robot updates Q value according to Equation (12). (5) The robot selects the next state according to Equation (14). (6) If the robot meets the end landmark, the experiment is over. Otherwise, go to (1) to continue.

Map Environment Design for Path Planning
The step length of the NAO robot is 0.04m, and four steps are taken as a grid with the size of 0.16m. According to the preset mapping data, the obstacle map is established in MATLAB, as shown in Figure 5. The initial coordinates are (4,5), and the end positions are (16,16), in which there are two obstacles.

Map Environment Design for Path Planning
The step length of the NAO robot is 0.04m, and four steps are taken the size of 0.16m. According to the preset mapping data, the obstacle map in MATLAB, as shown in Figure 5. The initial coordinates are (4,5), and the are (16,16), in which there are two obstacles.

Improved ABC Algorithm for Finding the Optimal Path
After the map is built, the optimal path can be searched with an impr bee colony algorithm in the map. However, the traditional ABC algori roulette strategy. The strategy has the disadvantage of slow convergence s optimum. To find a better path, a bi-directional parallel search strategy a annealing algorithm are introduced to improve the traditional artifici algorithm.
In the process of searching the optimal path, every time a bee wal direction is random. The bee may move in the grid of obstacles, so the met is introduced to decide the path length in Equation (16): where L is the path length, l is the path length at each step, n μ is the without obstacles, o μ is the weight factor with obstacles.
The basic theory of the bi-directional parallel search strategy is that th at the beginning and the searcher e X at the end search the optimal path at If the two search paths overlap, the search path of two searchers is deem path. The bi-directional parallel strategy contains three situations: (1) The two search paths do not overlap as Figure 6. The search path is the (2) The two searchers meet at a point as Figure 7. The search path is the co path.

Improved ABC Algorithm for Finding the Optimal Path
After the map is built, the optimal path can be searched with an improved artificial bee colony algorithm in the map. However, the traditional ABC algorithm adopts a roulette strategy. The strategy has the disadvantage of slow convergence speed and local optimum. To find a better path, a bi-directional parallel search strategy and simulated annealing algorithm are introduced to improve the traditional artificial bee colony algorithm.
In the process of searching the optimal path, every time a bee walks a grid, the direction is random. The bee may move in the grid of obstacles, so the method of weight is introduced to decide the path length in Equation (16): where L is the path length, l is the path length at each step, µ n is the weight factor without obstacles, µ o is the weight factor with obstacles. The basic theory of the bi-directional parallel search strategy is that the searcher X s at the beginning and the searcher X e at the end search the optimal path at the same time. If the two search paths overlap, the search path of two searchers is deemed as the best path. The bi-directional parallel strategy contains three situations: (1) The two search paths do not overlap as Figure 6. The search path is the shortest path.
(2) The two searchers meet at a point as Figure 7. The search path is the common search path.    The simulation annealing algorithm is from the solid annealing principle. The alg rithm is used in the combinatorial optimization field and adopts an iterative solution str egy. The simulation annealing algorithm makes temperature decrease from a large val at certain parameters based on the principle of temperature drop. The procedure of u dating food source with the simulation annealing algorithm is as follows: (1) Initialize starting temperature value.    The simulation annealing algorithm is from the solid annealing principle. The alg rithm is used in the combinatorial optimization field and adopts an iterative solution stra egy. The simulation annealing algorithm makes temperature decrease from a large val at certain parameters based on the principle of temperature drop. The procedure of u dating food source with the simulation annealing algorithm is as follows: (1) Initialize starting temperature value.  The simulation annealing algorithm is from the solid annealing principle. The algorithm is used in the combinatorial optimization field and adopts an iterative solution strategy. The simulation annealing algorithm makes temperature decrease from a large value at certain parameters based on the principle of temperature drop. The procedure of updating food source with the simulation annealing algorithm is as follows: (1) Initialize starting temperature value.
(2) The food source is updated at each generation, the fitness of the new food source is f itness new , and the fitness of the original food source is f itness old , If (3) Determine whether to replace the original food source with P = e − ∆ f itness kT , where k is a parameter between 0 and 1. T is the temperature value at every moment and satisfies T(t) = kT(t − 1), namely, the current temperature value is the temperature after the decay of the last time.
The simulation annealing algorithm will be finished if the optimization process is over. Otherwise, go to (2) to continue.
When bees search the new food source around the original food source, a bi-directional parallel search strategy is adopted. Figure 9 shows that searchers at the beginning and the end find a random position in the original path and continue searching a new path from this position. Suppose the fitness of the new food source is better than the original. In that case, a simulated annealing algorithm is introduced to decide whether the new food source will replace the original food source.
When bees search the new food source around the original food source, a bi-di tional parallel search strategy is adopted. Figure 9 shows that searchers at the beginn and the end find a random position in the original path and continue searching a n path from this position. Suppose the fitness of the new food source is better than the o inal. In that case, a simulated annealing algorithm is introduced to decide whether new food source will replace the original food source.

Remark 2.
The most important feature of the simulated annealing algorithm is that it can obtain more pos solutions than other algorithms when selecting the initial solution. This ensures that it does not fall into l optimality prematurely at the initial stage of the algorithm due to the tendency of the solutions. As the a rithm enters the later stage, the control parameter t decreases, and the possibility of accepting inferior solut gradually decreases, and when t reaches the limit, the possibility of accepting inferior solutions disappe and the probability approaches zero. In this way, after the artificial bee colony algorithm falls into the l optimum, the ability to jump out of the local optimum can be greatly improved, so that the global optim can be obtained more effectively for the optimization problem. By using the characteristics of the simul annealing algorithm to improve the artificial bee colony algorithm, it is possible to avoid the IABC algori from falling into local minima to ensure its stability.

Experimental Algorithm Verification
To verify the performance of the IABC algorithm, the ant colony optimization al rithm, the Chaotic genetic algorithm, and the traditional artificial bee colony algorit are used to compare with the improved artificial bee colony algorithm. Table 1 sho these parameters of the improved artificial bee colony algorithm. The fitness curve is shown, and the convergence speeds of the ABC algorithm a the IABC algorithm can be seen in Figure 10. The optimal path obtained with the proved artificial bee colony algorithm is better than that obtained with other algorith

Remark 2.
The most important feature of the simulated annealing algorithm is that it can obtain more possible solutions than other algorithms when selecting the initial solution. This ensures that it does not fall into local optimality prematurely at the initial stage of the algorithm due to the tendency of the solutions. As the algorithm enters the later stage, the control parameter t decreases, and the possibility of accepting inferior solutions gradually decreases, and when t reaches the limit, the possibility of accepting inferior solutions disappears, and the probability approaches zero. In this way, after the artificial bee colony algorithm falls into the local optimum, the ability to jump out of the local optimum can be greatly improved, so that the global optimum can be obtained more effectively for the optimization problem. By using the characteristics of the simulated annealing algorithm to improve the artificial bee colony algorithm, it is possible to avoid the IABC algorithm from falling into local minima to ensure its stability.

Experimental Algorithm Verification
To verify the performance of the IABC algorithm, the ant colony optimization algorithm, the Chaotic genetic algorithm, and the traditional artificial bee colony algorithm are used to compare with the improved artificial bee colony algorithm. Table 1 shows these parameters of the improved artificial bee colony algorithm. The fitness curve is shown, and the convergence speeds of the ABC algorithm and the IABC algorithm can be seen in Figure 10. The optimal path obtained with the improved artificial bee colony algorithm is better than that obtained with other algorithms. After 400 times, the traditional artificial bee colony algorithm converges to a stable value. However, only after 266 times, the improved artificial bee colony algorithm converges to a stable value. Appl. Sci. 2022, 12, 8466 11 of 15 After 400 times, the traditional artificial bee colony algorithm converges to a stable value. However, only after 266 times, the improved artificial bee colony algorithm converges to a stable value. Figure 10. Fitness curve.
The experiment result of the steps is shown in Figure 11. From this figure, the optimal path is 16 steps with the traditional artificial bee colony algorithm, but only 13 steps can be found with the improved artificial bee colony algorithm, so the improved artificial bee colony algorithm can find the optimal path and has a faster convergence speed.
(a) (b) Figure 11. Optimal path with the ABC algorithm and the IABC algorithm: (a) optimal path with ABC algorithm; (b) optimal path with IABC algorithm.
The optimized path obtained with the offline IABC algorithm is imported into the NAO robot for online experimental verification. The experimental process is as follows: the step length of the NAO robot is set to 0.04m, and the walking path of the NAO robot is set again according to Figure 11b and Table 2, with the previous termination point coordinates as the starting point coordinate and the starting point coordinate as the termination point coordinate. The comparison results of the verification are shown in Figure  12. The experiment result of the steps is shown in Figure 11. From this figure, the optimal path is 16 steps with the traditional artificial bee colony algorithm, but only 13 steps can be found with the improved artificial bee colony algorithm, so the improved artificial bee colony algorithm can find the optimal path and has a faster convergence speed. Appl. Sci. 2022, 12, 8466 11 of 15 After 400 times, the traditional artificial bee colony algorithm converges to a stable value. However, only after 266 times, the improved artificial bee colony algorithm converges to a stable value. Figure 10. Fitness curve.
The experiment result of the steps is shown in Figure 11. From this figure, the optimal path is 16 steps with the traditional artificial bee colony algorithm, but only 13 steps can be found with the improved artificial bee colony algorithm, so the improved artificial bee colony algorithm can find the optimal path and has a faster convergence speed.
(a) (b) Figure 11. Optimal path with the ABC algorithm and the IABC algorithm: (a) optimal path with ABC algorithm; (b) optimal path with IABC algorithm.
The optimized path obtained with the offline IABC algorithm is imported into the NAO robot for online experimental verification. The experimental process is as follows: the step length of the NAO robot is set to 0.04m, and the walking path of the NAO robot is set again according to Figure 11b and Table 2, with the previous termination point coordinates as the starting point coordinate and the starting point coordinate as the termination point coordinate. The comparison results of the verification are shown in Figure  12. The optimized path obtained with the offline IABC algorithm is imported into the NAO robot for online experimental verification. The experimental process is as follows: the step length of the NAO robot is set to 0.04m, and the walking path of the NAO robot is set again according to Figure 11b and Table 2, with the previous termination point coordinates as the starting point coordinate and the starting point coordinate as the termination point coordinate. The comparison results of the verification are shown in Figure 12.  It can be seen from Figure 12 that the optimal setting line in the path optimization simulation of the IABC algorithm does not encounter obstacles; so according to the set path, Nao will not encounter obstacles when walking on this experimental platform. When the Nao robot reaches the position with coordinates of (2.56 m, 2.56 m), it stops walking. However, due to the material problems of the bottom of the NAO's foot and the floor, the insufficient friction between the bottom of the foot and the ground, and the accuracy of the deflection angle, Nao produces a certain offset during walking. Therefore, the actual effect of walking on the optimal path will differ from that under the ideal condition, but it is within the allowable range of error. The Nao robot can realize path optimization while avoiding obstacles.

NAO Robot Experimental Validation
To verify the feasibility of the IABC algorithm on the NAO robot, the map was constructed offline, and the path was optimized, and experiments were conducted online to verify. NAO robot is a bipedal intelligent robot developed by Aldebaran Robotics, which combines many sensor devices into one, and its hardware equipment includes CPU, ultrasonic, gyroscope, infrared, and so on. The two camera sensors on the NAO robot are regarded as the main hardware facility of the vision location system, one on the forehead and one on the mouth, that can "see" things around it. The camera can take both photo images and record videos, all implemented by NAO's vision software module. As seen in Figure 13, the NAO robot can achieve recognition of targets at different locations and reach the specified location as expected. It can be seen from Figure 12 that the optimal setting line in the path optimization simulation of the IABC algorithm does not encounter obstacles; so according to the set path, Nao will not encounter obstacles when walking on this experimental platform. When the Nao robot reaches the position with coordinates of (2.56 m, 2.56 m), it stops walking. However, due to the material problems of the bottom of the NAO's foot and the floor, the insufficient friction between the bottom of the foot and the ground, and the accuracy of the deflection angle, Nao produces a certain offset during walking. Therefore, the actual effect of walking on the optimal path will differ from that under the ideal condition, but it is within the allowable range of error. The Nao robot can realize path optimization while avoiding obstacles.

NAO Robot Experimental Validation
To verify the feasibility of the IABC algorithm on the NAO robot, the map was constructed offline, and the path was optimized, and experiments were conducted online to verify. NAO robot is a bipedal intelligent robot developed by Aldebaran Robotics, which combines many sensor devices into one, and its hardware equipment includes CPU, ultrasonic, gyroscope, infrared, and so on. The two camera sensors on the NAO robot are regarded as the main hardware facility of the vision location system, one on the forehead and one on the mouth, that can "see" things around it. The camera can take both photo images and record videos, all implemented by NAO's vision software module. As seen in Figure 13, the NAO robot can achieve recognition of targets at different locations and reach the specified location as expected.

Conclusions
The NAO robot can obtain the position coordinates of the target based on the monocular vision system and then walk near the target. The experimental results show that the target position error is about 1~2cm after compensation, so the accuracy of the subsequent robot

Conclusions
The NAO robot can obtain the position coordinates of the target based on the monocular vision system and then walk near the target. The experimental results show that the target position error is about 1~2cm after compensation, so the accuracy of the subsequent robot walking is guaranteed. In addition, the environment navigation map is built with the SLAM theory, Q-learning algorithm, and K-means algorithm for the NAO robot to avoid obstacles in an unknown environment. The bi-directional parallel search strategy and simulation annealing algorithm are introduced to improve the traditional artificial bee colony algorithm. The improved artificial bee colony algorithm has a faster convergence speed and a better solution. The improved artificial bee colony algorithm is adopted to plan the optimal path in the built navigation map. The experiment results show that the optimal path can be found on the map with the improved artificial bee colony algorithm better and faster. The overall system can meet the requirements of target recognition and navigation of the Nao robot. Finally, the expected goals can be achieved. This paper verifies the fast convergence and improved optimization results of IABC, which is the key foundation for scheduling implemented by the central computer. In the future, single-robot path planning and multirobot cooperative control can be supervised by a central computer communicating with the NAO robot in real-time via WIFI. It deserves further research and validation.