Introduction

Optimization research in boring operations is presently an area of vast interest because it aids more efficiency by minimizing boring errors, material and manhour losses and costs, leading to profit improvement and the accomplishment in business competition [1,2,3]. Furthermore, the theoretical bases for optimization approaches are widespread with applications in several methods such as integrated harmony search and grey relational analysis [4], particle swarm optimization [5], Taguchi method [6] and differential evolution [7] response surface methodology coupled with firefly method [8]. However, of the available optimization methods in this article, preference is given to the Taguchi-Pareto and Box Behnken design method, which has been proposed in previous research by Abdullahi and Oke [9]. The Taguchi-Pareto method is subscribed to as it aids efficient and reliable processes. Then, the Box Behnken design is chosen as it permits the assessment of the influence of several boring parameters and the possible interfaces of these parameters on the outcomes such as the surface roughness. But the combination of these methods had been demonstrated in the literature to handle critical parameters that determine the success of the boring operation in overcoming resistance in the machining market competitive fight as the operations maintain efficiency [9].

Furthermore, a review of available literature on the further optimisation of process parameters while boring the IS 2062 E250 steel plates on CNC machines while an evolutionary algorithm is appended to the Taguchi-Pareto-Box Behnken design method reveals poor results when the objective function was formulated from the Box Behnken design results and introduced into the genetic algorithm procedure for optimisation using the python codes. This may be primarily due to the evolutionary method utilized for the optimisation procedure [10]. Thus, the type of evolutionary algorithm used may be changed. Interestingly, the substitution of the genetic algorithm with the firefly algorithm may enhance the optimisation performance of the surface roughness outcome and the corresponding process parameters of speed, feed, depth of cut and nose radius. The attributes of the firefly algorithm, which entails absorption, randomness and attractiveness were deployed to optimize the outcome and the process parameters of the IS 2062 E250 steel plates during the boring operation. In the literature on the firefly algorithm, these attributes were found to be favourable, yielding optimal results for the problems solved.

Furthermore, integrating the firefly algorithm with the emerging method of Taguchi-Pareto-Box Behnken design may be a productive investigation route to enhancing the performance of both the boring parameters of speed, feed, depth of cut and nose radius as well as the surface roughness outcome. Based on this motivation, the objective of this study is to introduce a new method called the Taguchi-Pareto-box Behnken design-firefly method and test it with experimental data from the literature using Patel and Deshpande’s [11] study. This goal was pursued to see if any enhancement could be achieved with the replacement of the genetic algorithm component of the integrated method with the firefly algorithm using a previously announced method as the benchmark.

Literature review

General

There is a pressing need to improve manufacturing performance, particularly in growing and developing economies, so that industrial pollution and material and energy usage are reduced. Energy efficiency and product quality have become essential industry criteria [3]. Where optimization of machining process parameters is properly performed, there is the likelihood of significantly reducing industrial pollution, material usage and energy consumption in the manufacturing processes, making optimization of machining parameters critical for manufacturing industries. On the other hand, optimization of machining parameters is also required for the production of high-quality goods at reasonable prices. In this literature review, a summary of the literature is presented for an understanding of the progress made in the present area of study. This is shown in Table 1.

Table 1 Summary of related literature

Research gap

In this article, a literature review was presented, which reveals an overview of the studies conducted by various engineers and scientists on firefly optimization and optimization regarding conventional machining systems. Such aspects as the machining types, materials and others were treated. Besides, some investigators attempted to optimize the boring parameters while machining different materials. Moreover, few investigators attempted to study the IS 2062 E250 steel plates such as the evaluation of the performance of the material using the Taguchi method by Patel and Deshpande [11]. More recently, very few investigators analysed the various optimization schemes in the boring of the IS 2062 E250 steel plates. Notwithstanding, very few investigators have attempted to use the combined Taguchi method and the Box Behnken design method as framework optimization schemes are deployed for further improvement of the method’s performance. Thus, extremely limited information is available in the machining literature associated with the introduction of evolutionary algorithms in the boring process of IS 2062 E250 steel plates on the CNC machine. The unique introduction of the firefly algorithm to the established optimization scheme of the Taguchi/Taguchi-Pareto-Box Behnken design method for the IS 2062 steel plate is the principal novelty of the present study. Thus, the firefly algorithm is used as an additional optimizer while focusing on the surface roughness improvement and the parameters to be optimized are the speed, feed, depth of cut and nose radius in the processing of IS 2062 E250 steel plates for the boring operation on the CNC machine.

