“Ruolo della Matematica (e della Ricerca
Operativa) nella formazione Informatica”
Antonio Sassano
(Università di Roma “La Sapienza”)
Intervento alla Tavola Rotonda in occasione
dell’Inaugurazione della nuova sede del DIS – Pisa
12 Giugno 2003
"The idea behind teaching is to expect
students to learn why things are true, rather than have them memorize ways of
solving a few problems...(Israel Gel’fand)
La tendenza alla specializzazione è certamente la nostra principale
“malattia professionale”. Questa tendenza ci porta spesso a dichiarare di “non
saper nulla” di tematiche che sono adiacenti a quelle alle quali abbiamo
dedicato la nostra intera vita scientifica.
Questa tendenza raggiunge il suo culmine quando si riceve un invito a
partecipare ad una tavola rotonda. Leggiamo il tema e ci domandiamo
immediatamente quale sia la nostra specifica competenza a rispondere alle
questioni poste dagli organizzatori. Il riflesso condizionato della
specializzazione scatta e la prima tendenza è quella di declinare l’invito,
dichiarandosi incompetenti a trattare il tema proposto.
Responsabilità e cortesia intervengono però (quasi sempre) e ci spingono ad
accettare il gentile invito e a porci il problema di quali contributi concreti
la nostra esperienza possa apportare alla discussione. Qui interviene la
seconda “malattia professionale” (più grave tra gli ingegneri!): quella della
ricerca della documentazione. Poiché
riteniamo di essere “non qualificati” a rispondere, rifuggiamo dall’idea di
dire le cose che, sull’argomento, affiorano per prime alla nostra mente (magari
quelle stesse cose che diciamo abitualmente con convinzione e veemenza ai
nostri colleghi). Al contrario, ci sforziamo di “ancorare” ogni nostra
affermazione al solido e oggettivo porto
dei “dati”. Inizia così la febbrile ricerca dei dati statistici o dei documenti
di posizione messi a punto dalle organizzazioni scientifiche internazionali.
Spesso, oltre a seguire con puntuale regolarità questa “via crucis” da
tavola rotonda, aggiungiamo una terza deformazione (più grave tra i matematici)
che ci spinge alla maniacale ricerca di una o due “questioni fondamentali” alle
quali dedicare l’intervento. Va da sé che, immancabilmente, le “questioni
fondamentali” alle quali la nostra ricerca (corroborata da statistiche e
documenti internazionali) giunge, non sono altro che la razionalizzazione di
quelle stesse idee che avremmo espresso se provocati sulla questione durante un
“coffee break”.
Quel che è grave è che, quasi sempre, questo risultato finale ci
tranquillizza.
Il tema di oggi: “Informatica e Formazione: Fondamenti, Tecnologia e
Applicazioni” ha ovviamente provocato in me la serie di reazioni che ho appena
descritto.
L’argomento è certamente parte integrante della nostra esperienza
quotidiana di docenti e ricercatori. In particolare, in una fase di convulsa
trasformazione degli ordinamenti didattici come quella che attraversiamo (e
soffriamo), la questione dell’adeguamento della formazione (universitaria e
non) all’evoluzione della tecnologia e dell’organizzazione del lavoro
costituisce uno dei temi principali della nostra riflessione.
Tuttavia, il mio “non essere” informatico in senso stretto e il timore di
avere posizioni personali “eccentriche” sulle questioni dell’interazione tra
Informatica, Ricerca Operativa e Matematica Applicata mi ha spinto
immediatamente a ricercare l’oggettività di dati e documenti.
Dati statistici e documenti internazionali sulla formazione informatica e
sulla sua evoluzione sono disponibili in quantità industriali e pongono più un
problema di selezione che uno di carenza di informazioni. La mia scelta è
caduta su quello che ritengo sia lo sforzo più autorevole e documentato oltre
che, a mia conoscenza, più recente. Si tratta del documento “CC-2001
Computing Curricula -
Computer Science ” messo a punto dall’ACM e dall’IEEE-CS. Questo rapporto appartiene ad una serie realizzata dalle due maggiori organizzazioni
scientifiche e professionali nel campo della Computer Science.
Tra i vari rapporti dedicati ad aree specifiche dell’Informatica (Computer Engineering, Software Engineering,
Information Systems) quello
preso in considerazione è, a mio parere, il più generale e il più adatto a
fornire un quadro di tendenza della formazione informatica a livello
internazionale.
E’ importante dire con chiarezza (come d’altra parte fanno, correttamente,
gli autori del documento) che le conclusioni del documento CC-2001 sono
fortemente condizionate dal panorama universitario e industriale del
Nord-America e che le proposte operative sono ispirate a scenari tipicamente
statunitensi e canadesi. Tuttavia, per individuare tendenze e ricavare chiavi
di lettura della nostra situazione nazionale credo che questo documento sia
comunque di grandissimo interesse.
Veniamo ora alle “questioni fondamentali” da approfondire in questo
intervento. I miei personali interessi e il mio ruolo di Presidente del Centro
Interuniversitario di Ricerca Operativa (CIRO) indirizzano in modo naturale la
scelta verso le questioni poste dall’interazione tra Ricerca Operativa e Informatica.
Il motivo che rende interessante tali questioni è, a mio parere, la doppia
natura della Ricerca Operativa. Da un lato il suo essere un settore della
Matematica Applicata e, quindi, l’avere un ruolo fondamentale e di importanza
crescente nella formazione di base degli informatici. Dall’altro, quello di
avere un ruolo di “gateway” tra l’informatica e la
scienza dell’organizzazione e, quindi, di avere un ruolo di finalizzazione
applicativa nei curricula informatici.
Questa duplice natura è particolarmente interessante nell’ottica della “questione fondamentale” che, tra le tante
possibili, voglio affrontare in questo intervento: L’evoluzione dell’insegnamento delle materie matematiche di base e il
ruolo particolare svolto, tra queste ultime, dalla Ricerca Operativa.
L’Autosufficienza
culturale dell’Informatica
Il documento CC-2001 ha analizzato i vari problemi della formazione
informatica grazie al lavoro di una serie di “focus group” pedagogici. Il “focus group” 2 (PFG2) ha avuto come obiettivo quello di
individuare argomenti e corsi “esterni” all’informatica che avessero un ruolo
nella formazione “undergraduate”.
Due sono, a mio parere, i punti significativi del mandato del PFG2 (che
riporto più sotto). Il primo è che la matematica viene considerata una materia
integrativa al pari delle materie scientifiche, di quelle dell’ingegneria,
dell’ economia, della scrittura tecnica, del parlare in pubblico e della
gestione dei progetti. In altre parole: a) la
matematica è “esterna” alla “Computer Science”;
b) il suo è un ruolo di completamento
culturale e non di formazione di competenze.
Il secondo punto interessante del mandato è complementare e correttivo
rispetto a quello che abbiamo appena visto. Infatti al punto e) il mandato è
quello di sviluppare modelli di curricula che
soddisfino gli obiettivi formativi integrando nei corsi di informatica
alcuni dei contenuti di supporto. In altre parole: la matematica (e le altre materie!) possono avere un ruolo nella
formazione delle competenze (e non soltanto nel completamento culturale) ma
allora sarà bene assorbirne i contenuti nei corsi di informatica.
PFG2. Supporting
topics and courses
a. Specify a set of educational goals
outside of traditional computer science that
support undergraduate
computer
science education, such as mathematics, engineering, science, technical
writing, public speaking,
economics,
project management, and so forth.
b. Identify a minimal list of
supporting topics deemed essential to any undergraduate computer science
curriculum regardless of the
nature of the institution.
c. Present suggestions for
additional supporting topics beyond that minimum that may vary depending on the
type of institution, the
populations an institution serves, and the number of courses which the institution
is
allowed to include in a
program.
d. Develop specifications for
one or more sets of non-CS courses that satisfy these goals.
e.
Develop one or more models for satisfying some or all of these goals by integrating
them into computing
courses.
Fedele al mandato ricevuto, il “focus group” ha individuato negli strumenti (si noti il termine) della matematica discreta i contenuti matematici indispensabili per tutti
gli studenti di informatica. Coerentemente al punto e), la raccomandazione del
CC-2001 (che riporto sotto) è quella di inserire nei corsi di informatica gli
strumenti della matematica discreta.
....
The CC2001 Task Force makes the following
recommendations with respect to the
mathematical content of the computer science
curriculum:
• Discrete
mathematics. All
students need exposure to the tools of discrete mathematics.
When possible, it is best for students to take more
than one course in this area, but all
programs should include enough exposure to this area
to cover the core topics in the
DS area. Strategies
for integrating discrete mathematics into the introductory
curriculum are
discussed in section 7.4.
• Additional
mathematics. Students
should take additional mathematics to develop their
sophistication in this area. That mathematics might
consist of courses in any number
of areas including statistics, calculus, linear
algebra, numerical methods, number
theory, geometry, or symbolic logic. The choice should
depend on program
objectives, institutional requirements, and the needs
of the individual student.
Ci troviamo quindi di fronte all’esplicitazione
di un atteggiamento culturale di autosufficienza dell’informatica le
cui tracce sono riscontrabili, a mio parere, anche nella maggioranza dei curricula triennali delle nostre facoltà di ingegneria e di
scienze. Schematizzo le caratteristiche di questo atteggiamento:

