Sistemi multi-agente

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Sistemi multi-agente"

Transcript

1 Sistemi multi-agente Indice 1 Agenti intelligenti Che cos è un agente Che cosa non è un agente Classi di agenti Simple reflex agents Model-based reflex agents Goal-based agents Utility-based agents Sistemi multi-agente Sistemi single-agent e sistemi multi-agent L ambiente di un MAS Pienamente o parzialmente osservabile Deterministico o stocastico Episodico o sequenziale Statico o dinamico Discreto o continuo Problematiche dei MAS Architetture dei sistemi multi-agente Toolkit di sviluppo per MAS Applicazioni Applicazioni nel campo generico della ricerca La metafora dei videogiochi Agenti e proprietà intellettuali Applicazioni relative al progetto di ricerca 14 Riferimenti bibliografici 16 1

2 1 Agenti intelligenti Gli agenti intelligenti sono delle entità autonome usate in un ampia varietà di applicazioni, che spaziano da semplici filtri per le a sistemi complessi e critici come il controllo del traffico aereo. Anche se a prima vista sistemi simili possono avere poco in comune, la chiave di astrazione usata per entrambi è quella di agente. Questa sezione introduce alcuni concetti base fra i quali, naturalmente, la nozione di agente (1.1). Si proseguirà poi con alcune distinzioni fra agenti ed altre entità (1.2) e la classificazione di varie tipologie di agente (1.3). 1.1 Che cos è un agente Qual è il significato di agente? In letteratura non esiste una definizione universalmente accettata di questo termine. Con agente ci si può riferire ad entità usate negli ambiti più diversi, come l intelligenza artificiale, l economia o la teoria dei giochi. Smith, Cypher e Spoher [1] definiscono un agente come un entità software dedicata a uno scopo specifico, introducendo il concetto di persistenza. La persistenza è la proprietà di un agente di essere eseguito costantemente, e non su richiesta. Ciò distingue gli agenti dalle subroutine: gli agenti decidono da sé come e quando eseguire una qualche attività. Per Russel e Norvig [2], un agente è tutto ciò che può percepire il suo ambiente attraverso dei sensori e agire su quell ambiente attraverso degli attuatori. Un agente umano ha occhi, orecchie e altri organi come sensori, e braccia, gambe e altre parti del corpo come attuatori. Un agente robotico sostituisce occhi e orecchie con camere e microfoni, e gambe e braccia con motori di vario tipo. Un agente software utilizza stringhe di bit per percepire l ambiente e agire. Nwana [3], definisce un agente come un componente software e/o hardware sviluppato per svolgere dei compiti per conto di terzi. Propone inoltre una classificazione basata sugli attributi primari di autonomia, cooperazione e apprendimento: gli agenti intelligenti sono entità che possiedono tali caratteristiche. Franklin e Graesser [4], dopo aver elencato diverse definizioni date da altri autori, diedero la loro: un agente autonomo è un sistema situato all interno e parte di un ambiente, in grado di percepirlo e agire su di esso nel tempo, in funzione del suo programma, e col fine di attuare ciò che potrà percepire in futuro. Per Jennings e Wooldridge [5], un agente è un sistema informatico situato in un qualche ambiente, capace di azioni autonome al suo interno, col fine di raggiungere gli obiettivi per cui è stato progettato. Il concetto di autonomia può essere qui inteso come la capacità di un sistema di agire senza l intervento dell uomo, attraverso il controllo delle proprie azioni e del proprio stato interno. Jennings e Wooldridge danno inoltre particolare attenzione alla definizione di agente intelligente. Per essere definito intelligente, un agente autonomo dovrebbe avere un comportamento dotato delle seguenti proprietà: 2

3 responsività: gli agenti devono poter percepire il proprio ambiente e rispondere di conseguenza ai cambiamenti che avvengono al suo interno; proattività: gli agenti non devono agire solamente in risposta al loro ambiente ma devono saper esibire un comportamento opportunistico e prendere l iniziativa quando necessario; socialità: gli agenti devono essere in grado di interagire con altri agenti autonomi (e esseri umani) per raggiungere un obiettivo comune e aiutare gli altri con le loro attività. Per garantire l interazione, gli agenti dovrebbero possedere le abilità di: cooperazione: saper lavorare come una squadra per ottenere un risultato comune; coordinazione: diverse; saper gestire le risorse non condivisibili fra attività negoziazione: saper raggiungere un accordo su questioni di interesse comune. Nelle differenti definizioni proposte dai diversi autori si possono identificare alcuni concetti comuni che insieme possono formalizzare una definizione più generica di agente, che si può così riassumere: un agente è un entità software e/o hardware autonoma e persistente situata in un certo ambiente, capace di percepirlo, agire al suo interno con un comportamento reattivo e proattivo, apprendere da esso e cooperare con altre entità simili, col fine di svolgere le attività per cui è stata progettata. 1.2 Che cosa non è un agente Avendo dato una definizione più restrittiva di agente, si può ora stabilire che cosa non è un agente. Esistono innanzitutto delle analogie fra agenti e oggetti, propri del paradigma di programmazione Object Oriented, in particolare riguardo al concetto di incapsulamento. Un oggetto incapsula un certo stato, accessibile e modificabile attraverso i metodi che l oggetto definisce pubblici. Gli agenti incapsulano uno stato in maniera simile, incapsulando in aggiunta un behavior (comportamento). Gli oggetti non incapsulano un comportamento e non hanno il controllo sull esecuzione dei propri metodi: se un oggetto x invoca un metodo m di un oggetto y, allora y non ha alcun controllo sul fatto che m venga eseguito o meno. L oggetto y è quindi non autonomo. Gli agenti sono invece entità autonome e, a differenza degli oggetti, possono decidere se eseguire o meno un azione richiesta da un altro agente. 3

4 Gli agenti non sono definiti nell ambito dell intelligenza artificiale: l intelligenza artificiale mira a costruire sistemi che possano capire il linguaggio naturale, riconoscere e comprendere una scena, usare il buonsenso, usare la creatività. Un agente è molto più semplicemente un sistema che decide quale azione compiere in un certo contesto e in un dato momento, tipicamente in un dominio limitato. Gli agenti non sono sistemi esperti: un sistema esperto è un sistema informatico che emula il processo decisionale di un esperto umano su un certo dominio astratto. Al contrario degli agenti, i sistemi esperti non sono associati ad alcun ambiente e non sono progettati per avere un comportamento reattivo, proattivo e sociale. 1.3 Classi di agenti Se è stato difficile trovare una definizione univoca di agente, altrettanto difficile è darne una classificazione. Come già citato in precedenza, Nwana [3] definisce tre attributi primari: autonomia, cooperazione e apprendimento. Da queste caratteristiche ne deriva quattro tipi di agente, come mostrato in Figura 1, sottolineando che tali distinzioni non sono definitive. Figura 1: Tipologia basata sui tre attributi primari (Nwana, 1996). Per Franklin e Graesser [4], gli agenti possono essere opportunamente classificati secondo il sottoinsieme di proprietà di cui godono. Tali proprietà derivano dalle varie definizioni di agente discusse dai due autori. La Tabella 1 elenca diverse proprietà degli agenti. 4

5 Proprietà reattività autonomia goal-oriented (proattivo, propositivo) persistenza (temporalmente continuo) comunicazione (socialmente abile) apprendimento (adattivitá) mobile flessibilità carattere Significato reattività: risponde in modo tempestivo ai cambiamenti dell ambiente autonomia: esercita il controllo sulle proprie azioni goal-oriented: non agisce semplicemente in risposta all ambiente persistenza: è un processo continuamente in esecuzione comunicazione: comunica con altri agenti, possibilmente includendo gli umani apprendimento: cambia il suo comportamento in base alle esperienze precedenti mobile: capace di trasportare se stesso da un posto a un altro flessibilità: le azioni non sono prefissate carattere: personalità credibile e stato emotivo Tabella 1: Proprietà degli agenti autonomi (Franklin e Graesser, 1996). Russel e Norvig [6] delineano quattro tipi fondamentali di agente che incarnano i principi alla base di quasi tutti i sistemi intelligenti: Simple reflex agents; Model-based reflex agents; Goal-based agents; Utility-based agents Simple reflex agents Il tipo più semplice di agente è il simple reflex agent. Questi agenti agiscono solamente sulla base della percezione corrente, ignorando ciò che è stato percepito in precedenza. Le funzioni dell agente sono basate sulla regola condition-action: if condizione then azione. Gli agenti simple reflex hanno la pregevole proprietà di essere semplici, ma si rivelano essere davvero di intelligenza limitata. L agente funziona solamente se la decisione corretta può essere presa sulla base delle sola percezione corrente, cioè solamente se l ambiente è completamente osservabile. Anche solo una piccola parte di ambiente non osservabile può causare serie difficoltà. 5

6 1.3.2 Model-based reflex agents Il modo più efficace per gestire un ambiente parzialmente osservabile è tenere traccia della parte del mondo che l agente non può vedere al momento. L agente mantiene quindi una sorta di stato interno che dipende dalle percezione passate e che riflette almeno alcuni degli aspetti dello stato attuale. Aggiornare le informazioni di questo stato interno nel tempo richiede due tipi di conoscenza da codificare nell agente: I. Si deve innanzitutto conoscere in che modo il mondo evolve indipendentemente dall agente. II. Si devono avere poi informazioni su come le azioni proprie dell agente influenzano il mondo. Questa conoscenza di come il mondo funzioni è chiamato modello del mondo. Un agente che usa questo tipo di modello è chiamato model-based agent. Le azioni sono infine scelte allo stesso modo di un agente simple reflex Goal-based agents I goal-based agents espandono ulteriormente le capacità degli agenti modelbased. Conoscere lo stato corrente dell ambiente non sempre è sufficiente per decidere cosa fare. Così come la descrizione dello stato corrente, l agente necessita di informazioni sul goal che descrivano situazioni che sono desiderabili. L agente può combinare questa serie di informazioni in modo da scegliere le giuste azioni che permettano di raggiungere l obiettivo. Alcune volte la scelta di azioni goal-based è lineare, quando il raggiungimento del goal risulta immediato da una singola azione. A volte è più intricato, quando l agente deve considerare lunghe sequenze di azioni per trovare un modo di raggiungere uno stato di successo Utility-based agents Gli obiettivi, da soli, non sono sufficienti per generare un comportamento ottimale in tutti gli ambienti. I goal forniscono una distinzione netta fra stati felici e infelici, laddove una misura di performance più generale consentirebbe un confronto fra differenti stati in base a quanto realmente farebbero felice un agente se potessero essere raggiunti. È possibile dunque definire una misura di quanto desiderabile sia un certo stato. Questa misura può essere ottenuta attraverso l uso di una utility function, che mappa uno stato (o una sequenza di stati) su un numero reale, che descrive il grado di felicità associato. Una specifica completa della utility function permette di prendere decisioni razionali in diversi casi in cui i goal risultano inadeguati. 6

7 2 Sistemi multi-agente Un sistema multi-agente, o MAS (multi-agent system), è un sistema informatico composto da molteplici agenti che interagiscono fra loro all interno di un ambiente. Questa sezione descrive i MAS, confrontandoli con i sistemi ad agenti singoli (2.1), elencando poi le varie tipologie di ambiente esistenti (2.2) e le problematiche di tali sistemi (2.3). Nel paragrafo 2.4 sono descritte diverse architetture di sistemi multi-agente; sono infine elencati alcuni toolkit di sviluppo per MAS (2.5). 2.1 Sistemi single-agent e sistemi multi-agent In generale, un agente singolo modella sé stesso, l ambiente e le loro relazioni (l agente è visto come facente parte dell ambiente stesso). I sistemi multiagente differiscono dai sistemi singoli per il fatto che esistono diversi agenti che modellano reciprocamente le loro azioni e i loro obiettivi. Nel tipico scenario multi-agente, ci sono diverse interazioni dirette fra gli agenti. Dalla prospettiva del singolo agente, i MAS si differenziano dai single-agent system nelle dinamiche dell ambiente, in quanto esso può essere influenzato da altri agenti [7]. 2.2 L ambiente di un MAS I MAS consistono di diversi agenti e del loro ambiente. Un ambiente multiagente è un ambiente in cui sono presenti più agenti interagenti fra loro, e dove ci sono vincoli tali che gli agenti non possono sapere in ogni dato momento qualunque cosa sul mondo che gli altri agenti sanno (incluso lo stato interno degli altri agenti stessi) [8]. Gli ambienti in cui gli agenti agiscono possono essere organizzati secondo diverse proprietà [6], esaminate qui di seguito Pienamente o parzialmente osservabile Se i sensori di un agente danno accesso allo stato completo dell ambiente in ogni istante del tempo, allora l ambiente è pienamente osservabile. Gli aspetti osservabili devono essere rilevanti per la scelta della giusta azione da compiere. Un ambiente può essere parzialmente osservabile a causa di sensori rumorosi o inaccurati o perché parti dello stato mancano semplicemente dai dati del sensore Deterministico o stocastico Se lo stato successivo dell ambiente è completamente determinato dallo stato corrente e dall azione eseguita dall agente, allora l ambiente è deterministico; altrimenti è stocastico. In principio un agente non dovrebbe preoccuparsi 7

8 sull incertezza in un ambiente pienamente osservabile e deterministico. Se un ambiente è parzialmente osservabile, tuttavia, è allora possibile che sia stocastico. Questo è vero soprattutto se l ambiente è complesso, rendendo difficile tenere traccia di tutti gli aspetti non osservati Episodico o sequenziale In un ambiente episodico, l esperienza dell agente è divisa in episodi atomici. Ogni episodio consiste nel percepire, ed eseguire, una singola azione. Fondamentalmente, l episodio successivo non dipende dalle azioni effettuate negli episodi precedenti. In ambienti episodici, la scelta di un azione in ogni episodio dipende solamente dall episodio stesso. In ambienti sequenziali, d altra parte, la decisione corrente può influenzare tutte le decisioni future Statico o dinamico Se l ambiente può cambiare mentre un agente sta deliberando, allora l ambiente è dinamico per quell agente; altrimenti è statico. Gli ambienti statici sono facili da trattare poiché l agente non necessita di continuare a osservare il mondo mentre sta decidendo su un azione, né ha bisogno di preoccuparsi del passare del tempo. Gli ambienti dinamici, d altra parte, chiedono continuamente agli agenti che cosa sono intenzionati a fare; se un agente non decide come agire, per l ambiente questo vale come decidere di non agire affatto Discreto o continuo La distinzione fra discreto e continuo può essere applicata allo stato dell ambiente, al modo in cui viene gestito il tempo alle percezioni e azioni dell agente. Ad esempio, un ambiente con stato discreto come un gioco di scacchi ha un numero finito di stati distinti. Gli scacchi hanno anche un insieme discreto di percezioni e azioni. La guida di un taxi è un problema con stato e tempo continui: la velocità e la posizione del taxi e degli altri veicoli spaziano nel tempo attraverso un range di valori continui. 2.3 Problematiche dei MAS Si possono individuare cinque principali problematiche nella creazione di sistemi multi-agente: problematica dell azione: come può un insieme di agenti operare simultaneamente in un ambiente parzialmente osservabile, e come interagisce tale ambiente in risposta agli agenti? Tali questioni sono legate alla rappresentazione dell ambiente per mezzo degli agenti, alla collaborazione tra gli agenti e alla pianificazione dell attività di una molteplicità di agenti; 8

9 problematica della relazione col mondo esterno: tale problematica è rappresentata dal modello cognitivo di cui dispone l agente. Ogni singolo individuo, in una società costituita da molteplici agenti, deve essere in grado di mettere in opera le azioni più rispondenti ai suoi obiettivi. Tale attitudine alla decisione è legata ad uno stato mentale che riflette le percezioni, le rappresentazioni, le convinzioni ed un certo numero di parametri psichici (desideri, tendenze...) dell agente. La problematica in questione copre anche la nozione dei vincoli dell agente nei confronti di un agente terzo; problematica dell interazione: i sistemi ad agenti multipli necessitano, da una parte dello studio della natura delle interazioni, come fonte di opportunità, e di vincoli dall altra. Si interessa alle modalità di interazione (individuando il corretto linguaggio e supporto), all analisi ed alla concezione delle forme d interazione tra agenti. Le nozioni di collaborazione e di cooperazione (considerata come collaborazione, coordinamento delle azioni e risoluzione dei conflitti) sono in questo campo questioni fondamentali. Se si applicano le sole conoscenze dei sistemi a singolo agente a quelli multi agente si avranno degli agenti egoisti (self-interested) che non coopereranno in alcun modo, dunque l obiettivo del sistema sarà solo parzialmente raggiunto; problematica dell adattamento: l agente deve possedere dei meccanismi per giudicare lo stato attuale del suo ambiente in modo da poter modificare il proprio comportamento e prendere decisioni circa le azioni future da compiere; realizzazione effettiva e implementazione dei sistemi multi-agente: la fase di sviluppo viene effettuata utilizzando linguaggi di programmazione di diverso tipo, che vanno dai linguaggi di formalizzazione e specifica ai linguaggi di implementazione vera e propria. Tra le due classi si trovano i linguaggi per la comunicazione tra agenti, la descrizione delle leggi dell ambiente e la rappresentazione delle conoscenze. 2.4 Architetture dei sistemi multi-agente Con riferimento alle problematiche precedenti, è possibile determinare gli elementi dell architettura di un sistema ad agenti multipli. Gli agenti devono essere dotati di svariati sistemi di decisione e pianificazione. La ricerca operativa, o teoria delle decisioni, è una disciplina completamente dedita allo studio di questo argomento. Nella categoria delle interazioni con l ambiente, un altro problema ricorrente dei sistemi ad agenti è quello del path finding, ovvero il processo di tracciare un percorso efficiente tra due punti. Gli agenti necessitano inoltre di un modello cognitivo: anche qui esistono 9

10 diversi modelli, tra cui uno dei più classici è il modello BDI (Beliefs-Desires- Intentions) [9]. Esso considera da una parte l insieme delle credenze (beliefs) dell agente sull ambiente in cui si trova ad operare, che sono il risultato delle sue conoscenze e delle sue percezioni, e dall altra un insieme di obiettivi (desires). Intersecando questi due insiemi, si ottiene un nuovo insieme di intenzioni (intentions), che in seguito possono tradursi direttamente in azioni. Ancora, gli agenti devono altresì essere forniti di un sistema di comunicazione. Molti linguaggi specializzati hanno visto la luce a questo scopo: il KQML (Knowledge Query and Manipulation Language) [10], e più recentemente lo standard FIPA-ACL (Foundation for Intelligent Physical Agents - Agent Communication Language) 1. Entrambi gli standard sono fondati sulla teoria degli atti linguistici, elaborata da John Searle [11]. La problematica dell adattamento rappresenta un argomento spinoso, oggetto attualmente di numerose ricerche. Si potrebbe tuttavia citare l esempio di alcuni virus, non solo informatici ma anche biologici, capaci di adattarsi al loro ambiente per effetto di mutazioni. Infine, l implementazione effettiva di un sistema multiagente, se non fa parte, propriamente parlando, dell architettura del sistema, merita di essere evocata attraverso l esempio fornito dai numerosi linguaggi di programmazione sviluppati a scopo di ricerca nel settore dell intelligenza artificiale; si pensi in particolare ai linguaggi LISP 2 e PROLOG Toolkit di sviluppo per MAS Un toolkit [12] per sistemi multi-agente è un sistema software che contiene: un ambiente run time in cui ciascun agente può essere eseguito e in cui gli agenti possono interagire ( sistema operativo per MAS ); strumenti CASE (Computer Aided Software Engineering) per il progetto e la costruzione di MAS; strumenti per la gestione e il monitoraggio di MAS. Alcuni toolkit attualmente disponibili sono: Impact, Consorzio Interuniversitario 4 ; Jack, Agent Oriented Software Group 5 ; Jade, Telecom Italia Labs 6 ;

11 SPADE, Universidad Politecnica de Valencia 7 ; Retsina, Carnagie Mellon 8 ; Zeus, British Telecommunications 9. I toolkit forniscono un infrastruttura che consente di evitare che il progettista debba ogni volta iniziare il lavoro da zero. In particolare esimono il progettista dal dover sviluppare le parti di un MAS specifico aventi caratteristiche e funzioni di un MAS generico. Nello specifico, l architettura di un generico agente singolo e la modalità di interazione fra agenti. Toolkit diversi suggeriscono o impongono differenti architetture di agente singolo e architetture di MAS (ad esempio quali interazioni permettere). Quindi i toolkit sono differenti per esigenze o preferenze progettuali diverse

12 3 Applicazioni Questa sezione descrive diversi domini applicativi dei MAS [13][14][15], partendo dall utilizzo generico dei sistemi multi-agente (3.1), discutendo poi una metafora sul dominio dei videogiochi (3.2); vengono infine esaminate le problematiche relative alla proprietà intellettuale degli agenti (3.3). 3.1 Applicazioni nel campo generico della ricerca Si distinguono generalmente tre tipi d utilizzo dei sistemi multi-agente: la simulazione di fenomeni complessi, la risoluzione di problemi e la progettazione di programmi. Si utilizzano i sistemi multi-agente per simulare le interazioni esistenti tra singoli agenti autonomi. Si cerca quindi di determinare l evoluzione del sistema, al fine di prevederne l organizzazione risultante. Ad esempio, in sociologia, si possono modellare i differenti agenti che compongono una certa comunità. Attraverso la messa a punto dei vincoli, si può cercare di comprendere quale sarà la combinazione più efficace per pervenire al risultato atteso (ad es., la costruzione di una strada). Il fattore importante è il comportamento dell insieme, non il comportamento individuale. Le applicazioni esistenti riguardano la fisica delle particelle (l agente è una particella elementare), la chimica (l agente è una molecola), la biologia cellulare (cellula), l etologia (animale), la sociologia e l etnologia (essere umano). L autonomia consente in questi casi di simulare il comportamento esatto di ogni entità. Per risolvere un problema complesso, talvolta è più semplice concepire programmi relativamente piccoli (gli agenti) interagenti con un unico grosso programma monoblocco. L autonomia permette al sistema di adattarsi dinamicamente ai cambiamenti imprevisti che intervengono nell ambiente. Allo stesso tempo, l ingegneria del software si è evoluta in direzione di componenti sempre più autonomi. I sistemi ad agenti multipli possono essere visti come un raccordo tra ingegneria del software ed intelligenza artificiale distribuita, con l apporto rilevante dei sistemi distribuiti. L intelligenza artificiale distribuita è nata per risolvere i problemi di complessità dei grossi programmi monoblocco dell intelligenza artificiale. L esecuzione è pertanto non concentrata, ma il controllo rimane centralizzato. Al contrario, nei sistemi ad agenti multipli, ciascun agente possiede un controllo totale sul suo comportamento. In rapporto ad un oggetto, un agente può prendere iniziative, può rifiutarsi di obbedire ad una richiesta, può spostarsi, etc.. Questa autonomia consente al progettista di concentrarsi sul lato umanamente comprensibile del software. 3.2 La metafora dei videogiochi Si può rappresentare un sistema ad agenti multipli come una delle comunità virtuali attualmente diffuse nel mondo dei videogiochi. Ipotizziamo di avere 12

13 un gioco che simuli la vita di una famiglia, sul modello di The Sims 10. Il sistema multi-agente può essere decomposto in più dimensioni che vanno a definire differenti ambienti. Se prendiamo in considerazione, ad esempio un primo un ambiente e la sua metrica, possiamo ritenere che esso sia composto dalla casa con giardino in cui vive la famiglia. Il sistema può disporre anche di un insieme di oggetti passivi sui quali gli agenti possono intervenire: per esempio di tutti gli oggetti che vanno a comporre gli arredi la casa, ma anche dei generi alimentari, vestiario, etc... Naturalmente, un sistema ad agenti multipli è composto da più agenti; questi ultimi, attivi ed autonomi, interagiscono col loro entourage (l ambiente, gli oggetti e gli altri agenti), e corrispondono ai membri della famiglia (senza dimenticare eventuali animali domestici). Inoltre si mettono a punto un insieme di relazioni tra oggetti ed agenti, al fine di definire un organizzazione. Si potranno quindi esprimere i legami familiari tra i diversi individui, ma anche delineare i rapporti di proprietà (l appartenenza di uno specifico oggetto). Infine, si integra nel sistema un insieme di operatori che permettono agli agenti di agire sugli oggetti o su altri agenti (il figlio può mangiare una mela o giocare con il cane o fare i compiti con suo fratello), e di sensori che consentono agli agenti di conoscere i mutamenti ambientali e degli altri agenti (la mela è caduta in terra, papà mi ha chiesto di fare i compiti). Ecco dunque cos è che può chiamarsi sistema multi-agente. In informatica, l agente sarà un programma autonomo che possiede un insieme di conoscenze e agisce secondo regole proprie. 3.3 Agenti e proprietà intellettuali L ambito della proprietà intellettuale può essere esaminato sotto due distinte prospettive: la tutela dell agente e l attività dell agente. Nell ambito della tutela dell agente, il software è considerato il risultato dell attività intellettuale del suo autore. Tuttavia, gli agenti software, potranno incorporare o essere integrati con applicazioni di terze parti. Con riferimento alla protezione dell attività dell agente a alle sue risorse informative, occorrerà utilizzare in maniera corretta gli strumenti informativi e tecnici. Questi ultimi potranno contribuire a tutelare la sicurezza delle informazioni raccolte dall agente. È possibile infatti che le informazioni e i dati raccolti e memorizzati dall agente possano rientrare nella categoria di dati da tutelare. 10 https://www.thesims.com/it_it/ 13

