Multi-Agent Finite Impulse Response Optimizer for Numerical Optimization Problems

: This paper investigates the potential of the ultimate iterative unbiased finite impulse response (UFIR) filter as a source of inspiration in a population-based metaheuristic algorithm. Here, a new algorithm inspired by the measurement and estimation procedures of the UFIR filter named the Multi-Agent Finite Impulse Response Optimizer (MAFIRO) for solving numerical optimization problems is proposed. MAFIRO works with a set of agents where each performs the measurement and estimation to find a solution. MAFIRO employs a random mutation of the best-so-far solution and the shrinking local neighborhood method to balance between the exploration and exploitation phases during the optimization process. Subsequently, the performance of MAFIRO is tested by solving the benchmark test suite of the IEEE Congress on Evolutionary Computation 2014. The benchmark is composed of 30 mathematical functions. The competency of MAFIRO is compared with the Particle Swarm Optimization algorithm, Genetic Algorithm, and Grey Wolf Optimizer. The results show that MAFIRO leads in 23 out of 30 functions and has the highest Friedman rank. MAFIRO performs significantly better than the other tested algorithms. Based on the findings, we show that the concept of the UFIR filter is a good inspiration for a population-based metaheuristic algorithm.


Introduction
Providing optimal services or products is one of the ways to attract customers in many sectors such as business, education, banking, and industry. The need to provide the optimal services or products contributes to the increment of optimization problems from time to time. The requirement to find the best either minimum or maximum result with efficient time has encouraged many researchers to explore the solutions for optimization problems.
Commonly, optimization problems can be solved efficiently by applying suitable optimization methods. From the computer science and engineering points of view, optimization methods can be defined as procedures or algorithms used to solve optimization problems. The goal of the optimization algorithms (also known as optimizers) is to find an optimal variable's value that can either minimize or maximize the objective function under a given constraint.
Over the past few decades, numerous metaheuristic algorithms have been designed to provide efficient approximate solutions for optimization problems. In describing metaheuristic algorithms, several classifications have been proposed. The classifications are dependent on the characteristics and focus of study such as memory usage versus memoryless methods, the iterative versus greedy methods, one versus various neighborhood structures, and dynamic versus static objective function (1)(2)(3). Most of existing metaheuristic algorithms in the literature are nature-inspired (4,5), which led Fister et al. (6) to present a new view of metaheuristic algorithms' classification based on the inspirational source. Fister et al. classified metaheuristic algorithms into four main classifications: swarm intelligence-based, bio-inspired non-swarm intelligence-based, physics or chemistry-based, and others. The non-nature-inspired algorithms are classified under others category. The nature-inspired algorithms transform a specific process in nature as an effective way of solving optimization problems. On the contrary, non-nature-inspired algorithms mimic a specific process other than nature for solving the optimization problems.
Different from Fister et al.,  and Mandal (10) classified existing metaheuristic algorithms into three main classifications: evolutionary algorithms (EAs), physics-based algorithms, and swarm intelligence (SI) algorithms. EAs and SI algorithms are the two main streams of nature-inspired algorithms (11). EAs are inspired by the evolution of nature concept (12). Meanwhile, SI algorithms are inspired by the concept of the collective or swarming behavior of creatures (9). In SI algorithms, each agent performs a series of certain operations and shares their information among others (13). SI algorithms have attracted much attention from the research community, as most of the proposed SI algorithms in the literature are bio-inspired (4,5). The Grey Wolf Optimizer (GWO) (12), Salp Swarm Algorithm (SSA) (14), Grasshopper Optimization Algorithm (GOA) (15), Spotted Hyena Optimizer (SHO) (16), Pity Beetle Algorithm (PBA) (17), and Sailfish Optimizer (18) are among modern SI algorithms.
As there are no clear guidelines in classifying metaheuristic algorithms, several researchers have created an alternative classification method for categorizing metaheuristic algorithms, especially those with characteristics different from EAs and SI. Besides biology-based, chemistry-based, and physics-based, the plant intelligencebased algorithms (19) were also proposed under the classification of nature-inspired-based algorithms. Several algorithms, such as the Flower Pollination Algorithm (20), the Runner Root Algorithm (21), Rooted Tree Optimization (22), and the Path Planning Algorithm (23), are classified under the plant intelligence-based algorithms. Other classifications, such as social-based, music-based, sport-based, and mathematics-based (19,24), also exist in the literature and can be classified under the non-nature-inspired algorithms.
From another viewpoint, metaheuristic algorithms are also classified based on the number of agents used in the search strategy, including single-solution (also known as a single-agent) and population-based solution (also known as a multi-agent). The classification based on the number of agents provides a clear view of the algorithms (2) and has motivated some researchers in describing metaheuristic algorithms (4,10,(25)(26)(27)(28). Single-solution and population-based metaheuristic algorithms have both been successfully applied to many optimization problems.
Single-solution algorithms begin with a random generation of one solution, and it is improved over the optimization process. Although the implementation of single-solution algorithms is easier and their computational complexity is lower, they tend to get trapped in local optima (29). In contrast, the optimization process for population-based algorithms starts with a random generation of a set of solutions. The agents in population-based algorithms share the information among them, where the best-so-far solution is selected to improve the solution throughout various iterations. According to (30), population-based metaheuristic algorithms have a better ability of exploration and better avoidance of local optima stagnation compared to the single-solution metaheuristic algorithms.
The trends of metaheuristic algorithms in terms of the inspirational source and number of agents are reviewed in Table 1. A total number of 35 existing metaheuristic algorithms from 2017 to 2020 are randomly picked and listed.
Categories 1 to 4 are categorized based on the inspirational source (categories 1 to 3: nature-inspired-based (NI) algorithm, and category 4: non-nature-inspired-based (non-NI) algorithm), whereas categories 5 and 6 are established based on the number of agents used (category 5: single-solution algorithm and category 6: populationbased algorithm).
As shown in Table 1, NI algorithms, especially those from the EAs group (category 1) and SI group (category 2), dominate the number of metaheuristic algorithms. Only nine out of the 35 listed algorithms are non-NI algorithms. Table 1 shows that researchers are more likely to develop a population-based algorithm than a single-solution one. Only three out of 35 represent single-solution algorithms. This finding is similar to those reported by (31) and (32). In their papers, only three out of 50 algorithms (from 1975 to 2017) and only two out of 74 algorithms (from 1951 to 2017) are single-solution algorithms, respectively.  Table 1 fall into the population-based, swarm intelligence, and natureinspired categories. It is worth mentioning that all EAs and SI algorithms are population-based. Both need to employ population-based aspects to implement the evolution process and swarming behavior, respectively. However, population-based algorithms are not necessarily bound to the concept of either EAs or SI in their algorithms.

Most of the algorithms listed in
A large number of population-based algorithms are indirectly related to a large number of EAs and SI algorithms, where the population-based solutions need to be employed for both EAs and SI algorithms. For example, for the Tree Growth Algorithm (TGA) (32), the founders need to develop a population-based algorithm because the inspirational source is from the evolutionary process of trees in nature. TGA is grouped under the EAs category. The same decision holds for the Salp Swarm Algorithm (SSA) (14), by which the inspirational source is from the swarming behaviors of salps. Thus, SSA is developed as a population-based algorithm. Unlike TGA, SSA is categorized under the SI category.
Therefore, we can conclude that the inspirational source plays an important role and contributes to the decision of researchers to either develop a single-solution or a population-based algorithm.
Apart from classification, the more important feature of metaheuristic algorithms is the ability to balance between the exploration and exploitation phases (57). The former is a process of investigating the search space area as wide as possible to secure the solution. During the exploration phase, a stochastic operator is needed for the search (12). In contrast, the latter is a process of narrowing the search to a specific promising area, known as a local search.
Balancing the exploration and exploitation phases is a challenging task that requires thorough strategies. Thus, many researchers attempt to develop new metaheuristic algorithms by inspiring a convincing inspirational source, that can balance both important phases for solving optimization problems.
The inspirational source can also be driven by the estimation concepts in state-space models. Infinite impulse response (IIR) filters (including the Kalman filter (KF)) and finite impulse response (FIR) filters (58) are two popular types of estimators for state estimations, especially in control engineering applications. Both use the mathematical state-space model of systems and measurements to estimate the state. FIR filters became popular and are preferred by researchers because of the robustness and stability in their structures (59,60). Variants of FIR filters have been proposed by researchers. The ultimate iterative unbiased finite impulse response (UFIR) filter is one of them.
Different from KF, a UFIR filter completely ignores the noise statistics, error covariance, and initial value to calculate the state estimate. It also provides a fast iterative Kalman-like approach in a simpler form to improve the estimation process (61,62). The advantages of the UFIR filter meet industry requirements (63). To note, UFIR is the most robust among the FIR variants as stated in (61,64,65). UFIR filters have been effectively applied in numerous engineering applications, including applications in global positioning systems (GPS)-based vehicle tracking over a wireless sensor network (WSN) (66), an electrocardiogram (ECG) data for features extraction (67,68), and state estimation of carbon monoxide concentration (69)(70)(71).
The favorable performance of UFIR filters motivates the transformation of this estimator into a new optimizer. Previously, the UFIR filter framework has been used as an inspiration for a single-based metaheuristic optimization algorithm, called the Single-Agent Finite Impulse Response Optimizer (SAFIRO), as reported in (72)(73)(74)(75). The findings show that SAFIRO has a good performance as a single-solution metaheuristic algorithm.
Thus, this paper introduces a new population-based metaheuristic optimization algorithm inspired by the UFIR filter framework, named the Multi-Agent Finite Impulse Response Optimizer (MAFIRO). This study investigates the potential of using work procedures of the UFIR filter in a population-based metaheuristic algorithm. MAFIRO operates with a group of agents to seek an optimal or near-optimal solution in solving numerical optimization problems. MAFIRO adopts the framework of the UFIR filter by performing the measurement and estimation of the solution.
Besides, MAFIRO implements a random mutation of the best-so-far solution (Xbestsofar) and shrinking local neighborhood method in finding a solution. The exploration in MAFIRO is encouraged by a random mutation of Xbestsofar; meanwhile, the exploitation is encouraged by a shrinking local neighborhood. It is important to mention that the term "mutation" in this paper is dissimilar from the context of "mutation" in GA. In this study, "mutation" means the displacement of a new measurement that is not fully following the Xbestsofar value.
The performances of MAFIRO are evaluated and compared with other population-based metaheuristic algorithms. The comparisons are based on the mean fitness value and statistical ranking obtained in solving the IEEE Congress on Evolutionary Computation (CEC) 2014 benchmark test suite (76). The CEC 2014 benchmark test suite contains 30 mathematical functions represent real-parameter numerical optimization problems. Three state-of-the-art population-based metaheuristic algorithms are considered when comparing the results of the proposed algorithm. The algorithms are the Particle Swarm Optimization (PSO) algorithm (77), Genetic Algorithm (GA) (78), and Grey Wolf Optimizer (GWO) (12). SAFIRO is excluded in the performance comparison, as it is classified in a different class of metaheuristic algorithms. Moreover, MAFIRO is developed to not compete with SAFIRO.
The experimental results show that the proposed MAFIRO performed significantly better than all tested algorithms by leading 23 out of 30 functions. Based on the results, we revealed that the framework of the UFIR filter is also a good inspirational source for a population-based metaheuristic algorithm.
The remainder of this paper is organized as follows: Section 2 briefly describes the KF, FIR, and UFIR filters. This is followed by the descriptions of the proposed MAFIRO and the experimental procedure for evaluating the performance of MAFIRO. Section 3 presents the results and discussions. Finally, Section 4 briefly provides the conclusion and scope for future works.

Finite Impulse Response Filter
A state-space representation is commonly used in various engineering applications. It includes a linear discrete time-invariant (DTI) system, which can be applied to solve an estimation problem. DTI systems are generally modeled in a state-space by the state (the input) equation, as shown in (1) and the measurement (the output) equation, as shown in (2), respectively (79).
The ℝ is a state vector that describes the system's variables of interest such as a position, velocity, or acceleration at the discrete time-index, n; R denotes the number of states; ℝ × is a state transition matrix that projects the previous state, −1 to the current state, ; ℝ is a measurement vector that represents a measurement observation; ℝ × is a measurement transition matrix that projects the measurements onto the state vector variables; ℝ is a process noise vector; ℝ is a measurement noise vector; ℝ × is a process noise matrix, and ℝ × is a measurement noise matrix.
As mentioned in the introduction part, FIR filters and KFs are two different types of state estimators used to estimate the state variables. Figure 1 shows the KF strategy in estimating the state. In KF, the estimation of the state is improved with the assistance of the measurement update equation and the Kalman gain matrix. To optimally estimate the state at time-index, t, KF requires the correct values of the system noise, Qt, and the measurement noise, Rt, at each time-index, as well as the initial state, ̂0, and the error covariance matrix, P0, at time zero (80). If the correct values of those parameters are not provided, KF might produce errors when the previous error is projected onto the next state estimation. This happens because of KF's infinite impulse response structure. In this case, KF is unable to provide an optimal state estimation anymore.
Hence, the FIR filter has been introduced by Jazwinski in 1968, as an option to KF. Unlike KF, the FIR filter has a finite impulse response structure where the state vector is estimated on a finite number of recent measurements and does not require the initial condition, error-covariance matrix, and noise statistics.
Additionally, the FIR filter is more robust and stable than the IIR filter due to its finite form, due to which the new estimation process does not rely on past estimation information. That means if there is an error in the previous estimation, the error is not projected to the next estimation process (81,82). Since the introduction, several modifications to the basic principle of the FIR filter have been carried out to improve its performance. The receding horizon FIR filter proposed by Ahn et al. (83), and the fast iterative form for the FIR filter by Zhao et al. (84,85) are among the significant modifications of FIR filters.
In 2016, Shmaliy et al. introduced the UFIR filter to provide a fast near-optimal estimation in a simpler form (61). This UFIR filter operates with two sets of mathematical equations: the batch form and the iterative form. The batch form is used to generate an initial value of the state estimate, whereas the iterative form is used for fast computation of state estimations.
As already mentioned, the estimation process in UFIR is implemented in a finite length according to its N. This means that the UFIR filter estimates the state based on N's recent measurements, which start at time-index, t=N until the maximum time-index, T.
As illustrated in Figure 2, the UFIR filter produces its initial state estimation through the batch form part (at point m=t-N+1 and point s), where all measurements are handled at one time. Thus, the initial estimation value is generated at point s by a convolution process between the gain, ̅ , , and the measurement, , , as shown in (3).

Figure 2.
A UFIR strategy to estimate the state (by assuming N=6).
Matrix ̅ , is the gain or the coefficient of the filter impulse response represented in a state-space and can be obtained as in (4).
Vector , and matrix Cm,s represent the measurement values and the measurement matrix, respectively, within the batch form points: m and s. Matrix Gs is known as the generalized noise power gain (GNPG) and can be computed as in (5). The superscript ( T ) denotes the transposed operation.
The initial state estimation, ̅ , is then updated by an iterative form part (starting from point l until point l=k) to improve the estimation. The iterative state estimation, ̅ , can be computed as in (6) where A is a transition matrix of the iterative form; ̅ −1 is a previous state estimation; C is a measurement matrix; and is a Kalmanlike correction gain (also known as bias correction gain).
The matrix can be calculated as in (7), where is the GNPG for the iterative part. The GNPG is a matrix used together with the optimal N to compensate for the deficiency of noise information and the estimation error, by tuning the value as near as possible to the Kalman gain (80).
The GNPG can be calculated recursively as in (8), where −1 is the GNPG matrix for the nearest previous point.
In MAFIRO, the UFIR filter framework is used as an inspiration in the search strategy to find an optimal or near-optimal solution. The UFIR filter in the DTI system is adopted in modeling MAFIRO because the optimal solution to be estimated is time-independent. The interest in this work is a scalar value. Hence, all vectors and matrices in (3) to (8) are reduced to a scalar value with a 1×1 dimension. The state in (6) consists of only one parameter (variable) that holds an agent's estimated position in the search space. The comparisons between a UFIR filter and MAFIRO are listed in Table 2. Table 2. The comparisons of a UFIR filter and MAFIRO UFIR filter MAFIRO Works as an estimator to provide a near-optimal estimation in solving state-space estimation problems.
Works as an optimizer (by a set of agents) of metaheuristic algorithms to provide an optimal or near-optimal solution in solving optimization problems. The search strategy is inspired by the UFIR filter framework. Usually, it is involved with the state vector and represents several parameters such as position, acceleration, and velocity.
Considers a scalar representation, which is the estimated position of the agents.
Measurement values are obtained from the sensor.
The measurement value is simulated using a random mutation of Xbestsofar and the shrinking local neighborhood method.
The initial estimation value is computed in batch form by using the discrete convolution-based method.
The initial estimation position is generated by using a uniformly distributed random number generator in the range of [0,1].
Unlike a UFIR filter that works as an estimator to calculate a near-optimal solution for estimation problems, MAFIRO works as an optimizer to search for an optimal or near-optimal solution in solving optimization problems. In contrast to the UFIR filter that obtained measurement readings from the sensor, agents of MAFIRO simulate their measurement by using a random mutation of Xbestsofar and the shrinking local neighborhood method.
A UFIR filter computes its initial estimation by using the discrete convolution-based in batch form part. On the other hand, MAFIRO generates its initial estimation by using a uniformly distributed random number generator in the search space. Further details about the process are explained in the next section.

Strategy of MAFIRO
An agent in any metaheuristic algorithm is responsible for finding an optimal or near-optimal solution, for the given optimization problem. The search for a solution depends on the strategy of the algorithm. This strategy differentiates between one algorithm and another, according to its inspirational source. As aforementioned, in MAFIRO, the UFIR filter framework is used as a source of inspiration for agents to find the solution. Because MAFIRO is a population-based algorithm, it involves a set of agents that work together to search for an optimal or near-optimal solution.
As shown in Figure 3, the images of several persons symbolize each agent in MAFIRO that works as an individual UFIR filter. Those agents need to perform the measurement and estimation of the position that represents a measurement and estimation of the solution, respectively. Subsequently, the scale of justice image represents an evaluation step in the algorithm where the fitness of the estimated solution will be evaluated. The image of a person holding a flaming torch symbolizes the best agent with its Xbestsofar value. To note, Xbestsofar represents the best-so-far solution. Lastly, a trophy image visualizes an optimal solution or near-optimal solution achieved by the algorithm.  During the measurement stage, each i th agent will produce a new measurement of the solution, ( ), for each new iteration. This new measurement is simulated by using a random mutation of Xbestsofar and the shrinking local neighborhood method. Then, the value of the measurement is passed along to the estimation stage for further action.
During the estimation stage, each agent needs to undergo two stages: initial estimation and iterative estimation. The estimation of the i th agent, ( ), at iteration, is defined as (9), where denotes the estimated solution of the i th agent in the d th dimension, and D indicates the maximum number of the dimension.
The fitness of the estimated solution, ( ), for each agent is then evaluated according to the objective function. All agents are compared with each other to determine which one has the best fitness value. Figure 5 shows how MAFIRO agents communicate with each other using global topology communication to share information about their fitness. In this stage, the agent with the best fitness of the estimated solution is identified. The fitness value from the best agent is then compared to the current fitness value of Xbestsofar. If a better solution is found, then the Xbestsofar will be updated.
All procedures are repeated until they reach the maximum iteration. The optimal solution for MAFIRO is represented by the value of the Xbestsofar. Further details of each stage of MAFIRO are discussed in the next subsection.

Procedures of MAFIRO
MAFIRO consists of four major stages: initialization, measurement and estimation, fitness evaluation, and update Xbestsofar. Pseudocode 1 shows the entire procedure of MAFIRO, specifically for the minimization problem.
MAFIRO begins the optimization process at line 01, where all agents perform the initialization stage. After that, all agents perform the measurement and estimation stage from line 03 until line 15. This is followed by the fitness evaluation stage at line 16. Next, the agent that has the best fitness value is determined at line 17. Then, the fitness value from the best agent is compared to the fitness value of Xbestsofar. If a better solution is found, then the Xbestsofar is updated at line 19.
The procedures of line 03 until line 20 repeat until the stopping condition, which is the maximum number of function evaluations (maxFES) is met. Once the maxFES is achieved, the Xbestsofar is returned as the optimal solution to the given optimization problem.

Initialization Stage
As MAFIRO mimics the UFIR filter framework, the first step taken in MAFIRO is to define the value of N. MAFIRO needs N most recent measurements to start the search of a solution within the search space. The search space is the area for finding a solution within the lower limit, , and the upper limit, . The value of and are dependent on the given optimization problem. By considering the computational time, the ideal value of N in MAFIRO is assigned as four. The first two points in the sub-iterations of MAFIRO are used to generate the initial estimation, whereas the third point is used as the beginning of the iterative part. Therefore, during the initialization stage, each MAFIRO agent begins its operation by randomly generating four initial measurements, ( − 3), ( − 2), ( − 1), and ( ), by using (10). Random values are used to intensively explore the search space in finding a solution.
Then, the fitness of these random initial values for all i th agents are evaluated to determine the initial Xbestsofar. For the minimization problem, the initial value that has the smallest fitness value is assigned as the initial Xbestsofar. Conversely, for the maximization problem, the initial value that has the largest fitness value is assigned as the initial Xbestsofar.
The number of function evaluations (maxFES) as a stopping condition is also defined during the initialization step, where maxFES = no. of iterations × no. of dimensions.

Measurement and Estimation Stage
After obtaining an initial Xbestsofar, all MAFIRO agents perform the measurement and estimation of the solution. In the actual operation of the UFIR filter, the measurement readings can be taken from the sensor. However, in MAFIRO, there is no mechanism to obtain the measurement readings. Therefore, the measurement solution of MAFIRO is simulated by using a random mutation of Xbestsofar and the shrinking local neighborhood method.
The mechanism of mutation is applied at the measurement stage to diversify the solution by giving a new solution for certain dimensions of the agents. This approach encourages the exploration process in MAFIRO as a way to escape the local optima's trap. On the other hand, a local neighborhood method is implemented to encourage the exploitation process, where the search area shrinks according to the exponential decay equation.
Each dimension of the MAFIRO agents is associated with a uniformly distributed random number between zero and one. Figure 6 illustrates the MAFIRO agents with three dimensions. The number of dimensions is dependent on the optimization problem, which reflects the level of its difficulty. The higher the dimension value, the more difficult it is to solve the problem.  (11).
Meanwhile, dimensions with a random value of > 0.5 will undergo a random mutation process to produce a new measurement. The equation for this measurement is given as in (12), where the value of Xbestsofar is added with the random value of the local neighborhood.
Here, the mutation is conducted in the shrinking local neighborhood of Xbestsofar, as depicted in Figure 7. The local search operation scales down the search area, where the search is centered around Xbestsofar. The radius of the local neighborhood, , shrinks based on (13), where t is the current iteration. Meanwhile, T is the number of the maximum estimations, and is an adaptive coefficient value. In (13), the exponential decay equation is multiplied with half of the search space. This is to reduce the possibility of obtaining an infeasible solution.
An adaptive coefficient value, β, is used to control the reduction size of the neighborhood. Figure 8 shows the plots for the exponential term of the delta, δ, with variant values of β. A higher value of β produces a larger step size and leads to a faster transition from the exploration to the exploitation phase. However, a larger step size increases the possibility that the global optimal value will be missed. In contrast to a higher value, a lower value of β produces a smaller step size and leads to a slower transition. Having a smaller step size reduces the possibility of missing the global optimal. As visualized in Figure 8, β=1 has a slower transition, whereas β=20 has a faster one. Meanwhile, β=10 has a moderate transition from the exploration to the exploitation phase. A faster convergence may cause a premature convergence, whereas a slower convergence may increase the computational time. Hence, for MAFIRO, the value of β=10 is implemented to give a moderate transition from the exploration phase to the exploitation phase.
After obtaining a measurement of the solution, ( ), at the measurement stage, all agents are moved to the estimation stage. Here, N most recent measurements are needed to improve the solution of the agents. Each agent estimates the solution in a finite length according to the value of N. In MAFIRO, each iteration, t, consists of the sub-iteration, k. The value of k must be the same as the value of N.
As illustrated in Figure 9, the estimation stage is divided into two parts: initial estimation and iterative estimation. The former is intended to randomly generate the initial estimation ( ̅ (2) at k=2), whereas the latter is meant to iteratively improve the estimation from k=3 until k=N. The sub-iteration, k, indicates the operation of both estimation parts. In an actual UFIR filter, the initial estimation, ̅ , is calculated by using the convolution-based method as in (3) to (5). However, in MAFIRO, the initial estimation, ̅ ( = 2), is randomly generated within the [lower limit, upper limit] of the first two points in k, as shown in Pseudocode 2. A random element that is uniformly distributed in the range of [0,1] is used for the stochastic nature of MAFIRO. The iterative estimation, ̅ ,, for a UFIR filter in (6) is transformed to (14) for MAFIRO. As explained earlier, in this study, the state vector is reduced to a scalar representing only one variable, which is the estimated position. Hence, the state transition matrix, A, in (6) and (8) is equivalent to 1. The measurement transition matrix, C, from (4) until (8) is set as 1, indicating that the measurement and the state estimate have the same scale, as in (62). Thus, the computation of the estimated solution, ̅ ( ), can be simplified as in (14).
As depicted in Figure 9, the initial estimated value, ̅ ( = 2), is iteratively improved during the iterative part by using (14) from k=3 until k=N. The ̅ ( − 1) represents the estimated value for the most recent subiteration point. As C is assumed to be equal to 1, the computation of GNPG in (8) can be simplified to 1/k. Thus, the Kalman-like gain value in (7) is equal to the GNPG value in MAFIRO, as shown in (15).

Evaluation Stage
Each agent undergoes a fitness evaluation stage so that the quality or the fitness level of its estimated solution, ( ), obtained from the estimation stage, can be assessed. In each iteration, every MAFIRO agent undergoes the fitness evaluation once.
The fitness level is measured according to a fitness function, also known as an objective function. An objective function is a criterion or mathematical modeling with respect to an optimization problem that needs to be solved by the algorithm.

Update of The Best-so-far Solution
All agents communicate with each other ( Figure 5) to identify which agent has the best fitness value. The agent with the best fitness value for the corresponding iteration is assigned as the best agent. The fitness from the best agent is then compared to the fitness of Xbestsofar.
The value of Xbestsofar will be updated if a better solution is found. For the minimization problem, Xbestsofar is updated when the fitness of the best agent is smaller than the fitness of Xbestsofar. On the contrary, for the maximization problem, Xbestsofar is updated when the fitness of the best agent is larger than the fitness of Xbestsofar.
The search strategy (measurement and estimation) stage, fitness evaluation stage, and Xbestsofar updates are repeated for the second iteration until reach the stopping condition. These stages need to be repeated to improve the estimated solution and to avoid the local optima trap.
MAFIRO brings the Xbestsofar value to the next iteration. In the following iteration, the Xbestsofar is updated if a better fitness is found. Once the maximum iteration is reached, the Xbestsofar returns as the optimal or near-optimal solution for the given optimization problem.

MAFIRO versus SAFIRO
This subsection compares the procedures between the newly proposed MAFIRO and the previously proposed SAFIRO. The UFIR filter framework is used as an inspirational source in the development of both MAFIRO and SAFIRO. Table 3 shows a comparison of MAFIRO and SAFIRO. In finding the solution for the optimization problems, both MAFIRO and SAFIRO undergo four stages: the initialization of the solution, the measurement and estimation of the solution, a fitness evaluation, and the best-so-far update.
However, MAFIRO differs from SAFIRO in terms of the number of agents used in finding the optimal solution. Instead of using one agent, MAFIRO uses a set of agents. During the initialization step, the agent of SAFIRO and each agent of MAFIRO randomly produces N initial measurements to start the optimization process. In producing a new measurement, both algorithms apply a random mutation of the best-so-far solution and the shrinking local neighborhood method for the dimension that has a random value > 0.5.
The exploration is encouraged in both algorithms by a random mutation of the best-so-far solution, whereas the exploitation is encouraged by the shrinking local neighborhood method. In improving the solution during the estimation step, MAFIRO and SAFIRO perform two stages of estimations: the initial estimation and the iterative estimation. However, the equations for the iterative estimations for MAFIRO and SAFIRO are different due to the number of agent/s used.
Every agent in MAFIRO and SAFIRO performs the measurement, estimation, and fitness evaluation once for each iteration. In SAFIRO, for each iteration, an update of the best-so-far solution is done if the fitness of the current solution is better than the fitness of the best-so-far solution. Meanwhile, in MAFIRO, an update of the best-so-far solution is done if the fitness of the best agent in the current population is better than the fitness of the best-so-far solution. Both MAFIRO and SAFIRO use little memory, as these algorithms need to memorize only the value of the best-so-far solution.

Measurement and estimation
The number of measurement and estimation steps = number of agents. Each agent undergoes the measurement and estimation step once per iteration.
The agent undergoes the measurement and estimation stage once per iteration.

Fitness evaluation
The number of fitness evaluations = number of agents. Each agent does the fitness evaluation once in one iteration.
The agent does the fitness evaluation once per iteration.

Xbestsofar update
Xbestsofar is updated once per iteration. In each iteration, Xbestsofar will be updated if the fitness of the best agent is better than the fitness of Xbestsofar.
The agent updates X_best_so_far once per iteration. In each iteration, X_best_so_far will be updated if the fitness of the current solution is better than the fitness of X_best_so_far.

CEC 2014 Benchmark Test Suite of Single Objective Real-Parameter Numerical Optimization
The proposed MAFIRO is successfully developed using MATLAB software. The competency of MAFIRO is tested by solving 30 single-objective mathematical test functions available in the CEC 2014 benchmark test suite (76). The CEC 2014 benchmark test suite, which contains the real-parameter minimization optimization problems, has been used by several researchers for various algorithms, including the Manta Ray Foraging Optimization (MRFO) algorithm (56)  The CEC 2014 benchmark test suite consists of four different groups: unimodal functions, simple multimodal functions, hybrid functions, and composition functions. These groups represent the real optimization problems. All functions are minimization problems and are designed as black-box problems.
In the CEC 2014 benchmark test suite, the solutions for the given optimization problems are represented in their fitness form, meaning that each function has its optimal or ideal fitness value (Table IV). Further details about these functions can be read in (76). The MATLAB code for the CEC 2014 benchmark test suite can be obtained at http://www.ntu.edu.sg/home/EPNSugan/index_files/CEC2014.

Benchmarking against existing metaheuristic algorithms
The competency of MAFIRO is benchmarked against three population-based metaheuristic algorithms found in the literature. The GA and PSO algorithm are selected in this benchmarking experiment, as both are very prominent and established algorithms for the evolutionary computation category and swarm intelligence category, respectively. The codes for the GA and PSO algorithm are taken from the Practical Genetic Algorithms (88) and the website of the CEC 2014 (89), respectively.
Apart from that, the GWO is selected to relatively represent modern metaheuristic algorithms. GWO is among the most popular modern metaheuristic algorithms, with more than 4,200 paper citations. The code for GWO is taken from its author's website. As mentioned in the introduction part, SAFIRO is not involved in the comparison because it is in a different group of metaheuristic algorithms.
To ensure a fair comparison of algorithm performance, all tested algorithms are set to the same platform and experimental parameters ( Table 4). All values listed in Table 5 are in accordance with the parameter setting in the CEC 2014 benchmark test suite (76). To provide a fair evaluation for each comparison, the complexity of the problem is set to 50 dimensions. Meanwhile, the maxFES is set to 500,000 (maxFES = 10,000 iterations × dimension, D (76)). The number of agents used in this experiment is 50. The evaluation is based on the average performance over 51 run times on each test problem. The search space in the range of [-100,100] is used for all functions. The results obtained in this experiment are not normally distributed. Thus, the Friedman test, due to its suitability for non-parametric tests, is conducted to compare the results for all tested algorithms.
Theoretically, the Friedman test defines the null hypothesis as all performances of the algorithms being equivalent to one another, with no significant differences (90). The performances of MAFIRO, PSO algorithm, GA, and GWO are ranked statistically based on their mean fitness. The significant differences between these algorithms are also observed The post hoc analysis is then carried out using Holm's method to analyze significant differences in the algorithms' performances that were previously detected by the Friedman test. This is done as recommended by Derrac et al. (91). Holm's method rejects the null hypothesis if the statistical value is smaller than the p-value.
Normally, the value chosen for the tolerance level is either 0.01, 0.05, or 0.1. The larger the value, the easier it is to claim the significant difference. In contrast, the smaller the value, the more rigid it is to identify the significant difference (90). Therefore, in this work, =0.05 is chosen to balance the opportunity to obtain a significant difference with a rigid procedure in detecting the significant difference.
In this test, the KEEL software tool is applied as a platform for performing both the Friedman and Holm post hoc tests. The KEEL software can be downloaded through http://www.keel.es.

Statistical Analysis
The mean fitness and mean error of MAFIRO, PSO algorithm, GA, and GWO in solving 30 single-objective test functions available in the CEC 2014 benchmark test suite are tabulated in Table 6 to 9. The results in bold font indicate the best results among the algorithms tested for each function (Fn). Overall, MAFIRO shows excellent results by leading 23 out of the 30 functions. Further explanations of the results are given in the following sub-sections.

Unimodal Functions (Fn1 to Fn3)
The first group in the CEC 2014 benchmark test suite is provided to test the unimodal optimization problems. Function 1 (Fn1) to function 3 (Fn3) are used to test the algorithms' abilities to solve rotation problems. Fn1 is difficult to solve because the function is related to the Rotated High Conditioned Elliptic, which involves a quadratic ill-conditioned property (76). The ideal fitness for Fn1 is 100. Meanwhile, Fn2 is a Rotated Bent Cigar function with an ideal fitness of 200. Meanwhile, Fn3 is a Rotated Discus function with an ideal fitness of 300.
Overall, MAFIRO provides the best results compared to other algorithms for all unimodal functions. Table  6 shows that MAFIRO is capable of solving rotation optimization problems by achieving the fitness values of 2.13E+06 and 7673.24 for Fn1 and Fn2, respectively. MAFIRO managed to solve Fn3 with the optimal solution of 300. As the unimodal functions are related to exploitation benchmarking (12), the results show that MAFIRO performs well in the exploitation process, thus contributing to the success of solving the unimodal functions. The second group in the CEC 2014 benchmark test suite is provided to test the simple multimodal optimization problems. Simple multimodal functions consist of 13 optimization problems. Most of the functions are involved in shifting and rotation problems, which are related to exploration benchmarking (12). As shown in Table 7, MAFIRO performs well for simple multimodal functions by leading 9 out of 13 functions.
The results clearly indicate that besides being great at exploitation processes, MAFIRO is also good in exploration by providing the best solutions compared to others for  The third group in the CEC 2014 benchmark test suite is provided to test the hybrid optimization problems. Functions 17 to 22 are provided for testing hybrid optimization problems. In hybrid functions, the variables are randomly distributed into several subcomponents, where various subcomponents use different basic functions (76). The hybrid function consists of a combination of several multimodal functions (Fn19, Fn21, and Fn22). It also can be a combination of unimodal functions with simple multimodal functions (Fn17, Fn18, and Fn20). Therefore, the functions are more difficult to handle. Table 8 shows that MAFIRO performs very well in handling hybrid functions. MAFIRO achieved the best solution compared to other algorithms in all hybrid functions. The fourth group in the CEC 2014 benchmark test suite is provided to test the composition optimization problems. This group of composition functions comprises eight functions, which have many local optima. Therefore, the capability of both exploration and exploitation in the algorithm can be benchmarked together through composition functions (12).
Referring to Table 9, MAFIRO shows a good balance between exploration and exploitation by leading in five out of six composition functions, which are Fn23, Fn25, Fn27, Fn29, and Fn30.

Friedman Test and Holm Post Hoc Test
The Friedman test is then employed as a statistical analysis tool to rank the performance of MAFIRO against the other three tested algorithms. The rankings are compiled according to the average fitness value for all 30 benchmark functions, over the 51 runs. The average rank is computed for each algorithm, with lower values indicating better algorithm performance. As can be seen in Table 10, MAFIRO is ranked first, followed by PSO, GWO, and GA. Friedman's statistic is performed while considering the reduction performance distributed according to a chi-square value of 28.52 with three degrees of freedom (DOF). In this experiment, the Friedman test detects significant differences between the algorithms. Therefore, the null hypothesis was rejected and further analysis (applying the Holm post hoc test) (91) was carried out to identify better-performing algorithms. The results of the Holm post hoc test (with significant level, α=0.05) are recorded in Table 11. The Holm post hoc test detected significant differences between the performance of MAFIRO, PSO, GWO, and GA. The hypotheses with an unadjusted p-value ≤ 0.016667 are rejected by Holm's procedure. In this test, we showed that the proposed MAFIRO performed significantly better than the other three tested algorithms.

Boxplot
Next, the boxplots are generated to observe the stability of the results in solving the CEC 2014 benchmark test suite. The boxplots in Figure 10 As shown in Figure 10(a) to (d), generally, the data are not normally distributed where the median does not lie in the middle of the box. Therefore, the non-parametric statistical test has been applied to analyze the data. Figure 10(a) to (d) show a better quality of MAFIRO results than the other algorithms. For those selected functions, MAFIRO displays the lowest position, which is the nearest to the ideal fitness value compared to the other algorithms. The smallest size of the boxplot indicates that MAFIRO has small variances of mean, median, minimum, and maximum values. This condition implies the best performance of MAFIRO in solving those functions.

Convergence Curve Analysis
The capability of MAFIRO and other algorithms to achieve optimal or near-optimal solutions can be seen by generating convergence curve graphs. Each convergence curve shows the mean fitness against 10,000 iterations over 51 runs.
Statistically, MAFIRO performs very well in solving the CEC 2014 benchmark test suite by leading in 23 out of 30 functions. Among these 30 functions, Fn3, Fn6, Fn19, and Fn23 were selected to represent convergence curves of unimodal, simple multimodal, hybrid, and composition functions here, respectively. The other convergence curves can be shown in Appendix B.

1) Convergence Curve
Referring to Figure 11(a) to (d), an obvious change at the beginning of the search can be seen for each algorithm where the graphs drastically decline and then gradually flatten at some iterations until the iteration ends. This is due to the transition step from the exploration to the exploitation phase in the optimization process, as stated by Berg in (92). As visualized in Figure 11(a) to (d), MAFIRO can obtain the best solution with the fewest number of fitness evaluations. Influenced by the approaches of the random mutation and shrinking local neighborhood, MAFIRO shows a good balance between the exploration and exploitation phase, especially in handling unimodal functions (Figure 11(a)). When solving Fn3, MAFIRO managed to reach the optimal solution, with a fitness value of 300.
The convergence graph in Figure 11(b) shows that MAFIRO has a great performance compared to others in solving Fn6 with the fastest convergence while remaining nearest to the ideal fitness value. In Figure 11(c) and (d), although the functions are involved with hybrid and composition functions, respectively, all the algorithms managed to converge to the near-optimal solutions. Both figures show the excellent performances of MAFIRO, which obtains the best solution compared to the others. Figure 12(a) to (c) show the convergence graphs where PSO, GA, and GWO reveal better performances than MAFIRO, respectively. The convergence graphs in Figure 12(a) show the capability of all algorithms in escaping the local optima when solving Fn10. As can be seen clearly, MAFIRO and PSO have tried many times to escape from the local optima before gradually converging to provide a near-optimal solution for this function. These conditions happen due to the nature of the Schwefel function, which consists of many local optima, as can be seen in Figure 5 in (76). The longer period of the exploration phase has benefitted the PSO to give the best solution compared to others for this function. In this function, MAFIRO obtained the third-best solution behind PSO and GA. Figure 12(b) and (c) show the ability of GA and GWO to reach a better solution than MAFIRO when solving Fn26 and Fn28, respectively. The ability to exploit more search areas has given an advantage to GA and GWO for finding a better solution. In those functions, MAFIRO yields the last-best solution and the second-best solution, respectively. Subsequently, the behavior of MAFIRO's search agent is further observed through its trajectory, search history, and fitness trend. To perform the observations, the proposed MAFIRO is tested on the CEC 2014 benchmark test suite with a complexity of two-dimensional (2-D) optimization problems.
A single-agent with 100 iterations is set where only unimodal, simple multimodal, and composition (except for Fn29 and Fn30) functions are involved in these experiments. The hybrid functions are excluded because they are not specified in the 2-D domain. Function 3, Fn13, and Fn23 are selected to visualize the behavior of a MAFIRO agent in finding the best near-optimal solution within the search space area throughout the optimization process.

