_stan
(320 punti)
68' di lettura

In un suo libro del 1982, Mia sorella gemella psicoanalisi Cesare Musatti identifica la propria nascita con quella della psicoanalisi: nacque il 21 Settembre 1897 proprio quando Freud passava in treno davanti alla sua casa di Dolo, diretto a Venezia in procinto di scrivere a Fliess la famosa lettera in cui rinunciava alla teoria del trauma e proponeva la psicoanalisi come strumento di analisi del mondo interiore (inconscio).

Le generazioni nate tra il 1945 e il 1957 sono coeve con la nascita dei Computer e della informatica in Italia.

Larticolo non pretende di ripercorrere la storia dellinformatica italiana, ci vorrebbe ben altra conoscenza e spazio, ma solo raccontare come stata vissuta da uno dei suoi tanti gemelli.

Linformatica italiana nasce sostanzialmente negli anni 50 in base a tre diverse esperienze quasi contemporanee. Due esperienze che chiameremo del Buy nascono rispettivamente allo INAC (Istituto Nazionale per le Applicazioni del Calcolo) delluniversit di Roma e al dipartimento di elettronica (allepoca non si chiamava cos) del Politecnico di Milano. La terza esperienza che chiameremo del Make nasce con la collaborazione tra la Olivetti di Ivrea e la universit di Pisa che stava progettando la Calcolatrice Elettronica Pisana.

Enzo Aparo, di cui mi sento grato allievo, cos mi ha raccontato la storia della esperienza romana. Quando era giovane matematico allo INAC il direttore Mauro Picone, che soleva chiamare i suoi collaboratori con un campanello, lo invit a partire per lInghilterra (dove Turing aveva progettato e realizzato i primi Computer) per acquistare e portare in Italia un calcolatore della Ferranti di cui il Centro di Calcolo delluniversit di Roma aveva necessit per le sue ricerche e applicazioni.

Luigi Dadda (con cui feci lesame di calcolatori elettronici, poi rettore del Polimi) giovane ricercatore su sua sollecitazione e con il consenso del rettore Cassinis fu inviato in California per contribuire alle ricerche, acquistare con fondi del piano Marshall, e portare a Milano un CRC 102A costruito secondo larchitettura dominante, ancora oggi usata, di Von Neumann. Nel 1954 il Computer fu installato e cominci a sfornare soluzioni presso il politecnico di Milano. Fu il primo computer funzionante in Italia e nellEuropa continentale; il FINAC di Roma entr in funzione solo qualche mese dopo.

La terza esperienza, quella del Make, nasce nel 1957 ad Ivrea per lintuizione di un imprenditore illuminato Adriano Olivetti, che con laiuto di Mario Tchou, un geniale ingegnere, figlio di un diplomatico cinese arriv a costruire il primo Computer commerciale funzionante interamente a transistor (e non con le pi costose, e dispendiose di calore, valvole termoioniche). La famiglia dei nuovi Mainframe Olivetti si Chiam ELEA (Elaboratore Elettronico Automatico) e fu scelto anche con riferimento alla scuola Eleatica di filosofia della Magna Grecia.

Nel 1957 mio padre, dipendente della Olivetti, era stato richiamato dallingegner Adriano da Buenos Aires (dove dirigeva il locale stabilimento di macchine da scrivere) per assumere, al posto di un suo compagno di marina, il ruolo ad Ivrea di direttore dello STAC (Servizio Tecnico Assistenza Clienti) che allepoca si occupava principalmente delle macchine da calcolo elettromeccaniche, in primis la celebre Divisumma. Ricordo che, in tempi relativamente recenti, mio padre mi raccont che allepoca disse ai suoi collaboratori: Quando in una macchina piccola come la Divisumma si riuscir con lelettronica a fare 2 + 2 senza parti in movimento il nostro business sar finito.

Nel 1958 fu assunto ad Ivrea anche mio zio, ingegnere civile, che poi sarebbe diventato direttore della divisione costruzioni della Olivetti. Mio zio aveva mille interessi non strettamente connessi con la sua professionalit: musica classica, gioco degli scacchi, energia solare e Ricerca Operativa. Mi incuriosivano, ormai frequentavo il liceo, pur capendone poco, i suoi lavori sulla Programmazione Lineare ed il Pert che svolgeva in casa il Sabato e la Domenica, con il solo ausilio del Regolo calcolatore e di una calcolatrice elettromeccanica della Olivetti. Quando era pronto in tavola mia zia si spazientiva e mi diceva: Vai da tuo zio e digli di smettere di giocare con i quadratini (Le celle della tavola del Simplesso.) ed i tondini (I nodi del reticolo CPM) perch la cena pronta!. Il PERT-Olivetti (in realt non si trattava di PERT perch era un reticolo deterministico) adottava la notazione europea delle attivit sui nodi diversa da quella originale americana che rappresentava le attivit del progetto sugli archi. Mio zio, in quel periodo dirigeva il progetto di ampliamento dello stabilimento di Pozzuoli della Olivetti, collabor con la divisione elettronica della societ per gestire il progetto con il PERT-Olivetti implementato sul computer ELEA. In un articolo comparso sulla rivista LIngegnere scrisse che si trattava di una delle prime applicazioni in Italia di un reticolo computerizzato applicato ad un cantiere di una certa dimensione (diverse centinaia di attivit).

Al Politecnico di Milano, bench seguissi il corso di elettronica, non ebbi mai occasione di vedere il computer che, allepoca, era della Sperry Rand. Solo al momento della tesi (La Scelta degli Investimenti) decisi di scrivere un piccolo programma in Fortran per codificare i principali metodi decisionali (Media, Scarto, Wald, Hurwicz, Savage).

Per programmare si procedeva cos:

  1. Il programma veniva scritto a mano su appositi fogli Fortran;
  2. Ci si recava con i fogli in un locale in cui erano presenti le macchine perforatrici di schede;
  3. Digitando su una tastiera si otteneva che ogni riga di programma venisse trasformata in una scheda perforata;
  4. Ci si recava a consegnare il pacco di schede (attraverso una finestra). Quando possibile loperatore le avrebbe fatte leggere dal lettore di schede del computer;
  5. Il compilatore Fortran avrebbe restituito un tabulato con lelenco degli errori. Per ottenere dalla solita finestra questo tabulato passavano 2 o 3 giorni;
  6. Gli errori sintattici erano facili da correggere, quelli logici talora difficili perch bisognava saper leggere ed interpretare un Dump , una specie di fotografia della memoria di lavoro del Computer nel punto in cui si era bloccato;
  7. Finalmente dopo aver ripetuto il ciclo varie volte si otteneva il tabulato finale con i risultati desiderati.
