La mia attività si concentra principalmente in un settore che chiamerei
Interazione uomo-macchina con un orientamento applicativo nell'area
dell'educazione.
Considero il mio lavoro una tipica attività da informatico sperimentale, nel senso
dato al termine da una ricerca del National Research Council1 del 1994, che delinea il
ruolo dell'informatica sperimentale, soprattutto per quanto riguarda la penetrazione
delle tecnologie nella società e per le sue ricadute anche sulla ricerca applicata
e teorica. I sistemi informatici e le loro applicazioni
possono essere molto complessi; di conseguenza la loro creazione e comprensione richiede un
sforzo considerevole e una ampia parte di sperimentazione - una attività in genere
riservata alle scienze fisiche o naturali. Essendo una fisica,
in particolare laureata in fisica matematica e perciò con una certa familiarità con
linguaggi e strumenti formali, ho trovato continuità nell'applicare un metodo
sperimentale anche ad artefatti sintetici, creati dall'uomo.
Motivazione
Algebra e Geometria
GEObject
3D e Java
Formalizzazione in OBJSA
CoLoS
Automata e INNE
Un algoritmo neurale per MAX 2-SAT
Sperimentazione di un nuovo corso
Formazione Insegnanti
Musei e istituzioni culturali
INFO2000
CHECK
In questo sta la motivazione che ha indirizzato la mia attenzione a fenomeni come
la didattica con l'elaboratore, l'inserimento dell'informatica nelle scuole, la
didattica asincrona resa possbile dalla rete, l'uso della rete per esperienze
culturali, la valorizzazione del patrimonio artistico, la multimedialità o la
teledidattica. Da tutte queste aree cerco di trarre esperienza per contribuire ad
una crescita sensata e consapevole dell'uso di strumenti informatici nell'ambito
didattico, sia universitario sia scolastico, della manifestazioni culturali o nel
mondo della comunicazione.
A causa del mio trascorso di fisica-matematica, mi sono rivolta più facilmente verso
argomenti vicini all'insegnamento della matematica. Ho lavorato su un sistema
didattico per l'insegnamento dell'algebra, Galois, e molto sulla geometria. Partendo da
una sperimentazione di alcuni dimostratori di teoremi di geometria, svilupati con approcci
diversi: da un tradizionale approccio logico2, in cui si costruisce una base di
conoscenza e da cui si deducono enunciati non esplicitamente immessi nella base,
a diversi approcci algebrici che trasformano il problema geometrico in un sistema di
equazioni algebriche che poi vengono risolte. In questo filone il metodo, riscoperto
dal matematico cinese Wu3 e basato sul calcolo delle basi di Ritt per la soluzione
di sistemi di equazioni algebriche, si è verificato essere decisamente più potente
anche perchè trova le condizioni di degenerazione sotto cui il teorema è vero. L'idea di fornire tutti questi metodi in un unica applicazione che
consente ad un profano di eseguirli per verificare congetture di geometria
ci ha spinti anche a sviluppare un interfaccia grafica, perchè solo con quella
il sistema può essere utile per favorire la ideazione di congetture. Dopo una
prima soluzione parziale, è nata l'idea di un sistema di modellazione di figure
geometriche interattivo, basato sulle costruzioni geometriche riga e compasso,
che risolve i vincoli imposti durante la costruzione anche nelle successive
manipolazioni senza effettuare onerosi calcoli numerici, ma solo con manipolazione
degli oggetti stessi, e incrementale, nel senso che può essere arricchito con esempi.
Quest'ultima funzionalità cartterizza il sistema come un esempio di ambiente di
programmazione by-example.
Durante il disegno di questo ambiente, GEObject, molto fortemente orientato agli
oggetti, abbiamo messo a fuoco le problematiche dell'interfaccia che deve rendere
trasparente la base di conoscenza su cui il sistema è strutturato. In questo credo
che il sistema sia qualititativamente superiore ad altri sistemi simili, che pure
hanno circolato molto, anche perchè provenienti dagli USA ed ingegnerizzati forse
meglio. Ma questo e' un punto molto importante per un sistema che finisce nelle mani
di utenti che devono rivolgere la loro attenzione al contenuto e non al mezzo.
GEObject è stato sviluppato contemporaneamente anche ad un sistema oggi famosissimo,
Cabrì sviluppato a Grenoble. Ad un workshop NATO a cui sia io che gli autori di
Cabrì partecipavamo, abbiamo confrontato le applicazioni e dalla nostra probabilmente
loro hanno tratto spunto per l'integrazione con un dimostratore numerico per provare
semplici congetture.
Una breve esplorazione con lo stesso tipo di approccio alla modellazione geometrica
è stata fatta anche per costruzioni
3D4.
In tempi recenti l'evoluzione naturale del
sistema ha portato ad implementare in Java un sistema per l'esplorazione della
geometria in rete che consente anche la collaborazione a distanza: il foglio di
lavoro può, infatti, essere condiviso anche da collaboratori remoti.
Il lavoro più recente in quest'ambito è costituito da un articolo (versione precedente presentata al Workshop Petri nets and object-oriented programming), in cui si da
una specifica formale al problema di modellare oggetti geometrici vincolati,
adottando il formalismo delle reti di Petri ad alto livello chiamate OBJSA.
Questa formalizzazione delle costruzioni geometriche è stato un importante
passo per validare il sistema GEObject ed in particolare l'algoritmo per il
mantenimento dei vincoli. Ogni classe del sistema è definito da una componente
OBJSA e le loro composizioni consentono la descrizione di costruzioni generiche.
L'algoritmo di mantenimento dei vincoli è stato simulato nell'ambiente ONE.
Ho contribuito, fin dal suo nascere, al progetto Europeo
CoLoS, che ha ricevuto
due finanziamenti UE (programmi COMETT I e DELTA) e una forte sponsorizzazione
della HP, e che ha prodotto sistemi grafici e interattivi nel campo della
educazione scientifica molto originali, tra cui uno per la fisica che ha vinto un
riconoscimento europeo, in anni in cui la grafica si poteva fare solo su PC troppo
poco potenti per fare computazione impegnativa e quando simulazioni significative
si potevano fare solo su macchine che non consentivano grafica e adeguata
interazione: strumenti irrinunciabili per sollecitare l'intuizione e l'immaginario
degli studenti su fenomeni scientifici complessi.
Nel progetto CoLoS ho sviluppato soprattutto due sistemi: un simulatore di reti
neurali INNE (Interactive Neural Network Environment) ed un simulatore di automi e
grammatiche AUTOMATA. Quest'ultimo è stato un vero successo: viene richiesto con
continuità anche se è stato sviluppato alcuni anni fa e non è più supportato.
AUTOMATA consente di capire il rapporto tra automi, grammatiche ed espressioni
regolari, tratta automi a stati finiti e a pila deterministici e non, visualizza
la dimostrazione passo passo di qualche importante teorema. INNE rispetto ad altri
più famosi simulatori ha la caratteristica di offrire la possibilità di definire
graficamente reti di vari modelli (Boltzmann Machines, Back-error Propagation,
modello di Hebb, un modello competitivo semplice e le mappe di Kohonen) e di
offrire per ogni modello una significativa applicazione che abbia un impatto visuale,
in modo che sia intuitivo cogliere l'input e l'output e l'andamento della
computazione sulla rete. Ad esempio un'applicazione per la compressione di
immagini è associata all'algoritmo Hebbiano e consente di passare in input una
immagine, di vederne la copia compressa; un'applicazione per il clustering dei
colori è, invece, associata all'algoritmo competitivo semplice, che rende possibile
passare in input una qualunque immagine, vederne interattivamente la creazione dello
spazio dei colori relativo e la stessa immagine con i soli colori clusterizzati
(il numero dei colori dipende dalla scelta della rete neurale e, in particolare
del numero dei nodi di output); un'altra applicazione consente il riconoscimento
di forme mediante l'algoritmo di Kohonen, in input è possibile dare una forma
bi-dimensionale qualunque e si può osservare la computazione mentre la rete cerca
di ottimizzare la forma della figura; un'applicazione infine consente il
riconoscimento di caratteri scritti a mano in un testo, mediante un algoritmo di
back propagation.
Un seguito di questa attività è stata la ideazione di un algoritmo per risolvere
approssimativamente il problema MAX 2-SAT, che è stato dapprima simulato via
software per valutarne la performance; successivamente, poiché il comportamento
si è rilevato buono, sia nel caso peggiore che nel caso medio, ne è stata effettuata una implementazione hardware (abstract of a paper in Neural Networks, 10(3), 1997).
Per due anni accademici ho dato vita ad un nuovo corso, fortemente caratterizzato da una componente progettuale, per studenti di Informatica: Scienze dell'Istruzione.
Un attività a cui ho dedicato molta energia in tempi passati è stata quella
della formazione informatica degli insegnanti. E' stata una esperienza molto
significativa da cui sono partite una serie di sperimentazioni didattiche in
Lombardia. Mi sembra molto importante che gli universitari contribuiscano a
questi processi; ricordo la proposta del Ministero, spero che non abbia avuto
troppo seguito, di un corso di aggiornamento di insegnanti su vasta scala fatto da
Microsoft. Il che non mi scandalizza purché non sia l'unica offerta possibile e non
sia totalitaria. Non possiamo demandare in questo campo ad altri e dobbiamo
difendere una autonomia culturale.
In tempi più recenti ho collaborato con alcuni musei, Museo Horne a Firenze,
Biblioteca Ambrosiana e Museo della Scienza a Milano ed il Teatro alla Scala
(Il teatro interattivo, LaScalaWeb) per aiutare la dirigenza di queste istituzioni a capire cosa avrebbero potuto
chiedere dalle tecnologie multimediali e dalla rete.
Ho coordinato localmente un progetto finanziato dalla UE (programma INFO2000)
per lo studio della digitalizzazione del patrimonio iconografico del Teatro,
che si proponeva di rendere accessibile dalla rete, in parte liberamente e in
parte con un ritorno economico. In generale, rapportarsi con queste istituzioni,
spesso con grande tradizione, è una operazione onerosa e non facile, ma anche
una occasione per consentire ai nostri studenti di svolgere dei progetti in
ambienti che richiedono molta sensibilità a problematiche di comunicazione
oltre che competenze tecniche. In tutti questi lavori, infatti, si richiedeno
competenze interdisciplinari.
Nel V programma quadro della UE ho presentato un progetto, di cui sono
coordinatore, che attende ancora una risposta, che ha come obiettivo la
sperimentazione della pubblicazione elettronica di manoscritti antichi,
con la messa a punto di un formato per la specifica di manoscritti; la
prima applicazione dovrebbe riguardare il codice Atlantico di Leonardo,
di proprietà della Biblioteca Ambrosiana. A questo progetto aderisce,
in qualità di utente/sostenitore Adobe con l'idea di produrre un plug-in
secondo le specifiche.