Review of applications of TLBO algorithm and a tutorial for beginners to solve the unconstrained and constrained optimization problems

The teaching-learning-based optimization (TLBO) algorithm is finding a large number of applications in different fields of engineering and science since its introduction in 2011. The major applications are found in electrical engineering, mechanical design, thermal engineering, manufacturing engineering, civil engineering, structural engineering, computer engineering, electronics engineering, physics, chemistry, biotechnology and economics. This paper presents a review of applications of TLBO algorithm and a tutorial for solving the unconstrained and constrained optimization problems. The tutorial is expected to be useful to the beginners. model-based of of optimized


Introduction
The population based heuristic algorithms have two important groups: evolutionary algorithms (EA) and swarm intelligence (SI) based algorithms. Some of the recognized evolutionary algorithms are: Genetic Algorithm (GA), Evolution Strategy (ES), Evolution Programming (EP), Differential Evolution (DE), Bacteria Foraging Optimization (BFO), Artificial Immune Algorithm (AIA), etc. Some of the well-known swarm intelligence based algorithms are: Particle Swarm Optimization (PSO), Shuffled Frog Leaping (SFL), Ant Colony Optimization (ACO), Artificial Bee Colony (ABC), Fire Fly (FF) algorithm, etc. Besides the evolutionary and swarm intelligence based algorithms, there are some other algorithms which work on the principles of different natural phenomena. Some of them are: Harmony Search algorithm (HSA), Gravitational Search algorithm (GSA), Biogeography-Based Optimization (BBO), Grenade Explosion Method (GEM), etc. (Rao & Patel, 2012). All the evolutionary and swarm intelligence based algorithms are probabilistic algorithms and require common controlling parameters like population size, number of generations, elite size, etc. Besides the common control parameters, different algorithms require their own algorithm-specific control parameters. For example, GA uses mutation probability, crossover probability, selection operator; PSO uses inertia weight, social and cognitive parameters; ABC uses number of onlooker bees, employed bees, scout bees and limit; HS algorithm uses harmony memory consideration rate, pitch adjusting rate, and the number of improvisations. Similarly, the other algorithms such as ES, EP, DE, BFO, AIA, SFL, ACO, etc. need the tuning of respective algorithm-specific parameters. The proper tuning of the algorithm-specific parameters is a very crucial factor which affects the performance of the above mentioned algorithms. The improper tuning of algorithm-specific parameters either increases the computational effort or yields the local optimal solution. Considering this fact,  introduced the teaching-learning-based optimization (TLBO) algorithm which does not require any algorithm-specific parameters. The TLBO algorithm requires only common controlling parameters like population size and number of generations for its working. The TLBO algorithm has gained wide acceptance among the optimization researchers (Rao, 2015). The working of TLBO algorithm is explained in the next section.

TLBO algorithm
The working of TLBO is divided into two parts, 'Teacher phase' and 'Learner phase'. Working of both these phases is explained below (Rao, 2015).

Teacher phase
It is the first part of the algorithm where learners learn through the teacher. During this phase a teacher tries to increase the mean result of the class in the subject taught by him or her depending on his or her capability. At any iteration i, assume that there are 'm' number of subjects (i.e. design variables), 'n' number of learners (i.e. population size, k=1,2,…,n) and Mj,i be the mean result of the learners in a particular subject 'j' (j=1,2,…,m) The best overall result Xtotal-kbest,i considering all the subjects together obtained in the entire population of learners can be considered as the result of best learner kbest. However, as the teacher is usually considered as a highly learned person who trains learners so that they can have better results, the best learner identified is considered by the algorithm as the teacher. The difference between the existing mean result of each subject and the corresponding result of the teacher for each subject is given by, Difference_Meanj,k,i = ri(Xj,kbest,i -TFMj,i), where, Xj,kbest,i is the result of the best learner in subject j. TFis the teaching factor which decides the value of mean to be changed, and ri is the random number in the range [0, 1]. Value of TFcan be either 1 or 2. The value of TF is decided randomly with equal probability as, WhereTFis not a parameter of the TLBO algorithm. The value of TFis not given as an input to the algorithm and its value is randomly decided by the algorithm using Eq. (2). After conducting a number of experiments on many benchmark functions, it is concluded that the algorithm performs better if the value of TF is between 1 and 2. However, the algorithm is found to perform much better if the value of TF is either 1 or 2 and hence to simplify the algorithm, the teaching factor is suggested to take either 1 or 2 depending on the rounding up criteria given by Eq.
(2). Based on the Difference_Meanj,k,i, the existing solution is updated in the teacher phase according to the following expression.
X 'j,k,i= Xj,k,i+ Difference_Meanj,k,I, (3) Where, X'j,k,iis the updated value of Xj,k,i. X'j,k,i is acceptedif it gives better function value. All the accepted function values at the end of the teacher phase are maintained and these values become the input to the learner phase. The learner phase depends upon the teacher phase.

Learner phase
It is the second part of the algorithm where learners increase their knowledge by interaction among themselves. A learner interacts randomly with other learners for enhancing his or her knowledge. A learner learns new things if the other learner has more knowledge than him or her. Considering a population size of 'n', randomly select two learners P and Q such that X'total-P,i ≠ X 'total-Q,i(where, X'total-P,i and X'total-Q,iare the updated function values of Xtotal-P,i and Xtotal-Q,i of P and Q respectively at the end of teacher phase) X' 'j,P,i= X'j,P,i+ ri(X'j,P,i-X'j,Q,i), If X'total-P,i<X'total-Q,i (4) X' 'j,P,i= X'j,P,i+ ri(X'j,Q,i -X'j,P,i), If X'total-Q,I < X'total-P,i Where, X''j,P,I is accepted if it gives a better function value. The Eq. (4) and Eq. (5) are for minimization problems. In the case of maximization problems, the Eqs. (6-7) are used.
The next section presents a tutorial on solving the unconstrained and constrained optimization problems using the TLBO algorithm

