Improved Fitness-Dependent Optimizer Algorithm

The fitness-dependent optimizer (FDO) algorithm was recently introduced in 2019. An improved FDO (IFDO) algorithm is presented in this work, and this algorithm contributes considerably to refining the ability of the original FDO to address complicated optimization problems. To improve the FDO, the IFDO calculates the alignment and cohesion and then uses these behaviors with the pace at which the FDO updates its position. Moreover, in determining the weights, the FDO uses the weight factor ( ${wf}$ ), which is zero in most cases and one in only a few cases. Conversely, the IFDO performs ${wf}$ randomization in the [0–1] range and then minimizes the range when a better fitness weight value is achieved. In this work, the IFDO algorithm and its method of converging on the optimal solution are demonstrated. Additionally, 19 classical standard test function groups are utilized to test the IFDO, and then the FDO and three other well-known algorithms, namely, the particle swarm algorithm (PSO), dragonfly algorithm (DA), and genetic algorithm (GA), are selected to evaluate the IFDO results. Furthermore, the CECC06 2019 Competition, which is the set of IEEE Congress of Evolutionary Computation benchmark test functions, is utilized to test the IFDO, and then, the FDO and three recent algorithms, namely, the salp swarm algorithm (SSA), DA and whale optimization algorithm (WOA), are chosen to gauge the IFDO results. The results show that IFDO is practical in some cases, and its results are improved in most cases. Finally, to prove the practicability of the IFDO, it is used in real-world applications.