Dopo la laurea (1971) feci tre mesi come allievo ufficiale di marina presso laccademia navale di Livorno, ma anche li non ebbi occasione di vedere un computer, potei per vedere un Radar e cercare di capire come funzionasse. Nominato ufficiale fui destinato allufficio SMRO (Statistica, Meccanografia e Ricerca Operativa) dello Stato Maggiore localizzato al Ministero della Marina a Roma. Neanche li ebbi occasione di vedere un computer. Negli uffici dello SMRO sottufficiali e ufficiali, diplomati e ingegneri usavano calcolatrici meccaniche o elettromeccaniche della Olivetti. Imparai parecchio: Supporto Logistico Mobile (era stato commissionato anche uno studio alla Honeywell), Pattugliamento probabilistico delle coste, teoria dei Giochi. Durante i 20 mesi di permanenza a Roma fui inviato a fare due corsi. Il primo di tre settimane (Ricerca Operativa) e il secondo due (Statistica) presso lo IFAP (Istituto Formazione e Addestramento del Personale) dellIRI.. Durante quei corsi ebbi come docente per la prima volta Enzo Aparo, un valente matematico catanese che, tra laltro in giovent, aveva dimostrato alcuni teoremi relativi ai polinomi. I suoi interventi nellambito del corso di Ricerca Operativa furono principalmente centrati sulla Programmazione Lineare e sulla Analisi dei Sistemi. Nel 1972 era uscito il libro I Limiti dello Sviluppo commissionato dal Club di Roma (Aurelio Peccei) al MIT di Boston e basato sulla Dinamica dei Sistemi di J.W. Forrester.

Terminati gli obblighi militari, nella estate del 1973, vidi per caso, recandomi al Politecnico di Milano in Piazza Leonardo da Vinci, il bando per una borsa di studio presso la Scuola Mattei di San Donato Milanese. Dalla Scuola fui accettato, non tanto per il mio modesto voto di laurea 84/100, ma per gli esami aziendali facoltativi scelti e la tesi sulla Analisi degli Investimenti, di interesse per la Scuola. A quei tempi il Politecnico non aveva ancora istituito il corso in ingegneria gestionale.

Lambiente della Scuola era entusiasmante: giovani compresi tra i 24 e i 30 anni, laureati in ingegneria, economia, giurisprudenza, matematica, scienze. Italiani provenienti da tutte le universit del paese (circa 30 neo laureati), e stranieri, circa 20 anche con due o tre anni di esperienza lavorativa, provenienti da: Medio Oriente, Africa, Sud America, Stati Uniti, Australia, Cina e Giappone. La Scuola era collegata in Time Sharing con il Servizio Call della IBM. Il servizio metteva a disposizione una libreria di programmi (Matematica, Statistica, Ricerca Operativa, Simulazione) gi compilati. Lutente doveva semplicemente collegarsi, scegliere un programma dalla libreria, fornire i dati del suo problema ed attendere la risposta dal Computer remoto. Linterfaccia uomo-macchina era costituita da una specie di grande macchina da scrivere (per la stampa era dotata della famosa pallina rotante della IBM) che utilizzava i grandi fogli standard dei tabulati per computer. Altro strumento di calcolo messo a disposizione degli studenti era una P101 (Programma 101 della Olivetti).
E necessario un breve passo indietro. Dopo la morte improvvisa di Adriano Olivetti (1960), lazienda aveva deciso (o era stata costretta a decidere) di vendere la divisione elettronica alla General Electric . Ricordo che anni dopo mio padre chiacchierando di Computer in Italia mi disse: chi sa, se Adriano, non scomparendo prematuramente, avrebbe permesso la vendita della divisione elettronica. Lingegner Piergiorgio Perotto, che dirigeva un piccolo gruppo facente parte della divisione, riusc a trasferire il suo ufficio allinterno della divisione macchine da calcolo e quindi rest in Olivetti anche dopo la vendita della divisione elettronica a G.E. La Perottina, come qualcuno la chiamava, progettata dal suo gruppo ebbe un grande successo alla fiera di New York del 1965 essendo allora, e poi nella storia, considerata il primo Personal Computer del mondo. Qualche polemica ci fu: pare che alcune soluzioni innovative fossero state successivamente ricopiate, in maniera non del tutto legale dalla Helwett e Packard.
Imparai alla Scuola a programmare la 101 che utilizzava un linguaggio tipo Assembler. Dovevano essere gestiti i singoli registri: quelli in cui si inserivano i dati di ingresso, quelli in cui si effettuavano le operazioni di calcolo e quelli in cui si inserivano i risultati da stampare. La memoria esterna, in cui si registravano dati e programmi, era costituita da una semplice scheda magnetica, antesignana delle cassette, i floppy disk e le chiavette USB. La stampantina integrata era piccola simile a quella utilizzata nella calcolatrice da tavolo Divisumma.

Ricordo che negli anni 73/74 si diffusero le prime calcolatrici tascabili, dotate di display e talora micro stampante, che potevano andare oltre le 4 operazioni, calcolando, con facilit, radici quadrate, logaritmi, esponenziali ed altri tipi di funzioni, tra cui quelle finanziarie e di attualizzazione; le marche principali erano Texas Instrument e Helwett Packard. Fu la fine delle tavole logaritmiche e finanziarie fondamentali e necessarie per i calcoli sino a quel momento.

Un passo indietro per ricordare un episodio divertente. Verso la met dello scorso secolo, si trovarono a lavorare insieme negli USA tre geni della fisica e della matematica provenienti da diverse parti del mondo: R. Feynman, E. Fermi e J. Von Neumann. Tutti e tre, bravissimi nei calcoli, si sfidavano per gioco a chi per primo fosse riuscito a trovare la soluzione a complessi problemi di fluidodinamica. Naturalmente ciascuno era libero di lavorare con lo strumento preferito (Von Neumann non aveva ancora inventato i computer). La storia racconta che Feynman era imbattibile con la calcolatrice meccanica, Fermi era di una straordinaria velocit nelleseguire i calcoli con il solo ausilio del regolo calcolatore e Von Neumann preferiva effettuare tutti i calcoli a mente. Arrivavano tutti e tre molto velocemente agli stessi risultati, ma molte volte il pi veloce era Von Neumann.

