Using an Adaptive Fuzzy Neural Network Based on a Multi-Strategy-Based Artificial Bee Colony for Mobile Robot Control

This study proposes an adaptive fuzzy neural network (AFNN) based on a multi-strategy artificial bee colony (MSABC) algorithm for achieving an actual mobile robot navigation control. During the navigation control process, the AFNN inputs are the distance between the ultrasonic sensors and the angle between the mobile robot and the target, and the AFNN outputs are the robot’s leftand right-wheel speeds. A fitness function in reinforcement learning is defined to evaluate the navigation control performance of AFNN. The proposed MSABC algorithm improves the poor exploitation disadvantage in the traditional artificial bee colony (ABC) and adopts the mutation strategies of a differential evolution to balance exploration and exploitation. To escape in special environments, a manual wall-following fuzzy logic controller (WF-FLC) is designed. The experimental results show that the proposed MSABC method has improved the performance of average fitness, navigation time, and travel distance by 79.75%, 33.03%, and 10.74%, respectively, compared with the traditional ABC method. To prove the feasibility of the proposed controller, experiments were carried out on the actual PIONEER 3-DX mobile robot, and the proposed navigation control method was successfully completed.


Introduction
The navigation control of mobile robots is a popular research topic in the robot study area. Navigation is an easy task for animals and humans as they have the ability to think. However, it is difficult for robots because they lack this ability. The robot navigation method has been classified into the hybrid behavior [1,2] and the behavior-based methods [3][4][5][6][7][8]. In the hybrid behavior, Seraji and Howard [1] used a distance sensor and a camera for detecting the environment around a robot. The robot navigation strategy has been designed using three independent behaviors, regional traverse-terrain, local avoid-obstacle, and global seek-goal. Finally, the center of gravity method was used by three consecutive defuzzifier steer angles and speeds of a robot navigating in an unknown environment. Foudil et al. [2] divided navigation control into two fuzzy controllers, obstacle avoidance and goal seeking, which were used to design the steer angle of obstacle avoidance and the goal seeking rule table. Thereafter, the outputs of the two fuzzy controllers, which controlled the steer angle of the mobile robot, were combined. In particular, the fuzzy controller for the obstacle avoidance task was designed using the distance sensor. By contrast, the mobile robot used the hierarchy fuzzy controller for the obstacle avoidance task, assuming that the mobile robot can accurately control the navigation. In the behavior-based method, Pratihar et al. [3] addressed the problem of mobile robot navigation in any environment. They used a fuzzy controller to design the steer angle of the mobile robot and a genetic algorithm (GA) was applied to determine the optimal antecedent parameter that determines the best fuzzy controller implication in a mobile robot automatic navigation task. Boubertakh et al. [4] proposed an improved fuzzy Q-learning (IFQ) algorithm and used IFQ reinforcement-learned navigation in an unknown environment. Juang and Chang [5] proposed a particle swarm optimization (PSO) group-based application fuzzy controller. A new reinforcement-learning wall-following fuzzy controller is proposed and adapts to any environment. Last, according to distance information of sensors that switch wall-following control and goal seeking control, Yang et al. [6] proposed a new switch strategy that determines obstacle avoidance and goal seeking in an unknown environment, in accordance with the Q-learning in which the mobile robot learns to determine obstacle avoidance and goal seeking. Moreover, they used a neural network to determine the current environment through weight calculation of the left-and right-wheel speeds of the mobile robot. Learning of the neural network is an application genetic algorithm that coding for the optimal best weight makes the neural network slow down in error. Finally, the new switch strategy is combined with the existing one for obtaining mobile robot navigation. Nakhaeinia and Karasfi [7] used a fuzzy controller in which the obstacle position controlled the mobile robot speed and a steer angle. A laser is used as a distance sensor for scanning an unknown environment. When a mobile robot is in a concave environment, it produces a visual target in the neighborhood environment. The mobile robot is given up the path of actual target change to go to the path of the visual target. When the mobile robot reaches the visual target, repeating the planned path of the actual target, which escapes the local trap, the navigation task is completed. Mohanty and Parhi [8] used a neural fuzzy network controller that solves the mobile robot navigation problem. A distance sensor is applied to acquire information about the angle between the goal and the mobile robot. They also used the backpropagation algorithm to determine the best neural fuzzy controller. Finally, the experimental result indicated that a neural fuzzy controller can perform the navigation problem and address the shortcoming of parameter definition in a traditional fuzzy controller.
The definition of a neural fuzzy controller parameter is a popular research topic. Recently, evolutionary algorithms (EAs) [9,10] for creating optimal controller parameters have been extensively researched. EA is an inspirational algorithm in which a random search is usually applied to a complex space or multiple modules (actual function application is unknown). In addition, the EA may fall into a suboptimal solution. Individual EAs mainly imitate biological behavior and populations, which make EA development an important field of study. Most well-known algorithms have been widely applied as GA [11], PSO [12], and differential evolution (DE) [13]. These algorithms have been successful used in many optimal parameter problems. GA exhibits the best ability for global solution space. However, it can easily fall into the local minimum and its search solution takes considerable time [14]. The PSO algorithm, proposed by Kennedy and Eberhart, imitates bird and fish behaviors for finding food. This algorithm applies the concept of cluster movement for determining the front best solution in the search space. The algorithm can easily be applied in the optimization technology because it has a strong search ability and, therefore, has been applied to many actual fields [15,16]. The DE algorithm is a parallel and direct search technology. It has a strong search ability and convergence ability for the application of optimal real numbers [17][18][19], but still suffers from accuracy and stability problems [20]. Yang [21] proposed the virtual bee algorithm to optimal functions of two dimensions, which is produced after the star movement in search space interact with each other while the bee finds some food. The solution of this problem lies in defining each bee's interaction strength. Pham et al. [22] proposed another bee algorithm that uses several control parameters. To address the function of multiple variables and multiple modules, Karaboga and Basturk [23] proposed an artificial bee colony algorithm (ABC). They use ABC compare the other algorithm test some problems [24][25][26]. They expanded the application of the ABC algorithm for solving the traveling salesman problem [27], discovery of conserved regions in DNA sequences [28], and training ANFIS [29].
In this study, an adaptive fuzzy neural network (AFNN) based on a multi-strategy artificial bee colony (MSABC) algorithm is proposed for achieving an actual mobile robot navigation control and escape special environment behavior to avoid special obstacles. The proposed AFNN is a four-layer structure. Nodes in layer one represent input linguistic variables. Nodes in layer two act as membership functions, which express the input fuzzy linguistic variables. Gaussian membership functions are used in this layer. Nodes in layer three are equal to the number of fuzzy sets that correspond to each external input linguistic variable. The node in layer four is called the output node. During the navigation control process, the distance between the ultrasonic sensor and the obstacle and the angle between the mobile robot and the target are used as inputs of the AFNN, and the robot's left-and right-wheel speeds are used as outputs of the AFNN. In the AFNN, the definition of fuzzy membership function in layer two is used to calculate the membership degree of the distance and the angle during the navigation control process. A fitness function is defined to evaluate the AFNN performance in the navigation control. The fitness function includes the following three control factors: navigation time, distance between the start and the target, and distance between the mobile robot and target travel. The traditional ABC algorithm simulates the intelligent foraging behavior of honey-bee swarms, which are good at exploration but poor at exploitation. The proposed MSABC algorithm adopts the mutation strategies of a differential evolution to balance exploration and exploitation.
The remainder of the paper is organized as follows. Section 2 introduces the structure of a Pioneer 3-DX mobile robot. Details on AFNN and its related MSABC learning algorithm are described in Section 3. Section 4 presents navigation control of a mobile robot. The experimental results of mobile robot navigation control are illustrated in Section 5. Section 6 offers conclusions for this study.