14 4 Applicazioni relative al progetto di ricerca Gli obiettivi generali del programma di ricerca sono lo studio, la definizione e lo sviluppo di tecniche e algoritmi automatici o semi-automatici per la costruzione di tassonomie per domini specifici, a partire da sorgenti d informazione estratte principalmente dal web. Sarà inoltre realizzato un dimostratore finalizzato alla sperimentazione delle tecniche e degli algoritmi sviluppati. Per la realizzazione del dimostratore si utilizzerà la tecnologia basata sugli agenti software. In particolare si farà riferimento alle specifiche per l architettura astratta realizzate dalla FIPA (Foundation for Intelligent Phisical Agents) 11, organizzazione della IEEE che promuove la tecnologia basata su agenti intelligenti e l interoperabilità dei suoi standard con altre tecnologie. Tale architettura definisce il quadro all interno del quale gli agenti FIPA esistono e operano. Inoltre stabilisce il modello di riferimento logico per la creazione, la registrazione, l ubicazione, la comunicazione, la migrazione e il ritiro degli agenti. Le entità contenute nel modello di riferimento (vedi Figura 2) sono insiemi di capacità logiche (cioè, servizi) e non implicano alcuna configurazione fisica. I dettagli di implementazione dei singoli punti di accesso e gli agenti sono lasciati alle scelte di design degli sviluppatori del sistema ad agente. I componenti che compongono l Agent Platform sono i seguenti: L Agent è l attore fondamentale che unisce una o più capacità di servizio, come delineato nella descrizione del servizio, in un modello di esecuzione unico e integrato. Un agente deve avere almeno un proprietario e deve possedere un Agent Identifier (AID) che lo etichetta in modo che possa essere distinto senza ambiguità all interno della piattaforma. Un agente può essere registrato su più numeri di indirizzi di trasporto a cui può essere contattato. Sebbene risiedano sulla stessa piattaforma gli agenti possono risiedere su diversi computer host. Il Directory Facilitator (DF) è il componente (talvolta opzionale) che fornisce il servizio di Pagine Gialle agli agenti della piattaforma. Gli agenti possono registrare i loro servizi tramite il DF oppure interrogare il DF per sapere quali sono i servizi offerti dagli altri agenti. Possono esistere multipli DF federati tra loro all interno di un AP. L Agent Management System (AMS) è il componente che controlla e supervisiona l accesso e l utilizzo dell AP. In un AP può esistere solo un AMS. Poiché ogni agente si deve registrare tramite l AMS in modo tale da ottenere un AID valido, fornisce inoltre l elenco (consultabile dagli altri agenti della piattaforma) contenente i nominativi degli agenti e il loro relativo AID

15 Il Message Service Transport (MTS) è servizio di comunicazione predefinito tra gli agenti. Se sono presenti nel sistema ad agenti vari AP, questi comunicano tra loro tramite l MTS. L Agent Platform (AP) fornisce l infrastruttura fisica in cui gli agenti possono essere dislocati. L AP consiste nella macchina, nel sistema operativo, nel software di supporto agli agenti, nelle componenti DF, AMS, MTS e negli agenti. La progettazione interna di un AP non è oggetto di standardizzazione all interno FIPA, per cui la sua realizzazione è delegata agli sviluppatori di sistemi ad agente. L AP e i suoi agenti nativi possono utilizzare qualsiasi metodo proprietario di inter-comunicazione. La FIPA si preoccupa esclusivamente di come viene effettuata la comunicazione tra agenti nativi dell AP e agenti appartenenti ad altre AP. Gli agenti sono liberi di scambiare messaggi direttamente con qualsiasi mezzo che possono sostenere. Il software descrive tutte le istruzioni eseguibili attraverso un agente. Gli agenti possono utilizzare il software, ad esempio, per aggiungere nuovi servizi, acquisire nuovi protocolli di comunicazione, acquisire nuovi protocolli/algoritmi di sicurezza, acquisire nuovi protocolli di negoziazione, accedere strumenti di accesso che supportano la migrazione eccetera. Nell ambito del progetto di ricerca si utilizzerà il framework SPADE scritto in linguaggio Python. Gli agenti utilizzati nel progetto verranno descritti in seguito nel Deliverable D2.2a - Rapporto tecnico sulle tipologie di agenti software definiti e implementati nell ambito del progetto, mentre il relativo codice sorgente verrà consegnato nel Deliverable D2.2b - Librerie software e API contenenti il sistema ad agenti in versione preliminare. 15

16 Figura 2: Modello di riferimento per la gestione degli agenti. Riferimenti bibliografici [1] D. C. Smith, A. Cypher e J. Spohrer. KidSim: Programming Agents Without a Programming Language. Communications of the ACM, (37): 7,55-67, [2] Stuart J. Russell e Peter Norvig. Artificial Intelligence: A Modern Approach. Prentice Hall, [3] H. S. Nwana. Software Agents: An Overview. Cambridge University Press, [4] Stan Franklin e Art Graesser. Is It an Agent, or Just a Program?: A Taxonomy for Autonomous Agents. Institute for Intelligent Systems, University of Memphis, [5] N. R. Jennings e M. Wooldridge. Applications of Intelligents Agents. Queen Mary & Westfield College, University of London, [6] Stuart J. Russell e Peter Norvig. Artificial Intelligence: A Modern Approach (2nd edition). Prentice Hall,

17 [7] Peter Stone e Manuela Veloso. Multiagent Systems: A Survey from a Machine Learning Perspective. In Autonomous Robotics volume 8, number 3. July, [8] Liviu Panait e Sean Luke. Cooperative Multi-Agent Learning: The State of The Art. George Mason University, [9] Anand S. Rao e Michael P. George. Decision Procedures for BDI Logics. J Logic Computation, June [10] Tim Finin et al. DRAFT Specification of the KQML Agent- Communication Language. The DARPA Knowledge Sharing Initiative External Interfaces Working Group, June 15, [11] John R. Searle. Expression and Meaning: Studies in the Theory of Speech Acts. Cambridge University Press, October [12] Nwana H., Ndumu D., Collis J. & Lee L. Visualising and Debugging Distributed Multi-Agent Systems. To appear in the Proceedings of the 3rd Int. Conf. On Autonomous Agents, Seattle, May [13] Michael Wooldridge. An Introduction to MultiAgent Systems. John Wiley & Sons, Inc., [14] Gerhard Weiss. Multiagent Systems, A Modern Approach to Distributed Artificial Intelligence. MIT Press, [15] Jacques Ferber. Multi-Agent Systems: An Introduction to Artificial Intelligence. Addison-Wesley,

Sistemi ad Agenti. Perche studiare IA? Sistemi ad Agenti. Sistemi ad Agenti Modulo A

Sistemi ad Agenti. Perche studiare IA? Sistemi ad Agenti. Sistemi ad Agenti Modulo A Sistemi ad Agenti Modulo A Berardina Nadja De Carolis www.di.uniba.it/~nadja/ decarolis@di.uniba.it Sistemi ad Agenti Testo di Riferimento: Stuart Russell e Peter Norvig, Intelligenza Artificiale: Un approccio

Dettagli

Rappresentazione della Conoscenza. Sistemi multi-agente. Rappresentazione della conoscenza, A. Farinelli, 2004, Sistemi multi-agente 0

Rappresentazione della Conoscenza. Sistemi multi-agente. Rappresentazione della conoscenza, A. Farinelli, 2004, Sistemi multi-agente 0 Rappresentazione della Conoscenza Sistemi multi-agente Rappresentazione della conoscenza, A. Farinelli, 2004, Sistemi multi-agente 0 Sommario Introduzione [Wooldridge,Ferber - MAS, cap. 1] Interazione

Dettagli

SISTEMA PER LA GESTIONE E CONDIVISIONE DI RISORSE MULTIMEDIALI

SISTEMA PER LA GESTIONE E CONDIVISIONE DI RISORSE MULTIMEDIALI UNIVERSITÀ DEGLI STUDI DI TRENTO Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea Triennale in Informatica Tesi di Laurea SISTEMA PER LA GESTIONE E CONDIVISIONE DI RISORSE MULTIMEDIALI

Dettagli

Intelligenza Artificiale (lucidi lezione introduttiva)

Intelligenza Artificiale (lucidi lezione introduttiva) Intelligenza Artificiale (lucidi lezione introduttiva) Prof. Alfonso Gerevini Dipartimento di Elettronica per l Automazione Facoltà di Ingegneria Università degli Studi di Brescia 1 Che cosa è l Intelligenza

Dettagli

EMERGENCE OF SELF ORGANIZATION AND SEARCH FOR OPTIMAL ENTERPRISE STRUCTURE: AI EVOLUTIONARY METHODS APPLIED TO AGENT BASED PROCESS SIMULATION

EMERGENCE OF SELF ORGANIZATION AND SEARCH FOR OPTIMAL ENTERPRISE STRUCTURE: AI EVOLUTIONARY METHODS APPLIED TO AGENT BASED PROCESS SIMULATION EMERGENCE OF SELF ORGANIZATION AND SEARCH FOR OPTIMAL ENTERPRISE STRUCTURE: AI EVOLUTIONARY METHODS APPLIED TO AGENT BASED PROCESS SIMULATION remond@di.unito.it Department of Computer Science University

Dettagli

I Modelli della Ricerca Operativa

I Modelli della Ricerca Operativa Capitolo 1 I Modelli della Ricerca Operativa 1.1 L approccio modellistico Il termine modello è di solito usato per indicare una costruzione artificiale realizzata per evidenziare proprietà specifiche di

Dettagli

CAPITOLO 3 Previsione