Ritrovai il Prof. Aparo come docente alla Scuola Mattei e da allora ogni anno, anche quando lavoravo da tempo, andavo a sentire le sue lezioni di Ricerca Operativa e Calcolo Numerico alla Scuola di Metanopoli. Una volta mi raccont che Boldrini (Primo preside della Scuola, Professore di Statistica e Vice Presidente dellEni ai tempi di Mattei), gi gravemente malato gli disse Enzo, mi raccomando la Scuola Mattei!. Si interess molto ad un programma Fortran che stavo preparando con un compagno, Saverio, relativamente alla tecnica reticolare GERT (Grafic Evaluation and Review Tecnique): assomiglia molto alla programmazione dinamica nellincertezza ci disse. Un altra volta, quando gli chiesi aiuto per una dimostrazione di matematica finanziaria raccomand: Roberto, quando fai una dimostrazione matematica, non devi riportare passaggi ovvi, ogni passaggio deve aggiungere qualcosa di nuovo e costruttivo in vista della conclusione finale. Quando fui assunto in Saipem mi diede da leggere le fotocopie delle bozze di un articolo (Alcuni Modelli e Metodi e della Programmazione Lineare, Enzo L. Aparo, 08/09/74 , Istituto per le Applicazioni del Calcolo del CNR e Universit di Roma) che stava scrivendo relativamente alla tabella ridotta del Simplesso. Caspita!, disse il preside della Scuola Mattei, Aparo deve avere molta fiducia in te, perch in genere gelosissimo dei suoi articoli e non li mostra a nessuno prima che siano pubblicati!!. Quellarticolo fu poi di grande utilit per me ed il collega Stefano, gi compagno alla Scuola, quando lavorammo al miglioramento dellalgoritmo di programmazione lineare studiato per la nuova Anchor Force Allocation Logic del Castoro 6. Si trattava di minimizzare i 12 tiri (3 per ognuno dei 4 vertici del pontone) dei verricelli, contrastando le forze esterne (vento e mare) e mantenendo il Castoro nella sua rotta di posa della condotta. Allepoca i calcolatori, in particolare di non grandi dimensioni come quello istallato sul Castoro, avevano poca memoria ed erano piuttosto lenti. Ebbene con il programma scritto in Basic, basato sulla tabella ridotta del Simplesso riuscimmo, con soddisfazione e a parit di ottimo, a ridurre di circa 10 volte sia lo spazio di memoria utilizzato sia i tempi di calcolo.
Lazienda penso di utilizzare Stefano e me anche per lattivit di formazione, quindi fummo inviati alla scuola di Matelica (fondata da Mattei in persona) per insegnare ai giovani diplomati, futuri assistenti di cantiere, il Pert e altre tecniche di Ricerca operativa. A lungo negli anni successivi, lazienda mi invi a fare formazione allinterno (IAFE, Scuola di Supercortemaggiore, Credera) e allesterno del gruppo (Coopsette di Reggio Emilia, Siemens di Cernusco, International Facility Management ecc.).

Fui assunto alla Saipem dal direttore per la pianificazione e controllo perch si fidava degli allievi della Mattei e perch gli interessava la mia tesi sulla scelta degli investimenti. In quel momento il gruppo Eni passava da una struttura informatica decentralizzata (ogni societ aveva il suo centro di calcolo) ad una informatica centralizzata. Era stata costituita una nuova societ Enidata che gestiva un unico grande centro di calcolo del gruppo e anche gli analisti, i programmatori, i sistemisti e gli operatori del centro. Il capo della pianificazione e controllo che gestiva lelaboratore di Saipem era stato contrario alla centralizzazione, ma dovette cedere. Su un punto rest irremovibile: dovevano garantirgli un hardware autonomo in grado di calcolare il tasso di rendimento interno dei progetti dinvestimento. Infatti appena assunto trovai in ufficio una P652 (rilascio pi recente, della P101 Olivetti) dotata di un programma memorizzato su scheda magnetica per il calcolo del TRI (Tasso di Rendimento Interno). Il programma esplorava sistematicamente i tassi di attualizzazione del Cash Flow del progetto (le navi/piattaforme della Saipem avevano una vita presunta di circa 20 anni) per trovare quel tasso (TRI) che azzerasse il V.A.N. Poich il TRI doveva essere calcolato con 6 decimali la macchina impiegava circa 20 minuti per un calcolo. Con laiuto dellamico Saverio rividi il programma introducendo il metodo del dimezzamento per calcolare lo zero di una funzione. Il tempo medio di calcolo si ridusse a soli 3 minuti, vantaggio non da poco se si considera che per ciascun progetto dinvestimento dovevano essere effettuate numerose ipotesi variando gli esborsi in conto capitale, quelli dovuti alla gestione, alle manutenzioni straordinarie, gli incassi ed il valore di recupero al netto dello smantellamento. Con il tempo migliorai ulteriormente il programma facendogli calcolare tutti gli i principali indici PB (Pay-Back), ROI. (Return On Investment), VAN (Valore Attuale Netto), EA (Equivalente Annuo), IP (Indice di Profittabilit). Un grande limite di queste macchine era quello di non poter fare grafici, quindi bisognava armarsi di pazienza e carta millimetrata.

Il mio direttore decise di commissionare ad ENIDATA, societ sita in Milano, un progetto per la realizzazione di un sistema informativo per la programmazione e controllo degli uomini e dei mezzi nei cantieri Saipem. Si decise che il gruppo di lavoro dovesse essere misto: analisti-programmatori (ENIDATA) e utenti (SAIPEM). Per gli utenti fui scelto io e poi un altro giovane ingegnere del personale/organizzazione. Lesperienza, durata quasi 2 anni, fu altamente positiva da un punto di vista umano, organizzativo, tecnico e conoscitivo. Il capo progetto era una donna (rarit nellItalia della seconda met degli anni 70) competente e severa, ma comprensiva con i suoi sottoposti. Io legai subito con Giuliano un bravissimo perito informatico (conosceva perfettamente ASSEMBLER, COBOL e FORTRAN) che era stato programmatore in Saipem, prima della centralizzazione e prima che io fossi assunto. ENIDATA aveva acquisito per questo progetto, SYTEM 2000 un DBMS (Data Base Management System) di natura gerarchica dotato di PLI (Program Language Interface, principalmente verso il COBOL) e di un potente NL (Natural Language) che permetteva agli utenti di fare interrogazioni alla base dei dati in un linguaggio simile allinglese parlato. Naturalmente, per linterfaccia con la base dei dati, erano previste anche delle maschere realizzate in CICS (Costumer Interface and Control System). Per lo sviluppo dei programmi, scritti in COBOL/PLI si usavano i terminali video, che io conobbi per la prima volta, collegati via TSO (Time Sharing Option) con il centro di calcolo sito a Metanopoli.

Proposi a Giuliano di metterci a lavorare insieme per un modello euristico poi tradotto, principalmente da lui, in Cobol/PLI che sulla base di un indice multi criteri (distanza fisica, temporale, tipologica, politica, ecc. tra i cantieri/paesi), suggerisse allutente dellufficio programmazione, una lista di accoppiamenti (metodo Greedy della Matrice minima), sempre da lui modificabile, tra cantieri in fase finale, cedenti dei mezzi e cantieri riceventi dei mezzi al loro inizio. Una sera, terminando la giornata lavorativa, Giuliano mi disse: io dopo cena vado al Centro di Calcolo a Metanopoli, ho degli amici tra i sistemisti che mi fanno entrare, perch non vieni anche tu? Dalle nove di sera alluna di notte possiamo fare le prove che dallufficio richiederebbero pi di dieci giorni! Portati un golf!! Fu entusiasmante, per la prima volta entrai in un centro di calcolo: enormi armadi con dischi, nastri la CPU (Central Processing Unit), La Console, Stampanti, Lettori di schede, Terminali TSO e un aria condizionata gelida! Potevamo sederci intorno ad un tavolo, guardare i tabulati , fare le correzioni ed avere i risultati dopo 5 minuti!

E necessario spiegare che in quegli anni i computer, anche dei grandi centri di calcolo, non erano potenti come quelli di oggi: di giorno cerano tutti i terminali collegati, di notte no e andavano solo le procedure routinarie in batch (a blocchi) quindi da un terminale attivo, con alta priorit come quelli del centro, si riusciva ad avere risposte in tempi rapidissimi.

