CAPITOLO 3 Previsione



Documenti analoghi
Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

e-dva - eni-depth Velocity Analysis

Scopo della lezione. Informatica. Informatica - def. 1. Informatica

Appunti sulla Macchina di Turing. Macchina di Turing

Automazione Industriale (scheduling+mms) scheduling+mms.

Tecniche di riconoscimento statistico

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Lezione 8. La macchina universale

Che cos è l intelligenza e come funzionano i test del Q.I.

L intelligenza numerica

Tesina per il corso di Psicotecnologie dell apprendimento per l integrazione delle disabilità

Analisi dei requisiti e casi d uso

Fasi di creazione di un programma

Gestione della memoria centrale

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Creare una Rete Locale Lezione n. 1

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6

Introduzione alla Virtualizzazione

Corrispondenze e funzioni

Introduzione all Information Retrieval

risulta (x) = 1 se x < 0.

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da

Il sapere tende oggi a caratterizzarsi non più come un insieme di contenuti ma come un insieme di metodi e di strategie per risolvere problemi.

Corso di. Dott.ssa Donatella Cocca

Corso di Informatica

SPC e distribuzione normale con Access

PROCESSO DI INDICIZZAZIONE SEMANTICA

Dispensa di Informatica I.1

PowerSchedo. Un sistema di supporto alla decisione nel settore dell'oil&gas. For further information:

Report di valutazione Fiona Clark_Live

Capitolo 2 - Teoria della manutenzione: classificazione ABC e analisi di Pareto

Capitolo 25: Lo scambio nel mercato delle assicurazioni

Pro e contro delle RNA

I WEBQUEST SCIENZE DELLA FORMAZIONE PRIMARIA UNIVERSITÀ DEGLI STUDI DI PALERMO. Palermo 9 novembre 2011

Università di Bergamo Facoltà di Ingegneria. Intelligenza Artificiale. Paolo Salvaneschi A1_1 V1.1. Introduzione

Laboratorio di Pedagogia Sperimentale. Indice

come nasce una ricerca

Dimensione di uno Spazio vettoriale

TECNICHE DI SIMULAZIONE

L informatica nella scuola: mezzo o fine?

Calcolatori Elettronici A a.a. 2008/2009

L idea alla base del PID èdi avere un architettura standard per il controllo di processo

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

Corso di Matematica per la Chimica

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0

Archivio WebQuest I Grafi e le Reti

Sistema operativo: Gestione della memoria

Laboratorio informatico Banche dati off line

SISTEMI INFORMATIVI AVANZATI -2010/ Introduzione

LE FUNZIONI A DUE VARIABILI

PREMESSA AUTOMAZIONE E FLESSIBILITA'

Psicologia dell orientamento scolastico e professionale. Indice

CORSO DI INFORMATICA PER ADULTI

I quattro ordini di scuola a confronto Elisabetta Malaguti

INFORMATICA GENERALE. Prof Alberto Postiglione Dipartim. Scienze della Comunicazione Univ. Salerno. Università degli Studi di Salerno

Capitolo 13. Interrogare una base di dati

Liceo Tecnologico. Indirizzo Elettrico Elettronico. Indicazioni nazionali per Piani di Studi Personalizzati

La Metodologia adottata nel Corso

IL SISTEMA INFORMATIVO

VPN CIRCUITI VIRTUALI

OFFERTA FORMATIVA PER OCCUPATI

Tecniche di Simulazione: Introduzione. N. Del Buono:

RICERCA AZIONE STRUMENTI

IL MARKETING E QUELLA FUNZIONE D IMPRESA CHE:

Modulo 1: Motori di ricerca

3. Introduzione all'internetworking

Lezioni di Matematica 1 - I modulo

L ANALISI ABC PER LA GESTIONE DEL MAGAZZINO

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)

Che volontari cerchiamo? Daniela Caretto Lecce, aprile

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web: Prof. G. Quarella prof@quarella.

Schemi delle Lezioni di Matematica Generale. Pierpaolo Montana

MESA PROJECT ITIS G. Cardano Pavia New Curriculum

Obiettivo Principale: Aiutare gli studenti a capire cos è la programmazione