Credo che la prima reazione della maggior parte di noi di fronte a questa
schematica rappresentazione sia di rifiuto e di orgogliosa ri-affermazione di
una specificità italiana ed europea nella formazione informatica e, più in
generale, scientifica.
Ma no! La matematica ha un ruolo fondamentale nella formazione degli
ingegneri e degli informatici! Abbiamo una serie di esami di analisi, geometria
e probabilità che caratterizzano i nostri primi di anni di corso e che hanno
esattamente lo scopo di formare e fornire competenze ai nostri studenti della
laurea breve!
Voglio brevemente rispondere a queste obiezioni.
Parlerò della realtà di ingegneria che conosco meglio. I corsi di base di
matematica sono un retaggio della formazione di base degli ingegneri del secolo
scorso (ahimè!). Si trattava di competenze “vive” che gli ingegneri
utilizzavano per comprendere gli aspetti formali del “corpus” di conoscenze
indispensabili per la loro professione. Ingegneri civili, idraulici, meccanici
ma anche elettrotecnici ed elettronici utilizzavano quelle competenze per
descrivere e studiare i fenomeni che dovevano governare.
La trasformazione indotta dallo sviluppo delle tecnologie dell’informazione
e, in particolare, dell’informatica ha toccato solo marginalmente questa
situazione per quasi tutte le specializzazioni dell’ingegneria.
Per gli informatici, invece, la trasformazione è stata drammatica. La
maggior parte delle competenze matematiche acquisite nei corsi dei primi anni
non sono utilizzate nei corsi successivi e se lo sono, lo sono in corsi
“esterni” al flusso principale (come chimica, fisica, automatica ed
elettronica). Al contrario, competenze importanti di matematica discreta, di
ottimizzazione combinatoria e di logica non sono oggetto di corsi dedicati e,
nel tempo, sono state acquisite dagli studenti mediante più o meno lunghi “detours” all’interno dei corsi di informatica propriamente
detti.
La conseguenza è che il concetto di relazione è inestricabilmente associato
a quello di base dati relazionale e il calcolo dei predicati o la
programmazione intera sono entrambi capitoli della “constrained
programming”.
Come si vede, la situazione era perfettamente matura per il nascere e lo
svilupparsi di quell’atteggiamento che ho definito di autosufficienza dell’informatica. Conoscenze che non vengono
“vivificate” dall’uso divengono, inevitabilmente, patrimonio culturale dello
studente e smettono di essere una competenza operativa. Gli strumenti utili
vengono invece assorbiti e identificati con le loro applicazioni. Il passo
successivo è quello della scomparsa della propedeuticità
dei corsi di base e della tendenza dei corsi specifici dell’informatica a
divenire auto-contenuti.
Voglio aggiungere che, nello specifico caso italiano, la nascita delle
lauree brevi, con lo spostamento ai primi anni di alcuni corsi
professionalizzanti, ha accelerato questo processo. La prospettiva, in assenza
di interventi correttivi, è esattamente quella prospettata dal CC-2001:
1
Marginalizzazione della matematica di base, con una riduzione del
numero dei corsi.
2
La
tendenza dei docenti di matematica, con una scelta anch’essa auto-referenziale,
a mantenere invariati i programmi in presenza di una diminuzione del numero di
ore disponibili. Questa tendenza implica, coadiuvata dall’effetto sinergico
della richiesta di maggior “clemenza”, la scelta frequente di dimostrare solo
un numero limitato dei teoremi presentati.
3
Un
sostanziale disinteresse dei docenti dei corsi professionalizzanti
all’effettivo apprendimento da parte degli studenti (frequente è la frase “in
una lezione insegnerò io quello che serve sul serio”) con la conseguente spinta
all’abolizione della propedeuticità.
4
L’assorbimento
di alcuni argomenti all’interno dei corsi informatici, con la conseguente
riduzione ad un ruolo strumentale delle competenze matematiche.
Tutto questo trasforma, spesso, i corsi matematici di base in una sequenza
di definizioni (anche i teoremi divengono tali!) che non vengono più utilizzate
nei corsi successivi e contribuiscono, al pari della fisica e della chimica,
alla creazione di una generica “forma mentis” scientifica dello studente.
Contestualmente, le parti “vive” della matematica vengono assorbite nei corsi
professionalizzanti.
Il documento C-2001, con
pragmatismo nord-americano, non fa altro che prendere atto di questa evoluzione
e definire un percorso formativo coerente ad essa.
Cosa fare dunque? La prima domanda da porsi è se una tale evoluzione sia
auspicabile.
Per quanto detto, la risposta sembra essere positiva. Come studioso di
ottimizzazione combinatoria debbo accogliere con piacere il (tardivo)
riconoscimento del ruolo cruciale della matematica discreta nella formazione
informatica (e, in generale, ingegneristica).
Inoltre, abbiamo visto come l’attuale insegnamento delle materie matematiche di
base non sia più adatto all’evoluzione dell’informatica. Molti dei contenuti
non sono più ripresi nei corsi successivi, molti risultati sono presentati
senza dimostrazione e le materie matematiche di base sembrano trovare maggiori
giustificazioni alla propria esistenza nella fisica che nelle materie
dell’informatica.
Malgrado tutto questo, ritengo estremamente pericolosa la certificazione,
compiuta dal documento CC-2001, che quella discreta sia l’unica matematica
“rilevante” nella formazione informatica e che il suo destino debba essere
quello di “diluirsi” nei corsi informatici.
Innanzitutto, la ricerca e le più recenti evoluzioni tecnologiche ci dicono
che argomenti come, ad esempio, la
programmazione non-lineare e la teoria dell’approssimazione hanno un ruolo
fondamentale nella teoria delle Reti, nello studio del Web e delle Basi di Dati
(“Data Mining”). Quelle competenze matematiche sono,
infatti, indispensabili per comprendere e progettare strumenti informatici
efficienti e il non possederle esclude lo studente da una reale comprensione
del ruolo e delle potenzialità di quegli strumenti.
Inoltre, l’insegnamento della matematica discreta all’interno dei corsi
informatici tende inevitabilmente ad esaltare il ruolo strumentale e/o puramente
descrittivo di quest’ultima e a minimizzarne le potenzialità conoscitive.
In conclusione, a mio parere una soluzione meno orientata all’autosuficienza e diversa da quella rilevabile
nell’evoluzione dei nostri corsi di laurea e nel documento CC-2001 sarebbe
auspicabile.
L’obiettivo di questo intervento era quello di fotografare una tendenza e
non quello di indicare soluzioni operative. Tuttavia, credo si possa convenire
sui punti seguenti: