Gli agenti software
Transcript
Gli agenti software
Che cos’è un agente software? Particolare tipo di programma informatico provvisto di specifiche funzionalità avanzate. Gli agenti software ________________________________ Corso di Informatica giuridica a.a. 2005/2006 Manca una definizione universalmente accettata del concetto di agente. Il tema è ancora discusso dalla comunità scientifica. Sistema informatico situato in un ambiente, in grado di compiere azioni autonome nello stesso ambiente allo scopo di raggiungere i suoi obiettivi. (M. Wooldridge) Programma informatico capace di azione autonoma in ambienti complessi. (G. Sartor) Claudia Cevenini, Giovanni Sartor Software che percepisce l’ambiente mediante sensori e agisce nei confronti dello stesso ambiente mediante attivatori.(S.J. Russell, P. Norvig) Caratteristiche degli agenti 1/2 Caratteristiche degli agenti 2/2 autonomia (capacità di operare autonomamente in assenza di istruzioni impartite in modo esplicito, controllo sulle proprie azioni) reattività (capacità di percepire i mutamenti dell’ambiente in cui sono collocati e di adattarvisi) proattività (capacità di prendere attivamente iniziative atte a influenzare o modificare l’ambiente, agire secondo degli scopi) persistenza (capacità di durare per un certo periodo di tempo) abilità sociale (capacità di interagire con altri soggetti, umani o artificiali, mediante particolari protocolli di comunicazione) intelligenza (capacità di acquisire ed elaborare informazioni e di apprendere dall’esperienza) mobilità (capacità di spostarsi da un nodo all’altro di una rete informatica per acquisire informazioni e contattare altri soggetti) flessibilità (capacità di affrontare scenari imprevisti) Funzionalità degli agenti Il problema della coordinazione Secondo una prospettiva funzionale, basata sulle azioni che gli agenti sono in grado di compiere, possiamo distinguere tra: information agents (svolgono ricerche su reti informatiche; in base alle esigenze dell’utilizzatore selezionano le fonti rilevanti e presentano le informazioni in modo appropriato) co-operation/interface agents (interagiscono con altri soggetti umani o artificiali, assistenti virtuali) transaction agents (svolgono direttamente attività negoziale) Ogni agente ha propri scopi e una propria conoscenza (non c’è un piano generale che governi tutte le attività dell’insieme degli agenti). Vantaggi: ogni agente agisce secondo i propri scopi e la propria conoscenza, e reagisce in modo flessibile e creativo alle proprie circostanze. Svantaggi: non esiste una necessaria coordinazione con gli altri agenti. Se ogni agente persegue separatamente i propri scopi, il risultato può essere negativo per tutti. Problema: come conciliare l’autonomia dei singoli agenti e la conservazione (o il raggiungimento) di certe caratteristiche sistemiche? 1 Possibili soluzioni Problemi teorico-giuridici Pianificazione centrale (verrebbero meno i vantaggi della flessibilità e dell’autonomia) Stabilire vincoli necessari al comportamento degli agenti (realizzare agenti che non possono mentire, che non possono distruggersi vicendevolmente, ecc.) Stabilire norme per le società di agenti (gli agenti potrebbero includere regole nel proprio processo decisionale e adottare regole condivise in circostanze appropriate Costruire agenti altruistici, che oltre ad essere selfinterested (oltre a cercare di persistere e di beneficiare il proprio utilizzatore) tengano in considerazione anche il bene comune (e cerchino di arrivare ad una visione condivisa del bene comune). Sono gli agenti soggetti di diritto, o almeno titolari di un potere d’agire? Sono dotati di stati psicologici giuridicamente rilevanti (volontà, coscienza, buona fede, ecc.)? Sono capaci di assumere attitudini normative (di adottare, seguire, violare norme)? Un sistema informatico composto di agenti elettronici può configurarsi quale un ordinamento giuridico? Come vengono replicate le istituzioni giuridiche (e.g. legislative, giurisdizionali, coercitive) nel mondo virtuale? Quali sono i rapporti tra un tale ordinamento e l’ordinamento statale? Problemi giuridici 1/2 Identificazione degli agenti. Validità dei contratti conclusi in rete mediante agenti. Responsabilità per gli illeciti compiuti mediante agenti. Tutela della riservatezza dell’agente e dei terzi. Protezione della proprietà intellettuale dell’agente e dei terzi. Reati informatici commessi mediante agenti/subiti dagli agenti. Esempio di impiego degli agenti: “Lovely Rita” Ore 17:55. Enrico esce dall’ufficio e si affretta verso la sua auto, ma un vigile, Rita, gli ha appena fatto la multa. Ormai non c’è nulla da fare, ma Enrico decide di approfittare dell’occasione e invita Rita a prendere un caffè. Una radio, Radio Rock International, sta trasmettendo della musica. Enrico ha un’idea, si ricorda di una vecchia canzone dei Beatles, “Lovely Rita”, e vuole dedicarla alla ragazza. Telefona a Jonathan, il dj della radio e chiede di poter ascoltare la canzone. Problemi giuridici 2/2 Proprietà intellettuale (protezione dell’agente, dei risultati delle sue attività, delle risorse informative impiegate). Protezione dei dati personali (agenti come autori e/o vittime di violazioni della privacy). Responsabilità civile (limitazione della responsabilità per danni causati da AS, obblighi dei soggetti coinvolti). Responsabilità penale commessi mediante agenti). (reati informatici Nel frattempo, nello studio della radio, l’assistente tecnica compila un modulo informatico per il loro agente software, Hermes HERMES – task description Author(s) Lennon, McCartney Title Lovely Rita Meter Maid Performer(s) Beatles 2 Chi è Hermes? Un agente software che: - utilizza una tecnologia, denominata ‘Music Middleman’, brevettata da A, una società statunitense; - è sviluppato con un software protetto da copyright di B, una società tedesca; - è ceduto in licenza a RRI, una radio italiana. Contratto tra A e B: B può sviluppare sistemi che implementino “Music Middleman”, ha limiti sull’uso della tecnologia, deve pagare un compenso ad A, ecc. Contratto tra B e RRI: RRI può usare Hermes, assegnargli obiettivi e compiti, non ha il diritto di accesso e modifica del codice sorgente, deve pagare un compenso a B, ecc. B deve occuparsi del buon funzionamento di Hermes, ecc. Chi controlla Hermes? Il detentore del brevetto (che decide sull’uso della tecnologia)? Il titolare del copyright (che può avere accesso al software e modificarlo)? Il licenziatario e i suoi collaboratori (che gli assegnano compiti e gli forniscono informazioni)? L’agente stesso (che conosce le circostanze e decide cosa fare)? Il compito di Hermes - Indicazione di: autore: John Lennon, Paul McCartney titolo: "Lovely Rita Meter Maid” esecutore preferito: The Beatles esecutore alternativo: qualsiasi disponibilità: 6.17 pm prezzo: il più basso possibile, sotto 5 euro tipo di licenza: per una esecuzione singola, prima delle 8 pm data odierna per esecuzione pubblica mediante diffusione radio. Di chi è Hermes? – Chi detiene la tecnologia brevettata (A)? – Il titolare del copyright sul software (B)? – Il licenziatario del software/utilizzatore (RRI)? Hermes riceve informazioni da: – il gestore di database di B; – l’assistente tecnica di RRI; – le proprie ricerche effettuate autonomamente; – altri agenti. Chi è responsabile di Hermes? Chi risponde per eventuali danni commessi da Hermes? Il detentore del brevetto (che ha ideato la tecnologia)? Il titolare del copyright (che ha sviluppato il software)? Il licenziatario e i suoi collaboratori (che gli assegnano compiti e gli forniscono informazioni)? Hermes stesso (che ha valutato autonomamente le circostanze e ha preso le proprie decisioni)? Una terza parte intervenuta (che ha manipolato l’ambiente o lo stato interno dell’agente)? Come agisce Hermes? Consulta il registro delle registrazioni musicali Accede al database di B (il suo sviluppatore) per reperire un fornitore di musica on line Si clona e contatta simultaneamente diversi fornitori Negozia con gli offerenti Valuta offerte alternative in base alla descrizione del suo compito Decide quando un’offerta è sufficientemente buona per concludere un contratto Conclude il contratto Dà esecuzione al contratto 3 Hermes decide di acquistare la licenza per eseguire Lovely Rita Meter Maid dall’Agente B della Time Warning corporation. Hermes paga il compenso all’Agente B e quest’ultimo gli invia una versione compressa e crittata della canzone > Il pagamento è effettuato mediante un sistema di micropagamenti elettronico (es., Mondex) > L’accordo è raggiunto mediante lo scambio di messaggi crittati con time stamping > La canzone è compressa e crittata; RRI riceve la chiave per poterla eseguire Agent B public key encrypted msg: date: Feb. 12, 2002 time: 18:15:44 song: Lovely Rita… price: 2,50 Euro …. Buying OK certified key Hermes Agent A public key encrypted msg: date: Feb. 12, 2002 time: 18:15:50 song: Lovely Rita… price: 2,50 Euro …. Selling OK Hermes pays using Mondex protocol certified key Music selling agent B certified key Hermes Hermes’s public key encrypted file: “LovelyRita.cmp” certified key Music selling agent B Hermes’ public key encrypted key for launching the song Nel frattempo, Hermes cessa le negoziazioni con altri agenti fornitori. Nel frattempo a RRI, l’assistente tecnica lancia il file e la canzone viene eseguita. Cosa succederebbe se Hermes non informasse gli altri agenti che intende cessare le negoziazioni, di modo che essi aspettino e perdano altre opportunità contrattuali? Cosa accadrebbe se Hermes non pagasse la canzone? certified key Hermes Agent A public key encrypted msg: date: Feb. 12, 2002 time: 18:15:47 song: Lovely Rita… price: 6 Euro …. Buying NO certified key Music selling agent A La qualificazione giuridica di Hermes Che cosa è Hermes? Uno strumento che trasmette semplicemente un’offerta da parte di chi lo utilizza (RRI) all’offerente? Un mandatario con rappresentanza, che determina autonomamente il contenuto di un contratto che concluderà nel nome del suo mandante (che acquisterà diritti e doveri derivanti dal contratto)? Un contraente indipendente (un mandatario senza rappresentanza), che acquista diritti e doveri propri, e successivamente li trasferisce al suo mandante? Di chi è la volontà contrattuale? Il mandante (RRI, per il tramite dell’assistente tecnica). Ha assegnato a Hermes i suoi compiti e ha fissato i limiti. Non è consapevole del contesto e del contenuto della negoziazione. Non conosce l’esatto contenuto del contratto che è concluso. Hermes. Ha deciso autonomamente quando e come concludere il contratto. Ha seguito le istruzioni di RRI (e le regole insite in se stesso). Non era provvisto di consapevolezza propria. 4 Qual è l’estensione dell’autonomia di Hermes? Cosa succede se Hermes agisce al di là delle istruzioni a) indicate nel certificato e comunicate alla controparte? b) impartite da RRI a Hermes? Cosa succede se Hermes agisce contrariamente ai suoi compiti? E la controparte lo sa/dovrebbe saperlo. E la controparte non lo sa/non è in grado di saperlo. Cosa succede se Hermes va oltre i suoi compiti? E si comporta in modo ragionevole. E si comporta in modo manifestamente irragionevole. Hermes ha personalità giuridica? Può avere propri diritti e doveri distinti dai diritti e doveri del suo mandante? I suoi interessi sono rilevanti per la legge? E’ in grado di provvedere a se stesso in modo da poter esercitare i propri diritti? Possiede un patrimonio proprio separato da quello del suo utilizzatore? Schiavi nel diritto romano Potevano se autorizzati concludere contratti nel nome dei loro proprietari. Potevano possedere un certo quantitativo di denaro (peculium) sul quale i terzi potevano fare affidamento. Agenti e personalità giuridica 2/2 Gli agenti potrebbero essere persone giuridiche secondo la descrizione 1) qualora i diritti e i doveri siano adeguati alla loro natura. Gli agenti potrebbero essere persone giuridiche secondo la descrizione 2) in presenza di adeguati accordi. Vizi del consenso Un contratto è annullabile per determinati vizi del consenso, ossia quando una parte possiede determinati stati mentali, che derivano da determinate circostanze: errore, violenza, dolo. Di chi sono gli stati mentali rilevanti? Di Hermes? Dell’assistente tecnica di RRI? Agenti e personalità giuridica 1/2 Occorre definire cosa intendiamo per personalità giuridica: 1) Un’entità ha personalità giuridica se può acquisire propri diritti e doveri. 2) Un’entità ha personalità giuridica se ha un patrimonio indipendente, che può essere aggredito dai suoi creditori. Diritti e doveri Prevedere diritti e doveri in capo agli agenti può essere problematico: – gli agenti possono scomparire – possono clonarsi – non sono localizzati in un luogo specifico (come potrebbe localizzarli il loro creditore e fare loro causa?) • Qual è la loro residenza? • Qual è il loro domicilio? – Ecc. 5 Possibili soluzioni 1/2 Possibili soluzioni 2/2 Assegnare una localizzazione giuridicamente rilevante agli agenti e al loro patrimonio (es. nella banca in cui si trova il denaro). Gli agenti potrebbero avere personalità giuridica, essere titolari di diritti e di doveri, ed essere garantiti dal loro patrimonio. Gli agenti potrebbero identificarsi mediante una chiave crittografica associata al loro patrimonio. L’utente potrebbe essere ritenuto responsabile nei limiti della somma che ha trasferito al patrimonio dell’agente (che sarà reso noto a terzi). Costituire una società, e far agire l’agente per conto della stessa. Questo risolverebbe il problema della personalità giuridica (non sarebbe necessaria; le azioni dell’agente sarebbero azioni della società) . I soci della società sarebbero responsabili solo nei limiti delle loro quote. I terzi potrebbero chiedere alla società di concludere contratti nel loro interesse (attraverso i loro agenti). I terzi potrebbero prendere in locazione gli agenti, che agirebbero in nome loro. La responsabilità per gli illeciti di Hermes Torniamo all’esempio L’utilizzatore è responsabile poiché il comportamento dell’agente in realtà è il comportamento del suo utilizzatore? L’utilizzatore è responsabile come il custode di una cosa? L’utilizzatore è responsabile come il soggetto a cui è affidato un minore? L’utilizzatore è responsabile come se fosse il datore di lavoro dell’agente? L’utilizzatore è responsabile come se fosse il mandante dell’agente? L’utilizzatore non è responsabile? In questo modo solo Hermes sarebbe responsabile per il proprio comportamento. … Un agente, Mata Hari è stato inviato assieme alla canzone. Mata deve: far sì che la canzone sia eseguita (operando come un programma di avvio), verificare il rispetto delle condizioni della licenza da parte di RRI, cancellare la registrazione dopo averla eseguita, inviare un rapporto a Time Warning. Mata Hari Agenti e privacy I dati personali contenuti in Hermes sono tutelati giuridicamente? Cosa succede se Mata viola la privacy di RRI? Chi è responsabile per eventuali illeciti dell’agente? 6