4/22/2015bdi agents1 BDI AGENTS n SCOPO DEGLI AGENTI “ BELIEFS, DESIRES AND INTENTIONS” n DEFINIZIONE DI “INTENZIONE” n SPECIFICHE DI AGENTI BDI n ARCHITETTURE.

Slides:



Advertisements
Presentazioni simili
I verbi pronominali Avanzato
Advertisements

Interazione uomo-macchina
U.V.P. la base del Marketing
Intelligenza Artificiale 1
il senso delle nostre azioni
Sistemi Operativi Menù: 1) Introduzione al sistema operativo
Linguaggi di programmazione
Problema e algoritmo Prof. Baldassare Galia 2002.
Algoritmi e Programmazione
Metodologie di Programmazione = decomposizione basata su astrazioni
Basi di dati attive Dispongono di un sottosistema integrato per definire e gestire regole di produzione (regole attive) Regole di tipo: Evento-Condizione-Azione.
Sequential Function Chart (SFC)
Generazione di Piani attraverso Grafi di Pianificazione
Sistemi basati su conoscenza Conoscenza e ragionamento Prof. M.T. PAZIENZA a.a
Gestione dei dati e della conoscenza (agenti intelligenti) M.T. PAZIENZA a.a
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
Intelligenza Artificiale 1 Gestione della conoscenza lezione 8
Sistemi basati su conoscenza Conoscenza e ragionamento Prof. M.T. PAZIENZA a.a
Algoritmi Paralleli e Distribuiti a.a. 2008/09 Lezione del 29/05/2009 Prof. ssa ROSSELLA PETRESCHI a cura del Dott. SAVERIO CAMINITI.
Lo sviluppo del linguaggio nel bambino
Avviamento ai giochi sportivi
Ricerca della Legge di Controllo
Gioco conversazionale
Le transazioni Itis Max Planck.
AN FI Un denominatoe comune Comandi u notazioni che esprimono azioni che, una volta eseguite, comportano una modifica permanente dello stato interno.
Elementi di Informatica
Lezione del 6 giugno A) Planning con SMODELS (vedere programma di esempio) B) Struttura di un robot.
Intenzionalità Intenzione si definisce come direzionalità (essere riferito sempre a qualche cosa, aboutness) e come deliberazione (corrisponde alla possibilità.
PROSPETTIVA PSICOLOGICA Azione presume che vi sia un individuo in grado di: 1) rappresentarsi e prefigurarsi il futuro 2) scegliere 3) decidere in modo.
Progetto SKILL LAB Centro Giovanile Meltin Pop di Aron a
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
CONOSCERE E UTILIZZARE LA COMUNICAZIONE AUMENTATIVA ALTERNATIVA
Il prestito.
Algoritmi e Strutture Dati
Il modello di riferimento OSI
Le intenzioni nellazione collaborativa fra agenti Guido Boella Dipartimento di Informatica Università di Torino.
Pensiero, Ragionamento & Intelligenza
Quando fa bene dire “NO”
Gian Luca Pozzato. AgentSpeak (L) & Jason AgentSpeak(L): linguaggio di programmazione per agenti BDI introdotto da Rao nel 1996 Si propone di colmare.
IO E LA MATEMATICA PROCEDURALE
Sistemi basati su conoscenza Gestione della conoscenza Prof. M.T. PAZIENZA a.a
Robotica Lezione 6. Paradigma Gerarchico Il paradigma gerarchico, altrimenti detto knowledge-based, procede top-down dalla definizione del compito assegnato.
Intelligenza Artificiale 2 Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
LA MOTIVAZIONE Tutte le azioni dell’uomo sono determinate da ciò che egli pensa, crede, prevede. Ma che cosa spinge gli uomini a compiere determinate azioni,
Algoritmi online Maria Simi, a.a. 2007/08 Problemi di esplorazione  Gli agenti per il problem-solving assumono:  ambienti deterministici e osservabili.
Robotica Lezione 4. 2 Attributi dell’Intelligenza Pensiero Capacita’ a risolvere problemi Apprendimento e Memoria Linguaggio Intuizione e Creativita’
ITL1121 ITL112 ELEMENTARY ITALIAN II Andrea Fedi.
4/20/20151 Metodi formali dello sviluppo software a.a.2013/2014 Prof. Anna Labella.
UN’INTRODUZIONE AI SISTEMI AD AGENTE E MULTIAGENTE Sistemi per il governo dei Robot,
1 Tipi di Dato §descrittori, tipi, controllo e inferenza dei tipi §specifica (semantica) e implementazione di tipi di dato l implementazioni “sequenziali”
Intelligenza Artificiale Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Paola Disisto, Erika Griffini, Yris Noriega.  Insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce.
1 Ordinamento (Sorting) INPUT: Sequenza di n numeri OUTPUT: Permutazione π = tale che a 1 ’  a 2 ’  … …  a n ’ Continuiamo a discutere il problema dell’ordinamento:
Intelligenza Artificiale 1 Gestione della conoscenza lezione 2 Prof. M.T. PAZIENZA a.a
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
Intelligenza Artificiale Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Reti di calcolatori LS1 Service Middleware Reti di calcolatori LS progetto di Andrea Belardi Infrastruttura dedicata alla gestione di servizi disponibili.
1 Ordinamento (Sorting) Input: Sequenza di n numeri Output: Permutazione π = tale che: a i 1  a i 2  ……  a i n Continuiamo a discutere il problema dell’ordinamento:
Automi temporizzati.
Intelligenza Artificiale Metodologie di ragionamento Prof. M.T. PAZIENZA a.a
Algoritmi golosi Tecniche di soluzione dei problemi viste finora:
Francesco Maiorano PIST Peucetia: LA MAPPA DI COMUN ITA’
Intervista al genio della porta accanto. ? ? ? ? ? ?
Algoritmi e Strutture Dati HeapSort. Select Sort: intuizioni L’algoritmo Select-Sort  scandisce tutti gli elementi dell’array a partire dall’ultimo elemento.
Le basi di dati.
Oggi è il quattordici maggio LO SCOPO: Date la prova e cominciamo il ripasso per l’esame finale. FATE ADESSO: Studiate per cinque minuti.
Algoritmi e Strutture Dati Luciano Gualà
Week-end giovanissimi 14 – 15 marzo 2009 Tema: Bene Comune Passo biblico: La casa sulla roccia.
Interrogantes para ateos Significa la stessa cosa “credo che” e “opino che”? Domande per gli atei.
SCOPO DEGLI AGENTI “ BELIEFS, DESIRES AND INTENTIONS”
Transcript della presentazione:

4/22/2015bdi agents1 BDI AGENTS n SCOPO DEGLI AGENTI “ BELIEFS, DESIRES AND INTENTIONS” n DEFINIZIONE DI “INTENZIONE” n SPECIFICHE DI AGENTI BDI n ARCHITETTURE PER AGENTI BDI

4/22/2015bdi agents2 SCOPO DEGLI AGENTI “ BELIEFS, DESIRES AND INTENTIONS” Esigenza che si vuole risolvere: “Costruire sistemi che sono situati in ambienti dinamici e che devono ragionare e pianificare, e agire con forti vincoli di tempo. Il sistema deve essere contemporaneamente goal directed e reattivo” [Rao & Georgeff 1992]

4/22/2015bdi agents3 SITUATEDNESS: non solo sono collocati in un ambiente in cui agiscono, ma, soprattutto, possiedono una rappresentazione simbolica di esso PIANIFICARE: costruiscono e/o scelgono delle sequenze di azioni che permettono di rendere vero un certo stato del mondo VINCOLI TEMPORALI: tali sistemi non dispongono di risorse infinite: “resource boundedness” GOAL DIRECTED: devono cercare di ottenere un certo scopo REACTIVITY: devono reagire di fronte a cambiamenti dell’ambiente

4/22/2015bdi agents4 NASA: Deep Space 1 remote agent experiment

