Tak. Prawie zawsze jest to możliwe *. To obliczanie kosztu węzła staje się dynamiczne, a zatem bardziej skomplikowane w obliczaniu i śledzeniu.
Jeśli już wiesz, gdzie będą się poruszać przeszkody w przyszłości, twój A * może uwzględnić czasowość przeszkód w funkcji kosztów.
Np .: ten węzeł zostanie osiągnięty w 4 kleszczach, zajmowanych od kleszcza # 3 do kleszcza # 6, więc koszt podróży w tym węźle wynosi 6 - 4 = +2 kleszczy. To wciąż może być najlepsza ścieżka.
Należy również uwzględnić kierunek jazdy przeszkody.
Jeśli nie wiesz z góry, nie możesz zakładać żadnych przeszkód i ponownie obliczyć ścieżkę, gdy przeszkody zostaną osiągnięte, ale musisz coś zrobić z impasami i blokadami żywymi. (To samo dotyczy sytuacji, gdy możesz przewidzieć, gdzie będą przeszkody, ale samo w sobie jest rodzajem impasu / unikania blokady na żywo i może być wystarczające dla twojego celu).
Zakleszczenie występuje, gdy oboje czekają, aż drugi się poruszy i żaden się nie poruszy.
Blokada jest wtedy, gdy oba ( lub więcej <- należy to wziąć pod uwagę) poruszają się, aby uniknąć drugiego w tym samym kierunku i kończą się tam iz powrotem bez postępu.
Rozwiązywanie blokad żywych może być bardzo skomplikowane, a to zależy wyłącznie od zasad i mechaniki kolizji gry (np. Czy powinny walczyć i niszczyć przeszkodę?).
Często powraca do planowania rezerwacji węzłów / ścieżek przez ruchome obiekty (nie zapomnij anulowania, gdy zmieniają ścieżkę lub umierają), aby inne ruchome obiekty mogły planować z wyprzedzeniem.
Po uzyskaniu tych informacji możesz również zaplanować przechwytywanie.