INFORMATICA - QUANTUM COMPUTING - MEMORIE

Aprile 2025

1. Premessa

In questa pagina svolgeremo un'analisi comparativa del concetto di memoria partendo davvero da molto tempo fa. Lo scopo è vedere come dalla memoria umana (del cervello umano) si sia passati alle memorie meccaniche, poi elettriche, poi elettroniche, digitali, neuroniche (per i neuroni artificiali) e quindi quantistiche, sia nell'ambito del quantum annealing che delle quantum gates. I passaggi evidenziati sono interessanti per capire quali punti comuni rimangono tra questi campi per il concetto di memoria.

Prima di partire, però, una breve riflessione sul fatto che il concetto di memoria è strettamente legato a quello di tempo, mentre questa variabile (il tempo) sembra non sussistere in maniera evidente nei computer quantistici per i quali, quindi, parlare di memoria come facciamo normalmente avrebbe poco senso,... ma andiamo per gradi.

2. La memoria

L'essere umano si è confrontato con la memoria fin da subito a seguito della sua necessità di sopravvivere. Il poter evitare situazioni pericolose o il poter evolvere e quindi avvantaggiarsi sulla natura era fortemente legato al fatto di poter "ricordare" concetti e fatti sempre più complessi. "Ricordare" è legato al fatto di poter reagire a situazioni similari nello stesso modo nel progredire del tempo. Con l'evolversi del pensiero e della concettualizzazione il "ricordare" si è legato a fatti sempre più astratti e oggi la maggioranza delle persone ritiene che "ricordare" sia la capacità di mantenere nel tempo concetti o pensieri. Nel caso del singolo essere umano la capacità di memorizzazione è legata alla resilienza del "supporto" che la permette, ossia del cervello dell'individuo. Fatto questo determinante per i passi successivi.

L'essere umano è un sistema sicuramente poco resiliente rispetto alle forze della natura, soprattutto considerato come individuo. Quale comunità l'essere umano incrementa la sua resilienza e quindi, ha sviluppato un complesso sistema di comunicazione interpersonale per permettere all'intera comunità di sopravvivere nel tempo molto meglio di come potrebbe fare il singolo. Memoria e comunicazione quindi sono aspetti diversi di uno stesso sistema. In ogni caso, sebbene la comunità rappresenti un valido contraltare alla natura e alla morte, la soggettività della comunicazione non rende questo metodo di conservazione delle informazioni particolarmente affidabile. Non è a caso che la "trasmissione" orale delle conoscenze è da tempo stata abbandonata.

Nel contempo allo sviluppo della comunicazione interpersonale si accompagnava lo sviluppo del simbolismo, partendo da disegni con una semantica fino alla indicazione dei suoni e/o dei concetti. Si sviluppava quindi la memoria meccanica, basata sulla modifica di materiali come roccia, metalli, carta, ecc.. La resilienza meccanica dei materiali allo scorrere del tempo garantiva un'ottima preservazione delle informazioni e quindi memorizzazione indipendente da singoli e comunità. Si deve ricordare un curioso aspetto a questo punto: nessun supporto di memorizzazione esistente, a prescindere dalla tecnologia su cui è basato, ha mai superato la carta allo scorrere del tempo. Si, la vecchia cara e umile carta ha conservato degli scritti per migliaia di anni e niente attualmente può vantarsi di un tale record.

Ad ogni modo all'evolversi delle capacità collegate al pensiero simbolico e quindi all'uso continuo dei simboli i sistemi meccanici citati hanno mostrato difetti evidenti come la lentezza nell'essere "programmati" e poi "fruiti". Molto più vicino ad oggi, quindi, si è cercato di impiegare meccanismi complessi per elevare il grado di memorizzazione. Dalle serrature (si, sono una memoria meccanica), ad elementari sistemi di calcolo che si preoccupavano di memorizzare solo numeri, a varie forme di automatismi, sempre di natura meccanica, alimentati da acqua, sabbia, forza di animali, ecc.