Più processori uguale più velocità?

Il tutto a meno, e spesso a molto meno, del costo di un caffé al giorno

Il test di Turing. Seminario. Ester Dalvit. 22 marzo Il test di Turing p. 1/1

Capitolo 2. Operazione di limite

Sistemi Web! per il turismo! - lezione 3 -

I libri di testo. Carlo Tarsitani

Application note. CalBatt NomoStor per i sistemi di accumulo di energia

Modulo: Scarsità e scelta

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

Le competenze per la gestione e lo sviluppo delle risorse umane nelle università e negli enti di ricerca

Raccomandazione del Parlamento europeo 18/12/2006 CLASSE PRIMA COMPETENZE ABILITÀ CONOSCENZE. Operare con i numeri

ALGEBRA DELLE PROPOSIZIONI

TEORIA DEI SISTEMI OPERATIVI

Algoritmi e Complessità

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

LE STRATEGIE DI COPING

Autismo e teoria della mente

COMUNE DI RAVENNA GUIDA ALLA VALUTAZIONE DELLE POSIZIONI (FAMIGLIE, FATTORI, LIVELLI)

SCUOLA PRIMARIA Anno Scolastico 2014/2015 CURRICOLO DI TECNOLOGIA OBIETTIVI DI APPRENDIMENTO AL TERMINE DELLA CLASSE TERZA DELLA SCUOLA PRIMARIA

Fondamenti di Informatica. Allievi Automatici A.A Nozioni di Base

RUOLO CENTRALE DEL DS NELL ACCOGLIENZA DEGLI ALUNNI DISABILI COME SENSIBILIZZARE E RESPONSABILIZZARE I DIRIGENTI

Identità e autenticazione

Transcript:

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 domini complessi e mutevoli. La necessità di reperire criteri guida attraverso i quali gestire le quantità di risorse in Internet, a quanto pare sempre meno sufficienti e adoperate spesso in modo inefficiente, e la disponibilità di grande potenza di calcolo a basso costo stanno determinando la maturazione e il passaggio di questi meccanismi dall ambito della sperimentazione a quello dell applicazione reale. Le soluzioni basate su information retrieval estraggono o sintetizzano la conoscenza da una massa di informazioni caotiche e ridondanti. Il processo molto delicato di estrazione della conoscenza da banche dati di grandi dimensioni avviene tramite l applicazione di algoritmi che individuano le associazioni, o patterns, nascoste nei dati. L obbiettivo finale è quello di riuscire ad individuare le informazioni più significative e renderle disponibili e utilizzabili nel processo di decision making. 3.1.1 Sistemi predittivi La maggior parte della ricerca sulle architetture è stata fatta sui sistemi di raccomandazione, ovvero che forniscono suggerimenti, basati su algoritmi di machine learning, branca dell inteligenza artificiale che si occupa della progettazione e dello sviluppo di algoritmi che consentono di sviluppare comportamenti sulla base di dati empirici, o data mining, meccanismo che consente di creare modelli a partire dall analisi di un set di dati con lo scopo di cercare tendenze e modelli specifici. La parte più importante di uno schema di predizione è l algoritmo predittivo che possono essere: point based o path based. 1

I modelli point based usano le azioni indicizzate nello stesso istante per predire la prossima azione basandosi su quella corrente. In altre parole usano la misura delle frequenza per predire le prossime richieste. Questo tipo di modelli considerano un numero relativamente piccolo di informazioni per ogni sessione ma, a loro svantaggio, gioca il fatto che tali previsione possono essere inaccurate. I modelli path based sono basati sul percorso di navigazione precedente dell utente, essi realizzano un analisi statistica delle azioni degli utenti e per questo possono avere una precisione relativamente alta. Uno schema molto utilizzato nelle previsioni è quello basato sul modello delle catene di Markov, utilizzate soprattutto per predire i movimenti degli utenti mobili in modo da poter ottenere un sensibile miglioramento nelle prestazioni globali della rete, riducendo, per esempio, la latenza dell utente. 3.1.2 Valutazione dei sistemi predittivi Un modello di predizione, solitamente, viene validato attraverso la valutazione di due parametri: accuracy e recall. Queste due parametri sono stati definiti nell ambito di tecniche di information retrieval e data mining. Il data mining è un processo di esplorazione ed analisi, con strumenti automatici o semi-automatici, di grandi quantità di dati al fine di scoprire strutture e regole significative. L information retrieval è un insieme di tecniche che consentono un accesso mirato ed efficiente a grandi raccolte di dati. Figura 3.1. Diagramma di precisione e applicabilità. 2