Furthermore, the firefly algorithm is introduced as an innovative metaheuristic into an objective function that accounts for flashing patterns and behaviour of fireflies at night. Fireflies produce sparks of light in the air. They are often found in gardens containing flowers. Experiences of people revealed that fireflies have been found in rice fields particularly when searching under the light of the moon. The objective function is introduced into an already developed amalgamated model of the Taguchi method and Box Behnken Design (BBD) plan for the minimization of surface roughness of the IS 2062 E250 steel plates undergoing the boring process [26,27,28]. An alternative computational procedure is set forth such that the regression model replaces the BBD plan earlier stated to make the Taguchi method-regression model. In the past years, surface roughness has been optimized in the machining process and boring process, in particular, using the Taguchi method [11], integrated artificial neural network and bat algorithm [28], artificial neural network and fuzzy inference system [27], fuzzy analytic hierarchy process and mark or chain WSM, WPM/WASPAS approaches [26]. However, a drastic change in the literature on surface roughness in machining took place in recent years when researchers introduced the integrated Taguchi-Pareto Box Behnken design method. Also, unlike Patel and Deshpande [11] that concentrated on the experimental plans of the Taguchi method to improve the surface integrity of the mentioned steel, Abdullahi and Oke [10] directed attention to the optimization and selection of parameters using the combined Taguchi-Pareto Box Behnken-genetic algorithm method. This article introduces the firefly algorithm that leverages the flashing characteristics of the fireflies. This utilizes how a firefly flashes another using the flashing light to attract mates in courtships and also to establish predators [22, 29]. This handles the surface roughness behaviour by the introduction of attractive constant, absorption coefficient and the cooling factor into the boring operational interpretation of the firefly algorithm in the Taguchi-BBD and Taguchi-regression model interfaces. Both the BBD and regression models were employed, offering a wide solution to the minimization of the surface roughness phenomenon for the boring operation. The approaches offer a flexible yet effective solution to boring operators to minimize the surface roughness of IS 2062 E250 steel plates. Eventually, the effectiveness of the approaches is established using experimental data derived from Patel and Deshpande [11] thus offering understanding for machining stakeholders and practitioners to design and install cost-effective and sustainable machining operations.

Methods

This section focuses on the methodology of research introduced to achieve the stated objectives earlier mentioned in the article. It also solves the problem formulated through a research gap analysis of the present literature on the boring of IS 2062 E250 steel plates. The analysis of the parameters for the boring operation involving speed, feed, depth of cut and nose radius was done in this article while keeping in focus the optimisation of the surface integrity of the IS 2062 E250 steel plate through the reduction of surface roughness of the bored material. To attain a detailed understanding of the method, the steps followed to satisfy the objectives and the outcomes of the study are elaborated here.

Procedure for Taguchi-Pareto-Box Behnken design-firefly approach

Step1a

Implement step 1a to step 3a in the Procedure for Taguchi-Pareto-Box Behnken Design-TLBO Approach of the work of Abdullahi and Oke [30] to establish the objective function, the constraints, population size, number of iterations, firefly population based on the chosen population size and computed fitness values of fireflies in the population

Take the objective function as

\(F(x) = 20S + 0.002F + 0.01DC + 0.003NR\) (1)

And the constraints as 5 ≤ S ≤ 50, 0.001 ≤ f ≤ 0.005, 0.01 ≤ dc ≤ 0.07, and 0.1 ≤ S ≤ 0.005

Also take the population size and number of iterations as 4 and 3, respectively

Furthermore, take an instance of a firefly in the population as [15, 0.004, 0.05, 0.01], there should be four of such instances of a firefly in the population as the chosen population size is 4

Lastly assuming the computed fitness value of fireflies in the population are 300.0014, 280.0022, 503.0450 and 412.7902

Step 1b

Compare the first firefly to all other fireflies in the population using the fitness value as the basis of comparison for instance, the fitness value of the first firefly in the population is 300.0014 comparing it with the next firefly’s fitness value in the population to minimize the objective function that is (minimization problem). Observe that the next firefly fitness value which is 280.0022 is less than the first firefly fitness value in the population, with this the first firefly would tend to be attracted to the next or second firefly thereby moving toward it the aid of the mathematical function

\({X}_{i}^{t+1}={X}_{i}^{t}+{\beta }_{0}{e}^{{-yr}_{ij}^{2}}\left({X}_{j}^{t}-{X}_{i}^{t}\right)+{\alpha }_{t}{\varepsilon }_{i}^{t}\) (2)

where

\({X}_{i}^{t+1}\) is the new position of a parameter component of a firefly

\({X}_{i}^{t}\) is the old or former position

\({X}_{j}^{t}\) is the position a firefly is attracted to

