[go: up one dir, main page]

Academia.eduAcademia.edu
A Hybrid Simulated Kalman Filter - Gravitational Search Algorithm (SKF-GSA) Badaruddin Muhammad, Zuwairie Ibrahim, Mohd Falfazli Mat Jusof Faculty of Electrical and Electronics Engineering, Universiti Malaysia Pahang, 26600 Pekan, Pahang, Malaysia Nor Azlina Ab Aziz, Nor Hidayati Abd Aziz Faculty of Engineering and Technology, Multimedia University, 75450 Melaka, Malaysia Norrima Mokhtar Faculty of Engineering, University of Malaya, 50603 Kuala Lumpur, Malaysia E-mail: badaruddinmuhammad@yahoo.com, zuwairie@ump.edu.my, mfalfazli@ump.edu.my, azlina.aziz@mmu.edu.my, hidayati.aziz@mmu.edu.my, norrimamokhtar@um.edu.my Abstract In this paper, simulated Kalman filter (SKF) and gravitational search algorithm (GSA) are hybridized in such a way that GSA is employed as prediction operator in SKF. The performance is compared using CEC2014 benchmark dataset. The proposed hybrid SKF-GSA shown to perform better than individual SKF and GSA algorithm. Keywords: hybrid, simulated Kalman filter, gravitational search algorithm, CEC2014 benchmark problem. initialization of n agents, in which the states of each agent are given randomly. The maximum number of iterations, tmax, is defined. The initial value of error covariance estimate, (0) , the process noise value, , and the measurement noise value, , which are required in Kalman filtering, are also defined during initialization stage. Then, every agent is subjected to fitness evaluation to produce initial solutions {X1(0), X2(0), X3(0), …, Xn2(0), Xn-1(0), Xn(0)}. The fitness values are compared and the agent having the best fitness value at every iteration, t, is registered as Xbest(t). For function minimization problem, 1. Introduction The simulated Kalman filter (SKF) and gravitational search algorithm (GSA) are examples of populationbased optimization algorithms. GSA has been introduced in 2009 by Rashedi et al. [1]. On the other hand, as a new estimation-based metaheuristic [2], the SKF has been introduced by Ibrahim et al. [3] in 2015. Even though both algorithms are population-based, however, they are inspired differently. In particular, GSA is inspired by Newtonian law of gravity and law of motion while SKF is inspired by the estimation capability of Kalman filter. In this paper, hybridization between GSA and SKF is proposed. Specifically, GSA is employed during the prediction stage of SKF. ( ) = min ∈ ,…., ( ( )) (1) The-best-so-far solution in SKF is named as Xtrue. The ( )< Xtrue is updated only if the Xbest(t) is better (( ( )> for minimization problem, or for maximization problem) than the Xtrue. 2. Simulated Kalman Filter Algorithm The SKF algorithm is illustrated in Figure 1. Consider n number of agents, SKF algorithm begins with © The 2017 International Conference on Artificial Life and Robotics (ICAROB 2017), Jan. 19-22, Seagaia Convention Center, Miyazaki, Japan P - 707 Badaruddin Muhammad, Zuwairie Ibrahim, Kamil Zakwan Mohd Azmi, Nor Azlina Ab Aziz, Nor Hidayati Abd Aziz, Mohd Saberi Mohamad ×2 ) term provides the stochastic aspect The sin( of SKF algorithm and is a uniformly distributed random number in the range of [0,1]. Generate Initial Solution Evaluate Fitness of Each Agent The final step is the estimation. During this step, Kalman gain, ( ), is computed as follows: Update Xbest Update Xtrue ( )= ( | ) (6) ( | ) Then, the estimation of next state, Xi(t), is computed based on Eqn. (7). Predict Measure ( + 1) = ( | )+ ( )×( ( )− ( | )) (7) and the error covariant is updated based on Eqn. (8). Estimate ( + 1) = 1 − ( ) × ( | ) (8) Finally, the next iteration is executed until the maximum number of iterations, tmax, is reached. Stopping Condition? No Yes 3. Gravitational Search Algorithm Return best solution (Xtrue) In GSA, agents are considered as an object and their performance are expressed by their masses. The position of particle is corresponding to the solution of the problem. best( ) and worst( ) denote the best and the worst fitness value of the population t. The best and the worst for the case of function minimization problem are defined as follows: ( ) = min ( ) ∈{ ,…, } (12) ( ) = max ( ) Fig. 1. The SKF algorithm. The subsequent calculations are largely similar to the predict-measure-estimate steps in Kalman filter. In the prediction step, the following time-update equations are computed as follows: ( | )= ( ) (3) ( | )= ( )+ ∈{ ,…, } while gravitational constant is defined as a decreasing function of time, which is set to at the beginning and decreases exponentially towards zero with lapse of time. (4) where Xi(t) and Xi(t|t) are the current state and transition/predicted state, respectively, and P(t) and P(t|t) are previous error covariant estimate and transition error covariant estimate, respectively. Note that the error covariant estimate is influenced by the process noise, Q. To give a stochastic characteristic to GSA, the total force acted on agent i in dth dimension is a randomly weighted sum of dth components of the forces exerted from other agents. The next step is measurement, which is modelled such that its output may take any value from the predicted state estimate, ( | ), to the true value, . Measurement, Zi(t), of each individual agent is simulated based on the following equation: ( )= ( | )+ sin( ×2 ) × | ( | ) − | According to law of motion, the current velocity of any mass is equal to the sum of the fraction of its previous velocity and the variation in the velocity. Acceleration of any mass is equal to the force acted on the system divided by mass of inertia. Finally, the next iteration is executed until the maximum number of iterations, tmax, is reached. In summary, the algorithm of standard GSA is shown in Figure 2. (5) © The 2017 International Conference on Artificial Life and Robotics (ICAROB 2017), Jan. 19-22, Seagaia Convention Center, Miyazaki, Japan P - 708 A Hybrid SKF-GSA Fig. 2. The GSA algorithm. 4. Hybrid SKF-GSA Algorithm Fig. 3. Hybrid SKF-GSA algorithm. Note that even though the SKF follows predict-measureestimate steps as in Kalman filter, the states are not updated during the predict step. Hence, in the proposed hybrid SKF-GSA algorithm, GSA is employed as the prediction operator in SKF. An additional variable is introduced in hybrid SKF-GSA, which is the jumping rate, Jr, that is a predefined constant in the range of [0,1]. Prediction based on GSA is performed if jumping rate condition is satisfied. The hybrid SKF-GSA algorithm is shown in Figure 3. if rand < Jr apply GSA in prediction else proceed to measurement and estimation end where rand is a random number in the range of [0,1]. If rand < Jr, agents’ velocity is updated according to GSA. For the position update, Xpredict, is required and it is calculated as follows: ( ) = ( ) + ( + 1) (12) In detail, the hybrid SKF-GSA algorithm begins with initialization of n agents, in which the states of each agent are given randomly. The maximum number of iterations, tmax, the initial value of error covariance estimate, (0), the process noise value, , the measurement noise value, , and jumping rate value, Jr, are also defined during initialization stage. Then, every agent is subjected to fitness evaluation to produce initial solutions. After that, Xbest(t) and Xtrue are updated according to SKF algorithm and pbest is updated according to GSA algorithm. The algorithm continues with measurement and estimation similar to SKF. The next iteration is executed until the maximum number of iterations, tmax, is reached. 5. Experiment, Result, and Discussion The CEC2014 benchmark functions (http://www.ntu.edu.sg/home/EPNSugan/index_files/C EC2014/CEC2014.htm) have been employed for performance evaluation. Table 1 shows the setting parameters used in experiments. In hybrid SKF-GSA, the purpose of jumping rate, Jr, is to control the occurrence of the prediction. Based on our observation, the performance of SKF cannot be enhanced when GSA is executed at every iteration as the prediction operator of SKF. The following jumping condition is considered: The experimental result for CEC2014 benchmark functions are tabulated in Table 2. Result in bold represents the best performance. © The 2017 International Conference on Artificial Life and Robotics (ICAROB 2017), Jan. 19-22, Seagaia Convention Center, Miyazaki, Japan P - 709 Badaruddin Muhammad, Zuwairie Ibrahim, Kamil Zakwan Mohd Azmi, Nor Azlina Ab Aziz, Nor Hidayati Abd Aziz, Mohd Saberi Mohamad Table 3. Wilcoxon Signed-Rank Test Result Table 1. Setting Parameters Experimental Parameters Number of agent Number of dimension Number of run Number of iteration Search space Comparison Hybrid SKF-GSA vs GSA Hybrid SKF-GSA vs SKF 100 50 50 10,000 Initial gravitational constant, Go SKF-GSA Parameters Jumping rate, Jr This paper report an attempt to hybrid SKF algorithm with a well-established GSA algorithm. In this study, GSA is chosen as the prediction mechanism in SKF algorithm. In addition, jumping rate is also incorporated in the proposed SKF-GSA algorithm. During the prediction, GSA is executed not only when the jumping rate condition is satisfied but also if the predicted solution is better. The findings proved that the proposed hybrid SKF-GSA is superior to individual SKF and GSA algorithms 1000 0.5 0.5 20 100 0.1 Table 2. The Average Fitness Values Obtained by SKF, GSA, and SKF-GSA Function F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30 SKF 4702013.17 24498691.7 18147.7005 532.77148 520.010016 633.441686 700.246225 807.981323 1059.13877 1335.18324 6249.36725 1200.23641 1300.55973 1400.30009 1551.6584 1619.12553 908272.092 6941389.77 1950.223 34799.058 1186640.91 3429.1058 2645.6890 2667.2498 2730.4018 2766.3853 3883.3415 7223.3697 5997.8302 19753.2888 SKF-GSA 4295218.33 8265.524 16725.114 538.979 519.9999 627.7067 700.0133 816.2199 1056.2279 1543.5057 6178.1897 1200.0562 1300.5183 1400.2931 1549.9115 1619.2702 880075.612 3285.3104 1950.84943 25328.3173 1092401.31 3339.9376 2644.6327 2660.3817 2731.4575 2786.2986 3763.4039 7757.2433 4109.6202 18853.2102 R+ 246 104 6. Conclusion [-100.100] SKF Parameters Error covariance estimate, P Process noise value, Q Measurement noise value, R GSA Parameters R219 361 GSA 1400195.11 7166.7916 64249.0520 653.4553 519.9997 636.3361 700.00014 1076.43847 1217.9866 7456.3162 8637.6403 1200.0001 1300.3749 1400.3012 1504.4108 1622.5712 161088.839 3731.2078 1923.7518 26574.2424 187636.63 3857.9572 2500.0000 2600.0283 2700.0000 2800.0315 4577.5301 6261.3240 3100.1482 8695.4410 Acknowledgements This research is supported by a Fundamental Research Grant Scheme (FRGS) awarded to Universiti Malaysia Pahang (RDU160105). References 1. E. Rashedi, H. Nezamabadi-pour, S. Saryazdi, GSA: a gravitational search algorithm, Information Sciences. 179 (13) (2009) 2232-2248. 2. N. H. Abdul Aziz, Z. Ibrahim, S. Razali, N. A. Ab. Aziz, Estimation-based metaheuristics: a new branch of computational intelligence, in Proc. 3rd National Conf. Postgraduate Research (Pekan, Malaysia, 2016), pp. 469476. 3. Z. Ibrahim, N. H. Abdul Aziz, N. A. Ab. Aziz, S. Razali, M. I. Shapiai, S. W. Nawawi, M. S. Mohamad, A Kalman filter approach for solving unimodal optimization problems, ICIC Express Letters. 9(12) (2015) 3415-3422. Based on the averaged performances, Wilcoxon signed rank test is performed and the result is tabulated in Table 3. Based on the level of significant, σ = 0.05, it is found that statistically, the proposed SKF-GSA is significantly superior to SKF and GSA in solving continuous numerical optimization problems. © The 2017 International Conference on Artificial Life and Robotics (ICAROB 2017), Jan. 19-22, Seagaia Convention Center, Miyazaki, Japan P - 710