Il significato dei parametri introdotti precedentemente viene esplicato in maniera molto chiara ed evidente dal diagramma presente nella fig. 3.1, che prende il nome di diagramma di Venn, con: Ω: collezione da interrogare, ovvero l informazione base. E: sottoinsieme di Ω con le soluzioni corrette dell interrogazione S: sottoinsieme di Ω con le soluzioni date dal sistema. Da questi sottoinsiemi è facile dare una definizione dei parametri di recall r e di accuracy p, dove il primo è pari al rapporto tra S E con S mentre il secondo è pari al rapporto tra S E con E. Nell ambito dei sistemi che tentano di prevedere, per esempio, la prossima cella di locazione di un utente mobile lo schema predittivo risulta essere più semplice perché non si richiede una collezione di soluzioni, ma vi è una sola soluzione che può essere corretta o non corretta. Utilizzando le definizioni fornite precedentemente in questo nuovo contesto sono stati definiti due parametri di precisione e applicabilità, dove l applicabilità rappresenta la frequenza con cui il sistema è capace di predire e la precisione è la frequenza con cui queste predizioni sono corrette. Da queste definizioni si può arrivare a dire che la precisione p è definita come il rapporto tra il numero di predizioni corrette e il numero di predizioni effettuate: = = (3.1) L applicabilità r invece è definita come il rapporto tra il numero di predizioni effettuate sul numero di predizioni richieste: à= = (3.2) La precisione p è pari a 1 quando tutte le predizione proposte dal sistema sono corrette. L applicabilità r è pari a 1 quando il sistema effettua sempre previsioni. Un altro parametro di valutazione è l F-Measure. Questo parametro è un indice di bontà dell algoritmo predittivo ed è definito come una combinazione lineare dei due parametri precedenti, dando la possibilità, con un singolo valore, di poter descrivere la qualità del sistema predittivo. 3

La F-Measure f combina l applicabilità r e la precisione p secondo la seguente formula: = = (3.3) Tale parametro è una media armonica. Una media armonica H di n numeri,,, è definita come: = (3.4) Sfruttando questa formula per l applicabilità r e la precisione p, si ottiene: = = = (3.5) Tale equazione rappresenta la F-Measure, che può variare tra 0 e 1, in cui 1 rappresenta il caso ottimale ovvero il caso in cui sia l applicabilità che la precisione sono pari a 1. 3.1.3 Motivazioni Le reti con utenti mobili, come le reti wireless di cui si è ampiamente parlato nei precedenti capitoli, introducono dei cambiamenti nella garanzia di QoS. Tali reti sono caratterizzate dal cosiddetto fenomeno di handover o handoff, ovvero quando un utente mobile si associa ad un nuovo AP lasciando, a causa della sua mobilità, il suo AP corrente entrando in uno appena vicino. La maggior parte delle procedure che consentono di effettuare il passaggio da un AP ad un altro si basano tutti su algoritmi che sfruttano l analisi e il confronto, con diverse tecniche di raffronto e con l introduzione di parecchi parametri, tra la potenza del segnale dell AP corrente e quella riguardante tutti gli AP vicini. Tali procedure, a causa della loro complessità e della grande quantità sia di tempo necessario all analisi che di dati di confronto, rendono tutte queste tecniche molto lente e poco 4