4/22/2015bdi agents5 Robocup

4/22/2015bdi agents6 ESEMPI DI DOMINI DI APPLICAZIONE Automatizzazione delle procedure usate dagli astronauti sullo Space Shuttle per gestire i malfunzionamenti dei propulsion flight controllers. PRS [Georgeff & Ingrand,1988] Automatizzazione dei controllori di volo che coordinano l’arrivo degli aerei in aeroporto [Rao & Georgeff, 1992] Simulatori

4/22/2015bdi agents7 HUMAN AGENTHOOD Il modello che i bdi agents vogliono imitare e’ il comportamento umano. In particolare il fatto che gli esseri umani siano guidati da tre “attitudini”: Ambiguo fra il significato di scopo e desiderio. BELIEFS, DESIRES AND INTENTIONS CREDENZE, GOAL E INTENZIONI

4/22/2015bdi agents8 Bratman: “What Is Intention?” 2 possibili interpretazioni della parola: – Azione: “l’ha ucciso intenzionalmente” – Stato mentale: “ho l’intenzione di andare a vedere Titanic” Proprieta’: – future directed: *“ho l’intenzione di andare al cinema ieri” – stato mentale che influenza il comportamento futuro – stabili (“committment”) ma revocabili: non posso prevedere cosa accadra’ in futuro, quindi devo poter cambiare idea.

4/22/2015bdi agents9 “Why bother today to have an intention about tomorrow?” n Perche’ non attendere domani sera prima di formarmi (ora) l’intenzione di andare al cinema? n Perche’ sprecare risorse per formarmi delle intenzioni ora, se non so cosa accadra’ domani (ad es. Mi potrebbero invitare a cena)? Soluzione alternativa: utilizzare un pianificatore classico e poi scegliere fra le opzioni che propone

4/22/2015bdi agents10 Planning + Practical Reasoning? n Scelgo un obbiettivo n Costruisco un piano completo che lo soddisfi n Scelgo fra le alternative tramite “decision theory” (probabilita’ eventi + utility function) Limiti: n devo conoscere lo stato del mondo n piu’ tempo passo a pianificare e decidere, maggiore e’ la probabilita’ che il mondo cambi n ad ogni cambiamento del mondo devo ricominciare da capo

4/22/2015bdi agents A B C D put(?x,?y) INITIAL STATE:

4/22/2015bdi agents GOAL:

4/22/2015bdi agents13

4/22/2015bdi agents14 Planning + Practical Reasoning? n Pianifico n Scelgo n Eseguo un passo n da capo

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(3,C);put(2,1);put(3,2) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(3,C);put(2,1);put(3,2) put(3,C) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(3,C);put(2,1);put(3,2) put(3,C) put(1,A);put(3,C);put(2,1);put(3,2) A B C D

4/22/2015bdi agents A B C D put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(3,C);put(2,1);put(3,2) put(3,C) put(1,A);put(3,C);put(2,1);put(3,2) put(2,1)

4/22/2015bdi agents A B C D put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(3,C);put(2,1);put(3,2) put(3,C) put(1,A);put(3,C);put(2,1);put(3,2) put(2,1) put(1,A);put(3,C);put(2,1);put(3,2)

4/22/2015bdi agents A B C D put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(3,C);put(2,1);put(3,2) put(3,C) put(1,A);put(3,C);put(2,1);put(3,2) put(2,1) put(1,A);put(3,C);put(2,1);put(3,2) put(3,2)

4/22/2015bdi agents23 Corriere della Sera “Con la Croazia non doveva far giocare Maldini in condizioni precarie. Totti era troppo arretrato ed aveva perso brillantezza. Iuliano è forse meno emotivo e più esperto di Materazzi. L’errore più grave è stato quello di non mandar dentro gente fresca verso il 20’ della ripresa. Ha perso troppi minuti a decidere. Di questo è giusto chiedergli conto, …”

4/22/2015bdi agents24 Planning + Practical Reasoning? n Pianifico n Scelgo n Eseguo tutti i passi n da capo

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) put(2,1) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) put(2,1) put(3,2) A B C D

