I know this topic is old but this has been a problem for me to (in my TDS game). And i might have found the easiest solution with no solids or custom movements or anything like that:
"Enemies" on collison with "Enemies" -> "Enemies" find path to [self.X +random(-15,15), self.Y +random(-15,15)]
Works just fine for my game. They still overlap sometimes, but it looks MUCH better. Hope this helps.