5.1. Zadania z ograniczeniami - MEiL
Transkrypt
5.1. Zadania z ograniczeniami - MEiL
POLITECHNIKA WARSZAWSKA WYDZIAŁ MECHANICZNY ENERGETYKI I LOTNICTWA MEL WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI NS 586 Dr inż. Franciszek Dul © F.A. Dul 2012 5. ROZWIĄZYWANIE PROBLEMÓW Z OGRANICZENIAMI © F.A. Dul 2012 Problemy z ograniczeniami Pokażemy, w jaki sposób agent może osiągnąć zamierzony cel jeżeli musi uwzględniać ograniczenia występujące w zadaniu. © F.A. Dul 2012 5.1. Zadania z ograniczeniami (CSP) Różnica między zadaniami poszukiwania a zadaniami z ograniczeniami (Constraint Satisfaction Problems): • W zadaniach zwykłych stan może być dowolną strukturą która umożliwia wyznaczanie następników, obliczenie funkcji kosztu, sprawdzenie osiągnięcia celu. • W zadaniach z ograniczeniami: – stan jest zbiorem zmiennych Xi przyjmujących wartości z określonych dziedzin Di, – cel zdefiniowany jest poprzez ogranicznia Ci, które muszą spełniać wartości zmiennych stanu, np. C2,: X1 ≥ X2 Rozwiązaniem zadania z ograniczeniami jest zgodny (nie naruszający ograniczeń) zbiór wartości zmiennych stanu spełniający wszystkie ograniczenia. © F.A. Dul 2012 5.1. Zadania z ograniczeniami Cechy charakterystyczne zadań z ograniczeniami: • jednolity, standardowy sposób sformułowania; • standardowe postacie funkcji następstwa i funkcji celu; • standardowe heurystyki, niezależne od charakteru konkretnego zadania. Przykłady zadań z ograniczeniami • kolorowanie map, • kompozycja parkietów, • kryptografia, • układanie planu zajęć, • planowanie transportów, • organizacja produkcji, • dyslokacja wojsk, • szeregowanie obserwacji dla teleskopu Hubble’a. © F.A. Dul 2012 5.1. Zadania z ograniczeniami Przykład - kolorowanie mapy • Zmienne: WA, NT, Q, NSW, V, SA, T • Dziedziny: Di = {R,G,B} ( = {Red,Green,Blue} ) • Ograniczenia: obszary przyległe muszą mieć różne kolory – WA ≠ NT, lub – (WA,NT) ∈ { (R,G), (R,B), (G,R), (G,B), (B,R), (B,G) } © F.A. Dul 2012 5.1. Zadania z ograniczeniami Przykład - kolorowanie mapy Rozwiązaniem jest każde kompletne i zgodne przypisanie wartości z dziedzin zmiennym stanu, np.: WA = R, NT = G, Q = R, NSW = G, V = R, SA = B, T = G … ale rozwiązaniem są również np.: WA = G, NT = B, Q = G, NSW = B, V = G, SA = R, T = B WA = B, NT = R, Q = B, NSW = R, V = B, SA = G, T = R © F.A. Dul 2012 5.1. Zadania z ograniczeniami Graf ograniczeń Zadanie binarne z ograniczeniami: każde ograniczenie jest relacją dwóch zmiennych. Graf ograniczeń: • węzły są zmiennymi, • krawędzie są ograniczeniami. Sformułowanie w postaci grafu pozwala uprościć poszukiwanie rozwiązania. © F.A. Dul 2012 5.1. Zadania z ograniczeniami Przykład - arytmetyka kryptograficzna Znaleźć cyfry, które przyporządkowane literom w sposób jednoznaczny spełnią równanie 0. 4. 3. 2. 1. Graf zadania • Zmienne: F, T, U, W, R, O, X1 , X2 , X3 , • Dziedziny: {0,1,2,3,4,5,6,7,8,9} • Ograniczenia: 0. F, T, U, W, R, O są różnymi cyframi, 1. 2. 3. 4. O + O = R + 10 · X1 , X1 + W + W = U + 10 · X2 , X2 + T + T = O + 10 · X3,, X3 = F, T ≠ 0, F ≠ 0. © F.A. Dul 2012 5.1. Zadania z ograniczeniami CSP jako standardowe zadanie poszukiwania Zadanie CSP może być zawsze sformułowane w postaci standardowej jako zadanie poszukiwania. Sformułowanie przyrostowe (identyczne dla wszystkich zadań CSP) • Stan początkowy = przypisanie puste { }; • Funkcja następnika: przypisać jakąś wartość wolnej zmiennej pod warunkiem, że nie spowoduje to naruszenia ograniczeń; • Test celu: czy aktualne przypisanie jest kompletne? • Koszt drogi: przyjmuje się stały w każdym kroku; Rozwiązanie zadania CSP uzyskuje się po określonej liczbie kroków - można więc użyć algorytmu poszukiwania w głąb. Droga wyznaczenia rozwiązania jest nieistotna. © F.A. Dul 2012 5.2. Poszukiwanie wsteczne Algorytm szukania w głąb zastosowany do zadania CSP z przypisaniem wartości jednej zmiennej nazywa się poszukiwaniem wstecznym (backtracking search). Idea: - przypisuje się wartość jednej zmiennej, - cofa się działanie, gdy następnej zmiennej nie można przypisać żadnej wartości bez naruszenia ograniczeń. Poszukiwanie wsteczne jest podstawowym algorytmem nieinformowanym dla zadań CSP. Strategie poszukiwania wstecznego: • najbardziej ograniczonej zmiennej (most constrained variable), • najmniej ograniczającej wartości (least constraining value), • sprawdzania w przód (forward checking). © F.A. Dul 2012 5.2. Poszukiwanie wsteczne Przykład - kolorowanie mapy © F.A. Dul 2012 5.2. Poszukiwanie wsteczne Przykład - kolorowanie mapy © F.A. Dul 2012 5.2. Poszukiwanie wsteczne Przykład - kolorowanie mapy © F.A. Dul 2012 5.2. Poszukiwanie wsteczne Przykład - kolorowanie mapy © F.A. Dul 2012 Podsumowanie • Poszukiwania z ograniczeniami stanowią szczególny rodzaj zadań w których: • stan jest zbiorem zmiennych którym przypisane są wartości z określonego zbioru - dziedziny, • cel zdefiniowany jest poprzez ograniczenia nałożone na wartości zmiennych; • Metoda poszukiwania wstecznego to odmiana poszukiwań w głąb stosowana w zagadnieniach CSP. • Efektywność metody poszukiwania wstecznego znacznie poprawiają uporządkowanie zmiennych i dobre heurystyki wyboru wartości. • Przy rozwiązywaniu zadań praktycznych bardzo efektywny jest algorytm minimalnych konfliktów. © F.A. Dul 2012