Sztuczna Inteligencja 2.1 Metody szukania na ślepo

Slides:



Advertisements
Podobne prezentacje
JĘZYK VHDL Geneza: komputerowa symulacja układu cyfrowego, Departament Obrony USA opis skomplikowanego systemu w postaci schematu jest nieczytelny, szybkie.
Advertisements

Wykład 5: Dyskretna Transformata Fouriera, FFT i Algorytm Goertzela
Wykład 6: Dyskretna Transformata Fouriera, FFT i Algorytm Goertzela
Uczenie ze wzmocnieniem
Zaawansowane techniki algorytmiczne
ALGORYTMY GRAFOWE.
Dynamiczne struktury danych Listy, Kolejki, Stosy
METODY ANALIZY PROGRAMÓW
Sztuczna Inteligencja Szukanie heurystyczne I
Wykład 6 Najkrótsza ścieżka w grafie z jednym źródłem
Sztuczna Inteligencja 1.2 Szukanie - sformułowanie problemu.
Algorytm Dijkstry (przykład)
SZTUCZNA INTELIGENCJA ARTIFICIAL INTELLIGENCE
Inteligencja Obliczeniowa Indukcja reguł - modele.
Katedra Informatyki Stosowanej UMK
Inteligencja Obliczeniowa Perceptrony o dużym marginesie błędu
Inteligencja Obliczeniowa Sieci o zmiennej strukturze.
Inteligencja Obliczeniowa Perceptrony
ALGORYTMY I STRUKTURY DANYCH
Sztuczna Inteligencja Szukanie heurystyczne I
Sztuczna Inteligencja Gry i programy oparte na szukaniu
Sztuczna Inteligencja 1.2 Szukanie - sformułowanie problemu.
Sztuczna Inteligencja Reprezentacja wiedzy II
Sztuczna Inteligencja Reprezentacja wiedzy II Ramy i inne Włodzisław Duch Katedra Informatyki Stosowanej UMK Google: Duch.
Ciągi de Bruijna generowanie, własności
Sortowanie Zajęcia 13.
Opracowała: Elżbieta Fedko
Turbo pascal – instrukcje warunkowe, iteracyjne,…
Szachy komputerowe. Ogólna idea silnika szachowego.
Sztuczna Inteligencja Reprezentacja wiedzy II Systemy produkcyjne Włodzisław Duch Katedra Informatyki Stosowanej UMK Google: W. Duch.
Sztuczna Inteligencja Reprezentacja wiedzy I Wstęp. Włodzisław Duch Katedra Informatyki Stosowanej UMK Google: W. Duch.
Algorytmy grafowe Reprezentacja w pamięci
Algorytmy i struktury danych
Wstęp do interpretacji algorytmów
Algorytmy.
Podstawy programowania
POJĘCIE ALGORYTMU Pojęcie algorytmu Etapy rozwiązywania zadań
Podstawy programowania II
PORZĄDEK WŚRÓD INFORMACJI KLUCZEM DO SZYBKIEGO WYSZUKIWANIA
IV OTWARTE MISTRZOSTWA OPOLA W PROGRAMOWANIU ZESPOŁOWYM
Algorytmy i struktury danych
PHP: warunki, pętle, switch, break, continue
Modelowanie populacji i przepływu opinii pomiędzy aktorami sztucznej inteligencji za pomocą sieci społecznej Wojciech Toman.
Spis treści W świecie algortmów -Budowa algorytmu
SYSTEMY EKSPERTOWE I SZTUCZNA INTELIGENCJA
Algorytmika.
Instrukcje iteracyjne
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Metody numeryczne szukanie pierwiastka metodą bisekcji
Algorytmy Genetyczne Anna Tomkowska Politechnika Koszalińska
Przeszukiwanie wszerz
Wstęp do interpretacji algorytmów
Metody sztucznej inteligencji – technologie rozmyte i neuronoweReguła propagacji wstecznej  Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów.
Pętle – instrukcje powtórzeń
SZTUCZNA INTELIGENCJA
SZTUCZNA INTELIGENCJA
Temat 3: Podstawy programowania Algorytmy – 2 z 2 _________________________________________________________________________________________________________________.
Wstęp do programowania Wykład 1
Zarządzanie projektami
Zagadnienia transportowe Katedra Ekonomiki i Funkcjonowania Przedsiębiorstw Transportowych.
Inteligencja Obliczeniowa Perceptrony o dużym marginesie błędu
Listy.
Perceptrony o dużym marginesie błędu
Efektywność algorytmów
Sztuczna Inteligencja Szukanie heurystyczne I
Perceptrony o dużym marginesie błędu
Systemy eksperckie i sztuczna inteligencja
Sztuczna Inteligencja Gry i programy oparte na szukaniu
Inteligencja Obliczeniowa Perceptrony
Sztuczna Inteligencja Szukanie heurystyczne I
Zapis prezentacji:

Sztuczna Inteligencja 2.1 Metody szukania na ślepo Włodzisław Duch Katedra Informatyki Stosowanej UMK Google: Duch

Szukanie - metoda uniwersalna Zakładamy, że problem jest zdefiniowany, tzn. jest: Baza danych: fakty, stany, możliwości, opis sytuacji. Możliwe operacje: zmieniają stan bazy danych. Potrzebna jest strategia kontrolna poszukiwania rozwiązania. Proces przeszukiwania wygodnie jest przedstawiać za pomocą drzew i grafów. Droga na grafie od sytuacji startowej do rozwiązania <=> znalezieniu sekwencji operacji prowadzących do rozwiązania <=> rozumowaniu.

Procedury szukania Szukanie na ślepo - nie mamy żadnej informacji. Szukanie heurystycze - potrafimy ocenić postępy. Na ślepo: Monte Carlo, czyli procedura Brytyjskiego Muzeum. Dla większych problemów jeśli istnieje wiele rozwiązań może coś znaleźć ... i ślepej kurze ... Szukanie w głąb. Szukanie w szerz, sprawdzając wszystkie możliwości. Ilustracje: Program PathDemo

W głąb, DS 0. uporządkuj operatory { O1 O2 ... ON-1 ON } 1. lista początkowa L(1) = Sw (stan wyjściowy) 2. wygeneruj stan L(k) = Oj L(k-1) dla kolejnego j 3. if (nie ma już nowych operatorów) k=k-1; if (k=0) brak rozwiązania; else przejdź do 2 4. elseif (L(k) = Sf ) zakończ; 5. else k=k+1; przejdź do 2   Złożoność: b - średnia liczba możliwych rozgałęzień, d - średnia głębokość rozwiązań czas ~ bd pamięć ~ bd.

Modyfikacja DS Zalety: wystarczy niewielka pamięć O(d) dla problemów, które mają wiele rozwiązań może być szybkie Wady: nieskończona głębokość, możliwe pętle w grafie, nie gwarantuje prostoty znalezionego rozwiązania. Modyfikacja metody DF: ograniczaj głębokość szukania do poziomu l. Złożoność: czas bl, pamięć bl. Wada: jeśli l za małe nie znajdzie rozwiązania.

Wszerz, BS 1. lista początkowa L(1) = Sw (stan wyjściowy) 2. wygeneruj stany Skj = Ok L(j) dla wszystkich j 3. if Skj=Sf zakończ; 4. else skopiuj Skj -> L( ) i przejdź do 2 Zalety: znajduje najkrótszą listę operatorów jesli szuka do końca. Wady: duża złożoność, przy liczbie operatorów b i kroków d czas ~ O(bd), pamieć ~ O(bd) np: dla 8-ki trzeba pamiętać około 320 = 3.5·109 stanów

IDDF, iteracyjne pogłębianie. IDDF lub IDS, iteracyjnie pogłębiane szukanie w głąb. Próbuj szukać w głąb stopniowo zwiększając głębokość szukania - tani sposób na realizację szukania w głąb. Zalety: Zupełność – zawsze znajduje rozwiązanie. Rozwiązanie jest optymalne (jeśli zwiększamy głębokość o 1) Zużywa tylko bd. elementów pamięci (szukanie w głąb). Wady: niewielkie zwiększenie kosztów na powtarzanie – ale ostatnie szukanie jest bardziej kosztowne niż wszystkie poprzednie, więc złożoność ~ O(bd).

BDS, szukanie dwukierunkowe. Szukaj wszerz startując od stanu wyjściowego i od stanu końcowego. Złożoność: czas ~ O(bd/2), pamięć ~ O(bd/2)

PathDemo W programie używane są funkcje: - Random Bounce. Po dojściu do przeszkody wykonaj jeden krok w przypadkowym kierunku i kontynuuj swój algorytm. - Simple Trace. Obejdź przeszkodę aż będziesz mógł kontynuować w tym samym kierunku. - Robust Trace. Oblicz kierunek pomiędzy blokującym klockiem a klockiem końcowym i obchodź przeszkody aż dojdziesz do kwadratu leżącego w tym kierunku.

Literatura J. Chromiec, E. Strzemieczna, Sztuczna inteligencja. Podstawowe metody konstrukcji i analizy systemów eksperckich (Akademicka Oficyna Wydawnicza, Warszawa 1994) E. Chwiałkowska, Sztuczna Inteligencja w Systemach Eksperckich (MIKOM 1991) Z. Hippe, Zastosowanie metod sztucznej inteligencji w chemii (PWN, Warszawa 1993) J. Mulawka, Sztuczna Inteligencja (1995) L. Bolc, J. Cytowski, Metody przeszukiwania heurystycznego. PWN 1991 Jerzy Cytowski, Metody i algorytmy sztucznej inteligencji w cyfrowym przetwarzaniu sygnałów. Akademicka Oficyna Wydawnicza PLJ, Warszawa 1999