4/22/2015bdi agents30

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) A B C D

4/22/2015bdi agents35 13 put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) put(2,1) A B C D 4 2

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) put(2,1) put(3,2) A B C D 4

4/22/2015bdi agents37 Planning + Practical Reasoning? n Pianifico n Scelgo n Eseguo un passo (1) n Controllo il piano sia eseguibile: vado a (1) n se il piano è finito o non eseguibile: da capo

4/22/2015bdi agents38

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) put(2,1) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) put(2,1) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) put(2,1) put(3,2) A B C D 4

4/22/2015bdi agents45 Planning + Practical Reasoning? n Pianifico n Scelgo n Eseguo un passo (1) n Controllo il piano sia eseguibile o il goal soddisfatto: vado a (1) n se il piano è finito o non eseguibile: da capo

4/22/2015bdi agents46

4/22/2015bdi agents47 Planning + Practical Reasoning? n Pianifico (e ripianifico dal piano esistente) n Scelgo n Eseguo un passo (1) n Controllo il piano sia eseguibile o il goal soddisfatto: vado a (1) n se il piano è finito o non eseguibile: da capo

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A); A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(3,D);put(2,1);put(3,2) put(3,D) A B C D put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(3,D);put(2,3);put(1,2)...

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(3,D);put(2,1);put(3,2) put(3,D) put(2,1)... A B C D 3 4

4/22/2015bdi agents53

4/22/2015bdi agents54 Planning + Practical Reasoning? n Pianifico (e ripianifico dal piano esistente) n Scelgo n Eseguo un passo (1) n Controllo il piano sia eseguibile o il goal soddisfatto: vado a (1) (anche se perdo delle opportunità!) n se il piano è finito o non eseguibile: da capo

4/22/2015bdi agents put(1,A);put(3,D);put(2,1);put(3,2) A B C D 4

4/22/2015bdi agents put(1,A);put(3,D);put(2,1);put(3,2) put(1,A) A B C D 4

4/22/2015bdi agents put(1,A);put(3,D);put(2,1);put(3,2) put(1,A) A B C D put(1,A);put(3,D);put(2,1);put(3,2) put(1,A) put(1,A);put(3,C);put(2,1);put(3,2)

4/22/2015bdi agents put(1,A);put(3,D);put(2,1);put(3,2) put(1,A) put(3,D) A B C D

4/22/2015bdi agents A B C D 3 put(1,A);put(3,D);put(2,1);put(3,2) put(1,A) put(3,D) put(2,1)

4/22/2015bdi agents put(1,A);put(3,D);put(2,1);put(3,2) put(1,A) put(3,D) put(2,1) put(3,2) A B C D

4/22/2015bdi agents61

4/22/2015bdi agents62 Planning + Practical Reasoning? n Pianifico n Scelgo n Se ci sono nuovi goal modifico la soluzione corrente (1) n Eseguo un passo n vado a (1)

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(5,D);put(3,C);put(2,1);put(3,2) A B C D GOAL: on(5,?x) put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(5,C);put(3,D);put(2,1);put(3,2)...

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(5,D);put(3,C);put(2,1);put(3,2) put(5,D) A B C D GOAL: on(5,?x) 5

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(5,D);put(3,C);put(2,1);put(3,2) put(5,D) put(3,C) A B C D 5

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(5,D);put(3,C);put(2,1);put(3,2) put(5,D) put(3,C) put(2,1) A B C D 5

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(1,A);put(5,D);put(3,C);put(2,1);put(3,2) put(5,D) put(3,C) put(2,1) put(3,2) A B C D 5

4/22/2015bdi agents70 Planning + Practical Reasoning? n Pianifico n Scelgo (il piano migliore) n Eseguo un passo n da capo

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) A B C D heavy light

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) A B C D heavy light

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) A B C D heavy light

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) A B C D heavy light

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) put(1,A);put(3,C);put(2,3);put(1,2) A B C D heavy light

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) put(1,A);put(3,C);put(2,3);put(1,2) put(2,3) A B C D heavy light

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) put(1,A);put(3,C);put(2,3);put(1,2) put(2,3) put(1,A);put(3,C);put(2,3);put(2,1);put(3,2) A B C D heavy light

