Presente e futuro del quantum computing sono al centro dell’attività di ricerca di IBM

Another ICT Guy

Presente e futuro del quantum computing sono al centro dell’attività di ricerca di IBM

Edge9 ha partecipato a un evento fuori dal comune: abbiamo passato due giorni nel centro di ricerca di Zurigo di IBM. Un luogo particolare, dove scienziati e ingegneri di IBM lavorano a progetti di ricerca di base e applicata per sviluppare nuove tecnologie. Un approccio particolare quello di IBM, per certi versi vicino a quello degli atenei universitari, dove si coniuga la necessità di lavorare su tecnologie che un giorno potranno trasformarsi in un prodotto o in un servizio, con la profonda consapevolezza che la ricerca non sempre può trasformarsi in un prodotto e che è comunque essenziale investire in ricerca di base per ottenere risultati a lungo termine.

IBM research zurich

Durante una due giorni molto intensa sono stati affrontati i temi più caldi dell’evoluzione tecnologica: quantum computing, cloud ibrido e intelligenza artificiale. Il centro di ricerca di IBM di Zurigo è diretto da un italiano, Alessandro Curioni, che abbiamo avuto la fortuna di intervistare e che ci ha dato la sua visione sull’evoluzione del quantum computing. Ma prima di scoprire cosa ci ha detto Alessandro Curioni, facciamo un passo indietro…

50 anni di microprocessori 

Poche settimane fa si è festeggiato il cinquantesimo anniversario della creazione del primo microprocessore. Fu un passaggio epocale, che ha determinato lo sviluppo dei computer come li conosciamo oggi, nonostante la potenza elaborativa di quel primo microprocessore non fosse neanche lontanamente comparabile a quelli che si trovano oggi anche in PC accessibili a chiunque. L’elemento rivoluzionario di quel microprocessore fu, paradossalmente, di non saper fare nulla di specifico… È stato il primo processore “general purpose” programmabile via software, che si contrapponeva ai circuiti stampati pensati per svolgere specifiche funzioni. In questi cinquant’anni quel principio di base è stato portato alle estreme conseguenze, andando a sviluppare innumerevoli aspetti del design originario del microprocessore. L’evoluzione ha portato, da un lato, alla miniaturizzazione estrema dei transistor presenti all’interno del microprocessore e, parallelamente, ad architetture sempre più complesse che determinano come quei transistor sono “posizionati” all’interno del microprocessore e, cosa ancora più importante, come sono interconnessi.

intel 4004 50 anni

Il numero di transistor è sicuramente il concetto più semplice da comprendere per avere una percezione della potenza di calcolo del microprocessore e se accettiamo il fatto che, al crescere del numero di transistor, l’evoluzione delle microarchitetture interne al processore ha contribuito in modo sostanziale alle prestazioni complessive, allora possiamo interpretare senza troppe difficoltà una “legge” fondamentale che ha caratterizzato l’evoluzione dei microprocessori in questi cinquant’anni. Si chiama legge di Moore, dal nome dell’ingegnere e fondatore di Intel che l’ha formulata, e ipotizzava, già alla fine degli anni ’60, che il numero di transistor in un microprocessore sarebbe raddoppiato ogni due anni. Questa intuizione si è rivelata corretta e ha portato da poco più di 2.000 transistor del primo microprocessore del 1971 ad oltre un miliardo dei modelli attuali. 

Processori sempre più veloci 