The Structure of Pioneer 3-DX Mobile Robot
In this section, a Pioneer 3-DX mobile robot is introduced and shown in Figure 1a. This robot is heavy, has a long movement time, and can be widely applied to problems such as laser mapping, navigation, and stereo vision systems. The robot body has dimensions of 45 × 38 × 25 cm 3 . This robot is equipped with eight sonar sensors, which detect the surrounding unknown environment, as shown in Figure 1b. The sonar sensors conduct measurements in between approximately 0.15 and 4.75 m. In addition, the robot is equipped with two wheels and one caster, with a maximum speed of 1.2 m/s, as well as a compass, which provides current direction.
In this study, an adaptive fuzzy neural network (AFNN) based on a multi-strategy artificial bee colony (MSABC) algorithm is proposed for achieving an actual mobile robot navigation control and escape special environment behavior to avoid special obstacles. The proposed AFNN is a four-layer structure. Nodes in layer one represent input linguistic variables. Nodes in layer two act as membership functions, which express the input fuzzy linguistic variables. Gaussian membership functions are used in this layer. Nodes in layer three are equal to the number of fuzzy sets that correspond to each external input linguistic variable. The node in layer four is called the output node. During the navigation control process, the distance between the ultrasonic sensor and the obstacle and the angle between the mobile robot and the target are used as inputs of the AFNN, and the robot's left-and right-wheel speeds are used as outputs of the AFNN. In the AFNN, the definition of fuzzy membership function in layer two is used to calculate the membership degree of the distance and the angle during the navigation control process. A fitness function is defined to evaluate the AFNN performance in the navigation control. The fitness function includes the following three control factors: navigation time, distance between the start and the target, and distance between the mobile robot and target travel. The traditional ABC algorithm simulates the intelligent foraging behavior of honey-bee swarms, which are good at exploration but poor at exploitation. The proposed MSABC algorithm adopts the mutation strategies of a differential evolution to balance exploration and exploitation.
The remainder of the paper is organized as follows. Section 2 introduces the structure of a Pioneer 3-DX mobile robot. Details on AFNN and its related MSABC learning algorithm are described in Section 3. Section 4 presents navigation control of a mobile robot. The experimental results of mobile robot navigation control are illustrated in Section 5. Section 6 offers conclusions for this study.

