Modelli e metafore: il caso degli agenti
Temi filosofici dell’informatica
12 maggio 2008
Modelli e metafore





2
I modelli scientifici come metafore
Una teoria della metafora
Il ruolo delle metafore nella concettualizzazione e nella
spiegazione scientifica
Le metafore: dalla scienza all’ingegneria informatica
Le metafore dell’ingegneria informatica: il concetto di
agente come esempio
Temi filosofici dell’informatica
Teorie: la visione tradizionale


3
Nella visione tradizionale in voga fino all’inizio degli anni
’50 una teoria scientifica consiste in
 Un sistema assiomatico espresso mediante la logica del
primo ordine, dove gli assiomi sono formulazioni delle
leggi che specificano le relazioni fra i termini teorici di
una teoria
 Delle regole di corrispondenza che specificano le
procedure sperimentali ammissibili per applicare le
teorie ai fenomeni
Secondo la visione sintattica dell’empirismo logico le teorie
sono spiegate nei termini della loro forma logica
Temi filosofici dell’informatica
Contro i modelli



4
Nella visione sintattica i modelli sono irrilevanti per la
scienza e, al massimo, possono avere un ruolo
pedagogico, estetico o psicologico
Per Rudolf Carnap i modelli hanno valenza didattica ed
eventualmente euristica, ma non sono essenziali per la
corretta applicazione di una teoria fisica
Per Pierre Duhem i modelli introducono confusione perché
consentono rappresentazioni diverse dello stesso
fenomeno
Temi filosofici dell’informatica
Qualcosa comincia a cambiare



5
A partire dagli anni ’50 alcuni filosofici britannici (R.
Braithwaite, M. Hesse, E. Hutten) cominciano ad
interessarsi ai modelli e al loro ruolo nella
concettualizzazione e nella spiegazione scientifica
Questo interesse è motivato da un’attenzione alla pratica
scientifica e all’uso delle teorie scientifiche piuttosto che
dalla loro semantica o ricostruzione logica
Questi filosofi tentano di passare da una caratterizzazione
statica a una dinamica delle teorie scientifiche viste come
strutture in evoluzione e non come sistemi logici
Temi filosofici dell’informatica
Teorie: la visione semantica


6
Dagli anni ’60 la filosofia della scienza comincia ad
occuparsi di modelli
 In particolare ci si chiede che cosa siano e quale
rapporto abbiano con le teorie
La visione semantica delle teorie (di cui P. Suppes, B. van
Fraassen e R. Giere sono i maggiori proponenti) considera
le teorie come famiglie di modelli e non come calcoli
formali
Temi filosofici dell’informatica
Hesse: modelli e analogie



7
I modelli non possono essere considerati come descrizioni
letterali della natura, ma stanno in una relazione di
analogia con la natura
 I modelli descrivono solo certi aspetti di qualcosa in
natura ma non altri e, in alcuni casi, distorcono
(semplificazione, idealizzazione) intenzionalmente la
descrizione
La Hesse (1966) analizza il contributo dei modelli alla
creatività nella scoperta scientifica ed è in questo contesto
che sostiene che i modelli siano delle metafore
Queste metafore sono costruite sulla base delle analogie
che esistono fra il dominio di ciò che deve essere spiegato
e il dominio utilizzato per spiegarlo
Temi filosofici dell’informatica
Metafore: che cosa sono



8
Il termine ‘metafora’ deriva dal greco e letteralmente
significa ‘trasportare altrove’
(Il termine metafora nasce a sua volta da una metafora …)
La metafora è una figura retorica che consiste nel
trasferire a un oggetto il termine proprio di un altro
oggetto secondo un rapporto di analogia
Le metafore sono comuni nel linguaggio quotidiano
 Alberto è un coniglio (un’aquila, un carro armato, …)
 La Grecia classica fu un faro di civiltà
 La vita è un viaggio
Temi filosofici dell’informatica
Metafore: come funzionano



