MOBA Lane Creeps

So I have a university assignment to do. My job is to create autonomous agents in a gaming environment. I have chosen a MOBA.
So I have the main structure of the game down (lane creeps, towers, characters etc…) and I am using a simple Finite State Machine
to control the lane creeps. My problem is that lane creeps do not consider each other when moving along my NavMesh. For example,
when a creep finds an enemy to attack, it moves in range of the enemy and begins attacking. When another creep comes to attack
this same enemy, it is blocked by its ally who is already attacking the enemy instead of moving around its ally.

I have tried the RVO avoidance and it did not seem to work out very well. I haven’t tried the other avoidance technique yet.

Any suggestions on what I can do to get creeps to attack properly?