Skip to main content
. 2023 Oct 16;23(20):8504. doi: 10.3390/s23208504
Algorithm 1: AutoPro Job Distribution Algorithm
  1. Input: FederatedQueue, Size of federated queue on cloud server.

  2.    PrimeServer, Physical address of each prime server

  •              {PS1, PS2 …, PSN}.

  • 3.

       LocalServer, Physical address of each local server

  •              {LS1, LS2, …, LSN}.

  • 4.

       AuthorizedServer, ∀ (PrimeServers ⋃ LocalServer).

  • 5.

       TestSet[], A group of recent remote health patients data sent by

  •             authorized hospital’s server.

  • 6.

    Output: ResultSet[], Prediction for the TestSet[] send by the

  •                   AuthorizedServer.

  • 7.

    Initialize (FederatedQueue, PS1, PS2, …, PSN, LS1, LS2, …, LSN,

  •        TestSet[], Signal) =

  • 8.

    Global ResultSet[]=

  • 9.

    Event = Value   # Assign 0 = Start of Week or 1 = Start of month.

  • 10

    If (CurrentDate == Event)

  • 11.

       If Size(Signal) ==Size(PrimeServer)

  • 12.

          Print “All prime servers are in ready state”

  • 13.

       Else

  • 14.

          Print “Prime server is still under training”

  •        # Wait until ∀ PrimeServer’s are trained.

  • 15.

          For ∀ PrimeServer

  • 16.

         Signal + = RPC (Train PrimeServer)

  •           # Training with updated data.

  • 17.

    TestSet[]=JobRequest(AuthorizedServers)

  • 18.

    If(TestSet[]!=NULL)

  • 19.

      If(∀ PrimeServerQueue!=FULL)

  • 20.

        If TestSet[] ϵ PrimeServer

  • 21.

          ResultSet[] = 0N1PrimeServer.FHETestSet[]

  • 22.

            ResultSet[] += PrimeServeri.Result

  • 23.

        Else

  • 24.

             Wait(QueueAvailability)

  • 25.

             ResultSet[] = 0NPrimeServer.FHETestSet[]

  • 26.

      Else

  • 27.

        Print “Request in wait queue of the cloud server”

  • 28.

    Return ResultSet[]