4/22/2015bdi agents78

4/22/2015bdi agents79 Planning + Practical Reasoning? n Pianifico (in modo minimale) n Scelgo n Eseguo un passo (1) n Controllo il piano sia eseguibile o il goal soddisfatto: vado a (1) n se il piano è finito o non eseguibile: da capo

4/22/2015bdi agents put(1,?x);put(3,?y);put(2,1);put(3,2) A B C D

4/22/2015bdi agents put(1,?x);put(3,?y);put(2,1);put(3,2) put(1,A);put(3,?y);put(2,1);put(3,2) put(1,A); A B C D

4/22/2015bdi agents put(1,?x);put(3,?y);put(2,1);put(3,2) put(1,A);put(3,?y);put(2,1);put(3,2) put(1,A) put(1,A);put(3,C);put(2,1);put(3,2) put(3,C) A B C D

4/22/2015bdi agents A B C D put(1,?x);put(3,?y);put(2,1);put(3,2) put(1,A);put(3,?y);put(2,1);put(3,2) put(1,A) put(1,A);put(3,C);put(2,1);put(3,2) put(3,C) put(2,1)

4/22/2015bdi agents A B C D put(1,?x);put(3,?y);put(2,1);put(3,2) put(1,A);put(3,?y);put(2,1);put(3,2) put(1,A) put(1,A);put(3,C);put(2,1);put(3,2) put(3,C) put(2,1) put(3,2)

4/22/2015bdi agents85

4/22/2015bdi agents put(1,?x);put(3,?y);put(2,1);put(3,2) A B C D

4/22/2015bdi agents put(1,A);put(3,?y);put(2,1);put(3,2) put(1,A); A B C D

4/22/2015bdi agents put(1,A);put(3,?y);put(2,1);put(3,2) put(1,A); A B C D

4/22/2015bdi agents put(1,A);put(3,D);put(2,1);put(3,2) put(1,A) put(3,D) A B C D

4/22/2015bdi agents put(1,A);put(3,D);put(2,1);put(3,2) put(1,A) put(3,D) put(2,1) A B C D 3 4

4/22/2015bdi agents put(1,A);put(3,D);put(2,1);put(3,2) put(1,A) put(3,D) put(2,1) put(3,2) A B C D 4

4/22/2015bdi agents92

4/22/2015bdi agents put(1,?x);put(3,?y);put(2,1);put(3,2) A B C D 4

4/22/2015bdi agents put(1,A);put(3,?y);put(2,1);put(3,2) put(1,A); A B C D 4

4/22/2015bdi agents put(1,A);put(3,?y);put(2,1);put(3,2) put(1,A); A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) A B C D

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) put(2,1) A B C D 3

4/22/2015bdi agents put(1,A);put(3,C);put(2,1);put(3,2) put(1,A) put(3,C) put(2,1) put(3,2) A B C D

4/22/2015bdi agents99 RUOLO DELLE INTENZIONI Questi problemi sono dovuti alla “resource boundedness”: il ruolo delle intenzioni e’ di limitare lo spazio di ricerca del planning e quello della scelta fra le opzioni. Per questo motivo le intenzioni: n sono future directed e (relativamente) stabili: se stabilisco ora una linea di azione per il futuro, le scelte successive dovranno essere compatibili con questa: limito le opzioni possibili. Se ho l’intenzione di andare domattina a prendere un libro in biblioteca, non prendero’ in considerazione l’azione di andare a giocare a tennis