Terminammo il nostro modello di programmazione e spostamento di uomini e mezzi tra un cantiere e laltro sparsi nel mondo con una serie di programmi Cobol/PLI che si appoggiavano su due D.B System 2000 (PRGCANT e DISTRIBX). Gli uffici di programmazione della Saipem furono collegati tramite video terminali TSO e gli utenti potevano interfacciarsi con le basi di dati sia tramite maschere CICS che con il Natural Language. Lapplicazione fu un successo e rimase attiva sino a quando, per motivi organizzativi, la movimentazione dei Mezzi/Apparecchiature (Gr, Side-boom, Ruspe, Pale, Saldatrici, ecc.) tra i cantieri pass allufficio Gestione Mezzi che, nellambito della direzione tecnica, aveva anche il compito di controllarne lo stato duso, le manutenzioni e le alienazioni.

La possibilit di accesso al grande centro ENIDATA tramite i terminali TSO diede una svolta alle attivit dellufficio: potevamo scrivere nuovi programmi in COBOL e FORTRAN e creare banche dati in System 2000: due miei colleghi (un ingegnere e uno statistico) ne realizzarono una (MARKSAIP) per archiviare tutti i nuovi progetti probabili e programmati, nel mondo di interesse della societ. Il sistema era arricchito da un insieme di formule, calcolate con tecniche di regressione statistica, per computare velocemente una prima stima del valore/costi del progetto. Da parte mia mi dedicai a scoprire i grandi packages IBM disponibili nel Computer centrale, di cui nessuno in azienda sapeva niente:

  • Lo SPSS (Statistical Subroutine Package); lo usammo molto per le analisi di regressione;
  • IL PROJACS/CIPREC; per lanalisi reticolare e il livellamento delle risorse nei progetti;
  • Lo MPSX; per la programmazione lineare (e non lineare, linearizzabile a pezzi) e per le analisi parametriche e post-ottimali.
Per tutti questi packages, che studiammo ed imparammo ad utilizzare, si trovarono molte applicazioni, sia gestionali allinterno della direzione programmazione, sia in collaborazione con la direzione tecnica. Ricordo in particolare la potenza/efficacia di MPSX con cui risolvemmo diversi problemi. Ne parlai con Gianni, un bravissimo compagno di liceo e di ingegneria che faceva lassistente nel dipartimento di Energetica al Politecnico di Milano.

Gianni era vissuto diversi anni in Africa e, tra laltro si era occupato di sviluppo delle colture di pomodori traendone alcuni modelli matematici. Avuto il permesso del direttore, felice di collaborare con il politecnico di Milano, utilizzammo con successo le potenzialit di MPSX/IBM per ottimizzare i suoi modelli.

In quegli anni il nostro direttore diede incarico ad una societ di consulenza di Bologna di proporre un sistema (modello + software + hardware) per simulare sul computer diverse ipotesi di piano quinquennale (Conto Economico + Stato Patrimoniale). Ci proposero ed acquisimmo MDS (Modelli Dinamici per le Strategie) basato sui metodi di simulazione dinamica (System Dynamics) ideati da Forrester, il linguaggio di programmazione era il Basic e lo hardware un HP 9845b con memoria da 64Kbytes. Un breve inciso: il Byte formato da 8 bit (che possono assumere valori 0-1) dunque un byte (combinazioni possibili 2^8 = 256) sufficiente per rappresentare tutte le lettere dellalfabeto, i caratteri speciali e le 10 cifre. Dunque una macchina con memoria di lavoro di 64Kbytes ha una capacit di 64.000 caratteri, si tenga presente che la P101 si fermava a 3 o 4 Kbytes. I primi PC (IBM o Olivetti M24) arrivavano a 640 Kbytes. Ben presto la memoria di lavoro dei PC si cominci a misurare in Mega Bytes (10^6 Bytes = milioni di caratteri) ed oggi in Giga Bytes (10^9 Bytes = miliardi di caratteri). Per i Super Computer oggi si parla di Tera Bytes (10^12 Bytes = migliaia di miliardi di caratteri) e Peta Bytes (10^15 Bytes = milioni di miliardi di caratteri).

Un'altra importante misura, oltre la capacit della memoria di lavoro, la velocit di calcolo dei Computers che si misura In FLOPS (Floating point Operations per Seconds, Numero di operazioni eseguibili in virgola mobile per secondo)1. . La storia passata segue pi o meno bene la legge di Moore, ma vediamo oggi (2018) quali sono i SuperComputer pi veloci (la misura in PetaFLOPS, 10^15 Operazioni per secondo):

  1. Titan 17.59 USA;
  2. ENIHPC4 18.64 Italia;
  3. Gyoukou 19.14 Giappone;
  4. PizDaint 19.59 Svizzera;
  5. TaihuLight 93.00 Cina;
  6. Summit 200.00 USA?
La 9845 della Helwett Packard, siamo nei primi anni 80 dello scorso secolo, era un desktop computer fortemente innovativo: programmabile in un linguaggio di 3 generazione (Basic), dotato di video, stampante termica Uni A4 integrata e 2 lettori di cassette magnetiche. Una grande novit furono quelle grafiche: non pi il ricorso alla carta millimetrata o agli orribili grafici composti da asterischi o caratteri prodotti dai tabulati dei centri di calcolo. Da allora la Businness Graphics fu qualcosa in pi che i computer scientist poterono offrire ai tecnici di Ricerca Operativa, Matematica e Statistica e quindi ai decisori delle aziende e della economia. Acquistammo diversi packages: ricordo il RUFUS antesignano dei futuri sistemi di Word Processing, utilizzato con maestria da Patrizia, la segretaria del capo e un software di programmazione lineare che, per problemi medi e piccoli faceva concorrenza allo MPSX della IBM. Rapidamente trasferimmo sulla HP9845 tutti i programmi per lanalisi degli investimenti scritti per la P652 e ne approntammo di nuovi grazie a Cesare un perito informatico, e poi laureato in economia bravissimo, tra laltro, a programmare in Basic.

Sviluppammo un PERT (con analisi statistica basata sul cammino critico), un modello di Punto di Pareggio per le singole divisioni e lazienda nel suo complesso ed un modello di percentualizzazione dei Costi sui Ricavi del Conto Economico (sia storico che prospettico) fortemente voluto dal nostro direttore. Dal punto di vista logistico Cesare ed io eravamo dei privilegiati. Nel 3 palazzo uffici era di norma lopen space, i dirigenti potevano avere un box, ma con una parete di vetro; i direttori un box con due pareti opache. Lo stesso avemmo noi due; assieme al terminale e stampante TSO collegata al centro Enidata, la HP9845, e un grande armadio con dispense e libri che il direttore ci lasciava acquistare. Con Stefano e gli atri amici ingegneri della direzione tecnica impostammo in quegli anni sul computer della HP una banca dati, libri e articoli, di interesse dei vari settori aziendali.

Ricordo che, per un breve periodo, poich il nostro direttore era andato in pensione ed il nuovo si trovava ancora negli USA, Cesare ed io ci trovammo a dipendere direttamente dallamministratore delegato. Ci venne a trovare, volle vedere il 9845HP e si sofferm (proveniva dallarea amministrazione e Finanza) sul programma che avevamo approntato per il punto di pareggio. Fece con noi alcune simulazioni chiedendoci di variare le ipotesi sui costi fissi, variabili e ammortamenti delle diverse divisioni aziendali. Ringraziandoci se ne and portando con se alcune stampe di tabelle e grafici.