Il grande passo è stato fatto quando è "apparsa" l'energia elettrica: l'interruttore meccanico di un circuito elettrico è la forma embrionale di quella che oggi chiamiamo memoria ad 1 bit. La posizione meccanica dell'interruttore porta lo "stato" del circuito a consentire il passaggio di corrente o meno e la posizione permane per cui il circuito "ricorda" il suo stato. Da qui ai relè e al primo flip-flop elettromeccanico il passaggio è breve: il relè è un interruttore guidato dalla corrente elettrica e non più dalla mano di un essere umano:

al passaggio della corrente nella bobina, l'elettromagnete attrae l'interruttore che quindi cambierà posizione. Il concetto di relè che è stato appena presentato sembra elementare ma invece nasconde una profonda implicazione matematica: il relè può essere comandato con la stessa energia che esso tipicamente controlla (quella elettrica) per cui consente di implementare (semplici) funzioni ricorsive, in soldoni il relè può comandare se stesso o altri relè e creare automatismi basati su funzioni ricorsive, in pratica tutto quello che può fare un computer attuale!

Il relè ha grandi potenzialità e verrà impiegato in "tonnellate" di applicazioni per comandare apparati e memorizzare stati anche complessi. Nello schema mostrato l'alimentazione elettrica E, se l'interruttore T1 (normalmente aperto) si chiude, attiva il relè che chiude a sua volta il circuito di destra. In pratica T1 rimane quindi escluso e il relè rimane attivato in maniera stabile (stato 1). Se interviene l'interruttore T2 (normalmente chiuso) il relè si stacca e il sistema rimane disattivato stabilmente fino a quando non si usa nuovamente T1 (stato 0). In definitiva T1 è il tasto di set e T2 il tasto di reset di una memoria a 1 bit.

Il problema del relè è però la sua natura elettromeccanica, si consuma presto, si brucia facilmente ed è lento perchè ancora legato al movimento fisico di oggetti macroscopici. Il transistor usato in saturazione soppianterà totalmente il relè nelle applicazioni a bassa energia e quindi nelle memorie e negli automatismi, è il tempo dell'elettronica analogica e delle memorie prima analogiche che lasceranno presto il posto a quelle digitali.

La lotta tra analogico e digitale nell'elettronica ha visto momenti splendidi per entrambi i lati (che sono contento di aver intensamente vissuto) ma era chiaro che le porte logiche avrebbero prima o poi soppiantato tutto in relazione alla nascita dell'elaborazione digitale come la intendiamo oggi nei computer classici. Di seguito due porte NOT (la porta logica più elementare che trasforma lo 0 in input in un 1 in output e viceversa) collegate a formare un flip flop digitale, una cella di memoria ad 1 bit:

si tratta ovviamente di uno schema logico e se provate a implementarlo con un circuito digitale reale otterrete un comportamento random del sistema, ad ogni modo l'idea di memoria binaria è evidente . se X0=0 la prima NOT implica X1=1 e la seconda NOT determina X2=0 quindi lo stato X0 si autoconferma e rimane stabile - lo stesso ragionamento si può fare al contrario con X0=1 e tutto torna (a livello di circuiti elettronici non è così semplice e non torna tutto così). Alla base della memoria c'è quindi un concetto fondamentale, già sperimentato con i relè, ossia un feedback (l'uscita reimpiegabile come ingresso).

Anche l'intelligenza artificiale ha dovuto (e deve) confrontarsi con il concetto di memoria e in particolare verrà qui citato lo schema del percettrone con feedback come prima idea di memorizzazione in una rete neurale artificiale. Per i dettagli potete analizzare la mia pagina sul gioco del Tris fatto mediante percettroni in questo sito. Nello schema che segue il percettrone (neurone elementare) riutilizza la sua uscita per auto-attivarsi rimanendo stabile nel suo stato qualunque esso sia:

va sottolineato che il percettrone non distingue tra azione di memorizzazione e azione di elaborazione, le due cose procedono nello stesso modo! Vi prego di tenere a mente questo fatto qui sotto quanto tratterò delle memorie quantistiche.

Le memorie digitali hanno subito infinite variazioni e miglioramenti, i transistor da relè elettronici sono diventati condensatori e hanno iniziato a ritenere lo stato elettrico caricandosi e aggiornandosi costantemente. Sono nate aggregazioni di transistor che realizzano banchi di memoria direttamente a livello microscopico, ecc.. Tutto è evoluto all'insegna di economicità, miniaturizzazione, velocità di inserimento e modifica dei dati e resilienza alle condizioni di lavoro e nel tempo. Il problema è che stiamo anche in questo caso raggiungendo il limite di impiego e che necessitiamo di memorie sempre più grandi (capacità) e sempre più veloci, nonchè sempre meno energivore e sempre più resilienti.

I sistemi quantistici basati su quantum annealing e sulle porte (logiche) quantistiche propongono un nuovo modello di memoria, infinitamente più potente di quella digitale, estremamente più versatile e (promettono un giorno) a richiesta di energia prossima allo zero.

Per il quantum annealing, il flip flop logico con le due porte NOT può essere facilmente implementato come una matrice Q di una funzione hamiltoniana all'interno di un computer basato sul quantum annealing come il DWAVE (dwavequantum.com), lo facciamo di seguito (per i riferimenti su come si programma DWAVE potete vedere il sito della ditta, ricco di indicazioni o le mie pagine 1 e pagine 2):

Andando a trovare il minimo della funzione Hamiltoniana H() si può vedere che il sistema è stabile su uno stato programmato, esattamente come accadeva per il flip flop fisico (si tratta di [0,1,0] o [1,0,1] ovviamente). Non è difficile implementare nella matrice Q nuovi bit o settare/resettare quelli esistenti, ciò anche su scale di milioni e milioni di celle di memoria. In definitiva la memoria è intrisa nel funzionamento stesso del quantum annealing che poi, è lo stesso meccanismo che gli permette anche di elaborare (memoria ed elaborazione non sono divisi così come accade per i neuroni artificiali).

Nel caso dei computer quantistici gate-based invito a vedere le mie pagine introduttive pagina 1 e pagina 2 su questo sito. Si potrà notare che il concetto di memoria è riportato elegantemente in maniera grafica in quello di linea del quantum bit, ogni linea può ritenere un generico stato combinato (a|0>+b|1>) e non solo quantum zero e quantum one (|0> o |1>), questo corrisponde a ritenere informazioni enormemente più grandi, soprattutto quando lo linee dei quantum bit sono molte. Inoltre invito a riflettere sul fatto che non c'è il concetto del tempo, dal punto di vista teorico il calcolatore quantistico gate-based non ha necessità di introdurre il tempo, tale necessità, invece, è presente nei computer quantistici reali esistenti. Le linee progrediscono da sinistra verso destra e tale progressione è l'unico riferimento temporale che si può considerare (tempo di "propagazione" dell'elaborazione), in pratica le memorie sono teoricamente istantanee e mostrano tempi di attesa solo quando si va a vedere il risultato del circuito sul suo lato destro (è come se il tempo fosse descritto spazialmente... magia del quantum...).

3. Conclusioni

Spero che queste mie riflessioni, da tecnico e da appassionato, vi risultino utili per ulteriori considerazioni che vorrete fare. La trattazione delle memorie in questa pagina non è da considerare nemmeno ipoteticamente come esaustiva, volevo solo sottolineare verso dove si sta andando. I moderni computer quantistici viaggiano verso energia zero e tempi di propagazione irrilevanti se non nulli sulle corte distanze, questo deve far molto pensare. Un'altra cosa che va ponderata è il fatto che le memorie quantistiche mostrano molti comportamenti similari a quelli delle memorie basate sui neuroni artificiali (come impostazione), ciò non può essere casuale... elaborazione e memorizzazione si stanno confondendo tra loro, proprio come avviene nel cervello umano...