The Structure of Pioneer 3-DX Mobile Robot
In this section, a Pioneer 3-DX mobile robot is introduced and shown in Figure 1a. This robot is heavy, has a long movement time, and can be widely applied to problems such as laser mapping, navigation, and stereo vision systems. The robot body has dimensions of 45 × 38 × 25 cm 3 . This robot is equipped with eight sonar sensors, which detect the surrounding unknown environment, as shown in Figure 1b. The sonar sensors conduct measurements in between approximately 0.15 and 4.75 m. In addition, the robot is equipped with two wheels and one caster, with a maximum speed of 1.2 m/s, as well as a compass, which provides current direction.
In this study, the original sensor values have a lower detection range of approximately 0.2-3 m in the simulation and experiments, as a larger range is unnecessary for a training environment. The eight ultrasonic sensors (S0, S1, …, S7) were allocated into three signs: Left, Front, and Right. Left is the distance between the obstacle and left sensor (i.e., S0, and S1) of the robot, Front is the distance between the obstacle and the front sensor (i.e., S2, S3, S4 and S5) of the robot, and Right is the distance between the obstacle and right sensor (i.e., S6 and S7) of the robot. In this study, the original sensor values have a lower detection range of approximately 0.2-3 m in the simulation and experiments, as a larger range is unnecessary for a training environment. The eight ultrasonic sensors (S 0 , S 1 , . . . , S 7 ) were allocated into three signs: Left, Front, and Right. Left is the distance between the obstacle and left sensor (i.e., S 0 , and S 1 ) of the robot, Front is the distance between the obstacle and the front sensor (i.e., S 2 , S 3 , S 4 and S 5 ) of the robot, and Right is the distance between the obstacle and right sensor (i.e., S 6 and S 7 ) of the robot.

The Proposed Controller and Its Related Learning Algorithm
In this section, an adaptive fuzzy neural network (AFNN) is proposed and its related multi-strategy artificial bee colony (MSABC) learning algorithm is also presented.

3.
1. An Adaptive Fuzzy Neural Network (AFNN) Figure 2 presents the structure of the AFNN. Nodes in layer one are input nodes, which represent input linguistic variables. Nodes in layer two are called membership function nodes and act as membership functions, which express the input fuzzy linguistic variables. Nodes in this layer are used to determine Gaussian membership values. That is, the degrees of fuzzy membership of the Left, Front, and Right in Figure 1 are calculated through layer two, where each input linguistic variable is mapped to a value between 0 and 1. Each node in layer three is called a compensatory fuzzy rule node. Nodes in layer three are equal to the number of fuzzy sets that correspond to each external input linguistic variable. The node in layer four is called the output node. The j th rule in AFNN can be expressed as is the compensatory factor, w j is the weight of the consequent part, and N is the number of input linguistic variables. Each layer is detailed below: where wj is the jth output of the weight and u (4) is the output of the AFNN.