Un giorno Roberto, amico di lungo corso, che lavorava in HP mi mostr su una piccola loro macchina dotata di un piccolo video, un software innovativo per fare i calcoli, che assomigliava alla battaglia navale. Rimasi affascinato dalla semplicit e dalle potenzialit di calcolo di quella applicazione: Spreadsheet, in italiano si sarebbe poi chiamato Foglio di calcolo o Foglio elettronico. Chiamai presto il nostro referente commerciale della HP e gli chiesi come mai sulla HP9845b non fosse disponibile questo software, presente su loro macchine di classe molto inferiore. Mi rispose che lo Spreadsheet era poco pi di un video gioco e quindi da escludere da macchine professionali. Rimasi a lungo stupito della cecit, non tanto del nostro referente commerciale, ma di una azienda dinamica e di successo come la HP A questo punto per necessario un breve Flash-back.

Alla fine del 1978 Frankston e Bricklin fondarono la Software Arts e produssero VISICALC, il primo programma di gestione di fogli elettronici. Laccoppiata Apple II / VISICALC divenne trainante per il mercato dei microcomputer: la macchina era facile da usare, ad un prezzo accessibile, il programma rispondeva alle esigenze di ingegneri, tecnici, manager e professionisti fornendo uno strumento veloce, semplice e versatile per risolvere problemi finanziari, gestionali e matematici. Cos lo stesso Frankston descrive la nascita del foglio elettronico: "Poche persone sono in grado, o vogliono sostenere lo sforzo, di scrivere programmi in BASIC (o in PASCAL) dedicati a semplici applicazioni; del resto i packages pronti e confezionati sono complessi e specialistici: un letto di Procuste a cui gli utenti finali, cio coloro che debbono risolvere i problemi pi svariati, debbono confrontarsi. Naturalmente non si dice questo per sostenere che non si pu fare un uso efficace del Personal Computer. Tutti possono constatare il successo dei primi calcolatori tascabili, uno strumento utile, flessibile e semplice da usare: noi vogliamo catturare la semplicit e la familiarit delle Calcolatrici Tascabili e trasferirle in un Personal Computer. Abbiamo osservato che la maggior parte delle persone per risolvere i loro problemi utilizza una Calcolatrice Tascabile assieme ad un foglio di carta ed una matita su cui annotano parametri e risultati intermedi. Abbiamo quindi pensato che una calcolatrice abbinata ad un video tabellare potesse essere un potente strumento di problem solving: questa stata la premessa per lo sviluppo di VisiCalc.

Nel nostro ufficio, poich sul 9845b il foglio elettronico non era disponibile, acquisimmo un Olivetti M24 (un clone del PC-IBM) su cui funzionava il foglio di calcolo Multiplan (prodotto da Microsoft) che, a differenza delloriginario Visicalc consentiva la gestione di Dossier formati da pi fogli (impostazione che poi sarebbe stata adottata anche da Excel e da altri fogli di calcolo). In quel periodo (met anni 80) in azienda i video dei computer, fossero di PC o di terminali, erano ancora visti come indicatori di basso status symbol: roba da segretarie o da terminalisti!.Ne parlai con il dirigente responsabile del controllo di gestione, fu subito entusiasta e volle un M24 con Multiplan installato nel suo box con parete di vetro. Il dottore poteva farsi direttamente e autonomamente tutte le simulazioni che voleva, se e quando lo ritenesse opportuno. Passarono almeno altri due o tre anni prima che un altro dirigente avesse il coraggio di farsi installare un PC nel suo Box e di usarlo in prima persona!

Ai convegni dellAIRO (Associazione Italiana di Ricerca Operativa), incontrai per molti anni persone interessanti che mi insegnarono molto: dal gi citato Prof. APARO, alla Prof. Ostanello (studiosa allepoca di tecniche multi criteri e processi decisionali), allIng Poiaga (esperto di tecniche reticolari, lessi un suo articolo fondante sul GERT) che poi avrebbe fondato AICE (Associazione Italiana di Cost Engineering), allIng. Gatti che poi incontrai nuovamente come A.D. Snamprogetti e Presidente ANIMP (Associazione Nazionale Italiana di Impiantistica). Conobbi anche Luisa una dott.ssa in statistica che in ASM (Associazione Servizi Municipalizzati di Brescia) si occupava di analisi degli investimenti, ricerca operativa, informatica e reti aziendali. Luisa mi parl di Framework un nuovo sistema di produttivit individuale che comprendeva le seguenti funzionalit: foglio elettronico, data base, word processor, indici con funzionalit ipertesto, linguaggio di programmazione (FRED). Convinsi il direttore ad acquistarlo e nel giro di un anno molti dipendenti (dalle segretarie al dirigente del controllo gestione) della direzione PROG (programmazione e controllo) furono equipaggiati con un PC avente il prodotto installato.
Patrizia si impadron per prima dei segreti del Word Processor, Felice del linguaggio FRED ed io utilizzai il foglio elettronico per approntare modellini di Ricerca Operativa, Analisi degli investimenti e Project Management.

Decidemmo anche di capire qualcosa della nascente intelligenza artificiale (IA): allepoca erano di moda i sistemi esperti, celebri Mycin per la diagnostica medica e Dendral per le analisi chimiche. Acquisimmo per poche centinaia di migliaia di lire un guscio di sistema esperto, basato sulle regole di produzione. Le regole di produzione erano fondate su una logica del tipo: se allora, molto simile ai sillogismi di Aristotele, ma anche alla istruzione IF dei principali linguaggi di programmazione di terza generazione (Fortran, Cobol, Basic). In pratica tutte le regole di produzione (IF) erano costituite da precedenti e conseguenti. Esisteva poi un pool di fatti accertati e di fatti da accertare. Se una regola di produzione aveva tutti i precedenti accertati si accendeva e produceva nuovi fatti accertati, cos via per tutte le altre regole. Si diceva che questo approccio tendesse a simulare il cervello umano mentre quello concorrente delle reti neurali tendeva ad emulare il cervello umano. Le reti neurali si rifanno da un lato agli studi di Mc Culloch e Pitts su neuroni e sinapsi e dallaltro lato ai lavori di Hebb sulle reti. Lidea la seguente: esistono un livello dingresso, un livello duscita e uno o pi livelli intermedi, ciascun livello composto da uno o pi neuroni. Ciascun neurone collegato (sinapsi) sia con neuroni dello stesso livello che con neuroni di altri livelli. Lapprendimento della rete (supervisionato dagli umani o no) avviene variando i pesi delle connessioni. Oggi non si parla quasi pi di sistemi esperti, invece le reti neurali sono sottostanti al dibattito sul deep learning: secondo la IA forte avremo presto sistemi e robot dotati di intelligenza e coscienza confrontabile ( forse superiore) con quella umana. Secondo la IA debole avremo potenti strumenti in grado di interagire e migliorare le potenzialit umane. In questa visione anche le preoccupazioni luddiste della perdita di posti di lavoro sono eccessivamente pessimiste: dalla ruota, al mulino ad acqua, alla macchina a vapore, ai telai meccanici la tecnologia ha sempre ridotto posti di lavoro, ma ne ha sempre creati di nuovi pi qualificati, meno faticosi e pi gratificanti.

