Automatyczne planowanie oparte na sprawdzaniu spełnialności



Podobne dokumenty
Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.

Metoda Tablic Semantycznych

Podstawy Sztucznej Inteligencji (PSZT)

Semantyka rachunku predykatów

Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

Teoria obliczeń i złożoność obliczeniowa

Elementy logiki. Wojciech Buszkowski Wydział Matematyki i Informatyki UAM Zakład Teorii Obliczeń

Adam Meissner.

Semantyka rachunku predykatów pierwszego rzędu. Dziedzina interpretacji. Stałe, zmienne, funkcje. Logika obliczeniowa.

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykład 9. Koniunkcyjne postacie normalne i rezolucja w KRZ

SID Wykład 9 Planowanie

Tabu Search (Poszukiwanie z zakazami)

Praktyczne metody weryfikacji. Wykład 9: Weryfikacja ograniczona.. p.1/40

LOGIKA Klasyczny Rachunek Zdań

Przeszukiwanie z nawrotami. Wykład 8. Przeszukiwanie z nawrotami. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 238 / 279

komputery? Andrzej Skowron, Hung Son Nguyen Instytut Matematyki, Wydział MIM, UW

Adam Meissner SZTUCZNA INTELIGENCJA Problem spełnialności (SAT)

Algorytm wspinaczkowy dla zadania k-sat

Metody Programowania

Programowanie deklaratywne i logika obliczeniowa

Logika Stosowana. Wykład 2 - Logika modalna Część 2. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

Rachunek predykatów. Formuły rachunku predykatów. Plan wykładu. Relacje i predykaty - przykłady. Relacje i predykaty

III rok kognitywistyki UAM,

Logika Stosowana. Wykład 2 - Logika modalna Część 3. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2017/2018

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

Złożoność obliczeniowa

Logika stosowana. Ćwiczenia Złożoność obliczeniowa problemu spełnialności. Marcin Szczuka. Instytut Informatyki, Uniwersytet Warszawski

Planowanie drogi robota, algorytm A*

Podstawy Sztucznej Inteligencji (PSZT)

Trudność aproksymacji problemów NP-trudnych

Metody dowodzenia twierdzeń i automatyzacja rozumowań Tabele syntetyczne: definicje i twierdzenia

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

Tautologia (wyrażenie uniwersalnie prawdziwe - prawo logiczne)

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

UNIKANIE IMPASÓW W SYSTEMACH PROCESÓW WSPÓŁBIEŻNYCH

WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI

Heurystyki. Strategie poszukiwań

Adam Meissner SZTUCZNA INTELIGENCJA

METODY DOWODZENIA TWIERDZEŃ I AUTOMATYZACJA ROZUMOWAŃ

Paradygmaty dowodzenia

Konsekwencja logiczna

Wstęp do Sztucznej Inteligencji

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

Andrzej Wiśniewski Logika II. Wykłady 10b i 11. Semantyka relacyjna dla normalnych modalnych rachunków zdań

1. Składnia. Logika obliczeniowa - zadania 1 SKŁADNIA Teoria

Marcel Stankowski Wrocław, 23 czerwca 2009 INFORMATYKA SYSTEMÓW AUTONOMICZNYCH

Algebrę L = (L, Neg, Alt, Kon, Imp) nazywamy algebrą języka logiki zdań. Jest to algebra o typie

Teoria Złożoności Zadania

vf(c) =, vf(ft 1... t n )=vf(t 1 )... vf(t n ).

Programowanie w logice Wykład z baz danych dla

Interpretacja Niech U będzie zbiorem formuł takim, że zbiór {p 1,..., p k } jest zbiorem wszystkich symboli predykatywnych, {f 1,..., f l } jest zbior

Lista 6 Problemy NP-zupełne

JAKIEGO RODZAJU NAUKĄ JEST

Metody Optymalizacji: Przeszukiwanie z listą tabu

Imię, nazwisko, nr indeksu

Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, Grafy dzielimy na grafy skierowane i nieskierowane:

Logika Matematyczna (10)

Optymalizacja. Wybrane algorytmy

Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle

Problemy optymalizacyjne - zastosowania

Wprowadzenie do Sztucznej Inteligencji

1. Wstęp do logiki. Matematyka jest nauką dedukcyjną. Nowe pojęcia definiujemy za pomocą pojęć pierwotnych lub pojęć uprzednio wprowadzonych.

Reprezentacja wiedzy ontologie, logiki deskrypcyjne

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA?

Schematy Piramid Logicznych

Technologie cyfrowe. Artur Kalinowski. Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15

Sztuczna inteligencja stan wiedzy, perspektywy rozwoju i problemy etyczne. Piotr Bilski Instytut Radioelektroniki i Technik Multimedialnych

O ISTOTNYCH OGRANICZENIACH METODY

Logika rachunek zdań

Poprawność semantyczna

Praca Magisterska. Automatyczna kontekstowa korekta tekstów na podstawie Grafu Przyzwyczajeń. internetowego dla języka polskiego

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje w roku akademickim 2012/2013. Algorytmy i struktury danych