CAPITOLO 3 Previsione CAPITOLO 3 Previsione 3.1 La previsione I sistemi evoluti, che apprendono le regole di funzionamento attraverso l interazione con l ambiente, si rivelano una risorsa essenziale nella rappresentazione di

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

Un framework per simulazione massiva distribuita basata su Agenti D-MASON: Architettura. Carmine Spagnuolo

Un framework per simulazione massiva distribuita basata su Agenti D-MASON: Architettura. Carmine Spagnuolo Un framework per simulazione massiva distribuita basata su Agenti D-MASON: Architettura Carmine Spagnuolo 1 Simulazione Multi-Agente Una simulazione multi-agente è un sistema in cui entità (agenti) intelligenti

Dettagli

Fondamenti di Informatica 7. Linguaggi di programmazione

Fondamenti di Informatica 7. Linguaggi di programmazione I linguaggi di alto livello Fondamenti di Informatica 7. Linguaggi di programmazione Introduzione alla programmazione Caratteristiche dei linguaggi di programmazione I linguaggi di programmazione di alto

Dettagli

Indice. Prefazione di Mario Rasetti Presentazione di Pietro Terna Ringraziamenti

Indice. Prefazione di Mario Rasetti Presentazione di Pietro Terna Ringraziamenti xxii-196_de_toni_utet 12-05-2009 14:08 Pagina V XI XV XIX Prefazione di Mario Rasetti Presentazione di Pietro Terna Ringraziamenti 3 PROLOGO La vita come emersione dal basso 7 Struttura del libro e percorsi

Dettagli

Una Piattaforma per lo Sviluppo di Applicazioni Multi-Agente

Una Piattaforma per lo Sviluppo di Applicazioni Multi-Agente 1 Una Piattaforma per lo Sviluppo di Applicazioni Multi-Agente A. Grosso, A. Gozzi, A. Boccalatte Abstract Il lavoro presentato in questo articolo si pone l obiettivo di realizzare un framework per la

Dettagli

RAPPRESENTAZIONE E E GESTIONE DEL CORE KNOWLEDGE

RAPPRESENTAZIONE E E GESTIONE DEL CORE KNOWLEDGE KNOWLEDGE MANAGEMENT Seminario Tematico Università di Milano-Bicocca RAPPRESENTAZIONE E E GESTIONE DEL CORE KNOWLEDGE Stefania Bandini Dipartimento di Informatica, Sistemistica e Comunicazione Università

Dettagli

Introduzione ai Web Services Alberto Polzonetti

Introduzione ai Web Services Alberto Polzonetti PROGRAMMAZIONE di RETE A.A. 2003-2004 Corso di laurea in INFORMATICA Introduzione ai Web Services alberto.polzonetti@unicam.it Introduzione al problema della comunicazione fra applicazioni 2 1 Il Problema

Dettagli

Metodologia Classica di Progettazione delle Basi di Dati

Metodologia Classica di Progettazione delle Basi di Dati Metodologia Classica di Progettazione delle Basi di Dati Metodologia DB 1 Due Situazioni Estreme Realtà Descritta da un documento testuale che rappresenta un insieme di requisiti del software La maggiore

Dettagli

Considera tutti i requisiti funzionali (use cases) NON deve necessariamente modellare i requisiti non funzionali

Considera tutti i requisiti funzionali (use cases) NON deve necessariamente modellare i requisiti non funzionali Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Progettazione OO E. TINELLI Punto di Partenza Il modello di analisi E una rappresentazione minima del

Dettagli

Il World Wide Web. Il Servizio World Wide Web (WWW) WWW WWW WWW WWW. Storia WWW: obbiettivi WWW: tecnologie Le Applicazioni Scenari Futuri.

Il World Wide Web. Il Servizio World Wide Web (WWW) WWW WWW WWW WWW. Storia WWW: obbiettivi WWW: tecnologie Le Applicazioni Scenari Futuri. Il Servizio World Wide Web () Corso di Informatica Generale (Roberto BASILI) Teramo, 20 Gennaio, 2000 Il World Wide Web Storia : obbiettivi : tecnologie Le Applicazioni Scenari Futuri La Storia (1990)

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)

Dettagli

Processi di Business e Sistemi di Gestione di Workflow: concetti di base. Prof. Giancarlo Fortino g.fortino@unical.it

Processi di Business e Sistemi di Gestione di Workflow: concetti di base. Prof. Giancarlo Fortino g.fortino@unical.it Processi di Business e Sistemi di Gestione di Workflow: concetti di base Prof. Giancarlo Fortino g.fortino@unical.it Introduzione Le aziende devono modificare la loro organizzazione per cogliere le nuove

Dettagli

Architettura del software: dai Casi d Uso al Modello

Architettura del software: dai Casi d Uso al Modello Architettura del software: dai Casi d Uso al Modello Lorenzo Barbieri Sono un Senior Trainer/Consultant in ObjectWay SpA (www.objectway.it), specializzato in architetture Microsoft.NET, Windows, SQL Server,

Dettagli

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) System Overview di Mattia Bargellini 1 CAPITOLO 1 1.1 Introduzione Il seguente progetto intende estendere

Dettagli

Luigi Piroddi piroddi@elet.polimi.it

