5Oggi i ricercatori non puntano più a costruire computer
intelligenti, ma al rapporto fra un programma e l’ambiente in cui
opera. Molti puntano sulla realizzazione di programmi capaci di
interagire in un ambiente popolato da altri programmi, e di creare
una rappresentazione dell’ambiente in cui operano in modo da
poter prendere decisioni in base agli obiettivi assegnati dal
programmatore. Uno degli elementi mancanti su cui si sta
lavorando è la gestione di grandi quantità di conoscenza che
possano essere utilizzate dai programmi per agire in maniera
intelligente. Questo permetterà una maggiore interazione fra le
applicazioni, anche se costruite da produttori diversi, e di evitare
di ricominciare da zero ogni volta che si costruisce un nuovo
sistema.
Un esempio di interazione intelligente può essere questo: ci sono
più utenti che posseggono agende elettroniche per memorizzare i
propri appuntamenti e ci sono sistemi di prenotazione aerea o
ferroviaria disponibili sul web, ma non è possibile chiedere alla
nostra agenda di prenotare un biglietto ferroviario collegandosi via
web, poiché la rappresentazione che oggi l’agenda elettronica ha di
un viaggio in treno (destinazione, orari, preferenze) non è la stessa
rappresentazione utilizzata dal programma su web che fa le
prenotazioni dei biglietti. In una parola, non riescono a capirsi, e
per capirsi occorre non solo un alfabeto comune, ma soprattutto
che sia disponibile un linguaggio unico che esprima la conoscenza
comune. Questa esigenza spiega il recente successo in intelligenza
artificiale (IA) delle cosiddette “ontologie”
4
, cioè di formalismi
4
Ontological Engineering Advanced Information and Knowledge Processing series,
A. Gomez-Perez, M. Fernandez-Lopez, O. Corcho, Springer Verlag 2003
6che rappresentano la conoscenza in modo che diventi utilizzabile
da un programma in maniera automatica.
Il termine Intelligenza Artificiale venne proposto nel 1956 da
John McCarthy
5
, in occasione di uno storico incontro organizzato
presso il Darthmouth College (New Hampshire), al quale
parteciparono, tra gli altri, Marvin Minsky
6
, Claude Shannon
7
,
Herbert Simon
8
e Allen Newell
9
. Nel corso di questo incontro si
gettarono le basi che guidarono la ricerca per almeno una ventina
di anni.
L’Intelligenza Artificiale si propone di indagare i meccanismi
che sono alla base della cognizione umana, in primo luogo il
ragionamento logico-matematico, la capacità di risolvere problemi
e la comprensione del linguaggio naturale, con il fine dichiarato di
riprodurli per mezzo di elaboratori elettronici sufficientemente
potenti. La posizione di partenza (a volte esplicita, a volte solo
presupposta) della IA è costituita dal fatto che molti scienziati
considerano il pensiero umano come una forma di calcolo e, in
quanto tale, potenzialmente riproducibile tramite computer dotati
di adeguati software. Come vedremo in seguito l’intelligenza
5
Nel 1956 riunisce a Dartmouth i principali studiosi del tempo in un seminario in cui propose il nome
di «intelligenza artificiale». Nel 1958 sviluppa il primo linguaggio di intelligenza artificiale.
6
Marvin Lee Minsky, uno dei fondatori dell'intelligenza artificiale, è nato a New York nel 1927. Ha
studiato matematica a Harvard e a Princeton, dove ha conseguito il dottorato nel 1954. Nel 1959,
Minsky, assieme a John McCarthy, diede il via al progetto sull'intelligenza artificiale, che è poi
diventato il MIT Artificial Intelligence Laboratory.
7
Shannon, Claude Elwood (Gaylord, Michigan 1916 – Medford, Massachussets 2001), matematico e
ingegnere elettronico statunitense, considerato il fondatore della teoria dell'informazione.
8
Simon, Herbert (Milwaukee 1916), economista statunitense. Laureatosi all'università di Chicago nel
1936, dopo vari incarichi per l'insegnamento delle scienze politiche, nel 1949 divenne docente di
scienze amministrative e psicologia. È noto per i contributi dati alla teoria del processo decisionale
all'interno dell'impresa, nei quali sintetizzò idee e strumenti propri di varie discipline.
9
Allen Newell (nato nel 1927) si proponeva di occuparsi di matematica, ma poi cambiò idea. La Rand
Corporation, un “serbatoio di cervelli” di altissimo livello in California, gli apparve molto più
affascinante dell'Università del New Jersey, e vi si trasferì. Negli anni sessanta, Newell cominciò a
pensare ai sistemi di produzione, particolari calcolatori che presero il nome di “macchine di Newell”.
7artificiale è un ingrediente fondamentale per l’estrazione della
conoscenza dalle Basi di Dati. Fondamentalmente il contributo di
questo lavoro è mirato proprio ad acquisire innanzi tutto la
conoscenza teorica per affrontare un problema legato alla
memorizzazione dei dati, alla loro gestione, e al loro utilizzo; ma
soprattutto all’estrazione di conoscenza dai dati al fine di prendere
delle decisioni aziendali di carattere tattico strategico.
In questo elaborato verranno spiegate le diverse tecniche che
consentono di lavorare con i dati, e verrà illustrato quanto il
processo di estrazione della conoscenza non sia affatto semplice
semplice, a volte conta più l’abilità e l’esperienza dell’operatore
nello scegliere i dati veramente importanti, piuttosto che la
capacità del software di elaborare una soluzione ammissibile del
problema in questione.
I sistemi di gestione di base di dati tradizionali Data Base
Managment System (DBMS) permettono di manipolare i dati in
modo efficace ed efficiente, ma non sono spesso in grado di
supportare un’analisi più complessa per estrarre da essi
informazioni non esplicitamente rappresentate.
Per poter agevolare e soprattutto velocizzare le scelte strategiche
all’interno delle aziende bisogna gestire facilmente (oggi anche
velocemente) le informazioni per sfruttare al meglio la capacità
elaborativa dei manager in situazioni contingenti, e a supporto dei
livelli decisionali - operativi.
Nasce cosi la necessità di avere a disposizione strumenti di
analisi che assieme ai database fanno viaggiare le informazioni
all’interno delle aziende fornendo supporto informativo.
8Grazie alle scoperte e agli studi che da anni IA compie in campo
dei database, oggi nell’ambito dei Decision Support System (DSS)
si sono introdotti due strumenti di cruciale importanza per la
gestione dei dati e la loro riutilizzazione: la tecnologia On-line
Analytical Processor (OLAP) e i Data Warehouse (DW).
Le tecniche OLAP ci consentono di analizzare, accorpare e
consultare in maniera rapida informazioni altrimenti di difficile
interpretazione (si pensi alla produzione di grafici rappresentativi e
di istogrammi riassuntivi). Nel DW i dati vengono “raccolti” e
“arricchiti” tramite procedimenti atti a renderli informazione
disponibile ad essere analizzata dai processi OLAP che permettono
l’interazione con l’utente tramite interfaccia e interrogazioni on-
line. Lo scopo prefisso in questa sede è quello di illustrare i passi
attraverso i quali sia possibile giungere a queste soluzioni di
analisi, a partire da cos’è un Data Warehouse e come costruirlo,
passando per le metodologie di creazione delle strutture per
l’analisi dei dati; come già detto in tale panorama appare
particolarmente interessante l’approccio adottato nelle aree
scientifiche del Knowledge Discovering e del Data Mining (DM),
di recente maturazione, che si propongono di estrarre conoscenza
non immediatamente percepibile da grandi quantità di
informazioni, in modo semi - automatico.
Le tecniche sviluppate in tale contesto consentono di sfruttare i
dati non tanto per testare ipotesi già formulate, ma piuttosto per
suggerirne di nuove, pervenendo alla individuazione di regolarità e
correlazioni tra i dati o inferendo veri e propri modelli
generalizzati, caratterizzati da capacità di predizione e di
9rappresentazione intenzionale e sintetica dei dati (ad esempio
modelli di regressione o di classificazione).
I principali studi fatti per questo lavoro di tesi possono essere
riassunti nei seguenti passi:
i. Studio dell’architettura di un Data Warehouse ; questo
termine è ormai entrato nel vocabolario di tutti i responsabili
dei sistemi informativi ed in quello degli amministratori di
basi dati. Ogni sistema informativo di discrete dimensioni
contiene al suo interno un Data Warehouse o, almeno, ne
applica alcune delle tecniche e gli strumenti. Il Data
Warehouse è una base dati che mantiene tutte le informazioni
sulle attività dell’azienda e viene utilizzata dal management
per prendere decisioni strategiche. William H.Inmon
10
è
considerato il padre dei Data Warehouse, ha coniato il
termine, scritto diversi libri. Il suo merito è soprattutto quello
di aver raccolto in una concezione unica una serie di concetti e
strumenti già noti e sfruttati in modo singolo. La diffusione
dei Data Warehouse è sempre maggiore poiché sistemi adatti
ad ospitare un Data Warehouse sono meno costosi, le tecniche
per disegnarli e implementarli si sono orami affinate, il
mercato si è allargato ed ora anche aziende medie o piccole
possono sfruttarne i vantaggi.
10
William H.Inmon è il padre del Data Warehouse, 28 anni di esperienza in tecnologia della base di
dati, amministrazione e disegno di Data Warehouse. È conosciuto per i suoi seminari sullo sviluppo di
Data Warehouse. Egli è diventato il punto di riferimento di ogni associazione di calcolo e di molti
congressi, seminari e tradeshows. Come autore, ha scritto vari libri sulla costruzione, sull'uso e sulla
manutenzione di Data Warehouse. Si contano circa 500 suoi articoli pubblicati sulle più importanti
riviste del settore quali: Datamation, Computer World e Byte Magazine.
10
ii. Tecniche di Knowledge Discovery in Data Mining;
scavando in “profondità” nei dati, il data mining porta a
“nuova conoscenza” e aiuta a prendere decisioni aziendali.
Utilizzando tecniche di indagine avanzate, è possibile scoprire
informazioni nascoste, creare modelli esplicativi, trovare
raggruppamenti significativi, identificare relazioni fra le
attività e correggere gli errori. Tutto ciò porta a vantaggi reali:
Le organizzazioni che eseguono data mining sui loro dati
riducono i costi rendendo i processi più efficienti e aumentano
i profitti scoprendo nuove opportunità di crescita.
iii. L’algoritmo del Clustering; è una tecnica di riduzione
dei dati che raggruppa casi o variabili in base a misure di
similarità. Questa tecnica consente di identificare gruppi di
persone o cose basati su caratteristiche demografiche,
informazioni finanziarie, comportamenti di acquisto, o tra
qualsiasi cosa che li accomuni.
Il lavoro da me svolto si occupa di un “case study” reale fatto
durante l’attività di tirocinio svolta presso il dipartimento del
D.E.I.S. dell’Università della Calabria. L’obiettivo è utilizzare i
dati messi a disposizione dalla banca “Carisiel”, per estrarre
“conoscenza nascosta” dai dati, utilizzando un particolare
algoritmo di clustering che sfrutta le tecniche probabilistiche per
raggruppare i dati che presentano similarità. La soluzione trovata
di per se non è facilmente interpretabile, pertanto si dovrà capire il
significato della conoscenza trovata. In ambito manageriale questo
compito è di grande responsabilità, infatti, con analisi simili le
aziende definiscono i propri obiettivi strategici. Basti pensare che
ormai tutti i supermercati, le case automobilistiche, le banche, i
11
gestori telefonici ecc, sfruttando analisi di questo tipo per definire
le proprie strategie di prezzo, e nella maggior parte dei cosi
portano al successo aziendale.