\({\alpha }_{t}\) is the randomized parameter, which is \({{\alpha }_{0}\delta }^{t}\)

where \({\alpha }_{0}\) is the initial randomness given by (0.01 × U-L), U and L are the upper and lower bounds of a factor

\(\delta\) is the cooling factor, which is taken between 0.95 and 0.97 though generally in application \({\alpha }_{t}\) ranges between 0 and 1

\({\varepsilon }_{i}^{t}\) is a random number drawn from normal or other distribution

\({\beta }_{0}\) is called the attractive constant, it controls attractiveness and is usually taken as 1 in most application

\(\gamma\) is the absorption coefficient usually taken as 0.01

\({r}_{ij}^{2}\) is the distance between the current firefly and the firefly that the current firefly moves towards

Step 1c

Assuming the first firefly position in the population is as [15, 0.004, 0.05, 0.01], and the next firefly position in the population is [12, 0.0042, 0.03, 0.012] using the above mathematic function for firefly movement, we compute a new position for the first firefly in the population by substituting values as thus; the term \({r}_{ij}^{2}\) is given by

\({r}_{ij}^{2}=\sqrt{{\left(15-12\right)}^{2}+{\left(0.004-0.0042\right)}^{2}+{\left(0.05-0.03\right)}^{2}+{0.01-0.012}^{2}=3.0000}\)

The term \({\beta }_{0}{e}^{{-\gamma r}_{ij}^{2}}\) is computed as \(1\times {e}^{-0.01\times 3.000}=0.9704\)

The term \({\alpha }_{t}{\varepsilon }_{i}^{t}\) is computed as thus and it should be recomputed as each factor in the new firefly position is computed; \({\alpha }_{t}{\varepsilon }_{i}^{t}={\alpha }_{0}\delta \times rand-0.5\)

Take rand = 0.32

\(0.45\times 0.97\times 0.32-0.5=-0.3603\), with all necessary terms values in the movement function gotten, the new firefly position is computed as thus;

Step 1d

The first parameter for the new firefly position is

\({x}_{1}=15+0.9704 \left(12-15\right)+\left(-0.3603\right)=11.7285\)

Recompute \({\alpha }_{t}{\varepsilon }_{i}^{t}={\alpha }_{0}\delta \times rand-0.5\) for the next factor in the new firefly position using a different random number, take rand = 0.67

\({\alpha }_{t}{\varepsilon }_{i}^{t}=0.45\times 0.97\times 0.67-0.5=-0.2075\)

Therefore,

\({x}_{2}=0.004+0.9704 \left(0.0042-0.004\right)+\left(-0.2075\right)=-0.2033\)

Again recompute \({\alpha }_{t}{\varepsilon }_{i}^{t}={\alpha }_{0}\delta \times rand-0.5\) for the 3rd factor in the new firefly position using a different random number, take rand = 0.12

\({\alpha }_{t}{\varepsilon }_{i}^{t}=0.45\times 0.97\times 0.12-0.5=-0.44762\)

Therefore,

\({x}_{3}=0.005+0.9704 \left(0.03-0.05\right)+\left(-0.2075\right)=-0.1769\)

Once more recompute \({\alpha }_{t}{\varepsilon }_{i}^{t}={\alpha }_{0}\delta \times rand-0.5\) for the 3rd factor in the new firefly position using a different random number, take rand = 0.55

\({\alpha }_{t}{\varepsilon }_{i}^{t}=0.45\times 0.97\times 0.55-0.5=-0.2599\)

Then

\({x}_{4}=0.01+0.9704 \left(0.012-0.01\right)+\left(-0.2599\right)=-0.2479\)

Therefore, the new firefly position is Xnew = [11.7285, − 0.2033, − 0.1769, − 0.2599]

Step 2a

Check the if new firefly position is within the bounds of the search space of each parameter. If a parameter in the new firefly position is less than the lower bound of that particular parameter, then the value of the lower bound of that parameter replaces the computed value of that particular parameter in the newly computed firefly position and if a parameter in the new firefly position is greater than the upper bound of that particular parameter, then the value of the upper bound of that parameter replaces the computed value of that particular parameter in the newly computed firefly position

Therefore, applying the boundary check to Xnew gives Xnew = [11.7285, 0.001, 0.01, 0.1]

Step 2b

Compute the fitness value of Xnew

\(F\left(x\right)=20\times 11.7285+0.002\times 0.001+0.01\times 0.01+0.03\times 0.1=234.5704\)

Step 3

Perform greedy selection by checking if the new firefly position fitness value is better i.e. lower than the fitness value of the first firefly in the population being considered since our objective is minimization, if Xnew fitness value i.e. the new firefly position fitness value is less than Xi the current firefly position fitness value then Xi is discarded and replaced by Xnew including their fitness values. On the other hand, if Xnew fitness value is greater than Xi fitness value, then Xnew and its corresponding fitness value are discarded thereby retaining the Xi and its fitness value. This concludes the movement and processes of the first firefly toward the more attractive second firefly

Step 4

Next, similarly, the first firefly fitness value is compared to the third (3rd) and 4th firefly fitness value in the population and step 1b to step 3 is repeated each time to complete the comparison of the first firefly with the rest of the firefly in the population

Step 5

Again the second firefly in the population goes through step 1b to step 3; likewise, the 3rd and the 4th firefly would go through the same procedure of step 1b to step 3 accordingly to complete the first iteration

Step 6

After the first iteration the fitness value of the new population is computed and the procedure from step 1b to step 3 is then repeated for the set or fixed numbers of iterations, which is set as 3, so the whole firefly algorithm would run 3 times, at the end of each iteration the best firefly fitness value and the corresponding firefly position are capture and stored

Step 7

The firefly optimization approach explained above is then coded using the python programming language

Extending the TP-BBD method to the TP-BBD-FF method

The details of the TP-BBD method for the optimization of the boring process while considering the IS 2062 E250 steel plates on the CNC machine were considered in Abdullahi and Oke [9]. As explained in the work, this kind of problem relies on the signal-to-noise ratio, which evaluates the desirable values of the signal and the undesirable values of noise. The signal-to-noise ratios are then used to produce higher-level surface roughness values with few essential runs. Thus, by applying the firefly in the integration of the Taguchi-Pareto and Box Behnken design problems, the attributes of the new method can be discerned from the experimental runs of the IS 2062 E250 steel plates on the CNC machine. The optimized method is set with the maximum iterations of 50, a firefly population of 200, initial randomness (alpha) of 1, a cooling factor (delta) of 0.97, an attractive constant (beta) of 1 and an absorption coefficient (gamma) of 0.01.

The new TP-BBD-FF method is similar to a previously developed method of TP-BBD-GA, which was discussed in detail in Abdullahi and Oke [10]. The TP-BBD-FF method has been validated using literature results from Patel and Deshpande [11]. The contribution of the present article shows the results of adjustment in the evolutionary algorithm from a replacement of the genetic algorithm to the firefly algorithm. Tables 1 and 2 show the results of the optimal solutions as the objective function produced depends on the Box Behnken design optimized parameters and regression equation optimized parameters, respectively.

Table 2 Summary of values of variates s, f, doc and nr

The experimental plan started with the use of literature data from Patel and Deshpande [11] which we analyzed to obtain the optimal parametric setting using the various steps in the Taguchi method. We now expanded by using the Box Behnken method to get the optimal solution of the parameters, including spindle speed, feed rate, depth of cut and nose radius. But still, we were not satisfied with the results of the Box Behnken method. So we further used the basic idea of linear programming to generate the objective function, which we used in the firefly optimization algorithm. But meanwhile, there is another scenario where we used the regression equation during the process of solving the problem with the Box Behnken method. We also solved the regression equation that was created with the firefly algorithm. In the end, the two scenarios were compared. It happened that the solution for the linear programming generated as the objective function was not as good as the regression equation generated during the process of solving using the Box Behnken Design method.

Results and discussion

Simulation results

The starting point of analysis is to set the population size, number of iterations and β0 at some values. But population size often describes the number of individuals in a population. In the integrated TBB-FF method considered in this work, population size directly affects the ability of the firefly algorithm to search for an optimum solution within the search space. However, the number of iterations is the requirement to achieve optimal boring process parameters when the neutral population is chosen through random search. Moreover, β0 is the attractive coefficient. Notice that these tiny-winged beetles called fireflies produce light (i.e. cold light as it has little or no heat generated when the light is flashed). On producing the light flashes, mates are attracted to this light generator and the value of the attractiveness is represented by a coefficient termed the attractiveness coefficient. So, in the work, the population size was set at 200. Although the population size in this implementation does not change throughout the program implementation, however, it is known that if convergence is not obtained satisfactorily, a resizing of the population size would be embarked upon to correct this unsatisfactory result. Next, the number of iterations is set as 50. Also, β0, referred to as beta or the attractiveness coefficient, is set at 1. The gamma symbol γ is set at 0.01 as it is common in the literature. Then, the α0 is set at 1. This could be interpreted from the randomness strength. Also, the delta value is 0.97. However, in the literature, the delta value is always set to be any number between 0.95 and 0.97. Furthermore, in the firefly algorithm, the goal is to calculate and update values, whose calculation platform is laid as two matrices termed solution and F(x), respectively. The solution contained values based on the variables considered in the objective function. In the present instance, consider the objective function given in Eq. (3):