4/22/2015bdi agents100 Riguardano piani parziali: non conoscendo in anticipo come puo’ evolvere il mondo, costruisco dei piani che sono incompleti temporalmente (non stabilisco l’ordinamento completo delle azioni) o strutturalmente (non scelgo come eseguire delle azioni complesse). Esempio: Posso avere l’intenzione di andare a prendere un libro in biblioteca, senza aver necessariamente costruito un piano in tutti i suoi dettagli (posso non aver ancora scelto se andare in macchina o prendere il tram, perche’ non so se ci sara’ sciopero). Costituiscono l’input per ulteriori fasi di pianificazione

4/22/2015bdi agents101 PARTIAL PLANS: hierarchical organization of actions Get-book Buy-bookBorrow-book Go(library)Read(location)Fill(sheet,location) Walk(library)Drive(library) Piano completo: Walk(library);Read(location);Fill(sheet,location)...

4/22/2015bdi agents102 HAVING A PLAN [Pollack,1990] distingue due significati del concetto di avere un piano: n avere la conoscenza riguardo all’esecuzione di un certo compito (ad es. possedere una libreria di piani) n essere nello stato mentale di avere l’intenzione di eseguire un piano: devo credere che il piano sia eseguibile, credo che intendo eseguirlo per raggiungere un certo scopo, devo avere l’intenzione di eseguire tutti i passi del piano...

4/22/2015bdi agents103 INTENZIONI E CREDENZE n Intendo solo cio’ che credo possibile (i.e. esiste un piano che ritengo eseguibile) n credo che eseguiro’ quello che intendo: se intendo andare al cinema domani, credo che domani saro’ al cinema e non a casa (“conduct coordinating pro-attitude”) n la stabilita’ delle intenzioni implica che, se fallisce il mio piano, ne cerchero’ un altro per raggiungere il mio scopo n controllo se l’esecuzione di un piano ha avuto successo n non intendo quelle che credo essere le conseguenze indesiderate delle mie azioni (problema dei “side effects”)

4/22/2015bdi agents104 SIDE EFFECTS Intend(A)  Bel(A  B) Intend(B) ? Non voglio essere committed verso B: altrimenti dovrei perseguire B anche se A e’ gia’ realizzato (e quindi le mie credenze erano sbagliate). Esempio: Strategic bomber: Intend(bombardare la fabbrica) ma Bel(bombardare la fabbrica  uccidere i bimbi della scuola) Terror bomber: Intend(uccidere i bimbi della scuola)

4/22/2015bdi agents105 ARCHITETTURA ASTRATTA Intentions structured into plans Filtering process means-end reasoning Deliberation process Desires Opportunity analyser Beliefs Reasoner Plan library perception action intentions option

4/22/2015bdi agents106 SPECIFICHE DI AGENTI BDI [Cohen & Levesque, 1990] propongono una formalizzazione della relazione fra credenze, goal e intenzioni per mezzo di una logica modale. Danno una specifica di cosa e’ un agente BDI, non un formalismo per costruire sistemi. Dichiarativita’: non solo definizione operazionale (i.e. architettura di agente) perche’ e’ necessario poter parlare delle intenzioni di un agente.

4/22/2015bdi agents107 MODAL LOGIC Le intenzioni sono modellate come un concetto complesso e definite in termini di belief e goal di un agente: utilizzano degli operatori modali basati su una semantica a mondi possibili. L’oggetto di una intenzione puo’ essere un’azione: estensione della logica modale per rappresentare azioni : Ogni mondo deve essere una sequenza di stati collegati da azioni che scandiscono il tempo a1a1 a0a0 a2a2 a3a3 a4a4 A B A  B  A  B A  B nn-1n+1n+2

4/22/2015bdi agents108 BELIEFS and ACTIONS a1a1 a0a0 a2a2 a3a3 a4a4 A B ABAB ABAB ABAB nn-1n+1n+2 a1a1 apap a2a2 akak anan A B A  B A BA B nn-1n+1n+2 a1a1 ahah a2a2 aiai amam A B A BA B ABAB ABAB nn-1n+1n+2 BxBx A BA B A   B  Bel x (A)   Bel x (B) B x : (P  N  ) 11 00 22

