Temat 9 Flashcards
Temat 9: Problem najkrótszej ścieżki w grafie
Heurystyka, czy tradycyjne algorytmy przeszukiwania grafu?
Heurystyka jest zazwyczaj bardziej wydajniejsza, jednakże musi być sprawna i dobrze napisana. Niewłaściwa heurystyka może zmniejszyć optymalność.
Kiedy najlepiej używać DFS albo BFS nad heurystyką?
Algorytmy DFS i BFS służą głównie do grafów nieskierowanych i nieważonych. Są również optymalnym rozwiązaniem w porównaniu do złej heurystyki.
Z jakich algorytmów korzysta algorytm Johnsona?
Bellmana-Forda i Dijkstry dlatego jego złożoność czasowa wynosi: O(n^2logn + kn)
Kiedy algorytm Johnsona jest lepszy od Floyd-Warshalla?
Jest bardziej efektywny dla grafów rzadkich.
Jakie mamy dwa sposoby poruszania się w przeszukiwaniu wszerz (BFS)?
- ruch w czterech kierunkach - von Neumana
- ruch w ośmiu kierunkach - Moore’a
Algorytm A*: Co oznacza gwiazdka przy A? Jaki problem rozwiązuje ten algorytm?
Co jest ważne w tym algorytmie?
Gwiazdka oznacza optymalność. Algorytm rozwiązuje problem single-pair shortest path. Najważniejsza jest heurystyka algorytmu, która oblicza koszt dotarcia do celu h(v).
Na czym polega algorytm Dijkstry i Bellmana-Forda i jaka jest ich znacząca różnica?
Na relaksacji krawędzi, z tym, że Dijkstra jest zachłanny i szuka najlepszej drogi. Dodatkowo Dijkstra działa jedynie na wagach dodatnich.