## 2 Materials and Methods
### Outline of Computational Approach
#### 2.5.3 Artificial Bee Colony (ABC) Algorithm  
The ABC algorithm, created by [PERSON] [43], was designed to address numerical optimization issues by emulating the foraging behavior of honeybees. The perfect collaboration and systematic arrangement of bee colonies create the essential foundation for this algorithm. The ABC algorithm functions by simulating the actions of three categories of bees--employed bees, onlooker bees, and scout bees. Worker bees concentrate on particular food sources and communicate details about them, whereas observer bees choose food sources according to this communicated information. In contrast, scout bees are tasked with finding new sources of food. To streamline the process, half of the bees in the colony are regarded as employed bees, while the other half are observed bees. When a food supply is depleted, worker bees shift to the role of scout bees [43; 44]. The ABC algorithm is recognized as a powerful technique for optimizing functions with multiple parameters. The way bees move according to the availability of food supplies allows the algorithm to provide an effective search method for solving problems. This method, which replicates the coordinated operation of natural bee colonies, offers a successful and novel solution for addressing intricate optimization challenges. The ABC algorithm involves three essential steps during each iteration: (1) deploying employed and onlooker bees to assess the quality of food sources, (2) deciding if scout bees will be released, and (3) guiding scout bees to new potential food sources if they emerge. In the model, the locations of the food sources signify possible solutions to the problem at hand, while the quantity of food at each source indicates the quality of these solutions. An increased quantity of food, signifying a superior solution, raises the likelihood of onlooker bees being drawn to that source. The quantity of scout bees is controlled by a \"limit parameter\"; if a food source does not show improvement after a specified number of attempts, the employed bee gives it up and turns into a scout bee. Throughout the solution development stage, a counter is utilized for each solution to monitor the number of unsuccessful attempts that indicate a lack of improvement [45; 46]. The mathematical expressions of the ABC algorithm, including Equations (11)-(15), were adapted from [43; 45; 46]. In the initial phase, the algorithm generates a randomly distributed population of solutions using Equation (11). \[Q_{i,k}=\Lambda_{low,k}+rand(0,1)(\Lambda_{up,k}-\Lambda_{low,k}) \tag{11}\]  
Here, \(Q_{i}\) represents a candidate solution in the population. The index \(i=\{1,2,\ldots,N\}\) denotes the population size (\(N\)), while \(k=\{1,2,\ldots,K\}\) represents the number of optimization parameters (\(K\)). For each parameter, \(\Lambda_{low,k}\) defines the lower boundary, whereas \(\Lambda_{up,k}\) specifies the upper boundary. Candidate solutions are generated within these limits using randomly assigned values [45]. In the algorithm, the number of food sources is equal to the number of employed bees. Each employed bee stores the position of the source, its nectar amount, and the newly discovered sources in its memory. The bee identifies a new food source in its neighborhood using Equation (12), evaluates its quality, and if the new source is better, it forgets the previous one and memorizes the new location [45]. \[V_{i,k}=Q_{i,k}+\phi_{i,k}(Q_{i,k}-Q_{r,k}) \tag{12}\]  
Each solution \(Q_{i}\) represents a food source, and \(V_{i,k}\) is generated by modifying a single parameter \(k\) of \(Q_{i}\). This modification is based on a randomly selected neighbor \(Q_{r}\), where the difference between their \(k\)th parameters is weighted by a random factor \(\phi_{i,k}\) in the range \([-1,1]\) and added to \(Q_{i,k}\). The parameter \(\phi_{i,k}\) regulates the exploration around the current food source, ensuring diversity in solution search.