Planowanie
                    ----------

1. Klasyka, czyli małpa i banany (11.4).  W najprostszym sformułowaniu 
   występują 3 miejsca A, B, i C oraz 3 obiekty: małpa (w A), pudło
   (w B) oraz banany (w C).  Celem małpy jest dobranie się do bananów, one
   jednak wiszą wysoko, musi więć podsunąć pod nie pudło i wjeść na nie.
   Akcje: Idż(w podane miejsce), Wejdź(na pudło, trzeba być w tym samym 
   miejscu), Zejdź (z pudła, trzeba na nim być), Przesuń(pudło w podane 
   miejsce, trzeba być w tym samym miejscu co pudło),  Zerwij (trzeba być na 
   pudle w tym samym miejscu co banany). 

   a. Zapisać to w STRIPSIE (stan początkowy, akcje, cel).
   
   b. Przeprowadzić planowanie metodą przeszukiwania przestrzeni klasyczne 
      (warto dodać kilka miejsc, wtedy widać jak się robi nieefektywna)
      oraz backward chaining od celu.

   c. Zapisać to samo w rachunku sytuacji.

   d. Spróbować udowodnić, że istnieje plan.

   e. Zbudować graf planowania typu GraphPlan, pokazać konflikty i
      leveling off.  Ad hoc wydobyć plan z grafu.

2. Anomalia Sussmana (11.11)

   - sytuacja początkowa

               -----
               | C |
       -----   -----
       | B |   | A |
     ---------------------
       |               |
       |               |

    - sytuacja docelowa

               -----
               | A |
               -----
               | B |
               -----
               | C |
     ---------------------
       |               |
       |               |

    - operacja oczywista: przełożenie klocka w inne miejsce (także na stół), 
      pod warunkiem, że na klocku nic nie leży;

    - pokazać, że nie można planować osobno dla każdego podcelu, ponieważ nie 
      są one niezależne i planowanie musi być przeplatane.

3. DWR = Dock Worker Robot, przykład z najnowszej książki o planowaniu
   ,,Automated Planning'', Ghalab, Nau, Travers, www.laas.fr/planning.

   - zbiór miejsc m1, m2, ...
   - zbiór robotów r1, r2, ...
   - zbiór dźwigów d1, d2, ... (nieruchomych)
   - zbiór stosów s1, s2, ... (także o ustalonym położeniu)
   - zbiór kontenerów k1, k2, ...
   - symbol PALETA, znajdujący się na spodzie każdego stosu (ułatwia opis).

   Topologia opisana predykatami:

   - sąsiaduje(mi, mj)
   - stoi-w(di, mj)
   - jest-w(si, mj)

   Pozostałe predykaty (ale studenci mogą tę formalizację wymyślić sami)

   - zajęte(mi) -- jest tam jakiś robot, tylko jeden robot może być w danym
                   miejscu

   - stoi-w(ri, mj)

   - załadowany(ki, rj) -- na robota można załadować tylko jeden kontener

   - rozładowany(ri) -- czyli pusty, ale zob. niżej

   - trzyma(di, kj) -- dźwig może trzymać tylko jeden kontener na raz

   - pusty(di)

   - leży(ki, sj) -- kontener jest fragmentem danego stosu

   - leży-na(ki, kj) -- kj może być symbolem PALETA (dla najniższego kontenera
                        na stosie)

   - na-wierzchu(ki, sj) -- oczywiście tylko jeden dla danego stosu

   Akcje:

   - Przejdź(ri, mj, mk)   -- muszą sąsiadować
   - Weź(di, kj, sk)       -- ze stosu (kj zbędny, ale ułatwia życie)
   - Połóż(di, kj, sk)     -- ze stosu (kj zbędny, ale ułatwia życie)
   - Załąduj(di, kj, rk)   -- na robota (kj zbędny, ale ułatwia życie)
   - Wyładuj(di, kj, rk)   -- z robota (kj zbędny, ale ułatwia życie)

   Uproszczona wersja nie posiada dźwigów.

4. Sokoban ;-)