Zaktualizuj 'route-planning.md'

This commit is contained in:
Aleksandra Jonas 2020-04-28 21:13:38 +00:00
parent ab046705c8
commit ce9956ee17

View File

@ -11,7 +11,7 @@
___ ___
Drugim zadaniem dotyczącym projektu jest zastosowanie strategii przeszukiwania przestrzeni stanów do problemu planowania ruchu agenta na kracie. Drugim zadaniem dotyczącym projektu jest zastosowanie strategii przeszukiwania przestrzeni stanów do problemu planowania ruchu agenta na kracie.
___
## Heurystyka ## Heurystyka
- założenie — odległość pomiędzy sąsiadującymi polami wynosi 2, tyle samo co koszt wjazdu na puste pole - założenie — odległość pomiędzy sąsiadującymi polami wynosi 2, tyle samo co koszt wjazdu na puste pole
- s — pole, na którym jesteśmy - s — pole, na którym jesteśmy
@ -31,7 +31,7 @@ def hscore(self, s, f):
``` ```
Wpierw obliczamy wysokość trójkąta, jaki tworzą obecne i końcowe pole, w celu wyznaczenia przeciwprostokątnej — odległość między s i f. Wpierw obliczamy wysokość trójkąta, jaki tworzą obecne i końcowe pole, w celu wyznaczenia przeciwprostokątnej — odległość między s i f.
___
## Funkcja następnika ## Funkcja następnika
Tworzymy listę, do której będziemy kolejno generować sąsiadów dla danego x. Tworzymy listę, do której będziemy kolejno generować sąsiadów dla danego x.
@ -53,7 +53,7 @@ def neighbours(self):
for x in [6, 7, 8, 11, 12, 13, 16, 17, 18]: for x in [6, 7, 8, 11, 12, 13, 16, 17, 18]:
self.neighbours[x] = [x - 5, x - 1, x + 1, x + 5] self.neighbours[x] = [x - 5, x - 1, x + 1, x + 5]
``` ```
___
## Główna pętla strategii przeszukiwania ## Główna pętla strategii przeszukiwania
Zaczynamy od znalezienia w open_set pola o najniższym f. Zaczynamy od znalezienia w open_set pola o najniższym f.
``` ```
@ -103,7 +103,7 @@ Wyliczamy g i f — przewidywany dystans od startu do celu, dla y.
self.g_score[y] = tentative_g_score self.g_score[y] = tentative_g_score
self.f_score[y] = self.g_score[y] + self.hscore(y, koniec) self.f_score[y] = self.g_score[y] + self.hscore(y, koniec)
``` ```
___
## Tworzenie ścieżki ## Tworzenie ścieżki
Przechodzimy po tablicy poprzedników, aż dojdziemy do początku — pola, które nie ma poprzednika. Przechodzimy po tablicy poprzedników, aż dojdziemy do początku — pola, które nie ma poprzednika.
``` ```
@ -115,7 +115,7 @@ def reconstruct_path(self, came_from, current):
return total_path return total_path
``` ```
___
## Koszt podróży na pola uprawne ## Koszt podróży na pola uprawne