• Nie Znaleziono Wyników

Zachłanny algorytm planowania w "świecie klocków"

N/A
N/A
Protected

Academic year: 2022

Share "Zachłanny algorytm planowania w "świecie klocków""

Copied!
7
0
0

Pełen tekst

(1)

Seria: A U TO M A TY K A z. 125 N r kol. 1391

Adam G A ŁU SZKA Politechnika Śląska

ZA C H Ł A N N Y A LG O RY T M PLANOW ANIA W „ŚW IECIE K L O C K Ó W ”

Streszczenie. Niniejszy artykuł analizuje zadania ze „świata klocków ” , w których sytuację docelow ą stanowi opis wielu w ież klocków. W ogólnym przypadku generacja optym alnego planu rozwiązującego takie zadanie jest problemem N P złożonym. G raf ograniczeń kolejnościowych redukuje przestrzeń stanów zadania. Artykuł pokazuje, jak taki g ra f m ożna zbudować. G raf ten umożliwia zaimplementowanie algorytmu zachłannego, który generuje rozwiązanie. Algorytm ten jest wielomianowo złożony w czasie. O m ów ione zostały także warunki konieczne i w ystarczające optymalności algorytm u zachłannego.

G R EE D Y A L G O R IT H M IN BLO C K W ORLD

Sum m ary. In this paper block world instance w here the goal state is a com plete description o f a set o f stacks is presented. In general to generate an optimal plan for such problem is N P- hard. Precedence constraints graph reduces block w orld states space. It is shown how this graph can be built. N ow it is possible to implement greedy algorithm w hich generates solution. This algorithm is polynomial-time complete. N ecessary and sufficient conditions o f greedy algorithm optimality are also discussed.

1. W stęp

Problem y planowania należą do najważniejszych i najczęściej rozpatrywanych problem ów sztucznej inteligencji. Klasyczny problem planowania zadań robota polega na przekształceniu bieżącego stanu świata do pożądanego, docelow ego stanu świata. Jedną z pierwszych reprezentacji problemów planowania (rok 1960) byl tzw. system STR IPS [4], który do dnia dzisiejszego wydaje się być najbardziej popularny [7], Istnieje wiele różnych m etod służących do rozwiązywania problemów planowania (3, 5, 7, 8, 9], Problem złożoności obliczeniowej tych algorytmów jest także często poddawany dyskusji [3, 8, 9], Zwykle algorytm y rozwiązujące problemy planowania są NP złożone.

A rtykuł ten prezentuje zastosowanie algorytmu zachłannego [2] do rozwiązania klasycznego problem u planowania zadań robota. Algorytmy zachłanne często znajdują zastosow anie w teorii grafów do optymalnego przeszukiwania ścieżek w grafie [2], np. do rozw iązania problemu minimalnego drzewa rozpinającego. Prezentow any algorytm jest

(2)

262 A. Gałuszka

wielom ianowo ziożony. Artykuł wyjaśnia także, dlaczego strategia zachłanna redukuje złożoność obliczeniow ą zadania.

2. R eprezentacja „świata klocków” w system ie STRIPS

W przypadku ogólnym, zadanie ze „świata klocków” je st reprezentow ane przez trzy listy < 9 ,E ,Q > [4]:

B zbiór o peratorów (9);

■ zbiór predykatów opisujących początkowy stan świata w zadaniu (£);

■ zbiór predykatów opisujących docelowy stan świata w zadaniu (12).

Predykaty opisujące stan początkow y i docelowy powinny opisywać jedną, fizycznie m ożliw ą konfigurację klocków względem siebie. Ponadto opis stanu początkow ego powinien być kompletny, tzn. powinien zawierać każdy prawdziwy predykat wynikający z początkow ego ułożenia klocków.

Rezultatem pracy algorytmu jest zbiór operatorów przekształcających stan początkow y w stan docelow y św iata z zadania. Optymalnym rezultatem jest osiągnięcie stanu docelow ego w minimalnej liczbie kroków, tzn. przy użyciu minimalnej liczby operatorów . O peratory w systemie STRIPS składają się z trzech podlist: listy warunków stosowalności (precondition list), listy skreśleń (delete Ust) oraz listy dopisków (add list). Lista w arunków stosowalności je st zbiorem predykatów , które muszą być prawdziwe w opisie bieżącego stanu świata, aby móc zastosow ać dany operator. Lista skreśleń jest zbiorem predykatów, które przestają być praw dziw e po zastosow aniu danego operatora, natomiast lista dopisków to zbiór predykatów , które stają się praw dziw e po zastosowaniu danego operatora. Innymi słowy można powiedzieć, że ostatnie dwie listy opisują efekt zastosowania operatora do bieżącego stanu św iata w zadaniu.

