Where can I find info about making custom AI movement?

I’d like to make an AI that uses the built in navigation classes, but I want to control the interface between what the navigation is telling it to do, and how the pawn actually moves.

For my player controlled character, I have intercepted the keyboard and mouse input, then I do an interpolation each tick before manually sending the values to “set control rotation” and “add movement input”. It works well for the player, but the AI doesnt use the “input” events, so it just ignores my interpolation and moves normally instead. I’m sure the method I’m using is also not the most efficient.

Is there a web page that shows a hierarchy of the classes involved in an ai pawn? I’d like an explanation of the following classes and how they interact in the backend of the engine:

Actor, Pawn, Character, Character Movement, Ai Controller, Path Following Component, Actions Component.

Ultimately I think my goal is to have more control over the Character Movement Component, so that I can limit linear and rotational acceleration manually.