Skip to main content
. 2019 Dec 2;19(23):5307. doi: 10.3390/s19235307
 Algorithm 1 The MU association matching algorithm.
 Initialization phase:L=KNF, K^=K
1: for l=1:L do
2:  M^=M, Count=1
3:  while (CountM) do
4:   Hk*f*n*=argmaxHkfnkK^,(f,n)M^. Assign k* to the couple (f*,n*), K^=K^\k*, M^=M^\(f*,n*), and set Count=Count+1
5:  end while
6: end for
  Swap matching phase: Indicator=1
7: while (Indicator) do
8:  for u=1:K do
9:   for k=1:K do
10:    if Ψ(k)=Ψ(u) then
11:     continue;
12:    else if MUk and MUu are both in the coverage of the BSs of each other then
13:     switch (Ψ(k),Ψ(u))
14:     case MUk and MUu belonging to the same BS and different sub-channels:
15:      Calculate and compare the EE of the two sub-channels before and after the swap using the power control algorithm. If the EE of the two-subchannels both improve, exchange the sub-channel, form the new couple, and set Indicator=1.
16:     case MUk and MUu belonging to the different BSs and different sub-channels:
17:      Calculate and compare the EE of the two sub-channels before and after the swap using the power control algorithm. If the EE of the two sub-channels both improve, exchange the couple, form the new couple, and set Indicator=1.
18:     case MUk and MUu belonging to the different BSs and same sub-channels:
19:      Calculate the EE of the sub-channel before and after the swap using the power control algorithm. If the EE of the sub-channel has been improved, exchange the BS, form the new couple, and set Indicator=1.
20:      end switch
21:     end if
22:    end for
23:   end for
24: end while