$$\mathrm{Objective}\_\mathrm{function Z }= 1090.9091 *\mathrm{ s }+ 0.06 *\mathrm{ f }+ 1.250 *\mathrm{ doc }+ 0.6061 *\mathrm{ nr }(\mathrm{linear programming concept})$$
(3)

where s is the speed, f is the feed rate, doc is the depth of cut and nr is the nose radius.

The coefficients of (s, f, doc, nr) in Eq. (3) is the optimized parameters from the Box Behnken part of the research.

Equation (3), which is a linear programming-based objective function, was obtained from the optimal parameters of the BBD method. During the implementation of BBD, we optimized parameters using the Minitab software (2020). These optimized parameters are then used to generate the objective function using the basic principles of linear programming whereby we used the optimized parameters as the coefficients of each of the decision variables.

Looking closely at Eq. (3), where f(s, f, doc, nr) has four variables which should be accounted for in the solution matrix, equivalent to four columns of variables with the starting variable beings, the next is f, this is followed by doc and the last variable is the nr. However, the values generated under each of these variables will be 200 items. But this is tedious for manual computation while the Python programming language is then used to do the computation. Besides, for an explanation, a population of 5 is used, indicating that there will be five rows of values for each variable under solutions and also for the function f(s,f, doc, nr). Now, the first variable, s, is considered. By considering the experimental data on the cutting parameters with the associated levels indicated in Patel and Deshpande [11], the variable, speeds are of interest to us at this point. It is observed that there are four levels of speed, notably 800 rpm, 1000 rpm, 1200 rpm and 1400 rpm, respectively, for levels 1 to 4, it then implies that random members should be generated 200 times and values of speed between 800 and 1200 rpm are predicted. But for the simplicity of computations, we limit this manual explanation to the generation of five random speeds between 800rom and 1200rpnm. Therefore, to proceed, random numbers are generated through the calculator, in reality, codes were written in Python to generate the 200 random numbers needed at this time. But in this manual computation, only five random numbers are generated. Alternatively, a random number table, obtainable using the search word random number table from the Google search engine was used. For the table, depending on the version used, 13 columns of numbers running into 24 rows for each of the second to the thirteenth column was observed. In reading these numbers, the first number of the first column is read through to the last number in that column before morning to the first number in the second column. Thereafter, the movement continues along the column-wise then wisely until the numbers are exhausted, and then, you start again in that manner until will the necessary random numbers are exhausted. In this instance of obtaining randomly generated speeds, the first random number is 36,518. But comparing these numbers running with our range of numbers running from 80 to 120 rpm, it is outside it as the number must start with “80” and end with a number less than “1200”. Next, 46,132 is outside the range and ignored. We move down to the fourth number in the first column of the random number table to have 84,180. This number can be modified as 842 rpm where the first three distances are recognized. But we need four more numbers which are then 8214 rpm from the eighth random varieties of 82,448. The third, fourth and fifth random variates are 878 rpm, 923 rpm and 1166 rpm obtainable from the random numbers 87,789, 92,320 and 11,666, respectively. Remember that you are to generate 200 variates. But only five are used for illustration here. Next, we move to generate feed variate in the range 0.06mnm/rev. Here, we start over again from the first random number in the table. The random numbers used are 84,180, 78,435, 82,448, 69,226 and 0.0703 number for the depth of cut, represented by “doc”, the range of values from the factor-level table is 1 mm, 1.24 mm, 1.4 mm and 1.5 mm. The generated random variates are 1.37 mm obtainable from the random numbers, approximated to 37 is put in front of 1 to make 1.37 mm and 1.25 mm. For the nose radius, the range of values is 0.08 mm and 1.2 mm. The random variates generated are 0.084 mm, 0.82 mm, 0.88 mm, 0.92 mm and 1.17 mm.

To apply the firefly algorithm, we have to compare each of the fireflies i.e. function 1 with the second function 2. Notice that for the first firefly, the f(s, f, doc, nr) obtained is 918,547.7. The second, third, fourth and fifth fireflies have the following values: 898,911.3, 957,820.5, 1,006,911, and 1,272,002, respectively. Since f1 > f2, 918,547.7 > 898,911.3 notice that the taste of the researcher is to minimize the surface roughness.

Notice that f1 = 918,547.7 and f2 = 898,911.3