Luigi Piroddi piroddi@elet.polimi.it Automazione industriale dispense del corso 2. Introduzione al controllo logico Luigi Piroddi piroddi@elet.polimi.it Modello CIM Un moderno sistema di produzione è conforme al modello CIM (Computer Integrated

Dettagli

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina Cosa è il DSS L elevato sviluppo dei personal computer, delle reti di calcolatori, dei sistemi database di grandi dimensioni, e la forte espansione di modelli basati sui calcolatori rappresentano gli sviluppi

Dettagli

Alessandra Raffaetà. Basi di Dati

Alessandra Raffaetà. Basi di Dati Lezione 2 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Basi di Dati

Dettagli

PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0

PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0 PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO 147 6/001.0 PIANIFICAZIONE E REALIZZAZIONE DI UN SISTEMA INFORMATIVO ELEMENTI FONDAMENTALI PER LO SVILUPPO DI SISTEMI INFORMATIVI ELABORAZIONE DI

Dettagli

TECNOLOGIE DELL INFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE

TECNOLOGIE DELL INFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE TECNOLOGIE DELL INFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE Materiale di supporto alla didattica Tecnologie dell informazione e della comunicazione per le aziende CAPITOLO 3: Progettazione e sviluppo

Dettagli

Agenti intelligenti. Maria Simi a.a. 2014/2015

Agenti intelligenti. Maria Simi a.a. 2014/2015 Agenti intelligenti Maria Simi a.a. 2014/2015 Riassunto Intelligenza come capacità diverse Capacità di simulare il comportamento umano? Capacità di ragionamento logico/matematico? Intelligenza come competenza

Dettagli

Ingegneria dei Requisiti

Ingegneria dei Requisiti Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Ingegneria dei Requisiti E. TINELLI Contenuti I requisiti del software Documento dei requisiti I processi

Dettagli

INGEGNERIA DEL SOFTWARE. Prof. Paolo Salvaneschi

INGEGNERIA DEL SOFTWARE. Prof. Paolo Salvaneschi Università di Bergamo Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica INGEGNERIA DEL SOFTWARE Prof. Paolo Salvaneschi 1 Obiettivi Scopi del corso: - Fornire gli elementi di base della disciplina,

Dettagli

PROGETTAZIONE E SVILUPPO DI UN SISTEMA MULTI-AGENTE PER LA GESTIONE DEL CENTRO UNICO PRENOTAZIONE (CUP) E DEI FASCICOLI SANITARI

PROGETTAZIONE E SVILUPPO DI UN SISTEMA MULTI-AGENTE PER LA GESTIONE DEL CENTRO UNICO PRENOTAZIONE (CUP) E DEI FASCICOLI SANITARI UNIVERSITA POLITECNICA DELLE MARCHE FACOLTA DI INGEGNERIA Corso di Laurea in Ingegneria Informatica e dell Automazione PROGETTAZIONE E SVILUPPO DI UN SISTEMA MULTI-AGENTE PER LA GESTIONE DEL CENTRO UNICO

Dettagli

Le FAQ della simulazione

Le FAQ della simulazione Le FAQ della simulazione L obiettivo di queste FAQ è fornire ai progettisti di corsi di formazione, a docenti, agli utenti di corsi di formazione e a coloro che sono addetti allo sviluppo delle risorse

Dettagli

Gestione Requisiti. Ingegneria dei Requisiti. Requisito. Tipi di Requisiti e Relativi Documenti. La gestione requisiti consiste in

Gestione Requisiti. Ingegneria dei Requisiti. Requisito. Tipi di Requisiti e Relativi Documenti. La gestione requisiti consiste in Ingegneria dei Requisiti Il processo che stabilisce i servizi che il cliente richiede I requisiti sono la descrizione dei servizi del sistema Funzionalità astratte che il sistema deve fornire Le proprietà

Dettagli

Servizi Web in Registri Distribuiti Luciano Baresi 1, Debora Desideri 2, Matteo Melideo 2, Alberto Sillitti 3, Giancarlo Succi 3

Servizi Web in Registri Distribuiti Luciano Baresi 1, Debora Desideri 2, Matteo Melideo 2, Alberto Sillitti 3, Giancarlo Succi 3 Servizi Web in Registri Distribuiti Luciano Baresi 1, Debora Desideri 2, Matteo Melideo 2, Alberto Sillitti 3, Giancarlo Succi 3 1 Politecnico di Milano 2 Engineering Ingegneria Informatica 3 Libera Università

Dettagli

Data Base. Prof. Filippo TROTTA

Data Base. Prof. Filippo TROTTA Data Base Definizione di DataBase Un Database può essere definito come un insieme di informazioni strettamente correlate, memorizzate su un supporto di memoria di massa, costituenti un tutt uno, che possono

Dettagli

TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE

TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE SETTORE I.C.T. Information and Communication Technology TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE STANDARD MINIMI DELLE COMPETENZE TECNICO PROFESSIONALI DESCRIZIONE

Dettagli

Automazione Industriale 4- Ingegneria del Software

Automazione Industriale 4- Ingegneria del Software Automation Robotics and System CONTROL Università degli Studi di Modena e Reggio Emilia Automazione Industriale 4- Ingegneria del Software Cesare Fantuzzi (cesare.fantuzzi@unimore.it) Ingegneria Meccatronica

Dettagli

UNIVERSITÀ DEGLI STUDI DELL INSUBRIA SETTORE ORIENTAMENTO - Ufficio Orientamento e Diritto allo Studio

UNIVERSITÀ DEGLI STUDI DELL INSUBRIA SETTORE ORIENTAMENTO - Ufficio Orientamento e Diritto allo Studio FACOLTÀ DI SCIENZE MM.FF.NN. COMO Scienze e Tecnologie dell Informazione Corso di laurea triennale - Classe n. 26 Scienze e tecnologie informatiche Caratteristiche e obiettivi del corso Il corso di Laurea

Dettagli

Ingegneria del Software. Business Object Technology

Ingegneria del Software. Business Object Technology Ingegneria del Software Business Object Technology Premesse I sistemi informativi di qualsiasi organizzazione devono essere capaci di: gestire quantità di dati sempre crescenti fornire supporto a nuovi

Dettagli

T-MAS: UN SISTEMA MULTIAGENTE PER IL TIMETABLING DISTRIBUITO

T-MAS: UN SISTEMA MULTIAGENTE PER IL TIMETABLING DISTRIBUITO Università degli Studi di Udine Facoltà di Scienze Matematiche, Fisiche e Naturali Tesi di Laurea Specialistica in Informatica T-MAS: UN SISTEMA MULTIAGENTE PER IL TIMETABLING DISTRIBUITO Relatore: Dott.

Dettagli

Corso di Informatica per la Gestione Aziendale

Corso di Informatica per la Gestione Aziendale Corso di Informatica per la Gestione Aziendale Anno Accademico: 2008/2009 4 parte DOCENTI: Prof.ssa Cecilia Rossignoli Dott. Gianluca Geremia Università degli Studi di Verona Dipartimento di Economia Aziendale

Dettagli

Ingegneria del Software UML - Unified Modeling Language

Ingegneria del Software UML - Unified Modeling Language Ingegneria del Software UML - Unified Modeling Language Obiettivi. Presentare un approccio visuale alla progettazione. Illustrare i vantaggi dell utilizzo di diagrammi nella fase di progettazione. Rispondere

Dettagli

Progettazione base dati relazionale

Progettazione base dati relazionale Progettazione base dati relazionale Prof. Luca Bolognini E-Mail:luca.bolognini@aliceposta.it Progettare una base di dati Lo scopo della progettazione è quello di definire lo schema della base di dati e

Dettagli

PROGRAMMAZIONE ANUALE DEL DIPARTIMENTO DI INFORMATICA E TELECOMUNICAZIONI ISTITUTO TECNICO a.s. 2015-16

PROGRAMMAZIONE ANUALE DEL DIPARTIMENTO DI INFORMATICA E TELECOMUNICAZIONI ISTITUTO TECNICO a.s. 2015-16 PROGRAMMAZIONE ANUALE DEL DIPARTIMENTO DI INFORMATICA E TELECOMUNICAZIONI ISTITUTO TECNICO a.s. 2015-16 SECONDO BIENNIO Disciplina: INFORMATICA La disciplina Informatica concorre a far conseguire allo

Dettagli

Introduzione alla Business Intelligence

Introduzione alla Business Intelligence SOMMARIO 1. DEFINIZIONE DI BUSINESS INTELLIGENCE...3 2. FINALITA DELLA BUSINESS INTELLIGENCE...4 3. DESTINATARI DELLA BUSINESS INTELLIGENCE...5 4. GLOSSARIO...7 BIM 3.1 Introduzione alla Pag. 2/ 9 1.DEFINIZIONE

Dettagli

Architetture dei Sistemi Distribuiti

Architetture dei Sistemi Distribuiti Università degli tudi di Roma Tor Vergata Facoltà di Ingegneria Architetture dei istemi Distribuiti Corso di istemi Distribuiti Valeria Cardellini Anno accademico 2008/09 Architettura sw di sistemi distribuito

Dettagli

RESPONS.In.City - Methodology

RESPONS.In.City - Methodology RESPONS.In.City - Methodology THE METHODOLOGY OF A RESPONSIBLE CITIZENSHIP PROMOTION Metodologia di Promozione della Cittadinanza come Responsabilità Condivisa 1 Premessa La possibilità di partecipare

Dettagli

Sistemi in grado di gestirsi in modo autonomo e dinamico La strategia di virtualizzazione di Microsoft

Sistemi in grado di gestirsi in modo autonomo e dinamico La strategia di virtualizzazione di Microsoft Disponibile anche sul sito: www.microsoft.com/italy/eclub/ OTTIMIZZAZIONE DELL INFRASTRUTTURA E SICUREZZA MICROSOFT Sistemi in grado di gestirsi in modo autonomo e dinamico La strategia di virtualizzazione

Dettagli

DEFINIZIONI FONDAMENTALI

DEFINIZIONI FONDAMENTALI Consorzio per la formazione e la ricerca in Ingegneria dell'informazione DEFINIZIONI FONDAMENTALI Per vincere ci vuole una buona partenza... Docente: Cesare Colombo CEFRIEL colombo@cefriel.it http://www.cefriel.it

Dettagli

1.4.1 Architettura protocollare 802.15. 1.4.2 Architettura Core System

1.4.1 Architettura protocollare 802.15. 1.4.2 Architettura Core System Introduzione Capitolo 1: Le Reti Wireless 1.1 Introduzione 1.2 Le reti Cellulari 1.2.1 Struttura di una rete cellulare 1.2.2 Stabilimento e mantenimento di una chiamata 1.3 Panoramica sulle diverse generazioni

Dettagli

Survey sui Framework per Testing di Sistemi Basati su Web Services

Survey sui Framework per Testing di Sistemi Basati su Web Services Survey sui Framework per Testing di Sistemi Basati su Web Services Severoni Francesco Facoltà di Scienze Dipartimento di Informatica Università degli Studi - L Aquila 67100 L Aquila, Italia Argomenti Trattati

Dettagli

Iniziativa Comunitaria Equal II Fase IT G2 CAM - 017 Futuro Remoto. Approfondimento INTERNET: IL FUNZIONAMENTO DELL INFRASTRUTTURA E DELLA RETE

Iniziativa Comunitaria Equal II Fase IT G2 CAM - 017 Futuro Remoto. Approfondimento INTERNET: IL FUNZIONAMENTO DELL INFRASTRUTTURA E DELLA RETE APPROFONDIMENTO ICT Iniziativa Comunitaria Equal II Fase IT G2 CAM - 017 Futuro Remoto Approfondimento INTERNET: IL FUNZIONAMENTO DELL INFRASTRUTTURA E DELLA RETE ORGANISMO BILATERALE PER LA FORMAZIONE

Dettagli

Fondamenti di Informatica. Allievi Automatici A.A. 2014-15 Nozioni di Base

Fondamenti di Informatica. Allievi Automatici A.A. 2014-15 Nozioni di Base Fondamenti di Informatica Allievi Automatici A.A. 2014-15 Nozioni di Base Perché studiare informatica? Perché l informatica è uno dei maggiori settori industriali, e ha importanza strategica Perché, oltre

Dettagli

LABORATORIO. 2 Lezioni su Basi di Dati Contatti:

LABORATORIO. 2 Lezioni su Basi di Dati Contatti: PRINCIPI DI INFORMATICA CORSO DI LAUREA IN SCIENZE BIOLOGICHE Gennaro Cordasco e Rosario De Chiara {cordasco,dechiara}@dia.unisa.it Dipartimento di Informatica ed Applicazioni R.M. Capocelli Laboratorio

Dettagli

Tesi disponibili nell ambito del progetto FP7 ARISTOTELE. Tesi disponibili nell ambito del progetto INDUSTRIA 2015 KITE.it

Tesi disponibili nell ambito del progetto FP7 ARISTOTELE. Tesi disponibili nell ambito del progetto INDUSTRIA 2015 KITE.it Tesi disponibili nell ambito del progetto FP7 ARISTOTELE Ambiente collaborativo per il design e l innovazione Il lavoro si concentrerà sullo sviluppo di specifici componenti di un ambiente collaborativo

Dettagli

A A Design Tool to Develop Agent-Based Workflow Management Systems

A A Design Tool to Develop Agent-Based Workflow Management Systems Università degli Studi di Genova Facoltà di Ingegneria DIST - Dipartimento di Informatica, Sistemistica e Telematica A A Design Tool to Develop Agent-Based Workflow Management Systems Marco Repetto, Massimo

Dettagli

LABORATORIO di INFORMATICA

LABORATORIO di INFORMATICA Università degli Studi di Cagliari Corso di Laurea Magistrale in Ingegneria per l Ambiente ed il Territorio LABORATORIO di INFORMATICA A.A. 2010/2011 Prof. Giorgio Giacinto INTRODUZIONE AI SISTEMI DI BASI

Dettagli

Informatica Documentale

Informatica Documentale Informatica Documentale Ivan Scagnetto (scagnett@dimi.uniud.it) Stanza 3, Nodo Sud Dipartimento di Matematica e Informatica Via delle Scienze, n. 206 33100 Udine Tel. 0432 558451 Ricevimento: giovedì,

Dettagli

SCUOLA MEDIA STATALE F. GUARINI SOLOFRA

SCUOLA MEDIA STATALE F. GUARINI SOLOFRA SCUOLA MEDIA STATALE F. GUARINI SOLOFRA I. Introduzione COUNSELING E COUNSELOR Attualmente nella sua definizione più ampia, il termine Counseling indica la relazione d aiuto che si instaura tra una persona

Dettagli

Il cervello è un computer?

Il cervello è un computer? Corso di Intelligenza Artificiale a.a. 2012/13 Viola Schiaffonati Il cervello è un computer? Definire l obiettivo L obiettivo di queste due lezioni è di analizzare la domanda, apparentemente semplice,

Dettagli

OggettivaMente Serviti New wave of services to empower IoT Milano, 20 Maggio 2014

OggettivaMente Serviti New wave of services to empower IoT Milano, 20 Maggio 2014 OggettivaMente Serviti New wave of services to empower IoT Milano, 20 Maggio 2014 Telecom Italia Digital Solutions Mario Costamagna Sales Manager Business Unit Machine to Machine & IoT Services Indice

Dettagli

SISTEMA DI PREFETCHING CLIENT-SIDE PER TRAFFICO WEB

SISTEMA DI PREFETCHING CLIENT-SIDE PER TRAFFICO WEB UNIVERSITÀ DEGLI STUDI DI ROMA TOR VERGATA Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica Progetto per il corso di Ingegneria del Web SISTEMA DI PREFETCHING CLIENT-SIDE PER

Dettagli

Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di laurea specialistica in INFORMATICA

Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di laurea specialistica in INFORMATICA Università degli Studi di Perugia Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di laurea specialistica in INFORMATICA Basi di Dati Avanzate e Tecniche di Data Mining Prof. G. Cecconi, Prof.

Dettagli

Riconoscimento di cifre manoscritte tramite una rete neurale

Riconoscimento di cifre manoscritte tramite una rete neurale Riconoscimento di cifre manoscritte tramite una rete neurale 3 luglio 2008 Argomenti discussi 1 Il problema 2 Il training set Codifica dei file 3 Soluzione implementata Soluzione ideale Soluzione implementata

Dettagli

Quali sono le tecnologie che l ente ha a disposizione e quelle predisposte ad essere implementate in un prossimo futuro.

Quali sono le tecnologie che l ente ha a disposizione e quelle predisposte ad essere implementate in un prossimo futuro. Esercizio di GRUPPO: PROTOCOLLO INFORMATICO Mappa concettuale TECNOLOGIE DISPONIBILI Quali sono le tecnologie che l ente ha a disposizione e quelle predisposte ad essere implementate in un prossimo futuro.

Dettagli

WEB SERVER EMBEDDED PER APPLICAZIONI DI DOMOTICA. Fig. 1 - Architettura di un web server embedded

WEB SERVER EMBEDDED PER APPLICAZIONI DI DOMOTICA. Fig. 1 - Architettura di un web server embedded WEB SERVER EMBEDDED PER APPLICAZIONI DI Cristian Randieri Per far fronte alle esigenze di sviluppatori che intendono gestire applicazioni professionali per la domotica e la home building automation sfruttando

Dettagli

Object Oriented Programming

Object Oriented Programming OOP Object Oriented Programming Programmazione orientata agli oggetti La programmazione orientata agli oggetti (Object Oriented Programming) è un paradigma di programmazione Permette di raggruppare in

Dettagli

Ingegneria del Software T. 2. Analisi orientata agli oggetti

Ingegneria del Software T. 2. Analisi orientata agli oggetti Ingegneria del Software T 2. Analisi orientata agli oggetti Per effettuare correttamente l analisi, è necessario Comunicare con l utente Ottenere una buona conoscenza dell area applicativa Determinare

Dettagli

Analisi. Ingegneria del Software L-A. Analisi. Analisi. Ingegneria del Software L-A 2.1. 2. Analisi orientata agli oggetti

Analisi. Ingegneria del Software L-A. Analisi. Analisi. Ingegneria del Software L-A 2.1. 2. Analisi orientata agli oggetti Ingegneria del Software L-A 2. orientata agli oggetti Per effettuare correttamente l analisi, è necessario Comunicare con l utente Ottenere una buona conoscenza dell area applicativa Determinare in dettaglio

Dettagli

Analisi. Ingegneria del Software L-A. Analisi. Analisi. Analisi e gestione dei rischi. Analisi e gestione dei rischi. Ingegneria del Software L-A 2.

Analisi. Ingegneria del Software L-A. Analisi. Analisi. Analisi e gestione dei rischi. Analisi e gestione dei rischi. Ingegneria del Software L-A 2. Ingegneria del Software L-A 2. orientata agli oggetti Per effettuare correttamente l analisi, è necessario Comunicare con l utente Ottenere una buona conoscenza dell area applicativa Determinare in dettaglio

Dettagli

Apprendimento Automatico

Apprendimento Automatico Metodologie per Sistemi Intelligenti Apprendimento Automatico Prof. Pier Luca Lanzi Laurea in Ingegneria Informatica Politecnico di Milano Polo regionale di Como Intelligenza Artificiale "making a machine

Dettagli

L obiettivo dei percorsi formativi inseriti in questo Catalogo è quello di fornire iter di apprendimento che rispondano alle esigenze di crescita

L obiettivo dei percorsi formativi inseriti in questo Catalogo è quello di fornire iter di apprendimento che rispondano alle esigenze di crescita PRESENTAZIONE Bluform, società affermata nell ambito della Consulenza e della Formazione aziendale, realizza percorsi formativi rivolti ai dirigenti ed ai dipendenti delle aziende che vogliono far crescere

Dettagli

Sistemi di gestione delle basi di dati. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Sistemi di gestione delle basi di dati. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma Sistemi di gestione delle basi di dati 1 Cos è un DBMS? Una collezione integrata molto grande di dati Modella organizzazioni del mondo reale Entità (ad esempio studenti, corsi) Relazioni (ad esempio, Madonna

Dettagli

Introduzione alla Business Intelligence. E-mail: infobusiness@zucchetti.it

Introduzione alla Business Intelligence. E-mail: infobusiness@zucchetti.it Introduzione alla Business Intelligence E-mail: infobusiness@zucchetti.it Introduzione alla Business Intelligence Introduzione Definizione di Business Intelligence: insieme di processi per raccogliere

Dettagli

Il giardino nella macchina: la vita artificiale. 2003 Mauro Annunziato

Il giardino nella macchina: la vita artificiale. 2003 Mauro Annunziato Il giardino nella macchina: la vita artificiale 2003 Mauro Annunziato La fondazione della vita artificiale Chris Langton ( 89) Artificial Life (Alife) : programmi che autonomamente si evolvono all interno

Dettagli

Caratteristiche Applicabilità. Piattaforma Logistica

Caratteristiche Applicabilità. Piattaforma Logistica Caratteristiche Applicabilità Piattaforma Logistica Versione 2.0-2011 Azioni semplici o strutturate Risorse umane e materiali Tempi e Luoghi La Piattaforma WOLT è una soluzione progettata per rispondere

Dettagli

Cultura Tecnologica di Progetto

Cultura Tecnologica di Progetto Cultura Tecnologica di Progetto Politecnico di Milano Facoltà di Disegno Industriale - DATABASE - A.A. 2003-2004 2004 DataBase DB e DataBase Management System DBMS - I database sono archivi che costituiscono

Dettagli

Scratch 2.0 Modulo didattico

Scratch 2.0 Modulo didattico Scratch 2.0 Modulo didattico Sommario Premessa... 3 Perché insegnare la programmazione del computer ai Bambini?... 4 Scratch... 5 Destinatari... 6 Materiali... 6 Risorse online... 6 Modulo didattico...

Dettagli

Spettabile. Termine attività PREMESSA

Spettabile. Termine attività PREMESSA Spettabile Ogetto: Regione Lazio - Bando per l educazione permanente degli adulti. Misura 1.a di Sistema. Delibera Giunta Regionale n. 30 dell 11/01/2001 - (Pubblicato nel BUR Lazio n.5 del 20 febbraio

Dettagli

> Team Types / Leadership Styles Report. Nome: Peter Sample

> Team Types / Leadership Styles Report. Nome: Peter Sample > Team Types / Leadership Styles Report Nome: Peter Sample Data: 14 aprile 2009 Stile di Gruppo Introduzione Questo report riassume gli stili preferiti nel gruppo dal Sig. Sample sulla base del suo profilo

Dettagli

Comunicazione per Agenda 21L Agenda 21L per la comunicazione

Comunicazione per Agenda 21L Agenda 21L per la comunicazione COM-PA Bologna, 21 settembre 2000 Salone della Comunicazione Pubblica e dei servizi al cittadino Comunicazione per Agenda 21L Agenda 21L per la comunicazione Appunti per una Carta di riferimento su Comunicazione

Dettagli

Introduzione all informatica (cosa è, di cosa si occupa) 9/2/2015 Informatica applicata alla comunicazione multimediale Cristina Bosco

Introduzione all informatica (cosa è, di cosa si occupa) 9/2/2015 Informatica applicata alla comunicazione multimediale Cristina Bosco Introduzione all informatica (cosa è, di cosa si occupa) 9/2/2015 Informatica applicata alla comunicazione multimediale Cristina Bosco Indice - Di cosa si occupa l informatica? - Cosa sono gli algoritmi?

Dettagli

Talent Management 2020. Scenari e prospettive futuri

Talent Management 2020. Scenari e prospettive futuri Talent Management 2020 Scenari e prospettive futuri INTRODUZIONE Le funzioni delle Risorse Umane (Human Resources-HR) non solo forniscono molti servizi interni, come la selezione del personale, il sostegno

Dettagli

Corso di Amministrazione di Sistema Parte I ITIL 3

Corso di Amministrazione di Sistema Parte I ITIL 3 Corso di Amministrazione di Sistema Parte I ITIL 3 Francesco Clabot Responsabile erogazione servizi tecnici 1 francesco.clabot@netcom-srl.it Fondamenti di ITIL per la Gestione dei Servizi Informatici Il

Dettagli

LO SVILUPPO, IL BAMBINO, L AMBIENTE

LO SVILUPPO, IL BAMBINO, L AMBIENTE URIE BRONFENBRENNER E L APPROCCIO ECOLOGICO - PRIMA PARTE PROF. BARBARA DE CANALE Indice 1 LO SVILUPPO, IL BAMBINO, L AMBIENTE -------------------------------------------------------------------------

Dettagli

Le ICT nella pratica e nello sviluppo professionale dei docenti

Le ICT nella pratica e nello sviluppo professionale dei docenti Le ICT nella pratica e nello sviluppo professionale dei docenti Verso un quadro di riferimento delle degli insegnanti nelle ICT per la loro pratica Vittorio Midoro, CNR, Istituto Tecnologie Didattiche

Dettagli

Sistemi Informativi e WWW

Sistemi Informativi e WWW Premesse Sistemi Informativi e WWW WWW: introduce un nuovo paradigma di diffusione (per i fornitori) e acquisizione (per gli utilizzatori) delle informazioni, con facilità d uso, flessibilità ed economicità

Dettagli

E-learning e teorie sull apprendimento

E-learning e teorie sull apprendimento Istituto Nazionale Previdenza Sociale Gestione Dipendenti Pubblici E-learning e teorie sull apprendimento E-Learning per la Pubblica Amministrazione - Teorie sull apprendimento Apprendimento Cambiamento

Dettagli

Introduzione a PowerSchedO

Introduzione a PowerSchedO Il sistema di supporto alle tue decisioni Introduzione a PowerSchedO White paper Per maggiori informazioni http://www.powerschedo.it http://www.mbigroup.it PowerSchedO è un marchio registrato MBI. Questo

Dettagli

ANALISI DEL RISCHIO NELLA VALUTAZIONE DEGLI INVESTIMENTI. Docente: Prof. Massimo Mariani

ANALISI DEL RISCHIO NELLA VALUTAZIONE DEGLI INVESTIMENTI. Docente: Prof. Massimo Mariani ANALISI DEL RISCHIO NELLA VALUTAZIONE DEGLI INVESTIMENTI Docente: Prof. Massimo Mariani 1 SOMMARIO Analisi del rischio; limiti del VAN in contesti di incertezza; tecniche di descrizione del rischio dei

Dettagli

Interoperabilità e cooperazione applicativa tra sistemi informativi

Interoperabilità e cooperazione applicativa tra sistemi informativi Interoperabilità e cooperazione applicativa tra sistemi informativi Michele Ruta Dipartimento di Ingegneria Elettrica e dell Informazione Politecnico di Bari 1di 29 Indice Introduzione ai Port Community

Dettagli

Il Centro Regionale Information Communication Technology CeRICT scrl. Dott. Sergio Betti Direttore Generale CeRICT

Il Centro Regionale Information Communication Technology CeRICT scrl. Dott. Sergio Betti Direttore Generale CeRICT Il Centro Regionale Information Communication Technology CeRICT scrl Dott. Sergio Betti Direttore Generale CeRICT Storia CeRICT Il CeRICT nato nel 2002 come Progetto per la realizzazione di un centro di

Dettagli

Configuration of a distributed system as emerging behavior of autonomous agents

Configuration of a distributed system as emerging behavior of autonomous agents Configuration of a distributed system as emerging behavior of autonomous agents Configuration of a distributed system as emerging behavior of autonomous agents : Questo documento illustra la strategia

Dettagli

Corso di Programmazione ad Oggetti

Corso di Programmazione ad Oggetti Corso di Programmazione ad Oggetti Introduzione alla programmazione ad oggetti a.a. 2008/2009 Claudio De Stefano 1 La programmazione modulare Un programma può essere visto come un insieme di moduli che

Dettagli

Sistemi di acquisizione dati

Sistemi di acquisizione dati Sistemi di acquisizione dati - 1 Sistemi di acquisizione dati 1 - Configurazioni tipiche Generalità L impiego di tecniche numeriche per la rappresentazione dei segnali consente la successiva elaborazione

Dettagli

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Fondamenti di Informatica Linguaggi di Programmazione Michele Tomaiuolo Linguaggi macchina I

Dettagli

L insegnamento-apprendimento della lingua inglese nella scuola primaria

L insegnamento-apprendimento della lingua inglese nella scuola primaria L insegnamento-apprendimento della lingua inglese nella scuola primaria Diana Saccardo MIUR-Direzione Generale per gli Ordinamenti Scolastici La riforma scolastica propone l insegnamento-apprendimento

Dettagli

Machine Learning -1. Seminari di Sistemi Informatici. F.Sciarrone-Università Roma Tre

Machine Learning -1. Seminari di Sistemi Informatici. F.Sciarrone-Università Roma Tre Machine Learning -1 Seminari di Sistemi Informatici Sommario Problemi di apprendimento Well-Posed Esempi di problemi well-posed Progettazione di un sistema di apprendimento Scelta della Training Experience

Dettagli

Basi di Dati. Programmazione e gestione di sistemi telematici

Basi di Dati. Programmazione e gestione di sistemi telematici Basi di Dati. Programmazione e gestione di sistemi telematici Coordinatore: Prof. Paolo Nesi Docenti: Prof. Paolo Nesi Dr.sa Michela Paolucci Dr. Emanuele Bellini Cosa e l informatica? Scienza del trattamento

Dettagli

Una Architettura Open Service per la Gestione del Rischio Ambientale: il progetto ORCHESTRA

Una Architettura Open Service per la Gestione del Rischio Ambientale: il progetto ORCHESTRA Una Architettura Open Service per la Gestione del Rischio Ambientale: il progetto ORCHESTRA Olga RENDA (*), John FAVARO (**), Thomas USLÄNDER (***), Ralf DENZER (****) (*) Intecs S.p.A., Pisa, Italy, Tel.

Dettagli

SCADA: struttura modulare

SCADA: struttura modulare Sistemi per il controllo di supervisione e l acquisizione dati o (Supervisory Control And Data Acquisition) Sistema informatico di misura e controllo distribuito per il monitoraggio di processi fisici

Dettagli