Research Article

Overlapping Coalition Game for Resource Allocation in Many-to-Many D2D Communication

Algorithm 1

Resource allocation algorithm based on overlapping coalition game
Step 1: Initialize
1:  and ;
Step 2: Overlapping coalition initialization
1: According to and form ( from 1 to );
2: According to , all D2D pairs sharing the same resource block are determined while satisfying Equations (6), (7), (8), and (9).
3: Corresponding D2D pairs form an initial coalition.
Step 3: Overlapping coalition game
1: ;
2: For , from 1 to
3: In , for the th D2D pair ;
4: if and then
5:  if Meet (15) or (16) and then
6:   Join , and set ,;
7:  else
8:   Set ;
9:  end if
10: else
11:  The th D2D pair stays in .
12: end if
13: End for
14: if the number of D2D pairs in does not changed then
15:  if in , the th D2D pair meets Equation (17) and then
16:   the th D2D pair join the coalition or replace the -th D2D pair, ;
17:  else
18:   Set ;
19:  end if
20: end if
21: End for
22: Repeat Step 3 until the coalition structure remains unchanged in this round of game.
Step 4: Output
1: End the iteration and output the coalition structure.