1 Introduction

Optimization is a common problem in all fields of science and engineering problems; each problem has a wide range of issues and solutions. Optimization problems aim to find the best feasible solution(s) on the threshold of the optimal responses. Exact algorithms can find the optimal answer accurately; however, these algorithms do not hold the apt efficiency to solve challenging and complex optimization problems. The optimisation becomes more complicated with the surge in the dimensions of the problems. The execution time increases exponentially, according to the statement of the problem. Approximate algorithms are developed, finding the near-optimal solution in a considerably short time to solve challenging and complex optimization problems1,2,3,4,5,6.

Approximate algorithms are divided into two types: heuristic and metaheuristic7. They are approximate methods of solving optimization problems. Heuristic algorithms often seek a near-optimal answer in a reasonable computational time. However, heuristic algorithms do not guarantee the optimal solution, get stuck in local traps, and have premature convergence. Metaheuristic algorithms have been introduced due to the weakness of heuristic algorithms. Each metaheuristic algorithm uses unique methods to get out of the local trap or prevent it from getting stuck in it. As a result, metaheuristic algorithms can find high-quality answers for all optimization problems without getting stuck in local traps8. Metaheuristic optimization algorithms have relatively simple concepts and are easy to implement. They do not need additional information and can overcome local optimums 9. These algorithms can be classified into three main categories: evolution-based methods, physics-based methods, and population-based methods. Regardless of their nature, all metaheuristic optimization algorithms have the exact mechanism. The two main phases of the search process are exploration and exploitation in population-based metaheuristic optimization algorithms. In the exploration phase, random behaviour helps search the search space. However, the primary goal is rapid exploitation in promising areas. Finding the right balance between these phases is essential since metaheuristic algorithms' nature is based on a random population. It has been shown in the literature that chaotic mappings can improve the balance between the two phases. A central and interesting query is how some chaotic mapping can improve an algorithm's performance and others do not. There is still no satisfactory theoretical framework for this analysis. This analysis presents the progress of the hybridisation of chaos and the metaheuristic algorithm. However, the hybridisation of metaheuristic algorithms with chaotic maps has been done by various researchers. It has balanced the two major and central phases of metaheuristic algorithms10.

An improved version of the Grey Wolf Optimizer (GWO) algorithm has been provided in Ref 11. to improve the exploration and exploitation. This improvement has been made through the chaotic logistic map, Opposition-Based Learning (OBL), Differential Evolution (DE), and Disruption Operator (DO). Chaotic logistics and OBL strategy are used to assign the primary candidate solutions, and these approaches address random population problems and increase algorithm convergence. The DE operators are then hybrid with the GWO algorithm. DE operators are performed as a local search mechanism to improve exploration capability by updating the GWO population. Correspondingly, after updating the solutions using hybridisation of GWO and DE, DO has been used to advance the exploration capability in which the DO has been exploited to maintain population diversity. Therefore, the hybridisation of logistic mapping, OBL, DE, and DO has offered the GWO method and apparatus to improve the search space's balance between exploration and exploitation without affecting the required computational time.

The chaos model is presented in Ref. 12 based on adaptive inertia weight to overcome the premature convergence problem in the Particle Swarm Optimization (PSO) algorithm. The initial population was generated using chaotic mapping, which improved population diversity and particle rotation, and used cube mapping sequences to assign the particles' primary position and velocity. The new inertia weight value is adjusted comparatively with the feedback parameters, including the number of iterations, the aggregation degree factor, and the evolution rate parameter. The relationship between variance, population fitness, and premature convergence threshold has prevented premature convergence. If the population fitness variance is less than the predetermined threshold, the chaos disorder surpasses the local optimal, and the optimal local problem would be solved. The improved evolution speed parameter is used as the number of feedback iterations, the aggregation factor's degree, and the adaptive inertia weight parameters. The experiments on four fitness functions show that the proposed algorithm's performance exceeds the other algorithms, improves convergence speed, and increases the ability to pass the local optimal.

Moreover, the Starling PSO algorithm, the aggregation of Starling birds, has been proposed to improve the efficiency of the global PSO search. The standard PSO performance depends on the parameter's values, and parameter adjustment is beneficial for obtaining exploration and exploitation capabilities. Nonlinear adjustment of inertial weight and chaotic search method based on logistic mapping improves the global search efficiency in the basic PSO. It helps the particles move away from the local optimal. Therefore, in Ref. 13 Chaotic Starling PSO algorithm is presented. The inertial weight is adjusted using a nonlinear decreasing approach, and the acceleration coefficients are adjusted using a chaotic logistic mapping strategy to avoid the early maturation of the search process. The speed update has used the term dynamic disruption to improve algorithm convergence14. A local search strategy based on the Starling birds' behaviour uses information from the nearest neighbours and determines a new cumulative position and rate. The two-particle selection methods maintain the Euclidean distance, and the value of the proportional function supports the particle population's diversity. These improvements aid the particles in avoiding stagnation and discovering unvisited areas in the problem space. The experiments' results on optimising the standard function and traditional clustering problems indicate this favourable efficacy method. This algorithm has better convergence features and a higher global search capability than the basic PSO and other evolutionary algorithms.

Authors in Ref. 15 present a chaos-based method for Bacterial Foraging Optimization (BFO). Adaptive Chemotaxis step settings allow fast convergence and improve convergence precision. The Chaotic perturbation operation provides the search's condition to escape local optimality and achieve better convergence precision. The proposed algorithm tested five benchmark functions, and the results show that the proposed algorithm had a better performance than the basic BFO and BFO with linear decreasing chemotaxis step.

In the present paper, first, the FFA is improved by the QOBL and chaotic-based local search mechanisms. Then, the chaotic-based local search mechanism is utilised for twelve different chaotic functions. Improvements made using the mechanisms used complement each other. And with the FFA algorithm has shown high efficiency. Because in addition to increasing the variability using chaotic maps at all optimisation stages, the Intensification component has also been improved by using OBL. The same mechanisms have improved the FFA algorithm and have covered all the weaknesses.

