# Should we normalize velocity (ML_AGENT)

Hi community,

I want to ask about normalizing velocity for training. I generaly see, people normalize object velocity while collecting observation but I have some doubts about it.

Lets say our agent observe 2 different object velocity.

Object1 has 15 m/s total velocity. 9m/s at the x direction and 12 m/s at the y direction
Object2 has 100m/s total velocity. 60 m/s at the x direction and 80 m/s at the y direction.

Now if we take their normalized velocity, our agent will observe them as a (0.6, 0.8). Because magnitude should be 1. The thing bugging me when we normalized velocity, our agent see their velocity (0.6, 0.8) for both object however one of them going with 15m/s other is going 100m/s.
So my question, should we normalize velocity really? Because my logic says, you souldnt

Sometimes you should normalise a vector, sometimes you shouldnâ€™t. It depends on what youâ€™re trying to use it for.

In your example, if the agent is trying to determine which object is moving faster, then (like you say) it would be a bad idea to normalise the vectors.

But if, instead, the agent was simply trying to check if the objects were moving in the same direction, then youâ€™d want to normalise them.

In general, if you want to disregard its magnitude, normalise it.

1 Like