4/22/2015bdi agents109 GOALS and ACTIONS a1a1 a0a0 a2a2 a3a3 a4a4 A B ABAB ABAB ABAB nn-1n+1n+2 a1a1 apap a2a2 akak anan A B ABABABAB nn-1n+1n+2 GxGx  A B G x : (P  N  ) 11 00 Goal x (A)  Goal x (happens(a 2 ;B))

4/22/2015bdi agents110 REPRESENTING ACTIONS Bisogna poter parlare delle azioni, di cio’ che e’ (creduto) vero dopo un’azione o nel futuro: happens(a 2 )  happens(a 2 ;a 3 ) Bel x (happens(a 2 )  done(a 1 )) happens(a 2 ;  A?)(test action) Bel x (  B)(eventually) where  P  e|happens(e;P?) later(  A) where later(P)   P   P before(P,Q)

4/22/2015bdi agents111 PROPRIETA’ di Bel e Goal n Realismo: non posso scegliere cio’ che credo falso: i mondi accessibili via relazione G devono essere un sottoinsieme di quelli accessibili via B n Se credo vero qualcosa non posso non volerlo: Bel x (P)  Goal x (P) (nello stesso istante temporale) n serialita’ di B e G (consistenza): Goal x (P)   Goal x (  P) n chiusura rispetto a implicazione (e side effects): (Goal x (P)  Goal x (P  Q))  Goal x (Q) notare che Bel x (P  Q)  Goal x (P  Q) n if |=  then Goal x (  ) n |=   Goal x (later(P)) (no infinite deferral)

4/22/2015bdi agents112 PERMANENT GOAL Achieavement goal (vs maintaineance): A-Goal x (P)  Goal x (later(P))  Bel x (  P) Committment (fanatical): goal permanente a certe condizioni P-Goal x (P)  A-Goal x (P)  Bel x (  P)  before[(Bel x (P)  Bel x (  P)),  Goal x (later(P))] Relative committment: P-R-Goal x (P,Q)  A-Goal x (P)  Bel x (  P)  before[(Bel x (P)  Bel x (  P)  Bel x (  Q) ),  Goal x (later(P))]

4/22/2015bdi agents113 INTENDING ACTIONS Intend1 x (a)  P-Goal x [done x (Bel x (happens x (a;P?))?;a;P?)] a1a1... aa3a3 a4a4 PP P nn-1n+1n+2 a1a1...a2a2 nn-1n+1n+2 a1a1 ahah a... PP P nn-1n+1n+2 BxBx P 11 00 22.. GxGx PP

4/22/2015bdi agents114 INTENDING STATES Intend2 x (P)  P-Goal x {  e |done x [Bel x (  e 1 |happens x (e 1 ;P?))   Goal x (  happens x (e;P?))]?;e;P?} Quantificazione esterna al belief: x non sa ancora quale azione eseguira’ (forse e 1  e), ma l’azione e 1 effettivamente eseguita non deve essere contraria ai goal di x. Esempio dell’uccisione dello zio: voglio uccidere mio zio, ma mentre vado a casa sua investo un pedone; il pedone e’ mio zio ma non l’ho ucciso intenzionalmente.

4/22/2015bdi agents115 INTENTIONS FOR MULTIAGENTS Se invece di un singolo agente si ha a che fare con un gruppo che deve eseguire un certo compito, e’ necessaria una nuova nozione di intenzione che permetta di coordinare l’attivita’ del gruppo. L’intenzione resta uno stato mentale del singolo agente, ma include delle nuove condizioni. Cosi’ come le azioni sono sempre eseguite da un singolo agente. In particolare, per coordinare un gruppo di agenti e’ necessaria la comunicazione fra loro, in modo che la loro azione non prenda strade divergenti. Non e’ sufficiente avere l’intenzione di eseguire la propria parte del piano e il mutual belief che gli altri hanno tale intenzione.