I. INTRODUCTION
Since computers were developed, the focus has been on the aspects of probing unidentified solutions and searching for the best solution.Alan Turing utilized a search algorithm [1] in 1945 to break the enigma cipher of Germany during the Second World War.The advancement of practical methods and a dramatic rise in the volume of computation have caused difficulties in addressing real-life problems.Therefore, issues of quickly and proficiently solving complex problems via classic methods based on formal logic or mathematical programming have appeared [2].Many algorithms have been created with a variety of methods to handle these constraints, and optimization problems are one of these methods.The optimization procedure obtains the best solution of a function by looking for a parameter.Existing solutions are denoted by sets of possible values, of which one is the best solution.Generally, solving optimization problems is the purpose of inventing optimization algorithms [3].
Based on the environment of the algorithms, there is a simple categorization of optimization algorithms that can separate them into two central groups: deterministic algorithms and stochastic algorithms.The first group, the deterministic algorithms, produces a similar set of answers when a similar preliminary starting point is used to begin the iterations; this is due to utilizing inclination, for instance, hill-climbing with a strict move sequence.Alternatively, the second groups, the stochastic algorithms, regularly produce different answers with similar preliminary values without utilizing inclination.On the other hand, there is a minor difference in the final values; a similar best solution would match the specified accuracy.Stochastic algorithms are categorized into two types: heuristic and metaheuristic [4].Heuristic algorithms utilize trial and error to look for a solution; it is expected that they will take a feasible amount of time to achieve a solution.Likewise, heuristic algorithms tend to use different approaches in randomization techniques and local explorations [5].Additional research and improvements on heuristic algorithms transformed them into metaheuristic VOLUME XX, 2017 algorithms, and these new groups of algorithms have superior performance compared to the heuristic algorithms; therefore, the prefix of "meta", which means "higher" or "beyond", was associated with them [6].Nevertheless, these two terms (heuristic and meta-heuristic) are currently indistinguishable to scientists, although a slight dissimilarity exists in their meanings.Recently, meta-heuristic nature-inspired algorithms have been used professionally and effectively to solve recent nonlinear numerical global optimization difficulties.All metaheuristic algorithms attempt to build some stability between local exploration and randomization [7].
Recently, existing real-world problems have become complicated, and considering space, time, and cost, it is impractical to explore all the conceivable solutions.Consequently, to solve such real-world problems, reasonable techniques that are low-cost and fast are essential.Hence, to determine how to address these difficulties, scientists have investigated natural occurrences and animal behaviors, for instance, how path selection occurs for ants, how evading the enemy and chasing prey occur for a group of birds, flies or fish, and how gravity works.Therefore, the name "nature-inspired algorithms" was selected for the algorithms that were inspired by nature [8].There are many nature-inspired algorithms.The University of Michigan started to develop such algorithms in 1960 when Holland and his colleagues published a book about their GA and republished it in 1970 and 1983 [9].Simulated annealing (SA) was implemented by Kirkpatrick et al.The motivation for the SA algorithm was the annealing process of metal [10].
PSO and ant colony optimization (ACO) are two commonly used swarm intelligence algorithms that were proposed by Kennedy andEberhart in 1995 andDorigo et al., 1996, respectively.PSO is inspired by the collective grouping behavior of birds in searching for food, and ACO is inspired by the nature of the ant, which has the ability to hold previous paths in its mind.[11][12][13].The authors of the PSO thought these behaviors would help the optimization issues; then, other algorithms benefitted from the definitions used in the PSO algorithm.In the last two decades, various excellent intelligence swarms have been suggested, such as differential evolution (DE) in 1997, which was proposed by R. Storn and K. Price; it was a vector-based algorithm and performed better than GA in many applications [14].
In 2005, the artificial bee colony (ABC) algorithm was proposed by Karaboga and Basturk [15,16].Xin-She Yang created the firefly algorithm (FA) in 2009 [17], and then, the same year, CS was suggested by the same author [18].Moreover, a bat-inspired algorithm was suggested by Xin-She in 2010 [19].The artificial plant optimization algorithm (APOA) proposed by Bing Yu et al. in 2013 is inspired by the natural plant growing process.[20].Additionally, in 2014, Li et al., offered a newly announced algorithm, animal migration optimization (AMO), which is inspired by swarm migration behavior in animals [21].Later, Mirjalili A. S. proposed three algorithms: first, DA, in 2015, based on the behaviors related to attraction to food and evasion of enemies; second, WOA, in 2016; third, the salp swarm algorithm (SSA) in 2017 [22][23][24].
The novel ABC was altered with two modified ABCs created by Laizhong et al.In the first variant, an adaptive method for the population size (AMPS) was implemented by the authors [25], and in the second variant, the authors implemented a ranking-based adaptive ABC algorithm (ARABC) [26]; these variants were used for improvement exploitation in the original ABC algorithm.In 2019, Jaza Abdullah and Tarik Rashid developed a fitness-dependent optimizer or FDO algorithm.The FDO algorithm looks at the behaviors of bee swarms during reproduction and imitates swarm activities.Finding a different appropriate solution among various possible solutions forms a substantial part of this algorithm [27].
Researchers have extensively utilized the abovementioned algorithms in many areas.However, there is no specific algorithm that achieves the most fitting solution for all optimization problems.Some algorithms yield better solutions for some specific problems than for others.Therefore, seeking adaptation in optimization techniques is an open problem [53].
In this paper, an improvement in fitness-dependent optimization (IFDO) has been developed from the FDO algorithm.In the FDO algorithm, the authors created the algorithm with a few characteristics of a scout.Jaza and Tarik described the main operator of the scout to update its location with its velocity (pace).Moreover, to manage weights, this operator typically relies on the fitness function value, and then, for the phases of exploitation and exploration, search agents are guided via these weights [27].However, in IFDO, a scout exhibits other behaviors in addition to the pace, such as alignment and cohesion.
Moreover, the FDO, a weight factor () was used to control the fitness weight.Nevertheless, the  was neglected in most cases [27].However, in IFDO, the weight factor () is used whenever a better fitness weight is obtained.
In the following, the papers' main contributions are briefly presented: 1) The IFDO algorithm is constructed by adding the behaviors of alignment and cohesion in updating the scout location and enhances the FDO algorithm in both the exploration and exploitation phases by considering reasonable covering of the search space to produce earlier convergence in the direction of global optimality.
2) The IFDO algorithm randomizes the  and utilizes it for each scout in each of the iterations.3) One additional unique feature of IFDO is that when a better solution is obtained, a new  is generated in a new range to increase the chance of achieving the best solution in a shorter time (this is discussed further in section III).The next sections describe this research.The second section presents the original algorithm FDO.The third section describes our improvements to the FDO algorithm.The fourth section shows the results and discussion; the performance information of the IFDO compared to the selected well-known and recent algorithms is specifically demonstrated, and then two real-world problems are addressed.The fifth section analyses the results and explains the role of the operators proposed in this study.Section 6 concludes the main points and suggests future research studies with the improved IFDO.

II. FITNESS-DEPENDENT OPTIMIZER
The FDO can be divided into the scout bee searching process and the scout bee movement process.In the scout bee searching process, the algorithm makes the scout bees search for a suitable hive (solution) among many potential hives (solutions).Through the scout bee updating process, the algorithm utilizes a random walk and a fitness weight mechanism to move into a new position; accordingly, this section contains two parts.

1) Scout Bee Searching Process
The process of scout bees searching numerous possible hives to obtain a new proper hive means that the main part of this algorithm focuses on that process.In this algorithm, a proper solution is denoted by a scout bee that searches for a new hive.Moreover, meeting optimality means choosing the best hive among numerous hives.Furthermore, when the FDO begins execution, it defines an artificial scout population with random locations in an Xi (i=1, 2, …n) space search by means of upper and lower boundaries.Through the execution, the FDO picks the global best solution.Finding a new hive (solution) in this algorithm is represented by a scout bee position.Scouts based on a random walk search in the search space for a more suitable solution; when the more suitable solution is revealed, the earlier solution is ignored.Nevertheless, if the scout cannot achieve a more suitable solution, then it uses the former solution with the expectation of finding a more suitable solution next time.Finally, in the case of not finding a more appropriate solution with the former solution, the scout will continue with the current solution, which is the best solution at that time.