The CQFFA algorithm tests 23 well-known and widely used test functions with all the chaotic functions. The results in each chaotic function are statistically compared with the other functions' results using convergence diagrams. Finally, the proposed best chaotic function algorithm is applied to several real-world engineering problems for a subtler analysis. The obtained results are compared with the results of several similar algorithms. In brief, the contribution of the paper can be summarised as follows:

  • Chaotic maps have been embedded into FFA for the first time.

  • The chaotic maps are used in a local search technique in the CQFFA algorithm.

  • The QOBL strategy has improved the problem of trapping in local minima.

  • The convergence rate is boosted using a chaotic-based local search.

  • The CQFFA algorithm is tested on twenty-three different well-known test functions.

  • The results of the CQFFA algorithm are compared with several similar state-of-the-art algorithms.

  • The CQFFA algorithm has been applied to six real-world engineering problems.

  • Experiments show the superiority of the CQFFA algorithm compared with competitor algorithms.

The present paper has been organised as follows: Sect. 2 summarises the improved algorithms using chaos maps; Sect. 3 gives a brief overview of the FFA algorithm, various chaotic functions, and mathematical models. In Sect. 4, the CQFFA algorithm is explained; Sect. 5 presents the experimental tests and findings, and finally, in the last section, conclusions and future research are discussed in detail.

2 Related Works

For scientists and researchers, there has always been the question: "How can some chaotic mappings improve the performance of an algorithm while others do not, and why the same maps do not act similarly for each algorithm?" and so far. They have not provided an excellent theoretical framework for advancing the performance of metaheuristic algorithms with chaotic maps. Therefore, by reviewing the literature, various chaos maps have been used to improve metaheuristic algorithms' versions, some of which are mentioned here.

In Ref. 16, the trapping in the optimal local problem and premature convergence in the quantum Genetic Algorithm (GA) has been solved by analysing the Piecewise Logistic Chaotic Map characteristic. Furthermore, it improves the quantum GA using the chaotic optimization approach based on piecewise logistic chaos. It optimises the quantum upgrade process by changing the angle and rotation with quantum GA's fuzzy adaptive mode. By analysing the search process of quantum GA, the optimization colony with the ergodicity of chaotic operator in the public domain, not changing the quantum GA mechanism and introducing the chaos optimization method based on Piecewise Logistic chaotic map and quantum update with fuzzy adaptation, the so-called algorithm increases the development speed of the colony and significantly increases the performance of quantum GA‌. The simulation results show that this method improves local and global searches, overcoming slow convergence and getting stuck in local optimization than quantum and canonical GA.

Furthermore, the solution is presented in Ref. 17 for being trapped in the local optimal, slow convergence, and inefficiency for high-dimensional problems in the chaos version of the Fruitfly optimization algorithm, whose performance is evaluated using ten chaotic maps. In the meantime, the Chebyshev map shows superiority regarding the reliability of being globally optimised and algorithm success rate. The Chaotic-based DE algorithm is presented in Ref. 18 to determine the optimal control variables for optimising the baker's yeast drying process. Instead of the random number generator, four different chaos maps, such as Lorenz, Rossler, Chua, and Mackey–Glass, have been used to determine the population's initial population in the mutation operation. The chaos-based structure for generating entities in a population is introduced instead of generating a random number. Ten optimization problems have been used to demonstrate the efficacy of Chaotic-based DE algorithms.

Additionally, Ref. 19 presents an OBL Chaotic DE algorithm. The initial population is generated according to the principles of OBL, and the dynamic matching of the F_measure factor is performed using the chaos sequence. The obtained numerical results of this algorithm on 18 benchmark functions were compared with the results of the DE algorithm and the OBL-based DE algorithm. The findings indicated that the proposed method finds superior solutions and simultaneously possesses satisfactory global search ability, stability, and convergence speed. Using chaos is among the techniques for adjusting individual parameters in metaheuristic algorithms. Therefore, in Ref. 20, a chaotic version has been provided to improve the global search in the bat algorithm called the CBA. Four versions of the CBA have been introduced, and thirteen chaos maps have been exploited to validate each of these four versions. Comparing the various CBAs, the algorithm uses sinus mapping as pulse rate, namely CBA-IV, is considered the best type. The results show that the improvement of the new algorithms is due to the application of definite chaotic signals instead of random and constant values. Statistical results and success rates of CBAs show that adjusted algorithms can improve the reliability of general optimization. The results show that some versions of the CBA can perform better than the traditional bat one.

Ten chaos maps have been introduced in the Moth-Flame Optimization Algorithm (MSA) to surge the best prospectors to exploit the best promising solutions21. Experiments have been tested on seven benchmark functions with 30 executions. These performances' best and average modes show that chaotic maps can improve the essential MSA's efficiency in terms of convergence speed. Simultaneously, a sinusoidal map is the most preeminent map to improve the efficiency of the MSA. Four improved versions of the stochastic Fractal Search Algorithm (FSA) are presented in Ref. 22 with chaos theory to solve optimization problems and apply them in control design. The chaotic version of the Stochastic FSA performed better than the algorithm itself. It was influenced by two chaos maps (Chebyshev and Gauss/Mouse maps) that focused on the convergence speed and precision of the Stochastic FSA search results. Two standard test functions with the dimensional and landscape levels have been used to evaluate the proposed algorithm's performance with previous algorithms using the IEEE CEC2014 benchmark functions. The proposed approach has also been implemented to optimise fuzzy logic PD-type and traditional PID controllers for a Twin rotor system in hovering mode. The simulations show that the Chaotic FSA performed better with the Gauss/Mouse chaotic map in the initial upgrade and propagation process than the Chaotic FSA and Stochastic FSAs. Besides, the PD-type fuzzy logic controller in the dual-rotor system design control performed better than the PID controller.

Furthermore, in Ref. 23, ten chaotic maps are plotted on the Gravitational Search Algorithm (GSA) named Chaotic GSA (CGSA). An adaptive normalisation method is also provided for the smooth transition from the exploration phase to the exploitation phase. Twelve standard functions with bias have evaluated the efficiency of CGSA algorithms in exploration and exploitation. The results show that chaotic maps have improved GSA's exploration and exploitation phase. A statistical test called Wilcoxon has been conducted to examine the importance of results. The results show that a sinusoidal map is the best option for CGSA performance. Chaos maps improve the exploration phase since changing G's value helps the affected masses be saved from the local minimum. Chaos maps can be used to balance exploration and exploitation. Sinus map helps GSA to avoid local minimums better than other chaotic maps. The adaptive normalisation method allows the sinusoidal map to focus on exploitation instead of exploration in the final iteration.

