Skip to main content
. 2022 Dec 22;10(1):18. doi: 10.3390/bioengineering10010018
Algorithm 1 ADSCFGWO algorithm
  • 1:

    Initialize ADSCFGWO population Xi(i=1,2,,n) with size n, iterations tMax, fitness function Fn, parameters (a, A1, A2, A3, C1, C2, r1, r2, r3, r4)

  • 2:

    Calculate fitness function Fn for each Xi

  • 3:

    Find best solutions as Sα,Sβ,Sδ

  • 4:

    Set t = 1

  • 5:

    while ttMaxdo

  • 6:

      Update r1 by r1=a1tMaxiter

  • 7:

      for (i=1:in1) do

  • 8:

          DynamicSearch(Fn)

  • 9:

          Update Fitness by Equation (3)

  • 10:

        Update positions from GWO as X(t+1)=T1+T2+T33

  • 11:

        if (r4<0.5) then

  • 12:

          Update positions from SCA as X(t+1)=X(t)+r1×sin(r2)×|r3SαX(t)|

  • 13:

        end if

  • 14:

      end for

  • 15:

      for (i=1:in2) do

  • 16:

        DynamicSearch(Fn)

  • 17:

        Update Fitness by Equation (3)

  • 18:

        Update positions from GWO as X(t+1)=T1+T2+T33

  • 19:

        if (r40.5) then

  • 20:

          Update positions from SCA as X(t+1)=X(t)+r1×cos(r2)×|r3SαX(t)|

  • 21:

        end if

  • 22:

      end for

  • 23:

      Update fitness function Fn for each Xi

  • 24:

      Update parameters

  • 25:

      Find best solutions as Sα,Sβ,Sδ

  • 26:

    end while

  • 27:

    Return best solution X*

  • 28:

    DynamicSearch(Fn)

  • 29:

    if (Best Fn is same for three iterations) then

  • 30:

      Increase exploration group solutions (n1)

  • 31:

      Decrease exploitation group solutions (n2)

  • 33:

    end if