Definicja: zmiennych zdaniowych spójnikach zdaniowych:

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

Wykład 8. Drzewo rozpinające (minimum spanning tree)

TEORIA GRAFÓW I SIECI

przetworzonego sygnału

Sztuczna Inteligencja i Systemy Doradcze

Siedem cudów informatyki czyli o algorytmach zdumiewajacych

Metody optymalizacji dyskretnej

Algorytmy i struktury danych.

Uzgadnianie formuł rachunku predykatów

Uwaga: Akceptowane są wszystkie odpowiedzi merytorycznie poprawne i spełniające warunki zadania.

AiSD zadanie trzecie

PROGRAM STUDIÓW. Egzamin, kolokwium, projekt, aktywność na zajęciach.

TEORETYCZNE PODSTAWY INFORMATYKI

KURS MATEMATYKA DYSKRETNA

Wprowadzenie Logiki temporalne Przykłady użycia Bibliografia. Logiki temporalne. Andrzej Oszer. Seminarium Protokoły Komunikacyjne

Algorytmy sztucznej inteligencji

Adam Meissner SZTUCZNA INTELIGANCJA

Algorytm Grovera. Kwantowe przeszukiwanie zbiorów. Robert Nowotniak

Programowanie logiczne a negacja

Elementy logiki Klasyczny rachunek zdań. Wojciech Buszkowski Zakład Teorii Obliczeń Wydział Matematyki i Informatyki Uniwersytet im.

Dedukcyjne bazy danych i rekursja

Wstęp do Programowania potok funkcyjny

Klasyczny rachunek predykatów

Logika pragmatyczna. Logika pragmatyczna. Kontakt: Zaliczenie:

Czy istnieje zamknięta droga spaceru przechodząca przez wszystkie mosty w Królewcu dokładnie jeden raz?

Algorytmiczna teoria grafów

Algorytm simplex i dualność

Transkrypt:

Automatyczne planowanie oparte na sprawdzaniu spełnialności Linh Anh Nguyen Instytut Informatyki Uniwersytet Warszawski Linh Anh Nguyen Algorytm planowania SatPlan 1

Problem planowania sufit nie malowany? sufit pomalowany Linh Anh Nguyen Algorytm planowania SatPlan 2

Złożoność Problem planowania jest NP-trudny Rozwiązania stosowane w praktyce: Heurystyki Metody działające skutecznie dla wystarczająco obszernej klasy zastosowań Metody wyspecjalizowane dla konkretnego zastosowania Linh Anh Nguyen Algorytm planowania SatPlan 3

Język STRIPS: stany Stan: zbiór literałów (formuł atomowych lub ich negacji) Przykład: pozycja(robot 1, pokój 1 ), pozycja(robot 2, pokój 2 ) Niedopuszczalne: pozycja(x,y), pozycja(ojciec(jacek), pokój 1 ) Linh Anh Nguyen Algorytm planowania SatPlan 4

Język STRIPS: akcje warunki wstępne akcja efekty pozycja(o,x) przemieszczaj(o,x,y) pozycja(o,x) pozycja(o,y) jest(ciasto) wypiecz(ciasto) jest(ciasto) Linh Anh Nguyen Algorytm planowania SatPlan 5

Język STRIPS: postanowienie problemu stan początkowy akcje 0, akcje 1,, akcje n-1 ukonkretnione cel akcje 0 akcje 1 S 0 a S 1 S 2 b S n Kiedy plan jest poprawny? Linh Anh Nguyen Algorytm planowania SatPlan 6

SatPlan: ogólne podejście Ograniczony problem planowania (P,n): P jest problemem planowania, a n jest liczbą naturalną każdy plan dla P o długości n jest rozwiązaniem dla (P,n) Algorytm planowania SatPlan: Wykonuj przeszukiwanie iteracyjnie pogłębiane: Dla n = 0, 1, 2, Zakoduj (P,n) jako problem spełnialności zbioru formuł Φ Jeśli Φ jest spełnialny, to wyekstrahuj plan dla P z wartościowania spełniającego Φ Linh Anh Nguyen Algorytm planowania SatPlan 7

Przykład Język: robot r sąsiednie pokoje p 1, p 2 akcja przemieszczania robota Linh Anh Nguyen Algorytm planowania SatPlan 8

Przykład: Zakodowanie (P,n) dla n=1 Stan początkowy: {poz(r,p 1 )} Zakodowanie: poz(r,p 1,0) poz(r,p 2,0) Ignoruj: poz(r,r,0), poz(l 1,l 2,0) Cel: {poz(r,p 2 )} Zakodowanie: poz(r,p 2,1) Linh Anh Nguyen Algorytm planowania SatPlan 9

