Wenn Sie einen Algorithmus wie A * verwenden, haben Sie den größten Spielraum beim Arbeiten mit der Kostenheuristik.
In diesem speziellen Fall könnten Sie die Heuristik anpassen, um die Kosten für Bewegungen zu erhöhen, die einen Agenten in die Nähe eines anderen Agenten bringen. Das Problem besteht darin, dass wahrscheinlich beide versuchen, die obere Route einzuschlagen, und Sie könnten dazu führen, dass sie oszillieren zwischen den Pfaden hin und her, während sie sich gegenseitig schließen, abhängig vom genauen Zeitpunkt.
Eine andere Möglichkeit besteht darin, geplante Routen von Agenten zu verfolgen und die Kosten entlang der geplanten Pfade anderer Agenten nach oben anzupassen. Dies ermöglicht es den Agenten effektiv, sich in begrenztem Umfang aufeinander abzustimmen. Das Hauptproblem hierbei ist, ob alle Routen blockiert sind und die Suche nach Pfaden für den zuletzt bewegten Agenten möglicherweise weiterhin fehlschlägt.
In dem Fall, dass es nur einen Pfad gibt, schlägt die Pfadsuche entweder fehl oder sie schreiten aufeinander zu, bis sie festsitzen.
Wenn beides nicht ausreicht, müssen Sie auch bei der Berechnung Ihrer Kosten den Überblick über die Zeit behalten. Die Kosten für den zweiten Agenten sollten der Zeit entsprechen, die der erste Agent für die Klärung benötigt, zuzüglich der normalen Traversalkosten. Auf diese Weise kann Ihr Agent korrekt entscheiden, wann er warten soll, anstatt den anderen Weg einzuschlagen.
Die Abstimmung des Timings kann erheblich aufwändiger sein, sodass sich die meisten Leute damit begnügen, das Ebenenlayout und die Kosten so lange zu ändern, bis die Dinge gut genug sind.