# Resource Allocation in C-V2X Mode 3 Based on the Exchanged Preference Profiles
## 4 Resource Allocation via Matching
### Exchanged Preference Profiles  
In the C-V2X network, each VUE establishes the preference profile to rank the different CUEs, and each CUE possesses certain preferences for the VUEs which are acceptable. In our proposed game, we exchange the preference profiles of the two sides, which means that a VUE chooses the match according to the benefits of CUEs, and the preference profiles of CUEs are established based on the benefits of VUEs. The preference profile for the VUE \(k\) is defined as follows:  
\[U_{k}(m)=U_{a}\left(\mathbb{E}\left\{\sum_{k\in\mathcal{K}}x_{m,k}(t+1){R_{m, k}^{C}}^{*}(t+1)\right\}\right)-U_{a}\left(\mathbb{E}\left\{\sum_{k\in \mathcal{K}}x_{m,k}(t){R_{m,k}^{C}}^{*}(t)\right\}\right) \tag{14}\]  
where the time slot \(t\) indicates a matching decision made by VUE \(k\). Since the LVP is monotonically decreasing with respect to VUE \(k\)'s effective capacity, the preference profile of the CUE \(m\) is based on the achievable data rate of the VUE \(k\) when they share the RB \(n\). \[U_{m}(k)=\mathbb{E}\Big{\{}{W\text{log}\Big{(}1+{\gamma_{k,m}^{V}}^{*}\Big{)}} \Big{\}} \tag{15}\]  
where\[\gamma^{V}_{k,m}{}^{*}=\frac{P^{V}_{k}{}^{*}\alpha^{V}_{k,n}\delta^{V}_{k,n}}{ \sigma^{2}+P^{C}_{m,n}{}^{*}\alpha^{V}_{m,k,n}\delta^{V}_{m,k,n}} \tag{16}\]  
The reason why we exchange the preference profiles of the two sides is as follows. Suppose the CUE adopts the preference profile defined as Equation (14). In that case, it chooses the reused vehicle creating the least interference, which has no differences from the traditional method targeting maximizing the sum data rate of CUEs. However, when the DUE adopts the preference profile (14), the reused CUE producing more \(\alpha\)-fair function increments is preferred. Considering the characteristics of the \(\alpha\)-fair function, the CUEs with a lower ergodic capacity gain dominance in the preference profiles of DUEs, leading to the assignment fairness. This illustrates an important and interesting fact that the system's fairness can only be achieved by putting one side in the other side's standpoint. In addition, we define the preference relation \(\succ_{V}\) of VUEs as  
\[m\succ_{V}m^{\prime}\Rightarrow U_{k}(m)>U_{k}(m^{\prime}) \tag{17}\]  
Similarly, the preference relation \(\succ_{C}\) of CUEs is defined as  
\[k\succ_{C}k^{\prime}\Rightarrow U_{m}(k)>U_{m}(k^{\prime}) \tag{18}\]  
To address problem (13), we propose a resource allocation algorithm based on the exchanged preference profiles. Before presenting the algorithm, we define the stable matching allocation to evaluate the matching results. Definition 2: A matching \(\mu\) is said to be stable if there exists no blocking pair \((m,k)\) satisfying the following conditions, \(\forall k\in\mathcal{K},m\in\mathcal{M}\):  
1. \(k\) is unassigned or \(m\succ_{V}\mu(k)\);
2. \(m\) is unassigned or \(k\succ_{C}\mu(m)\). The stability ensures that no matched pair would benefit by deviating from their current matching decisions. As shown in constraint C2 of problem (13), we stipulate that each CUE possesses a specific quota for the assigned VUEs. Thus, to eliminate the influence of externalities, we propose Algorithm 1 to stabilize the matching result. Algorithm 1 is divided into the initialization phase and the matching phase. In the initialization phase, the BS establishes the preference profiles for each VUE and CUE using the channel state and local information. In the matching phase, each VUE proposes to its most-preferred CUE according to the preference profile, and the most-preferred CUE is removed from the VUE's preference list. If CUE \(m\) does not have a sufficient quota, CUE \(m\) ranks the proposed VUE \(k\) and its current matching VUEs. If VUE \(k\) is ranked higher than the current match, the least-preferred current match is deleted, and VUE \(k\) is accepted. Otherwise, it is rejected. The deleted and rejected VUEs are removed from CUE \(m\)'s preference list. If CUE \(m\) has a sufficient quota, VUE \(k\) is accepted directly.