The task is to minimize when the first firefly is considered at 918,547.7

Since f1 > f2, we move firefly 1 towards 2. But note that the condition for minimization is that f1 > f2. Furthermore, notice that firefly 1 means \({x}_{i}\) while firefly 2 is \({x}_{j}\) but \({x}_{i}=\left[842 0.784 1.32 0.82\right]\)while

$${x}_{j}=\left[824 0.84 1.32 0.82\right]$$

Now, \({r}_{ij}^{2}\) is to be calculated as follows:

We have (x1, x2) and (y1, y2), then \({r}_{ij}=\sqrt{{\left({x}_{1}-{y}_{1}\right)}^{2}+{\left({x}_{2}-{y}_{2}\right)}^{2}}\)

But in this specific case, x1 = 842, x2 = 0.084, x3 = 1.37 and x4 = 0.84. Also y1 = 824, y2 = 0.784, y3 = 1.32 and y4 = 0.82. Then, rij is calculated as follows:

$${r}_{ij}=\sqrt{{\left(842-824\right)}^{2}+{\left(0.084-0.784\right)}^{2}+}{\left(1.37-1.32\right)}^{2}+{\left(0.84-0.82\right)}^{2}$$

\({r}_{ij}=18.01\) while \({r}_{ij}^{2}=324.49\). We substitute this into Eq. (2) but with the interpretation of αtεit as \({\alpha }_{0}\delta\) (rand − ½)* scale.

By looking through Eq. (2), we now know \({x}_{i}\), \({x}_{j}\), \({\beta }_{0}\), and\({r}_{ij}^{2}\). Then, we calculate \({\beta }_{0}{e}^{{-\gamma r}_{ij}^{2}}\) as we know as 0.01 \({\alpha }_{0}\) as 1, \({\beta }_{0}\)=1. This is obtained as 1(e−0.01(324.49)) = 0.0390. Furthermore, the term \({\alpha }_{0}\delta\) (rand − ½)* scale is calculated where \(\delta =0.97\) and a random number newly generated is 0.3651 as read from the random number table. But concerning scaling, the scaling is the lower bound subtracted from the upper bound. However, four different parameters, namely, f, doc and nr, are involved and each parameter has its scale. For instance, reading from the experimental data provided by Patel and Deshpande [11] in their Table 4 of the article, s has a range of 1400–800, which is 600. But then, f has a range of 0.12–0.06, which is 0.06, doc has a range of 1.5–1, which is 0.5 while nr has a range of 1.2–0.8, which is 0.4. Now, since L for s is 600, \({\alpha }_{0}\) is calculated as 0.01L initially, yielding 0.01 (600) or 6. But \({\alpha }_{0}\delta\) (rand–½)*scale gives 6 (0.9) (0.3651 − ½)*600, which means − 471.071. Thus, x1 = 842 + 0.390 (824-842) – 4.1.071, which gives 1306.051. However, this is outside the 1200 upper boundary for s, which means that the value 1306.051 is not valid. Thus, a recomputation is sought such that it will be within the boundaries of 800 and 1200. To achieve this, the random number is changed until this achieved. Once the random number has been changed to 0.46132, the term \({\alpha }_{0}\delta\) (rand − ½)* scale gives − 135.07 while x1 gives 976.38, which is between 800 and 1400. We then move further to calculate x2 along the following lives. First, the range of f from the Table 4 of Patel and Deshpande [11] is 0.06. Then, 0.01L is 0.0006. But \({\alpha }_{0}\delta\) (rand –½)* scale gives 0.0006 (0.97) (0.46132 − ½)*0.06 = -1.4E-0.6. But \({x}_{2}\) is obtained as 0.084 + 0.039 (0.784—0.084)—(-1.4E-0.6) = 0.111301. The value obtained for \({x}_{2}\) is within the range of 0.06 to 0.12, which is acceptable. Furthermore, for doc as a parameter, the range is 0.5 and 0.01L is 0.005. But \({\alpha }_{0}\delta\) (rand − ½)*scale is (0.005) (0.9) (0.46132 − ½)*0.005 =  − 9.4E − 0.5. The value calculated for x3 is 1.37 + 0.039 (1.32–1.37) – (− 9.4E − 0.5) = 1.38144 which is within the range of 1 and 1.5. Besides, for nr as a parameter, the range is 0.4 and the values are from 0.8 to 1.2. But 0.01L is 0.04. Next, \({\alpha }_{0}\delta\) (rand − ½)* scale is 0.004 (0.97) (0.46132 − ½)* 0.4 =  − 6E − 0.5. The value calculated for \({x}_{4}\) is 0.84 + 0.039 (0.82–0.84) – (− 6E − 05) = 0.83928, which is a number falling in the range of nr of 0.8 to 1.2.