9
Un enunciato metaforico è composto da due oggetti
distinti: l’oggetto primario e l’oggetto secondario
Entrambi gli oggetti esprimono un insieme di idee
comuni e condivise che gli sono associate e che possono
essere comprese diffusamente
Le parole usate come oggetti primari e oggetti secondari
variano nel loro significato e ognuna di esse impegna
all’accettazione di un sistema di credenze standard ad
essa relative
Temi filosofici dell’informatica
Un esempio




10
Nella metafora ‘la vita è un viaggio’, ‘vita’ sta come
sistema primario e ‘viaggio’ come sistema secondario
Ognuno dei sistemi è associato a diverse idee sulla vita e
sui viaggi, tutte comunemente accettate e
sufficientemente note
Il sistema-vita e il sistema-viaggio sono messe insieme
dalla metafora che organizza la nostra visione relativa al
sistema primario
 Le idee e le credenze associate al sistema secondario
sono trasferite a quello primario
 Il sistema primario è visto attraverso il framework del
sistema secondario
La vita come viaggio è vista così come avventurosa,
godibile, ecc.
Temi filosofici dell’informatica
Modelli scientifici come metafore





11
Hesse applica questo schema di funzionamento delle
metafore al contesto scientifico
Il dominio di ciò che deve essere spiegato (explanandum)
è visto come il sistema primario descrivibile in termini
osservativi
Il sistema secondario è il sistema dal quale è preso il
modello ed è descritto o in linguaggio osservativo o nel
linguaggio di una teoria familiare
Il sistema primario è così visto attraverso il modello fornito
dal sistema secondario
Nei contesti scientifici ai due sistemi possono essere
associate non solo delle credenze, ma tutta una rete di
leggi naturali
Temi filosofici dell’informatica
Un esempio



12
Il modello a palle da biliardo della teoria cinetica dei gas
costituisce un esempio dell’applicazione del concetto di
metafora alla concettualizzazione scientifica
 Molecole di gas modellate come palle da biliardo che si
muovono a caso e urtano l’una contro l’altra
Il sistema primario (molecole di un gas ideale) è visto nei
termini di un sistema secondario (palle da biliardo)
Qual è la relazione fra i due sistemi? Non una relazione
uno a uno, ma una relazione di analogia
Temi filosofici dell’informatica
Analogie




13
La relazione di analogia fra il sistema primario e il sistema
secondario può essere
Analogia negativa: costituita dalle proprietà che
appartengono a un sistema ma non a un altro
 Per esempio rigidità delle palle da biliardo
Analogia positiva: costituita dalle proprietà che
appartengono a entrambi i sistemi
 Per esempio movimento e impatto
Sia le analogie negative sia quelle positive implicano che si
conoscano già quali siano le proprietà nella nuova teoria
sviluppata
Temi filosofici dell’informatica
Analogie neutre



14
Analogia neutra: insieme delle proprietà di cui non si sa se
costituiscono analogie positive o negative
Sono queste analogie che permettono di estendere la
nuova teoria e hanno un ruolo creativo
 Ci si può domandare, ad esempio, se una specifica
proprietà delle palle da biliardo appartenga alle
molecole del gas e progettare opportuni esperimenti
per trovare risposta
Questa visione dei modelli come metafore supporta una
visione ipotetica dei modelli e la loro propensione nel
suggerire ulteriori sviluppi teorici
Temi filosofici dell’informatica
Metafore e linguaggio scientifico



15
In generale le metafore sono largamente utilizzate nel
linguaggio scientifico
 Il cervello è un computer, la mente il suo programma
(scienze cognitive)
 Gioco linguistico (linguistica)
Le funzioni della metafora nel linguaggio scientifico
possono essere molteplici, tra cui
 Favorire la comprensione intuitiva di concetti astratti
 Suggerire analogie utili
 Aprire nuove prospettive di ricerca
Appare chiaro che le metafore hanno un valore euristico
Temi filosofici dell’informatica
La funzione delle metafore


16
Posizioni estreme:
 nel linguaggio scientifico la metafora è sempre dannosa
