## 3. Freestanding Position-Based Routing Protocol
### Next-Hop Selection Algorithm
#### 3.3.2 Selection Algorithm  
The FPBR protocol selects the next hop node by first predicting the actual position of each node with the LP algorithm. After prediction, vehicles are grouped in three different sets, based on theirrelative direction to the sender vehicle: vehicles traveling in opposite directions and moving away belong to group \(V_{\rm s}\); vehicles traveling in opposite directions and approaching belong to group \(V_{\rm a}\); and vehicles traveling in the same direction belong to group \(V_{\rm c}\). The final selection is made considering the most forward within adjusted radio (MFWAR) mechanism introduced in this paper. The adjustment of the radio range coverage is performed considering the radio propagation model introduced in [37] as described by Equation (1). _The Most Forward Within Adjusted Radius (MFWAR) mechanism_. Equation (1) shows that it is very important to consider the relative direction of the neighbors when the next forwarder is selected. According to Equation (1), vehicles travelling in opposite directions and approaching have a higher probability of successfully receiving a packet, because of the relative path loss decrease (_i.e._, \(\zeta\) is set to \(-1\)). When vehicles move away from each other in opposite directions, the probability of dropping a packet becomes higher because of the relative path loss increase (_i.e._, \(\zeta\) is set to \(1\)). If the vehicles are traveling in convoy, then there is neither a relative path loss increase nor a relative path loss decrease (_i.e._, \(\zeta\) is set to \(0\)). Note that this does not imply that the path loss remains unchanged when the vehicles travel in convoy, since the shadowing effects are still considered by Equation (1). Furthermore, from Equation (1) it can be inferred that considering the transmitter nominal radio coverage for the selection process may not be the best option, since the shadowing may lead to significant packet losses near the border of the nominal transmission range. Thus, in order to decrease the probability of dropping a packet, the most forward within radius (MFR) technique (see [68] for a description of MFR) was modified to include the use of three dynamic factors named \(\beta_{a}\), \(\beta_{c}\), and \(\beta_{s}\). The dynamic factors are used to scale the nominal radio coverage to a more accurate value for each set of vehicles \(V_{\rm a}\), \(V_{c}\) and \(V_{s}\) respectively. We call this new dissemination technique _Most Forward Within Adjusted Radius_ (MFWAR). In order to explain how the dynamic factors are used, assume that node \(T_{1}\) in Figure 1(a) has nominal radio range \(R_{n}\), and that \(\beta_{s}\). and \(\beta_{c}\) are the scaling factors for the \(V_{s}\) and \(V_{c}\) sets respectively. Additionally the following assumptions are made for this figure:  
* Node \(T_{1}\) has data to send beyond its nominal radio coverage. * Node \(R_{3}\) moves away from \(T_{1}\) and thus it belongs to the \(V_{s}\) set. * Nodes \(R_{1}\) and \(R_{3}\) travel in the same direction of \(T_{1}\)and belong to the \(V_{c}\) set. If freespace propagation had been considered, then \(R_{3}\)would have been selected as a relay node. This is because \(R_{3}\) is within \(T_{1}\) nominal radio coverage and \(R_{3}\) is the farthest node (see Figure 1(a)). However, \(R_{3}\) may not be the best option when considering the highway path loss model described by Equation (1), since \(T_{1}\) and \(R_{3}\) are moving in opposite directions and \(R_{3}\) is near the border. Thus, the MFWAR mechanism adjusts \(T_{1}\) radio coverage by means of \(\beta_{s}\) for vehicles belonging to set \(V_{s}\), as is the case for \(R_{3}\). Therefore, \(T_{1}\) radio range is adjusted to the \(\beta_{s}*R_{n}\) value and \(R_{3}\) is not selected because it is out of range (see Figure 1(b)). On the other hand, \(R_{1}\) and \(R_{2}\) are vehicles that belong to the \(V_{c}\) set and MFWAR adjusts the radio range for these vehicles to \(\beta_{c}*R_{n}\).