45-60 Al-Khwarizmi Engineering Journal,Vol. 12, No. 1, P.P. Design of a Kinematic Neural Enhanced Hybrid Firefly Nizar Hadi Abbas *,**Department of Electrical (Received Abstract The paper present design of a control structure that enables integration of a Kinematic neural controller for trajectory tracking of a nonholonomic differential two wheeled mobile robot, controller to direct a National Instrument mobile robot (NI Mobile Robot). The controller is to make the actual velocity of the wheeled mobile robot close the required velocity by guarantees that the trajectory tracking mean squire error converges at minimum tracking error. The proposed tracking control system consists of two layers; The first layer is a multi-layer perceptron neural network system that controls layer is an optimization layer ,which is implemented Colony (CFA-ABC) to tune the controller's optimization algorithm is verified by various benchmark functions CFA and (CFA-ABC ) are better than the original effectiveness of the proposed algorithm tracking results with two reference trajectories (circular and Keywords: Mobile Robot, Trajectory Tracking, Algorithm, Artificial Bee Colony Algorithm. 1. Introduction In recent years a plethora of research has been carried out on the control problem of the mobile robotic systems. This is mainly due to the growing application of these systems both in industrial and service environments [1].Intelligent wheeled mobile robots are the subject of the technical interest arising from possibility of practical application in: manufacturing, civil engineering, transportation, agriculture, space exploration, deep sea penetration, help for disable, medical surgery and in the other sectors of science and technology [2]. The pathing control problems of a nonholonomic wheeled mobile Robots have attracted considerable attention, there are two obvious approaches tracking control problems: Trajectory tracking and path planning proposed a method to design a trajectory Khwarizmi Engineering Journal,Vol. 12, No. 1, P.P. 45- 60 (2016) Kinematic Neural Controller for Mobile Robots based on Enhanced Hybrid Firefly-Artificial Bee Colony Algorithm Abbas* Basma Jumia saleh ** Electrical Engineering / College of Engineering/ University of Baghdad * Email: drnizaralmsaodi@gmail.com **Email: eng.basmaj@gmail.com (Received 6 April 2015; accepted 21 October 2015) The paper present design of a control structure that enables integration of a Kinematic neural controller for of a nonholonomic differential two wheeled mobile robot, then proposes a Kinematic neural direct a National Instrument mobile robot (NI Mobile Robot). The controller is to make the actual velocity of the wheeled mobile robot close the required velocity by guarantees that the trajectory tracking mean squire error . The proposed tracking control system consists of two layers; The first layer is a layer perceptron neural network system that controls the mobile robot to track the required path , The second layer is an optimization layer ,which is implemented based on hybrid Crossoved Firefly Algorithm with Artificial Bee controller's parameters to achieve the optimal path. The performance of the hybrid s verified by various benchmark functions. The simulation results show that ABC ) are better than the original Firefly Algorithm. A simulation example is given to indicate the algorithm, the results have been done using MATLAB (R2013b), tracking results with two reference trajectories (circular and lemniscates ) are presented. Mobile Robot, Trajectory Tracking, Neural Networks, Kinematic Controller, National Instrument, Firefly Algorithm, Artificial Bee Colony Algorithm. In recent years a plethora of research has been on the control problem of the mobile robotic systems. This is mainly due to the growing application of these systems both in industrial and Intelligent wheeled mobile robots are the subject of the technical ossibility of practical civil engineering, transportation, agriculture, space exploration, deep sea penetration, help for disable, medical surgery and in the other sectors of science and The pathing control problems of a wheeled mobile Robots have considerable attention, there are two control problems: and path planning. Kanayama to design a trajectory tracking controller that meet a specific requirements. Therefore, for the trajectory kinematic model are suggested to close the target control objective [3]. Various control systems have been in order to serve as a robust con mobile robot systems. The control algorithm of any mobile robot depends either on the dynamic model or the kinematic model of the mobile robot This research depends on kinematic controller, the main purpose of the kinematic controller is to out a near-optimum velocity for the mobile robot in order to reduce the error between the path and the reference path of the mobile robot system [4]. This paper deal with the use of the Neural Networks (ANNs) learning and adaptation capabilities one of the almost popular intelligent techniques generally applied in engineering for Al-Khwarizmi Engineering Journal (2016) Robots based on Algorithm saleh ** University of Baghdad The paper present design of a control structure that enables integration of a Kinematic neural controller for then proposes a Kinematic neural direct a National Instrument mobile robot (NI Mobile Robot). The controller is to make the actual velocity of the wheeled mobile robot close the required velocity by guarantees that the trajectory tracking mean squire error . The proposed tracking control system consists of two layers; The first layer is a required path , The second Firefly Algorithm with Artificial Bee the optimal path. The performance of the hybrid n results show that the utilizing of . A simulation example is given to indicate the (R2013b), and all trajectory Neural Networks, Kinematic Controller, National Instrument, Firefly controller that meet a specific requirements. Therefore, for the trajectory tracking problem the kinematic model are suggested to close the target Various control systems have been enhanced a robust control rule for mobile robot systems. The control algorithm of any mobile robot depends either on the dynamic matic model of the mobile robot. depends on kinematic controller, the purpose of the kinematic controller is to find velocity for the mobile robot in order to reduce the error between the required path and the reference path of the mobile robot This paper deal with the use of the Artificial (ANNs) because of their ing and adaptation capabilities. ANNs are popular intelligent techniques applied in engineering for systems Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 46 which are time variant. Additionally, their ability to learn complex input-output mapping, without detailed analytical model, approximation of nonlinear function and robustness for noise environment make them an ideal choice for real implementations [5]. Furthermore, its lateral structure makes the neural network achievement rapid than the achievement of other classical artificial intelligence techniques such as a Genetic algorithm. In engineering problems, the optimization is to find out a solution that can maximize or minimize an objective function. Nowadays, stochastic method is more often used to deal with optimization problems [6]. Though there are several ways to organize them, a simple one is used to divide them into two groups conforming to their nature: deterministic and stochastic. Deterministic algorithms can bring the same solutions if the initial conditions are unaffected, because they always follow the accurate move. However, disregard of the initial values. Stochastic ones are based on convinced stochastic distribution; therefore they generally generate many solutions. In fact, both of them can find satisfactory solutions after some generations. Recently, nature-inspired algorithms are prove its capability in solving numerical optimization problems more comfortably. These metaheuristic ways are developed to solve difficult problems, such permutation flow shop scheduling [7], reliability, high-dimensional function optimization , and other engineering problems .Nowadays, many other metaheuristic methods have occurred, like Ant Colony Optimization (ACO) , Harmony Search (HS), Particle Swarm Optimization (PSO), Firefly Algorithm (FA) , and Artificial Bee Colony (ABC) [8]. 2. Kinematic Model of Differential Wheeled Mobile Robot The aim of the wheeled mobile robot kinematic model is to find the mobile robot velocity in the inertial body as a function of the wheels velocities and the configuration coordinates of the robot. i.e. Authorized the robot speed �� = [�� �� ��] as a function of the wheel translational velocities �� � and �� . The mobile robot kinematics commonly has two main analyses, Forward kinematics and feedback kinematics [10]: • Forward mobile robot kinematics: ��� = �������� = ���� �, �� � …(1) • Feedback mobile robot kinematics: ��� ��� � = ����, ��, ��� …(2) The graphic of the differential wheeled mobile robot model shown in Fig. 1, consists of a cart with two standard wheels for motion on the same axis and castor wheel in the front of cart for stability. The castor wheel carries the mechanical format and keeps the robot more stable [8]. Suppose a differential wheeled mobile robot structure which has two wheels with the radius of �� based with a length �1/2 from the mobile robot center: Fig.1. The differential drive mobile robot model. At each instant in time, the left and right wheels follow a path as a show in Fig. 2.7 that moves around the instantaneous center of curvature mobile robot (ICCM) with the same angular rate [9]. Fig. 2. The instantaneous center of curvature mobile robot. X-axis Y-axis x y 2�L1 c θ Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 47 Ω� � = !"�#�!# …(3) Thus: $� � = Ω� ��%� � …(4) $ � � = &Rc� � + *+ , Ω� � …(5) $�� � = �Rc� � − *+ � Ω� � …(6) After solving equations 2.3 and 2.4, then find the instantaneous center of curvature mobile robot (ICCM) trajectory relative to the mid-point axis (c) is given as equation 2.5 [9]. �%� � = * �./�#�0.1�#��+ �./�#�2.1�#�� …(7) The angular velocity of the mobile robot is [11]: Ω� � = �./�#�2.1�#�� * …(8) And the linear velocity of the mobile robot is [11]: $� � = �./�#�0.1�#��+ …(9) It is simulated that the wheeled mobile robot below the nonholonomic constraint, which is ideal rolling no skidding [11], as shown in (2): − ��( � 345� ( ) + �� ( � %63� ( ) = 0 … (10) The kinematics equations of differential wheeled mobile robot is represented as follows [11]: ��� � = $� �cos�� � … �11� ��� � = $� �sin �� � ... (12) ��� � = Ω� � … �13� In order to obtain the position and orientation of the wheeled mobile robot, it is required to integrate equation as showed below [12]: �� � = �== + > $� �cos�� �? #= … (14) �� � = �== + > $� �sin�� �? #= … (15) �� � = �== + > Ω� �? #= … (16) In the computer simulation , the form of the pose (position/orientation) equations as follows[11]: ����� = 0.5[$���� + $ ���]%63����∆D +��� − 1� … (17) ����� = 0.5[$���� + $ ���]345����∆D +��� − 1� … (18) ����� = 1�� [$���� + $ ���]∆D + ��� − 1� … (19) Where �����, �����, ����� are the elements of the pose (position/orientation) at L and ∆ . 3. The Trajectory Tracking Controller The suggested building of the nonlinear kinematic neural controller may be addicted in the style of block diagram, as shown in Fig. 3. The access to control the wheeled mobile robot build upon the accessible information of the unknown nonlinear system and also be known by the input- output information and the control design. The hybrid Crossoved firefly with Artificial bee colony (CFA-ABC) optimization will produce the optimal Parameter for the kinematic neural controller to get best velocity control signal that will minimize the pathing error of the mobile robot. The feedback kinematic controller is vital to keep the trajectory pathing error of the wheeled mobile robot system when the path of the robot obtained from the required trajectory event transient state. The exploration of the wheeled mobile robot starts with generating the desired trajectory where �E = [�E , �E , �E] is the desired pose (position/ orientation) of the wheeled mobile robot [11]. This desired pose (position/ orientation) is used by the feedback kinematic of the wheeled mobile robot to produce the needed linear and angular velocities for the described trajectory with the needed orientation. The error vector is then mathematical calculation by examining the desired pose (position/ orientation) of the wheeled mobile with the real pose of robot structure by using the rotational matrix. This error signal is then used by the controller to generate a control action to obligate the wheeled mobile robot to follow the desired path [11,12]. The kinematic illustrative of the wheeled mobile robot can be written in the model: F��� �� � � ��� � �G=� cos ��� �� 0sin ��� �� 00 1� H $ΩI ... (20) Let ��E, �E�is the desired position of the wheeled mobile robot, and �E is the desired orientation of the wheeled mobile robot, so that the desired posture vector is �E = [�E, �E, �E] . The real position of the wheeled mobile robot is pretended to be ��, �� and the real orientation of the wheeled mobile robot is assumed to be �, so that the real posture of the mobile robot is �� = [�, �, �] . Then the error J = [J�, J�, J�] can be calculated in the global modal: Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 48 KJ�J�J�L = � �E − ��E − ��E − �� … (21) The error vector e needs to be transformation into the wheeled mobile robot modal by using the rotation matrix Ŗ [11]: The kinematic neural controller consists of two layer: Neural network topology and Optimization algorithms. 3.1 The First Layer: Neural Network Topology The Neural Network is an arithmetical model inspired by biological neural networks. A neural network made up of an interconnected collection of neurons, and it progresses information using a connectionist way to computation. The Solution of problem of control wheeled mobile robot requires application of complex methods. Because of lack of a systematic approach to analysis and synthesis of control of nonlinear systems so far , the artificial neural networks became an attractive tool used in theory of nonlinear systems. Multi- layer Perceptron (MLP) Neural networks owe their popularity to properties like: possibility of approxi JM = Ŗ ∗ J KJ�MJ�MJ�ML =F cos��� �� sin��� �� 0− sin��� �� cos��� �� 00 0 1G K J�J�J�L … (22) The error vector em is augment into the controller and at another time it is the accountability of the controller to generate the desired linear and angular velocities to minimize the error [12]. -mation of arbitrary nonlinear mappings, and ability of learning and adaptation [13, 14]. Let as consider Multi-layer Perceptron (MLP) Neural networks shown in Fig.4. The number of the hidden layer nodes can be changed based on the required efficiency of the MLP neural network. The acceptable number of hidden layer nodes in the beginning can be taken equal to (2m+1) from [12]. The outturn of the MLP neural network is considering as follow: $��� − 1�, $ �� − 1�= ∑ ℎ5DR ∗ STUVUWX* − YZ2 … (23) Where hntj is the output of the hidden layer node j and is being Considerate as: ℎ5DR = [�?R� … (24) where: ?R = ∑ 45\]D4V^^X* ∗ $U^ − YR1 … (25) The outputs of the MLP neural networks that can be reached from the activation function, which is bipolar sigmoid function is as follows: [�?R� = +*0_`j -1 … (26) The neural network weights (control parameter) Vj ,Wkj, YR1 and YZ2 are adapted using optimization algorithms, describe as the next section [11]. 3.2 The second layer: optimization algorithm 3.2.1 Firefly Algorithm Now delineated the primary parts of the Firefly Algorithm developed by Xin-She Yang at Cambridge University [8] is briefly described. The FA is inspired from the flash model and features of fireflies. In order to describing the algorithm in the simple manner the following three idealised rules are used: 1) Whole fireflies are unisex so that each firefly will be appealed to other fireflies careless of their sex. 2) Appealingness is relative to their luminousness, thus for any two blinking fireflies, the less shinier one will move towards the shinier one. The appealingness is relative to the luminousness and they both reduction as their distance increments. If there is no shinier one than a appropriate firefly, it will be motion randomly. 3) The luminousness of a firefly is determined by the mural of the objective function. In the firefly algorithm, there are two significant events: the fluctuation of flash in- tensity and creation of the luminousness. For easiness, the luminousness of a firefly was determined by its shininess which in movement is related with the objective function. In the clear form, the flash intensity [�aa� changes consorting to the reverse square law([�aa� = bcEEd � [8]. For a given modal with a fixated flash absorption coefficient e, the flash intensity [ changes with the distance rr [22], that is [ = [=J2fEE …(27) Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 49 As a firefly's luminousness is relative to the flash intensity seen by neighboring fireflies, the luminousness g� of a firefly was specified by [8]: g� = g�=J2fEEd … �28� The distance between any two fireflies 41 and R1 at �i^* and �iU*, specifically, is the Cartesian form [22]: a41R1 = j�i^* − �iU*j =k∑ ��i^*,l − �iU*,l�+!lX* …(29) Where �i^,l is the Mth component of the relating coordinate �i^ of ith firefly, In the 2-D case as shown in eq. (30), from [22]: aa41R1 = k��i^* − �iU*�+ + ��i^* −�iU*�+ … �30� The motion of a firefly 41 is appealed to another more shinier (brighter) firefty j1 by [22]: xlp* = xlp* + βL=e2tuuvwd �xlx* − xlp*� + α1 �rand − 0.5� …(31) Where the second term is due to the attractive feature. The third part is randomisation with a hold parameter }1, which makes the investigation of the search distance more effective [15], after few imitations, use g= =1, }11 ∈ [0,1],e = 1,,for most operation. 3.2.2 Crossover Firefly Algorithm (CFA) In standard Firefly, if there no brighter one than a particular firefly, the fireflies will move randomly, and by using Flat crossover algorithms the updating mechanism at each iteration by the coefficient delta is a uniform distributed random variable within optional interval [0,1]. The flat crossover coefficient (alpha) is defined as follows: �i\ℎ� = �?JiD�� ∗ � �i\ℎ�^�_E��^�� � … �32� Where alpha changing at each iteration. And the Flat crossover operate based on the following equation: �i^*=��i\ℎ�� ∗ �iU* + �1 − �i\ℎ�� ∗ �iR1 … �33� Instead of fireflies move randomly using the possibility of crossover, then the candidates for the best solution are increasing. On the other hand, FA become needs less time to search for the best solution and its performance significantly developments with the increases the population size because of decreasing the randomness. 3.2.3 Artificial Bee Colony(ABC)Algorithm Artificial Bee Colony (ABC) algorithm invented by D. Karaboga [20] is a relatively new population-based algorithm; it is a nature-inspired meta- heuristic algorithm, which inspire the foraging action of bees. ABC as a stochastic performance is clear to employment, and could easily be modified and hybridized with other meta- heuristic algorithms [16]. In real colonies, including bees, some tasks are performed by specified individuals. These specified bees try to expand the nectar quantity stored in the hive using efficient organization. The ABC algorithm simulation represented by three kinds of bees: employed bees, onlooker bees and scout bees. Divided of the colony includes of employed bees, and the other half made up of onlooker bees. More bees should send to high- quality sources, and fewer bees should be sent to low-quality sources or even deserted. At the starting, the colony sends employed bees to productive flower patches. These bees catch flower's nectar and take them to the hive. When they return to the hive, empty their nectar and go to a desired area in the hive called ‘dance floor’ to share their data with other bees. The connections is executed by a especial dance. If the place visited by an employee is adjacent, it executes "round dances" in the hive, and if not, the bee executes a "waggle dance". Round dance include data about the nectar quality of a visited flower patches so the other bees can discovery its position by their smelling sense when they escape of the hive. Waggle dance carries three parts of information about the flower patch: its guidance with regard to Sun, its length from the colony, and the nectar quantity [17]. Onlooker bees lookout the dances in the hive and select the good flower patches to go for. Indeed, flower patches which have greater qualities appeal more bees than smaller quality flower patches. Employed bees that their travelled to place is abandoned through low quality have two choices: start the dance floor and watch dances of other bees then go to a flower patch as an onlooker bee, or it search about the hive automatically as a scout bee for a new food source due to few inner inspiration or potential outer hint [18]. Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 50 ABC algorithm can be summarized as in the following subsections [18]: 3.2.3.1 Population Initialization A population of FM1 individuals is produced randomly, which is equalise to the number of food sources. Each solution �i^*(i1 = 1, 2… [�1) describing an individual is a D1-dimensional vector. hither. Each solution can be produced by Eq. (34) [19]: �i^*U* = �iU*V^�+��iU*V��-�iU*V^��. a�5?�0,1� …(34) Where 41� = 1,2, … … , [�1, R1� = 1,2, … . . , �1. Next, the fitness of each food source is evaluated by �4D5J33 41 = � **0�^* 4� �41 ≥ 01 + |�41| 4� �41 < 0 � … (35) 3.2.3.2 Employed Bee Stage At this stage, a new nominee solution �i^*U* is produced for the employed bee of food source �i^* (only one parameter of the solution is updated by using Eq. (35) : �i^*U* = �i^*U* + ∅^*U*. ��i^*U* − �iT*U*� …(36) where Z1 ∈ [1 … . [�1]�5? R1 ∈ [1 … . . �1]are arbitrary numbers, and Z1 has to be other from 41, ∅^*U*. After creating a new food source �i^U, it will be evaluated and compared with �i^*U* immediately. Then a greedy selection action is applied by comparing the fitness of both solutions produced via Eq. (35). If the fitness of solution �i^*U* is more well than or equal to that of the solution �i^*U*,, �i^*U* will be replaced with �i^*U* and the individual �i^*U*will become a new member of the population and ��6]5Di^*�is reset. Otherwise, food source �i^*U* is kept unchanged and ��6]5Di^*�is increased by 1. 3.2.3.3 Onlooker Bee Stage Later all employed bees completed the looking for operation; each onlooker bee chooses an employed bee to improve its solution with a probability value, which is calculated by roulette wheel using Eq. (37). \41 = �^��_�� ^*∑ �^��_�� ^*������� ... (37) Where �4D5J33 41, which is correlative to the nectar quantity of that food source. Apparently, the greater the 41 , the extra the probability of selecting the 41Dℎ food source is. In the onlooker bees' stage, an artificial onlooker bee chooses its food source determined by the above observed probability value. Thereafter, a food source for an onlooker bee is selected, a new region source is determined according to the Eq. (36) and its fitness value is integrated. Just as in the employed bees stage, a greedy selection is given. 3.2.3.4 Scout Bee Stage The abandonment counter ��6]5Di^*� of all employed bees are tested with a preset number of trials, called limit1. The employed bee, which cannot improve self-solution until the abandonment counter contacts to the limit1, becomes scout bee. Then a new solution is calculated for the scout bee by using Eq. (35) and the abandonment counter is reset. The scout bee, which a solution was produced for itself, becomes the employed bee. Therefore, scout bees in ABC prevent stagnation of employed bee population. 3.2.4 Crossoved Firefly -Artificial Bee Colony (CFA-ABC) Algorithm The meta-heuristic methods are more powerful for the search of global solution for complicated problems and it is better than deterministic algorithm. Though their disadvantage, e.g., the time of convergence which is due the high number of the population size and repetition, and in order to deal with this problem two meta- heuristic methods are joined, the crossoved firefly and the artificial bee colony algorithm with a lesser symbol of bees and fireflies as possible. This paper introduce a hybrid design which has two search steps. The first step is a search by Crossoved Firefly Algorithm (CFA) and second step is searching by Artificial Bee Colony algorithm (ABC) [22]. Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 51 Fig. 3: Structure of the Kinematic Neural Controller. Fig. 4.The structure of Multi-layer Perceptron (MLP) Neural networks. The summarization of the computation procedure of hybrid method is described by the pseudo code below[22]: Step1: Initial pop of fireflies xlp* , i1 = 1,2, … … , S. Step 2: Evaluate Objective function f�xp*� for each firefly. Step 3: Set flash absorption coefficient γ , βL=, α1. Step 4: Flash intensity Fp* at xlp* is calculated by f�xlp*�. Step 5: while t < Max Iteration. Step 6: calculate the value of alpha by Eq. (32) Step 7: For i1=1: S for all S fireflies. For j1=1: S for all S fireflies. Step 8: if (Fx* > Fp*� Movement all firefly i1 towards j1 (d- Dimension) by eq. (31) Concording to the luminousness between i1 and j1 can be determined by eq. (30) Step 9: else Movement all fireflies by Eq. (33) . Step 10: end if. Step 11: valuate the new fireflies and update flash intensities. Step 12: end for j ,end for i1 Step 13: Order the fireflies and find the best. Step 14: end while. Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 52 The best solution found by CFA are regarded as initial point for ABC. Step 15: Evaluate the fitness function for each employed bees by Eq. (35). Step 16: While (termination criterion not satisfied). Employed bees stage Step 17: For each employed bee. create new food source positions by Eq. (36). use greedy selection mechanism. Step 18: End for. Calculate the probability plp* values for the solution xlp*x* by the Eq. �37�. Onlooker bees stage. Step 19: For each Onlooker bee. Chooses a food source xlp*x* depending on create new food source positions by Eq. (36). use greedy selection mechanism. Step 20: End for. Scout bee stage. If there is the employed bee becomes scout then change it with new random source solutions by Eq.(34). 3.2.5 Results of optimization algorithms The Results of optimization algorithms are showing in the next section after Appling on the benchmarks function for minimization, when the benchmarks are the test function. Table 1, The Optimization Results. CFA-ABC CFA FA Bench function 603.734 743.1403 1.0086e+003 F1 936272 3.6879e+005 1.1321e+006 F2 2462.28 1.2057e+003 1.6745e+003 F3 8.7319e007 1.0803 1.1776 F4 0.0138406 8.85986 10.1603 F5 Table 2, Standard Benchmark Functions. Function No. ¤\ℎJaJ = ¥ �+̂�^X* F1 �63J5¦a6%ℎ = ¥ �100��^0* − �+̂�+�2*^X*+ ��^ − 1�+ � F2 ��3Da4§45 = ¥ ��+̂ − 10 cos �2¨�^��^X*+ 10� F3 ©a4JS�5Z = ¥ � �+̂4000� � ^X*− « cos ¬�^√4® + 1 � ^X* F4 �%ZiJ� = 20 + J − 20 ∗ J k*� ∑ ��d �̄��°±.d − J*� ∑ ²³´ �+µ�� ��̄�� F5 4. Kinematic Neural Controller Design based on Hybrid CFA-ABC Algorithm This paper introduce a CFA-ABC for searching the optimal controller parameters .The searching procedures of proposed method shown as below: 1. Initial searching weights ($U=̂ , ¶TU= , YU*= , YT+= � of each firefly are created randomly with in the determined range. Note that the dimension of search space consists of all the control parameters needed in the Kinematic neural controller as shown in Figure (2). 2. The objective function is calculated for each firefly by the mean square error function as equation [1]: (MSE)= *+ ∑ ��E���· − ����·�+ + ��E���· −·�··X*����·�+ + ��E���· − ����·�+ … �38� 3. Applied step3 to step 13 from the pseudo code of (CFA-ABC) to find the best weight with minimizing trajectory tracking error. 4. The best weight are regarded as initial point for ABC. 5. The objective function is calculated for each bee by the mean square error function as equation (38). Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 53 6. Applied step14 to step 19 from the pseudo code of (CFA-ABC) to find the optimal weight. 7. If the iteration number arrive at maximum, then exit, else ,go to (2). 5. Simulation Results The aim of the simulations is to examine the effectiveness and performance of the proposed kinematic neural controller based on (CFA-ABC) optimization algorithm to the wheeled mobile robot by using MATLAB programming environment. The resulting wheeled mobile robot trajectory tracking, get by the proposed Kinematic neural controller is containing trajectory tracking, tracking error, and linear and angular velocity of mobile robot, linear velocity of right and left wheel and the mean square error. These simulation are performed with the parameters setting illustrated in Table 4. Table 3, Simulation Parameters Setting. Parameter Setting The number of fireflies 20 The number of bees 20 The length of NI-robot 0.36 m The Radius of NI-robot Ra=0.05 The period time 0.5 sec Iteration of CFA 100 Iteration of ABC 100 Required linear velocity 0.1 m/sec Required angular velocity 0.1 rad/sec Case study1: The required circular trajectory, can be explained by the next equations: �E� � = cos & 10, �E� � = sin & 10, �E� � = 2̈ + 10 The wheeled mobile robot model starts from the initial pose (position/ orientation), ��= = [1.1, −0.5, \42 ] While the real initial pose (position/ orientation) of the mobile robot �E =[0.9,0.05,1.62], circular trajectory tracking simulation of the NI mobile robot is shown in Fig. (1a). It's so clear that great tracking performance that achieved by the proposed controller based on optimization, because of eliminating the error with fast convergence. Case study2: The required lemniscates trajectory, can be explained by the next equations: �E� � = 0.75 + 0.75 ∗ sin ¬2¨ 50 ® �E� � = sin ¬4¨ 50 ® �E� � = 2 D�52*� ∆�E� �k�∆�E� ��+ − �∆�E� ��+ + ∆�E� � The wheeled mobile robot model begins from the initial pose (position/ orientation), ��= = [0.7, −0.02, \42 ] While the real initial pose (position/ orientation) of the mobile robot �E =[0.79,0.12,1.21], lemniscates trajectory tracking simulation of the NI mobile robot is view in Fig. (1b). the initial values of learning rate and weights are tuned such a way that it provides better performance. • The simulation results explained the effectualness of the suggested Kinematic neural controller based on (CFA-ABC) technique by displaying its ability to produce limited smooth values of the control velocities for right and left wheels outside sudden spikes .as a result showing in Fig. (2a), Fig. (2b). • Fig. (3a), Fig. (3b) indicate the convergence of the pose path and orientation errors for the robot model motion MSE (ex,ey,eθ) equal (0.027,0.012,0.0031) for case study1 and MSE(ex,ey,eθ) equal (±0.005,0.0072, -0.02) for case study2. • The performance index MSE for pose path and orientation errors for the mobile robot model motion for 100 iterations are shown in Fig. (4a) is (0.0063) and Fig. (4b) is (0.0066). • Fig. (5a) demonstrates the mean linear velocity (0.02 m/s) and the maximum peak of the angular velocity (0.005 rad/s) of the NI mobile robot> • Fig. (5b) demonstrates the mean linear velocity (0.055 m/s) and the maximum peak of the angular velocity (±0.027rad/s) of the NI mobile robot. • The performance described in Fig. 6a, fig.6b, Fig. (7a), Fig. (7b), Fig. (8a) and Fig. (8b) verify the effectiveness of the proposed control algorithm based on (CFA-ABC) algorithm is Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 54 clear by viewing the convergence of the pose Error (position/orientation) for the wheeled mobile robot with small error. Fig. (1a). Actual trajectory of mobile robot and desired Circular trajectory tracking. Fig. (1b). Actual trajectory of mobile robot and desired Lemniscates trajectory tracking. Fig. (2a). The right and left wheel velocity. Fig. (3a). Trajectory tracking error. Fig. (4a). The performance index (MSE). Fig. (5a). The linear and angular velocity. -1.5 -1 -0.5 0 0.5 1 1.5 -1 -0.5 0 0.5 1 1.5 x-coordinate(meters) y- co or d in at e( m et er s) Desired Trajectory Actual Mobile Robot Trajectory 0 0.5 1 1.5 -1.5 -1 -0.5 0 0.5 1 1.5 x-coordinate(meters) y- co or d in at e( m et er s) Desired Trajectory Actual Robot Trajectory 0 20 40 60 80 100 120 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 Sampling Time=0.5 sec W h ee l V el oc it y of R ig h t an d L ef t (m /s ec ) The velocity of the right wheel The velocity of the left wheel 20 40 60 80 100 120 -0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 Sampling Time=0.5 sec E rr or ( m ) ex ey etheta 10 20 30 40 50 60 70 80 90 100 6.34 6.36 6.38 6.4 6.42 6.44 6.46 x 10 -3 Number of Iteration P er fo rm an ce I n d ex ( M S E ) MSE 20 40 60 80 100 120 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 Sampling Time=0.5 sec L in ea r V el oc it y (m /s ec ) an d A n gu la r V el oc it y (r ad /s ec ) The Linear Velocity The Angular velocity Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 55 Fig. (6a). Desired orientation and actual mobile robot orientation. Fig. (7a). Position tracking in x- coordinate. Fig. (8a). Position tracking in Y- coordinate. Fig. (2b): The right and left wheel velocity. Fig. (3b). Trajectory tracking error. Fig. (4b): the Performance index (MSE). 20 40 60 80 100 120 1 2 3 4 5 6 7 8 9 Sampling Time=0.5 sec O ri en ta ti on ( ra d ) Desired Orientation Actual Robot Orientation 20 40 60 80 100 120 -1.5 -1 -0.5 0 0.5 1 1.5 Sampling Time=0.5 sec X -c oo rd in at e (m ) Desired X-coordinate Actual Robot X-coordinate 20 40 60 80 100 120 -1.5 -1 -0.5 0 0.5 1 1.5 Sampling Time=0.5 sec Y -c oo rd in at e (m ) Desired Y-coordinate Actual Robot Y-coordinate 10 20 30 40 50 60 70 80 90 100 -0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 sampling time=0.5 sec W h ee l V el oc it y of R ig h t an d L ef t (m /s ec ) The velocity of the right wheel The velocity of the left wheel 10 20 30 40 50 60 70 80 90 -1.5 -1 -0.5 0 0.5 Sampling Time=0.5 sec E rr or ( m ) ex ey etheta 10 20 30 40 50 60 70 80 90 100 6.8342 6.8343 6.8343 6.8343 6.8343 6.8343 6.8343 6.8343 x 10 -3 Number of Iteration P er fo rm an ce I n d ex ( M S E ) MSE Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 56 Fig. (5b): The linear and angular velocity. Fig. (6b). Desired orientation and actual mobile robot orientation. Fig. (7b): Position tracking in x- coordinate. Fig. (8b). Position tracking in Y- coordinate. 6. Conclusion In this paper, an enhanced Firefly algorithm called Crossover Firefly Algorithm (CFA) and hybrid with Artificial Bee Colony (ABC) are proposed. These algorithms are utilized to enhance the optimization solution value by shortening the randomness step by step. The simulation results for finding the global optima of diverse test functions are used to verify the functioning of the suggested optimization algorithms. Moreover, the research has presented an optimal kinematic neural controller based on (CFA-ABC) algorithm for two-wheeled differential mobile robots to achieve both trajectory tracking and stabilization based on the kinematic model. It has been built and tested using MATLAB (R2013b) environment applied on National Instrument mobile robot (NI Mobile Robot). The main result shows that the proposed control gets stability in the position errors and good follow of the trajectory tracking without perturbations, such that the mobile robot follows a desired path trajectory with minimize error. Additionally, the simulation results show clearly the ability of reworking and robustness of the suggested kinematic neural controller that based on (CFA-ABC) learning technique, which has wonderful position trajectory tracking achievement and it has the ability of producing smooth and acceptable linear and angular velocity. The suggested controller has explained the ability of tracking continuous gradients required trajectory and effectively reducing the tracking errors of the wheeled mobile robot model with MSE of a circular trajectory is (0.0063) and 10 20 30 40 50 60 70 80 90 -0.04 -0.02 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 Sampling Time=0.5 sec L in ea r V el oc it y (m /s ec ) an d A n gu la r V el oc it y (r ad /s ec ) The Linear Velocity The Angular velocity 10 20 30 40 50 60 70 80 90 100 -5 -4 -3 -2 -1 0 1 2 3 Sampling Time=0.5 sec O ri en ta ti on ( ra d ) Desired Orientation Actual Robot Orientation 0 20 40 60 80 100 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 Sampling Time=0.5 sec X -c oo rd in at e (m ) Desired X-coordinate Actual Robot X-coordinate 10 20 30 40 50 60 70 80 90 100 -1.5 -1 -0.5 0 0.5 1 1.5 Sampling Time=0.5 sec Y -c oo rd in at e (m ) Desired Y-coordinate Actual Robot Y-coordinate Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 57 �¤» of the lemniscates trajectory is (0.0066) after 100 iterations, better then MSE in [21]and[11]. List of Symbols Symbol Definition Alpha The flat crossover coefficient YR The weight between the bias and hidden (j). YZThe weight between the bias and output (k). C The mobile robot center (meter). �6]5Di^*� The abandonment counter of the employed bee. D1 The dimensional vector of ABC . ?JiD�Parameter to reduce the randomness. e The error vector. [ The flash intensity. [= The standard flash intensity. �41 The fitness value of the solutionR . �4D5J33 4 The fitness of each food source. FM1 A population of ABC produce randomly. [� The intensity at the beginning. hntj The output of the hidden layer node j. ICCM The instantaneous center of curvature mobile robot. 45\]D4 (exm(L),exm(L-1),…VL (L-1)). L Measure of the running step. L1 The length between each wheel and the robot axis of symmetry in y- guidance (m). m The number of input of neural network. M4 The number of input layer nodes. MR The number of hidden layer nodes. MZThe number of output layer nodes. Pop Number of individuals. � The radius of each wheel (rad). rr The distance between any two fireflies. a�5?The random number generator uniformly distributed in [0, 1]. V The translational velocity of the robot (meter/second). �i^*U* A new nominee solution of ABC. $R4 The weight between input (i) and output (j). $ The linear left wheel speed (meter/second). $� The linear right wheel speed (meter/second). ¶ZRThe weight between the hidden (j) and output (k). �==, �==, �==� The initial pose (position/orientation) of the robot. ��, �, �� The actual pose (position/orientation) of the robot. (�E, �E, �E� The desired pose (position/orientation) of the robot. �i^*U* Solution produced from ABC. �iU*V^�, �iU*V�� The lower boundary and upper boundary of the parameter j1. FM1 A population of ABC produce randomly. [� The intensity at the beginning. hntj The output of the hidden layer node j. ICCM The instantaneous center of curvature mobile robot. 45\]D4 (exm(L),exm(L-1),…VL (L-1)). L Measure of the running step. L1 The length between each wheel and the robot axis of symmetry in y- guidance(m). m The number of input of neural network. M4 The number of input layer nodes. MR The number of hidden layer nodes. }1 The randomization parameter. g�= The luminousness at rr=0. g� The luminousness of firefly. �� The angular left wheel speed (rad/second). Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 58 �� � The angular right wheel speed (rad/second). e The fixed flash absorption coefficient. ∆ The interval between two sampling times. Ω The rotational velocity of the robot (rad/second). ∅ A random real number in the interval of [−1, 1]. Ŗ The rotation matrix. 7. References [1] G. Artus, P. Morin, and C. Samson, Tracking of an omnidirectional target with a nonholonomic mobile robot, in Proc. IEEE Conf. Adv. Robot. (ICAR), 2003, pp. 1468– 1473. [2] K. Seo, and J. S. Lee, Kinematic path- following control of Mobile Robot under bounded angular velocity error, Advanced Robotics vol. 20, no. 1, pp. 1-23, 2006. [3] Y. Kanayama, Y. Kimura, F. Miyazaki, and T. Noguchi, A stable tracking control method for an autonomous mobile robot, In Proc. IEEE Int. Conf. Robot. Autom. Cincinnati, OH, vol. 1, pp.384-389, 1990 . [4] O. Mohareri, R. Dhaouadi, and A. B. Rad, Indirect adaptive tracking control of a nonholonomic mobile robot via neural networks, Neurocomputing, vol. 88, pp. 54 – 66, 2012. [5] I. Kav, Intelligent control schemes for nonlinear system, Ph.D Thesis, Indian Institute of Technology, Kanpur, India, 2008. [6] G. Wang and L. Guo, A novel hybrid bat algorithm with harmony search for global numerical optimization, Journal of Applied Mathematics, vol. 2013, 21 pages, 2013. [7] X. Li and M. Yin, An opposition-based differential evolution algorithm for permutation flow shop scheduling based on diversity measure, Advances in Engineering Software, vol. 55, pp. 10–31, 2013. [8] X.-S. Yang, Z. Cui, R. Xiao, A. H. Gandomi, and M. Karamanoglu, Swarm Intelligence and Bio-Inspired Computation , Elsevier, Waltham, Mass, USA, 2013. [9] A. Al-Araji, Design of a Cognitive Neural Predictive Controller for Mobile Robot,Brunel University, United Kingdom, 2012. [10] J. Ye, Adaptive control of nonlinear PID- based analogue neural network for a nonholonomic mobile robot , Neurocompting, vol. 71, pp. 1561-1565, 2008. [11] A. Al-Araji, A Comparative Study of Various Intelligent Algorithms Based Nonlinear PID Neural Trajectory Tracking Controller for the Differential Wheeled Mobile Robot Model, Journal of Engineering, vol. 20 ,May 2014. [12] Z. Yousif, J. Hedley, and R. Bicker, Design of an Adaptive Neural Kinematic Controller for a National Instrument Mobile Robot System, IEEE International Conference on Control System, Computing and Engineering, 23 - 25 Nov. 2012, Penang, Malaysia. [13] R. Fierro, and F. L. Lewis, Control of a nonholonomic mobile robot using neural networks, IEEE Trans. Neural Networks, pp. 589-600, 1998. [14] F. L. Lewis, K. Liu, and A. Yesildirek, Neural net robot controller with guaranteed tracking performance , IEEE Transaction on Neural Networks, vol. 6, no. 3, pp. 703-715, 1995. [15] X. S. Yang, Firefly algorithms for multimodal optimization , In Watanabe, O.,Zeug-mann,T.(eds.) SAGA 2009. LNCS, vol.5792, pp.169-178. Springer, Heidelberg, 2009. [16] A. L. Bolaji, A. T. Khader, M. A. Al-betar, and M. A. Awadallah, Artificial Bee Colony Algorithm, Its Variants and Applications: A Survey, Journal of Theoretical and Applied Information Technology, vol. 47, no.2, pp. 434-459, 2013. [17] M. H. Saffari, and M. J. Mahjoob, Bee Colony Algorithm for Real-Time Optimal Path Planning of Mobile Robots, Fifth International Conference on Soft Computing, Computing with Words and Perceptions in System Analysis, Decision and Control (ICSCCW), Eng., Univ. of Tehran, Tehran, Iran, 2-4 Sept. 2009. [18] W. Xiang, S. Ma and M. An, An Improved Artificial Bee Colony Algorithm with Multiple Search Operators, Journal of Computational Information Systems, pp. 3129–3139, August 2013. [19] D. Karaboga and B. Akay, A modified Artificial Bee Colony Algorithm for Real- Parameter Optimization, Swarm Intelligence Nizar Hadi Abbas Al-Khwarizmi Engineering Journal, Vol. 12, No. 1, P.P. 45- 60 (2016) 59 and Its Applications, Elsevier, vol. 192, pp.120-142, June 2010. [20] D. Karaboga, An Idea based on Honey Bee Swarm for Numerical Optimization, Technical Report, Erciyes University, Engineering Faculty, Computer Engineering Department, pp. 1-10, 2005. [21] A. Almeshal , K. Goher , M.R. Alenezi , A. Almazeed , J. Almatawah and M. Moaz, BFA optimized intelligent controller for path following unicycle robot over irregular terrains, International Journal of Current Engineering and Technology, Vol.5, No.2 (April 2015). [22] M. Younes, R. L. Kherfane and F. Khodja , A hybrid Approach for economic power dispatch, Djillali Liabes University, vol. 8, July 2013. �� 1، ا���د����12 ا���ارز � ا������� ا���� ��ار ھ�دي ���س � ،2016( 45- 60( 60 )-��2 و/�ة ��1*ة /*.�� �-��� �''�, +�ر ا�*و%�)�ت ا��'�&�� %��$ت ��" أ��س 3� ا���+7 ا����7 %�7 �4ارز �� ا��*��ت ا���5�6 و�4ارز �� ���4 ا�� **%+�� ج��� ��8* ��ار ھ�دي ���س �� ا��������� **،*���/ "! ا�����اد'�&%� /$#�� ا���)� drnizaralmsaodi@gmail.com **+ا.��-�و �:ا��0/ eng.basmaj@gmail.com :ا��0/� ا.��-�و+** * ا��$ � &!�:� E�'F-� *08> *$�G *#&��9 ا>�* ا�7-�6ك ا�07�C#> * أ��س �--0@ &!�ر <=#� ا>+!�ن ا&!�:� �7�789، ا�560 /4�م ھ1ا ا�(�/� &L ا�7!�:� ھ* O/�49 ا�!�<� ا�N� ��4�46+!�ن ا>�* ا"�ب &� ، National Instrumentا�87��J K0" L& @$� ا��و�Fت ا�F767ل � ��F#:7ا�!�<� ا� L& نF�/�P8ا� Cا"�ب ا� �:Qل ا��4�ار &%& K%= .L�-40ط L& نF�-/ 560ھ1ا ا� *S ھ* : ا�7!�:� ا�47-�ح Cا�:�40 ا.و� �د ا�:�40ت �--0@ ا�7!�ر ا�F#:7ب و ا�:�40 ا��X+�� ھ* ط�40 ا�FQارز&�� ا.&X#�� وا�-* FV K7W9ارز&�� ھ=��� &6!%-& ��0 <��08J م�Y+ �� �م .وھ* &�FV L& �+Fارز&�� ا���<�Q-!9و K6�ا� ��#V ��&ارزFVو �Z�[7ت ا�KX&<ل �#7!�ر اF\F7!�:� وا�#� �" K]S[ل . /=�د أV L& �ام ��+�&_ ، +-��_ ا��67$�ةQ-�4�ار V:� و�`"K "��7 وa79 ا��67$�ة �`& Cل ا�F\F��� �7�9ء�P$ ��#X&<ارز&�� اFVا�7!�:� ا�47-�ح و a0cا L& L�>F+ C#> ��4�0:9 9ا�7!�رات ا�9�7[ب و)*-�P+<ا��ي وا� ).ا