ΣΧΕΔΙΑΣΜΟΣ (PLANNING)

Σχετικά έγγραφα
ΣΧΕΔΙΑΣΜΟΣ (PLANNING)

ΣΕΧΝΗΣΗ ΝΟΗΜΟΤΝΗ ΓΙΑ ΑΤΣΟΝΟΜΟΤ ΧΑΡΑΚΣΗΡΕ Ε VIDEO GAMES

ΣΧΕΔΙΑΣΜΟΣ (PLANNING)

Σεχνθτι Νοθμοςφνθ ΙΙ Μάρτιοσ 2012 ΧΕΔΙΑΜΟ (PLANNING) ..και εφαρμογζσ ςε video games!

Ένα πρόβλθμα γραμμικοφ προγραμματιςμοφ βρίςκεται ςτθν κανονικι μορφι όταν:

17. Πολυδιάςτατοι πίνακεσ

ΕΝΟΤΗΤΑ 2: ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Γνωριμία με το λογιςμικό του υπολογιςτι

ςυςτιματα γραμμικϊν εξιςϊςεων

ΛΕΙΤΟΥΓΙΚΆ ΣΥΣΤΉΜΑΤΑ. 5 ο Εργαςτιριο Ειςαγωγι ςτθ Γραμμι Εντολϊν

Αυτόνομοι Πράκτορες. Αναφορά Εργασίας Εξαμήνου. Το αστέρι του Aibo και τα κόκαλα του

Πόςο εκτατό μπορεί να είναι ζνα μη εκτατό νήμα και πόςο φυςικό. μπορεί να είναι ζνα μηχανικό ςτερεό. Συνιςταμζνη δφναμη versus «κατανεμημζνησ» δφναμησ

ΕΝΟΤΗΤΑ 2: ΕΠΙΚΟΙΝΩΝΩ ΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Αρχεία - Φάκελοι

Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων. 15. Πίνακεσ ΙI. Ιωάννθσ Κατάκθσ. ΕΠΛ 032: Προγραμματιςμόσ Μεκόδων Επίλυςθσ Προβλθμάτων

Κάνουμε κλικ ςτθν επιλογι του οριηόντιου μενοφ «Get Skype»για να κατεβάςουμε ςτον υπολογιςτι μασ το πρόγραμμα του Skype.

Διδάςκων: Κωνςταντίνοσ τεφανίδθσ

Πειραματικι Ψυχολογία (ΨΧ66)

Τυπικζσ Γλϊςςεσ Περιγραφισ Υλικοφ Εργαςτιριο 1

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 2 ο Εργαςτιριο Διαχείριςθ Διεργαςιϊν

ΤΙΤΛΟΣ: "SWITCH-ΠΩ ΝΑ ΚΑΣΑΦΕΡΕΙ ΣΗΝ ΑΛΛΑΓΗ ΟΣΑΝ Η ΑΛΛΑΓΗ ΕΙΝΑΙ ΔΤΚΟΛΗ" Σσγγραφείς: Chip Heath & Dan Heath. Εκδόζεις: Κσριάκος Παπαδόποσλος/ΕΕΔΕ

Modellus 4.01 Συ ντομοσ Οδηγο σ

Ιςοηυγιςμζνα δζντρα και Β- δζντρα. Δομζσ Δεδομζνων

ΕΦΑΡΜΟΓΕ ΒΑΕΩΝ ΔΕΔΟΜΕΝΩΝ ΣΗ ΝΟΗΛΕΤΣΙΚΗ. Φιλιοποφλου Ειρινθ

Διαχείριςθ του φακζλου "public_html" ςτο ΠΣΔ

Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο του Άβακα

Δείκτεσ Διαχείριςθ Μνιμθσ. Βαγγζλθσ Οικονόμου Διάλεξθ 8

ΕΝΟΤΘΤΑ 2: ΕΠΙΚΟΙΝΩΝΩ ΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΘ. ΚΕΦΑΛΑΙΟ 6: Θ «Βοικεια» ςτον Υπολογιςτι

ΕΦΑΡΜΟΓΕ ΒΑΕΩΝ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΔΙΑΔΙΚΣΤΟΤ. Φιλιοποφλου Ειρινθ

8 τριγωνομετρία. βαςικζσ ζννοιεσ. γ ςφω. εφω και γ. κεφάλαιο

Πνομα Ομάδασ: Προγραμματιςμόσ ενόσ κινοφμενου ρομπότ

Ανάπτυξη Εφαρμογών με Σχεςιακέσ Βάςεισ Δεδομένων

Ειςαγωγι ςτο Δομθμζνο Προγραμματιςμό. Βαγγζλθσ Οικονόμου

Qualifiers: Ο μζγιςτοσ αρικμόσ ςυμμετοχϊν ςε κάκε qualifier είναι 128. Δίνεται θ δυνατότθτα ςτισ ομάδεσ να επιλζξουν ςε ποιο από τα 2 qualifiers

ΜΑΘΗΜΑΤΙΚΑ Α Γυμνασίου

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium V

ΘΥ101: Ειςαγωγι ςτθν Πλθροφορικι

Τεχνικζσ Ανάλυςησ Διοικητικών Αποφάςεων

Παράςταςη ςυμπλήρωμα ωσ προσ 1

1. Κατέβαςμα του VirtueMart

Εγχειρίδιο Χριςθσ τθσ διαδικτυακισ εφαρμογισ «Υποβολι και παρακολοφκθςθ τθσ ζγκριςθσ Εκπαιδευτικών Πακζτων»

Α ΕΚΦΕ ΑΝ. ΑΤΤΙΚΗΣ Υπ. Κ. Παπαμιχάλθσ. Μζτρηςη του λόγου γ=c P /C V των αερίων με τη μζθοδο Clement Desormes

Παράςταςη ακεραίων ςτο ςυςτημα ςυμπλήρωμα ωσ προσ 2

Περιεχόμενα. χολι Χοροφ Αντιγόνθ Βοφτου - Πολιτικι Διαχείριςθσ Cookie 1

Καλϊσ Θλκατε ςτο νζο μασ site & e-shop Livardas.gr.

Ανάπτυξη Εφαρμογών Σε Προγραμματιςτικό Περιβάλλον

Νζεσ Τάςεισ ςτην εκπαιδευτική διαδικαςία: Gamification

w e b t r a i l s. g r Η ΛΕΙΣΟΤΡΓΙΚΟΣΗΣΑ ΣΟΤ ΙΣΟΣΟΠΟΤ J24CLASS.GR

ΕΝΟΣΗΣΑ 1: ΓΝΩΡIΖΩ ΣΟΝ ΤΠΟΛΟΓΙΣΗ. ΚΕΦΑΛΑΙΟ 3: Εργονομία

ΧΡΗΙΜΟΠΟΙΩΝΣΑ ΣΟ VISUAL HISTORY ARCHIVE

Πειραματικι Ψυχολογία (ΨΧ66)

Α) Ενδεικτικϋσ απαντόςεισ των θεμϊτων

Βάςεισ Δεδομζνων Ι. Ενότητα 12: Κανονικοποίηςη. Δρ. Τςιμπίρθσ Αλκιβιάδθσ Τμιμα Μθχανικών Πλθροφορικισ ΤΕ

Κεφάλαιο 7: Μοντελοποίθςθ ςυμπεριφοράσ

Εγχειρίδιο Χρήςησ Προςωποποιημζνων Υπηρεςιών Γ.Ε.ΜΗ. (Εθνικό Τυπογραφείο)

Εγχειρίδιο Χρήςησ Προςωποποιημζνων Υπηρεςιών Γ.Ε.ΜΗ. (Εθνικό Τυπογραφείο)

Ειδικά Θζματα Βάςεων Δεδομζνων

Διαδικαςία Προγράμματοσ Ωρομζτρθςθσ. (v.1.0.7)

Διάδοση θερμότητας σε μία διάσταση

Joomla! - User Guide