Proposed Multi-Strategy Artificial Bee Colony Learning Algorithm
In this subsection, a new multi-strategy artificial bee colony (MSABC) algorithm is proposed for adjusting the AFNN parameters. The proposed MSABC applies the mutation strategy of DE and adds the multi-strategy concept of ABC for improving the convergence speed and the global solution. The mutation strategy of DE is used to replace the employ bee strategy of ABC. Different improved mutation strategies can be divided into three groups: (1) exploration is important for Rand-Strategy, (2) development is important for Best-Strategy, and (3) both exploration and development are important for Rand-Best-Strategy, as shown in the following: (1) Rand-Strategy Layer one (Input Node): This layer of each node is the input term node and each node corresponds to each linguistic term. In this node, the information is directly input to the next layer.
Layer two (Membership Function Node): This layer of each node is the input linguistic node. Layer two performs the fuzzification operation, which calculates the membership value corresponding to the degree to which an input value belongs to a fuzzy set in layer two. In this study, the Gaussian membership function is used in layer two.
where m ij and σ ij represent the mean and standard deviation of the Gaussian membership function, respectively, of the j th term of the i th input linguistic variable x i .
Layer three (Compensatory Rule Node): This layer denotes a compensatory fuzzy rule node, where each node represents each fuzzy rule. This layer performs the fuzzy rule influence operation. By contrast, the node computes the fuzzy product operation. Thereafter, it is applied to a compensatory factor that composes a compensatory fuzzy rule influence operation. The layer three function is defined as follows [30]: where N is the number of input linguistic variables and γ j ∈ [0, 1] is a compensatory factor, which can dynamically tune parameter the and optimistic parameter.
Layer four (Output Node): This layer performs the defuzzification operation, we use the center of the area, which is described as where w j is the j th output of the weight and u (4) is the output of the AFNN.