2)
Trajectory of A MAFIRO Agent The strategy of a MAFIRO agent in seeking the solution is specifically observed where two graphs are shown for each function. These two graphs present the first and second dimensions of the agent. In these graphs, the solutions of a MAFIRO agent are compared to the best-so-far-solution, Xbestsofar.
As can be seen in Figure 13(a) to (f), for both dimensions, the MAFIRO agent finds the solutions by roaming the search space at the beginning of an iteration and tries to narrow the search nearer to the best-so-far-solution after a certain iteration. The random mutation and shrinking local search neighborhood approach (employed during the measurement stage) allow a MAFIRO agent to get closer to the best-so-far solution and find the final solution before reaching the maximum number of iterations. 3)

Search History of A MAFIRO Agent
The transition of a MAFIRO agent for exploring and exploiting the search space can also be viewed by tracing its search history. Figure 14 (a) to (c) depict the search history of MAFIRO agent for Fn3, Fn13, and Fn23, respectively. The contour map for a 2-D function is used to mark the changes in a MAFIRO agent throughout the search process. The position of a MAFIRO agent is denoted by a star symbol, representing its estimated solution throughout the iterations. Meanwhile, the circle shape in each figure indicates the position of the final solution. From Figure 14 (a) to (c), we can clearly see that a MAFIRO agent has adequate exploration space before focusing on the promising areas for the exploitation process, which is around the best-so-far solution. Towards the end of the search process, the agent is able to find the final solution for the given optimization problems.