adattabili in reti il cui fine primario è offrire velocità e un determinato livello di supporto di QoS. Infatti, se le procedure di handoff sono lente si incappa nella perdita di pacchetti e di forti ritardi di trasmissione. Invece se si anticipa la conoscenza del prossimo AP a cui l utente mobile dovrà associarsi, questo nuovo AP potrà prepararsi ad accogliere il nuovo utente, per esempio riservando le risorse necessarie per ospitarlo, riducendo i ritardi provocati dalla procedura di handoff. Un altro motivo per cui vengono utilizzati gli algoritmi di previsione riguarda il tentativo di evitare, o almeno ridurre al minimo, il numero di applicazioni terminate a causa della scarsa disponibilità di risorse necessarie per l esecuzione di tali applicazioni, provocando lo spiacevolissimo evento conosciuto come call drop. Tra le applicazioni che possono essere vittime di tale evento ci sono le applicazioni multimediali in real-time, come una videoconferenza. Tali applicazioni richiedono, come già visto in precedenza, l assicurazione di un minimo di banda ad essa associata. Se tale banda non può essere offerta a tale applicazione da parte della rete, la connessione, con l applicazione annessa, cadrà, tale situazione è molto più sgradevole rispetto al caso in cui la chiamata venga bloccata sul nascere, in quanto è peggio dover rinunciare ad un servizio di cui si stava già facendo uso, piuttosto che rinunciare ad un servizio che, ancora, non ha avuto inizio [27]. Prima che un dispositivo passi al prossimo AP, prevedere la destinazione e il tempo di handhoff aiutano la rete a prenotare le risorse sufficienti, come per esempio la banda, riducendo la probabilità di trovarsi di fronte ad un evento di call drop, migliorando così anche il supporto ai QoS. Per tutti questi motivi sono ampiamente utilizzati vari tipi di algoritmi predittivi per le principali questioni di gestione della rete come: Prenotazioni delle risorse Routing Allocazione anticipata della banda. Per riuscire ad acquisire tali capacità predittive vengono utilizzati sia algoritmi predittivi su base statistica, come per esempio si utilizzano le catene di Markov come accennato precedentemente, oppure si fa uso di uno strumento più potente ed efficace: l Intelligenza Artificiale (IA). 5

Di seguito verrà proposta una panoramica generale sull IA e sui campi di diretta applicazione nelle reti wireless come: Swarm intelligence Neural Network. 3.2 Intelligenza Artificiale (IA) Il termine Intelligenza Artificiale, che fu coniato da Jhon McCarthy circa una trentina di anni fa, non ha una definizione precisa e formale, per questo motivo infatti il primo passo è quello in direzione di una definizione non ambigua dell IA che, per sua natura, si presta a svariate interpretazioni e a qualche fraintendimento. L IA è una moderna disciplina che negli anni recenti ha fornito un importante contributo al progresso dell intera informatica. Per questo motivo riveste un indubbio interesse per coloro che siano affascinati dalle potenzialità dell informatica e degli effetti che il progresso di questa disciplina ha nei confronti dell uomo. Inoltre l IA è stata influenzata da numerose discipline fra le quali, oltre ovviamente all informatica, la filosofia, la matematica, l economia, le neuroscienze, la psicologia, la cibernetica, le scienze cognitive e la linguistica. L IA è quella disciplina, appartenente all informatica, che studia i fondamenti teorici, le metodologie e le tecniche che permettono di progettare sistemi hardware e software capaci di fornire all elaboratore elettronico delle prestazioni che, a un osservatore comune, sembrerebbero essere di pertinenza esclusiva dell intelligenza umana [28]. E questa la definizione, accettata a livello internazionale, di un area scientifica di notevole importanza strategica che si propone di superare le attuali frontiere dell informatica, ponendosi come obiettivo scientifico quello di migliorare ed estendere le prestazioni offerte dall elaboratore elettronico. Si osservi che l IA è una disciplina sperimentale, nel senso che un sistema di IA soddisfa gli obiettivi richiesti solamente quando le prestazioni desiderate sono effettivamente misurabili. L IA ha come obiettivo quello di riprodurre o emulare l intelligenza umana. Le emulazioni di prestazioni di intelligenza umana si ottengono grazie a meccanismi 6