La potenza di calcolo dei microprocessori in questi cinquant’anni, sempre semplificando e dando per scontato l’apporto dell’evoluzione delle microarchitetture, è cresciuta proporzionalmente al numero dei transistor. Tenendo presenti questi presupposti, possiamo quindi affermare che un microprocessore con il doppio di transistor rispetto a un altro, avrà una potenza elaborativa doppia. Sui bit, che possiamo interpretare come l’unità logica basilare, si è costruito il dominio digitale in cui operano i computer. Oggi siamo in grado di digitalizzare, con diversi gradi di efficienza, i fenomeni analogici, trasformando in una lunga serie di bit (zero e uno), quello che osserviamo in natura e poi far eseguire ai microprocessori delle operazioni su quei numeri. E siamo in grado di farlo con una velocità mostruosamente superiore a quella raggiungibile 10 o 20 anni fa, proprio perché è aumentato il numero di transistor all’interno dei microprocessori. Abbiamo semplificato molto, perché ci sono molte altre variabili che entrano in gioco, come la frequenza di funzionamento dei microprocessori, che misura, a parità di transistor, la quantità di operazioni che un processore può effettuare in un’unità di tempo. Anche la frequenza è aumentata sensibilmente negli anni, ma a un certo punto ha trovato un limite fisico, tant’è che nell’evoluzione dei processori si è passati dall’aumento della frequenza all’affiancare più core, di fatto più processori, cosa che ha permesso di eseguire in parallelo più operazioni. 

Quello che non è cambiato in questi cinquant’anni è il paradigma di funzionamento dei processori, basato su bit e transistor, e su un aspetto importante dei bit, ossia che in un determinato istante il bit può assumere valori 0 o 1, che corrispondono allo stato del transistor: accesso o spento.

Quantum computing: siamo solo all’inizio

Oggi siamo in un momento simile a quello vissuto agli albori dei computer in un dominio diverso, quello del quantum computing, tema di cui abbiamo parlato diverse volte su Edge9 e che suscita un forte interesse in campi anche molto diversi fra loro, sia per le sue potenzialità, che per degli aspetti “esotici” legati al suo funzionamento. 

La prima domanda che abbiamo fatto ad Alessandro Curioni è stata proprio quella di darci una sua definizione di quantum computing.

IBM Alessandro Curioni

È una bella sfida, – inizia Curioni – a cui hanno cercato di dare una risposta molte persone prima di me, ma come diceva Richard Feynman, un vero mago della fisica, se qualcuno viene a dirti cos’è la meccanica quantistica probabilmente non sa niente. Cercando di semplificare, quando parliamo di computing oggi, parliamo di computing digitale. Vuol dire che utilizziamo la matematica alla base della teoria dell’informazione classica e in questo contesto tutto, una parola, un numero, una cosa, può essere codificato come una serie di zero e uno, i bit. Un computer prende questi zero e uno e li elabora, sommando, sottraendo, mettendo in ordine, utilizzando tutti gli strumenti della matematica. Passando dal mondo digitale classico a quello quantistico entriamo in un mondo che non è digitale perché l’unità dove viene immagazzinata l’informazione è qualcosa che può avere tutte le possibilità fra zero e uno.

Questa unità di informazione, nel reame quantistico, è chiamata quantum bit o qubit e ha delle proprietà molto diverse dal classico bit.

La struttura di questi qubit – prosegue Curioni – non so se è zero o uno, secondo il famoso paradosso del gatto di Schrödinger – fino a quando non lo misuro. Il qubit può quindi assumere un valore qualsiasi fra zero e uno e interagisce con altri qubit secondo delle proprietà non classiche come l’entanglement. Passando dal reame digitale a quello quantistico mi sposto in uno spazio in cui valgono le strutture e le leggi della meccanica quantistica, dove ogni elemento può assumere tutti i valori tra zero e uno e quindi (in uno stesso qubit, ndr) posso immagazzinare tutti quei valori. La conseguenza è che la quantità di dati che posso immagazzinare nel mondo quantistico scala in modo esponenziale, l’ordine di grandezza è 2^N, dove N è il numero di qubit. Invece nel reame del computing digitale la quantità di informazione (al crescere del numero di bit, ndr) scala in modo lineare.

IBM qubit