4) Fitness Trend of A MAFIRO Agent
The solution obtained by a MAFIRO agent against the best-so-far-solution, Xbestsofar, is shown in Figure  15(a) to (c). The obvious changes at the beginning of an iteration are due to the stochastic element applied during the measurement stage. The correction element of the measured solution and the Kalman-like gain during the estimation stage contribute to the improvement of MAFIRO's estimated solution. The stability of the graph towards the end of an iteration indicates that the MAFIRO agent can obtain a better solution before completing the search process (reaching the maximum iteration). In general, MAFIRO agents undergo ample exploration and exploitation processes and successfully provide the optimal or near-optimal solution for unimodal, simple multimodal, and composition optimization problems.
The findings described above indicate that the overall result of MAFIRO is very impressive. MAFIRO demonstrates a competitive and satisfying performance in solving unimodal, simple multimodal, hybrid, and composition functions. MAFIRO exhibits a high competency to reach the optimal or near-optimal solution by leading in 23 out of the 30 functions in solving the CEC 2014 benchmark test suite. These results show that the proposed MAFIRO manages to iteratively estimate the solution for numerous optimization problems (unimodal, multimodal, hybrid, and composition functions).

Conclusion and Future Works
A new population-based metaheuristic optimization algorithm named the Multi-agent Finite Impulse Response Optimizer (MAFIRO) is introduced in this paper. In finding the optimal or near-optimal solution, MAFIRO has been inspired by the estimation equations of the UFIR filter framework. MAFIRO uses a random mutation of Xbestsofar and the shrinking local neighborhood method to improve the solutions. The CEC 2014 benchmark test suite, which contains real-parameter minimization optimization problems, was applied to provide benchmark functions for evaluating the performance of MAFIRO. Then, MAFIRO's performance was statistically compared to some well-known metaheuristic algorithms (i.e., the PSO algorithm, GA, and GWO).
MAFIRO can produce optimal or near-optimal solutions and significantly outperformed the other tested algorithms in the Friedman test and Holm post hoc test. Thus, we can conclude that besides performing well as a single-solution metaheuristic algorithm, the concept of the UFIR filter is also a good inspirational source for a population-based metaheuristic algorithm.
With these excellent results, the proposed MAFIRO provides a convincing option for other researchers to apply this algorithm in solving any optimization problems in numerous fields. Additionally, MAFIRO can be a good platform for other fundamental researchers to modify, enhance, or hybridize it with other algorithms for better performances in handling optimization problems.
Further investigations and strategies for an escape from local optima will be considered for the improvement of MAFIRO. Besides, an asynchronous update mechanism for the algorithm's iteration strategy will be explored. Additionally, the proposed MAFIRO will be applied to solve engineering optimization problems such as for the maximization of wireless sensor network (WSN) coverage and in solving printed circuit board (PCB) routing problems.    The principle of MAFIRO.  The examples of agents with 3 dimensions.

Figure 7
The shrinking local neighborhood strategy in MAFIRO.