2) Scout Bee Movement Process
In this algorithm, the scout, to obtain a better solution, updates its current position by adding pace.The updated artificial scout bee can be calculated according to equation (1) as follows: where  denotes the current search agent,  denotes the current iteration,  denotes an artificial scout bee (search agent), and pace denotes the movement rate and direction of the artificial scout bee.The pace is typically reliant on the fitness weight .Nevertheless, a random mechanism completely relies on the direction of the .
In FDO, the fitness weight () value is typically utilized to manage the .The algorithm determines the fitness weight () for every artificial scout using equation (2).
where x i,t fitness * denotes the best global solution's fitness function value that has been revealed so far.,   denotes the current solution's value of the fitness function;  denotes a weight factor, randomly set between 0 and 1, which is used for controlling the .
Later, the algorithm considers some settings for (), for instance, if  = 1 or 0, and x i,t fitnees = 0, the algorithm sets the pace randomly according to equation (3).On the other hand, if  > 0 and  < 1, then the algorithm generates a random number in the [-1, 1] range to make the scout search in every direction; when  < 0, pace is calculated according to equation (4), and when  >= 1, pace is calculated according to equation (5).where  denotes a random number in the range of [-1, 1], ,  denotes the current solution, and x i,t * denotes the global best solution achieved thus far.Among various applications for random numbers, the FDO selects Levy flight because it considers further stable movement via its fair distribution curve [7].
The FDO pace is saved in every iteration for the accepted solution, and then it can be used next time.

III. THE IMPROVED FITNESS-DEPENDENT OPTIMIZER
The IFDO is developed from the original FDO, which is an evolutionary optimization algorithm that was proposed by Jaza and Tarik [27].The idea of this algorithm is essentially based on the generative process and collective decision-making used by bees.The bees search for many possible hives to obtain a new proper hive.Based on the original FDO, our proposed improved fitness-dependent optimizer is introduced, and it includes two phases: the updating of the scout bee position, which is improved by the functionalization of certain parameters, and the randomization of the weight factor () in the [0, 1] range.Accordingly, this section contains two parts.

1) Updating the Scout Bee Position
The IFDO, to create a different way of movement, applies order and cohesion, which are two vital signifiers of group motion; cohesion inside a group defines the distance between members, whereas members' alignment inside a group can be indicated by order when it is measured as divergence.Effective movement and maximization of the benefits of grouping for individual group members rely on better group cohesion and divergence [54].
In the original FDO, to achieve a more suitable solution, the scout bee adds pace to the current position in searching for new positions, as expressed in equation ( 1).In the IFDO, this equation is improved by adding two parameters, such as alignment and cohesion, to the pseudocode of the IFDO illustrated (see Figure (1)).In the following, the new movement of the artificial scout bee is expressed as: where  is the current artificial scout bee (search agent),  is the current iteration; the pace is the rate of the movement and the artificial bee direction,  is an artificial bee, and alignment is the pace matching of scouts to that of other scouts in neighborhoods, and cohesion, is the inclination of scouts in the direction of the center of the mass of the neighborhood.
This improvement has been made in the light of scout bee behavior, which is always attracted to better solutions and avoids decreased chances of obtaining better solutions [27].To calculate the alignment and cohesion behaviors, the scouts' neighbors' search landscape should be determined as shown in the pseudocode of the IFDO (see Figure (1)).In the IFDO, the search landscape of the artificial scout's neighbors is expressed as follows:  =  2 *  (7) where  is the landscape of the neighbors, and  is the landscape boundary.To functionalize these two suggested parameters to update the scout bee position, it should be determined whether the scouts fall into the landscape of the neighbors (), as shown in the pseudocode of the IFDO (see Figure (1)).The alignment and cohesion can be calculated according to equations ( 8) and (9).
} where  represents a scout in the neighbors' landscape and the role of the variable n is signifying which scout participates in determining the alignment and cohesion,  represents the current scout's position,  represents the neighborhood's number,   is the pace matching of scouts to that of other scouts in neighborhoods, and   represents the position of the k th neighboring scout.
In the IFDO implementation, there are upper boundaries and lower boundaries for the dimensions of the agents to address weight values that are too large or small.See equations (10) and (11).{ wvb > ub, wvb = ub * nrd (10) wvb < lb, wvb = lb * nrd (11) } where  is the weight value of a bee,  is the upper boundary of the weight value of a bee,  is the new random double value, and  is the lower boundary of the weight value of a bee.
The IFDO randomly moves the agents.The agent who remains still for finite time is the global best for this status; therefore, that agent randomly moves, and its movement will not be accepted until the agent obtains a better movement.See equation (3).
Because the FDO algorithm is PSO-based, this paper tries to add some PSO principles, such as alignment and cohesion, to improve the FDO algorithm from the perspective of convergence.Moreover, the IFDO has the same mathematical complexity as that of the FDO with a slight change in space complexity.The IFDO has time complexity O (d*p + COF*p) for each iteration, where d is the dimension of the problem, p is the population size, and COF is the cost of the objective function.On the other hand, IFDO has space complexity O (COF*p + p*pace+(alignment*1/cohesion)) for all iterations, where pace+ (alignment*1/cohesion) is the best previous pace stored.Hence, for the total number of iterations, the time complexity in the IFDO is comparable.On the other hand, for the progress of iterations, its space complexity will be the same.Space complexity is slightly increased in the IFDO compared to the FDO due to the addition of two additional loops to calculate alignment and cohesion, although this increase is negligible, especially in modern computers, which have a substantial amount of memory space and computational time; this causes the IFDO to have decreased time complexity and better convergence.

