Technology

Affrontare sfide impossibili

 By Eniday Staff

Cos’hanno in comune il navigatore che abbiamo nelle nostre auto, la missione lunare più famosa della storia, una giovane donna e l’HPC4, il supercomputer di Eni? Scopriamolo insieme…

L’ingegno di una donna per andare sulla Luna

Il progetto si chiamava Apollo. Tra le innumerevoli sfide da affrontare, una in particolare: guidare il modulo lunare nella delicatissima fase di allunaggio. In gioco la vita di un equipaggio di tre uomini.
Oggi daremmo tutti per scontato che questa responsabilità vada assegnata a un computer o, più precisamente, al software che lo istruisce su cosa fare. Succede a esempio tutte le volte che ci affidiamo al pilota automatico di un aereo di linea.
Nel 1969 la cosa non era per niente ovvia né scontata. Sappiamo tutti come è andata, probabilmente è un po’ meno noto quali siano stati gli ingredienti. Da un lato il coraggio di tre astronauti pronti ad affrontare l’ignoto; dall’altro, tecnologia e ingegnosità dell’uomo. O, meglio, in questo caso di una donna, Margaret Hamilton, e del suo team di programmatori.
Nel 1969 Margaret non aveva ancora 30 anni, ma già una figlia piccola che la seguiva ovunque… anche all’interno del MIT Instrumental Laboratory. 30 anni, una figura minuta, dei grandi occhiali e un sorriso disarmante… che a un primo sguardo forse gliene avresti dati 18 di anni.
Margaret era la responsabile della progettazione del software dell’Apollo Guidance Computer, il computer di bordo del modulo di comando e del modulo Lunare della Missione Apollo 11.
Un computer da programmare per una missione super critica e complessa, ed eravamo solo agli albori della disciplina che oggi è chiamata ingegneria del software. A disposizione solo il linguaggio assembler, più vicino alla macchina che all’uomo. La soluzione: l’intuizione di Margaret, che aveva previsto l’eventualità di sovraccarico e conflitto di informazioni durante l’allunaggio e quindi la necessità di organizzare i compiti per priorità (escludendo, in caso, quelli non necessari), e l’abilità del suo team di sviluppatori, che realizzò il programma che, il 20 luglio del 1969, permise all’umanità di compiere quel volo che è entrato nella storia.

software-apollo-guidance-computer
Margaret Hamilton in azione (NASA)

Apollo Guidance Computer

Con chi avevano a che fare la Hamilton e il suo team? La memoria dell’Apollo Guidance Computer era di 152 Kbyte complessivi e la frequenza di clock da 0.043 a 2MHz. Con questa macchina, e grazie al software sviluppato da lei e dal suo team, Margaret era in grado di coordinare il flusso dei dati proveniente dal sistema di navigazione giroscopico, dal telescopio e da due radar, fornendo agli astronauti il controllo sui motori e su tutte le operazioni di bordo. Gli astronauti, che non erano tecnici informatici specializzati, potevano contare su un’interfaccia facilitata composta da una tastiera numerica e indicatori luminosi. Da semplici coppie di numeri gli astronauti potevano indicare quale programma avviare o quale operazione compiere.
La rivoluzione nel rapporto uomo-macchina ha ufficialmente inizio, e l’ingegneria del software, come la figlia di Margaret (e forse, anche lei figlia di Margaret) comincia a muovere i suoi primi passi.
Non sono passati ancora neanche 50 anni dalla notte in cui l’uomo è riuscito ad andare oltre l’immaginabile, che tutto, per quanto riguarda l’informatica, è cambiato. Computer e linguaggi di programmazione, prima appannaggio solo degli enti governativi o dei militari, sono entrati nelle nostre case e nella nostra quotidianità. Prima sono stati semplici giochi, dalla grafica anche minimale, poi si è arrivati a quelli più complessi in cui il dettaglio grafico è paragonabile al reale. Parallelamente, i più “smanettoni”, hanno iniziato a parlare di codici, da C++ a Java, e corsi di programmazione sono stati inseriti in facoltà umanistiche prima e poi hanno coinvolto gli studenti già delle scuole superiori.
Oggi si è arrivati alle elementari, in quelli che, in gergo, vengono chiamati “contesti dedicati”. Imparare a scrivere programmi, a parte il divertimento insito nel condividere ciò che si fa, offre infatti l’opportunità di sviluppare competenze e strumenti per risolvere problemi complessi, creare progetti e comunicare le proprie idee. Un mondo di possibilità che, grazie alla mole di conoscenza accessibile attraverso la rete e alla diffusione pervasiva dei computer, è veramente a portata di mano per tutti.
Dalla Hamilton ad oggi sono stati fatti passi da gigante, e quello che era stato creato per andare sulla Luna oggi viene utilizzato in contesti assolutamente diversi… come l’esplorazione petrolifera e la produzione di giacimenti.

