# An Active Path-Associated Cache Scheme for Mobile Scenes
## 3 The Proposed Approach
### Neighbor Selection Mechanism
#### 3.1.1 Acquisition of Transition Probability  
Figure 2 shows the neighbor graph with transition probability. How can we obtain transition probability more cheaply? Inspired by the recommendation system [31], we can regard it as a data-driven problem. In our network, we have implemented the neighbor table function on the AP to store the following content, including (1) the BSSID of the neighbor AP (BSSID means the AP's MAC address); (2) the total number of times the user moves from the source AP to the destination AP; (3) the transition probability. The above content corresponds to the second, third, and fourth column of Table 1. As shown in Table 1, usually, the number of nodes of an AP neighbor is 3-4 [32; 33], so the storage cost is extremely low.  
When the network is initialized, this is similar to the cold start problem in the recommendation system [34; 35]. Since our scene has very few features, it is different from the recommendation system of high-dimensional features that can use deep learning to train the model [36]. Our scenario can only adjust the transition probability matrix from the perspective of user behavior and actual experience. When the network is first deployed, the network administrator can set an initial value for the probability transition matrix (usually based on historical information of the network). If there is no historical information, random initialization or uniform can be used. Suppose the number of neighbors of AP  
\begin{table}
\begin{tabular}{c c c c} \hline \hline
**Neighbor AP** & **BSSID** & **Number of Moves from \(AP_{i}\)** & **Transition Probability** \\ \hline \(AP_{j}\) & a8:82:38:3f:40:4B & 12,000 & 0.80 \\ \hline \(AP_{k}\) & a8:82:38:3f:40:4E & 2500 & 0.17 \\ \hline \(AP_{q}\) & a8:82:38:3f:40:4A & 500 & 0.03 \\ \hline \hline \end{tabular}
\end{table}
Table 1: An example of \(AP_{i}\)’s neighbor transfer table.  
Figure 2: \(AP_{i}\) transition probability graph.  
is 3, we rely on previous historical data to set the initial probability matrix of \(AP_{i}\) to \(AP_{j}\), \(AP_{k}\), and \(AP_{q}\) (\(j\), \(k\), \(q\in\) NS, NS is a collection of N neighbors) to be [0.80, 0.17, 0.03]. Each time the User Equipment (UE) completes the movement and re-accesses the new AP, the new AP will reply to the source AP with an ACK carrying the BSSID (similar to the X2 protocol with 5G base stations [37]). After the source AP receives the ACK, it will increase the number of jumps by 1. Considering the large-scale mobile scenario, the AP will not update the transition probability in real-time but will use the time slice algorithm for a centralized update [38]. The calculation formula of the transition probability is as follows:  
\[P_{ij}=\frac{Count_{ij}}{\sum^{k\in all\ neighbors\ Count_{ik}}} \tag{1}\]  
\(Count_{ij}\) represents the number of jumps from \(AP_{i}\) to \(AP_{j}\). The denominator of Expression (1) represents the sum of the number of transfers from the source AP to all neighbor APs. After a time slice update, a stable transition probability \(P_{ij}\) can be obtained. Based on the calculation of Formula (1), when the UE moves, the AP can select the neighbor AP that meets the following conditions to cache the content:  
\[P_{ij}\geq\delta \tag{2}\]  
where \(\delta\) is a predefined value. In the next section, we designed a method to calculate \(\delta\).