L’altro elemento differenziante è l’entanglement, la proprietà dei qubit secondo la quale esiste una correlazione fra i valori assunti da diversi qubit: un’operazione eseguita su un qubit determina il valore assunto da un altro qubit. Semplificando notevolmente, se operando su un qubit determino il valore di altri qubit, sto introducendo un parallelismo massiccio. Per ottenere lo stesso risultato con un computer digitale classico, dopo aver modificato il valore di un bit, posso poi comunicare questo cambio di stato a un altro bit e cambiarne di conseguenza il valore, ma ho dovuto effettuare delle operazioni. L’entanglement quantistico invece genera direttamente il cambio di stato di un qubit al variare dello stato di un altro qubit e quindi è come se ci fosse un’elaborazione automatica, nel tempo e nello spazio, per cui anche la capacità di elaborazione dei dati diventa esponenziale.

Diminuire la complessità 

Cercando di fare un esempio concreto, con un computer digitale per immagazzinare un film dobbiamo digitalizzare i singoli fotogrammi e metterli in sequenza, mentre con un computer quantistico possiamo avere tutto il film memorizzato in un unico istante. 

È un ottimo esempio, che riconduce all’algoritmo di Grover e che permette di dimostrare come nel reame quantistico determinati fenomeni possono essere descritti con una complessità molto più bassa. Immaginiamo un semplice gioco di carte, il cui obiettivo è trovare la regina in un mazzo di 20 carte. Con un computer classico devo effettuare N “mosse” per controllare ogni carta, prima di trovare la regina. Nel caso di un computer quantistico, il sistema ha già all’istante 1 i valori di tutte le carte e quindi il “search” viene effettuato scegliendo, fra i valori già conosciuti, alla prima mossa la regina.

IBM Quantum

Nel mondo dei computer tradizionali sono ormai consolidati i materiali, le tecnologie e i processi utilizzati per la produzione dei microprocessori. Nel reame di computer quantistici invece vengono seguiti approcci anche molto diversi. Quali sono le tecnologie su cui sta lavorando IBM? 

È vero che oggi nel computer digitale classico la tecnologia che viene utilizzata è praticamente una, ma non è sempre stato così. Nelle prime fasi di sviluppo, per diversi anni, erano state sperimentate molte alternative prima di convergere sul silicio. La stessa cosa sta avvenendo oggi per il quantum computing. La tecnologia utilizzata nei computer digitali permette di immagazzinare lo stato 0 o 1 del bit, ma anche di switchare da uno stato all’altro, oltre poi a muovere e comunicare questi stati. In ambito quantistico devo svolgere le stesse operazioni in un qubit che permette di ospitare uno stato quantistico e diversi attori stanno sperimentando con tecnologie come le trappole di ioni o sfruttando dei difetti nei semiconduttori. IBM ha optato per quella che è considerata come la migliore tecnologia in termini di stabilità, scalabilità e facilità di utilizzo: i superconducting qubit. Questa tecnologia permette di realizzare in modo artificiale un quantum bit che consente di ottenere tutti i valori fra 0 e 1 attraverso il flusso del campo magnetico generato da una corrente nel superconduttore. In pratica è come avere un “super atomo” in cui il flusso del campo magnetico può cambiare direzione e mi permette di immagazzinare l’informazione quantistica e si può stimolare con un’iterazione elettromagnetica per cambiare lo stato ed effettuare delle operazioni. La tecnologia dei quantum bit a superconduttori utilizzata da IBM è oggi la più avanzata e la più stabile, e ci ha permesso di creare Eagle.

Risolvere i principali problemi del mondo

Quali sono gli ambiti applicativi e le discipline in cui le dinamiche del computer quantistico si applicano in maniera più efficace, facendo anche un parallelismo su come si sono evolute CPU e GPU negli ultimi anni? 