software-apollo-guidance-computer
L'unità di interfaccia utente (display e tastiera) dell'Apollo Guidance Computer DSKY (NASA)

HPC4, il supercomputer e le competenze interne: un mix vincente

È solo di qualche giorno fa la presentazione ufficiale, per Eni, del sistema di supercalcolo HPC4, in funzione presso il Green Data Center, con i suoi 18.6 PetaFlops di picco e con le sue GPU (schede grafiche) a far calcoli a fianco delle tradizionali CPU.
Per Eni questo nuovo, potentissimo, sistema di calcolo, chiamato nel gergo cluster, vuol dire anche tante competenze. Anzitutto una macchina così grossa e complessa non si acquista chiavi in mano; ad esempio, bisogna saper sfruttare gli stessi componenti utilizzati nei computer di tutti i giorni per poter beneficiare della costante riduzione dei consumi che allunga l’autonomia dei nostri laptop. Per questo è necessaria la conoscenza di ciò che è disponibile sul mercato. Poi, individuati i componenti, servono le competenze necessarie per progettare l’architettura del cluster; e abbiamo anche quelle.
L’ulteriore elemento distintivo è stata ed è la capacità di Eni di sviluppare i software che, come hanno permesso di andare sulla Luna, ci aiutano oggi a fare scoperte eccezionali, ultima (solo in ordine di tempo) quella di Zohr.
Il cane a sei zampe, infatti, ha scelto di dotarsi di software proprietari (fatti in casa) e, già alla fine degli anni novanta dell’ormai secolo scorso, aveva cominciato ad assumere i primi ricercatori, fisici, matematici, ingegneri e informatici, per sviluppare autonomamente i propri programmi. A supportarli, ricercatori e sviluppatori di università, centri di supercalcolo e istituti di ricerca tutti italiani. Conoscenza dei domini applicativi e capacità di trasferirla in programmi eseguibili dai calcolatori, il binomio necessario per sviluppare gli strumenti per elaborare i dati di campo, e fornire ai tecnici Eni i risultati da cui partire per fare nuove scoperte e per operare al meglio sui campi già scoperti.

Strumenti per guardare lontano

Righe e righe di codice, ormai le contiamo con i milioni, che permettono di arrivare a immagini con un dettaglio di pochi metri per vedere quello che in realtà è nascosto nel cuore delle rocce o nelle profondità marine.
Ma non si tratta solo di questo. Quando si parla di simulazione dei sistemi petroliferi, infatti, si viaggia nel tempo, all’indietro di milioni di anni, per ripercorrere l’evoluzione dei bacini sedimentari e capire se, nel corso delle ere geologiche più lontane, si sono verificate le condizioni per la generazione e l’accumulo di idrocarburi.
Poi, ritornati al presente di una nuova scoperta, si riparte immediatamente, questa volta verso il futuro. La nuova sfida è predire ciò che accadrà, ovvero saper modellizzare il giacimento e i fluidi che contiene per poter dire in anticipo come si comporterà nel momento in cui i nuovi pozzi lo metteranno in produzione, per assicurarsi di procedere sempre in modo sicuro ed efficiente.
Visualizzazione di quello che non possiamo toccare, modellizzazione di sistemi complessi, predizione di risposte future, tutte capacità che hanno una radice comune, il lavoro pionieristico di Margaret Hamilton e il suo navigatore verso la Luna, ovvero il progenitore di quei software che oggi, per le donne e gli uomini di Eni, superano il più moderno video-gioco e possono rendere, se possibile, questo lavoro più affascinante… e divertente!
Per fare questo servono i muscoli di HPC4, un supercalcolatore di 1600 nodi, e tante competenze, nuove idee, programmi e linguaggi di programmazione, lavoro di squadra ed ingegnerizzazione. Un mondo di sicuro stimolante e, forse, inaspettato in un’azienda Oil&Gas, ma che dimostra che per quanto, in apparenza, i due mondi sembrino essere agli antipodi (aziende petrolifere e informatica), le vere innovazioni sono sempre lì, dove non te le aspetti.

Allunaggio dell'Apollo 11, 20 luglio 1969

LEGGI ANCHE: Energia, clima e supercomputer di Michelle Leslie

informazioni sull'autore
Eniday Staff