• Nie Znaleziono Wyników

Podstawy Sztucznej Inteligencji (PSZT)

N/A
N/A
Protected

Academic year: 2021

Share "Podstawy Sztucznej Inteligencji (PSZT)"

Copied!
25
0
0

Pełen tekst

(1)

Przeszukiwanie

Podstawy Sztucznej Inteligencji (PSZT)

Paweł Wawrzyński

(2)

Motywacja

• Rozwiązywanie problemów:

– poszukiwanie sekwencji operacji prowadzącej do celu

– poszukiwanie układu stanowiącego rozwiązanie

• Planowanie:

– optymalizacja sekwencji działań

(3)

Dzisiaj

• Problemy w których trzeba znaleźć

sekwencję operacji prowadzących do celu

– jakąkolwiek sekwencję – sekwencję najkrótszą

– sekwencję najmniej kosztowną

(4)

Model

(5)

Problemy przykładowe

• Układanie kostki

• 3 misjonarzy + 3 ludożerców

przeprawiających się przez rzekę 2-

osobową łódką. W żadnej chwili na brzegu nie może być więcej ludożerców niż

misjonarzy

(6)

Problemy przykładowe

• Problem n hetmanów: jak ustawić n

hetmanów na szachownicy n/n aby żaden nie był atakowany przez żadnego innego

• Dwa pojemniki mają 5 oraz 7 litrów

pojemności. Jak, zapełniając je do pełna, opróżniając i przelewając wodę miedzy nimi odmierzyć 4 litry?

• Problem komiwojażera

(7)

Strategie nieinformowane

Przeszukiwanie wszerz

0. Utwórz listę A stanów otwartych, pustą listę Z stanów zbadanych, wpisz s0 do A 1. Rozwiń pierwszy stan z A w sekwencję

stanów; przesuń ten stan do Z; stany z sekwencji nieobecne w A∪Z wpisz na koniec A

2. Jeśli w A pojawił się stan terminalny -

zakończ, w przeciwnym razie skocz do 1.

(8)

Strategie nieinformowane

Przeszukiwanie w głąb

0. Utwórz listę A stanów otwartych, wpisz s0 do A

1. Rozwiń pierwszy stan z A w sekwencję stanów; stany z sekwencji nieobecne w A wpisz na początek A

2. Jeśli w A pojawił się stan terminalny -

zakończ, w przeciwnym razie skocz do 1.

(9)

Strategie nieinformowane

Wszerz vs. w głąb - własności

- „wszerz” znajduje najkrótsze rozwiązanie zużywając najmniej czasu ale potrzebuje dużo pamięci

- „w głąb” potrzebuje mało pamięci ale nie znajduje najlepszego rozwiązania jako pierwszego

(10)

Strategie nieinformowane

Przeszukiwanie w głąb

z iteracyjnym pogłębianiem

0. Przypisz m:=1

1. Przeszukaj w głąb do głębokości m 2. Przypisz m:=m+1

3. Jeśli został znaleziony stan terminalny, zwróć rozwiązanie; w przeciwnym razie wróć do Linii 1.

(11)

Strategie nieinformowane

Przeszukiwanie w głąb

z iteracyjnym pogłębianiem

• Nie potrzebuje tyle pamięci co przeszukiwanie wszerz

• Im częściej zdarzają się stany, do których można dotrzeć różnymi drogami, tym

większą przewagę ma przeszukiwanie wszerz

(12)

Strategie nieinformowane

Przeszukiwanie skupione

0. L0 = {s0}, m=0

1. Stwórz Pm+1 jako zbiór wszystkich stanów wygenerowanych z Lm

2. m:=m+1

3. Wybierz Lm jako k najlepiej zapowiadających się stanów z Pm (nieobecnych w Li, i<m)

4. Jeśli nie znalazł się stan terminalny, skocz do

(13)

Strategie nieinformowane

Przeszukiwanie skupione

Działa kiedy albo (i) mamy heurystykę pozwalającą trafnie wybierać Lm albo

uruchamiamy procedurę dla wykładniczo rosnącej szerokości wiązki k

(14)

Strategie nieinformowane

Przeszukiwanie dwukierunkowe

- Przeszukujemy wszerz od strony s0 oraz, poprzez operatory odwrotne, od strony T - Szczęśliwy koniec: pojawienie się stanu

który jest w L0 procedury działającej w drugą stronę.

Cechy: działa bardzo dobrze w przypadkach w których T jest znane i małe, w innych

(15)

Strategie nieinformowane

Porównanie metod

Złożoność w wersji pesymistycznej b - współczynnik rozgałęzienia

d - głębokość znalezionego rozwiązania m - max. głębokość

