Mobility Trace Handler Modification
The default Ns2MobilityHelper
class extrapolates the new positions of the nodes using their current velocity vectors and previous extrapolated positions. Relying only on GPS speed and heading information for the duration of the simulation causes an increasing cumulative position error between positions of nodes in the simulation and the actual positions (The actual positions could be obtained from real experiment logs). By modifying the Ns2MobilityHelper
class, both speed and position of mobile nodes are updated in the simulation. Specifically, we set the position of nodes to the GPS-reported position at the time of every location update and extrapolate the position at the time of network events based on the GPS-reported speed vector. Therefore, the simulated node positions are reset to the GPS-reported position at every GPS location update and a slight discontinuity in the nodes trajectory can occur. Although, we have not observed any adverse effect on the simulation results.