propri delle macchine che replicano gli stessi risultati ottenuti in termini di qualità ma maggiori in termini di quantità. L IA è considerata sia una scienza che un ingegneria [30]. È considerata una scienza nel momento in cui vengono simulati, con determinati sistemi artificiali, alcuni dei comportamenti intelligenti (con intelligente, qui e in seguito, ci si riferisce alla caratteristica propria dell uomo, come già detto in precedenza), in questo modo l uomo realizza l obbiettivo di modellare e sperimentare promettenti risultati che consentono di ottenere un indiscutibile progresso nello studio dell intelligenza umana. È, invece, un ingegneria in quanto, ottenendo dalle macchine prestazioni che simulano e che in precedenza erano ritenuti inaccessibili alle macchine, si fornisce un progresso al contributo che l ingegneria offre al miglioramento della vita umana. Nonostante tali definizioni ancora oggi rimane il problema aperto che nessuno ha definito in maniera oggettiva, o per lo meno ampiamente condivisa, che cosa sia l intelligenza stessa. In generale, si intende per intelligenza la capacità di completare compiti e risolvere problemi nuovi (problem solving), eventualmente sorti durante il completamento del compito originale, nonché la capacità di adattarsi all ambiente e ai suoi mutamenti. A tale definizione si vuole aggiungere anche la capacità di comprendere la realtà, qualunque essa sia. Storicamente si sono distinte due tipi di intelligenza artificiale: Intelligenza artificiale forte: la quale ritiene che un computer opportunamente programmato possa veramente essere dotato di una genuina intelligenza, non distinguibile dall intelligenza umana. Alla base di questa concezione vi è la teoria che anche la mente umana sia il prodotto di un complesso insieme di procedimenti di calcolo, eseguiti dal cervello. Resta naturalmente da stabilire rispetto a quale livello di descrizione cervelli e computer possano essere considerati la stessa cosa. La tecnologia che rappresenta tale tipologia di intelligenza nel miglior modo possibile è quella dei sistemi esperti, che,con estrema sintesi, è un programma capace di risolvere problemi complessi che rientrano in un particolare dominio con una efficienza paragonabile a quella di un esperto umano. Un IA di questo tipo è una intelligenza artificiale capace di pensare e avere una mente. Intelligenza artificiale debole: essa sostiene che un computer opportunamente programmato possa solamente simulare i processi cognitivi umani (o alcuni di essi), nello stesso senso in cui un computer può simulare il 7

comportamento di un evento atmosferico, o di una fissione nucleare. In questo caso dunque l accento viene posto su ciò che un programma è in grado di fare, senza fare assunzioni sul fatto che il modo in cui lo fa coincida ad un qualche livello con i processi mentali umani. E d altra parte non si pretende che un programma, per quanto complesso ed efficiente, possa veramente dirsi un esempio di mente. Questa tipologia di IA è considerata come un intelligenza artificiale che agisce come se pensasse e avesse una mente. Paralare di intelligenza artificiale implica, come minimo, il menziona mento di uno dei padri del calcolo automatico ovvero Alan Turing. Egli nel 1936 sviluppo le basi teoriche dell informatica introducendo un modello di macchina calcolatrice programmabile, divenuta nota ai posteri con il nome di macchina di Touring. Nel 1950 pubblicò la sua teoria con l articolo Computing Machinery and Intelligence passato alla storia. Obiettivo di Turing era quello di risolvere alcuni complicati problemi logici che erano di grande interesse a quei tempi, ma ciò che fu veramente interessante fu il modo che Turing utilizzò. Egli immaginò una specie di macchina teorica, molto semplice, che facendo delle banali operazioni doveva essere in grado di compiere qualunque tipo di calcolo, di qualsiasi genere. Tale macchina era costituita da un dispositivo, una specie di testina, in grado sia di scrivere che di leggere simboli su un nastro. Il nastro era diviso in celle ognuna delle quali contiene un solo simbolo. Tale testina, oltre a scrivere, poteva spostarsi a destra o a sinistra una cella alla volta. Figura 3.2. simulazione macchina di Turing. Il suo comportamento avveniva secondo passi successivi, ogni passo era governato da regole che tengono conto del simbolo presente sulla cella e che la testina legge. Specificando tali regole la macchina di Turing era capace di calcolare moltissime cose, ovvero se esistono delle regole che indicano come manipolare tali simboli, 8