4/22/2015bdi agents116 Esempio del “convoglio” [Cohen & Levesque, 91] A non sa la strada per andare a casa ma sa che B per andare a casa propria passa davanti alla sua. n A segue B senza dirglielo ma B guida troppo veloce e A si perde. n B sa che qualcuno lo seguira’ per andare a casa: pero’, se A si ferma per un guasto B crede che A sia arrivato e accellera. n A arriva a casa e si ferma. Credendo che ci sia un guasto B si ferma e aspetta n A a meta’ strada capisce dove si trova e da quel punto puo’ procedere da solo: ma B continua voler passare davanti a casa di A e a procedere non troppo forte.

4/22/2015bdi agents117 JOINT INTENTION Un gruppo di agenti ha un joint persistent goal di ottenere P relativo a Q sse: n tutti i membri del gruppo credono che P e’ falso n tutti mutualmente credono che tutti hanno  P come goal n e’ creduto mutualmente che continueranno ad avere un weak achievement goal fino a che non sara’ conoscenza mutua fra loro che P e’ vero o che P e’ impossibile da raggiungere o che Q e’ diventato falso. Weak achievement goal P: Un agente ha il goal  P e crede che P e’ falso oppure crede che che P e’ vero, irrilevante o impossibile da raggiungere e ha il goal che tale situazione sia mutua conoscenza di tutti i membri del gruppo.

4/22/2015bdi agents118 ARCHITETTURE PER AGENTI BDI Non e’ possibile utilizzare una formalizzazione logica come quella di Cohen & Levesque assieme ad un theorem prover perche’ non ho garanzie sul tempo di esecuzione del theorem prover e quindi perderei la reattivita’ del sistema. Anche le procedure di ragionamento sui beliefs e il meccanismo di decisione non puo’ essere implementato per mezzo di un theorem prover perche’ si pone lo stesso problema. Utilizzo uno strumento uniforme: tutta la conoscenza e’ espressa sotto forma di piani (anche quella per ragionare sui beliefs e per prendere decisioni) e gestita da un interprete.

4/22/2015bdi agents119 ARCHITETTURA di PRS (Georgeff et al.) Unico modulo di ragionamento

4/22/2015bdi agents120 Knowledge Areas = Plans type: drink-cola invocation: goal-add(  thirst) precondition:have-glass add-list: {  thirst} body: start have-cola drink 1 end proposition action type: drink-water invocation: goal-add(  thirst) precondition:have-glass add-list: {  thirst} body: start open-tap drink 1 end

4/22/2015bdi agents121 BDI INTERPRETER() Initialize state(); do options := option-generator(event-queue, B,G,I); selected-option := deliberate(options,B,G,I); I :=update-intentions(selected-option,I); execute(I); event-queue := event-queue + get-new-external-events(); drop-successful-attitudes(B,G,I); drop-impossible-attitudes(B,G,I); until quit. eventi interni ed esterni anche esito azioni bound on reaction time atomic actions beliefs espliciti no chiusura

4/22/2015bdi agents122 Option-generator(event-queue,B,G,I) options := {}; for trigger-event  event-queue do for plan  plan-library do if matches(invocation-cond(plans),trigger-event) then options := options + plan; return(options).

4/22/2015bdi agents123 Deliberate(options,B,G,I) if length(options) < 2 then return(options) else metalevel-options := (belief-add(option-set(options))); selected-option := deliberate(metalevel-options); if null(selected-option) then return(random-choice(options)); else return(selected-option).

4/22/2015bdi agents124 Meta Knowledge Areas type: meta-selector invocation: lenght(options)>1 add-list: {goal-add(?x)} body: start Bel(cheap(?x)) end 1 Bel(  ?x  cheap(?x)) ?x := random- choice(options) type: prove B invocation: goal-add(Bel(B)) precondition: Bel(A) add-list: {Bel(B)} body: end 2 goal-add(?x)

4/22/2015bdi agents125 Intention structure BeliefsGoalsIntentions cheap(drink-water)  thirst  have-glass  thirst option-set(drink-cola,drink-water) meta-selector Bel(cheap(?x)) ?x=drink-waterdrink-water open-tap drink  thirst