In Ref. 24, chaos theory has been used to adjust the Crow Search Algorithm (CSA) parameters to improve the general convergence rate and exploration/exploitation trends of the CSA to solve fractional optimization problems. The CSA randomly leads to unsatisfactory solutions in some cases, which in hybridisation with the chaos method can accelerate the convergence efficiency and improve the quality of the solutions. The simulation results have been tested on 20 well-known fractional benchmark problems, enhanced by introducing chaotic maps, exploration capabilities, exploitation, and early convergence of the CSA. It works better than compared algorithms in terms of optimization. Moreover, it can find optimal global solutions for fractional problems and electrical applications. As computational speed reduces, the convergence speed reduces computational time. Also, the effectiveness of the proposed chaotic CSA has been justified using the non-parametric Wilcoxon signed-rank test. The results show that the proposed method has performed satisfactorily in terms of the quality and reliability of other algorithms.

The Grasshopper Optimization Algorithm (GOA) is an algorithm inspired by the collective behaviour of grasshoppers. In Ref. 25, the GOA optimization process introduces Chaos theory to increase its general convergence rate. Ten chaos maps have been applied to balance exploitation and exploration in the optimisation process and reduce grasshoppers' absorption/repulsion forces. The proposed methods are evaluated on thirteen test functions. The results show that chaotic maps can significantly improve GOA performance. The results also show that c1 and c2 cannot greatly enhance the performance of GOA. The improvement in efficiency is that the circle map provides a better balance between exploration and exploitation. The optimization process prevents it from getting stuck in the local optimal. Adjusted algorithms also improve general optimization confidence and increase the quality of the results.

Some of the other chaos-enhanced Metaheuristic algorithms are chaotic GAs26, Chaotic SA 27, Chaotic local search-based differential evolution algorithms28, Chaotic Hybrid Cognitive Optimization Algorithm29, CABC–CSA 30, Chaotic Krill Herd algorithm 31, Chaotic Salp Swarm Algorithm 32, Chaotic vortex search algorithm33, Chaotic Quantum CSA34, Chaotic Antlion Algorithm35, Chaotic PSO 36, Chaotic GWO 37. Finally, this paper presents the CQFFA algorithm to solve optimization problems, discuss the following basic concepts and proposed algorithms, and evaluates different methods and chaotic modes.

3 Fundamental Research

In this section, the basic concepts used in this paper are explained. Subsection (3.1) will briefly and usefully explain the FFA algorithm, and subsection (3.2) will describe the chaos maps using which the CQFFA is presented.

3.1 Farmland Fertility Algorithm (FFA)

FFA is a novel metaheuristic algorithm inspired by the fertility of agricultural land in nature 38. In this algorithm, the solutions are optimised based on the division of agricultural lands. With the optimal exploitation of two types of internal and external memory, the solutions of each section are optimised. According to Refs. 6, 47, the formulation and steps of this algorithm are as follows. First, the initial population is generated randomly, and the initial parameters are set. Obviously, unlike other algorithms, solutions are also divided. Then, the number of primary populations is determined by Eq. (1):

$$N=k\times n$$
(1)

In Eq. (1), \(n\) indicates the total number of solutions in the search space, and \(k\) indicates the number of land parts or space. \(n\) indicate the number of solutions available in each section of agricultural land. This number is a variable and an integer. The available solutions in the entire search space are evaluated according to the fitness function at this stage. FFA has a separate section for determining the value of \(k\) that specifies the optimal value for \(8\ge k\ge 2\). However, the value of \(k\) can be changed according to the optimization problem. The quality of each part of the agricultural land is obtained based on the average solutions available. Initially, the solutions are assigned to different sections by Eq. (2).

$${\mathrm{Section}}_{\mathrm{s}}=\mathrm{x}(\mathrm{aj}) ,\mathrm{ a}=\mathrm{n}\left(\mathrm{s}-1\right):\mathrm{n}\times \mathrm{s },\,\,\mathrm{ s}=\left\{\mathrm{1,2},\dots .\mathrm{k}\right\},j=\left\{\mathrm{1,2},\dots .D\right\}$$
(2)

In Eq. (2), the existing solutions separate each section to calculate each section's average. x is all solutions in the search space, s represents the section number, and j = {1,2, … D} indicates the dimension of the variable x. After segmentation, the quality of each segment is determined by Eq. (3).

$${Fit\_Section}_{s}=Mean\left( all\,fit\left({x}_{ji}\right)in \,{Section}_{s} \right)\,\, s=\left\{1.2.\dots .k\right\}.i=\left\{1.2.\dots .n\right\}$$
(3)

In Eq. (3), \(Fit\_Section\) indicates the value that determines the quality of the solutions in each part of the agricultural land, which in the search space is the same as the average fit or suitability of all the solutions in each part. Therefore, for each agricultural land sector, the average of all solutions within each sector is obtained and stored in \({Fit\_Section}_{s}\). Equation (4) is used to update local memory, and Eq. (5) is used for global memory.

$${M}_{Global}=\mathrm{round}\left(t\times N\right); \,\,0.1<t<1$$
(4)
$${M}_{local}=\mathrm{round}\left(t\times n\right);\,\, 0.1<t<1$$
(5)

In Eqs. (4) and (5), \({M}_{Global}\) shows the number of solutions in global memory and \({M}_{local}\) indicates the number of local memory solutions, and the solutions are based on fitness and suitability in these memories. Moreover, both memories are updated at this stage, and both are updated at this point. As the work progresses, the part with the worst quality changes the most. The worst part of agricultural land in terms of quality is that all the worst parts are combined with global memory solutions according to Eqs. (6) and (7).

$$h=\alpha .rand\left(-1.1\right)$$
(6)
$$Xnew=h.\left({X}_{ij}-{X }_{MGlobal}\right)+{X}_{ij}$$
(7)

In Eq. (7), \({\mathrm{X}}_{\mathrm{MGlobal}}\) is a random solution that is one of the available solutions in global memory, and α is a number between zero and one, initialised in the FFA algorithm.\({X}_{ij}\) is the solution in the worst part of the agricultural land selected to apply the changes, and h is a decimal number calculated based on Eq. (6). Solutions in other sections change based on Eqs. (8) and (9).

$$h=\upbeta .\mathrm{rand}\left(0.1\right)$$
(8)
$$Xnew=h\times \left({X}_{ij}-{X}_{uj}\right)+{X}_{ij}$$
(9)