Proposed Multi-Strategy Artificial Bee Colony Learning Algorithm
In this subsection, a new multi-strategy artificial bee colony (MSABC) algorithm is proposed for adjusting the AFNN parameters. The proposed MSABC applies the mutation strategy of DE and adds the multi-strategy concept of ABC for improving the convergence speed and the global solution. The mutation strategy of DE is used to replace the employ bee strategy of ABC. Different improved mutation strategies can be divided into three groups: (1) exploration is important for Rand-Strategy, (2) development is important for Best-Strategy, and (3) both exploration and development are important for Rand-Best-Strategy, as shown in the following: (1) Rand-Strategy where r 1 , r 2 , r 3 , r 4 are the randomly selected individuals, best is the best fitness individual, F is a factor, and G is an iterative number. The steps of the MSABC algorithm are shown in Figure 3 and detailed as follows: Step1: Initial SN individual of population. Each individual has D dimensions, and each individual of each dimension is in accordance with the evolutional problem that defines the border. It is random a number from the defined border. In this study, the initial fuzzy rule coding for AFNN and more AFNN of a set is called population. Figure 4 shows an AFNN applied to mobile robots for navigation control. Step2: Next, according to the evolutional problem, an appropriate evaluation function is designed, which is detailed in the next section. Step3: Next, multiple strategy selection is performed. Each strategy of the success and failure number is used to calculate each strategy of probability. Initial success and failure number are set as zero. A fuzzification operation serves as the Gaussian membership function: where K represents the strategy number, G represents the evaluation number, P kG represents the probability of k number strategy, and S kG represents the parameter of k strategy. S kG is expressed as follows: where ns represents the success number, nf represents the failure number, and g to G − 1 represent the collected data number of ns with nf. By contrast, LP success and failure numbers are collected. Step4: The algorithm applies the probability and select strategy, which evaluates a new individual. It acquires a new fitness and greedy select best individual; according to the greedy selection of the result that saves each strategy of success and failure number.
where φ i represents a uniformly distributed random number between [−1,1] and k represents a randomly selected number of individuals; i k. Step5: Thereafter, the algorithm conducts the onlooker bee before. It is necessary to calculate the probability with which each individual is selected. Let the onlooker bee appropriately select more best individuals of fitness than the individuals explored and developed again.
Step6: It uses Step4, which has updated success and failure number, for calculating the probability of selecting each strategy. Step7: The population size limit of the onlooker bee is used to select the individual and strategy of the number. Let the best performance of an individual have a large probability that can acquire the exploration and development chance again. The onlooker bee equation is the same as the employ bee equation shown in Step3. Step8: The scout bee determines whether that algorithm falls into the local minimum. The best individual repeats the initial equation when its iteration number exceeds the parameter "limit." The algorithm has some disturbance for avoiding falling into the local minimum. The initial equation is expressed as follows: Step9: Thereafter, it finds the best individual from the population compared so far and the best individual greed selection and update.  Figure 3. Flowchart of the multi-strategy artificial bee colony (MSABC) algorithm.
Step1: Initial SN individual of population. Each individual has D dimensions, and each individual of each dimension is in accordance with the evolutional problem that defines the border. It is random a number from the defined border. In this study, the initial fuzzy rule coding for AFNN and more AFNN of a set is called population. Figure 4 shows an AFNN applied to mobile robots for navigation control. Step2: Next, according to the evolutional problem, an appropriate evaluation function is designed, which is detailed in the next section. Step3: Next, multiple strategy selection is performed. Each strategy of the success and failure number is used to calculate each strategy of probability. Initial success and failure number are set as zero. A fuzzification operation serves as the Gaussian membership function: where K represents the strategy number, G represents the evaluation number, PkG represents the Step4: The algorithm applies the probability and select strategy, which evaluates a new individual. It acquires a new fitness and greedy select best individual; according to the greedy selection of the result that saves each strategy of success and failure number.
where ϕi represents a uniformly distributed random number between [−1,1] and k represents a randomly selected number of individuals; i ≠ k.
Step5: Thereafter, the algorithm conducts the onlooker bee before. It is necessary to calculate the probability with which each individual is selected. Let the onlooker bee appropriately select more best individuals of fitness than the individuals explored and developed again.
Step6: It uses Step4, which has updated success and failure number, for calculating the probability of selecting each strategy. Step7: The population size limit of the onlooker bee is used to select the individual and strategy of the number. Let the best performance of an individual have a large probability that can acquire the exploration and development chance again. The onlooker bee equation is the same as the employ bee equation shown in Step3. Step8: The scout bee determines whether that algorithm falls into the local minimum. The best individual repeats the initial equation when its iteration number exceeds the parameter "limit." The algorithm has some disturbance for avoiding falling into the local minimum. The initial equation is expressed as follows: Step9: Thereafter, it finds the best individual from the population compared so far and the best individual greed selection and update.

Navigation Control of a Mobile Robot
This study uses the AFNN mobile robot, which achieves navigation before requiring the goal and obstacle information. The eight sonar sensors are divided into three groups: Left, Front, and Right. In addition, we define the goal information tr θ , as shown in Figure 5. The four parameters control the input and enable mobile robot navigation. The AFNN output controls the speed of the robot's left and right wheels. The parameters of AFNN is optimized through the MSABC in a training environment for the robot. Three targets are set on the training environment. Figure 6 shows angle between the mobile robot and target.

Navigation Control of a Mobile Robot
This study uses the AFNN mobile robot, which achieves navigation before requiring the goal and obstacle information. The eight sonar sensors are divided into three groups: Left, Front, and Right. In addition, we define the goal information θ tr , as shown in Figure 5. The four parameters control the input and enable mobile robot navigation. The AFNN output controls the speed of the robot's left and right wheels. The parameters of AFNN is optimized through the MSABC in a training environment for the robot. Three targets are set on the training environment. Figure 6 shows angle between the mobile robot and target.
where θ target represents the angle between the target, and X coordinate and θ robot represents the angle between the mobile robot and the X coordinate.
where target θ represents the angle between the target, and X coordinate and robot θ represents the angle between the mobile robot and the X coordinate.