From the foregoing, the values of Xnew is displayed in a matrix as follows:

$$X_{\mathbf{new}}=\begin{bmatrix}976.386&0.111301&1.368144&0.83928\end{bmatrix}.$$

By substituting the value of Xnew into the objective function, f(Xnew) is obtained as (1090.9091 × 976.3686) + (0.06 × 0.111301) + (1.25 × 1.368144) + (0.6061 × 0.83928) = 1,065,132. But f (Xnew) = 1,065,132 compared with f = 918,547.7. The new value is still higher than f1, and therefore, it will be rejected since minimum value is expected for updating. Here, the random number is changed and computation commences. After a success at obtaining a lower value for f (Xnew), the first firefly is done with. Then, we move to the next firefly. The procedure is followed until the finalized results in Table 3 are obtained for all iterations.

Table 3 Optimal solutions—Box Behnken design optimized parameters

Next, the whole procedure above is used in Eq. (4) to obtain the results summarized in Table 3.

$$Objective\_function(regression equation) Z = -69.3 + 0.0233*Speed - 3*Feed + 2.5*Depth\_of\_cut + 10.92*Nose\_radius - 0.000010*Speed*Speed + 35*Feed*Feed - 1.01*Depth\_of\_cut*Depth\_of\_cut - 7.72*Nose\_radius*Nose\_radius - 0.0000*Speed*Feed + 0.00000*Speed*Depth\_of\_cut - 0.00092*Speed*Nose\_radius - 0.0*Feed*Depth\_of\_cut - 9.2*Feed*Nose\_radius + 0.00*Depth\_of\_cut*Nose\_radius$$
(4)

We then combined the outcome in addition to form the objective function. Equation (4) was generated using the Minitab software version 2020 in obtaining those optimal parameters we used as the second scenario objective function. The function activated in the software is the regression model.

Firefly optimization data when the objective function is generated using the Box Behnken design optimized parameters

The following are the characteristics of the optimization model and these attributes are produced in Table 3 and the pictorial description in Fig. 1.

Fig. 1
figure 1

Plot when objective function is generated using optimized bbd parameters

Maximum iteration = 50

Firefly Population = 200

Initial randomness (alpha) = 1

Cooling factor (delta) = 0.97

Attractive constant (beta) = 1

Absorption coefficient (gamma) = 0.01

The purpose of Table 3 is to summarize the results of the simulation, providing information on the performance of each of the parameters of speed, feed, depth of cut and nose radius regarding the best and worst parameters. In a viewing activity, optimal values for each parameter after each iteration are displayed. To enrich our understanding, the best firefly after ten iterations are shown to facilitate comparison. For the optimized BBD parameters, Table 3 displays the best firefly based on Eq. (3) and instantly shows whether the surface roughness has been improved or not. Viewing each iteration, a matrix containing four elements is shown, which shows the results of the speed, feed, depth of cut and nose radius. For instance, after iteration 1, the speed parameter was 805.12 rpm, the feed is 0.12 mm/rev, the depth of cut is 1.06 mm and the nose radius is 0.075 mm. Then, the surface roughness, measured as roughness average, Ra is computed by substituting the values of s, f, doc and nr in Eq. (3). The roughness average value obtained after the first iteration is 878,314.2. Although this is not shown in Table 3, it is stored in a space within the python programming language. However, an improvement on this roughness average value is desired in iteration two and subsequent iterations. Now, moving to iteration two, the roughness average, Ra, is obtained by substituting the value of speed as 804.23 rpm, feed, depth of cut and nose radius as 0.06 mm/rev 1 mm and 0.07 mm, respectively (Table 3). By substituting Eq. (3), we obtained 877,342.9 as the roughness average. This is the result after iteration two. But we need further computations to confirm whether there are improvements or not and convergence is shown when there is no further improvement in the roughness average value over many iterations. In this work, a smaller roughness average indicates an improvement result of the roughness average after iterations one and two, which yielded 87,831.2 and 877,342.9, respectively. The effectiveness of the firefly algorithm is shown in the further reduction of the roughness average, which indicates the surface roughness at each iteration until it stabilizes. Therefore, after the tenth iteration, Ra was obtained as 872,728.534. This remained the value of the Ra after the twentieth, thirtieth and fortieth iterations. Furthermore, when additional iterations were run, to obtain value after the fiftieth iteration, only a very marginal decrease of 0.00639999 was observed. But considering the computer resources, it is not worthwhile to keep the simulation running with very minimal charges. Thus, the simulation was terminated after the fiftieth iteration. Therefore, using the optimized BBD parameters, the optimal output obtained (Table 3) is 872,728.533600001. Besides, by following the procedure analysed here, which was deployed to understand Table 4 are obtained for the optimized procedure when as the objective function.

