Post ten stanowi fragment serii na temat przeszukiwania przestrzeni stanów.
Zacznijmy od rozwiązania zadania z poprzedniego posta. Poprawna sekwencja portów to:
Gdańsk
Szczecin
Kołobrzeg
Szczecin
Gdańsk
Gdańsk
Kołobrzeg
Kołobrzeg
Szczecin
Gdańsk
Szczecin
Kołobrzeg
Szczecin
Gdańsk
Gdańsk
Kołobrzeg
Kołobrzeg
Szczecin
Gdańsk
Zapewne można do niej dojść stosując algorytm na chłopski rozum czyli:
PPS zakłada, że problem reprezentujemy przy pomocy:
Zacznijmy od rozwiązania zadania z poprzedniego posta. Poprawna sekwencja portów to:
Gdańsk
Szczecin
Kołobrzeg
Szczecin
Gdańsk
Gdańsk
Kołobrzeg
Kołobrzeg
Szczecin
Gdańsk
Szczecin
Kołobrzeg
Szczecin
Gdańsk
Gdańsk
Kołobrzeg
Kołobrzeg
Szczecin
Gdańsk
Zapewne można do niej dojść stosując algorytm na chłopski rozum czyli:
- Wiemy, że ostatnim portem był Szczecin.
- Patrzymy więc na ostatnie wpisy w dziennikach z Gdańska i Kołobrzegu.
- Okazuje się, że do Szczecina statek przypłynął z Gdańska.
- Wykreślamy ten wpis.
- Patrzymy na ostatnie wpisy w dziennikach z Szczecina i Kołobrzegu.
- Okazuje się, że do Gdańska statek przypłynął z Kołobrzegu.
- Wykreślamy ten wpis.
- Patrzymy na ostatnie wpisy w dziennikach z Szczecina i Gdańska.
- Okazuje się, że do Kołobrzegu statek mógł przypłynąć Szczecina lub Gdańska i musimy rozważyć oba scenariusze.
- ...
PPS zakłada, że problem reprezentujemy przy pomocy:
- Definicji stanu początkowego.
- Formuły, która powie nam jakie stany można odwiedzić, z bieżącego stanu. Albo inaczej zbioru akcji, które powodują zmianę stanu.
- Warunku stopu, który powie nam czy znaleźliśmy rozwiązanie.
- Opcjonalnie funkcji kosztu, która pozwala nam wybrać lepsze, bardziej optymalne rozwiązanie.
- Definicji stanu początkowego - port końcowy + stan dzienników.
- Formuła/Akcje - Znalezienie listy portów, z których statek mógł przypłynąć do bieżącego portu. Wybranie portu oznacza dodanie go do listy już odwiedzonych portów oraz wykreślenie odpowiedniego wpisu z dziennika.
- Warunku stopu - Wszystkie dzienniki są puste.
- Funkcja kosztu - brak.