e non andrebbe mai utilizzata
 la metafora è ineliminabile dal linguaggio scientifico
Posizione intermedia:
 le metafore sono utili per il loro valore euristico nella
fase pionieristica di un concetto innovativo ...
 ... ma vanno gradualmente eliminate e trasformate in
definizioni letterali
Temi filosofici dell’informatica
Svelare/criticare/eliminare



17
Svelare una metafora
 Esplicitare i tratti salienti messi a tema dalla metafora
 Le proprietà del sistema primario che si vogliono
mettere in luce attraverso il sistema secondario (la
mente è un programma)
Criticare una metafora
 Mettere in luce le analogie suggerite dalla metafora e
valutarne l’utilità
 Identificare le nuove prospettive di ricerca aperte dalla
metafora e valutarle
Eliminare una metafora
 Rimpiazzare il significato metaforico con una
definizione letterale del termine
 Che cosa significa, ‘fuor di metafora’, che la mente è un
programma? Sistema fisico di simboli
Temi filosofici dell’informatica
Metafore e informatica



18
Dal ruolo delle metafore nella concettualizzazione e nella
spiegazione scientifica …
… alle metafore dell’ingegneria informatica
Il concetto di agente come esempio
Temi filosofici dell’informatica
Il termine agente

“Agente”
 Termine tecnico dell’informatica
 Usato in modo analogo al termine “oggetto”




19
Sistema ad oggetti, sistema ad agenti
Object oriented programming (OOP)/agent oriented
programming (AOP)
Come è usato il termine?
 In senso letterale?
 In senso metaforico?
Che cosa significa esattamente?
Temi filosofici dell’informatica
Termini letterali

La definizione letterale di un termine può essere basata su:
 Un insieme di condizioni necessarie e sufficienti



Esempi: forza (fisica), molecola (chimica), array
(informatica)
Un insieme di tratti salienti


20
Esempi: nevrotico ossessivo (psicologia), oggetto
(informatica)
Nella scelta iniziale del termine può essere presente una
componente metaforica
 Nella fisica, per esempio, forza, lavoro, energia, onda,
campo
 Nell’informatica, per esempio, pila, oggetto, scrivania,
cartella, cestino
Nell’uso tecnico, tuttavia, il valore metaforico originario è
irrilevante
Temi filosofici dell’informatica
21
“Agente”


Nel linguaggio informatico “agente” è a tutt’oggi un
termine utilizzato in modo metaforico
 Disvelamento: quali tratti salienti mette a tema?
 Critica: quali analogie suggerisce e quali prospettive
apre?
 Eliminazione: è possibile rimpiazzare la metafora (pur
riconoscendone l’utilità) sostituendola con una
definizione rigorosa?
La metafora
 Agente informatico  individuo (essere umano,
organizzazione umana, organismo animale) in azione,
eventualmente all’interno di un gruppo
Temi filosofici dell’informatica
Disvelamento

22
Tratti salienti messi a tema dalla metafora
 Autonomia
 Razionalità, intelligenza (reattività, proattività, capacità
di ragionamento)
 Capacità di relazionarsi con altri agenti (gruppi di
interazione temporanei o permanenti)
 Responsabilità (anche legale)
 …
Temi filosofici dell’informatica
23
Critica


Gli attributi messi a tema sono complessi e difficili da
definire
 È utile ragionare per analogia con gli agenti umani?
Una nuova prospettiva per la concettualizzazione e lo
sviluppo di sistemi distribuiti
 Porta vantaggi effettivi?
Temi filosofici dell’informatica
Eliminazione


24
È possibile eliminare la metafora?
 Agente def sistema che esegue azioni
 Azione def ???
Un possibile punto di partenza
 Certi sistemi (in particolare certi sistemi biologici come
gli esseri umani) possono realizzare intenzionalmente
degli eventi