Table 4 Optimal solutions—regression equation

However, Figs. 1 and 2 show the progress made after every ten iterations for stability and convergence. Take Fig. 1 as an instance, when substituting the values of the simulated parameters into the objective function (Eq. 3) to obtain the roughness average, convergence is quickly obtained roughly after the third iteration. This is shown by a sharp drop in the objective function value from iteration zero when the simulation has not started to iteration three). It then moves on constantly at roughly 872,728.53 until termination of the procedure was initiated as a result of perceived waste of computer resources if simulation continues beyond this iteration fifty.

Fig. 2
figure 2

Plot when the regression equation is taken as objective function

Firefly optimization data when regression equation is used as objective function

The following are the characteristics of the optimization model, and these attributes are produced in Table 4 and the pictorial description in Fig. 2.

Maximum iteration = 50.

Firefly population = 200.

Initial randomness (alpha) = 1.

Cooling factor (delta) = 0.97.

Attractive constant (beta) = 1.

Absorption coefficient (gamma) = 0.01.

Now, the characteristics of Fig. 2 are different from Fig. 1 as there are multiple points shown as stability. Consider Fig. 2 and the changes in the objective function value along the Y-axis. Because the simulation produces negative Ra, a decrease is shown by a rewards movement of the line. For this Fig. 2, at iterations one to three, there seems to be stability but it is short-lived. There is then a sharp drop in value between iterations there and four to iteration thirteen. But surprisingly, a further reduction in the objective function values was experienced at iteration thirteen which remained stable until iteration fifty. Then, the procedure was terminated at iteration fifty and the roughness average value, obtained from Table 4 as − 51.428688 is taken as the desired.

Conclusions

In this work, the problem solved concerns the determination of optimal surface roughness of the IS 2062 E250 steel plates during the boring process. The firefly evolutionary algorithm-based TP-BBD method used for the boring operation of the IS 2062 E250 steel plates permits solving optimization problems for surface roughness optimization. It was concluded that the use of the TBB-FF method was feasible with the experimental data considered; the new development in the present work is the introduction of the firefly algorithm into an existing integrated method of the Taguchi method and Box Behnken Design method. The method’s validation process reveals that it is feasible to achieve modifications comparable to those achieved in a previous work where the genetic algorithm replaces the firefly algorithm. This paper contributed to the boring optimization literature by providing a robust TBBS-FF method for the optimization of boring operations parameters. The method presented exhibits unusual characteristics of good efficiency for particular problems. Besides, since the cost of implementation of the procedure is often of concern, the proposed method also assures that only a small number of iterations are needed to obtain optimal solutions. Precisely, this paper differs from previous Taguchi-BBD optimization studies by providing a robust TBBD-FF to handle efficiency problems while reducing the computational cost of the method. This paper also differs by introducing a nonlinear optimization function, with changing directions each time it is implemented. Furthermore, we discovered that better surface roughness was achieved than previously developed methods on the integrated Taguchi method-Box Behnken design–Teaching learning-based optimization (TBB–TLBO) method. Besides, the computational convergence results even exceed the alternative TBB–TLBO method because of the nonlinear function embedded in the firefly algorithm. Also, the optimal solutions of the TBB-FF algorithm method exceed those obtained for the TBB-TLBO method. This particular work was treated as a single objective function problem where the parameters were related to a single goal of the boring process such as the improvement of the surface integrity of the steel plates. However, the goal of the boring process may be many, including optimizing the material removal process in addition to the surface roughness reduction effort. By looking into the material removal process optimization incorporated with the reduction in the surface roughness of the steel plates, multiple objective functions could be introduced as a future research aspect. Here, the firefly algorithm component can be edified to solve the multiple objective function optimization problems. At the end of the day, the machining workshop can utilize the optimal parameters obtained from the TBB-FF method to be more efficient. The implementation of the optimal solutions from the TBB-FF method in the machining ship makes the job easier. Instead of being confronted with several sub-optimal solutions, the system can utilize an optimal solution to get the job done fast. It also provides a benchmark with which the current performance could be judged. The output is also generated at a very high quality. Notwithstanding, the limitation of this work is the dependence on published work which limits the flexibility in analysis. This could be corrected in a future work that should focus on collecting experimental data from the workshop.