Przykład: Zakodowanie (P,n) dla n=1 Akcja: poz(o,x) przem(o,x,y) poz(o,x), poz(o,y) Zakodowanie: przem(r,p 1,p 2,0) poz(r,p 1,0) poz(r,p 2,1) poz(r,p 1,1) przem(r,p 2,p 1,0) poz(r,p 2,0) poz(r,p 1,1) poz(r,p 2,1) Ignoruj np : przem(r,p 1,p 1,0) poz(r,p 1,0) poz(r,p 1,1) poz(r,p 1,1) przem(p 1, _, _, 0) przem(_, r, _, 0) Linh Anh Nguyen Algorytm planowania SatPlan 10

Przykład: Zakodowanie (P,n) dla n=1 Wzajemne wykluczanie akcji: przem(r,p 1,p 2,0) przem(r,p 2,p 1,0) Aksjomaty tła (zmiany są wyłącznie wynikiem wykonania akcji): poz(r,p 1,0) poz(r,p 1,1) przem(r,p 2,p 1,0) poz(r,p 2,0) poz(r,p 2,1) przem(r,p 1,p 2,0) poz(r,p 1,0) poz(r,p 1,1) przem(r,p 1,p 2,0) poz(r,p 2,0) poz(r,p 2,1) przem(r,p 2,p 1,0) Linh Anh Nguyen Algorytm planowania SatPlan 11

Wyekstrahowanie planu Załóżmy, że (P,n) jest zakodowany przez zbiór formuł Φ Φ jest spełniony przy użyciu wartościowania V Wtedy krok i-ty planu dla (P,n) zawiera akcje a i takie, że V(a i ) = true co oznacza, że została wybrana akcja a i Linh Anh Nguyen Algorytm planowania SatPlan 12

Zaawansowany algorytm SatPlan: idea Wykorzystać grafy planowania do ograniczenia przestrzeni przeszukiwania: Sprawdzić warunek konieczny na istnienie rozwiązania dla (P,n) Dodać do zakodowania dla (P,n) formuły wyrażające pewne więzy Linh Anh Nguyen Algorytm planowania SatPlan 13

Graf planowania: przykład Stan początkowy: {jest(ciasto)} Cel: {jest(ciasto), zjedzono(ciasto)} Akcje: jest(ciasto) zjedz(ciasto) jest(ciasto) zjedzono(ciasto) jest(ciasto) wypiecz(ciasto) jest(ciasto) Linh Anh Nguyen Algorytm planowania SatPlan 14

Graf planowania: przykład jest(ciasto,1) zjedzono(ciasto,1) wypiecz(ciasto,1) zjedz(ciasto,1) Linh Anh Nguyen Algorytm planowania SatPlan 15

Zaawansowany algorytm SatPlan Niech P będzie zadanym problemem planowania Dla n = 0, 1, 2, Skonstruuj graf planowania dla (P,n) Jeśli żadna para literałów celu nie jest w relacji wzajemnego wykluczania na ostatnim poziomie grafu, to: Zakoduj (P,n) jako problem spełnialności zbioru formuł Φ uwzględniając relację wzajemnego wykluczania Jeśli Φ jest spełnialny, to wyekstrahuj plan dla P z wartościowania spełniającego Φ Linh Anh Nguyen Algorytm planowania SatPlan 16

Własności algorytmu SatPlan SatPlan ukonkretnia akcje i literały Ma przewagę kiedy: dziedzina problemu nie jest za duża generowany plan ma być (prawie) optymalny trudność problemu nie jest związana z analizą osiągalności w grafach planowania, lecz z wyekstrahowaniem planu z grafów planowania Linh Anh Nguyen Algorytm planowania SatPlan 17

Skuteczność algorytmu SatPlan Programy sprawdzające spełnialność działają efektywnie dla większości praktycznych problemów Są stale ulepszane i coraz efektywniejsze (liczba klauzul / liczba zmiennych) Linh Anh Nguyen Algorytm planowania SatPlan 18

Skuteczność algorytmu SatPlan Implementacja algorytmu SatPlan (Kautz & Selman) zdobyła w kategorii optymalnego planowania na konkursach IPC (International Planning Competition): pierwszą pozycję w IPC-2004 pierwszą pozycję w IPC-2006 (razem z innym prog) Algorytm SatPlan jest jednym z wiodących podejść do automatycznego planowania Linh Anh Nguyen Algorytm planowania SatPlan 19

Podsumowanie Planowanie jest jednym z najważniejszych zadań w systemach inteligentnych, w tym autonomicznych Wysoka złożoność (NP-trudność) wymaga stosowania rozwiązań skutecznych dla wybranej dziedziny zastosowań Linh Anh Nguyen Algorytm planowania SatPlan 20

Podsumowanie Sprowadzanie planowania do spełnialności rachunku zdań jest skutecznym zastosowaniem logiki: Działa dla obszernej klasy zastosowań Pozwala na bezpośrednią integrację z innymi rozwiązaniami opartymi na logice (np dedukcyjnymi bazami danych, metodami reprezentacji wiedzy) Linh Anh Nguyen Algorytm planowania SatPlan 21