Załóżm y, że istnieją cztery operatory, które pozwalają przekształcać stan św iata w zadaniu:

1) pickup(x) - oznacza podniesienie klocka X ze stołu;

Lista warunków stosowalności: ONTABLE(X), CLEAR(X), H A N D EM PTY Lista skreśleń: ONTABLE(X), CLEAR(X), HA NDEM PTY

Lista dopisków: H O LDIN G(X)

2) p utdow n (x) - oznacza położenie klocka X na stół;

Lista warunków stosowalności: HOLDING(X) Lista skreśleń: H O LD IN G(X )

Lista dopisków: O NTABLE(X), CLEAR(X), HANDEM PTY 3) stack(x,y) - oznacza położenie klocka X na klocku Y;

Lista warunków stosowalności: HOLDING(X), CLEAR(Y) Lista skreśleń: H O LD IN G(X ), CLEAR(Y)

Lista dopisków: H A NDEM PTY , ON(X,Y), CLEAR(X) 4) u nstack(x,y) - oznacza ściągnięcie klocka X z klocka Y;

(3)

Lista warunków stosowalności: HANDEM PTY, CLEAR(X), ON(X,Y ) Lista skreśleń: HANDEM PTY, CLEAR(X), ON(X,Y)

Lista dopisków: H OLDING(X), CLEAR(Y)

Przypadek ogólny zadania ze „świata klocków” , w którym celem je st ułożenie zbioru wież, przedstaw ia rysunek 1. Stan początkowy zadania może być dow olną kombinacją wszystkich klocków występujących w opisie sytuacji docelowej,

Xt„j(

X u X 2.2 Xt2

X,., X 2., Xk.,

Rys. 1. Zadanie ze „świata klocków” - stan docelowy Fig. 1. General błock world instance - goal State

■ k je st liczbą wież;

■ mi dla i = 1, 2 ... k jest liczbą klocków w i-tej wieży;

k

^ m t = n jest liczby wszystkich klocków w zadaniu.

i = l

Ł atw o m ożna sobie wyobrazić, że g ra f przestrzeni stanów zadania, który opisuje w szystkie możliwe stany zadania pomiędzy stanami początkowym i docelowym, je st bardzo skomplikowany. Praca [3] pokazuje, że problem generacji optymalnego planu przez przeszukiw anie grafu przestrzeni stanów zadania może być zredukow any do N P złożonego problem u 3-w ym iarow ego dopasowania [1] poprzez transformację wielomianową.

3. G raf ograniczeń kolejnościowych

B ezpośrednio z charakterystycznej formy sytuacji docelowej zadania z rysunku 1 wynika g ra f ograniczeń kolejnościowych przedstawiony na rysunku 2. Pokazuje on, które z podceli m uszą być wykonane przed innymi, aby osiągnąć pożądany stan docelowy. G ra f ten ponadto musi zaw ierać predykaty ontable(X). Brak rozszerzenia opisu sytuacji docelowej o predykaty ontable(X ) powoduje, że stan docelowy zadania staje się nieszeregowalny [5], M oże to uniemożliwić uszeregowanie podceli w sposób prowadzący do rozw iązania zadania.

Sytuacja taka znana jest jako anomalia Sussmana. [5, 6, 10],

(4)

264 A. Gałuszka

o n l a b l e ( X u ) o n t a b l c ( X2j ) o n t a b l c ( X k j )

J J J

o n ( X i,2 , X | , i ) o n ( X 2,2, X2ii) on(Xk,2, XtJ)

^k.mk-1)

Rys.2. G raf ograniczeń kolejnościowych Fig.2. Precedence constraints graph

Należy zauw ażyć [6], że jakakolwiek kolejność realizacji podcelów, która spełnia warunki narzucone przez g ra f ograniczeń kolejnościowych, prowadzi do generacji operatorów rozw iązujących zadanie. Aby rozwiązać zadanie optymalnie, tzn. w minimalnej liczbie kroków, należy jednak w ybrać określoną kolejność realizacji podcelów. Kolejność ta m oże być generow ana za pom ocą strategii zachłannej.