Il paragone è molto pertinente, cinquant’anni fa c’è stata la prima esplosione dell’IT, con la creazione di macchine CPU-centric per effettuare calcoli, sviluppare modelli analitici, simulazioni, database. Negli ultimi vent’anni c’è stato invece l’avvento dell’intelligenza artificiale che si è portato dietro nuovi algoritmi e nuovi problemi da risolvere, come l’analisi di dati non strutturati: immagini, classificazioni, inferenza. In questo contesto si è affermata una tecnologia, quella delle GPU, che non è la migliore in assoluto, ma si è adattata in modo efficace a questi nuovi workload, facendo la differenza sia in termini di performance, che di efficienza energetica. Aver creato delle machine GPU-centric non ha fatto sparire le CPU, che restano indispensabili, ma ha permesso di essere molto più efficienti per determinati workload, come analisi dei big data e AI. La prossima fase è quella del computing applicato alla soluzione di problemi “reali”. Per reali intendo temi come l’energia, il clima, la salute, che per essere affrontati, e potenzialmente risolti, comportano l’utilizzo di metodi di simulazione e analisi che hanno un livello di complessità computazionale che scala in modo esponenziale. Se devo simulare una molecola composta da 4/5 atomi posso utilizzare un computer tradizionale, ma se passo a simulare sistemi più complessi, che sono quelli significativi in vari ambiti, come quello farmaceutico, allora per utilizzare computer tradizionali dovrei fare degli investimenti non sostenibili oppure non posso proprio usarli. La complessità ci uccide quando cerchiamo di simulare la natura in scala. Non solo: i fenomeni della fisica e della chimica sono regolati dalle leggi della meccanica quantistica e quindi i computer quantistici, in questi contesti, riducono fortemente la complessità, rendendo simulabile un sistema che prima non lo era. In prospettiva, quindi, computer Quantum-centrici non andranno a sostituire CPU e GPU, ma diventeranno degli acceleratori per la soluzione di specifici problemi.

IBM Eagle

Un tema che si apre, però, sono le competenze. Se guardiamo a un computer tradizionale è ormai chiaro quali siano quelle necessarie e la semplificazione che c’è stata negli ultimi anni rende utilizzabili i computer praticamente da chiunque. In ambito quantistico, invece, quali sono le competenze necessarie, sia per chi, come voi, li sta sviluppando ma, soprattutto, per chi poi dovrà utilizzarli?

Un aspetto fondamentale è far maturare i computer quantistici affinché siano integrati con i computer classici e con il cloud. Questo tipo di integrazione, su cui IBM sta lavorando, richiede delle competenze molto approfondite e specifiche. Invece per chi deve utilizzare un computer quantistico, stiamo lavorando alla creazione di librerie che rendano trasparente a chi le utilizza cosa avviene a basso livello. Mettiamo a disposizione di chi sviluppa delle API o dei microservizi, che possono essere richiamati utilizzando linguaggi conosciuti, senza necessariamente conoscere cosa avviene a livello quantistico. Lo sviluppatore utilizza una libreria che simula il funzionamento di una molecola, deve conoscere i dettagli di programmazione legati alla libreria, qual è l’output che può ottenere e come integrare questi risultati nella sua simulazione, come fa con altre librerie.

Il futuro del quantum computing secondo IBM 

Poche settimane fa IBM ha annunciato Eagle, il primo computer quantistico a superare la soglia dei 100 qubit, arrivando a 127, livello che solo un anno fa sembrava impossibile da raggiungere. Restano però dei vincoli, come la temperatura di esercizio molto bassa, legati allo sviluppo dei computer quantistici. Su cosa sta lavorando IBM per i prossimi step evolutivi?

IBM ha definito una roadmap molto chiara: dopo i 127 qubit di Eagle, nel 2022 arriveremo a 400 e nel 2023 supereremo i 1.000 qubit. Gli step sono definiti e sappiamo cosa dobbiamo fare per raggiungerli, lavorando per far scalare il numero di qubit e, contestualmente, renderli più stabili e accurati, andando a limitare sempre di più l’errore (intrinseco nei computer quantistici, ndr). Questa evoluzione deve andare di pari passo, come dicevo prima, con la capacità di far interagire in modo efficace computer quantistici e computer tradizionali, perché se per traslare i dati ci metto il tempo in cui esisterà l’universo non mi serve a nulla. Un altro aspetto su cui stiamo lavorando è la comunicazione quantistica fra due o più macchine, che segue leggi diverse, come dicevamo quando abbiamo accennato all’entanglement. Riuscire in questo potrebbe aprire in futuro anche a un quantum internet…

