Algorithm 1: Center Server Asynchronous FL-CNN |
1: initialize with u0 as initial global model 2: Perform for every local client k ∈ {1, 2…, K} (i) Assign (timestampgk, timestampsk) ← 0 3: for each communication round = 1, 2…t (i) if (t % current round = setES) (ii) Assign flag = 1 (iii) else assign flag = 0 (iv) m ← maximum from (C and K) (v) St ← (selection of random set of m clients) 4: for every k ∈ St parallelly compute (i) if flag =1 (ii) uk ← Client-Side-Function (k, ut, f lag) (iii) Update (timestampgk ← t, timestampsk ← t) (iv) else ugk ← Client-Side-Function (k, ug, t, flag) 5: if flag = 1 then (i) ug, t + 1 ← () * fg (t, k) ∗ uk //where fg (t, k) = α − (t − timestampgk) (ii) else us, t + 1 ← () * fs (t, k) ∗ us //where fs (t, k) = α − (t − timestampsk) |