4. A lgorytm zachłanny

Algorytm zachłanny podejmuje decyzje o wyborze kolejnego podcelu do realizacji w edług następującego schematu:

■ istnieje k różnych podcelów, które można wybrać do realizacji w każdym kroku (k jest liczbą wież); wynika to bezpośrednio z grafu ograniczeń kolejnościowych;

■ spośród nich w ybierz ten podcel, do którego osiągnięcia potrzeba najmniejszej liczby operatorów ;

■ jeśli liczba operatorów potrzebnych do osiągnięcia pojedynczego podcelu je st taka sam a dla kilku podcelów , wybierz pierwszy z nich.

Liczba operatorów potrzebna do osiągnięcia pojedynczego podcelu (L) m oże być łatw o obliczona z następującej formuły:

■ jeśli w ybrany podcel ma postać ontable(X), wtedy:

L = (E wszystkich klocków na klocku X w opisie stanu bieżącego * 2) + 2

■ jeśli w ybrany podcel ma postać on(X, Y), wtedy:

L = (E wszystkich klocków na klocku X w opisie stanu bieżącego * 2) + (E wszystkich klocków na klocku Y w opisie stanu bieżącego * 2) + 2

■ jeśli w ybrany podcel jest ju ż spełniony w opisie stanu docelowego, w tedy L = 0.

(5)

5. Z łożoność algorytm u zachłannego

Przyjmując, że n jest liczbą wszystkich klocków w zadaniu, zawsze istnieje n podcelów do uszeregow ania (patrz g raf ograniczeń kolejnościowych). Łatw o można zauważyć, że m aksymalna liczba decyzji o wyborze kolejnego podcelu do realizacji jest rów na n-1. Ponadto, w celu ustalenia liczby L, algorytm musi w każdym kroku zliczyć wszystkie klocki występujące w zadaniu. Przyjmując, że k jest liczbą wież występujących w stanie docelowym, w każdym kroku istnieje k podceli do wyboru. Sumując, maksymalna liczba operacji do wykonania przez algorytm zachłanny je st równa:

N = k * n * (n-1)

O statecznie, poniew aż k < n, maksymalny czas pracy algorytmu zachłannego T m„ wynosi:

Tm« = 0 ( n 3)

W ynika z tego, że algorytm zachłanny w „świecie klocków ” jest wielomianowo złożony z czasie.

6. D yskusja - optym alność algorytm u zachłannego w „świecie klocków ”

Algorytm y zachłanne generują rozwiązania optymalne dla specjalnej klasy problem ów.

Problem y te charakteryzują się w łaściw ością zwaną właściwością w yboru zachłannego [2]:

globalne optym alne rozwiązanie problemu jest funkcją lokalnych optymalnych rozwiązań.

W łaściw ość ta w zasadniczy sposób odróżnia strategię zachłanną od program ow ania dynam icznego, w którym decyzje są także podejmowane w każdym kroku, natom iast właściwy wybór zależy rów nież od rozwiązań podproblemów. Wybory podejm ow ane w algorytmie zachłannym m ogą zależeć od dotychczasowych decyzji, lecz nie m ogą być uzależnione od przyszłych wyborów .

N ie istnieje ogólna m etoda służąca do wykazywania optymalności strategii zachłannych [2]. W niektórych problemach można posłużyć się indukcją m atem atyczną w innych pom ocna wydaje się teoria matroidów.

Przyjmijmy, że zadanie ze „świata klocków” reprezentow ane jest przez nieskierowany g ra f G = (V, E), gdzie V jest zbiorem wierzchołków, natomiast E - zbiorem krawędzi. Każdy możliwy stan świata wynikający z grafu ograniczeń kolejnościowych je st reprezentow any przez w ierzchołek, natomiast zbiory operatorów pomiędzy stanami są reprezentow ane przez krawędzie.

(6)

266 A. Gałuszka

Opierając się na takim grafie można zbudować tzw. matroid grafowy Mg = ( Sg, 4>g) w edług następujących reguł:

■ SG = E (zbiór krawędzi);

■ jeśli A je st podzbiorem E, w tedy A e f c wtedy i tylko wtedy, jeśli A je st acykliczny.

