Seminar Cognitive Systeme WS 2004/05 Functional Strips Julia Trommer, Christian Fleischmann.

Slides:



Advertisements
Ähnliche Präsentationen
Knapsack & Bin Packing Sebastian Stober
Advertisements

Programmierung 1 - Repetitorium WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage:
6. Regelbasierte Systeme
Proof-Planning. Übersicht Einleitung Proof-Planning Bridge-Taktiken Repräsentation des Gegenspiels Planungsalgorithmus Suchen mit Histories.
Programmierung II Prof. Dr. Michael Löwe
Modellbasierte Software-Entwicklung eingebetteter Systeme
Eingebettete Systeme Qualität und Produktivität
Bounded Model Checking II
Programmieren in Logik
Suche in Texten (Stringsuche )
12. Iteration und Rekursion
Hauptseminar Modellüberprüfung Kathrin Ott
Kapitel 4 Datenstrukturen
Universität des Saarlandes Fachbereich Informatik Lehrstuhl Prof. Dr
Spec# Proseminar Assertions im SS 2007 Uni Paderborn Andreas Martens Betreuer: Dipl. Inform. Björn Metzler.
Java: Dynamische Datentypen
FH-Hof Optimierungsverfahren für kombinatorische Probleme Richard Göbel.
Seminar zum pi-Kalkül betreut von Andreas Rossberg
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (06 – Reduktion endlicher Automaten) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (04 – Automaten mit ε-Transitionen) Prof. Dr. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 2 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (03 – Nichtdeterminierte endliche Automaten) Prof. Dr. Th. Ottmann.
Fuzzy-Logik und unscharfe Mengen
Symbolisches Model Checking mit Binary Decision Diagrams
Semantik von Prolog & Unifikation
Syntax von Prolog & Familiendatenbasis
Prof. Dr. T. Kudraß1 Relationenkalkül. Prof. Dr. T. Kudraß2 Relationenkalkül Zwei Ausprägungen: Tupelrelationenkalkül (TRK) und Domänenrelationenkalkül.
Christian Schindelhauer
Programmierung 1 - Repetitorium WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage:
Programmierung 1 - Repetitorium WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage:
Programmierung 1 - Repetitorium WS 2002/2003 Programmierung 1 - Repetitorium Andreas Augustin und Marc Wagner Homepage:
Abfragen – Tipps und Tricks Buch S102ff (Informatik I, Oldenbourg-Verlag) Nach einer Vorlage von Dieter Bergmann.
Abbildungsverfahren (1)
Polymorphe Operatoren: Bewertung
Stacks Referat im Fach Basisinformationstechnologien von Venelina Koleva.
Handlungsplanung und Allgemeines Spiel „Game Description Language (GDL)“ Peter Kissmann.
Isabelle/HOL ( Kripke Structures & Model Checking ) Ying Wang, Nelli Bärsch, Bartosz Rynarzewski,
RDF MT Resource Description Framework Model Theory © 2002 by Emir Blažević
Input / Wahrnehmung Control / Bewusstsein Output / Motorik Information.
Endliche Automaten Informatik JgSt. 13, Abitur 2009
Einführung in die Programmierung
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Hartmut Klauck Universität Frankfurt WS 06/
Efficient Alias Set Analysis Using SSA Form Proseminar Programmanalyse WS 11/12 André Hunke.
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Formale Sprachen Grammatiken und die Chomsky-Hierarchie
Aufgabenstellung Aufgabenstellung: What do the following terms (formulae) express? Which of these terms characterize all sequences of real numbers , x_n.
Relationales Datenmodell ist beherrschend: –Riesige Datenbestände und damit hohe Investitionen. –Die große Mehrzahl der Anwendungen arbeitet mit weitgehend.
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 1: Wiederholung (Vor allem Folien von Priv.-Doz. Dr. Kindler vom WS 2001/02.
PHP: Operatoren und Kontrollstrukturen
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Integritätserhaltung und -Überprüfung in deduktiven Datenbanken
1 Polymorphe Konsistenzbedingungen (1) Polymorphe Konsistenzbedingungen legen fest, welche Arten von Zustandsbeschränkungen nach einer Konkretisierung.
Institut für Softwarewissenschaft – Universität WienP.Brezany 1 Beispiele (Frist: ) Beispiel 1: Sei  = {a, b} ein Alphabet und Q = {q 0, q 1 } eine.
1 Referenzielle Konsistenz (1) Vorgehensweise: Klausel references mit nachfolgender Spezikation eines Attributs einer anderen Tabelle identifiziert ein.
Inhalt Einordnung und Funktion der lexikalische Analyse Grundlagen
Grundlagen der Algorithmen und Datenstrukturen Kapitel
Kapitel 5Strukturen Information aus der realen Welt werden in einem informationsverarbeitenden System als Daten abgelegt. Diese stellen also eine (vereinfachte)
Funktionale Unifikations-Grammatik (FUG)   Hauptmerkmale der FUG.
Funktionale Unifikations-Grammatik (FUG)  Hauptmerkmale der FUG.
Elemente einer Z-Spezifikation
Softwaretechnologie für Fortgeschrittene Teil Thaller Stunde I: Bildverarbeitung I Köln 15. November 2012.
 Am Ende der letzten Stunde hatten wir über die Grenzen unserer Automaten-Modell gesprochen. Dr. Lars Ettelt2  Tipp: Parkhaus.  Einfahrt erst wenn.
Dr. Wolfram Amme, Semantik funktionaler Programme, Informatik II, FSU Jena, SS Semantik funktionaler Programme.
WISSENSREPRÄSENTATION IN ACTIVEMATH Theoretische Grundlagen – Teil 1.
Gliederung 0. Motivation und Einordnung 1. Endliche Automaten
Optimierungsprobleme:
Wahlteil 2009 – Geometrie II 1
Web-Mining Agents Planning
 Präsentation transkript:

Seminar Cognitive Systeme WS 2004/05 Functional Strips Julia Trommer, Christian Fleischmann

Functional Strips Julia Trommer, Christian Fleischmann Seite 2 1.Die Türme von Hanoi 1.1.Hanoi in Strips 1.2Hanoi in Functional Strips 2.Functional Strips 2.1Motivation 2.2Sprache 2.3Operatoren 2.4Zustandsmodell 3.Vergleich Zustandsmodelle: Strips und Functional Strips 4.Reifenbeispiel in Functional Strips

Functional Strips Julia Trommer, Christian Fleischmann Seite 3 Prädikate P = { clear 1, on 2, smaller 2 } Objekte O = { a, b, c, d1, d2, d3 } Operator:move ( x, y, z ) Precondition: on( x, y ), clear( x ), clear( z ), smaller ( x, z ) Add: clear( y ), on ( x, z ) Delete: clear ( z ), on ( x, y ) x = Scheibe, die bewegt wird y = Scheibe, auf der x liegt z = Scheibe, auf der x abgelegt wird Startzust.: clear( d1 ), clear( b ), clear( c ), on( d1, d2 ), on( d2, d3 ), on( d3, a), smaller( d1, d2 ), smaller( d1, d3 ), smaller( d2, d3 ), smaller( d1, a ), smaller( d1, b ), smaller( d1, c ), smaller( d2, a ), smaller( d2, b ), smaller( d2, c ), smaller( d3, a ), smaller( d3, b ), smaller( d3, c ) Zielzust.: clear( d1 ), clear( a ), clear( b ), on( d1, d2 ), on( d2, d3 ), on( d3, c ) 1.1 Das Hanoi Problem mit drei Türmen in Strips

Functional Strips Julia Trommer, Christian Fleischmann Seite 4 1.Die Türme von Hanoi 1.1.Hanoi in Strips 1.2Hanoi in Functional Strips 2.Functional Strips 2.1Motivation 2.2Sprache 2.3Operatoren 2.4Zustandsmodell 3.Vergleich Zustandsmodelle: Strips und Functional Strips 4.Reifenbeispiel in Functional Strips

Functional Strips Julia Trommer, Christian Fleischmann Seite Das Hanoi Problem mit drei Türmen in Functional Strips Domänen:Peg: p 1, p 2, p 3 ; die Stapel Disk: d 1, d 2, d 3 ; die Scheiben Disk*: Disk, d 0 ; die Scheiben und eine unterste Dummy Scheibe 0 Fluents:top: Peg→ Disk*; liefert die oberste Scheibe eines Stapels loc:Disk → Disk*; beschreibt die Scheibe unter der gegebenen Scheibe size:Disk*→ Integer; repräsentiert die Scheibengröße Aktionen:move(p i, p j : Peg); bewegt zwischen Stapeln –Vorbed.:top(p i ) ≠ d 0, size(top(p i )) < size(top(p j )) –Nachbed.:top(p i ) := loc(top(p i )), loc(top(p i )) := top(p j ), top(p j ) := top(p i ) Startzust.:loc(d 1 ) = d 0 ; loc(d 2 ) = d 1 ; loc(d 3 ) = d 2 top(p 1 ) = d 3 ; top(p 2 ) = d 0 ; top(p 3 ) = d 0 size(d 0 ) = 3 ; size(d 1 ) = 2 ; size(d 2 ) = 1 ; size(d 3 ) = 0 Zielzust.:loc(d 1 ) = d 0 ; loc(d 2 ) = d 1 ; loc(d 3 ) = d 2 ; top(p 3 ) = d 3

Functional Strips Julia Trommer, Christian Fleischmann Seite 6 1.Die Türme von Hanoi 1.1.Hanoi in Strips 1.2Hanoi in Functional Strips 2.Functional Strips 2.1Motivation 2.2Sprache 2.3Operatoren 2.4Zustandsmodell 3.Vergleich Zustandsmodelle: Strips und Functional Strips 4.Reifenbeispiel in Functional Strips

Functional Strips Julia Trommer, Christian Fleischmann Seite Motivation Hanoi in Strips: –Relationen: on(i,j), clear(i), smaller(i,j) –Aktionen: move(i,j,k)  Anzahl der Basisaktionen N 3 Idee von FS: –Verwendung von functional fluents anstatt der relational fluents in Strips  Funktionale Symbole als ‚first class citizens‘ Hanoi in Functional Strips: –Term: top(p i ) –Aktion: move(p i,p j ) Grösster Unterschied zu Strips: –Verwendung von Nachbedingungen

Functional Strips Julia Trommer, Christian Fleischmann Seite 8 1.Die Türme von Hanoi 1.1.Hanoi in Strips 1.2Hanoi in Functional Strips 2.Functional Strips 2.1Motivation 2.2Sprache 2.3Operatoren 2.4Zustandsmodell 3.Vergleich Zustandsmodelle: Strips und Functional Strips 4.Reifenbeispiel in Functional Strips

Functional Strips Julia Trommer, Christian Fleischmann Seite Sprache FS ist eine first order language with no quantifications Symbole: –function symbols –constant symbols –relational symbols FS ist typbasiert (zum Beispiel Peg, Disk, Disk*): –Typen grenzen Bereiche von Aktionenschemas ab –Typen definieren Domänen, über die Fluents interpretiert sind (Bsp.: die Angabe „Disk: d1, d2, d3“) Argumente von Fluents müssen sich über endliche Domänen erstrecken (Stapel = { p1, p2, p3})

Functional Strips Julia Trommer, Christian Fleischmann Seite 10 1.Die Türme von Hanoi 1.1.Hanoi in Strips 1.2Hanoi in Functional Strips 2.Functional Strips 2.1Motivation 2.2Sprache 2.3Operatoren 2.4Zustandsmodell 3.Vergleich Zustandsmodelle: Strips und Functional Strips 4.Reifenbeispiel in Functional Strips

Functional Strips Julia Trommer, Christian Fleischmann Seite Operatoren beschrieben durch die Typen ihrer Argumente durch zwei Mengen –Liste der Vorbedingungen (Prec(op))  Menge von Formeln –Liste der Nachbedingungen (Post(op))  Menge von Updates der Form f(t) := w (t und w sind Terme des selben Typs, f ist fluent Symbol) Erläuterung der Nachbedingung: Für den Nachfolgezustand s a =next(a,s) muss die Gleichung f s a (t s ) = w s erfüllt werden. Beispiel: Update wie loc(top(p 1 )) := top(p 2 ) bedeutet, dass loc(d 3 ) = d 2 wahr werden muss in s a, wenn top(p 1 ) = d 3 und top(p 2 ) = d 2 wahr in s sind;

Functional Strips Julia Trommer, Christian Fleischmann Seite 12 1.Die Türme von Hanoi 1.1.Hanoi in Strips 1.2Hanoi in Functional Strips 2.Functional Strips 2.1Motivation 2.2Sprache 2.3Operatoren 2.4Zustandsmodell 3.Vergleich Zustandsmodelle: Strips und Functional Strips 4.Reifenbeispiel in Functional Strips

Functional Strips Julia Trommer, Christian Fleischmann Seite Zustandsmodell C1: Zustände s S sind die logischen Interpretationen über der Sprache L F, und werden repräsentiert durch Zuweisung eines Wertes f s [v] zu jeder Zustandsvariablen f[v] für jedes fluent f und jeden Wert v in D f Das Problem P(L F,O F,I F,G F ) wird mit Hilfe des folgenden Zustandsmodells gelöst:

Functional Strips Julia Trommer, Christian Fleischmann Seite Zustandsmodell C2: der Anfangszustand s 0 erfüllt die Gleichung f(t) = w in I F C3: die Zielzustände s S G sind die Interpretationen, die die Zielformel G F erfüllen Startzustand:loc(d 1 ) = d 0 ; loc(d 2 ) = d 1 ; loc(d 3 ) = d 2 top(p 1 ) = d 3 ; top(p 2 ) = d 0 ; top(p 3 ) = d 0 size(d 0 ) = 3; size(d 1 ) = 2; size(d 2 ) = 1; size(d 3 ) = 0 Zielzustand:loc(d 1 ) = d 0 ; loc(d 2 ) = d 1 ; loc(d 3 ) = d 2 ; top(p 3 ) = d 3

Functional Strips Julia Trommer, Christian Fleischmann Seite Zustandsmodell C4: Aktionen a A(s) sind die Operatoren op O F, deren Vorbed. in s wahr sind Aktionen:move(p i, p j : Peg); bewegt zwischen Stapeln Vorbed.:top(p i ) ≠ d 0, size(top(p i )) < size(top(p j )) Nachbed.:top(p i ) := loc(top(p i )), loc(top(p i )) := top(p j ), top(p j ) := top(p i )

Functional Strips Julia Trommer, Christian Fleischmann Seite Zustandsmodell C5: die Repräsentation des Folgezustands s a = next(a,s) für a A(s) bedeutet, dass für jedes fluent symbol f und v D f gilt:

Functional Strips Julia Trommer, Christian Fleischmann Seite 17 1.Die Türme von Hanoi 1.1.Hanoi in Strips 1.2Hanoi in Functional Strips 2.Functional Strips 2.1Motivation 2.2Sprache 2.3Operatoren 2.4Zustandsmodell 3.Vergleich Zustandsmodelle: Strips und Functional Strips 4.Reifenbeispiel in Functional Strips

Functional Strips Julia Trommer, Christian Fleischmann Seite Vergleich Zustandsmodelle: Strips(B) und FS(C) B1: - Zustände s S sind die logischen Interpretationen über der Sprache L S, und - werden repräsentiert durch die Menge [s] von Atomen, die sie bewahrheiten C1: - Zustände s S sind die logischen Interpretationen über der Sprache L F, und - werden repräsentiert durch Zuweisung eines Wertes f s [v] zu jeder Zustandsvariablen f[v] für jede fluent f und jeden Wert v in D f

Functional Strips Julia Trommer, Christian Fleischmann Seite Vergleich Zustandsmodelle: Strips(B) und FS(C) B2: der Anfangszustand s 0 ist die Interpretation, die durch die Atome in I s erfüllt wird und durch allen anderen Atome nicht erfüllt wird C2: der Anfangszustand s 0 erfüllt die Gleichung f(t) = w in I F B3: die Zielzustände s S G sind die Interpretationen, die durch die Atome in G S erfüllt werden C3: die Zielzustände s S G sind die Interpretationen, die die Zielformel G F erfüllen

Functional Strips Julia Trommer, Christian Fleischmann Seite Vergleich Zustandsmodelle: Strips(B) und FS(C) B4: Aktionen a A(s) sind die Operatoren op O S, deren Vorbedingungen in s wahr sind C4: Aktionen a A(s) sind die Operatoren op O F, deren Vorbedingungen in s wahr sind

Functional Strips Julia Trommer, Christian Fleischmann Seite Vergleich Zustandsmodelle: Strips(B) und FS(C) B5: die Übergangsfunktion next bildet Zustände s in Zustände s‘=next(a,s) für a A(s) so ab, dass die Repräsentation von s‘ [s‘]=[s]-Del(a)+Add(a) ist C5: die Repräsentation des Folgezustands s a = next(a,s) für a A(s) bedeutet, dass für jedes fluent symbol f und v D f gilt:

Functional Strips Julia Trommer, Christian Fleischmann Seite 22 1.Die Türme von Hanoi 1.1.Hanoi in Strips 1.2Hanoi in Functional Strips 2.Functional Strips 2.1Motivation 2.2Sprache 2.3Operatoren 2.4Zustandsmodell 3.Vergleich Zustandsmodelle: Strips und Functional Strips 4.Reifenbeispiel in Functional Strips

Functional Strips Julia Trommer, Christian Fleischmann Seite 23 Domänen:Reifen: r Platt, r Voll Ort: o Kofferraum, o Achse, o Boden Fluents:loc: Reifen → Ort*; beschreibt den Reifen an seinem Ort Aktion:remove(r i: Reifen, o j :Ort); entfernt Reifen von Achse/Kofferraum –Vorbed.:loc(r i )= o j –Nachbed.:loc(r i ):= o Boden Aktion:puton (r i :Reifen, o j :Ort); bewegt Reifen –Vorbed.:loc(r i )= o Boden ; r i =r Voll ; loc(r Platt )= o Boden –Nachbed.:loc(r i ):= o Achse Startzust.:loc(r Platt ) = o Achse ; loc(r Voll ) = o Kofferraum Zielzust.:loc(r Voll ) = o Achse 4. Reifenbeispiel in Functional Strips