Πανεπιςτιμιο Κφπρου ΟΙΚ 223: Μακθματικά για οικονομολόγουσ ΙΙ Διδάςκων:

ΕΦΑΡΜΟΓΖσ ΒΆΕΩΝ ΔΕΔΟΜΖΝΩΝ ΚΑΙ ΔΙΑΔΙΚΣΥΟΤ. Ειρινθ Φιλιοποφλου

Αυτόματη δημιουργία στηλών Αντιστοίχηση νέων λογαριασμών ΦΠΑ

Σφντομεσ Οδθγίεσ Χριςθσ

ΗΛΕΚΣΡΟΝΙΚΗ ΤΠΗΡΕΙΑ ΑΠΟΚΣΗΗ ΑΚΑΔΗΜΑΪΚΗ ΣΑΤΣΟΣΗΣΑ

Οικονομικι τθσ Εργαςίασ

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 7 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Γ

Άςκθςθ 1θ: Να γραφεί αλγόρικμοσ που κα δθμιουργεί με τθ βοικεια διπλοφ επαναλθπτικοφ βρόχου, τον ακόλουκο διςδιάςτατο πίνακα:

Συγγραφι επιςτθμονικισ εργαςίασ. Η κορφφωςθ τθσ προςπάκειάσ μασ

ΟΝΟΜΑΣΟΛΟΓΙΑ ΠΑΡΑΜΕΣΡΩΝ ΓΙΑ ΠΡΟΑΡΜΟΜΕΝΕ ΑΝΑΦΟΡΕ. παραμζτρου> (Εμφανίηεται ςαν Caption ςτθν φόρμα των φίλτρων).

Ανάλυςη κλειςτϊν δικτφων

Ιδιότθτεσ πεδίων Γενικζσ.

Εγκατάσταση & Διαχείριση Joomla στο Π.Σ.Δ. ΣΥΜΒΟΥΛΟ ΡΛΗΟΦΟΙΚΗΣ Ν. ΣΕΩΝ & ΚΕ.ΡΛΗ.ΝΕ.Τ. Ν. ΣΕΩΝ

Δείκτεσ απόδοςθσ υλικών

Εργαστηριακή άσκηση στο μάθημα του Αυτομάτου Ελέγχου (ΜΜ803)

Δημιουργία Εντφπων Intrastat και Ανακεφαλαιωτικοφ Πίνακα

Τεχνητή Νοημοσύνη ΙΙ Εαρινό Εξάμηνο Εργασία ΙΙ: Σχεδιασμός Ημερομηνία Παράδοσης: 26 Μαρτίου 2012

ΕΡΓΑΣΗΡΙΟ ΕΦΑΡΜΟΜΕΝΗ ΠΛΗΡΟΦΟΡΙΚΗ

Πωσ δημιουργώ μάθημα ςτο e-class του ΠΣΔ [επίπεδο 1]

MySchool Πρακτικζσ οδθγίεσ χριςθσ

Διαδικαςία Διαχείριςθσ Στθλϊν Βιβλίου Εςόδων - Εξόδων. (v.1.0.7)

Δομζσ Αφαιρετικότθτα ςτα Δεδομζνα

Internet a jeho role v našem životě Το Διαδίκτυο και ο ρόλοσ του ςτθ ηωι μασ

Εισαγωγικές έννοιες. Αντώνησ Κ Μαώργιώτησ

ΛΕΙΤΟΥΓΙΚΆ ΣΥΣΤΉΜΑΤΑ. 6 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Β

Αναφορά Εργαςίασ Nim Game

Οδθγόσ για τθν αξιοποίθςθ τθσ διαςφνδεςθσ του myschool με το Εκνικό Δθμοτολόγιο

ΑΝΑΠΣΤΞΘ ΕΦΑΡΜΟΓΩΝ Ε ΠΡΟΓΡΑΜΜΑΣΙΣΙΚΟ ΠΕΡΙΒΑΛΛΟΝ 3 ο ΓΕΝΙΚΟ ΛΤΚΕΙΟ Ν. ΜΤΡΝΘ- ΕΠΙΜΕΛΕΙΑ: ΠΤΡΙΔΑΚΘ Λ.

DIOSCOURIDES VERSION

Διαδικασία Δημιοσργίας Ειδικών Λογαριασμών. (v.1.0.7)

Αςκιςεισ ςε (i) Δομζσ Ευρετθρίων και Οργάνωςθ Αρχείων (ii) Κανονικοποίθςθ

Οδηγίεσ για την πρόςβαςη των δικαιοφχων ςτο ΟΠΣΑΑ

Δυναμικι Μθχανϊν I. Διάλεξθ 16. Χειμερινό Εξάμθνο 2013 Τμιμα Μθχανολόγων Μθχ., ΕΜΠ

Ειςαγωγι ςτθν Επιςτιμθ Υπολογιςτϊν. Ειςαγωγι ςτθν Python

Δομζσ Δεδομζνων Πίνακεσ

ΑΤΣΟΝΟΜΟΙ ΠΡΑΚΣΟΡΕ ΕΡΓΑΙΑ ΕΞΑΜΗΝΟΤ HEARTSTONE ΑΛΕΞΑΝΔΡΟ ΛΟΤΚΟΠΟΤΛΟ ΑΜ:

Εργαςτιριο Βάςεων Δεδομζνων

Σχεδίαςη Σφγχρονων Ακολουθιακών Κυκλωμάτων

Ακολουκιακά Λογικά Κυκλώματα

Rivensco Consulting Ltd 1B Georgiou Gemistou street Strovolos Nicosia Cyprus tel tel

eorder Eγχειρίδιο Χρήσης

Transcript:

HAISS 2011: Θερινό Σχολείο Τεχνθτισ Νοθμοςφνθσ stavrosv@di.uoa.gr Ιοφλιοσ 2011 ΣΧΕΔΙΑΣΜΟΣ (PLANNING)..και εφαρμογζσ ςε video games!

Τι είναι ζνα πρόβλθμα ςχεδιαςμοφ; 2 Ασ αρχίςουμε με ζνα απλό παράδειγμα..

Τι είναι ζνα πρόβλθμα ςχεδιαςμοφ; 3 Δίνονται: Αρχικι κατάςταςθ Pictures from Sokoban Geek

Τι είναι ζνα πρόβλθμα ςχεδιαςμοφ; 4 Δίνονται: Αρχικι κατάςταςθ Στόχοσ

Τι είναι ζνα πρόβλθμα ςχεδιαςμοφ; 5 Δίνονται: Αρχικι κατάςταςθ Στόχοσ Διακζςιμεσ ενζργειεσ

Τι είναι ζνα πρόβλθμα ςχεδιαςμοφ; 6 Δίνονται: Αρχικι κατάςταςθ Στόχοσ Διακζςιμεσ ενζργειεσ Ηθτείται: Μια ακολουθία ενεργειών που ικανοποιεί το ςτόχο Ρχ: *Αριςτερά,Κάτω,Αριςτερά,Πάνω, ]

Τι είναι ζνα πρόβλθμα ςχεδιαςμοφ; 7 Δίνονται: Αρχικι κατάςταςθ Στόχοσ Διακζςιμεσ ενζργειεσ Ηθτείται: Μια ακολουθία ενεργειών που ικανοποιεί το ςτόχο Μια μζθοδοσ που βρίςκει λφςθ για κάθε αρχικι κατάςταςθ και ςτόχο

Τι είναι ζνα πρόβλθμα ςχεδιαςμοφ; 8 Δίνονται: Αρχικι κατάςταςθ Στόχοσ Διακζςιμεσ ενζργειεσ Ηθτείται: Μια ακολουθία ενεργειών που ικανοποιεί το ςτόχο Μια μζθοδοσ που βρίςκει λφςθ για κάθε πεδίο εφαρμογισ

Σχεδιαςμόσ: πραγματικζσ εφαρμογζσ 9 Ρολλαπλοί ςτόχοι και χρονοδρομολόγθςθ (Scheduling) Hubble Space Telescope