poszukiwań

k - szerokość wiązki

(16)

Strategie minimalizujące koszt

Strategia zachłanna

0. i=0

1. Rozwiń stan si w stany si,1, si,2, itd.

2. Wybierz jako si+1 stan minimalizujący c(si, si,j).

3. i:=i+1

4. Jeśli si jest terminalny - zakończ, w przeciwnym razie przejdź do 1.

(17)

Strategie minimalizujące koszt

Pierwszy najtańszy

0. i=0, G0={s0}

1. Rozwiń z si zbiór stanów Pi 2. Gi+1=Gi ∪Pi -{si}

3. i:=i+1

4. Wybierz si jako najtańszy stan z Gi

5. Jeśli si jest terminalny - zakończ, w p.p. idź do Punktu 1.

(18)

Strategie minimalizujące koszt

Przeszukiwanie skupione

0. L0 = {s0}, m=0, przyjmij początkowe k

1. Stwórz Pm+1 jako zbiór wszystkich stanów wygenerowanych z Lm

2. m:=m+1

3. Wybierz Lm jako k najlepszych (w sensie sumy kosztów) stanów z Pm

4. Jeśli znalazł się stan terminalny to zapamiętaj go, usuń z Lm i zmniejsz k o 1

(19)

Strategie minimalizujące koszt

Porównanie metod

Przykład: poszukiwanie najkrótszej drogi z A do G

(20)

Strategie minimalizujące koszt

Porównanie metod

Pierwszy najtańszy - znajduje najlepsze rozwiązanie ale jest najbardziej

zasobożerny

Strategia zachłanna - najszybsza ale dająca słabe rozwiązania

Strategia skupiona - przez parametr k można ją płynnie dostosować do okoliczności

(21)

Strategie heurystyczne

Pierwszy najlepszy

h(s) - oszacowanie kosztu od stanu s do końca 0. i=0

1. Rozwiń stan si w stany si,1, si,2, itd.

2. Wybierz jako si+1 stan minimalizujący c(si, si,j)+h(si,j).

3. i:=i+1

4. Jeśli s jest terminalny - zakończ,

(22)

Strategie heurystyczne

A*

h(s) - dolne ograniczenie kosztu od stanu s do końca 0. i=0, G0={s0}

1. Rozwiń z si zbiór stanów Pi 2. Gi+1=Gi Pi -{si}

3. i:=i+1

4. Wybierz si jako stan z Gi minimalizujący f(s) = C(s) + h(s).

5. Jeśli s jest terminalny - zakończ, w p.p. idź do Punktu 1.

(23)

Strategie heurystyczne

A*

Przykład: poszukiwanie najkrótszej drogi z A do G

(24)

Strategie heurystyczne

IDA* (Iterative Deepening A*)

h(s) - dolne ograniczenie kosztu od stanu s do końca f(s) = c(s) + h(s).

0. Zainicjuj fmax

1. Dokonaj przeszukania wgłąb bez rozwijania stanów dla których f(s)>fmax

2. Jeśli znalazł się stan terminalny - zwróć go jako rozwiązanie

3. Powiększ f i idź do Linii 1.

(25)

Strategie heurystyczne

Porównanie i rekomendacje

• Pierwszy najlepszy <= optymalność nie jest krytyczna a heurystyka oceniająca jest

dobra

• A* <= optymalność jest istotna a wymagania pamięciowe nie są ostre

• IDA* <= przestrzeń stanów nie zmieści się w pamięci a heurystyka oceniająca jest

Cytaty

Powiązane dokumenty

• Warto aby zapis był intuicyjny; warto unikać predykatów

Panowie Abacki, Babacki i Cabacki uprawiają różne zawody, jeden z nich to architekt a pozostali to. informatyk

• Formuła jest spełniona dla danej interpretacji i wartościowania, gdy jej interpretacją jest prawda.. • Jest prawdziwa dla danej interpretacji, gdy jest spełniona dla

• Ogólnie: człowiek umie podejmować decyzje posługując się ograniczoną wiedzą wyrażoną przy użyciu nieprecyzyjnych pojęć. Tego samego chcemy

Kraj Nano, wróg Ameryki, posiada rakiety, które sprzedał mu pułkownik West, będący Amerykaninem. Udowodnić wszelkimi sposobami, że pułkownik West

Jeśli nie jest spełniony warunek stopu, wróć do punktu 2, w przeciwnym razie zwróć najlepszego osobnika z P... Co m-ty krok

• Osobnik czyli fenotyp, kodowany przez pewien projekt - genotyp. • Przedmiotem krzyżowania i mutacji są

wartości równej tej, która jest przypisana do bieżącego stanu.