Unconstrained optimization problems
To demonstrate the working of TLBO algorithm for solving the unconstrained optimization problems. A benchmark function of Himmelblau is considered. The objective function is to find out the values of x1 and x2 that minimize the Himmelblau function. Benchmark function: Unconstrained Himmelblau function The known solution to this benchmark function is 0 for x1 = 3 and x2 = 2. Now to demonstrate the TLBO algorithm, let us assume a population size of 5 (i.e. number of learners), two design variables x1 and x2 (i.e. number of subjects) and one iteration as the termination criterion. The initial population is randomly generated within the ranges of the variables and the corresponding values of the objective function are shown in Table 1. The mean values of x1 and x2are also shown. As it is a minimization function, the lowest value of f(x) is considered as the best learner (and is considered as equivalent to teacher).Now the teacher tries to improve the mean result of the class. Assuming random numbers r1 = 0.25 for x1 and r2 = 0.43 for x2,   Table 3. This completes the teacher phase of the TLBO algorithm. Now, the learner phase starts and any student can interact with any other student for knowledge transfer. This interaction can be done in a random manner. In this example, interactions between learners 1 and 2, 2 and 5, 3 and 1, 4 and 5, and 5 and 4 are considered. It is to be noted that every learner has to interact with any other learner. That is why, in this example, 5 interactions are considered (i.e. one interaction for each learner). Now, the values of f(x) of Tables 3 and Table 4 are compared and the best values of f(x) are considered and placed in Table 5. This completes the learner phase and one iteration of the TLBO algorithm. The value of f(x) is reduced from 13.13922 at the beginning of iteration to 12.39108 at the end of first iteration. Increasing the number of iterations will soon find the value of f(x) reaching the known solution of 0 for x1 = 3 and x2 = 2.

Constrained optimization problems
Now a constrained benchmark function of Himmelblau is considered. The objective function is to find out the values of x1 and x2 that minimize the Himmelblau function subject to the given constraints. Benchmark function: Constrained Himmelblau function The known solution to this benchmark function is 0 for x1 = 3 and x2 = 2 and g1(x) = 18 and g2(x) = 6. Now to demonstrate the TLBO algorithm, let us assume a population size of 5 (i.e. number of learners), two design variables x1 and x2 (i.e. number of subjects) and one iteration as the termination criterion. The initial population is randomly generated within the ranges of the variables and the corresponding values of the objective function are shown in Table 6. The randomly generated values of x1 and x2 in Table 6 are same as those in Table 1 and this is just for convenience in demonstration. In normal practice, these can be any of the randomly generated values within the given ranges of the variables. The mean values of x1 and x2are also shown. As it is a minimization function, the lowest value of f(x) is considered as the best learner (and is considered as equivalent to teacher). If the constraints are violated then penalties are assigned to the objective function. There are many methods reported in the literature to assign the penalties and in this example the penalty p1 for violation of g1(x) is considered as 10*(g1(x)) 2 and the penalty p2 for violation of g2(x) is considered as 10*(g2(x)) 2 . As it is a minimization problem, the values of penalties are added to the value of the objective function f(x) and the fitness function is f'(x) = f(x) + 10*(g1(x)) 2 + 10*(g2(x)) 2 . The function f'(x) is called the pseudoobjective function. It may be noted that 10*(g1(x)) 2 is used as the penalty function in this example for the violation in constraint g1(x) and 10*(g2(x)) 2 is used as the penalty function for the violation in constraint g2(x). However, this is only for demonstration. Normally, higher penalties are desirable and one may use 50*(g1(x)) 2 or 100*(g1(x)) 2 or 500*(g1(x)) 2 or any such penalty for violation of g1(x) and 50*(g2(x)) 2 or 100*(g2(x)) 2 or 500*(g2(x)) 2 or any such penalty for violation of g2(x). The assignment of penalties for violations depends upon the designer/decision maker/user. Sometimes, the penalty functions assigned may be different for different constraints depending upon the application as decided by the designer/decision maker/user. Also, penalty may be increased considering how many constraints of a given problem are violated. The mean values of x1 and x2are also shown in Table 6. As it is a minimization function, the lowest value of f'(x) is considered as the best learner.

Table 6
Initial population Now the teacher tries to improve the mean result of the class. Assuming random numbers r1 = 0.25 for x1 and r2 = 0.43 for x2 and Tf = 1, the difference_mean values for x1 and x2 are calculated as, The values of difference_mean (x1) and difference_mean (x2) are added to the values under the x1and x2columns respectively of Table 6. Table 7 shows the new values of x1 and x2, penalties and the corresponding values of the objective function and pseudo-objective function.

Table 7
New values of the variables, objective function and the penalties (teacher phase)  Table 8. This completes the teacher phase of the TLBO algorithm.

Table 8
Updated values of the variables, objective function and the penalties based on fitness comparison (teacher phase) Now, the learner phase starts and any student can interact with any other student for knowledge transfer. This interaction can be done in a random manner. In this example, interactions between learners 1 and 2, 2 and 5, 3 and 1, 4 and 5, and 5 and 4 are considered. Table 9 shows the new values of x1 and x2for the learners after the interactions and considering random numbers r1 = 0.47 for x1 and r2 = 0.33 for x2.

Table 9
New values of the variables, objective function and the penalties (learner phase) Now, the values of f'(x) of Tables 8 and 9 are compared and the best values of f'(x) are considered and are placed in Table 10.