Nellufficio studi continuammo anche a occuparci dei packages disponibili sul mainframe uno dei principali fu il SAS (Statistical Analysis System). Applicammo con successo la Cluster Analysis e scrivemmo un piccolo programma (Il sistema era dotato di un potente macrolinguaggio orientato alle analisi statistiche e probabilistiche) per stimare in via preliminare il profilo del rischio dei progetti. I clienti, sin dalla fase di offerta, chiedevano sempre pi una full network analysis come condizione indispensabile per acquisire nuovi progetti. Mi orientai, con laiuto di un ingegnere della direzione tecnica su Artemis, un prodotto della Metier che comprendeva: analisi reticolare e calcolo del cammino critico sia per reti AON (Activities ON Nodes) sia per reti PDM (Precedence Drawing Method), un sistema di livellamento dei carichi delle risorse (con vincoli di tempo/risorse), un potente data base relazionale ed un evoluto linguaggio di programmazione. Ma la pi eclatante novit di Artemis era la grafica: niente pi Box delle attivit o istogrammi di carico disegnati con asterischi, chiare curve ad S con sotto tabelle dei dati e bar-chart che consentivano ogni tipo di tratto per visualizzare criticit, milestones ecc. Continuava alla grande lera della business graphics a cui oggi siamo tutti abituati anche solo con luso di Excel. Lacquisto di Artemis fu accettato dai capi. La direzione del personale e organizzazione colse la palla al balzo per avere un mainframe in casa in quanto Artemis si poteva utilizzare, grazie al potente DB relazionale, anche come sistema gestionale aziendale. Lufficio studi fu per presto autorizzato ad avere la versione funzionante su PC (Artemis 7000).

Dopo aver avuto la certezza di interesse per la pubblicazione da parte della Scuola Mattei, proposi a due colleghi di scrivere un libro Il Project Management nella Organizzazione Aziendale. Nel quaderno (sarebbe circolato solo allinterno del gruppo) non solo descrivemmo tutte le potenzialit delle tecniche reticolari e di Artemis, ma anche i pregi e difetti delle varie strutture aziendali (funzionale, divisionale, a matrice, ecc.) nellottica di facilitare la gestione dei progetti. Il nuovo direttore della programmazione e controllo apprezz il lavoro, ma ci spinse a proseguire scrivendo un secondo volume in cui, partendo da un semplice esempio pilota (scegliemmo una casa la cui costruzione richiedeva solo 10 attivit!) fossero chiaramente spiegati tutti i passi necessari per gestire un progetto con le tecniche pi moderne. Tramite comuni conoscenze potei presentare il progetto, gi in fase avanzata, a Franco Angeli. Leditore si mostr molto interessato anche perch allepoca non esisteva, in italiano, un manuale che mostrasse passo, passo come costruire, a partire dalla WBS (Work Breakdown Structure), un reticolo di progetto per ottenere il bar-chart, gli istogrammi di carico delle risorse e le curve ad S di avanzamento e dei costi (Budget, Earned, Actual). Nella prima edizione il titolo del manuale era Pianificazione e Controllo dei progetti) ed il Software utilizzato per costruire i modelli sul computer era Artemis. Negli anni successivi continuammo ad aggiornare il volume: aggiungemmo un glossario dei termini di Project Management, mostrammo come buoni risultati potevano ottenersi usando Winproject ed Excel, potenziammo la parte sul Cost Control ed introducemmo lanalisi del rischio dei progetti. Lanno in cui facemmo le modifiche pi sostanziose leditore ci propose di rilanciare il volume con un nuovo titolo: Tecniche di Project Management. Il volume da oltre 30 anni continua a vendere copie con grande soddisfazione dellEditore.

Mentre lavoravo al libro una giovane amica informatica (che poi sarebbe diventata ordinario di Ricerca Operativa e presidente dellAiro) mi fece ottenere un contratto al politecnico di Milano per tenere diverse lezioni sul P.M.; gli studenti furono contenti di vedere le potenzialit di un software che non conoscevano e anche il mio nuovo direttore fu ben contento di collaborare con Polimi, purch tenessi le mie lezioni/esercitazioni dopo le 16. Anna mi propose anche di seguire come relatore la tesi di una sua studentessa della Statale di Milano, argomento ricerca: funzioni semplici e flessibili per rappresentare le curve ad S dei progetti. Da quel momento, anche con interesse dellazienda, seguii come Tutor diversi laureandi di varie universit. In collaborazione con IAFE (Istituto Addestramento e Formazione ENI), di cui in giovent ero stato allievo, e Snamprogetti fondammo il primo Chapter italiano del PMI (Project Management Institute USA). A lungo poi tentai di trasferirne in azienda i principi: Initiation, Planning, Execution, Control, Termination. Processi che dovevano essere ripetuti per le varie aree gestionali dei progetti: Scopo, Tempi, Costi, Qualit, Rischi, Contratti ed Acquisti, Comunicazione ed Integrazione, ecc.
Quando il direttore della pianificazione e controllo fu destinato a nuovo incarico lufficio studi venne soppresso e noi (eravamo non pi di sei) andammo a costituire lufficio planning che, assieme allufficio cost control fu posto in staff al direttore generale operativo. In quegli anni non ci fu molto tempo per la ricerca e lo studio, dovevamo infatti dare supporto al commerciale in fase di acquisizione delle offerte e agli operativi in fase di gestione dei progetti. Lunico cambiamento di rilievo (da un punto di vista informatico) fu il passaggio da Artemis a Promavera Project Planner e linstallazione di un grande e bel Plotter in dotazione dellufficio. Seppi anche che lufficio organizzazione e sistemi aveva abbandonato Artemis ed aveva acquistato SAP per le applicazioni gestionali.

Quando andai in pensione una delle prime preoccupazioni fu di aggiornare il computer di casa. In passato avevo avuto un PC Amstrad ancora dotato di due lettori per floppy disk grandi (ma senza Hard Disk) e poi un Notebook Zenith equipaggiato con Hard Disk ed un lettore di mini floppy, non avevo per collegamento internet e quindi neanche posta elettronica. Lidea era che essendo disponibili queste facility in ufficio non avevo necessit di averle anche in casa. Dunque, arrivato alla pensione acquistai un Notebook Toshiba dotato di video grande, lettore di CD e porta USB, chiesi per di avere un lettore esterno di mini floppy in quanto sui dischetti erano memorizzati tutti i miei file. Quando la scheda video del Toshiba mi abbandon passai ad un Samsung, con cui sto scrivendo questo articolo, pi potente ma con un grande video come il Toshiba. Le porte USB erano ormai uno standard e ad esse (almeno 4) si potevano collegare: le chiavette, il mouse, la stampante e altre periferiche. Due anni fa mi regalarono una nuova stampante in sostituzione alla vecchia Epson a getto dinchiostro. Si trattava di una multifunzione (stampante, fotocopiatrice, fax, scanner) sempre della Samsung. Gi in ufficio avevo apprezzato la superiorit delle stampanti laser che hanno si il toner, ma non le cartucce dinchiostro che debbono essere cambiate frequentemente ed il cui contenuto si secca se per una settimana non si usa la stampante. Il pi grande vantaggio pratico per lo scanner che permette di inviare documenti cartacei (ad assicurazioni, banche, commercialisti, ecc.) e pagine di libri o articoli agli amici.