The Proposed Navigation Method
Most navigation methods are based on controlled parameters. In this study, a new evaluation function in MSABC is proposed for adjusting the control parameters without any training data. ( ) where target θ represents the angle between the target, and X coordinate and robot θ represents the angle between the mobile robot and the X coordinate.

The Proposed Navigation Method
Most navigation methods are based on controlled parameters. In this study, a new evaluation function in MSABC is proposed for adjusting the control parameters without any training data.

The Proposed Navigation Method
Most navigation methods are based on controlled parameters. In this study, a new evaluation function in MSABC is proposed for adjusting the control parameters without any training data. Figure 7 shows the navigation control process. The proposed function contains two control factors and three stop conditions. The three stop conditions are described as follows: (1) the robot collides with the obstacle; (2) the robot reaches the goal; (3) the robot navigates for time exceeding the user-defined time (i.e.,T total = T i stop ), where T total represents the mobile robot's maximum navigation time step, which is user-defined according to the size of the environment, and T stop represents the mobile robot's current navigation time step). The evaluation function is designed as follows: with where t represents the time step of the mobile robot, i represents the number of controllers, M represents all numbers of controllers, d i act represents the i th mobile robot's each time step taken toward the target, and R i x , R i y (t) represents the i th mobile robot's time step of position, t. When d i act (t) equals the shortest distance of the target-evinced path, where the mobile robot reaches the target, because we need known positive or negative values of d act . If d i act > 0 represents the i th mobile robot reaching the target, d act is a negative number representing the i th mobile robot not reaching the target. Figure 8 shows the relation between d target and d i act .  Figure 7. Illustration of the navigation control process.

The Escape Method in Special Environments
In a complex environment, the mobile robot easily falls into traps, such as U-shaped obstacles. Therefore, a new escape method in a special environment is designed according to three U-shaped obstacles and shown in Figure 9. First, the direction of the mobile robot moving toward the target and the threshold value need to be defined. We divide the direction into four groups according to the angle between the mobile robot and target: Left-Front, Right-Front, Left-Back, and Right-Back, as shown in Figure 10. If Front is less than the threshold value, the mobile robot from the navigation

The Escape Method in Special Environments
In a complex environment, the mobile robot easily falls into traps, such as U-shaped obstacles. Therefore, a new escape method in a special environment is designed according to three U-shaped obstacles and shown in Figure 9. First, the direction of the mobile robot moving toward the target and the threshold value need to be defined. We divide the direction into four groups according to the angle between the mobile robot and target: Left-Front, Right-Front, Left-Back, and Right-Back, as shown in Figure 10. If Front is less than the threshold value, the mobile robot from the navigation behavior switches to the escape special environment behavior. The flowchart of the escape special environment behavior is shown in Figure 11. behavior switches to the escape special environment behavior. The flowchart of the escape special environment behavior is shown in Figure 11.  behavior switches to the escape special environment behavior. The flowchart of the escape special environment behavior is shown in Figure 11.    Figure 11. Flowchart of the escape method in special environments. Figure 11. Flowchart of the escape method in special environments.
In this study, a toward-left wall-following fuzzy logic controller (WF-FLC) is proposed. The inputs of a toward-left WF-FLC are the front obstacle distance Front and the right obstacle distance Right. The outputs are the left-and right-wheel speeds. The Front and Right inputs are divided into three linguistic terms: near, medium, and far. The membership function is shown in Figure 12a,b. The right and left wheels are divided into three linguistic terms: back, slow, medium, and fast. The membership function is shown in Figure 12c,d. Tables 1 and 2 represent the left and right wheels designed in the toward-left WF-FLC using nine fuzzy rules. In this fuzzy rule table, a 0.5 m movement along the wall for the mobile robot is designed. The mobile robot turns right when the distance between mobile robot and the wall is far and turns left when the distance is close.  three linguistic terms: near, medium, and far. The membership function is shown in Figure 12a,b. The right and left wheels are divided into three linguistic terms: back, slow, medium, and fast. The membership function is shown in Figure 12c,d. Tables 1 and 2 represent the left and right wheels designed in the toward-left WF-FLC using nine fuzzy rules. In this fuzzy rule table, a 0.5 m movement along the wall for the mobile robot is designed. The mobile robot turns right when the distance between mobile robot and the wall is far and turns left when the distance is close.    Figure 13 shows an example of escape special environment behavior. The mobile robot changes to the WF-FLC at point A. This turn-left count is set as one. The mobile robot reaches point B when