Table 10
Updated values of the variables, objective function and the penalties based on fitness comparison This completes the learner phase and one iteration of the TLBO algorithm. The value of f'(x) is reduced from 13.13922 at the beginning of iteration to 12.38652 at the end of first iteration. Increasing the number of iterations will soon find the value of f'(x) reaching the known solution of 0 for x1 = 3, x2 = 2, g1(x) = 18 and g2(x) = 6.
The above two examples are only to demonstrate how TLBO algorithm works. The user may write a computer program for executing the TLBO algorithm for solving the unconstrained and constrained optimization problems. Furthermore, it is to be noted that in the case of maximization problems, the best value means the maximum value of the objective function and the calculations are to be proceeded accordingly in the teacher and learner phases. The values of penalties are to be subtracted from the objective function in the case of maximization problems (i.e. f'(x) = f(x) -10*(g1(x)) 2 -10*(g2(x)) 2 ).

Review of applications of TLBO algorithm
The teaching-learning-based optimization (TLBO) algorithm is finding a large number of applications in different fields of engineering and science since its introduction in 2011 by . Tables 11 to 15 present the details of research papers up to the date of publication of this paper and arranged in alphabetical order of the authors. Efforts are put in to list 200 papers related to TLBO algorithm and there may be few more papers published in conferences and journals.

Table 11
Research papers published in the year 2011 S.No. Authors Work carried out 1.  TLBO algorithm was proposed for solving the constrained mechanical design optimization problems 2.  Multiobjective design optimization of a robot gripper was attempted using TLBO algorithm. Amiri (2012) TLBO was proposed to solve the clustering problem. 4. Baghlani and Makiabadi (2012) TLBO algorithm was used for shape and size optimization of truss structures with dynamic frequency constraints. 5. Biswas et al. (2012) Cooperative co-evolutionary TLBO algorithm with a modified exploration strategy for large scale global optimization was proposed. 6.
Gonzalez-Alvarez et al. (2012) The Multiobjective Teaching-Learning-Based Optimization (MO-TLBO) was used for solving one of the most important optimization problems in Bioinformatics, the Motif Discovery Problem (MDP). 8.
Kundu et al. (2012) Proposed a swarm-based niching technique and the results were compared with those obtained by using other algorithms such as SCMA-ES, ShDE, CDE, SDE, SPSO, FERPSO and lbest-PSO variants with ring-topology. 9. Mohapatra et al. (2012) Proposed a new learner stage based on the mutation strategy. The algorithm was applied for optimal placement of capacitors in a distribution network. 10. Niknam et al. (2012a) Teacher and learner phases were modified. The performance of the modified TLBO algorithm was tested on a 70-bus distribution network. 11. Niknam et al., (2012b) Proposed a stochastic model for optimal energy management with the goal of cost and emission minimization. An improved multiobjective TLBO algorithm was implemented to yield the best expected Pareto optimal front. 12. Rajasehkar et al. (2012) Proposed the Elitist Teaching Learning Oppositional Based (ETLOBA) algorithm in order to enhance the accuracy of the TLBO algorithm. The results were compared with those obtained using HS, Improved Bees Algorithm (IBA) and ABC algorithms 13. Ramanand et al. (2012) Proposed brain-storming incorporated TLBO algorithm for solving electric power dispatch problems. 14. Rao et al. (2012a) Compared the performance of the TLBO algorithm with the well known optimization algorithms such as GA, ABC, PSO, HS, DE, Hybrid-PSO, etc. by experimenting with different benchmark problems. 15. Rao et al. (2012b) Attempted unconstrained and constrained real parameter optimization problems. 16. Rao and Patel (2012) Introduced the concept of elitism in the TLBO algorithm and investigated its effecton the performance of the algorithm for the 35 constrained optimization problems. 17. Rao and Savsani (2012) Presented mechanical design optimization using advanced optimization techniques including TLBO algorithm. 18. Rasoul et al. (2012) Proposed a modified TLBO algorithm to solve the multiobjective windthermal economic emission dispatch problem. 19. Satapathy and Naik (2012) Proposed a modified TLBO algorithm by incorporating a random weighted differential vector. Comparisons were made with those of OEA, HPSO-TVAC, CLPSO, APSO and variants of DE such as JADE, jDE and SaDE and different variants of ABC. 20. Toğan (2012) Applied the TLBO algorithm for the design optimization of planar steel frames. The results of the TLBO were compared to those of the GA, ACO, harmony search (HS) and the improved ant colony optimization (IACO) Cheng (2013) TLBO was used to pick characteristic oligonucleotide primers. 22. Daljit and Ranjit (2013) Designed IIR based digital hearing aids using TLBO algorithm. 23.
Dede (2013) Used TLBO algorithm for the optimum design of grillage systems based on the LRFD-AISC (Load and Resistance Factor Design-American Institute of Steel Construction). 24. Degertekin and Hayalioglu (2013) Applied the TLBO algorithm for optimization of truss structures. The validity of the method was demonstrated by the four design examples. 25. García and Mena (2013) Proposed TLBO algorithm to determine the optimal placement and size of Distributed Generation (DG) units in distribution systems. 26.
Jiang and Zhou (2013) Proposed a hybrid differential evolution and TLBO (hDE-TLBO) algorithm to solve the multiobjective short-term optimal hydro-thermal scheduling. 27.
Krishanand et al. (2013) Proposed a hybrid self-evolving algorithm with its application to a nonlinear optimal power flow problem with the focus on the minimization of the fuel costs of the thermal units 28.
Kumar (2013) Applied for solving constrained mechanical design problems. 29. Li et al. (2013) Proposed an ameliorated TLBO algorithm (A-TLBO) in order to improve the solution quality and to quicken the convergence speed of TLBO. 30. Makiabadi et al. (2013) Optimal design of truss bridges using TLBO algorithm wascarried out. 31.
Mandal and Roy (2013) Incorporated a quasi-opposition based learning concept in original TLBO algorithm in order to accelerate the convergence speed and to improve solution quality. 32. Medina et al. (2013) Proposed a Multiobjective Teaching Learning Algorithm based on Decomposition (MOTLA/D). The performance of the MOTLA/D was tested on three systems and the results were compared with those obtained using other multiobjective algorithm based on decomposition. 33. Niknam et al. (2013) Introduced a modified phase based on the self adaptive mechanism in the TLBO algorithm in order to achieve a balance between the exploration and exploitation capabilities of the TLBO algorithm. 34. Pawar and Rao (2013a,b) TLBO algorithm was applied to optimize the process parameters of three machining processes including an advanced machining process known as abrasive water jet machining process and two important conventional machining processes namely grinding and milling. 35.  An automatic medical image segmentation was attempted using TLBO algorithm. 36.  Scramjet inlet design was carried out using TLBO algorithm. 37. Rao and Patel (2013a) The elitist TLBO algorithm was implemented on 76 unconstrained optimization problems having different characteristics to identify the effect of elitism and common controlling parameters. The results obtained by using TLBO algorithm were compared with the other optimization algorithms available in the literature such as GA, PSO, DE, ABC, CES, FES, ESLAT and CMA-ES. 38. Rao and Patel (2013b) Modified the basic TLBO algorithm by introducing the concept of number of teachers and adaptive teaching factor. The presented modifications speeded up the convergence rate of the basic TLBO algorithm. The modified TLBO algorithm was applied successfully to the multiobjective optimization of heat exchangers. 39. Rao and Patel (2013c) The modified TLBO algorithm was applied successfully to the multiobjective optimization of a two stage thermoelectric cooler (TEC) 40. Rao and Patel (2013d) Performance of the improved TLBO algorithm was assessed by implementing it on a range of standard unconstrained benchmark functions having different characteristics.  Rao and Kalyankar (2013a) Carried out the parameter optimization of a multi-pass turning operation using the TLBO algorithm. Two different examples were considered that were attempted previously by various researchers using different optimization techniques, such as SA, GA, ACO, PSO, etc. 42. Rao and Kalyankar (2013b) Applied the TLBO algorithm for the process parameter optimization of selected modern machining processes. 43. Rao and Waghmare (2013) Solved complex composite test functions using TLBO algorithm.

44.
Roy (2013) Applied a modified version of TLBO for solving the short term Hydro-Thermal Scheduling problem considering valve point effect and prohibited discharge constraint. 45. Roy et al. (2013) Applied a modified version of TLBO for solving the short term Hydro-Thermal Scheduling problem with highly complex and nonlinear relationship of the problem variables 46. Sahu et al. (2013) The TLBO was implemented on classification using neural network in data mining. 47. Satapathy et al. (2013a) Proposed an orthogonal design based TLBO (OTLBO) algorithm. The OTLBO algorithm was incorporated with the orthogonal design and thus generated an optimal offspring by a statistical optimal method. 48.
The weighted TLBO (WTLBO) algorithm was tried on several benchmark optimization problems. 49. Satapathy et al. (2013c) TLBO clustering algorithm was applied to cluster the given information. Rough set and TLBO algorithm were applied for selecting features. 50. Satapathy and Naik (2013) Presented Cooperative TLBO employing cooperative behavior. (2013) Presented the TLBO algorithm to solve parameter identification problems in the designing of a digital infinite impulse response (IIR) filter. 52.  Discussed the application of TLBO algorithm for optimal coordination of DOCR relays in a looped power system. 53.

Singh and Verma
Sreenivas et al.
An optimal design of coordinated PI based PSS with TCSC controller using modified teaching learning based optimization was carried out. 54. Tang et al. (2013) Proposed an improved TLBO algorithm with Memetic method (ITLBO-M). The memetic method improved the global exploring ability whereas the one-to-one teaching improved the local searchability. 55.
Toğan (2013) Designed pin jointed structures using TLBO algorithm. 57. Tuo et al. (2013) Proposed an Improved Harmony Search Based Teaching Learning (HSTL) optimization algorithm in order to maintain a balance between the convergence speed and the population diversity. 58.
Waghmare (2013) Made comments on a note published by Črepinšek et al. (2012) who tried to invalidate the performance supremacy of the TLBO algorithm. The views and the experimental results presented by Črepinšek et al. (2012) were re-examined and correct understanding of the TLBO algorithm was presented in an objective manner. 59. Wang et al. (2013) Surveyed the running mechanism of TLBO for dealing with the real-parameter optimization problems and finally grouped its real world applications. 60.
Yildiz (  Charak (2014) Optimal scheduling of multi-chain hydrothermal system using TLBO algorithm was carried out. 74. Chen et al. (2014) Proposed a modified TLBO algorithm for thinning and weighting planar arrays to synthesize the desired antenna array factor. 75.
Cheng (2014) Introduced TLBO algorithm to select the specific and feasible primers. 76. Črepinšek et al. (2014) Tried to justify their previous work (Črepinšek et al., 2012) which was commented upon by Waghmare et al. (2013). However, the justification made by them is not convincing and many of the statements made by them on the work of Waghmare (2013) are undesirable. 77.
Dede (2014) Considered several benchmark problems related to truss structures with discrete design variables and showed the efficiency of the TLBO algorithm and the results were compared with those reported in the literature. 78. Dib and Sharaqa (2014) Synthesis of thinned concentric circular antenna arrays was done using TLBO algorithm. 79. Dixit and Mishra (2014) Compared TLBO and Taguchi method by analyzing force in turning operation. 80.
Ganesh and Reddy ( The modified TLBO algorithm was applied to determine the optimal location of AVRs in the distribution system. Jordehi (2014) Used TLBO algorithm to find the optimal setting of thyristor-controlled series compensators in electric power systems. 87.
Keesari and  Used the TLBO algorithm to solve the job shop scheduling problems to minimize the makespan. 88.
Krishnasamy and Nanjundappan (2014) Integrated the TLBO algorithm with Sequential Quadratic Programming (SQP) to fine tune the better solutions obtained by the TLBO algorithms.

89.
Lim and Isa (2014a) Proposed to integrate the PSO algorithm with the TLBO algorithm in order to offer an alternative learning strategy in case a particle fails to improve its fitness. 90.
Lim and Isa (2014b) Pholdee et al. (2014) Integrated the differential operators into the TLBO with a Latin hypercube sampling technique for generation of an initial population in order to improve the flatness of a strip during strip coiling process. 100. Ramoji and Kumar (2014) Optimal economical sizing of a PV-wind hybrid energy system was done using genetic algorithm and TLBO algorithm. 101.  Applied TLBO algorithm for optimization of abrasive flow machining process.

102.
Rao and More (2014) Used TLBO algorithm for optimal selection of design and manufacturing tolerances with an alternative manufacturing process to obtain the optimal solution nearer to the global optimal solution. The comparison of the proposed algorithm was made with the GA, NSGA-II, and MOPSO. 103.  Considered the mathematical models of three important casting processes namely squeeze casting, continuous casting and die casting for the parameter optimization of respective processes. The TLBO algorithm was used for the parameters optimization of these casting processes. 104. Rao and Patel (2014) Proposed a multiobjective improved TLBO algorithm for unconstrained and constrained multiobjective function optimization. The algorithm used a grid-based approach to adaptively assess the non-dominated solutions maintained in an external archive. The performance of the algorithm was assessed by implementing it on the unconstrained and constrained test problems of CEC 2009 competition. 105. Rao and Waghmare (2014a) Solved the same problems of CEC 2009 using simple TLBO algorithm and produced better results. The results were compared with other algorithms such as AMGA, Clustering MOEA, DECMOSA-SQP, DMOEADD, GDE3, LiuLi Algorithm, MOEAD, MOEADGM, etc. 106. Rao and Waghmare (2014b) Thermoeconomic optimization of a shell and tube condenser was carried out using TLBO algorithm.
Proposed a modified TLBO algorithm with self adaptive wavelet mutation strategy and fuzzy clustering technique to control the size of the repository and smart population selection for the next iteration. 113. Siripuram and Kumar (2014) Optimal sizing and location of distributed generation using improved TLBO algorithm.
114. Sreenivasulu et al. (2014) Generation of alternative process plans was done using TLBO algorithm.
115. Sultana and Roy (2014) Applied multiobjective QTLBO algorithm for optimal location of distributed generator in the radial distribution system. 116. Tuncel and Aydin (2014) The TLBO algorithm was employed to solve the line balancing problem and the computational results were compared in terms of the line efficiency. 117. Uzlu et al. (2014a) Performed experimental studies in a wave flume with regular waves. TLBO and ABC algorithms were applied to regression functions of the data. 118. Uzlu et al. (2014b) Applied the ANN (artificial neural network) model with the TLBO algorithm to estimate energy consumption in Turkey. 119. Wang et al. (2014a) Proposed a hybrid TLBO-DE algorithm for chaotic time series prediction. To demonstrate the effectiveness of TLBO-DE approach, it was applied to three typical chaotic nonlinear time series prediction problems. 120. Wang et al. (2014b) Introduced a ring neighborhood topology into the original TLBO algorithm to maintain the exploration ability of the population. 121. Xiao et al. (2014) A multiobjective optimization problem was formulated and a modified TLBO algorithm was used to coordinate the Thyristor Controlled Series Capacitor (TCSC), Static Var Compensator (SVC) and power angle difference damping characteristics.
122. Xia et al. (2014) Disassembly Sequence Planning (DSP) is a challenging NP-hard combinatorial optimization problem. A Simplified Teaching-Learning-Based Optimization (STLBO) algorithm for solving DSP problems is presented. 123. Xie et al. (2014) Described the general knowledge of the teacher-student relationships and the fundamentals and performance of TLBO algorithm. 124. Xing and Gao (2014) Proposed a hybrid TLBO which combines the TLBO algorithm for solution evolution and a variable neighborhood search (VNS) for fast solution improvement for Permutation flow shop scheduling. 125. Yang et al. (2014a) Proposed a new compact TLBO algorithm to combine the strength of the original TLBO and to reduce the memory requirement through a compact structure that utilized an adaptive statistic description to replace the process of a population of solutions. 126. Yang et al. (2014b) A self-learning TLBO was used for dynamic economic/environmental dispatch considering multiple plug-in electric vehicle loads. 127. Yu et al. (2014a) Proposed a modified version of TLBO algorithm in which a feedback phase, mutation crossover operation of differential evolution (DE) algorithms, and chaotic perturbation mechanism were incorporated to improve the performance. 128. Yu et al. (2014b) Unmanned aerial vehicle path planning based on TLBO algorithm was carried out. 129. Zhang et al. (2014) Optimal approximation of linear systems was done using TLBO algorithm. 130. Zou et al. (2014a) Proposed a modified TLBO algorithm with Dynamic Group Strategy. Experiments were conducted on 18 benchmark functions with 50 dimensions. 131. Zou et al. (2014b) A new TLBO variant called bare-bones teaching-learning-based optimization was presented to solve the global optimization problems.  Agrawal et al. (2015) Proposed TLBO algorithm based iris recognition system in which feature extraction phase of iris recognition system was optimized by using TLBO algorithm. 133. Akin and Aydogdu (2015) Optimum design of steel space frames by hybrid TLBO and harmony search algorithms was carried out. 134. Babu and Palaniswamy (2015) Formulated a new DC link placement problem through extending the standard OPF to embrace DC link equations and presented TLBO algorithm for solving the problem. 135. Banerjee et al. (2015) Used TLBO algorithm for economic load dispatch problem considering valve point loading effect. 136. Barisal (2015) Presented TLBO algorithm and its application to automatic load frequency control of multi-source power system having thermal, hydro and gas power plants. 137. Bayat and Delavari (2015) Performance evaluation of power system stabilizers of a multi-machine system was carried out using TLBO algorithm. 138. Bayram et al. (2015) Modeled stream dissolved oxygen concentration using TLBO algorithm. 139. Boudjefdjouf et al. (2015) Combined the time-domain reflectometry response extracted from vector network analyzer measurements and the TLBO technique and applied to the diagnosis of wiring networks. 140. Cao and Luo (2015) A study on SVM based on the weighted elitist TLBO was carried out and applied in the fault diagnosis of a chemical process. 141. Chakravarthy et al. (2015) Non-uniform circular array synthesis was carried out using TLBO algorithm.
TLBO algorithm with Pareto tournament was used for the multiobjective software requirements selection. 143. Chen et al. (2015a) In order to decrease the computation cost and improve the global performance of the original TLBO algorithm, the area copying operator of the producer-scrounger (PS) model was introduced into TLBO for global optimization problems. 144. Chen et al. (2015b) Proposed a variant of TLBO algorithm with multi-classes cooperation and simulated annealing operator (SAMCCTLBO). 145. Chen et al. (2015c) A novel selective ensemble classification of microarray data was done based on TLBO algorithm. 146. Chen et al. (2015d) Variable population size TLBO algorithm was proposed and applied to ANN and global optimization. 147. Chen et al. (2015e) Proposed an improved TLBO algorithm for solving global optimization problems. 148. Cheng (2015a) Estimation of TLBO primer design using regression analysis for different melting temperature calculations was carried out. 149.
Cheng (2015b) A novel TLBO algorithm was proposed for improved mutagenic primer design in mismatch PCR-RFLP SNP genotyping. 150. Cho and Kim (2015) Introduced a new design method using a hybrid optimization algorithm for the electromagnet used in maglev transportation vehicles. 151.
Črawford et al. (2015) Applied TOBO algorithm for solving 65 benchmark set covering problems of combinatorial nature. 152. Das and Padhy (2015) Forecasted a financial derivatives instrument (the commodity futures contract index) using techniques based on machine learning techniques. The authors had developed a hybrid method that combined a support vector machine (SVM) with TLBO algorithm. 153. Dede and Ayvaz (2015) Used TLBO algorithm for the size and shape optimization of structures. 154. Dokeroglu (2015) Proposed a set of TLBO-based hybrid algorithms to solve the challenging combinatorial optimization problem of quadratic assignment. 155. Durai et al. (2015) Provided a framework using TLBO algorithm for the computation of coefficients for quadratic and cubic cost functions, valve point loading, piece-wise quadratic cost and emission functions. 156. Dwivedi et al. (2015) Proposed TLBO algorithm for antenna designing. 157. Ghasemi et al. (2015) Proposed a novel hybrid algorithm of imperialist competitive algorithm and teaching learning algorithm for optimal power flow problem with non-smooth cost functions. 158. Govardhan and Roy (2015) The TLBO algorithm was employed to solve the unit commitment problem considering IEEE standard 10 unit test system 159. Huang et al. (2015a) Proposed a new hybrid algorithm named teaching-learning-based cuckoo search (TLCS) for the constrained optimization problems. 160. Huang et al. (2015b) Proposed a new hybrid algorithm named teaching-learning-based cuckoo search (TLCS) for the parameter optimization in structure designing and machining.  (2015) Presented a multiobjective optimal location of on-load tap changers (OLTCs) in distribution systems at spirit of distributed generators (DGs) based on TLBO coupled with SA algorithm (SA-TLBO). 162. Kadambur and Kotecha (2015) Proposed an alternate elitist TLBO algorithm based strategy to production planning problem of a petrochemical industry. 163. Kanwar et al. (2015) presented an improved variant of TLBO algorithm to deal with the problem of simultaneous allocation of the distributed resources in radial distribution networks while considering multi-level load scenario. 164. Kumar et al. (2015) Utilized TLBO algorithm in order to determine the optimal machining conditions for achieving satisfactory machining performances. The application potential of TLBO algorithm was compared to that of GA. 165. Kumar and Samuel (2015) Described TLBO algorithm for the optimization of mechanical design problems..

Kurada et al. (2015)
Persuaded a novel automatic clustering algorithm (AutoTLBO) with a credible prospect by coalescing automatic assignment of k value in partitioned clustering algorithms and cluster validations into TLBO. 167. Lahari et al. (2015) Partition based clustering using GA and TLBO algorithms was carried out. 168. Li et al. (2015) Proposed a discrete TLBO (DTLBO) for solving the flowshop rescheduling problem. 169. Lin et al. (2015) Used mutiobjective TLBO algorithm for scheduling in turning processes to minimize the makespan and carbon footprint. 170. Mukhopadhyay et al.
Presented a secured optimal power flow solution by integrating Thyristor controlled series compensator (TCSC) with the optimization model developed under overload condition and TLBO algorithm was used. 171. Niknam et al. (2015) A new TLBO algorithm incorporated with mutation was developed for distribution system state estimation. 172. Omidvar et al. (2015) A radial basis function neural network (RBFNN) was developed and used as an objective function for maximizing deformation through TLBO algorithm. 173. Ouyang et al. (2015) TLBO algorithm with global crossover for global optimization was proposed. 174. Rajaram et al. (2015) Airfoil topology optimization was carried out using TLBO algorithm. 175. Rao (2015) Described the TLBO, elitist TLBO (ETLBO) and non-dominated sorting TLBO (NSTLBO) algorithms and their engineering applications. 176. Rao and More (2015) Carried out single objective as well as multiobjective design optimization of heat pipe using TLBO algorithm. The results were compared with the NPGA (Niched Pareto Genetic Algorithm), GEM (Grenade Explosion Method) and GEO (Generalized External optimization). 177. Rao and Rai (2015a) Applied TLBO and NSTLBO algorithms for the optimization of parameters of fused deposition modeling process. 178. Rao and Rai (2015b) Applied TLBO algorithm for optimization of advanced fnishing processes. 179. Rao and Waghmare (2015a) Presented the performance of (TLBO) algorithm to obtain the optimum geometrical dimensions of a robot gripper. Five objectives, namely the difference between the maximum and minimum gripping forces, the force transmission ratio, the shift transmission ratio, length of all the elements of the gripper, and the effort of the gripper mechanism were considered as objective functions. Three robot grippers were optimized. 180. Rao and Waghmare (2015b) Presented the performance of the TLBO algorithm to obtain the optimum set of design and operating parameters for a smooth flat plate solar air heater (SFPSAH). Maximization of thermal efficiency was considered as an objective function for the thermal performance of SFPSAH. 181. Rao and Waghmare (2015c) Investigated the performance of the TLBO algorithm for multiobjective design optimization of a plate fin heat sink equipped with flow-through and impingement-flow air cooling system. Two objective functions known as entropy generation rate and material cost with five constraints were used to measure the performance of the heat sink. Number of fins, height of fins, spacing between two fins and oncoming air velocity were considered as the design variables. 182. Recioui et al. (2015) Proposed binary TLBO algorithm to the optimal placement of phasor measurement units. 183. Roy et al. (2015) The results of the TLBO optimized PID controllers on a two area reheat thermal system were compared with those of ABC and DE optimized PID controllers. 184. Samet et al. (2015) A modified TLBO algorithm was developed for the location and size of two SVCs to compensate the railway's voltage drop.  Sandeep et al. (2015) General Purpose Graphic Processing Unit (GPGPU) based implementation of TLBO and ABC algorithms was discussed to solve the unconstrained benchmark problems. 186. Sahu et al. (2015a) The TLBO algorithm was applied to obtain the parameters of the fuzzy-PID controller. 187. Sahu et al. (2015b) Presented the design and analysis of Proportional-Integral-Double Derivative (PIDD) controller for Automatic Generation Control (AGC) of multi-area power systems with diverse energy sources using TLBO algorithm. 188. Satapathy and Naik (2015) A modified TLBO algorithm (mTLBO) was proposed for global search.
189. Sayare and Kamble (2015) Parameter optimization of composite leaf spring using TLBO algorithm was carried out. 190. Sharma et al. (2015) Performance comparison of TLBO and PSO algorithms was carried out while designing an adaptive channel equalizer. 191. Singh and Dhillon (2015) Designed an optimal IIR digital filter using TLBO algorithm.
192. Subramanian et al. (2015) Reliable/cost-effective maintenance schedules for a composite power system using fuzzy supported TLBO algorithm was attempted. 193. Tiwary et al. (2015) Described a technique for optimizing inspection and repair based availability of distribution systems. The TLBO algorithm was used for availability optimization. 194. Turgut et al. (2015) TLBO was hybridized with Differential Evolution algorithm for successful estimation of unknown proton exchange membrane fuel cell (PEMFC) model parameters.
Applied openMP TLBO algorithm over multi-core system 196. Xu et al. (2015) Proposed an effective TLBO algorithm to solve the flexible job shop scheduling problem. The results obtained by using TLBO algorithm were compared to those obtained by using EDA, ABC, CGA, DIGA, PEGA, and PSO+SA algorithms. 197. Yu et al. (2015) A self-adaptive multi-objective TLBO (SA-MTLBO) was proposed. In SA-MTLBO, the learners can self-adaptively select the modes of learning according to their levels of knowledge in classroom. 198. Zhang et al. (2015a) An integrated approach for real-time model-based state of charge (SOC) estimation of Lithium-ion batteries was proposed. An auto-regression model was adopted and optimized off-line using a hybrid optimization method that combined the TLBO method and the least square method. 199. Zhang et al. (2015b) A hybrid bird mating optimizer algorithm with TLBO for global numerical optimization was proposed. 200. Zou et al. (2015) An improved TLBO algorithm (LETLBO) with learning experience of other learners was proposed.

Discussion
It can be observed from the review of applications of TLBO algorithm that the algorithm has been successfully applied by various researchers in different fields of electrical engineering, mechanical design, thermal engineering, manufacturing engineering, civil engineering, structural engineering, computer engineering, electronics engineering, physics, chemistry, biotechnology, economics, etc. The number of applications of basic and modified versions of TLBO algorithm is increasing at a faster rate and it clearly proves the potential of the TLBO algorithm. Rao et al. ( , 2012a showed that TLBO requires a fewer number of function evaluations as compared to the other optimization algorithms. Even though certain experiments were not conducted by Rao et al. ( , 2012a in the same settings, but a comparatively less number of function evaluations were chosen by them and proved the better performance of the TLBO algorithm. It was interesting to note that theother researchers themselves had used different numbers of function evaluations for the benchmark functions considered. The stopping conditions used by Rao et al. ( , 2012a in certain benchmark functions (with 30 runs each time) were better than those used by other researchers. Also, the TLBO algorithm showed better performance with less computational effort for the large scale problems, i.e. problems with high dimensions. However, in general, to maintain the consistency in comparison of algorithms, the number of function evaluations is to be maintained same for all the optimization algorithms including the TLBO algorithm for all the benchmark functions considered. Also, it may be mentioned here that, in general, the algorithm which requires fewer number of function evaluations to get the same best solution may be considered as a better algorithm compared to the other algorithms. If an algorithm gives global optimum solution within certain number of function evaluations, then consideration of more number of function evaluations may go on giving the same result. Rao and Patel (2012) introduced the concept of elitism in the TLBO algorithm and investigated its effecton the performance of the algorithm for the constrained optimization problems. Moreover, the effect of common controlling parameters (i.e. population size, elite size and number of generations) on the performance of TLBO algorithm was also investigated by considering different combinations of common controlling parameters. The algorithm was implemented on 35 well defined constrained optimization problems having different characteristics to identify the effect of elitism and common controlling parameters. The results obtained by using TLBO algorithm were compared with the other optimization algorithms available in the literature such as PSO, DE, ABC, EP, etc. for the benchmark problems considered. Results had shown the satisfactory performance of TLBO algorithm for the constrained optimization problems. The computational experiments were conducted for the same number of function evaluations used by the other algorithms.
At this point, it is important to clarify that in the TLBO algorithm, the solution is updated in the teacher phase as well as in the learner phase. Hence, the total number of function evaluations in the TLBO algorithm can be computed as (2 × population size × number of generations). Rao and Patel (2012) computed the total number of function evaluations in the TLBO algorithm as = {(2 × population size × number of generations) + (function evaluations required for duplicate elimination)} and they had used this formula to count the number of function evaluations while conducting experiments with TLBO algorithm. Since the 'function evaluations required for duplication removal' were not clearly known, Rao and Patel (2012) had reasonably approximated the same for different population sizes. The statement of Črepinšek et al. (2014) and their co-authors like Mernik et al. (2015) on approximating the 'function evaluations required for the duplication removal' seems to be biased and unjustified. In general, the researchers who have used the advanced optimization algorithms like GA, SA, ACO, PSO, DE, ABC, SFL, GSA, BBO, ES, NSGA, NSGA-II, VEGA, SPEA, etc. have hardly talked about the 'function evaluations required for the duplication removal' while using those algorithms for solving different optimization problems. The concept of 'function evaluations required for the duplication removal' was not even used by the previous researchers while comparing the performance of different algorithms on various benchmark functions. In fact, there may not be any such need in actual practice and it is not so meaningful.In fact, even though Mernik et al. (2015) described certain misconceptions when comparing different variants of the ABC algorithm, they had not shown computation of any 'function evaluations required for duplication removal' in ABC algorithm and its variants! The total number of function evaluations in the TLBO algorithm can be simply computed as (2 × population size × number of generations). The factor "2" is used in the computation because the solution is updated in the teacher phase as well as in the learner phase of the TLBO algorithm. It may be mentioned here that, in general, when extra searches are not present in the algorithm, the total number of function evaluations required by many of the widely used optimization algorithms is computed by the researchers as (population size × number of generations). No separate provision was made in any of the widely used algorithms for computing the function evaluations required for the duplication removal and hence in TLBO also it may not be considered and it may not be required at all in actual practice. A statement made by Črepinšek et al. (2014) (2013) had not made such comments. Also, the concept of calculation of function evaluations required for duplicate removal is quite unusual and one will not come across such concept in the widely accepted algorithms  like GA, SA, ACO, PSO, DE, ABC, SFL, GSA, BBO, ES, NSGA, NSGA-II, VEGA, SPEA, etc. Hence, it is not a big point to discuss about in actual practice and probably no more redundant discussion is needed in this regard. Unnecessary (over)emphasis on 'function evaluations required for the duplication removal' is not required. Črepinšek et al. (2014) tried to justify their previous work (Črepinšek et al., 2012) which was commented upon by Waghmare et al. (2013). However, the justification made by them is not convincing and many of the statements made by them on the work of Waghmare (2013) are questionable. There was no such inexact replication of computational experiments by Waghmare (2013) and certain comments made by Črepinšek et al. (2014) on the wisdom of the reviewers of Waghmare's paper are uncalled for. The authors had incorrectly opined that there was insufficient evidence that TLBO is better than the other nature-inspired algorithms on large-scale problems. However, Waghmare (2013) had already proved the better performance of the algorithm for optimization problems with 100 dimensions. It was not only Waghmare (2013) but researchers like Rao andPatel (2012, 2013a), Biswas et al. (2012), Satapathy et al. (2013a,b), Satapathy and Naik (2012, Zou et al. (2013bZou et al. ( , 2014a and many others had already proved that the TLBO algorithm is suitable for high dimensional problems and NP-hard combinatorial problems (Baykasoğlu et al., 2014;Črawford et al., 2015;Dokeroglu, 2015;Xia et al., 2014). Waghmare (2013) showed that TLBO algorithm can perform well on low dimensional problems also by properly tuning the common control parameters of the algorithm. Thus, the opinion of Črepinšek et al. (2015) on this aspect is incorrect. Furthermore, it may be noted that the paper of Rao and Patel (2012) was published on 15 th March 2012 whereas the paper of Črepinšek et al. (2012) was published on 28 th May 2012. It was not the responsibility of Rao and Patel (2012) if someone had not read the paper which was (and is) freely downloadable since 15 th March 2012 from the journal's website. There is no scope for any doubt in this regard.
Furthermore, Črepinšek et al. (2014) had mentioned about few "true" parameter-less algorithms and claimed that TLBO is not a parameter-less algorithm. But it should be realized that the so called algorithms mentioned by Črepinšek et al. (2014) also require values of parameters (for example, parameter-less GA of Harik and Lobo (1999) requires fixing the crossover probability of 0.5 and selection operator of 4 and runs multiple populations in a cascade-like manner; the PLES proposed by Papa (2008) and Papa et al. (2012) requires the parameters to set virtually, according to the complexity of the problem and according to the statistical properties of the solutions found). Hence, it does not mean that the "true" parameter-less algorithms as mentioned by Črepinšek et al. (2014) do not require the parameters.
The TLBO algorithm has never claimed that it is a parameter-less algorithm. What it has claimed is that it requires only the common parameters (like population size and number of generations) to tune and it does not require algorithm-specific parameters unlike the other algorithms. The common control parameters are required by all the algorithms and no algorithm is exceptional in this issue (and how the parameters are tuned is another issue). Few researchers have already started using self-adaptive common control parameters in TLBO algorithm. Črepinšek et al. (2014) stated that treating the control parameters as algorithm-specific parameters and common parameters as 'unusual' and commented that the TLBO algorithm is not a parameter-less algorithm. But it is not true and in fact their concept of ''function evaluations required for the duplication removal' is very much unusual and it was not at all considered by the researchers who had developed and who had used the advanced optimization algorithms. Another statement made by Črepinšek et al. (2014) that "Instead of setting an algorithmspecific control parameter-the probability of mutation/crossover, the same effect is obtained in Waghmare (2013) by properly setting 'common' parameters-population size and number of generations.................instead of setting one 'algorithm-specific' control parameter, it is necessary to set two 'common' control parameters" is totally incorrect. It is to be understood by Črepinšek et al. (2014) that the GA algorithm requires algorithm-specific parameter(s) in addition to the common parameters and TLBO requires only the common parameters. More details about the TLBO algorithm can be obtained from https://sites.google.com/site/tlborao/.

Conclusions
The TLBO algorithm has carved a niche for itself in the field of advanced optimization and many researchers have understood the potential of the algorithm. The algorithm-specific parameter-less concept of the algorithm is one of the attracting features of the algorithm in addition to its simplicity and the ability to provide the global or near global optimum solutions in comparatively less number of function evaluations. Few researchers have made modifications to the basic TLBO algorithm and proved the effectiveness of the modified versions. However, to make the implementation of TLBO algorithm simpler, it is desirable to maintain the algorithm-specific parameter-less concept in the modified versions also. Otherwise, the user will be faced with the burden of tuning the algorithmspecific parameters in addition to the common control parameters.
The TLBO algorithm has never claimed that it is the 'best' algorithm among all the optimization algorithms available in the literature. In fact, there may not be any such 'best' algorithm existing! The TLBO algorithm is relatively a new algorithm and has strong potential to solve the optimization problems. If the algorithm is found having certain limitations then the efforts of the researchers should be to find the ways to overcome the limitations and to further strengthen the algorithm. The efforts should not be in the form of destructive criticism. What can be said with more confidence at present about the TLBO algorithm is that it is simple to apply, it has no algorithm-specific parameters and it provides the optimum results in a comparatively less number of function evaluations. There is no need to have any doubts on these aspects, as the algorithm has established itself and has set itself distinct.
Researchers are encouraged to make improvements to the TLBO algorithm so that the algorithm will become much more powerful with much improved performance. It is hoped that the researchers belonging to different disciplines of engineering and sciences (physical, life and social) will find the TLBO algorithm as a powerful tool to optimize the systems and processes.