Ben presto mi stufai del collegamento a tempo con Internet e passai, come credo abbiano fatto tutti, al collegamento forfettario pagato in bolletta e allo ADSL. Ricordo che miei primi articoli e anche i primi libri erano scritti a mano e talora con la macchina da scrivere, si portava a mano il cartaceo dalleditore, si andavano a ritirare le prime bozze, si correggevano e si riportavano alleditore. Le bozze solitamente erano due, talora tre. Leditore poi, che si appoggiasse o no alla tipografia, impiegava due o tre mesi per stampare i volumi. Una prima svolta vi fu con la diffusione dei word processor (le correzioni molto pi facili e rapide, grazie anche al controllo ortografico dei testi) e dei dischetti, ora alleditore si portava direttamente il floppy e non pi il cartaceo. Leditore dal canto suo utilizzava sistemi elettronici e quindi i tempi di stampa erano dimezzati. La seconda svolta avvenne con la diffusione della posta elettronica che permette di inviare in allegato anche un intero volume. Internet uno strumento prezioso anche per chi studia, scrive e fa ricerca. Nei riferimenti riportati sotto si trovano diversi richiami a Wikipedia, lenciclopedia On-line. La versione Inglese sicuramente pi completa, ma personalmente non padroneggiando perfettamente la lingua, procedo in questa maniera: se conosco abbastanza largomento vado direttamente sulla voce Inglese se invece non lo conosco leggo sempre prima quella italiana. Lo Home-banking uno strumento prezioso soprattutto ora che le banche chiudono sempre pi sportelli e tendono ad eliminare la figura del cassiere per sostituirla con quelli che pomposamente chiamano robot, in realt Bancomat poco pi evoluti ma scomodi e complicati da usare. Per ridurre i costi si trasferisce lavoro, perdita di tempo, code e arrabbiature sui clienti. Un percorso inverso, cio miglioramento del servizio almeno dove vivo, lo ho riscontrato alle poste, noto lo aumento del numero degli sportelli, ora tutti multifunzione, personale gentile e possibilit di pagare sia in contanti che con il bancomat.

Lo Smartphone, che in realt un piccolo Computer, diventato pervasivo con le sue centinaia di apps (applicazioni che sono programmi di computer). La domenica capita di vedere al ristorante madre, padre e 2 figli che appena seduti a tavola cominciano a smanettare con lo Smartphone, il pi piccolo ne ha uno finto che gli permette comunque di abituarsi alla realt virtuale invece che interagire con il mondo reale. Se c un nonno non tecnologizzato, sar lui a leggere il men, interagire con il cameriere e cominciare ad ordinare acqua e vino. Mi hanno regalato uno Smartphone, ma lo tengo spento e di riserva, infatti mi anche scaduta la sua scheda Sim. Preferisco di gran lunga il PC: video grande, tastiera comoda e poi decido io quando accenderlo e cosa fargli fare. Anche i pi diffusi Social Network (Facebook, Twitter, WhatsApp) non suscitano il mio interesse, tre o quattro anni fa per, su sollecitazione di un ex-collega e di una amica, mi sono inscritto a Linkedin che seguo con interesse e attivamente da quando ha iniziato a convertirsi da semplice Social per offerte/ricerche di lavoro a Social su cui si possono dibattere questioni culturali inerenti tutte le diverse professioni.

Presso luniversit di Castellanza ottenni un contratto per insegnare, nellambito del corso di ricerca operativa, le tecniche di Project Management e, corsi simili, pi o meno estesi, tenni anche presso la Scuola Mattei - Master Medea, presso ANIMP (Associazione Nazionale di Impiantistica) e presso varie altre aziende e associazioni. Per la scuola Mattei, ora parte integrante della nuova Eni Corporate University, pubblicai nel 2005 il libretto La gestione dei progetti. Vi erano descritti diversi fogli elettronici, alcuni innovativi come lEquazione della curva ad S, il Cruscotto del Project Manager, Il Revised Earned Value Method e le Matrici Impatto Probabilit semplificate. Quel quaderno non era disponibile sul mercato esterno al gruppo, quindi poich Animp era interessata per i corsi che tenevo in associazione decisi di realizzare un CD La cassetta degli attrezzi del Project Manager distribuito nel 2006 da Springer Verlag con cui nello stesso anno avevo pubblicato il volume, Problem Solving: idee, metodi e strumenti da Mos a Mintzberg.

Due anni dopo, nel 2008, pubblicai con Franco Angeli un testo corredato da CD: Il foglio elettronico come strumento per il Problem Solving. Mentre il libro pubblicato con Springer aveva un taglio storico/filosofico, questo volume aveva un taglio di matematica applicata e ricerca operativa descritte con modelli realizzati sul foglio elettronico Excel.
Il primo collegamento ad Internet in Italia avvenne nel 1986 ad opera della universit di Pisa che seguiva le orme tracciate da Faedo e Conversi. Personalmente iniziai a collaborare attivamente (e non solo per consultazione/informazione) con la rete nel 2007 attraverso il sito www.matematicamente.it . Me lo fece conoscere una cugina insegnante di matematica nella scuola secondaria superiore. Con Matematicamente oltre a numerosi articoli scrissi due libri: Problem Solving: 102 nomi per 102 idee di taglio storico/filosofico e Project Management, Problem Solving, Decision Making di taglio matematico-applicativo e di ricerca operativa. Circa cinque anni fa potei dunque capire concretamente il significato di libro elettronico, i volumi infatti furono pubblicati sia in formato cartaceo che elettronico.

Il secondo volume, come del resto il secondo pubblicato con Angeli avevano come soggetto/oggetto principale il foglio elettronico ed in particolare Excel che ormai aveva vinto la competizione con tutti i suoi concorrenti, storici e contemporanei (Visicalc, Multiplan, Lotus, Framework, ecc.). Excel fu subito dotato di un linguaggio di Programmazione Macro sostituito negli anni con il Visual Basic, simile al Basic di terza generazione, ma anche ai linguaggi di programmazione pi moderni (Java, CC+, Pyton, ecc.). Mi interessa per, essendo sempre stato un programmatore di computer piuttosto scadente, mettere in evidenza tre altre importanti funzionalit di Excel per la soluzione dei Problemi:

  1. Ricerca Obiettivo: in inglese what to do to achieve , cosa fare per ottenere. Apparentemente si tratta di una opzione banale che consente in una tabella, di imporre un risultato ed andare a vedere quale deve essere il dato di partenza che lo pu generare. Si tratta di una analisi inversa dal risultato al dato. Lopzione pu essere usata per per risolvere una qualunque equazione (o cercare gli zeri di una funzione) lineare, polinomiale o non lineare qualunque;
  2. Iterazioni: sono utilissime per risolvere i problemi di formule circolari (se vi una convergenza). Sono per anche utili nei problemi di Simulazione e di generazione di numeri casuali (Metodo MonteCarlo). Premendo in successione il tasto F9 (Ricalcolo) si pu visualizzare su un grafico come procede la ricerca;
  3. Risolutore (Solver): Si tratta di un potente sistema di programmazione matematica (ottimizzazione) fornito dalla Frontline a Microsoft. Non tutti sanno per che il Risolutore, se non si indica una funzione obiettivo, pu essere utilizzato per trovare le soluzioni di un qualunque sistema di equazioni lineari/non lineari.
