975 resultados para intelligenza artificiale orario sistemi basati sulla conoscenza
Resumo:
Uno dei problemi che affligge le segreterie didattiche almeno una volta l’anno è la creazione di un orario delle lezioni che soddisfi sia docenti che studenti. Questo lavoro viene solitamente svolto a mano dagli addetti ai lavori che, muniti di tanta pazienza e con i dati alla mano, compongono l’orario facendo attenzione a tenere in considerazione tutti i dettagli. Con il lavoro svolto per questa tesi si intende migliorare la situazione attuale, fornendo agli addetti ai lavori uno strumento che sia in grado di generare un orario completo e soddisfacente, a partire dai dati a loro disposizione.
Resumo:
Questo elaborato concerne la revisione della letteratura scientifica relativa alla teorizzazione e realizzazione tecnologica del memristor, un nuovo componente elettronico teorizzato nel 1971 e realizzato solo nel 2008 nei laboratori della HP (Hewlett Packard, Palo Alto, California). Dopo una descrizione in termini matematici della teoria fisica alla base del dispositivo e del suo funzionamento, viene descritta la sua realizzazione tecnologica e il corrispettivo modello teorico. Succesivamente il lavoro discute la possibile analogia tra il funzionamento del memristor ed il funzionamento di neuroni e sinapsi biologiche all'interno del Sistema Nervoso Centrale. Infine, vengono descritte le architetture recentemente proposte per l'implementazione di reti neurali artificiali fondate su un sistema computazionale parallelo e realizzate mediante sistemi ibridi transistors/memristors.
Resumo:
Nell'ambito dell'Intelligenza Artificiale uno dei problemi aperti e piu difficile da risolvere e la comprensione del linguaggio naturale. La complessita sintattica e la conoscenza che bisogna avere per comprendere riferimenti, relazioni e concetti impliciti rendono questo problema molto interessante e la sua risoluzione di grande importanza per lo sviluppo di applicazioni che possano interagire in modo diretto con le persone. Questo lavoro di tesi non pretende di studiare e trovare una soluzione completa al suddetto problema, ma si prefigge come obiettivo quello di comprendere e risolvere problemi matematici di tipo logico ed aritmetico scritti in lingua inglese. La difficolta del lavoro si riduce in quanto non si devono considerare gli infiniti ambiti conoscitivi e puo concentrarsi su un'unica interpretazione del testo: quella matematica. Nonostante questa semplificazione il problema da affrontare rimane di grande difficolta poiche e comunque necessario confrontarsi con la complessita del linguaggio naturale. Esempi di problemi matematici che si intende risolvere si possono trovare presso il sito web dell'Universita della Bocconi nella sezione dei Giochi Matematici. Questi problemi richiedono la conoscenza di concetti di logica, insiemistica e di algebra lineare per essere risolti. Il modello matematico che descrive questi problemi non e complesso ed una volta dedotto correttamente e di facile risoluzione tramite un risolutore automatico. La difficolta consiste nel comprendere correttamente il testo ed estrapolarne il giusto modello. Il lavoro che si andra ad esporre nel seguito parte dall'analisi del testo ed arriva fino alla risoluzione del quesito matematico. Si parte quindi da un'analisi del testo con scopo generale seguita da un'analisi semantica volta alla costruzione del modello matematico che andra poi risolto da un risolutore automatico che ne restituira il risultato finale.
Resumo:
La dieta, nell’antica medicina greca, rappresentava il complesso delle norme di vita, come l’alimentazione, l’attività fisica, il riposo, atte a mantenere lo stato di salute di una persona. Al giorno d’oggi le si attribuisce un significato fortemente legato all’alimentazione, puo` riferirsi al complesso di cibi che una persona mangia abitualmente oppure, con un messaggio un po' più moderno, ad una prescrizione di un regime alimentare da parte di un medico. Ogni essere umano mangia almeno tre volte al giorno, ognuno in base al proprio stile di vita, cultura, età, etc. possiede differenti abitudini alimentari che si ripercuotono sul proprio stato di salute. Inconsciamente tutti tengono traccia degli alimenti mangiati nei giorni precedenti, chi più chi meno, cercando di creare quindi una pianificazione di cosa mangiare nei giorni successivi, in modo da variare i pasti o semplicemente perchè si segue un regime alimentare particolare per un certo periodo. Diventa quindi fondamentale tracciare questa pianificazione, in tal modo si puo' tenere sotto controllo la propria alimentazione, che è in stretta relazione con il proprio stato di salute e stress, e si possono applicare una serie di aggiustamenti dove necessario. Questo è quello che cerca di fare il “Menu Planning”, offrire una sorta di guida all’alimentazione, permettendo così di aver sotto controllo tutti gli aspetti legati ad essa. Si pensi, ad esempio, ai prezzi degli alimenti, chiunque vorrebbe minimizzare la spesa, mangiare quello che gli piace senza dover per forza rinunciare a quale piccolo vizio quotidiano. Con le tecniche di “Menu Planning” è possibile avere una visione di insieme della propria alimentazione. La prima formulazione matematica del “Menu Planning” (allora chiamato diet problem) nacque durante gli anni ’40, l’esercito Americano allora impegnano nella Seconda Guerra Mondiale voleva abbassare i costi degli alimenti ai soldati mantenendo però inalterata la loro dieta. George Stingler, economista americano, trovò una soluzione, formulando un problema di ottimizzazione e vincendo il premio Nobel in Economia nel 1982. Questo elaborato tratta dell’automatizzazione di questo problema e di come esso possa essere risolto con un calcolatore, facendo soprattutto riferimento a particolari tecniche di intelligenza artificiale e di rappresentazione della conoscenza, nello specifico il lavoro si è concentrato sulla progettazione e sviluppo di un ES case-based per risolvere il problema del “Menu Planning”. Verranno mostrate varie tecniche per la rappresentazione della conoscenza e come esse possano essere utilizzate per fornire supporto ad un programma per elaboratore, partendo dalla Logica Proposizionale e del Primo Ordine, fino ad arrivare ai linguaggi di Description Logic e Programmazione Logica. Inoltre si illustrerà come è possibile raccogliere una serie di informazioni mediante procedimenti di Knowledge Engineering. A livello concettuale è stata introdotta un’architettura che mette in comunicazione l’ES e un Ontologia di alimenti con l’utilizzo di opportuni framework di sviluppo. L’idea è quella di offrire all’utente la possibilità di vedere la propria pianificazione settimanale di pasti e dare dei suggerimenti su che cibi possa mangiare durante l’arco della giornata. Si mostreranno quindi le potenzialità di tale architettura e come essa, tramite Java, riesca a far interagire ES case-based e Ontologia degli alimenti.
Resumo:
Presentazione e discussione critica del test di Turing e degli aspetti filosofici correlati all'intelligenza artificiale.
Resumo:
L'elaborato affronta la progettazione di un'intelligenza artificiale per giochi strategici real-time in cui viene descritta la suddivisione dei livelli di astrazione e vengono prese in considerazione due architetture specifiche, SORTS ed EISBot, facendo particolare attenzione sulle problematiche riscontrate nell'ambiente di gioco.
Resumo:
Una parte importante della ricerca in Intelligenza Artificiale e guidata dal confronto tra una macchina ed un essere umano nello svolgere un determinato compito. In questa Tesi viene considerata la sfida della risoluzione automatica di giochi matematici. Dopo un'introduzione sulle principali caratteristiche del problema, verranno esaminati i lavori correlati esistenti e i componenti utilizzabili al fine di proporre uno strumento che, a partire da un testo in lingua Italiana, ricavi il modello del quesito in esso descritto.
Resumo:
L’obiettivo della tesi è definire un modello che permetta di realizzare applicazioni che integrino diverse tecnologie come la realtà aumentata, pervasive computing e Internet of Things. In particolare si analizza la nozione di "augmentation" che indica un’estensione e un arricchimento delle funzionalità e delle informazioni che possono essere percepite dai sensi umani e che può essere ritrovata, in modo diverso, nelle tecnologie trattate. A tal proposito, si introduce l’idea di augmented world, il cui scopo è quello di realizzare un livello aumentato collegato ad un livello fisico, attraverso il quale permettere l’interazione tra elementi virtuali ed elementi fisici. In seguito, tramite un'analisi tassonomica si vogliono individuare le caratteristiche ed i requisiti fondanti degli ambiti applicativi trattati per poter definire un modello che possa essere utilizzato come riferimento per le diverse tipologie di applicazioni. Infine il modello proposto è stato applicato a diversi casi di studio che spaziano tra i principali contesti applicativi in cui vengono utilizzate le tecnologie illustrate. La modellazione è fatta prescindendo da alcuni aspetti relativi alla comunicazione o alla sincronizzazione tra livello reale e livello aumentato, in quanto l’obiettivo è esporre una prima validazione del modello che permetta di riscontrarne l’adeguatezza ed eventuali limiti per una futura raffinazione.
Resumo:
I sistemi di intelligenza artificiale vengono spesso messi a confronto con gli aspetti biologici riguardanti il cervello umano. L’interesse per la modularità è in continua crescita, che sta portando a risultati davvero interessanti attraverso l’utilizzo di sistemi artificiali intelligenti, come le reti neuronali. Molte reti, sia biologiche sia artificiali sono organizzate in moduli, i quali rappresentano cluster densi di parti interconnesse fra loro all’interno di una rete complessa. Nel campo dell’ingegneria, si usano design modulari per spiegare come una macchina è costituita da parti separate. Lo studio della struttura e delle funzioni di organismi/processi complessi si basa implicitamente su un principio di organizzazione modulare, vale a dire si dà per acquisito il fatto che siano modulari, cioè composti da parti con forma e/o funzioni diverse. Questo elaborato si propone di esporre gli aspetti fondamentali riguardanti la modularità di reti neuronali, le sue origini evolutive, le condizioni necessarie o sufficienti che favoriscono l’emergere dei moduli e relativi vantaggi. Il primo capitolo fornisce alcune conoscenze di base che permettono di leggere gli esperimenti delle parti successive con consapevolezza teorica più profonda. Si descrivono reti neuronali artificiali come sistemi intelligenti ispirati alla struttura di reti neurali biologiche, soffermandosi in particolare sulla rete feed-forward, sull’algoritmo di backpropagation e su modelli di reti neurali modulari. Il secondo capitolo offre una visione delle origini evolutive della modularità e dei meccanismi evolutivi riguardanti sistemi biologici, una classificazione dei vati tipi di modularità, esplorando il concetto di modularità nell’ambito della psicologia cognitiva. Si analizzano i campi disciplinari a cui questa ricerca di modularità può portare vantaggi. Dal terzo capitolo che inizia a costituire il corpo centrale dell’elaborato, si dà importanza alla modularità nei sistemi computazionali, illustrando alcuni casi di studio e relativi metodi presenti in letteratura e fornendo anche una misura quantitativa della modularità. Si esaminano le varie possibilità di evoluzione della modularità: spontanea, da specializzazione, duplicazione, task-dependent, ecc. passando a emulare l’evoluzione di sistemi neurali modulari con applicazione al noto modello “What-Where” e a vari modelli con caratteristiche diverse. Si elencano i vantaggi che la modularità produce, soffermandosi sull’algoritmo di apprendimento, sugli ambienti che favoriscono l’evoluzione della modularità con una serie di confronti fra i vari tipi, statici e dinamici. In ultimo, come il vantaggio di avere connessioni corte possa portare a sviluppare modularità. L’obiettivo comune è l’emergere della modularità in sistemi neuronali artificiali, che sono usati per applicazioni in numerosi ambiti tecnologici.
Resumo:
I sistemi esperti sono programmi che cercano di riprodurre le prestazioni di esperti umani nella risoluzione di problemi specifici. Essi rappresentano il più conosciuto risultato pratico della ricerca in intelligenza artificiale. Ne vengono analizzate la struttura interna, i paragidmi su cui si basano, i componenti che ne fanno parte e i linguaggi di programmazione principali. Viene studiato uno dei primi distemi esperti: il MYCIN. Esso opera nel campo medico ed è stato di notevole importanza e innovazione nei primi anni in cui questi sistemi venivano sviluppati.
Resumo:
Parlare di KeyCrime significa rapportarsi con un software che si fonda prioritariamente su di un metodo scientifico che fa proprio il ragionamento conclusivo (conclusive reasoning), applicato al decison making , pertanto all’intelligence investigativa e alla predictive policing. Potremmo pensare a KeyCrime come un paradigma operativo che si pone in sinergia tra la filosofia, il cognitivismo giuridico e le scienze applicate (Romeo F., 2006). Quando analisi e decision making trovano in un unico contesto il terreno fertile dove svilupparsi, ma ancor più, creare presupposti di ragionamento, ecco che da queste è facile comprendere da quale altra condizione sono nate, attivate e soprattutto utilizzate ai fini di un risultato: questa non è altro che “l’osservazione”; se ben fatta, profonda e scientifica offre una sistematica quanto utile predisposizione alle indagini, specialmente di carattere preventivo per l’anticrimine e la sicurezza.
Resumo:
I sistemi mobili rappresentano una classe di sistemi distribuiti caratterizzata dalla presenza di dispositivi portatili eterogenei quali PDA, laptop e telefoni cellulari che interagiscono tra loro mediante una rete di interconnessione wireless. Una classe di sistemi mobili di particolare interesse è costituita dai sistemi basati sul modello di interazione publish/subscribe. Secondo tale schema, i nodi all'interno di una rete possono assumere due ruoli differenti: i produttori di informazione, chiamati publisher, ed i consumatori di informazione, chiamati subscriber. Tipicamente, l'interazione tra essi è mediata da un gestore di eventi che indirizza correttamente le informazioni ricevute dai publisher verso i subscriber interessati, sulla base degli interessi espressi da questi ultimi tramite sottoscrizioni. Nella progettazione di sistemi mobili, a differenza di quelli tradizionali basati su nodi fissi, bisogna tenere conto di problemi quali la scarsa capacità computazionale dei dispositivi e la limitata larghezza di banda delle reti wireless. All'interno di tale ambito, stanno recentemente assumendo sempre maggiore importanza i sistemi context-aware, ovvero sistemi mobili che sfruttano i dati provenienti dall'ambiente circostante e dai dispositivi stessi per adattare il proprio comportamento e notificare agli utenti la presenza di informazioni potenzialmente utili. Nello studio di questi sistemi, si è notato che i nodi che si trovano nella stessa area geografica generano tipicamente delle sottoscrizioni che presentano tra loro un certo grado di similarità e coperture parziali o totali. Il gruppo di ricerca del DEIS dell’Università di Bologna ha sviluppato un'infrastruttura di supporto per sistemi mobili context-aware, chiamata SALES. Attualmente il sistema progettato non considera le similarità delle sottoscrizioni e quindi non sfrutta opportunamente tale informazione. In questo contesto si rende necessario l'adozione di opportune tecniche di aggregazione delle sottoscrizioni atte ad alleggerire la computazione dei nodi mobili e le comunicazioni tra loro. Il lavoro presentato in questa tesi sarà finalizzato alla ricerca, all'adattamento ed all'implementazione di una tecnica di aggregazione delle sottoscrizioni. Tale tecnica avrà lo scopo di rilevare e sfruttare le similarità delle sottoscrizioni ricevute dal sistema al fine di ridurne il numero; in questo modo, quando un nodo riceverà un dato, il processo di confronto tra l'insieme delle sottoscrizioni memorizzate e il dato ricevuto sarà più leggero, consentendo un risparmio di risorse computazionali. Inoltre, adattando tali tecniche, sarà possibile modulare anche il traffico dati scaturito dalle risposte alle sottoscrizioni. La struttura di questa tesi prevede un primo capitolo sui sistemi context-aware, descrivendone le principali caratteristiche e mettendo in luce le problematiche ad essi associate. Il secondo capitolo illustra il modello di comunicazione Publish/Subscribe, modello di riferimento per i moderni sistemi context-aware e per i sistemi mobili in generale. Il terzo capitolo descrive l'infrastruttura SALES sulla quale si è progettata, implementata e testata la soluzione proposta in questa tesi. Il quarto capitolo presenta le principali tecniche di aggregazione delle sottoscrizioni e spiega come possono essere adattate al contesto di questa tesi. Il quinto capitolo effettua l'analisi dei requisiti per comprendere meglio il comportamento della soluzione; seguono la progettazione e l’implementazione della soluzione su SALES. Infine, il sesto capitolo riporta in dettaglio i risultati ottenuti da alcuni degli esperimenti effettuati e vengono messi a confronto con quelli rilevati dal sistema di partenza.