2) Randomization Weight Factor
The original FDO uses pace as the degree of movement and the artificial bee direction.The regular fitness weight (fw) value is used to manage the pace.On the other hand, random mechanisms completely determine the pace direction.Hence, the minimization of fw is expressed according to equation (2).
The authors of the FDO algorithm stated that the weight factor is used to control the fitness weight and that the value of the weight factor is either 0 or 1; if  = 0, it is a more stable search, and if wf = 1, it the convergence is high, and the chance of coverage is weak.Nevertheless, the authors mentioned that while the fitness function value entirely depends on the optimization problem, the reverse may also happen.Consequently, in our improved fitness-dependent optimizer, we use a random mechanism to control the fitness weight by generating a weight factor in the [0, 1] range, as shown in the pseudocode of the IFDO (see Figure (1)), to increase the IFDO performance, as is shown from the resulting test in section (4).In our proposed improvement, we change equation (2), as shown in equation (12).
With equation ( 12), we find the fitness weight value and then check if it is less than or equal to the generated weight factor, as shown in the pseudocode of the IFDO (see Figure (1)); if it is, then the weight factor is ignored in controlling the fitness VOLUME XX, 2017 weight.Otherwise, the weight factor participates in controlling the fitness weight according to equation (13). =  −  (13) This is a new way of finding the fitness weight, which is avoided by ignoring  in most cases, and  reasonably participates in many cases.In the IFDO, the weight factor is randomly set in every iteration for each scout, and a new  is generated in the new [0, ] range when a new, better solution is accepted, as shown in the pseudocode of the IFDO (see Figure (1)).From there, new  limited in [0, ] is better while for a new solution the IFDO will be more stable and higher coverage than the previous solution due to decreasing  for each iteration, as well as, it has more convergence than the setting  = 0.

IV. RESULTS AND DISCUSSION
This improved fitness-dependent optimizer's performance is verified using various standard test functions that exist in the literature; readers who are interested in knowing more about the methods of comparison can see references [27] [ 55] [57] [58].Furthermore, the FDO implementation that can be found through the link https://github.com/Jaza-Abdullah/FDO-Javawas downloaded; it was coded via the Java language.Then, the IFDO was created with the same language, and the IFDO algorithm was tested with the same parameter setting, the same test functions, and the same number of iterations as used in the FDO's tests.Moreover, the performance of the IFDO is evaluated against six state-of-the-art algorithms, namely, FDO, DA, GA, PSO, SSA, and WOA.The results of the tests of the 19 classical standard test functions and CEC-C06 tests for the different algorithms are taken from the original FDO work [27].In addition, two real-world applications are optimized using the IFDO; therefore, this section consists of five parts, as follows:

1) Classical Benchmark Test Functions
The IFDO performance is tested with three groups of test functions [55].There are various features for the test functions, such as unimodal, multimodal, and composite.To measure the algorithm's specific outcomes, these groups of tests are utilized.The stages of exploitation and convergence to infer a single optimum are verified by unimodal benchmark functions.On the other hand, there are many optimal solutions for the second feature (multimodal test functions); avoidance of local optima and stages of exploration are verified with this feature.It is worth mentioning that among the many optimal solutions, most are local optima, and there is only one global optimum.Avoiding local optimal solutions and moving toward a global optimum solution is essential to an algorithm.Additionally, with the third feature (composite test functions), various search areas can have various forms and large numbers of local optima.Composite test functions are generally moved, amalgamated, biased, and altered adaptations of other test functions.Difficulties that occur in real-world search areas can be identified by this type of standard function (see Tables 3,4 and 5 in the appendix) [27].