Circa cinque anni fa ricevetti una mail di saluto da un frequentatore di matematicamente. Si trattava di Marco, un compagno di liceo che non incontravo da oltre trenta anni. Iniziammo un intenso scambio di mail su vari temi: economia, scienze, matematica, politica, ecc con divertimento reciproco. Insieme scrivemmo anche alcuni articoli, per brevit ne cito due che sono in stretta relazione con la divulgazione del progresso dei computer, della matematica applicata e dei relativi software:
  • Hume e Smith, Programmazione Matematica, Matematicamente 2018;
  • Hume e Smith, Problemi algoritmi e Codici, Matematicamente 2017.
In Programmazione Matematica riprendemmo i temi a me cari di ottimizzazione che da ragazzo avevo appreso dallo zio che lavorava alla Olivetti e da giovane da Enzo Aparo. In particolare utilizzammo gli algoritmi genetici di cui Marco disponeva lopzione nella sua versione aggiornata di Excel. Sul concetto di algoritmo vi oggi molta enfasi e tanta confusione. Il nome deriva da un matematico persiano:al-Khwarizmi, ma il concetto era gi noto ai greci, ad esempio ad Euclide che aveva inventato un algoritmo per il calcolo del Massimo Comun Divisore.
Gli algoritmi genetici, utilizzati in genere per risolvere problemi di ottimizzazione a pi variabili, traggono il nome e la modalit del loro funzionamento da due meccanismi fondamentali della biologia scoperti da Mendel e Darwin: Il Cross-Over e le Mutazioni casuali. Sostanzialmente funzionano cos:
  1. Si scelgono casualmente dei punti di soluzione iniziali (come nel Metodo MonteCarlo);
  2. Si selezionano le soluzioni migliori, si incrociano i valori di alcune variabili di queste soluzioni per generarne di nuove;
  3. Si introducono mutazioni casuali sulle nuove soluzioni per generare ulteriori nuove soluzioni;
  4. Si torna al punto 2) sino a quando i miglioramenti cessano;
  5. Fine.
R un software statistico e grafico, utilizzato anche da una mia giovane cugina medico nella tesi di specialit per le ricerche sui problemi di anestesia e ventilazione dei pazienti. Come altri software statistici (ad esempio SAS) comprende anche algoritmi di ricerca operativa e ottimizzazione. In questi giorni il collega ed amico Stefano utilizza e confronta i risultati dellalgoritmo genetico di R con lalgoritmo genetico di Excel. Il problema quello di posare una condotta (oleodotto o gasdotto) in fondo al mare minimizzando gli stress (taglio, momento flettente, ecc.) sulla condotta. Lidea quella di minimizzare in fase di posa, lenergia potenziale sulla condotta come farebbe la natura.

In Problemi algoritmi e Codici scrivemmo, con Marco, di algoritmi euristici, sub-ottimali come sono ad esempio gli algoritmi Ingordi, Greedy Algorithm. Questo tipo di algoritmi sono chiamati cos perch ad ogni passaggio scelgono la soluzione (localmente) migliore; naturalmente non si ha garanzia di raggiungere un ottimo assoluto, ma spesso si ottengono buone soluzioni. Ecco un esempio concreto e divertente per concludere questo articolo e, in particolare la parte sugli algoritmi.
Problema: cercate un modo ragionevole, e rispettoso delle preferenze, per far trovare lanima gemella ad n donne (X) ed n uomini (Y) cercando di accontentare tutti. Costruite una tabella n*n in cui sulle righe sono riportate tutte le donne e sulle colonne tutti gli uomini. Considerate poi il voto (compreso ad esempio tra 0 e 10) Xi che ogni donna dar su ogni uomo ed il voto Yi che ogni uomo dar su ogni donna. Per ogni cella della tabella o matrice costruite poi il seguente indicatore (media ponderata tra le preferenze femminili e maschili):

[math] P_i = k \cdot X_i + (1-k) \cdot Y_i (0.
E evidente che se
[math] k = 1 [/math]
la matrice rappresenter tutte e solo le preferenze femminili, se
[math] k = 0 [/math]
tutte e solo le preferenze maschili. Se
[math] k = 0.5 [/math]
la matrice rappresenter la media aritmetica tra le preferenze maschili e femminili. Si pu pensare a
[math]k[/math]
come ad una manopola regolatrice dellalgoritmo: se girata tutta a sinistra (
[math]k=1[/math]
) si da la massima enfasi alle preferenze femminili, se girata tutta a destra (
[math]k=0[/math]
), a quelle maschili. Qualunque sia il valore di
[math]k[/math]
prescelto vediamo ora i passi dellalgoritmo Greedy per effettuare le assegnazioni:
  1. Si costruisce la tabella/matrice che in ogni cella riporta lindice di preferenza
    [math]P_i[/math]
    dello specifico accoppiamento;
  2. Si sceglie il
    [math]P_i[/math]
    massimo. Si elimina da ogni ulteriore considerazione la donna luomo assegnati cancellando le rispettive righe e colonne della matrice;
  3. Si sceglie il successivo
    [math]P_i[/math]
    massimo. Si elimina da ogni ulteriore considerazione la donna luomo assegnati cancellando le rispettive righe e colonne della matrice;
  4. Si torna al punto 3 sino a quando tutte le assegnazioni siano state effettuate;
  5. Fine.
Non si avr garanzia di aver trovato la soluzione ottima, ma solo una elevata probabilit di avere trovato una buona soluzione. Il lettore attento avr compreso che era questo lalgoritmo euristico che avevamo utilizzato per il trasferimento dei Mezzi tra i cantieri della Saipem.

Conclusione

Gli anni del Boom economico in cui lItalia primeggiava (3 o 4 nel mondo) per la ricerca e le nuove tecnologie (Elettronica, Chimica, Farmaceutica, Nucleare, Energia,) fu dovuta da un lato al piano Marshall (USA), dallaltro ad alcuni personaggi eccezionali non ben compresi e talora osteggiati dalla politica, i sindacati, la magistratura e la burocrazia: Olivetti, Mattei, Ippolito, Marotta, Amaldi, Natta; vedi in proposito il bel saggio, citato tra i Riferimenti, di Pivato (Il Miracolo Scippato).

Lauspicio di chi scrive che altri gemelli dellinformatica italiana vogliano raccontare la loro storia di problemi risolti, ma anche di crescita e convivenza con i computer.

Riferimenti

Persone
Hardware
Software
Libri e Articoli