Experimental Results
This section describes the Pinoneer3-DX implemented for navigation in an unknown environment and makes analysis between MSABC and other algorithms. First, the mobile robot application finds a new fitness function that evaluates the controller in the training environment and an optimal algorithm from the best controller, which helps mobile robot navigation in an unknown

Experimental Results
This section describes the Pinoneer3-DX implemented for navigation in an unknown environment and makes analysis between MSABC and other algorithms. First, the mobile robot application finds a new fitness function that evaluates the controller in the training environment and an optimal algorithm from the best controller, which helps mobile robot navigation in an unknown environment. Figure 5 shows the training environment. Table 3 shows the initial parameters for an optimal algorithm. Table 3. Initialization parameters before training.

Parameters Values
Population size (PS) 30 Crossover rate (CR) 0.9 Scale factor (F) 0.5 Evaluation number 10,000 Number of rule 10 Scout bee limit 40 LP 50

Performance Comparisons of Various Learning Algorithms
This study aims to analyze various learning algorithms for navigation control. Figure 14a-c show the robot trajectories of the proposed AFNN based on various learning algorithms. The mobile robot's initial position is (1,1). The value of θ tr changes in accordance with different targets in the training environment. The position of target one is (1,9), the distance between the start and target one is 8 m, and θ tr is 53 • ; the position of target two is (9,9), the distance between the start and target two is 11.3 m, and θ tr is 11 • ; and the position of target three is (9,5), the distance between the start and target three is 8.94 m, and θ tr is 11 • . Target one is a training mobile robot even if the neighbor obstacle interferes with the straight-reach target. Target two is a training mobile robot that avoids the obstacle after there is no obstacle around and toward the target movement. Target three is a training obstacle close to the target; the mobile robot also reaches the target. Figure 14a-c show that the mobile robot can overcome the problems of neighbor obstacle, no obstacle, and obstacle close to the target. Figure 14d shows the average value of the fitness function for the proposed MSABC design at each evaluation point and compares it with the corresponding values for the ABC and DE algorithm designs. It shows that the proposed MSABC design performs better than the ABC and DE algorithms in the navigation control. Table 4 represents the standard deviation and mean of the fitness function f. An evaluation of the control function f of the MSABC, ABC, and DE algorithms in the training environment is given in Table 5.
In addition, this study will analyze the ultrasonic sensor values, the angle between mobile robot and target, and the left-and right-wheel speeds of the robot from start to target during the navigation control process. Here, take target three as an example. As shown in Figure 15a, the mobile robot reaches point A when it changes the navigation behavior to wall-following behavior until point B, which the mobile robot through escape special environment behavior judges the wall-following behavior end and changes to navigation behavior until point C. The mobile robot reaches point C after the left wheel is maintained at 0.84 m/s and the right wheel is maintained between 0.68 and 0.81 m/s back and forth. At this time, the mobile robot slowly turns right until reaching point D, where the Right value is below 0.36 m. The mobile robot has a left-wheel speed of 0.78 m/s and right-wheel speed of 0.82 m/s, and then slowly turns left to avoid the right obstacle. Then, it moves toward the target at point E. Figure 15b shows the distance values according to the ultrasonic sensors left, front, and right, the angle between mobile robot and target, and the left-wheel and right-wheel speeds of the robot at the robot moving distances.
can overcome the problems of neighbor obstacle, no obstacle, and obstacle close to the target. Figure  14d shows the average value of the fitness function for the proposed MSABC design at each evaluation point and compares it with the corresponding values for the ABC and DE algorithm designs. It shows that the proposed MSABC design performs better than the ABC and DE algorithms in the navigation control. Table 4 represents the standard deviation and mean of the fitness function f. An evaluation of the control function f of the MSABC, ABC, and DE algorithms in the training environment is given in Table 5.  In addition, this study will analyze the ultrasonic sensor values, the angle between mobile robot and target, and the left-and right-wheel speeds of the robot from start to target during the navigation Figure 14. Comparisons of robot trajectories from start to different targets in the training environment using various learning algorithms. control process. Here, take target three as an example. As shown in Figure 15a, the mobile robot reaches point A when it changes the navigation behavior to wall-following behavior until point B, which the mobile robot through escape special environment behavior judges the wall-following behavior end and changes to navigation behavior until point C. The mobile robot reaches point C after the left wheel is maintained at 0.84 m/s and the right wheel is maintained between 0.68 and 0.81 m/s back and forth. At this time, the mobile robot slowly turns right until reaching point D, where the Right value is below 0.36 m. The mobile robot has a left-wheel speed of 0.78 m/s and right-wheel speed of 0.82 m/s, and then slowly turns left to avoid the right obstacle. Then, it moves toward the target at point E. Figure 15b shows the distance values according to the ultrasonic sensors left, front, and right, the angle between mobile robot and target, and the left-wheel and right-wheel speeds of the robot at the robot moving distances.

