Training ANFIS by using the artificial bee colony algorithm
Turkish Journal of Electrical Engineering & Computer Sciences
http://journals.tubitak.gov.tr/elektrik/
Turk J Elec Eng & Comp Sci
(2017) 25: 1669 – 1679
c TÜBİTAK
⃝
doi:10.3906/elk-1601-240
Research Article
Training ANFIS by using the artificial bee colony algorithm
Derviş KARABOĞA1 , Ebubekir KAYA2,∗
Department of Computer Engineering, Faculty of Engineering, Erciyes University, Kayseri, Turkey
2
Department of Computer Technologies, Nevşehir Vocational College, Nevşehir Hacı Bektaş Veli University,
Nevşehir, Turkey
1
Received: 21.01.2016
•
Accepted/Published Online: 09.06.2016
•
Final Version: 29.05.2017
Abstract: In this study, a new adaptive network-based fuzzy inference system (ANFIS) training algorithm, the artificial
bee colony (ABC) algorithm, is presented. Antecedent and conclusion parameters existing in the structure of ANFIS
are optimized with the ABC algorithm and ANFIS training is realized. Identification of a set of nonlinear dynamic
systems is performed in order to analyze the suggested training algorithm. The ABC algorithm is operated 30 times
for each identification case and the average root mean square error (RMSE) value is obtained. Training RMSE values
calculated for the four examples considered are 0.0325, 0.0215, 0.0174, and 0.0294, respectively. In addition, test error
values for the same cases are respectively computed as 0.0270, 0.0186, 0.0167, and 0.0435. The results obtained are
compared with those of known neuro-fuzzy-based methods frequently used in the literature in identification studies of
nonlinear systems. It is shown that ANFIS can be trained successfully by using the ABC algorithm for the identification
of nonlinear systems.
Key words: ANFIS, swarm intelligence, artificial bee colony algorithm, nonlinear system identification
1. Introduction
The adaptive network-based fuzzy inference system (ANFIS) is based on the idea of combining the learning
ability of artificial neural networks and superiorities of fuzzy logic, such as humanlike decision-making and
the easiness of providing expert knowledge [1]. Thus, although the learning and calculation power of artificial
neural networks can be given to fuzzy logic inference systems, the ability of fuzzy logic inference systems for
humanlike decision-making and provision of expert knowledge is gained by artificial neural networks. ANFIS
uses artificial neural networks found in its internal structure to create the system structure and determine its
variables [2]. Therefore, algorithms used in ANFIS training are important. In recent years, many studies have
been conducted in this field and different algorithms have been suggested for this purpose. We can categorize
these studies on the training of ANFIS into three groups: the first group is to develop a new learning algorithm
for ANFIS; the second is to perform ANFIS training with existing optimization algorithms (at this stage, known
optimization algorithms may be updated for ANFIS training); and the third is to perform ANFIS training by
using known optimization algorithms to solve individual problems, although this group is very similar to the
second. However, the second group aims to develop a more general training algorithm for ANFIS.
The main learning algorithm of ANFIS is the hybrid learning algorithm, created by jointly using the
least squares method and the backpropagation learning algorithm. It is seen that the number of training
∗ Correspondence:
1669
KARABOĞA and KAYA/Turk J Elec Eng & Comp Sci
algorithms used for ANFIS is increasing daily, together with the recently conducted studies. We can generally
list training algorithms used for ANFIS as derivative-based ones and nonderivative heuristics. Since derivativebased algorithms trip over local minima in the determination of parameters belonging to membership functions,
demand for global heuristic algorithms increases. Therefore, several researchers have recently proposed heuristic
search-based training algorithms for ANFIS. Ho et al. [3] performed ANFIS training with the hybrid Taguchigenetic algorithm to estimate the adequacy of vancomycin regimen. Nariman-Zadeh et al. [4] used a genetic
algorithm and the singular value decomposition approach to determine antecedent and conclusion parameters
of ANFIS. Chen [5] constructed a model with ANFIS for predicting business failures and used particle swarm
optimization (PSO) for optimization of ANFIS parameters. Shoorehdeli et al. [6] suggested PSO and a Kalman
filter-based training algorithm for ANFIS. In this study, whereas the parameters belonging to the membership
functions found in the structure of ANFIS are optimized with PSO, a Kalman filter is used to find the values
of the conclusion parameters. In another study conducted by Shoorehdeli et al. [7], a new hybrid learning
algorithm is proposed, where PSO is used for training the antecedent part and the forgetting factor recursive
least squares algorithm is employed for training the conclusion part. Jalali-Heravi and Asadollahi-Baboli [8]
suggested modified ant colony algorithm-based ANFIS training for the prediction of the inhibitory activity of
quinazolinone derivatives on serotonin. Khazraee et al. [9] trained ANFIS with a differential evolution for model
reduction and optimization of reactive batch distillation. Priyadharsini et al. [10] proposed an artifact removal
study based on ANFIS and used an artificial immune algorithm to optimize the parameters of ANFIS. In our
previous study, we used the artificial bee colony (ABC) algorithm to train ANFIS for identifying nonlinear static
and dynamic systems. In this study, we present an extended version of previous conference papers [11,12].
When reviewing the literature, it is seen that swarm intelligence-based algorithms, such as PSO and
ACO, are used for the training of ANFIS. In this study, ANFIS training is performed with a different algorithm,
which is also based on swarm intelligence, known as the ABC algorithm. The ABC algorithm, invented
by Karaboga in 2005, is an optimization algorithm showing the intelligent foraging behavior of honey bee
swarms [13,14]. It found a wide application area and is used to solve real-world problems [15–17]. The
ABC algorithm was used in many different applications and fields: neural networks, such as feed-forward
neural networks; multilayer perception neural networks; RBF neural networks; and recurrent neural networks,
which were trained by using the ABC algorithm [18]. At the same time, many studies have been conducted
in the fields of electrical engineering, electronics engineering, civil engineering, software engineering, control
engineering, industrial engineering, and mechanical engineering [15–18]. In addition, the ABC algorithm has
been applied to different fields including data mining, sensor networks, image processing, numerical problems,
and protein structure optimization [17–19]. Besides these studies, different versions of the ABC algorithm have
been developed, namely c (...truncated)