FIGURE 1. IFDO Pseudocode
To determine the average and standard deviation for each algorithm in Table (1) based on searching for the optimal solution, the algorithms in Table (1) are tested 30 times for 500 iterations and 30 scout bees each with 10 dimensions.Parameter explanations for the DA, PSO, and the GA can be obtained in [55].Moreover, there is only one parameter for the IFDO and the standard FDO, which is .For the FDO, in the test functions in Table (1), in only two of the cases (2 and 8),  is set to 1, and for all other cases,  is set to 0. In contrast, in our proposed algorithm (IFDO),  is set randomly in the [0, 1] range for all of the cases.However, this range will change when the algorithm detects a more suitable solution; for more detail, see Figure (1) functions can be found in Appendix Tables 3, 4 and 5).To confirm that the algorithm does not discriminate in the direction of origin, some degree of shifting is utilized for some of the test functions.The IFDO results and the FDO, GA, DA, and PSO results are illustrated in Table (1).The results show that the IFDO in TF5, TF8, TF11, and TF12 was driven better overall in comparison with the selected comparator algorithms.However, the IFDO was worse than the other algorithms in TF6, TF7, and TF13.Moreover, the results of TF7, TF17, and TF18 showed that the IFDO was more comparable to the original FDO, whereas the results of TF10 and TF19 demonstrated that the IFDO outperformed the other competitor algorithms.Additionally, the results of TF1, TF3, TF4, TF9, TF14, TF15, and TF16, which are highlighted in green in Table (1), proved that the IFDO surpassed the original FDO, GA, PSO, and DA in all the situations.

2) CEC-C06 2019 Benchmark Test Functions
To further evaluate the IFDO, the algorithm was tested on 10 current test function sets of the CEC standard.Professor Suganthan and his colleagues enhanced these test functions for the optimization of a single objective problem [56].A set of CEC standard test functions are planned to be used in the annual optimization competition "The 100-Digit Challenge", which is a common name for this set of test functions (see Table (2)).CEC01 to CEC03 are not similar to the test functions CEC04 to CEC10, while CEC01 to CEC03 are not shifted and rotated.However, a feature of scalability is utilized in both CEC01 to CEC03 and CEC04 to CEC10.Regarding the parameters, the CEC benchmark developer provided a set of parameters; the various dimensions for CEC01 to CEC03 are as shown in the Appendix in Table 6, and a 10-dimensional minimization problem in the [-100, 100] boundary range was set for the functions CEC04 to CEC10.
The CEC global optimum is entirely bound to point 1 to be more appropriate.With the FDO, the three other recent algorithms for optimization, DA, WOA, and SSA, are tested for competitiveness with our proposed IFDO.Various motivations led to choosing these recent algorithms.First, the improved FDO, the original FDO, and the other chosen algorithms are all PSO-based algorithms.Second, in previous works, these algorithms were obviously used.Third, on both real-world problems and benchmark test functions, all of these algorithms have exceptionally good results.Fourth, the authors of these algorithms freely provided the algorithms' operating methods.It is worth mentioning that the parameter settings of the chosen algorithms were not changed during the test.The same settings were used for all the opponents, as shown in papers [27] [55] [57] [58].Readers can access the MATLAB parameter setting arrangement and their implementations for the algorithms in this reference if desired [59].Furthermore, the generated random weight factor (wf) in the [0, 1] range is used for all test functions; however, this  is regenerated in [0,] for the next iteration if a better fitness weight () is achieved (see the pseudocode in Figure ( 1)).To perform the test of IFDO and other competitors' algorithms as presented in Table (2), 30 agents with 500 iterations were applied to each algorithm.
In the cases of CEC02, CEC03, CEC09, and CEC10, the IFDO was equal to the original FDO; however, the standard deviation (SD) was changed somewhat.On the other hand, the IFDO surpasses other competitors' algorithms in those cases.In cases CEC04 -CEC08, except for CEC06, the IFDO outperformed all of the opponents; however, in the case of CEC06, the IFDO performed worse than the DA, WOA, and SSA but better than the original FDO.Finally, it is clear that the average IFDO, FDO, and WOA results are equal, whereas the standard deviation of WOA is equal to 0, which means there is no way to promote enhancement because similar results are obtained in all cases.

