Per coloro che non sono interessati all’astronomia, il vuoto di Boötes è una zona del cielo notturno che sembra priva di stelle, ma questo breve commento riguarda un punto cieco nell’istruzione: l’istruzione degli ingegneri. In quasi due decenni di carriera nel settore, ho incontrato esattamente una sola persona che conosceva questo tesoro matematico/numerico, ma, per dire la verità, solo negli ultimi un mezzo secolo ho deciso di chiedere a tutti e a chiunque, diciamo, che fosse interessato a conoscere questo argomento. Quindi, di cosa si tratta questo vuoto di cui sto parlando? È Decodifica del valore singolare. È davvero incredibile poter conseguire titoli come il M.Sc. e il Ph.D. e rimanere al tempo stesso ignoranti riguardo al SVD, che tra l’altro mi è stato applicato anche a me.
Fortunatamente per me, avevo un problema da risolvere. In parole più brevi: “Compressione di questi dati fino a una precisione tale da consentire la loro memorizzazione in 2 byte, poiché è tutto ciò che è possibile estrarre da questi milioni di specchi, al ritmo che la tecnologia di oggi potrà raggiungere; poi si potrà trovare un metodo di calibrazione per questi specchi”. Non ci è voluto molto per rendersi conto che la mia formazione non mi preparava a risolvere questo problema. Non sapevo dove cercare, non avevo parole chiave abbastanza specifiche da offrire alcun indizio. L’anno era il 2000 e Internet era nato ma non abbastanza sviluppato.
In situazioni come questa, Trovare Forrester ha un consiglio davvero valido: inizia a digitare. Se hai visto il film, sai di cosa parlo. Dopo un po“ di trial and error in Matlab, sapevo cosa volevo. Volevo due funzioni ortogonali e non volevo inventarle da solo. Devono provenire dai dati stessi. Una volta capito questo, era praticamente tutto fatto. Sapevo che una matrice simmetrica mi avrebbe dato delle ”funzioni” (o vettori, in questo caso) ortogonali e una matrice di covarianza calcolata dai miei dati mi avrebbe dato una matrice simmetrica.
In meno di un minuto ho potuto provarlo. Il problema era risolto, ma subito mi sono reso conto che qualcosa di così buono doveva essere un argomento trattato nei manuali di teoria matematica. Solo che non avevo ancora letto il manuale. Un altro esempio di reinventare la ruota. Fortunatamente, un collega che pensavo fosse un lettore assiduo mi ha risposto una settimana dopo e mi ha mostrato il libro. Si trattava dell’analisi delle componenti principali, ma matematicamente è praticamente la stessa cosa.
La cosa strana è che non si riesce a trovare un singolo ingegnere che non sia a conoscenza dell'analisi di Fourier, della decomposizione spettrale e della separazione delle variabili. Eppure, questo codice in Matlab (o Octave) vi offre tutto questo in pochi secondi e potreste dedicare metà della vostra carriera professionale alla ricerca di un singolo fisico ottico che ne sia a conoscenza.
La buona notizia è che c’è una crescente passione per la decomposizione del valore singolare. Ecco un esempio bellissima citazione:
“Ovunque tu vada, porta sempre con te la SVD”
È un buon consiglio. Qui c’è anche un ottima introduzione. Per completare questo percorso, partecipa al riempimento di questo vuoto. Porta con te la SVD ovunque tu vada.