In Eqs. (8) and (9), \({X}_{uj}\) is a random solution among the available solutions in the whole search space; that is, a random path is selected among all the solutions in the sections, and β is a number between intervals zero and one, which must be initialised in the proposed first algorithm. \({X}_{ij}\) is a solution from the parts (except for the worst part) that have been selected to apply the changes, and h is a decimal number that can be calculated based on Eq. (9). In this algorithm, farmers in the final stage decide to combine each of the soils within the sectors of the agricultural land based on the bests available in their local memory (\({Best}_{Local}\)). The condition for combining with the available bests in local memory is that not all solutions in all sections are combined with their local memory, and at this stage, some of the solutions in all places are combined with the best solution, which has been found so far (\({Best}_{Global}\)) to improve the quality of the solutions in each one of them. The hybridisation of the desired resolution with \({Best}_{Global}\) or \({Best}_{Local}\) is determined by Eq. (10).

$$H=\left\{\begin{array}{c}\begin{array}{c}{X}_{new}={X}_{ij}+{\omega }_{1}\left({X}_{ij}-{Best}_{Global}\left(b\right)\right)\,\, if\,\, Q>rand \\ \\ \\ {X}_{new}={X}_{ij}+rand(0.1)\times \left({X}_{ij}-{Best}_{Local}\left(b\right)\right)\,\, else \end{array}\\ \end{array}\right.$$
(10)

In Eq. (10), the new solution may create in two ways. Variable \({X}_{ij}\) is a solution from the parts (except for the worst part) that have been selected to apply the changes. Q is a parameter initialised between zero and one. This parameter specifies the extent to which solutions are combined with\({Best}_{Global}\). \({\omega }_{1}\). The FFA algorithm's parameters are integer and must first be determined in the first algorithm, gradually decreasing in value based on the algorithm's iteration (Eq. (11)).

$${\omega }_{1}={\omega }_{1}.{R}_{v} , {0<R}_{v}<1$$
(11)

Correspondingly, the available solutions throughout the search space are evaluated according to the objective function. This step is done regardless of the number of sections on all the available solutions in the search space. The termination conditions are checked at the end. If the end condition is met, the algorithm ends. Otherwise, the algorithm will continue to work until the termination conditions are met.

3.2 Chaos and Chaotic Map Functions

Chaos means clutter, turmoil, and disorder. The term implies the absence of any stable structure and everyday conversation. It recognises disorganisation, inefficiency, and a negative denotation. With the advancement of scientists' attitudes and the clarification of its scientific and theoretical dimensions, today's disorder and chaos are no longer considered disorganisation and disorder; instead, the disorder is unpredictable, and dynamic phenomena have their characteristics. Disorganisation is a kind of ultimate order inside disorder, and this theory studies chaotic dynamic systems. Chaotic systems are nonlinear and dynamic systems that are very sensitive to their initial conditions. A small change in such a system's initial state causes many future changes. This phenomenon is known as the butterfly effect in chaos theory. The behaviour of chaotic systems seems random on the surface. However, there is no need for an accidental element to cause chaotic behaviour, and specific dynamic systems can exhibit chaotic behaviour. Scientists initially believed that effects are linearly the result of the causes of the main body of specific categories. However, now they emphasise the creative role of disorder and chaos and see the world as a collection of systems that operate in a self-organised and unexpected method. These systems move from order to disorder. For this reason, further improvement of metaheuristic algorithms has become a scorching new research topic33, 39, 40.

In this paper, twelve different chaotic maps like Chebyshev map 41, Circle map 42, Iterative map 43, Intermittency map 44, Liebovich map 42, Logistic map 45, Piecewise map 46, Sawtooth map 44, Sine map 47, Singer map48, Sinusoidal map 44, and Tent map 49 has been used. Table 1 lists the formulas and specifications of the chaos maps used in the present paper.

Table 1 The mathematical details of the chaotic maps 41,42,43,44,45,46,47,48,49

4 CQFFA Algorithm

This section describes the details of the proposed CQFFA algorithm. Two new mechanisms have been integrated into the necessary FFA. The first mechanism is the QOBL, an extension of the opposition operator50,51,52,53. The QOBL improves the exploration and exploitation capabilities of the optimization algorithm. The QOBL position can be calculated as Eq. (12).

$${\mathrm{QX}}_{\mathrm{i}}^{\mathrm{j}}=\left\{\begin{array}{c}{\mathrm{M}}_{\mathrm{i}}^{\mathrm{j}}+r.({\mathrm{OX}}_{\mathrm{i}}^{\mathrm{j}}-{\mathrm{M}}_{\mathrm{i}}^{\mathrm{j}}) \quad {\mathrm{X}}_{\mathrm{i}}^{\mathrm{j}}<{\mathrm{M}}_{\mathrm{i}}^{\mathrm{j}}\\ {\mathrm{OX}}_{\mathrm{i}}^{\mathrm{j}}+r.({\mathrm{M}}_{\mathrm{i}}^{\mathrm{j}}-{\mathrm{OX}}_{\mathrm{i}}^{\mathrm{j}}) \quad otherwise\end{array}\right.$$
$${\mathrm{M}}_{\mathrm{i}}^{\mathrm{j}}=({\mathrm{lb}}^{\mathrm{j}}+{\mathrm{ub}}^{\mathrm{j}})/2$$
$${\mathrm{OX}}_{\mathrm{i}}^{\mathrm{j}}={\mathrm{lb}}^{\mathrm{j}}+{\mathrm{ub}}^{\mathrm{j}} -{\mathrm{X}}_{\mathrm{i}}^{\mathrm{j}}$$
(12)

where \(\mathrm{X}\) is an n-dimensional position vector in the problem space, \(\mathrm{r}\) is a random number between (0,1), \(\mathrm{j}\) is the jth dimension, \({\mathrm{OX}}_{\mathrm{i}}^{\mathrm{j}}\) are the opposite of the ith position. \(\mathrm{lb}\), and \(\mathrm{ub}\) are the lower and upper bounds of the problem space, respectively. The QOBL mechanism has been applied to both initialisation and the main loop of the CQFFA algorithm. The second mechanism is the CLS. Chaos theory is a popular way to increase the randomness and searchability of metaheuristic algorithms. The chaos theory is used as chaotic maps in optimization algorithms. In the proposed CQFFA algorithm, the chaotic maps have been used in a CLS method. The CLS method increases exploitation capability by searching nearby places. Also, the CLS method has been applied to the best solution obtained by the algorithm. The CLS method can be formulated as Eq. (13).

$${X}_{best}^{^{\prime}}={X}_{best}+(C-0.5)\times ({X}_{i}-{X}_{j})$$
(13)

where, \({X}_{best}\) is the current best solution obtained so far, \({X}_{best}^{^{\prime}}\) is the newly generated best solution, \(C\) is the chaotic value generated by the chaotic map, \({X}_{i}\), and \({X}_{j}\) are two randomly selected solutions from the population. Furthermore, in the CLS, a greedy mechanism has been used. That means, if \({X}_{best}^{^{\prime}}\) has better fitness, it is replaced with the \({X}_{best}\), otherwise the \({X}_{best}^{^{\prime}}\) is ignored and the \({X}_{best}\) is kept.

The pseudo-code of the CQFFA algorithm has shown in Fig. 1.

Fig. 1
figure 1

The pseudo-code of the CQFFA algorithm

In Sect. (5), the performance of the proposed CQFFA algorithm is investigated, and the results are presented. For this purpose, various standard benchmark functions and several real-world engineering problems (encoded as optimization problems). The problems are optimization issues in the experiments, and the algorithms strive to reduce the cost values. Each situation has its specifications, including boundaries, optimal points, and the number of variables expressed in the corresponding subsections.

5 Experiment Evaluations and Results

This section evaluates the CQFFA algorithm's performance on well-known test functions and several real-world engineering problems. In the first subsection, twelve widely-used chaotic maps have been applied to the CQFFA, and the results have been investigated. The results of each chaotic map have been compared with others statistically. Besides, the convergence speed of the algorithms has been reached. It is worth mentioning that the simulations were conducted on a system with a Core i7 3.1 GHz processor, 8 GB RAM, and a 2 TB hard disk. The parameter value of the CQFFA algorithm is presented in Table 2.

Table 2 The parameter values of the algorithms

5.1 Experiments on Test Functions

In the CQFFA algorithm, evaluations are performed to evaluate the improvements achieved. These evaluations are described using 23 standard benchmark functions in 3 separate subsections, which are fully described below.

5.1.1 Unimodal Test Functions

This subsection evaluates the CQFFA algorithm's performance on the seven widely-used unimodal test functions. These test functions only have one optimal point and consider the exploitation capability of the algorithms. Table 3 presents the unimodal test function and details the obtained results from the different chaotic maps. Also, Fig. 2 illustrates the convergence speed of the chaotic maps on these test functions.

Table 3 Details of the unimodal test functions
Fig. 2
figure 2

Convergence graph of the different chaotic maps on the unimodal test functions

According to the statistical results of Table 4, it can be seen that all chaotic versions of the FFA algorithm have found the minimum function values of F1 to F4 test functions. However, some chaotic maps have lost their functionality in other test functions. By examining Table 4 results in more detail, it can be noticed that the Sawtooth and Tent maps outperform other maps. It also confirms this by counting the number of successes of each chaotic map. The success rate is the sum of the best performance of any map. The graphs in Fig. 2 indicate that the results of the different chaotic versions of the FFA algorithms are close, with a slight difference. Generally, according to Table 4 and Fig. 2, it can be inferred that the chaotic maps enhanced the capabilities of the basic FFA algorithm for solving unimodal test functions.

Table 4 Obtained results from different chaotic maps on unimodal test functions

5.1.2 Multimodal Test Functions

The CQFFA algorithm's performance has been evaluated on this subsection's six well-known multimodal test functions. These test functions have more than one local optimum. Table 5 presents the details of the multimodal test function besides Table 6 and Fig. 3. Three represent the statistical results and convergence graphs on these test functions.

Table 5 Details of the multimodal test functions
Table 6 Obtained results from different maps on multimodal test functions
Fig. 3
figure 3

Convergence graph of the different chaotic maps on the multimodal test functions

Considering the statistical results of Table 6, it can be seen that the results of all the chaotic versions of the FFA algorithm on functions F9 to F11 are equal. Furthermore, all chaotic algorithms achieved the most optimal function values of F9 and F10. Besides, on F12, all chaotic maps found promising positions for the test function except Circle, Liebovitch, and Tent maps. The Logistic and Sawtooth maps achieved better results for all multimodal test functions than other maps, as mentioned in Table 6. Figure 3 shows that all chaotic FFA algorithms have converged better and achieved more optimal cost values than the basic FFA algorithm. It also illustrates that the Tent map has an excellent convergence rate. However, the final result of the Logistic map is better.

5.1.3 Fix-Dimension Test Functions

This subsection provides the results of the CQFFA algorithm on the fix-dimension test functions. The dimension of these test functions cannot change. Table 7 shows the details of the fix-dimension test functions. The statistical results and the convergence graphs of the CQFFA algorithm have been provided in Table 8 and Fig. 4, respectively.

Table 7 Details of the fix-dimension test functions
Table 8 Obtained results from different maps on fix-dimension test functions
Fig. 4
figure 4figure 4

Convergence graph of the different chaotic maps on the fix-dimension test functions

The results of the basic FFA and CQFFA algorithms express that on the F14, F16, F18, and F19. The necessary FFA performed better. However, in F17, F20, F22, and F23, the Sawtooth map obtained better results than other maps. Considering the success rates of the chaotic maps, it can be concluded that the Sawtooth maps outperform other chaotic maps in most test functions. Therefore, the Sawtooth map was selected as the victorious map. To further investigate the CQFFA algorithm's performance in the following subsection, the FFA algorithm with Sawtooth map was applied to several well-known real-world applications. The results have been compared with similar algorithms.

5.1.4 Statistical Test

In this subsection, we used the Wilcoxon signed-rank test to show the proposed algorithm's performance better. The Tables 9, 10, 11 report the results of the Wilcoxon signed-rank test of the CQOFFA algorithm versus different chaotic maps. The test is conducted with a 5% significant level on all test functions. In the tables, the one values in the R column indicate a considerable difference. The -1 values express there is no significant difference. The zero values mean the test cannot decides the critical differences.

Table 9 Wilcoxon signed-rank test results of the CQOFFA versus different chaotic maps with a 5% significance level on the unimodal test functions
Table 10 Wilcoxon signed-rank test results of the CQOFFA versus different chaotic maps with a 5% significance level on the multimodal test functions
Table 11 Wilcoxon signed rank test results of the CQOFFA versus different chaotic maps with a 5% significance level on the fixed-dimension test functions

5.2 Engineering Optimization Problems

The following section evaluates the performance of the CQFFA algorithm in solving six engineering problems. These problems using P-Metaheuristics is one of the excellent and novel research areas. The results obtained by FFA are compared with other different optimization or modified algorithms.

5.2.1 Three-bar Truss Design Problem

The Three-bar truss engineering problems display the formulated truss and the applied forces to this structure. This problem has two design variables \({(x}_{1}{x}_{2})\). The purpose of this problem is to minimise the total weight of the structure. Additionally, this design issue includes various limitations, such as deflection, buckling, and stress. The experiments used 50 primary populations in 500 irritations and 30 independent runs. Furthermore, since this issue has limitations, it is necessary to integrate limitation control techniques in CQFFA. The barrier penalty 54 approach has been used in CQFFA. It is expressed mathematically as Eq. (14).

$$Consider\,\overrightarrow{X }= [{x}_{1}{x}_{2}] [{A}_{1}{A}_{2}],$$
$$Minimise\, f(\overrightarrow{X }) =\left( 2 \sqrt{2}{ X}_{1} + {X}_{2} \right) \times L,$$
$$Subject\, to\, {g}_{1}( \overrightarrow{X }) = \frac{ \sqrt{2}{x}_{1} + {x}_{2}}{\sqrt{2}{x}_{1}^{2}+ 2{x}_{1}{x}_{2}} P - \sigma \le 0,$$
$${g}_{2}( \overrightarrow{X }) = \frac{ {x}_{2}}{\sqrt{2}{x}_{1}^{2}+ 2{x}_{1}{x}_{2}} P - \sigma \le 0,$$
$${g}_{3}( \overrightarrow{X }) = \frac{ 1}{\sqrt{2}{x}_{2}+{x}_{1}} P - \sigma \le 0,$$
$$Variable\,range\, 0 \le {x}_{1}, {x}_{2} \le 1,$$
$$where L = 100 cm, P = 2 KN / {cm}^{2} , \sigma = 2 KN / {cm}^{2}$$
(14)

The results obtained by CQFFA have been compared with other optimization algorithms such as GOA55, MBA56, SSA57, PSO-DE58, DEDS59, MFO60, MVO61, Ray and Sain62, CS63, TSA64 and the results of this comparisons are shown in Table 12.

Table 12 Comparison of results for the three-bar truss design problem

Results in Table 12 indicate that CQFFA has achieved better performance and results than other optimization algorithms. Also, according to the obtained results, it can be confirmed that CQFFA has the excellent problem-solving ability.

5.2.2 Rolling Element Bearing Design Problem

This engineering problem has ten variables and nine constraints to maximise the load-carrying capacity mathematically stated in Eq. (15).

$$Maximize\,{C}_{d} = {f}_{c}{Z}^{2/3} {D}_{b}^{1.8} ifD \le 25.4mm$$
$${C}_{d} = 3.647{f}_{c}{Z}^{2/3}{D}_{b}^{1.4} ifD > 25.4mm$$
$$Subject\,to$$
$${g}_{1}( \overrightarrow{z } ) = \frac{{\varphi }_{0}}{2 {sin}^{-1 }({D}_{b}/{D}_{m})} - Z + 1 \le 0,$$
$${g}_{2}( \overrightarrow{z }) = 2{D}_{b} - {K}_{D min}(D - d) > 0,$$
$${g}_{3}( \overrightarrow{z } ) = {K}_{D max}(D - d) - 2{D}_{b} \ge 0,$$
$${g}_{4}( \overrightarrow{z } ) = \zeta {B}_{w} - {D}_{b} \le 0,$$
$${g}_{5}(\overrightarrow{z } ) = {D}_{m} - 0.5(D + d) \ge 0,$$
$${g}_{6}(\overrightarrow{z } ) = (0.5 + e)(D + d) - {D}_{m} \ge 0,$$
$${g}_{7}( \overrightarrow{z }) = 0.5(D - {D}_{m} - {D}_{b}) - \epsilon {D}_{b} \ge 0,$$
$${g}_{8}(\overrightarrow{z }) = {f}_{i} \ge 0.515,$$
$${g}_{9}( \overrightarrow{z } ) = {f}_{o} \ge 0.515,$$
$$where$$
$${f}_{c} = 37.91 {\left[1 +{\left\{1.04{\left(\frac{1 - \gamma }{1 + \gamma }\right)}^{1.72}{\left(\frac{{f}_{i} (2{f}_{o} - 1)}{{f}_{o} (2{f}_{i} - 1)}\right)}^{0.41}\right\}}^{10/3}\right]}^{-0.3}$$
$$\times \left[\frac{{\gamma }^{0.3}{(1 -\upgamma )}^{1.39}}{{(1 +\upgamma )}^{1/3} }\right]{\left[\frac{2{\mathrm{f}}_{i}}{2{\mathrm{f}}_{i}-1}\right]}^{0.41}$$
$$x = [ {\left\{(D - d)/2 - 3 (T /4)\right\} }^{2} + {\left\{D/2 - T /4 - {D}_{b}\right\} }^{2} - {\left\{d/2 + T /4\right\} }^{2} ]$$
$$y = 2\left\{(D - d)/2 - 3 (T /4)\right\}\left\{D/2 - T /4 - {D}_{b}\right\}$$
$${\varphi }_{o} = 2\Pi -{ cos}^{-1} \left(\frac{x}{y}\right),\gamma = \frac{{D}_{b}}{{D}_{m}} , {f}_{i }= \frac{{r}_{i}}{{D}_{b}} , {f}_{o} = \frac{{r}_{o}}{{D}_{b}} T = D - d - 2{D}_{b}$$
$$D = 160, d = 90,{B}_{w} = 30, {r}_{i} = {r}_{o} = 11.033 0.5(D + d) \le {D}_{m} \le 0.6(D + d),$$
$$0.15\left(D - d\right)\le {D}_{b} \le 0.45\left(D - d\right), 4 \le Z \le 50, 0.515 \le {f}_{i} and {f}_{o} \le 0.6,$$
$$0.4 \le {K}_{D min} \le 0.5, 0.6 \le {K}_{D max} \le 0.7, 0.3 \le e \le 0.4, 0.02 \le e \le 0.1,$$
$$0.6 \le \zeta \le 0.85$$
(15)

The obtained results by CQFFA compared with the optimization algorithms of PVS65, TLBO66, HHO67, and GA68, and the results are shown in Table 13.

Table 13 Comparison of results for rolling element bearing design problem

By examining the results shown in Table 13, it was found that CQFFA has achieved much better results than the other algorithms.

5.2.3 Welded Beam Design Problem

The Welded beam design problem minimises the Welded beam's cost and gets the best manufacturing cost due to the design limitations. The variables in this problem are length (l), the thickness of the weld (h), the thickness of the bar (b), and height (t). This problem is expressed mathematically as Eq. (16).

$$Consider\,\overrightarrow{z }= [{z}_{1},{z}_{2},{z}_{3},{z}_{4}] = [h,l,t,b],$$
(16)
$$\mathrm{Minimise}\,f\left(\overrightarrow{z }\right)=1.10471{z}_{1}^{2}{z}_{2}+ 0.04811{z}_{3}{z}_{4}(14.0 + {z}_{2}),$$
$$\mathrm{Subject to}\,{g}_{1}\left(\overrightarrow{z }\right)=\tau \left(\overrightarrow{z }\right)- {\tau }_{max} \le 0,$$
$${g}_{2}\left(\overrightarrow{z }\right)=\sigma \left(\overrightarrow{z }\right)- {\sigma }_{max} \le 0,$$
$${g}_{3}\left(\overrightarrow{z }\right)=\delta \left(\overrightarrow{z }\right)- {\delta }_{max} \le 0,$$
$${g}_{4}\left(\overrightarrow{z }\right)={z}_{1}-{z}_{4}\le 0,$$
$${g}_{5}\left(\overrightarrow{z }\right)=P-{P}_{c}\left(\overrightarrow{z }\right)\le 0,$$
$${g}_{6}\left(\overrightarrow{z }\right)=0.125-{z}_{1}\le 0,$$
$${g}_{6}\left(\overrightarrow{z }\right)=1.10471{z}_{1}^{2}+0.04811{z}_{3}{z}_{4}\left(14.0 + {z}_{2}\right)- 5.0 \le 0,$$
$$\mathrm{Variable\,range }\,0.05 \le {z}_{1} \le 2.00, 0.25 \le {z}_{2} \le 1.30, 2.00 \le {z}_{3} \le 15.0,$$

Where

$$\tau \left(\overrightarrow{z }\right)=\sqrt{{\tau }^{\mathrm{^{\prime}}2}2{\tau }^{\mathrm{^{\prime}}}{\tau }^{\mathrm{^{\prime}}\mathrm{^{\prime}}}\frac{{z}_{2}}{2R}+{\tau }^{\mathrm{^{\prime}}\mathrm{^{\prime}}2}}, {\tau }^{\mathrm{^{\prime}}}=\frac{P}{\sqrt{2}{z}_{1}{z}_{2}}, {\tau }^{\mathrm{^{\prime}}\mathrm{^{\prime}}}\frac{MR}{J}, M=P\left(L+\frac{{z}_{2}}{2}\right),$$
$$R=\sqrt{\frac{{z}_{2}^{2}}{4}+{\left(\frac{{z}_{1}+{z}_{3}}{2}\right)}^{2}, J=2\left\{\sqrt{2}{z}_{1}{z}_{2}\left[\frac{{z}_{2}^{2}}{12}+{\left(\frac{{z}_{1}+{z}_{3}}{2}\right)}^{2}\right]\right\}}, \sigma \left(\overrightarrow{z }\right)=\frac{6PL}{{z}_{4}{z}_{3}^{2}}$$
$$\delta \left(\overrightarrow{z }\right)=\frac{4{PL}^{3}}{E{z}_{3}^{3}{z}_{4}}, {P}_{c}\left(\overrightarrow{z }\right)=\frac{4.013E\sqrt{\frac{{z}_{3}^{2}{z}_{4}^{6}}{36}}}{{L}^{2}}\left(1-\frac{{z}_{3}}{2L}\sqrt{\frac{E}{4G}} \right),$$
$$P = 6000lb, L = 14in, E = 30 \times {10}^{6} psi, G = 12 \times {10}^{6} psi,$$

Optimal results obtained from CQFFA have been compared with optimization algorithms GA169, HS70, GSA71, GA254, DAVID72, APPROX72, SIMPLEX72, RANDOM72, CDE73, ESs74 and are listed in Table 14.

Table 14 Comparison of results for the welded beam design problem

Table 14 shows that CQFFA has obtained the best design-related settings with the least fitness compared to other optimization algorithms.

5.2.4 Pressure Vessel Design Problem

The primary purpose of this problem is to minimise the manufacturing cost. This issue has four limitations and four parameters. The parameters of this problem are (\({z}_{1}\)\({z}_{4}\)): \({T}_{s}\) (\({z}_{1}\), the thickness of the shell), \({T}_{h}\) (\({z}_{2}\), the thickness of the head), r (\({z}_{3}\), inner radius), L (\({z}_{4}\), length of the section without the head). The mathematical formula for this problem is Eq. (17).

$$Consider\,\overrightarrow{z }= [{z}_{1}{z}_{2}{z}_{3}{z}_{4}] = [{T}_{s}{T}_{h}RL],$$
$$Minimise\,f\left(\overrightarrow{z }\right)=0.6224 {z}_{1}{z}_{3}{z}_{4}+1.7781 {z}_{2}{z}_{2}^{3}+3.1661{z}_{1}^{2}{z}_{4}+19.84{z}_{1}^{2}{z}_{3},$$
$$Subject\,to\,{g}_{1}\left(\overrightarrow{z }\right)=-{z}_{1} + 0.0193{z}_{3} \le 0,$$
$${g}_{2}\left(\overrightarrow{z }\right)=-{z}_{3} + 0.00954{z}_{3} \le 0,$$
$${g}_{3}\left(\overrightarrow{z }\right)=-\Pi {z}_{3}^{2}{z}_{4}-\frac{4}{3}\Pi {z}_{3}^{3}+ 1, 296, 000 \le 0,$$
$${g}_{4}\left(\overrightarrow{z }\right)={z}_{4}-240 \le 0,$$
(17)

The design space for this case is limited to 0 ≤ \({z}_{1}\), \({z}_{2}\) ≤ 99, 0 ≤ \({z}_{3}\), \({z}_{4}\) ≤ 200.

Results of solving this problem using CQFFA have been compared with other optimization algorithms such as WOA71, BA75, MDDE76, CPSO77, CSS78, BIANCA79, HPSO80, G-QPSO81, WEO82, IACO83, MFO60, GA384, GWO85, ESs74, GA69, DELC86, Branch-bound (Sandgren) 71, Lagrangian multiplier (Kannan) 71. Obtained results using CQFFA of other optimization algorithms are shown in Table 15.

Table 15 Comparison of results for pressure vessel design problem

By examining these results, it can be seen that CQFFA performs better than other algorithms in dealing with this problem, and the obtained results from CQFFA are much better than other methods.

5.2.5 Tension/Compression Spring Design

This problem's primary purpose is to minimise a spring's weight. The variables used to design this problem are the number of active coils (N), mean coil diameter (D), and wire diameter (d). Minimum deflection, shear stress, and surge frequency limits should apply when solving this problem during the weight optimization process. This problem can be expressed mathematically as Eq. (18).

$$Consider \overrightarrow{z }= [{z}_{1}{z}_{2}{z}_{3}] = [dDN],$$
$$Minimise f(\overrightarrow{z }) =\left( {z}_{3}+2 \right) {z}_{2}{z}_{1}^{2},$$
$$Subject to {g}_{1}\left(\overrightarrow{z }\right)=1-\frac{{z}_{2}^{3}{z}_{3}}{71785{z}_{1}^{4}} \le 0,$$
$${g}_{2}\left(\overrightarrow{z }\right)=\frac{4{z}_{2}^{2}-{z}_{1}{z}_{2}}{12566({z}_{2}{z}_{1}^{3}-{z}_{1}^{4})}+\frac{1}{5108{z}_{1}^{2}} \le 0,$$
$${g}_{3}\left(\overrightarrow{z }\right)=1-\frac{140.45{z}_{1}}{{z}_{2}^{2}{z}_{3}} \le 0,$$
$${g}_{4}\left(\overrightarrow{z }\right)=\frac{{z}_{1}+{z}_{2}}{1.5}-1 \le 0,$$
(18)

To evaluate the obtained results, CQFFA has been compared with several optimization algorithms that have solved the so-called problem, such as Arora87, MFO60, GWO85, SSA57, WOA71, GSA88, ESs74, CPSO77, GA269, GA384, and WEO82. The results of this comparison are also given in Table 16.

Table 16 Comparison of results for tension/compression spring problem

The results in Table 16 indicate that CQFFA has a remarkable ability to produce high-quality solutions and has been able to have a good design in solving this problem. On the other hand, the results are very near and competitive compared to TEO and SFS optimization algorithms.

5.2.6 Multi-plate Disc Clutch Brake

This engineering problem's main objective is to optimise the multiple disc clutch brake's total weight for several variables, including actuating force, inner and outer radius, number of friction surfaces, and thickness of discs. It also has eight limitations. This engineering problem is expressed mathematically in Eq. (19).

$$f \left(x\right)= \Pi \left({r}_{o}^{2} -{ r}_{ i}^{2} \right)t\left(Z + 1\right)\rho$$
$$subject to:$$
$${g}_{1}\left(x\right)= {r}_{o} - {r}_{i} - \Delta r \ge 0,$$
$${g}_{2}\left(x\right)= {l}_{max} - \left(Z + 1\right)\left(t + \delta \right)\ge 0 ,$$
$${g}_{3}\left(x\right)= {P}_{max} - Prz \ge 0,$$
$${g}_{4}\left(x\right)= {P}_{max}{v}_{\mathit{sr} \mathit{max}}-{P}_{rz}{\nu }_{sr} \ge 0,$$
$${g}_{5}\left(x\right)={v}_{sr max}-{v}_{sr } \ge 0,$$
$${g}_{6} = {T}_{max} - T \ge 0,$$
$${g}_{7}\left(x\right)= {M}_{h} - s{M}_{s} \ge 0,$$
$${g}_{8}\left(x\right)= T \ge 0,$$
(19)
$$where,$$
$${M}_{h} = \frac{2}{3} \mu FZ \frac{{r}_{o}^{3}- {r }_{i}^{2} }{{r}_{o}^{2}- {r }_{i}^{3}} , {P}_{rz }= \frac{F}{\Pi ({r}_{o}^{2} - {r}_{i }^{2} ) } ,{v}_{rz}=\frac{2\Pi n\left({r}_{o}^{3}- {r }_{i}^{3}\right)}{90\left({r}_{o}^{2} - {r}_{i }^{2}\right)} ,T=\frac{{I}_{z}\Pi n}{30({M}_{h} + {M}_{f })}$$

\(\Delta r = 20 mm\), \({I}_{z} = 55 {kgmm}^{2}\), \({P}_{max} = 1 MPa\), \({F}_{max }= 1000 N\), \({T}_{max} = 15 s, \mu = 0.5, s = 1.5, {M}_{s} = 40 Nm,\) \({M}_{f} = 3 Nm, n = 250 rpm,\) \({v}_{sr max} = 10 m/s, {l}_{max} = 30 mm, {r}_{i min}= 60,\) \({r}_{i max} = 80, {r}_{o min}= 90,\) \({r}_{o max}=110, {t}_{min}=1.5, {t}_{max}= 3, {F}_{min}= 600,\) \({F}_{max} = 1000, {Z}_{min} = 2, {Z}_{max} = 9\).

The optimal results obtained by CQFFA compared with the results of TLBO66, HHO67, WCA89, and PVS65 algorithms, and these results are shown in Table 17.

Table 17 Comparison of results for multi-plate disc clutch brake

A review of Table 17 indicates that CQFFA performs better than TLBO, WCA, and PVS algorithms while achieving close and competitive results compared to HHO algorithms. Reviewing and evaluating the CQFFA algorithm in different benchmarks and engineering problems shows that the CQFFA has performed better than other comparative algorithms.

6 Conclusion and Future Works

In this paper, FFA's exploration and exploitation capability has improved by using twelve different chaotic maps embedded into FFA to find the best number of prospectors to increase the exploitation of the best promising solutions. Furthermore, the QOBL mechanism has enhanced the exploration and convergence rate. The CQFFA algorithm's performance has evaluated o twenty-three widely used test functions and six well-known real-world engineering problems. The results show that the CQFFA algorithm performs better and indicate that this version has a good and significant performance compared to the original version of the FFA algorithm. Because the weaknesses of FFA are well identified and well covered using the mechanisms used. Many movement search strategies can be embedded into CQFFA to improve its efficiency as much as possible in the future. Also, CQFFA can hybridise with other metaheuristics algorithms. On the other hand, the multi-objective model of the proposed algorithm can be used to solve multi-objective problems. Finally, due to the excellent potential of the proposed algorithm, it can be a perfect option for solving binary and clustering problems.