Alzare un braccio, aprire una porta, rompere un vetro
scagliandogli contro un sasso
Un’azione è un evento realizzato intenzionalmente da
un sistema x e si dice allora che x esegue l’azione
Il sistema che esegue l’azione a si dice attore di a
Un sistema in grado di eseguire azioni si dice agente
Temi filosofici dell’informatica
Quattro concetti primitivi



25
La definizione di agente poggia su quattro concetti
primitivi
 Sistema
 Evento
 Realizzare
 Intenzionalmente
In ambito informatico
 Possiamo dare definizioni rigorose di questi concetti?
 Oppure il loro uso è a sua volta metaforico?
In altri termini: cercando di eliminare la componente
metaforica di “agente” ci imbattiamo in altre metafore
difficili da eliminare?
Temi filosofici dell’informatica
Sistema, evento




26
Nell’informatica un sistema è un processo, inteso come un
programma in esecuzione
Un evento è un cambiamento nello stato di un processo
 Un cambiamento di valore di una variabile
 Un cambiamento in una struttura dati dinamica
 …
In ogni sistema informatico certi cambiamenti possono
essere definiti a priori come eventi
Nell’informatica “sistema” ed “evento” sono termini
letterali e non metaforici
Temi filosofici dell’informatica
27
Realizzare




In prima approssimazione “realizzare” equivale a “causare”
In generale il concetto di causa è molto difficile da
analizzare
Nei sistemi informatici possiamo dire che un evento è
causato da un processo x …
… quando l’evento si verifica come effetto dell’evoluzione
del processo x …
… ovvero quando l’evento si verifica come effetto
dell’esecuzione di istruzioni appartenenti al programma
x
In questo senso, “realizzare” sembra essere un termine
letterale e non metaforico
Temi filosofici dell’informatica
Intenzionalmente


28
Che cos’è un’intenzione e che cosa vuol dire “realizzare
intenzionalmente”?
Il concetto è ragionevolmente chiaro nel caso dell’azione
umana, tant’è che viene utilizzato in ambito legale, per es.
 Omicidio volontario: causare intenzionalmente la morte
di una persona
 Omicidio preterintenzionale: causare la morte di una
persona non intenzionalmente, ma come conseguenza
di un tentativo intenzionale di nuocerle
 Omicidio colposo: causare la morte di una persona non
intenzionalmente, come conseguenza di un’azione non
diretta a danneggiare la vittima, ma di cui si è
sottovalutata la pericolosità
Temi filosofici dell’informatica
Le intenzioni


29
Definire le intenzioni in ambito informatico non è semplice
Ci sono due possibilità
 Riuscire a definire il termine “intenzione” come fatto
per i termini precedenti (“sistema”, “evento”,
“realizzare”)


In tal caso abbiamo eliminato la componente metaforica
del termine “agente” pur conservando la definizione
originale di agente come sistema che esegue azioni
Non riuscire a definire il termine; in questo caso si
hanno ancora tre possibilità



Trovare una definizione alternativa di agente utilizzabile
nell’informatica
Continuare a usare “agente” come termine metaforico
Abbandonare il termine
Temi filosofici dell’informatica
Quattro posizioni filosofiche (1)



30
Le intenzioni sono stati mentali
 Ciò significa che le intenzioni sono stati soggettivi
(come la felicità o il mal di denti) e quindi
intrinsecamente inosservabili
Naturalismo biologico (John Searle)
 Come tutti gli stati mentali, le intenzioni sono reali …
 … e intrinsecamente legate al fenomeno della coscienza
e al cervello che lo causa
Convenzionalismo (Daniel Dennett)
 Forse le intenzioni sono reali o forse non lo sono …
 … ma è comunque utile attribuire intenzioni agli agenti
(naturali o artificiali) per spiegare e prevedere i loro
comportamenti
Temi filosofici dell’informatica
Quattro posizioni filosofiche (2)


31
Eliminativismo (Paul Churchland)
 Il termine “intenzione” appartiene al linguaggio
quotidiano, non al linguaggio scientifico …
 … e va sostituito con termini che fanno riferimento a
