|
Algorithm 1 Original Fungal Growth Optimizer (FGO) |
-
1:
Input: Population size N, maximum function evaluations , problem dimension D, bounds
-
2:
Initialize N hyphae using Equation (1)
-
3:
Evaluate fitness and identify the global best
-
4:
,
-
5:
while do
-
6:
Generate random numbers
-
7:
if then ▹ Execute Hyphal Tip Growth loop
-
8:
for to N do
-
9:
if then
-
10:
break
-
11:
end if
-
12:
Compute exploration rate and normalized fitness probability
-
13:
if then
-
14:
Update via Exploration Phase I (Equation (2))
-
15:
else
-
16:
Update via Exploitation Phase I (Equation (2))
-
17:
end if
-
18:
Evaluate and set
-
19:
Greedy selection: if , set
-
20:
end for
-
21:
else ▹ Execute Branching and Germination loop
-
22:
for to N do
-
23:
if then
-
24:
break
-
25:
end if
-
26:
Generate random number
-
27:
if then
-
28:
Update via Hyphal Branching (Equation (3))
-
29:
else
-
30:
Update via Spore Germination (Equation (4))
-
31:
end if
-
32:
Evaluate and set
-
33:
Greedy selection: if , set
-
34:
end for
-
35:
end if
-
36:
Update global best if a better solution is found
-
37:
-
38:
end while
-
39:
Output: Global best solution
|