3) Quantitative Measurement Metrics
Two quantitative metrics were used for further investigation and detailed observation of IFDO, as shown in Figures 2 and 3.
For each quantitative metric, among the unimodal standard functions TF1 to TF7, the first test function is chosen, among the multimodal standard test functions TF8 to TF13, the second test function is chosen, and among the composite standard functions TF14 to TF19, the third test function is chosen.For each investigation, searching the two-dimensional search space through 150 iterations was performed using 10 search agents.
The first measurement metrics test demonstrates how the search space is covered by the scout bee and presents the course of the convergence.During the test, the positions of the scout bees are logged from the start of the test to the end.Hence, this metric is simply a scout bee search history.At first, the whole area is rapidly discovered by the scout bee, and then, in the direction of optimality, they steadily move.Figure (2) presents the first quantitative metrics test.
The second measurement metric test illustrates the iteration process that measures the agent's global best convergence.When the number of iterations is increased, xi* (the global best agent) is more precise, and when the scout bee focuses on the exploitation and local search, rapid changes are observed.See figure (3).
Generally, the IFDO has the ability to successfully explore the search space, justifiably move in the direction of optimality and avoid local optima.

4) Real World Applications of the IFDO
Real-world problems are solved via the IFDO and FDO; in this section, we performed two real-world applications.The first application is the "aperiodic antenna array design," which was already tried by the original FDO.The second application is the "pedestrian evacuation model", which, to the best of our knowledge, is a new optimization problem that determines the best main door location inside an open area to evacuate people with greater efficiency.The results of the IFDO and FDO are evaluated for both real-world problems.

A-USE OF THE IFDO ON APERIODIC ANTENNA ARRAY DESIGNS.
Developments in radio astronomy and radar methods from the 1960s drew significant attention to aperiodic antenna arrays.Thinned antenna arrays and non-uniform antenna arrays are shown in Figure (4).
Real-number vectors are needed to express a position in non-uniform arrays to optimize the element position with the intention of achieving the highest sidelobe level (SLL).
Additionally, as shown in equation ( 7), a confident boundary position of the element is needed to avoid discordant lobes.Interested readers can consult [61].
The 10 elements of a non-uniform isotropic array are shown in figure (5) and setting the outermost element to have an average element position of   = 0.5λ 0 at position 2.25λ0 is a reason for optimizing the positions of the four elements alone.The limitations of this optimization problem with four dimensions are expressed in equation ( 14) as follows: Nonetheless, there is no element that can be smaller than 0.125λ0 or larger than 2.0λ0.Due to these limitations, each element has a boundary between 0 and 2.25 because the element 2.25λ0 is fixed, and the neighboring elements do not have the ability to be closer than 0.25λ0.Equation ( 15) defines the problem of the fitness function: where For this work, Figure (5) shows that θ s = 90 ° [62].Likewise, regarding the mentioned restrictions of this problem, similar to the original FDO, this problem was optimized using the IFDO algorithm in 200 iterations for twenty search agents (artificial bees), as shown in Figure (7), based on equation (15), which contains the average fitness value and the global best fitness in each iteration.The result shows that with element locations {0.701, 1.552, 0.402, 0.103}, the global best solution was achieved in iteration 29.Consequently, from both the IFDO and FDO results, it clearly appears that the IFDO is better for optimizing this problem due to its increasing capability of making better decisions in exploring better hives among the existing potential hives by adding alignment and cohesion when the scout wants to go to a different location in the defined space search; it also avoids unsuitable exploitation VOLUME XX, 2017 in achieving a better solution when, for every achieved better solution, the IFDO generates a new  to control the  (see the pseudocode in Figure (1)).

B-IFDO VS THE FDO ON A PEDESTRIAN EVACUATION MODEL.
In the last two decades, scenarios involving the evacuation of crowds and pedestrians have been studied in many works to reduce the negative aspects of emergency situations, such as deaths, damages, and injuries [63].In this part of this paper, we create a simple pedestrian evacuation model based on a cellular automata model (see Figure ( 8)), fuzzy logic ideas, and statistical equations.Readers who desire to know how this evacuation model is created and how the ideas of fuzzy logics and statistical equations are utilized to define the pedestrians' desired speeds can access reference [64].Additionally, the evacuation time of each pedestrian is calculated via the pedestrian's desired speed and its distance from the exit door as expressed in equation ( 17), and the average of the evacuation time of the pedestrians is used as the average fitness value.
= (/2) *  (17) where  represents the pedestrian's distance from the door exit locations, which is calculated from the equation of distance (18), and  represents the pedestrian's speed.
where  2 and  2 represent the coordinates of the exit door location, and  1 and  1 represent the coordinates of the pedestrian's location.
Finally, both the IFDO and FDO algorithms are applied to this model to achieve the global best solution by finding the best location of the main door through which to evacuate people during the evacuation process.The results showed that the IFDO was more efficient and reached the optimum solution with only 38 iterations, whereas the FDO reached the optimum solution with 57 iterations.Figure (9) shows the results of both algorithms.The reasons behind the IFDO's efficiency are related to the selected parameters, alignment, and cohesion, in updating the position of the artificial scout bees, which makes the algorithm perform better explorations in finding a suitable solution in the landscape.Second, the randomization in defining  in every iteration for each scout bee when a better solution is achieved makes the algorithm avoid unnecessary exploitations to gain a better solution.Third, the IFDO, as regards covering a reasonable search space, converges sooner to global optimality.For both FDO and IFDO, after testing on various real-world applications and classical and modern benchmark test functions, it was found that their performance depended on the number of search agents.Hence, both algorithms are limited to using a small number of search agents; for example, the accuracy of the algorithms suffers noticeably when they use fewer than five search agents.Conversely, using a large number of search agents enhances the accuracy and rate with more space and time.