IBM Quantum Roadmap

La roadmap è definita e stiamo procedendo su diversi livelli per arrivare al più presto al vantaggio quantistico, che è strettamente legato alla sostenibilità del computing. Io credo tantissimo che l’IT possa diventare la soluzione dei nostri problemi, ma va fatto in modo sostenibile. Se per risolvere un problema ho bisogno di 85 centrali nucleari, allora sto creando un altro problema. La sostenibilità è molto, molto importante ed al centro del nostro lavoro di ricerca.

L’anno di creazione del primo computer quantistico è stato fissato al 2011, come il 1971 è individuato per la creazione del primo microprocessore. Non sappiamo se il 2021 verrà ricordato come una tappa essenziale nella sua evoluzione del computer quantistico. Possiamo però dire, senza timore di essere smentiti, che siamo ancora agli albori di una tecnologia potenzialmente rivoluzionaria. Se guardiamo a come si sono evoluti i microprocessori in questi 50 anni e volgiamo lo sguardo al futuro del computer quantistico, gli scenari che si intravedono sono decisamente esaltanti. Il livello di complessità che il computer quantistico permette di affrontare è strettamente legato a una serie di temi che l’umanità è chiamata ad affrontare nei prossimi decenni. Dalla sostenibilità ambientale, alla gestione di crisi come la pandemia da Covid, l’apporto che può dare la tecnologia è fondamentale e siamo convinti che lo sviluppo dei computer quantistici potrà dare un supporto impagabile. 

Il vantaggio quantistico non è ancora stato raggiunto 

La strada però è ancora lunga perché, come diceva chiaramente Curioni, non è stato ancora raggiunto il vantaggio quantistico, ossia la capacità di un computer quantistico di svolgere un determinato compito in modo significativamente più rapido di un computer tradizionale. È stato dimostrato che la tecnologia quantistica ha il potenziale, negli ambiti descritti in precedenza, di essere immensamente più efficace ed efficiente, ma questo potenziale non è concretizzabile con lo stato di avanzamento attuale della tecnologia. I 127 qubit di Eagle vanno considerati come i 2.000 transistor del microprocessore di 50 anni fa e guardando anche solo alla roadmap di IBM possiamo aspettarci che il numero di qubit aumenti sensibilmente nei prossimi anni.

Ci sono altri due aspetti da considerare. Il primo è che i computer quantistici non andranno a soppiantare i computer tradizionali, ma li affiancheranno per compiti specifici. Il secondo è che oggi, a differenza di 50 anni fa, il mondo è interconnesso e, grazie al cloud, già in questa prima fase di sviluppo dei computer quantistici, gli sviluppatori in tutto il mondo posso avere accesso a risorse quantistiche con cui sperimentare. Questo livello di interazione, esponenzialmente superiore a quello della prima era dei microprocessori, permetterà di accelerare lo sviluppo delle applicazioni basate sui computer quantistici e delle competenze necessarie, rendendo immediatamente disponibili le innovazioni che ci aspettano e tagliando drasticamente i tempi per il loro sfruttamento.

È stato un viaggio decisamente affascinante quello che ci ha portato a visitare il centro ricerca di Zurigo di IBM, dove non si stanno sviluppando solo tecnologie legate al computer quantistico. Nel campus di IBM lavorano ricercatori di tutto il mondo, molti dei quali sono italiani, su tecnologie che spaziano in diversi ambiti applicativi.

Un progetto molto interessante è RoboRXN, una piattaforma basata sull’intelligenza artificiale che permette di sperimentare su nuove molecole, di cui abbiamo già raccontato le ultime novità. Altri ambiti su cui sta lavorando IBM spaziano dalle reti ottiche, alla cyber security, all’intelligenza artificiale, fino alla gestione dei dati aziendali o all’archiviazione su nastro. Ognuna di queste tecnologie merita un approfondimento specifico, che Edge9 vi proporrà nei prossimi mesi. Buon viaggio.

Fonte: http://feeds.hwupgrade.it/

 

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.