Σχεδιαςμόσ: πραγματικζσ εφαρμογζσ 10 KIVA Robots: αυτόματθ ταξινόμθςθ παραγγελειϊν με τθ χριςθ μετακινοφμενων διαδρόμων ςε αποκικεσ. youtube link

Σχεδιαςμόσ: πραγματικζσ εφαρμογζσ 11 Ρράκτορεσ με δυνατότθτεσ ςχεδιαςμοφ για τον κακοριςμό τθσ γενικότερθσ ςυμπεριφοράσ τουσ (Proactive Agents/ Cognitive Robots) UAV DARPA Grand/Urban Challenge, Honda ASIMO

Σχεδιαςμόσ (Planning) 12 Μζροσ 1 ο Ειςαγωγι ςτθν αναπαράςταςθ προβλθμάτων ςχεδιαςμοφ με βάςθ τθν γλϊςςα STRIPS Ρροζλαςθ, οπιςκοχϊρθςθ, και ευρετικζσ ςυναρτιςεισ για τθν επίλυςθ προβλθμάτων ςχεδιαςμοφ Αναπαράςταςθ προβλθμάτων ςχεδιαςμοφ ςτθν PDDL Χριςθ του planner BlackBox για τθν επίλυςθ προβλθμάτων ςχεδιαςμοφ ςτο Sokoban

Σχεδιαςμόσ (Planning) 13 Μζροσ 2 ο Video games ςτθν υπθρεςία τθσ τεχνθτισ νοθμοςφνθσ; Ειςαγωγι ςτθν ανάπτυξθ τεχνθτισ νοθμοςφνθσ για χαρακτιρεσ (non-player characters) ςε video games Εφαρμογζσ ςχεδιαςμοφ ςε εμπορικά video games SimpleFPS: Αναπαράςταςθ των βαςικϊν ςτοιχείων ενόσ First-Person Shooter ςε PDDL Χριςθ του planner BlackBox για τθν επίλυςθ προβλθμάτων ςχεδιαςμοφ ςτο πεδίο SimpleFPS

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 14 Δίνονται: Αρχικι κατάςταςθ Στόχοσ Διακζςιμεσ ενζργειεσ Ηθτείται: Μια ακολουθία ενεργειών που ικανοποιεί το ςτόχο

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 15 Ραράδειγμα από τον κόςμο των κφβων (Blocks world) Αρχικι κατάςταςθ: s 0 Στόχοσ: g Α Β Γ s 0 Α Β Γ g Διακζςιμεσ ενζργειεσ: μετακίνθςθ ενόσ κφβου από το τραπζηι ςτθν κορυφι μιασ ςτοίβασ κφβων από τθν κορυφι μιασ ςτοίβασ κφβων ςτο τραπζηι από τθν κορυφι μιασ ςτοίβασ κφβων ςε μια άλλθ ςτοίβα κφβων

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 16 Αρχικι κατάςταςθ Αναπαράςταςθ των ιδιοτιτων τθσ κατάςταςθσ με λεκτικά πρϊτθσ τάξθσ (first order logic literals) Κόςμοσ των κφβων Επί(b,x): το b βρίςκεται πάνω από το x, όπου x κάποιοσ άλλοσ κφβοσ ι το τραπζηι Κακαρό(x): το x είναι ελεφκερο για να τοποκετθκεί πάνω του ζνασ κφβοσ Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) s 0

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 17 Αρχικι κατάςταςθ Αναπαράςταςθ των ιδιοτιτων τθσ αρχικισ κατάςταςθσ με λεκτικά πρϊτθσ τάξθσ (first order logic literals) Βαςικά (ground) και χωρίσ ςυναρτιςεισ (function-free) Πλήρωσ οριςμζνθ κατάςταςθ με βάςθ τθν υπόκεςθ κλειςτοφ κόςμου (closed-world assumption) Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) s 0

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 18 Αρχικι κατάςταςθ Υπόκεςθ κλειςτοφ κόςμου (closed-world assumption) Οι ςυνκικεσ που δεν αναφζρονται ςτθν περιγραφι τθσ κατάςταςθσ κεωροφνται ότι είναι ψευδείσ! Επί(Α,Α) Επί(Α,Β) Επί(Α,Γ) Επί(Β,Α) Επί(Β,Β) Επί(Β,Γ) Επί(Γ,Α) Επί(Γ,Β) Επί(Γ,Γ) Επί(Α,Α) Επί(Α,Β) Επί(Α,Γ) Επί(Τραπζηι,Α) Επί(Τραπζηι,Β) Επί(Τραπζηι,Γ) Επί(Τραπζηι,Τραπ) Κακαρό(Τραπζηι) Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) s 0

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 19 Στόχοσ Αναπαράςταςθ των ιδιοτιτων τθσ τελικισ κατάςταςθσ με λεκτικά πρϊτθσ τάξθσ (first order logic literals) Βαςικά (grounds) και χωρίσ ςυναρτιςεισ (function-free) Α Β Γ Επί(Α,Β) Επί(Β,Γ) Μερικώσ κακοριςμζνθ κατάςταςθ: Μια κατάςταςθ s ικανοποιεί τον ςτόχο g αν περιζχει όλα τα λεκτικά του g (και πικανϊσ και άλλα επιπλζον λεκτικά) g

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 20 Θ αρχικι κατάςταςθ και ο ςτόχοσ του ςχεδιαςμοφ περιγράφονται με λεκτικά τα οποία είναι: Α Β Γ Α Β Γ βαςικά χωρίσ ςυναρτιςεισ κετικά εννοείται θ ςφηευξθ των λεκτικϊν Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) s 0 Επί(Α,Β) Επί(Β,Γ) g

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 21 Διακζςιμεσ ενζργειεσ από το τραπζηι ςτθν κορυφι μιασ ςτοίβασ κφβων από τθν κορυφι μιασ ςτοίβασ κφβων ςτο τραπζηι από τθν κορυφι μιασ ςτοίβασ κφβων ςε μια άλλθ ςτοίβα κφβων Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) s 0

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 22 Διακζςιμεσ ενζργειεσ από το τραπζηι ςτθν κορυφι μιασ ςτοίβασ κφβων από τθν κορυφι μιασ ςτοίβασ κφβων ςτο τραπζηι από τθν κορυφι μιασ ςτοίβασ κφβων ςε μια άλλθ ςτοίβα κφβων Α Β Γ Α Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) Β Γ??? Μετακίνθςθ(Β,Τραπζηι,Γ) s 0 s 1

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 23 Διακζςιμεσ ενζργειεσ Ρροχποκζςεισ: λεκτικά που δθλϊνουν τι κα πρζπει να αλθκεφει ϊςτε θ ενζργεια να είναι εφαρμόςιμθ. Επιδράςεισ: λεκτικά που περιγράφουν τον τρόπο με τον οποίο αλλάηει θ κατάςταςθ Α Β Γ Α Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) Μετακίνθςθ(Β,Τραπζηι,Γ) s 0 s 1 Β Γ???

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 24 Διακζςιμεσ ενζργειεσ Ρροχποκζςεισ: Επί(b,x) Κακαρό(b) Κακαρό(y) Επιδράςεισ: Επί(b,y) Κακαρό(x) Επί(b,x) Κακαρό(y) Α Β Γ Α Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) Μετακίνθςθ(Β,Τραπζηι,Γ) s 0 s 1 Β Γ???

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 25 Διακζςιμεσ ενζργειεσ Ρροχποκζςεισ: Επί(Β,Τραπζηι) Κακαρό(Β) Κακαρό(Γ) Επιδράςεισ: Επί(Β,Γ) Κακαρό(Τραπζηι) Επί(Β,Τραπζηι) Κακαρό(Γ) Α Β Γ Α Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) Μετακίνθςθ(Β,Τραπζηι,Γ) s 0 s 1 Β Γ???

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 26 Διακζςιμεσ ενζργειεσ Ρροχποκζςεισ: Επί(Β,Τραπζηι) Κακαρό(Β) Κακαρό(Γ) Επιδράςεισ: Επί(Β,Γ) Κακαρό(Τραπζηι) Επί(Β,Τραπζηι) Κακαρό(Γ) Α Β Γ Α Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) Επί(Α,Τραπζηι) Επί(Β,Γ) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Τραπ.) Μετακίνθςθ(Β,Τραπζηι,Γ) s 0 s 1 Β Γ

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 27 Διακζςιμεσ ενζργειεσ Ρροχποκζςεισ: Επί(b,x) Κακαρό(b) Κακαρό(y) Επιδράςεισ: Επί(b,y) Κακαρό(x) Επί(b,x) Κακαρό(y) Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Γ) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Τραπ.)?????? Μετακίνθςθ(Γ,Τραπζηι,Α) s 1 s 2

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 28 Διακζςιμεσ ενζργειεσ Ρροχποκζςεισ: Επί(Γ,Τραπζηι) Κακαρό(Γ) Κακαρό(Α) Επιδράςεισ: Επί(Γ,Α) Κακαρό(Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Γ) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Τραπ.)?????? Μετακίνθςθ(Γ,Τραπζηι,Α) s 1 s 2

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 29 Διακζςιμεσ ενζργειεσ Α Ρροχποκζςεισ: Επί(Α,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Επιδράςεισ: Επί(Α,Β) Κακαρό(Τραπζηι) Επί(Α,Τραπζηι) Κακαρό(Β) Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Γ) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Τραπ.) Β Γ??? Μετακίνθςθ(Α,Τραπζηι,Β) s 1 s 2

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 30 Διακζςιμεσ ενζργειεσ Α Ρροχποκζςεισ: Επί(Α,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Επιδράςεισ: Επί(Α,Β) Κακαρό(Τραπζηι) Επί(Α,Τραπζηι) Κακαρό(Β) Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Γ) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Τραπ.) Β Γ Επί(Α,Β) Επί(Β,Γ) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Τραπ.) Μετακίνθςθ(Α,Τραπζηι,Β) s 1 s 2

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 31 Α Α Β Γ Α Β Γ Β Γ Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) Επί(Α,Τραπζηι) Επί(Β,Γ) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Τραπ.) Επί(Α,Β) Επί(Β,Γ) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Τραπ.) Μετακ.(Β,Τραπζηι,Γ) s 0 s 1 Μετακ.(Α,Τραπζηι,Β)s 2

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 32 Α Α Β Β Β Α Β Γ Α Γ Γ Γ Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) Επί(Α,Τραπζηι) Επί(Β,Γ) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Τραπ.) Επί(Α,Β) Επί(Β,Γ) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Τραπ.) Επί(Α,Β) Επί(Β,Γ) Μετακ.(Β,Τραπζηι,Γ) s 0 s 1 Μετακ.(Α,Τραπζηι,Β)s 2 g

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 33 Init( Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) ) Goal( Επί(Α,Β) Επί(Β,Γ) ) Action( Μετακίνθςθ(b,x,y), ΡΟΫΡΟΘΕΣΕΙΣ: Επί(b,x) Κακαρό(b) Κακαρό(y) ΕΡΙΔΑΣΕΙΣ: Επί(b,y) Κακαρό(x) Επί(b,x) Κακαρό(y) ) Action( ΜετακίνθςθΣτοΤραπζηι(b,x), ΡΟΫΡΟΘΕΣΕΙΣ: Επί(b,x) Κακαρό(b) ΕΡΙΔΑΣΕΙΣ: Επί(b,Τραπζηι) Κακαρό(x) Επί(b,x) )

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 34 Συμπεραςμόσ ενεργειϊν (reasoning about action)

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 35 Συμπεραςμόσ ενεργειϊν (reasoning about action) Από το 1971 που προτάκθκε από τουσ R. E. Fikes, N. J. Nilsson ζχουν αναπτυχκεί άλλεσ πολφ πιο εκφραςτικζσ γλϊςςεσ! H γλϊςςα ADL που προτάκθκε το 1988 από τον Edwin P. D. Pednault βαςίηεται ςτθ STRIPS, επιτρζπει όμωσ καταςτάςεισ ανοικτοφ κόςμου, ενζργειεσ με επιδράςεισ υπό περίπτωςθ, ποςοδείκτεσ, και άλλα. O λογιςμόσ καταςτάςεων (situation calculus) όπωσ παρουςιάςτθκε τον 1991 από τον Ray Reiter (και από τουσ John McCarthy, Patrick J. Hayes πολφ νωρίτερα) υποςτθρίηει πλιρθ ςυμπεραςμό πρωτοβάκμιασ τάξθσ, A languages, fluent calculus, event calculus,

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 36 STRIPS! Γιατί μασ αρζςει;

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 37 STRIPS! Γιατί μασ αρζςει; Απλι γλϊςςα περιγραφισ προβλθμάτων ςχεδιαςμοφ Εφκολοσ υπολογιςμόσ των εφαρμόςιμων ενεργειϊν Αρκεί θ λίςτα των προχποκζςεων να είναι υποςφνολο τθσ κατάςταςθσ: ΡΟΫΡΟΘΕΣΕΙΣ S Εφκολοσ υπολογιςμόσ τθσ διάδοχθσ κατάςταςθσ Αρκεί να προςτεκεί θ λίςτα των κετικϊν επιδράςεων ςτθν κατάςταςθ και να αφαιρεκεί θ λίςτα των αρνθτικϊν: S = (S / ΑΝΘΤΙΚΕΣ-ΕΡΙΔΑΣΕΙΣ) ΘΕΤΙΚΕΣ-ΕΡΙΔΑΣΕΙΣ Εφκολοσ ζλεγχοσ αν θ κατάςταςθ ικανοποιεί το ςτόχο Αρκεί ο ςτόχοσ αν είναι υποςφνολο τθσ κατάςταςθσ: G S

