## 6 Resource Reservation Schemes: Static vs. Dynamic
### Dynamic Scheme  
In the proposed dynamic scheme, the number of predicted cells for the \(j\)-th hand-off event are chosen dynamically, through an input control threshold \(\delta\). Additionally, in this case \(C_{\alpha}\) is evaluated with the approach of [31]. Let \(h_{i}=C_{\alpha i}-1\) be the number of hand-over events of user \(i\). Let \(v_{hi}\) be an array, whose elements \(v_{hi}[k]\) (\(k=1\,\dots\,h_{i}\)) indicate the information about the \(k\)-th future hand-off of user \(i\). Each entry \(v_{hi}[k]\) can be a pointer to, for example, a list of tuples {cell_id, from, to, \(p_{cell\_id}\)} for the \(k\)-th hand-off event, with:  
1. cell_id is a cell identifier;
2. from, to \(\in\)\(S_{\text{ho}}\) are the hand-in and hand-out directions for the _cell_id_;
3. \(p_{cell\_id}\) is the probability that user will be covered by _cell_id_ after the \(k\)-th hand-off. The algorithm predicts to directions for each tuple, starting from _cell_ids_, from directions and \(p_{cell\_id}\) values. Let \(\delta\) be an input threshold: if the knowledge of the first hand-off cell is approached, then the threshold-based predictor illustrated in Figure 6 can be activated, for obtaining the complete set of cells that will be visited by the NSIS-MIP \(i\)-th user. With one of the approaches of [51, 52], the current direction \(d_{j}\in S_{ho}\) for user \(i\) is discovered and the term _first_id_ = _first_Cell_id(current_id_) can be obtained, by the function _first_Cell_id_, which evaluates the identifier of the cell that user \(i\) will visit. Th e error introduced by this approach is negligible (around 3-4%). At this point, a tuple {_first_id, \(\_d_{j}\)_, 1} can be created and appended in \(v_{hi}[1]\) (the 'from 'direction cannot be discovered because user \(i\) has started its flow in the current _first_id_ cell and \(p_{first\_id}=1\), because the probability of handing-out from _first_id_ cell during the first hand-off is 1). For sake of simplicity, let us assume for now that the elements of \(M\) are constant values. As shown earlier, each tuple in \(v_{hi}[k]\) contains the hand-in direction, the cell identifier and the probability of user \(i\) of being in the cell after the (\(k-1\))-th hand-off. Now, a threshold-based comparison is used to decide what are the cells that user \(i\) will visit with higher probability, when handing-out the cell of the \(l\)-th tuple of \(v_{hi}[k]\), \(l=1\,\dots\,v_{hi}[k]\). size(), with a well-known hand-in direction. The hand-in direction curr_hand_in_dir belongs to \(S_{ho}\) and it specifies a unique row of \(M\). The proposed idea calculates the probability of handing-out from the current cell on direction \(p\) after having handed-in from direction _curr_hand_in_dir_ when the probability of being in the previous cell before the current hand-off is \(p_{curr}\). If the obtained value is higher than \(\delta^{\prime(k)}\), then the cell that is adjacent to the current one on direction \(p\) must be considered as a possible future cell and a tuple {_adjacent_p_cell, from, \(p\), curr_prob_} is appended in \(v_{hi}[k+1]\). We provided to add a power operation to \(\delta\) in order to account for the prediction error increasing for higher values of \(k\). The function \"cell_id Cell_id (cell_id current_id, direction to)\" returns the identifier of the cell adjacent to _current_id_ cell on _to_ direction. The function \"direction from (direction to)\" translates the hand-out direction _to_ of the previous cell in the hand-in direction of the next cell. When repeating all the steps \(h_{i-1}\) times, a cleaning routine must be executed after finishing appending elements in \(v_{hi}[k]\) position, because of possible duplications of cell identifiers. The same results can be obtained if the \"append\" function avoids duplicates. This algorithm has a time complexity of \(O((C_{ei}-1)\cdot n^{2})\). The prediction result is the set of cell identifiers of the tuples for each \(v_{hi}\) list.