| Run at the MCP |
| Input: dmin, dmax, Δd, and η |
| Output: |
(1) | Invoke Algorithm 1 to get Nk and MTK |
(2) | Notify η, Nk, and MTK to all the DCHs |
(3) | Initialize the set Dk as “empty” |
(4) | For each member (xk, yk) of Nkdo |
(5) | // is the coordinates of BS, and lk is the distance between BS and DCH k |
(6) | Compute according to formula (5) by using as the input // is the channel gain from BS to DCH k |
(7) | Add () to Dk |
(8) | End for |
(9) | If receive from all the DCHs then |
(10) | Initialize μ as “0” |
(11) | For (d = dmin; d < dmax; d = d + Δd) do //Δd is the incremental step of the coverage radius for BS |
(12) | Initialize and as “0” respectively |
(13) | For each member () of Dkdo |
(14) | If d < lk + Δd then End if |
(15) | If d < lk + Δd and then End if |
(16) | End for |
(17) | Broadcast test packet at |
(18) | Calculate the related parameters (e.g., φt, φc, and φout,k) according to feedback of test packet |
(19) | Compute μmcp according to formula (10) |
(20) | If μ < μmcp then {μ = μmcp; dse = d} End if |
(21) | End for |
(22) | For each member () of Dkdo |
(23) | If dse < lk + Δd then βk = 1 and send it to DCH k End if |
(24) | If dse < lk + Δd and then αk = 1 and send it to DCH k End if |
(25) | End for |
(26) | End if |