Σχεδιαςμόσ με τθ γλϊςςα STRIPS 38 STRIPS! Γιατί μασ αρζςει; Είναι ιδθ ικανι να περιγράψει αρκετά δφςκολα προβλιματα. ασ δοφμε μερικοφσ τρόπουσ επίλυςθσ τζτοιων προβλθμάτων

Αναηιτθςθ ςτο χϊρο καταςτάςεων 39 Επίλυςθ προβλιματοσ ςχεδιαςμοφ STRIPS ςαν πρόβλθμα αναηιτθςθσ ςτον χϊρο καταςτάςεων Init( Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) ) Goal( Επί(Α,Β) ) Action( Μετακίνθςθ(b,x,y), ΡΟΫΡΟΘΕΣΕΙΣ: Επί(b,x) ΕΡΙΔΑΣΕΙΣ: Επί(b,y) ) Action( ΜετακίνθςθΣτοΤραπζηι(b,x), ΡΟΫΡΟΘΕΣΕΙΣ: Επί(b,x) ΕΡΙΔΑΣΕΙΣ: Επί(b,Τραπζηι) )

Ρροζλαςθ (progression planning) 40 Ξεκίνα από τθν αρχικι κατάςταςθ ωσ τρζχουςα κατάςταςθ Ζλεγξε αν ικανοποιεί τον ςτόχο Υπολόγιςε τισ εφαρμόςιμεσ ενζργειεσ ςτθν τρζχουςα κατάςταςθ Υπολόγιςε τισ διάδοχεσ καταςτάςεισ Επζλεξε μια από τισ διάδοχεσ καταςτάςεισ ωσ τρζχουςα Επανάλαβε μζχρι να βρεκεί λφςθ ι να καλυφκεί ο χϊροσ καταςτάςεων

Ρροζλαςθ (progression planning) 41 Ξεκίνα από τθν αρχικι κατάςταςθ Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ)

Ρροζλαςθ (progression planning) 42 Ζλεγξε αν ικανοποιεί τον ςτόχο Πχι! Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ) Επί(Α,Β) Επί(Β,Γ)