5) IFDO VS FDO Execution Time
Here, execution time is considered for various tests, such as classical benchmark test functions, modern IEEE CEC 2019 benchmark test functions, and two real-world applications, aperiodic antenna array designs (AAAD) and pedestrian evacuation models (PEMs).The results of the total time are briefly provided in Tables 7, 8, and 9.
From the results shown in table (7), the execution times of the modern IEEE CEC 2019 benchmark test functions for both the IFDO and FDO were relatively the same; for instance, the IFDO had a smaller total time of execution than the FDO in the execution of the CEC02, CEC05, CEC07, CEC08, and CEC10 cases; however, the IFDO took a larger portion of the total time to execute the CEC01, CEC03, and CEC06 cases.The IFDO and FDO took the same total time to execute the CEC04 and CEC09 cases.Moreover, the results of the classical benchmark test functions in table (8) show that the IFDO requires less time than the FDO to execute most of the test functions, such as TF1, TF5, TF7, TF10, TF12, TF13, TF15, TF18, and TF19, the same amount of time in a few cases, such as TF4 and TF14, and more time in some cases, such as TF2, TF3, TF6, TF8, TF9, TF11, TF16, and TF17.Finally, the execution time results of the realworld applications in Table (9) illustrate that the IFDO is more capable than the FDO from the perspective of spending time on PEM real-world applications, whereas it is not as powerful as the FDO in executing the AAAD.

V. ANALYSIS OF THE RESULTS
The IFDO modified the FDO in both scout bee movements, to update their positions, and weight factor (), to control the fitness weight (), to find a better solution.From the results and discussion, it appears that these changes improve both exploration and exploitation.From there, these changes improve the time complexity and convergence.To evaluate this idea, readers can reference subsection IV in subsections 1, 2, 3, 4, and 5 to see that after the modifications, the IFDO was better in the classical benchmark test function results than the other competing algorithms.For instance, in TF1, TF3, TF4, TF9, TF14, TF15, TF16, as well as in TF7, TF17, and TF18, the results showed the IFDO was more similar to the original FDO, while the results of TF10 and TF19 confirmed that the IFDO outperformed the other competing algorithms.Moreover, the IFDO had better results in cases CEC04-CEC08 than the opponents, except for case CEC06, in which it had a worse result than the opponents and a better result than the FDO.On the other hand, in cases CEC02, CEC03, CEC09, and CEC10, although the standard deviation was different from that in the original FDO, the IFDO was equivalent to that in the original FDO.Furthermore, the results of the quantitative measurement metrics revealed that the IFDO had the ability to successfully explore the search space, move toward optimality, and avoid the local optima.Additionally, the IFDO and FDO were used with real-world applications in 200 iterations for twenty search agents (artificial bees), and the IFDO outperformed the FDO algorithm.For example, in the aperiodic antenna array designs, the IFDO reached optimality with just 29 iterations, while the number of iterations needed in the FDO was 78.In the pedestrian evacuation model, the IFDO reached optimality in only 38 iterations, while the FDO required 57 iterations.From these results, it is possible to say that IFDO generally had a better performance in reaching optimality and better exploration and exploitation.Finally, the IFDO was compared with the FDO from the perspective of execution time.For this purpose, the classical benchmark test functions, IEEE CEC 2019 benchmark test functions, and two real-world applications, AAAD and PEM, were utilized.From the results, both IFDO and FDO were relatively similar in most of the results for the classical benchmark and the IEEE CEC 2019 benchmark test functions.However, the results of these algorithms in optimizing the two real-world applications were generally different.For instance, the IFDO required a shorter time than the FDO to optimize PEM: 28 seconds and 31 seconds, respectively.Conversely, the IFDO required a larger portion of time than the FDO to optimize AAAD: 47 seconds and 44 seconds, respectively.

