Add epsilon to fraction speed to guarantee expected behavior
Currently we check if the fractional position is larger or equal to 1. If we however have rounding errors with floats we might get 0.9999999999 instead of 1. this means that the agent has to take an extra step.
This could be resolved by adding a small enough delta to each step guaranteeing that rounding errors result in larger rather than smaller values. As long as the delta is small compared to step size this will be fine