Ρροζλαςθ (progression planning) 43 Υπολόγιςε όλεσ τισ εφαρμόςιμεσ ενζργειεσ Action( Μετακίνθςθ(b,x,y), ΡΟΫΡΟΘΕΣΕΙΣ: Επί(b,x) Κακαρό(b) Κακαρό(y)) Action( ΜετακίνθςθΣτοΤραπζηι(b,x), ΡΟΫΡΟΘΕΣΕΙΣ: Επί(b,x) Κακαρό(b)) Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ)

Ρροζλαςθ (progression planning) 44 Υπολόγιςε όλεσ τισ εφαρμόςιμεσ ενζργειεσ Action( Μετακίνθςθ(b,x,y), ΡΟΫΡΟΘΕΣΕΙΣ: Επί(b,x) Κακαρό(b) Κακαρό(y)) Action( ΜετακίνθςθΣτοΤραπζηι(b,x), ΡΟΫΡΟΘΕΣΕΙΣ: Επί(b,x) Κακαρό(b)) Μετ(Α,Τρ,Β) Μετ(Α,Τρ,Γ) Μετ(Β,Τρ,Α) Μετ(Β,Τρ,Γ) Μετ(Γ,Τρ,Α) Μετ(Γ,Τρ,Β) και άλλεσ Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ)

Ρροζλαςθ (progression planning) 45 Υπολόγιςε όλεσ τισ διάδοχεσ καταςτάςεισ Action( Μετακίνθςθ(b,x,y), ΕΡΙΔΑΣΕΙΣ: Επί(b,y) Κακαρό(x) Επί(b,x) Κακαρό(y) ) Μετ(Β,Τρ,Γ) Επιδράςεισ: Επί(Β,Γ) Κακαρό(Τραπζηι) Επί(Β,Τραπζηι) Κακαρό(Γ) Α Β Γ Α Β Γ Επί(Α,Τραπζηι) Επί(Β,Τραπζηι) Επί(Γ,Τραπζηι) Κακαρό(Α) Κακαρό(Β) Κακαρό(Γ)

Ρροζλαςθ (progression planning) 46 Υπολόγιςε όλεσ τισ διάδοχεσ καταςτάςεισ Μετ(Α,Τρ,Γ) Β Α Γ Α Β Γ Μετ(Β,Τρ,Γ) Μετ(Α,Τρ,Β) Γ Α Β Α Β Γ Γ Β Α Μετ(Β,Τρ,Α) Μετ.(Γ,Τρ,Β) Α Γ Β Β Γ Α Μετ(Γ,Τρ,Α)

Ρροζλαςθ (progression planning) 47 Επζλεξε μια διάδοχθ κατάςταςθ και επανάλαβε... Β Α Γ Α Β Γ Α Β Γ Β Α Β Γ Γ Α Γ Γ Α Β Β Α

Ρροζλαςθ (progression planning) 48 Επζλεξε μια διάδοχθ κατάςταςθ και επανάλαβε... Β Α Γ Α Β Γ Α Β Γ Α Β Γ Β Α Β Γ Γ Α Γ Γ Α Β Β Α

Ρροζλαςθ (progression planning) 49 Επζλεξε μια διάδοχθ κατάςταςθ και επανάλαβε... Β Α Γ Α Β Γ Α Β Γ Α Β Γ Β Α Β Γ Γ Α Γ Γ Α Β Β Α

Ρροζλαςθ (progression planning) 50 Είναι ςίγουρο ότι θ προζλαςθ κα βρει μια λφςθ αν υπάρχει; Δεδομζνου ότι δεν ζχουμε ςφμβολα ςυναρτιςεων....ναι, εφόςον ελζγχουμε τθν κάκε δυνατι κατάςταςθ μόνο μια φορά.

Ρροζλαςθ (progression planning) 51 Επζλεξε μια νζα διάδοχθ κατάςταςθ... Β Α Γ Α Β Γ Α Β Γ Α Β Γ Β Α Β Γ Γ Α Γ Γ Α Β Β Α

Ρροζλαςθ (progression planning) 52 Είναι ςίγουρο ότι θ προζλαςθ κα βρει μια λφςθ αν υπάρχει; Δεδομζνου ότι δεν ζχουμε ςφμβολα ςυναρτιςεων....ναι, εφόςον ελζγχουμε τθν κάκε δυνατι κατάςταςθ μόνο μια φορά. Μπορεί όμωσ να χρειαςτεί να εξερευνήςει όλο τον χώρο καταςτάςεων.

Ρροζλαςθ (progression planning) 53 Β Α Γ Β Α Γ Α Β Γ Α Β Γ Γ Γ Α Α Β Β Β Γ Β Α Β Γ Γ Α Α Α Β Γ Γ Γ Γ Β Α Β Β Α Α

Ρροζλαςθ (progression planning) 54 Αντίκετα με το παράδειγμα, ςε πολλά προβλιματα ο χϊροσ καταςτάςεων είναι πολφ μεγάλοσ. Τι κα γινόταν αν είχαμε 100 κφβουσ και 1000 διαφορετικζσ εφαρμόςιμεσ ενζργειεσ τθσ μορφισ Μετακίνθςθ(b,x,y) ςε κάκε κατάςταςθ; Ππωσ και ςτα κλαςςικά προβλιματα αναηιτθςθσ, μποροφμε να ορίςουμε ευρετικζσ ςυναρτήςεισ που βοθκοφν να επιλζξουμε τισ πιο υποςχόμενεσ καταςτάςεισ.

Ευρετικζσ ςυναρτιςεισ για προζλαςθ 55 Συνάρτθςθ αξιολόγιςθσ f(s) = g(s) + h(s) g(s): το κόςτοσ που χρειάςτθκε για να φτάςουμε ςτθν κατάςταςθ s (ακριβζσ) h(s): το κόςτοσ που χρειάηεται για να φτάςουμε από τθν s ςε ζνα τελικό κόμβο (προςζγγιςθ) Χρθςιμοποιοφμε τθν f(s) για να ταξινομιςουμε τισ διάδοχεσ καταςτάςεισ και να επιλζξουμε τθν πιο υποςχόμενθ.

Ευρετικζσ ςυναρτιςεισ για προζλαςθ 56 Ζςτω μια ευρετικι h(s) με τισ ακόλουκεσ τιμζσ: Μετ(Α,Τρ,Γ) g(s)=1 h(s)=2 Β Α Γ Α Β Γ Μετ(Β,Τρ,Γ) g(s)=1 h(s)=1 Μετ(Α,Τρ,Β) g(s)=1 h(s)=1 Γ Α Β Α Β Γ Γ Β Α Μετ(Β,Τρ,Α) g(s)=1 h(s)=2 Μετ.(Γ,Τρ,Β) g(s)=1 h(s)=2 Α Γ Β Β Γ Α Μετ(Γ,Τρ,Α) g(s)=1 h(s)=2

Ευρετικζσ ςυναρτιςεισ για προζλαςθ 57 Ροιά θ διαφορά όμωσ με ζνα κλαςικό πρόβλθμα αναηιτθςθσ; Και ςε εκείνα τα προβλιματα μποροφμε να υπολογίςουμε μια h(s) με βάςθ μια πιο χαλαρι απόςταςθ τθσ s από το ςτόχο, π.χ., Manhattan distance. Μποροφμε να λάβουμε υπόψθ και τθν περιγραφι των ενεργειϊν για να ορίςουμε ευρετικζσ ςυναρτιςεισ!

Ευρετικζσ ςυναρτιςεισ για προζλαςθ 58 Κενι λίςτα προχποκζςεων h(s) = ςε πόςα βιματα μπορεί να επιτευχκεί ο ςτόχοσ αν όλεσ οι ενζργειεσ ιταν εφαρμόςιμεσ πάντα. Κενι λίςτα διαγραφϊν h(s) = ςε πόςα βιματα μπορεί να επιτευχκεί ο ςτόχοσ αν όλεσ οι ενζργειεσ είχαν μόνο κετικζσ επιδράςεισ. Γραφιματα ςχεδιαςμοφ Απλό παράδειγμα: h(s) = αρικμόσ των λεκτικϊν του ςτόχου που δεν εμφανίηονται ςτθν s

Ρροζλαςθ (progression planning) 59 Ξεκίνα από τθν αρχικι κατάςταςθ ωσ τρζχουςα κατάςταςθ Ζλεγξε αν ικανοποιεί τον ςτόχο Υπολόγιςε τισ εφαρμόςιμεσ ενζργειεσ ςτθν τρζχουςα κατάςταςθ Υπολόγιςε τισ διάδοχεσ καταςτάςεισ Επζλεξε μια την πιο υποςχόμενη από τισ διάδοχεσ καταςτάςεισ ωσ τρζχουςα Επανάλαβε μζχρι να βρεκεί λφςθ ι να καλυφκεί ο χϊροσ καταςτάςεων

Ζρευνα ςτο πεδίο του ςχεδιαςμοφ 60 Κλαςικόσ ςχεδιαςμόσ Ρροζλαςθ Οπιςκοχϊρθςθ Ευρετικζσ ςυναρτιςεισ

Ζρευνα ςτο πεδίο του ςχεδιαςμοφ 61 Planning Domain Definition Language (PDDL) Γλϊςςα περιγραφισ προβλθμάτων ςχεδιαςμοφ Τυπικό ςυντακτικό ςαν γλϊςςα προγραμματιςμοφ Δίνει τθ δυνατότθτα ςφγκριςθσ διαφορετικϊν μεκόδων επίλυςθσ προβλθμάτων ςχεδιαςμοφ

Ζρευνα ςτο πεδίο του ςχεδιαςμοφ 62 Planning Domain Definition Language (PDDL) International Planning Competition 1998 ςιμερα SAT Plan TL Plan FF BlackBox SHOP2 TALPlanner Ρροβλιματα ςχεδιαςμοφ ςτθν PDDL, πχ, Blocks world, Storage, Trucks Σφγκριςθ! Συμπεράςματα για ςυνδυαςμό τεχνικϊν και ευρετικϊν ςυναρτιςεων

Planning Domain Description Language 63 Γλϊςςα περιγραφισ προβλθμάτων ςχεδιαςμοφ Τυπικό ςυντακτικό ςαν γλϊςςα προγραμματιςμοφ Αρχικι κατάςταςθ (:init ) Στόχοσ (:goal ) Διακζςιμεσ ενζργειεσ (:action )

Planning Domain Description Language 64 Γλϊςςα περιγραφισ προβλθμάτων ςχεδιαςμοφ Τυπικό ςυντακτικό ςαν γλϊςςα προγραμματιςμοφ Αρχικι κατάςταςθ Α Β Γ (:init ) (on a table) (clear a) (on b table) (clear b) (on c table) (clear c)

Planning Domain Description Language 65 Γλϊςςα περιγραφισ προβλθμάτων ςχεδιαςμοφ Τυπικό ςυντακτικό ςαν γλϊςςα προγραμματιςμοφ Στόχοσ (:goal Α Β Γ ) (and (on a b) (on b c) )

Planning Domain Description Language 66 Γλϊςςα περιγραφισ προβλθμάτων ςχεδιαςμοφ Τυπικό ςυντακτικό ςαν γλϊςςα προγραμματιςμοφ Διακζςιμεσ ενζργειεσ (:action move-block :parameters (?b?x?y) ) :preconditions ( ) :effects ( )