Istnieją również twierdzenia [2], które można by wykorzystać przy wykazywaniu popraw ności algorytm u zachłannego w „świecie klocków":

Tw ierdzenie 1: Jeśli G jest grafem nieskierowanym, w tedy M c = ( Sg, <1>g) jest matroidem.

Tw ierdzenie 2. M atroidy posiadają właściwość wyboru zachłannego.

W arunkiem koniecznym optymalności algorytmu zachłannego jest, aby g ra f stanów

„świata klocków ” był grafem nieskierowanym. W arunek ten jest spetniony/ poniew aż po przejściu do pew nego stanu „świata kocków ” w zadaniu zawsze można pow rócić do stanu poprzedniego. Pokazując następnie, że podzbiór operatorów przekształcających stan początkow y zadania w stan docelowy tworzy g raf acykliczny, można by spełnić warunki w ystarczające optymalności strategii zachłannej.

Niniejsza praca była finansowana z funduszu badań własnych BW 406 /R au -1/98/6.

LITER A TU R A

1. Garey M .R ., Johnson D.S., Com puters and Intractability - A Guide to the theory o f N P- Com pleteness, Freeman, San Francisco, CA, 1979.

2. C orm en T .H ., Leiserson Ch.E., Rivest R.L.: Introduction to Algorithms. The M assachusetts Institute o f Technology, 1994.

3. Nebel B., K oehler J.: Plan reuse versus plan generation: a theoretical and empirical results.

Artificial Intelligence 76 (1995) pp. 427-454.

4. Nilson N. J.: Principles o f Artificial Intelligence. Tioga Publishing Com pany, Palo Alto 1980, California.

5. Joslin D., Roach J.: A Theoretical Analysis o f Conjuctive-Goal Problems. Artificial Intelligence 41 (1989/90) pp. 97-106.

6. G ałuszka A.: Block World - State Space Searching, Proc. IMACS W orld C ongress’97, Berlin, 1997, vol.6, pp. 571-576.

7. M cD erm ott D ., H endler J.: Planning: W hat it is, W hat it could be, An introduction to the Special Issue on Planning and Scheduling. Artificial Intelligence 76 (1995) pp. 1-16.

(7)

8. Sierocki 1.: A Serial Decomposition o f Planning Problems. Proc. Fourth International Symposium on M ethods and M odels in Automation and Robotics. M iędzyzdroje, Poland, 1997, pp. 1179-1184.

9. B arret A., W eld D.S.: Partial-Order planning: evaluating possible efficiency gains.

Artificial Intelligence 67 (1994) pp. 71-112.

Recenzent: Prof.dr h.inż. Jerzy Klamka

A bstract

Block world is a convenient representation for planning problems. There are many different algorithms o f state space searching which use STRIPS representation for planning.

Som e o f them search for solution through a space o f world-states. In general to generate an optimal plan for block w orld instances, where the goal is a com plete description o f a set o f stacks, is N P- hard.

In the paper a greedy strategy used to serialize instance subgoals is presented. It is shown w hen such strategy can reduce generate optimal plan problem to polynomial time problem and still generates optimal solution.

An example explain greedy algorithm in block world. The problem o f greedy algorithms optimality is also discussed.

Cytaty

Powiązane dokumenty

5 Poka», »e w przestrzeni Hausdora punkty s¡ domkni¦te, a ci¡gi zbie»ne maj¡ tylko jedn¡

Stanowiło rzadką, w pewnym sensie dziś już niemożliwą, instytucję humanistyki, gdzie kształciły się umiejętności, których nie sposób nabyć poprzez rodzaj

Wymienić, jakie znane

Znajdź minimum tej

Test na rzadką chorobę, którą dotknięta jest średnio jedna osoba na 1000, daje tak zwaną fałszywą pozytywną odpowiedź u 5% zdrowych (u chorego daje zawsze odpowiedź

Jeśli funkcja całkowita f powstaje przez składanie λ−definiowalnych funkcji całkowitych, to też jest

Istnieje czworokąt wypukły o kątach miary α, β, γ, δ (z zacho- waniem kolejności), na którym można opisać okrąg.. Dla podanych α, β podać takie γ, δ, aby powyższe

Ponieważ obliczona wartość statystyki testowej nie należy do zbudowanego zbioru krytycznego, to na poziomie istotności α = 0.05 nie ma podstaw do odrzucenia hipotezy H 0