Verification of Mobile Robot Escape in Special Environments
This subsection designs three special environments, proving the ability of the mobile robot to escape the special environment. Figure 16 show the local minima of the traditional environments. The first one is a V-shaped environment, second is a U-shaped environment, and third is a several-obstacle environment. Finally, the mobile robot can escape the special environment and reach the target.

Verification of Mobile Robot Escape in Special Environments
This subsection designs three special environments, proving the ability of the mobile robot to escape the special environment. Figure 16 show the local minima of the traditional environments. The first one is a V-shaped environment, second is a U-shaped environment, and third is a severalobstacle environment. Finally, the mobile robot can escape the special environment and reach the target.

PIONEER 3-DX Robot Navigation
In the experiments, an actual mobile robot navigation control using the AFNN based on MSABC algorithm, as well as a PIONEER 3-DX robot, is conducted. To demonstrate the feasibility of the AFNN based on MSABC algorithm, a real environment is created to test the robot's performance in an actual navigation task. The PIONEER3-DX robot reaches a maximum translation speed of 1.2 m/s. Figure 17 shows images of the navigation control results for the proposed approach. The PIONEER

PIONEER 3-DX Robot Navigation
In the experiments, an actual mobile robot navigation control using the AFNN based on MSABC algorithm, as well as a PIONEER 3-DX robot, is conducted. To demonstrate the feasibility of the AFNN based on MSABC algorithm, a real environment is created to test the robot's performance in an actual navigation task. The PIONEER3-DX robot reaches a maximum translation speed of 1.2 m/s. Figure 17 shows images of the navigation control results for the proposed approach. The PIONEER 3-DX robot can reach the target, but with a distance of 30 cm between the target and robot stop point. (c)

PIONEER 3-DX Robot Navigation
In the experiments, an actual mobile robot navigation control using the AFNN based on MSABC algorithm, as well as a PIONEER 3-DX robot, is conducted. To demonstrate the feasibility of the AFNN based on MSABC algorithm, a real environment is created to test the robot's performance in an actual navigation task. The PIONEER3-DX robot reaches a maximum translation speed of 1.2 m/s. Figure 17 shows images of the navigation control results for the proposed approach. The PIONEER 3-DX robot can reach the target, but with a distance of 30 cm between the target and robot stop point.

Conclusions
This study proposes an AFNN based on MSABC algorithm for achieving an actual mobile robot navigation control and escape special environment behavior to avoid special obstacles. During the navigation control process, the AFNN inputs measure the distance between the ultrasonic sensors and angle between the mobile robot and target, and the outputs are the robot's left-and right-wheel speeds. A fitness function is defined to evaluate the AFNN performance in the navigation control. The fitness function includes the following three control factors: navigation time, distance between the start and the target, and distance between the mobile robot and target travelled. The traditional ABC algorithm simulates the intelligent foraging behavior of honey-bee swarms, which are good at exploration but poor at exploitation. The proposed MSABC algorithm adopts the mutation strategies of a differential evolution to balance exploration and exploitation. The experimental results show that the proposed MSABC method has improved the performance of average fitness, navigation time, and travel distance by 79.75%, 33.03%, and 10.74%, respectively, compared with the traditional ABC method. In order to prove the feasibility of the design, experiments were carried out on the actual PIONEER 3-DX mobile robot, and the navigation control was successfully completed.