VI. CONCLUSION
Improvements have been made to the fitness-dependent optimizer from two main perspectives.First, for updating the artificial scout bee position, in the IFDO, two additional parameters were added to the position update equation in the original FDO: alignment and cohesion.Second, the weight factor () was changed from a stable value to a random value in controlling the fitness weight of the FDO algorithm.These changes were made in the IFDO with the aim of moving the scout bees toward optimality with better performance.To evaluate the performance of the IFDO, it was tested with 19 single-objective benchmark test functions (unimodal, multimodal and composite test functions).Moreover, the 10 modern benchmarks of CEC-C06 were utilized to test the IFDO.Furthermore, quantitative measurement metrics were used to show that the IFDO succeeded in exploring the search space, moving towards optimality, and avoiding the local optima.Additionally, both the IFDO and FDO were used to execute the classical benchmark test functions, IEEE CEC 2019 test functions, and two real-world applications.Each test function's total time of execution was specified and compared.
The results of the IFDO tests with the classic and modern test functions were compared to those of the FDO, two other distinguished algorithms (GA and PSO), and three state-of-theart algorithms (SSA, WOA, and DA).According to the results, the IFDO, except for some cases in which it had comparable results, outperformed the preferred algorithms in most cases.It could be said that this advancement was due to the modification in updating the artificial scout position, which led to more convenient exploration during the search for a better solution among many potential hives (solutions), and due to the randomization of the  for each scout bee in every iteration, which led to a better  participating in making better decisions in the exploitation to find better solutions.Additionally, the IFDO produced faster convergence to global optimality when considering rational coverage of the search space.On the other hand, the use of various numbers of scout bees affected the accuracy, cost, time, and space of the algorithm.When more than five scout bees were used, the enhanced accuracy of the algorithm could be clearly seen; however, a smaller number of scout bees led to decreased accuracy of the algorithm.In addition, to confirm that the IFDO has the ability to address real-life applications, two real-world problems were selected: the first problem was an existing real-world "aperiodic antenna array design" problem, and the second problem was a realworld crowd evacuation problem that we created.In both applications, the IFDO outperformed the original FDO; in the first application, the FDO needed 78 iterations to discover the global optimal solution, whereas the IFDO needed only 29 iterations to obtain the global optimal solution.Additionally, in the second application, the IFDO outperformed the original FDO; although the IFDO needed only 38 iterations to obtain the optimal global solution, the FDO needed 57 iterations to achieve the same result.It is worth mentioning that because this performance is an improvement compared with the original FDO, the improved fitness-dependent optimizer was selected as the official name of this improved algorithm.This proposed algorithm is more suitable for application fields of engineering, design, industry, helath, education, energy, and evacuation.
In future studies, multiobjective and binary objective optimization problems will be tested with the IFDO.Finally, adaptation and hybridization of the IFDO with other algorithms will be the main focus of future work.Also, the performance of IFDO can be further evaluated against other popular algorithms, such as WOA-BAT [65], Donkey and Smuggler Optimisation [66], and Modified Grey Wolf Optimiser [67], Modifications of Dragonfly Algorithm [68], Modifications of Backtracking Algorithm [69].VOLUME XX, 2017

FIGURE 2 .FIGURE 3 .
FIGURE 2. Using unimodal, multimodal, and composite test functions for the IFDO algorithm search history

FIGURE 6 .
FIGURE 6.The average fitness and global optimum as a result of optimizing aperiodic antenna array designs in 200 iterations with 20 artificial scout bees using the standard FDO.Based on the limitations stated in equation (14), for twenty artificial scout bees within 200 iterations, the original FDO algorithm was utilized to optimize this problem.Moreover, based on equation (15), the average fitness value and the global best fitness in each iteration are shown in Figure (6).The results indicate that with the element locations {0.713,1.595,0.433,0.130} in iteration 78, the global best solution was achieved.Likewise, regarding the mentioned restrictions of this problem, similar to the original FDO, this problem was optimized using the IFDO algorithm in 200 iterations for twenty search agents (artificial bees), as shown in Figure(7), based on equation(15), which contains the average fitness value and the global best fitness in each iteration.The result shows that with element locations {0.701, 1.552, 0.402, 0.103}, the global best solution was achieved in iteration 29.Consequently, from both the IFDO and FDO results, it clearly appears that the IFDO is better for optimizing this problem due to its increasing capability of making better decisions in exploring better hives among the existing potential hives by adding alignment and cohesion when the scout wants to go to a different location in the defined space search; it also avoids unsuitable exploitation

FIGURE 7 .
FIGURE 7. The average fitness and global optimum as a result of optimizing aperiodic antenna array designs in 200 iterations with 20 artificial scout bees using the IFDO.

FIGURE 8 .
FIGURE 8.The area of the pedestrian evacuation model.