entità osservabili (come gli stati del sistema nervoso)
Funzionalismo (Hilary Putnam)
 Un’intenzione è qualsiasi cosa che abbia un ruolo di
tipo ben determinato (e da specificare) nel processo
che causa il comportamento osservabile del sistema
 Il funzionalismo sembra essere la posizione più
promettente in relazione a questa discussione
Temi filosofici dell’informatica
La funzione delle intenzioni



32
In una serie di articoli e poi nel testo Intentions, Plans, and
Practical Reason (1999), Michael Bratman ha analizzato la
funzione delle intenzioni
Il lavoro di Bratman ha influenzato i ricercatori di IA che
hanno formulato il concetto di agente BDI (Beliefs, Desires,
Intentions) al centro di una famiglia di modelli formulati e
studiati in termini logico-modali
Per Bratman un’intenzione è essenzialmente
 Un piano di azione diretto al raggiungimento di un
obiettivo (desire)

… costruito in base alle credenze dell’agente (beliefs) …
 … con la funzione fondamentale di dare stabilità e
coerenza all’azione
Temi filosofici dell’informatica
Conseguenze per il concetto di agente (1)


33
Autonomia
 Un agente può sviluppare piani d’azione (intentions)
per raggiungere i propri obiettivi (desires) a seconda
delle circostanze (rappresentate dai beliefs)
Razionalità
 Un agente può massimizzare l’utile atteso dei propri
piani d’azione
 Un agente deve bilanciare l’opportunità di reagire
immediatamente agli eventi esterni (reattività) con la
capacità di anticipare del futuro (proattività)
Temi filosofici dell’informatica
Conseguenze per il concetto di agente (2)


34
Relazioni con gli altri agenti
 Linguaggio di comunicazione, la cui semantica è a sua
volta basata sui modelli BDI
Responsabilità
 I modelli BDI non affrontano il problema della
responsabilità (obblighi, ecc. derivanti dai ruoli)
Temi filosofici dell’informatica
La situazione attuale



35
I modelli BDI hanno avuto un certo successo nella
letteratura scientifica, ma non sembrano avere influenzato
decisamente la pratica professionale
Il concetto informale di agente BDI è considerato utile, in
certi ambiti applicativi, per progettare sistemi distribuiti
 In questi casi il concetto di agente BDI è utilizzato
comunque non in senso formale, ma in senso
metaforico
Al momento non esiste ancora una definizione letterale di
agente paragonabile, per esempio, alla definizione di
oggetti in C ++ o Java
Temi filosofici dell’informatica
Direzioni per il futuro



36
Mantenere il termine “agente” come termine metaforico
facendo bene attenzione che siano chiari i tratti salienti
messi a tema dalla metafora
 In questa direzione sarebbe quindi più sensato parlare
di agenti come paradigmi informatici piuttosto che
tecnologie
Cercare approcci alternativi alla definizione del concetto di
agente e valutare se in questi casi si possa eliminare l’uso
metaforico e passare a uno letterale
 Un approccio alternativo, ad esempio, può basarsi sullo
spostare l’attenzione dai processi interni di un agente
(che coinvolgono credenze, desideri, intenzioni) …
 … ai processi esterni che si manifestano nelle
interazioni fra gli agenti membri di un gruppo
(temporaneo o permanente)
Posizione intermedia: agenti fra paradigmi e tecnologie
Temi filosofici dell’informatica
37
Bibliografia




Bailer- Jones, D. (1999), “Tracing the development of
models in the philosophy of science” in Magnani, L. et al.
(Eds.) Model-Based Reasoning in Scientific Discovery,
Kluwer Academic Press, 23-40
Bratman, M. (1999) Intentions, plans, and practical
reason, CSLI Publications, Stanford, CA
Hesse, M. (1966), Models and Analogies in Science,
University of Notre Dame Press, Indiana
Suppes, P., (1967), “What is a scientific theory?” in
Morgenbesser, S. (Ed.) Philosophy of Science Today, Basic
Books, 55-67
Temi filosofici dell’informatica
Scarica

Modelli e metafore