PDDL: το πεδίο blocks 67 blocks-domain.txt: (define (domain gripper) (:requirements :strips) (:predicates (on?x?y) (clear?x)) blocks-problem1.txt: (define (problem gripper1) (:domain gripper) (:objects a b c table) (:action move-to-block :parameters (?b?x?y) :precondition (and (on?b?x) (clear?b) (clear?y)) :effect (and (not (on?b?x)) (not (clear?y)) (on?b?y) (clear?x))) (:init (on a table) (on b table) (on c table) (clear a) (clear b) (clear c) ) (:goal (and (on a b) (on b c))) )

PDDL: χριςθ του planner ΒlackΒox 68 blackbox o blocks-domain.txt f blocks-problem1.txt ---------------------------------------------------- Begin plan 1 (move b table c) 2 (move a table b) End plan ---------------------------------------------------- Α Β C Α Β C

PDDL: χριςθ του planner ΒlackΒox 69 blackbox o blocks-domain.txt f blocks-problem2.txt ---------------------------------------------------- Begin plan 1 (move e b d) 2 (move b table e) 3 (move g f table) 4 (move f c g) 5 (move b e c) 6 (move e d f) 7 (move d a e) 8 (move b c a) 9 (move c table d) 10 (move b a c) 11 (move a table b) End plan G D E F Α Β C Α Β C D E F G

PDDL: χριςθ του planner ΒlackΒox 70 Μποροφμε να κάνουμε το ίδιο για όποιο πρόβλθμα μποροφμε να εκφράςουμε ςε PDDL!

PDDL: χριςθ του planner ΒlackΒox 71 Μποροφμε να κάνουμε το ίδιο για όποιο πρόβλθμα μποροφμε να εκφράςουμε ςε PDDL! Ασ το κάνουμε για το Sokoban..

Το Sokoban ςαν πρόβλθμα ςχεδιαςμοφ 72 Αρχικι κατάςταςθ Στόχοσ Διακζςιμεσ ενζργειεσ

Το Sokoban ςαν πρόβλθμα ςχεδιαςμοφ 73 Αρχικι κατάςταςθ (robot-at?loc) (object-at?b?loc)

Το Sokoban ςαν πρόβλθμα ςχεδιαςμοφ 74 Αρχικι κατάςταςθ (robot-at?loc) c1-3 c2-3 c3-3 c4-4 c4-3 c5-4 c5-3 c6-4 c6-3 (object-at?b?loc) c1-2 c2-2 c3-2 c4-2 c5-2 c1-1 c2-1

Το Sokoban ςαν πρόβλθμα ςχεδιαςμοφ 75 Αρχικι κατάςταςθ (robot-at c5-4) c1-3 c2-3 c4-4 c6-4 c5-3 c6-3 (object-at box1 c3-3) c1-2 c2-2 c3-2 c4-2 c5-2 (object-at box2 c4-3) c1-1 c2-1

Το Sokoban ςαν πρόβλθμα ςχεδιαςμοφ 76 Αρχικι κατάςταςθ (adjacent c2-2 c3-2 right) (adjacent c2-2 c1-2 left) (adjacent c2-2 c2-3 up) c1-2 c2-3 c2-2 c3-2 (adjacent c2-2 c2-1 down) c2-1

Το Sokoban ςαν πρόβλθμα ςχεδιαςμοφ 77 Διακζςιμεσ ενζργειεσ move(?from?to?dir)

Το Sokoban ςαν πρόβλθμα ςχεδιαςμοφ 78 Διακζςιμεσ ενζργειεσ move(?from?to?dir) :precondition (and (robot-at?from) (adjacent?from?to?dir) (empty?to) )

Το Sokoban ςαν πρόβλθμα ςχεδιαςμοφ 79 Διακζςιμεσ ενζργειεσ move(?from?to?dir) :effect (and (empty?from) (robot-at?to) (not (empty?to)) (not (robot-at?from)) )

Το Sokoban ςαν πρόβλθμα ςχεδιαςμοφ 80 Διακζςιμεσ ενζργειεσ push(?rloc?bloc?floc?dir?b)

Το Sokoban ςαν πρόβλθμα ςχεδιαςμοφ 81 Διακζςιμεσ ενζργειεσ push(?rloc?bloc?floc?dir?b) :precondition (and (robot-at?rloc) (object-at?b?bloc) (adjacent?rloc?bloc?dir) (adjacent?bloc?floc?dir) (empty?floc) )

Το Sokoban ςαν πρόβλθμα ςχεδιαςμοφ 82 Διακζςιμεσ ενζργειεσ push(?rloc?bloc?floc?dir?b) :effect (and (robot-at?bloc) (object-at?b?floc) (empty?rloc) (not (robot-at?rloc)) (not (object-at?b?bloc)) (not (empty?floc)) )

PDDL: blackbox 83 blackbox o sokoban-domain.txt f sokoban-problem.txt ---------------------------------------------------- Begin plan 1 (push c4-4 c4-3 c4-2 down box1) 2 (push c4-3 c3-3 c2-3 left box2) 3 (move c3-3 c3-2 down) 4 (move c3-2 c2-2 left) 5 (move c2-2 c1-2 left) 27 (move c2-2 c1-2 left) 28 (move c1-2 c1-3 up) 29 (push c1-3 c2-3 c3-3 right box1) 30 (push c2-3 c3-3 c4-3 right box1) End plan ----------------------------------------------------

Σχεδιαςμόσ (Planning) 84 Μζροσ 2 ο Video games ςτθν υπθρεςία τθσ τεχνθτισ νοθμοςφνθσ; Ειςαγωγι ςτθν ανάπτυξθ τεχνθτισ νοθμοςφνθσ για χαρακτιρεσ (non-player characters) ςε video games Εφαρμογζσ ςχεδιαςμοφ ςε εμπορικά video games SimpleFPS: Αναπαράςταςθ των βαςικϊν ςτοιχείων ενόσ First-Person Shooter ςε PDDL Χριςθ του planner BlackBox για τθν επίλυςθ προβλθμάτων ςχεδιαςμοφ ςτο πεδίο SimpleFPS

Τεχνθτι Νοθμοςφνθ και Video Games 85 Είναι θ τεχνθτι νοθμοςφνθ χριςιμθ για τα video games; Είναι τα video games χριςιμα για τθν τεχνθτι νοθμοςφνθ;

Τεχνθτι Νοθμοςφνθ και Video Games 86 Είναι θ τεχνθτι νοθμοςφνθ χριςιμθ για τα video games; Ναι, γιατί Πχι, γιατί Είναι τα video games χριςιμα για τθν τεχνθτι νοθμοςφνθ; Puzzle games: πολφπλοκα προβλιματα λογικισ Strategy games: πολφπλοκα προβλιματα διαχείριςθσ πόρων και λιψθσ αποφάςεων First-person games: χαρακτιρεσ (non-player characters) ωσ αυτόνομοι πράκτορεσ

Τεχνθτι Νοθμοςφνθ και Video Games 87 Είναι τα video games χριςιμα για τθν τεχνθτι νοθμοςφνθ; Συχνά, τα ρεαλιςτικά προβλιματα ςτον πραγματικό κόςμο είναι πολφ δφςκολα να αντιμετωπιςτοφν Τα video games προςφζρουν ζνα επίπεδο αφαίρεςησ που δίνει τθ δυνατότθτα ςτθν ερευνθτικι κοινότθτα να πειραματιςτεί επικεντρϊνοντασ ςε ςυγκεκριμζνεσ πτυχζσ των προβλθμάτων Ρ.χ., αυτοκινοφμενα οχιματα Στθν Ακινα Στο Grand Theft Auto

Τεχνθτι Νοθμοςφνθ και Video Games 88 Είναι τα video games χριςιμα για τθν τεχνθτι νοθμοςφνθ; Διαγωνιςμοί για ερευνθτικά προβλιματα ςτο πεδίο τθσ τεχνθτισ νοθμοςφνθσ (όπωσ το International Planning Competition που αναφζραμε νωρίτερα) ςε προβλιματα βαςιςμζνα ςε video games!

Ms Pac-Man vs Ghost Team Competition 89 http://www.pacman-vs-ghosts.net

Ms Pac-Man vs Ghost Team Competition 90 http://www.pacman-vs-ghosts.net Φτιάξε ζνα πρόγραμμα που ελζγχει τθν Ms Pac-Man ι ζνα από τα φανταςματάκια 15 φορζσ το δευτερόλεπτο ο game server μεταδίδει τθν κατάςταςθ του παιχνιδιοφ ωσ εικόνα Java API Ρροκεςμία για registration: 17 Αυγοφςτου

Ms Pac-Man vs Ghost Team Competition 91 http://www.pacman-vs-ghosts.net Επόμενοσ διαγωνιςμόσ ςτα πλαίςια του 2011 IEEE Conference on Computational Intelligence and Games (CIG) Ρροκεςμία για registration: 17 Αυγοφςτου

Starcraft Competition 92 http://skatgame.net/mburo/sc2011/

AIIDE Starcraft Competition 93 http://skatgame.net/mburo/sc2011/ Brood War Application Programming Interface: C++ API με το οποίο μπορεί ζνα πρόγραμμα να λαμβάνει πλθροφορίεσ για τθν τρζχουςα κατάςταςθ ελζγχει τα δικά του units http://code.google.com/p/bwapi/

AIIDE Starcraft Competition 94 http://skatgame.net/mburo/sc2011/

AIIDE Starcraft Competition 95 http://skatgame.net/mburo/sc2011/ Επόμενοσ διαγωνιςμόσ ςτα πλαίςια του 2011 Artificial Intelligence and Interactive Digital Entertainment Conference (AIIDE) Ρροκεςμία για registration ιταν 1 Ιουλίου, 30 ομάδεσ κα διαγωνιςτοφν ςτισ 15-19 Αυγοφςτου

General Game Playing Competition 96 http://games.stanford.edu/ Φτιάξε ζνα πρόγραμμα που μπορεί να παίηει (board) games.. γενικά!

General Game Playing Competition 97 http://games.stanford.edu/ Φτιάξε ζνα πρόγραμμα που μπορεί να παίηει (board) games.. γενικά! Στθν αρχι του αγϊνα, το πρόγραμμα λαμβάνει τθν περιγραφι των κανόνων του παιχνιδιοφ ςε μια γλϊςςα που μοιάηει με τθν PDDL C++, Java, Prolog API,

General Game Playing Competition 98 http://games.stanford.edu/ Φτιάξε ζνα πρόγραμμα που μπορεί να παίηει (board) games.. γενικά! Ο τελευταίοσ διαγωνιςμόσ πραγματοποιικθκε 20-21 Ιουλίου ςτο International Joint Conference in Artificial Intelligence (IJCAI) 2011

General Game Playing Competition 99 http://games.stanford.edu/ Φτιάξε ζνα πρόγραμμα που μπορεί να παίηει (board) games.. γενικά! 1st German Open in General Game Playing ςτα πλαίςια του 34th German Conference on Artificial Intelligence (KI) 2011 Ρροκεςμία για registration: Οκτϊβριοσ 2011

Multi-agent programming contest 100 http://www.multiagentcontest.org/ Ζμφαςθ ςε πολφ-πρακτορικά ςυςτιματα Κάκε χρόνο από το 2005 με διαφορετικά ςενάρια που ωκοφν τουσ πράκτορεσ να λειτουργιςουν ωσ ομάδα

Multi-agent programming contest 101 http://www.multiagentcontest.org/

Multi-agent programming contest 102 http://www.multiagentcontest.org/

Multi-agent programming contest 103 http://www.multiagentcontest.org/ Ρροκεςμία για registration: 8 Αυγοφςτου

104 Τεχνθτι Νοθμοςφνθ και Video Games

Τεχνθτι Νοθμοςφνθ και Video Games 105 Είναι θ τεχνθτι νοθμοςφνθ χριςιμθ για τα video games;

Τεχνθτι Νοθμοςφνθ και Video Games 106 Σχεδιαςμόσ μονοπατιϊν (Path planning) A* αναηιτθςθ

Τεχνθτι Νοθμοςφνθ και Video Games 107 Σχεδιαςμόσ μονοπατιϊν (Path planning) A* αναηιτθςθ

Τεχνθτι Νοθμοςφνθ και Video Games 108 Είναι θ τεχνθτι νοθμοςφνθ χριςιμθ για τα video games; Path finding Realistic motion Psychological models Decision making Learning Nonlinear story telling

Τεχνθτι Νοθμοςφνθ και Video Games 109 Είναι θ τεχνθτι νοθμοςφνθ χριςιμθ για τα video games; Ασ εντοπιςτοφμε ςε παιχνίδια με χαρακτιρεσ τθ διαδικαςία λιψθσ αποφάςεων Και ασ κεωριςουμε μια τυπικι περίπτωςθ ενόσ ςφγχρονου εμπορικοφ video game, π.χ., ενόσ First-Person Shooter (FPS)

Τεχνθτι Νοθμοςφνθ και Video Games 110 Είναι θ τεχνθτι νοθμοςφνθ χριςιμθ για τα video games;

Τεχνθτι Νοθμοςφνθ και Video Games 111 Game engine: Δθμιουργεί τα αντικείμενα ςτον χϊρο του video game και υπολογίηει τι ςυμβαίνει ςε αυτόν ςε κάκε frame Ρ.χ., ζνα κιβϊτιο είναι ςτον αζρα ςτο frame1. Στο frame 2 θ GE κα υπολογίςει και κα εμφανίςει τθ νζα του κζςθ C++

Τεχνθτι Νοθμοςφνθ και Video Games 112 Game engine: Δθμιουργεί τα αντικείμενα ςτον χϊρο του video game και υπολογίηει τι ςυμβαίνει ςε αυτόν ςε κάκε frame Ρ.χ., ζνα κιβϊτιο είναι ςτον αζρα ςτο frame1. Στο frame 2 θ GE κα υπολογίςει και κα εμφανίςει τθ νζα του κζςθ C++ Non-player characters: Ζνα αντικείμενο ςτθ game engine Διακζτει μια member function που ενθμερϊνει τθν game engine πϊσ αλλθλεπιδρά με τον χϊρο του video game Βαςίηεται ςε states τθσ μορφισ Attacking, Wounded,

Τεχνθτι Νοθμοςφνθ και Video Games 113 NPC C++ class int NPC::think(){ if (state==idle && energy>70 && enemyinsight()){ state=attacking; makescarysound(); } else if (state==wounded &&...... }

Τεχνθτι Νοθμοςφνθ και Video Games 114 Attack: Engage in combat with the player Evade: Health is low, run in the opposite direction of the player Chase If the player runs away, chase him Wander Explore area, Search for ammo / health if required Spawn Each time NPC dies, it returns to this state. D Dead E Enemy in Sight S Hear a Sound L Remember

Τεχνθτι Νοθμοςφνθ και Video Games 115 Ζνα level από τα μάτια του NPC

Τεχνθτι Νοθμοςφνθ και Video Games 116 Ζνα level από τα μάτια του NPC

Τεχνθτι Νοθμοςφνθ και Video Games 117 Ιςτορικά, θ ςυντριπτικι πλειοψθφία των video games με χαρακτιρεσ χρθςιμοποιοφν Finite State Automata για να χειριςτοφν τθ λιψθ αποφάςεων του χαρακτιρα Με κατάλλθλθ προετοιμαςία των levels δουλεφει πολφ καλά Είναι πολφ εφκολα υλοποιιςιμο Με μικρά hacks μπορεί να χειριςτεί και άλλα του ςτοιχεία του παιχνιδιοφ Σε αυτό το μοντζλο οι ανάγκεσ που προκφπτουν αντιμετωπίηονται εφκολα από τουσ προγραμματιςτζσ

Τεχνθτι Νοθμοςφνθ και Video Games 118 Θ κατάςταςθ ςιμερα Ανοικτοί κόςμοι (open worlds) Οι χαρακτιρεσ χρειάηεται να ζχουν πιο ουςιαςτικι αυτονομία, με ατομικζσ επιδιϊξεισ, ςτόχουσ, και προςωπικότθτα.

Τεχνθτι Νοθμοςφνθ και Video Games 119 Θ κατάςταςθ ςιμερα Σε αυτζσ τισ ςυνκικεσ, οι ςυμπεριφορζσ με FSMs γίνονται περίπλοκεσ και δφςκολθ θ διαχείριςι τουσ....και μια μικρι ςτροφι προσ τεχνικζσ από το πεδίο τθσ τεχνθτισ νοθμοςφνθσ είναι αναγκαία!

120 Τεχνθτι Νοθμοςφνθ και Video Games Scribblenauts

121 Τεχνθτι Νοθμοςφνθ και Video Games Scribblenauts

Τεχνθτι Νοθμοςφνθ και Video Games 122 Είναι θ τεχνθτι νοθμοςφνθ χριςιμθ για τα video games; Hierarchical Task Networks Behavior Trees

Τεχνθτι Νοθμοςφνθ και Video Games 123 Είναι θ τεχνθτι νοθμοςφνθ χριςιμθ για τα video games; Hierarchical Task Networks Behavior Trees Σχεδιαςμόσ με STRIPS!

Τεχνθτι Νοθμοςφνθ και Video Games 124 Ιδζα: Μποροφμε να πετφχουμε πολλζσ διαφορετικζσ ςυμπεριφορζσ δίνοντασ διαφορετικοφσ ςτόχουσ και δυνατότθτεσ ενεργειϊν ςτουσ χαρακτιρεσ και χρθςιμοποιϊντασ ζνα planner για να αποφαςίηει τθν επόμενθ κίνθςθ ςε κάκε ςτιγμι

125 Τεχνθτι Νοθμοςφνθ και Video Games

Τεχνθτι Νοθμοςφνθ και Video Games 126 Γιατί μασ αρζςει; Modular Ρολφ πιο εφκολο ςτθ διαχείριςθ Μπορεί να πετφχει ςυμπεριφορζσ που ικανοποιοφν τισ προδιαγραφζσ χωρίσ να τισ ζχουμε απαρικμιςει από πριν Αλλά χρειάηεται να επιλφει προβλιματα ςχεδιαςμοφ ςε ελάχιςτα frames!

Τεχνθτι Νοθμοςφνθ και Video Games 127 Υπεραπλοφςτευςθ του STRIPS: Τα λεκτικά μετατρζπονται ςε variables χωρίσ ορίςματα Θ κατάςταςθ αποκθκεφεται ωσ πίνακασ με μικρό μζγεκοσ Ζρευνα ςε βάκοσ το πολφ.. 3..αλλά βρίςκει λφςεισ ςε προβλιματα ςχεδιαςμοφ 25 φορζσ το δευτερόλεπτο!

Το πεδίο SimpleFPS 128 Ασ κάνουμε ό,τι και το F.E.A.R. αλλά ςε PDDL και ασ πειραματιςτοφμε με τον BlackBox για τθν επίλυςθ προβλθμάτων ςχεδιαςμοφ ςτον κόςμο ενόσ FPS.

Το πεδίο SimpleFPS 129 Ασ κάνουμε ό,τι και το F.E.A.R. αλλά ςε PDDL και ασ πειραματιςτοφμε με τον BlackBox για τθν επίλυςθ προβλθμάτων ςχεδιαςμοφ ςτον κόςμο ενόσ FPS. Αναπαράςταςθ του κόςμου του FPS ςε «υψθλό επίπεδο» ποιεσ περιοχζσ υπάρχουν ςτο level και πϊσ ςυνδζονται τι αντικείμενα υπάρχουν ςε κάκε περιοχι τι είδουσ ενζργειεσ μπορεί να πραγματοποιιςει το NPC

Το πεδίο SimpleFPS 130 Ασ δοφμε το παρακάτω level

Το πεδίο SimpleFPS 131 Ασ δοφμε το παρακάτω level a1 a2 a3 6 περιοχζσ που ςυνδζονται μεταξφ τουσ με ςυγκεκριμζνο τρόπο: a4 a6 a5

Το πεδίο SimpleFPS 132 Ασ δοφμε το παρακάτω level a1 a2 a3 6 περιοχζσ που ςυνδζονται μεταξφ τουσ με ςυγκεκριμζνο τρόπο: (waypoint door1) a4 (connected a1 a2 door1) a6 a5 (closed door1) (opens door1 keycard1)