## 2 CAP in Cellular Mobile Networks
### F/DR Algorithm  
The F/DR algorithm, based on a frequency allocation strategy with node degree reordering, is a well-known greedy algorithm used to solve FAP problems [55]. To tackle the FAP problem, the conventional F/DR algorithm splits it into two sub-problems. The first deals with the optimal cell ordering, while the second focuses on the optimal channel assignment to these ordered cells [41; 42; 43]. However, these two problems are closely related [43]. For instance, using two ordered cell lists (based on two different criteria) with the same channel allocation algorithm (in the second sub-problem) yields different results. Furthermore, if the correct ordering of the list or the correct prioritization criteria were previously known, the problem would ideally be solved. In the conventional F/DR algorithm, a cell organization criterion based on the highest level of assignment difficulty is used. Consequently, cells (or groups of cells) with the same difficulty level, which may be equally relevant, could experience inefficient channel allocation. This could be the case for a high-demand cell whose immediate relationship with other cells is irrelevant.  
To address optimal cell ordering, the F/DR algorithm employs a strategy known as node-degree sorting (DR), which generates an ordered list, \(L\), from the highest to the lowest cell degree value, eliminating cells with no demand (\(D_{i}=0\)). The sorting criterion is as follows:  
\[P_{i}=\left\{\begin{matrix}\sum_{j=1}^{N}D_{j}C_{ij},&\text{Si }D_{i}\
eq 0\\ 0,&\text{Si }D_{i}=0\end{matrix}\right\},\forall i\in\{1,\cdots,N\}, \tag{5}\]  
Here, \(P_{i}\) represents the degree of node \(i\). According to this definition, the prioritization criterion is based on the demand of neighboring cells as well as the number of separation channels required between them. This criterion was compared with some non-traditional ones in [43], and its performance was found to be the worst case. On the other hand, the F/DR algorithm employs an exhaustive algorithm in frequency (F) to address optimal channel allocation. This method identifies the first frequency that can be assigned to the first cell in list \(L\). Subsequently, the demand for that cell is reduced, and the list is rearranged. This sequence is repeated until the demand in all cells is zero. Algorithm 1 presents the pseudo-code for this heuristic algorithm.  
Figure 1: A conceptual representation of MS-FAP produced by two cells, \(C_{1}\) and \(C_{2}\), with demands, \(D_{1}\) and \(D_{2}\), co-channel constraints, \(C_{11}\) and \(C_{22}\), and non-zero answers, \(F_{1}\) and \(F_{2}\).  
```
0:\(\mathbf{C}=[C_{ij}]_{N\times N}\) and \(\mathbf{D}=[D_{1},\cdots,D_{i},\cdots,D_{N}]_{1\times N}\)
0:\(\mathbf{F}=[F_{ik}]_{N\times M}\)
1: While (\(\mathbf{D}\
eq[0,\cdots,0]_{1\times N}\))
2: Generate an ordered list \(L\) using the DR criteria (or replace by DR-k, DR-D-k or PR criteria)
3:\(f=1\)
4: Identify the cell located in the first list position, denoted by \(L\{1\}\)
5: While (\(f\
eq 0\))
6: Check the constraints for the \(i\)-th cell and the frequency \(f\)
7: If assignment possible, assign \(f\) to \(i\)-th cell in \(F_{ik}\), update \(D_{i}=D_{i}-1\),\(f=0\)
8: If assignment is not possible, do \(f=f+1\)
9: End While
10: End While
11: The answer is \(\mathbf{F}\) and exit
```  
**Algorithm 1** Exhaustive frequency strategy (F)