{"id":18427,"date":"2015-10-05T07:09:12","date_gmt":"2015-10-05T05:09:12","guid":{"rendered":"http:\/\/www.jacoporanieri.com\/blog\/?p=18427"},"modified":"2015-10-05T07:16:07","modified_gmt":"2015-10-05T05:16:07","slug":"il-suono-di-un-computer-che-riordina-le-cose","status":"publish","type":"post","link":"https:\/\/www.jacoporanieri.com\/blog\/?p=18427","title":{"rendered":"Il suono di un computer che riordina le cose"},"content":{"rendered":"<p><a href=\"https:\/\/youtu.be\/kPRA0W1kECg\" target=\"_blank\" rel=\"attachment wp-att-18428\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-18430\" src=\"http:\/\/www.jacoporanieri.com\/blog\/..\/public\/newmedia\/2015\/10\/Sound-Sorting-500x313.jpg\" alt=\"Sound Sorting\" width=\"500\" height=\"313\" srcset=\"https:\/\/www.jacoporanieri.com\/blog\/..\/public\/newmedia\/2015\/10\/Sound-Sorting-500x313.jpg 500w, https:\/\/www.jacoporanieri.com\/blog\/..\/public\/newmedia\/2015\/10\/Sound-Sorting.jpg 1728w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">Musica dai numeri, per una volta, invece che il contrario. E tutto quanto perch\u00e9\u00a0Timo Bingmann, studente PhD dell&#8217;Istituto di Informatica e Algoritmica di Karlsruhe, in terra di Germania, ha\u00a0messo assieme una delle pi\u00f9 inutili, ed al contempo suggestive, applicazioni dell&#8217;ambito open source: una demo musicata, fondata sull&#8217;incontro ben riuscito\u00a0tra immagini elaborate al computer e suoni sintetici disposti sul raggio dei\u00a0120 Hz &#8211; 1,212 Hz, che non avrebbero di certo sfigurato in Space Invaders, Pac-Man, o la prima genesi di Mario Bros; ma le fondamenta del progetto, e c&#8217;era da aspettarselo visto il livello dell&#8217;autore, non si limitano al solo\u00a0\u00e0mbito del puro svago. Ma trovano piuttosto l&#8217;origine da un bisogno assoluto e primordiale della matematica, il gesto encomiabile\u00a0che ha il nome di divulgazione. Sfido chiunque, posto di fronte ad un simile sequenza di animazioni, soltanto una minima dimostrazione sequenziale\u00a0di quello che pu\u00f2 fare l&#8217;app\u00a0The Sound of Sorting, a non porsi momentaneamente la questione del che cosa ha appena visto, quale sia l&#8217;origine di un tale susseguirsi di linee ubriache, suoni e spostamenti finalizzati alla risoluzione del problema. Ottimo! Perch\u00e9\u00a0per approfondire, tutto ci\u00f2 che risulta in effetti necessario fare \u00e8 <a href=\"http:\/\/panthema.net\/2013\/sound-of-sorting\/\" target=\"_blank\">visitare il sito dell&#8217;autore<\/a>, dove codice sorgente e software precompilato sono liberamente disponibili a vantaggio dei curiosi. Per instaurare anche noi, grazie a un paio di lievi passaggi con il mouse, un rapporto pi\u00f9 diretto con quello che pu\u00f2 fare un moderno computer, e comprendere davvero quanto siamo fortunati a vivere nell&#8217;epoca dei processori\u00a0da un milione di transistor, interconnessi grazie a fili spessi appena un decimo di micron (quando un capello ne misura 100 di spessore).<br \/>\nTutto inizia, come sempre capit\u00f2, nel caos: un istrogramma di linee bianche, disposte alla rinfusa sopra un fondo scuro. Questa sequenza non ha un compito difficile alla comprensione, perch\u00e9 rappresenterebbe, nella prassi geometrica acclarata, una serie di numeri, progressivamente sempre pi\u00f9 grandi ma disposti alla rinfusa. Un dataset. Che in termini informatici, altro non\u00a0sarebbe\u00a0che una serie di entit\u00e0 con una vaga relazione tra di loro, generalmente incasellati all&#8217;interno di una singola tabella di database. Pensate, ad esempio, ad un foglio Excel contenente l&#8217;anagrafica di un&#8217;intera azienda da 2.000 dipendenti, indicante per ciascuno nome, cognome e\u00a0data di nascita. Ora, per ordinare un simile marasma secondo crismi differenti, come quello alfabetico oppure l&#8217;et\u00e0, tutto quello che dobbiamo fare \u00e8 premere metaforicamente un pulsante, o per meglio dire tirar gi\u00f9 un men\u00f9 a tendina, poco prima di selezionar l&#8217;ipotesi corretta. Ma se soltanto&#8230;Prima di farlo appoggiassimo un orecchio, molte volte pi\u00f9 piccolo, preciso e percettivo del nostro di semplici umani, sulla superficie di silicio della prima l\u00e0mina di un chip, forse ci renderemmo conto del folle movimento che richiede un tale calcolo automatico, del turbine di elettroni posseduti, la micro-energia che trova sfogo con un&#8217;enfasi nei fatti impossibile, fino a un paio di generazioni f\u00e0. Forse, per intraveder l&#8217;immagine di una figura: Monna Lisa Cyberpunk, come fu tradotto l&#8217;Overdrive di William Gibson, terzo romanzo di una serie, pubblicato sul finire degli anni &#8217;80, quando finalmente, il pensiero digitale terminava un processo di fuoriuscita\u00a0dall&#8217;\u00e0mbito specialistico dei matematici teorici, per passare a quello delle\u00a0forme ad incastro\u00a0e degli idraulici fungini, alla ricerca di una strada di mattoni gialli per il prossimo futuro. Era come se la\u00a0donna leonardesca, raffigurata sullo sfondo di un selvaggio bosco di addizioni, d&#8217;un tratto aprisse gli occhi, pronunciando questa frase: &#8220;Io sono lo Zero. E tu, sai contare fino a Uno?&#8221; Bene, perch\u00e9 al resto penso io.<\/p>\n<p style=\"text-align: justify;\"><!--more--><\/p>\n<figure id=\"attachment_18429\" aria-describedby=\"caption-attachment-18429\" style=\"width: 490px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/youtu.be\/ywWBy6J5gz8\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-18429 size-medium\" src=\"http:\/\/www.jacoporanieri.com\/blog\/..\/public\/newmedia\/2015\/10\/Quick-Sorting-500x313.jpg\" alt=\"Quick Sorting\" width=\"500\" height=\"313\" srcset=\"https:\/\/www.jacoporanieri.com\/blog\/..\/public\/newmedia\/2015\/10\/Quick-Sorting-500x313.jpg 500w, https:\/\/www.jacoporanieri.com\/blog\/..\/public\/newmedia\/2015\/10\/Quick-Sorting.jpg 1728w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><figcaption id=\"caption-attachment-18429\" class=\"wp-caption-text\">Non tutto deve essere per forza sterile e inumano. Alla Sapientia University di Tirgu Mures, Romania, spiegano gli algoritmi di ordinamento con dei balli etnici, in cui a ciascun partecipante viene assegnato un numero del database. Di video come questo, <a href=\"https:\/\/www.youtube.com\/user\/AlgoRythmics\/videos\" target=\"_blank\">ce n&#8217;\u00e8 un&#8217;intera serie<\/a>.<\/figcaption><\/figure>\n<p style=\"text-align: justify;\">L&#8217;esperienza di <a href=\"http:\/\/panthema.net\/2013\/sound-of-sorting\/\" target=\"_blank\">provare direttamente ci\u00f2 da cui deriva il video d&#8217;apertura<\/a>\u00a0(disponibile in fondo alla pagina, in versioni Win o Linux) la consiglio caldamente, a chiunque sperimenti\u00a0un qualsivoglia interesse passeggero sull&#8217;argomento ma anche a tutti coloro che abbiano un paio di\u00a0minuti da perdere\u00a0dietro a una sublime verit\u00e0. Ci\u00f2 che si \u00e8 chiamati a fare, in questa\u00a0demo tecnica di un particolare ramo del pensiero, \u00e8 selezionare l&#8217;ampiezza del dataset, quindi scegliere quale\u00a0algoritmo implementare nella propria epica Ricerca. Ce n&#8217;\u00e8 un po&#8217; per tutti i gusti, dal\u00a0grande classico dell&#8217;insertion sort, che consiste nel confrontare ad ogni passaggio tutti i numeri nell&#8217;istogramma, per poi crearne un&#8217;altro a lato gi\u00e0 ordinato, al suo cognato pi\u00f9 metodico, il merge sort, finalizzato all&#8217;applicazione del metodo <em>divide et impera<\/em>, ci\u00f2 a dire, la divisione in una serie di scale progressive\u00a0parallele, poi sovrapposte l&#8217;una all&#8217;altra, ossia inglobate, verso l&#8217;ottenimento dell&#8217;assoluta perfezione. E tutto sempre reso enfatico, grazie all&#8217;impiego di quel fischio modulato, in cui ciascuna comparazione emette un suono, nella creazione di una melodia che forse non sar\u00e0 particolarmente orecchiabile, ma certamente lascia un&#8217;impressione degna di essere narrata. Viene quindi il turno del quick sort, lo straordinario metodo inventato da\u00a0Tony Hoare nel\u00a01959, che consiste nella scelta arbitraria di una serie di numeri di pivot (rotazione assiale) sulla base dei quali\u00a0vengono abbinati gli altri, facendoli letteralmente piroettare avanti e dietro la membrana dello spazio visibile, sarebbe a dire, il velo d&#8217;illusione che in lingua sanscrita fu definito m\u0101y\u0101, la creazione. E c&#8217;\u00e8 davvero da stupirsi, se tanti insigni cervelli dell&#8217;epoca d&#8217;oro di Silicon Valley, tra cui Gates e Jobs, furono sempre affascinati dalle discipline orientali, giungendo addirittura (in casi meno celebri) a dichiararsi fervidi buddhisti? C&#8217;\u00e8 qualcosa, in questa religione popolare nell&#8217;Estremo Oriente, che parla di un estremo razionalismo, applicato ai ritmi e crismi del pensiero transumano&#8230;Ma gi\u00e0 la pagina \u00e8 voltata, mentre si procede verso algoritmi ancor pi\u00f9 efficienti, vertiginosi e spettacolari nella loro impossibile complessit\u00e0.<\/p>\n<figure id=\"attachment_18428\" aria-describedby=\"caption-attachment-18428\" style=\"width: 490px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/youtu.be\/ZZuD6iUe3Pc\" target=\"_blank\" rel=\"attachment wp-att-18428\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-18428 size-medium\" src=\"http:\/\/www.jacoporanieri.com\/blog\/..\/public\/newmedia\/2015\/10\/Multi-Sorting-500x313.jpg\" alt=\"Multi Sorting\" width=\"500\" height=\"313\" srcset=\"https:\/\/www.jacoporanieri.com\/blog\/..\/public\/newmedia\/2015\/10\/Multi-Sorting-500x313.jpg 500w, https:\/\/www.jacoporanieri.com\/blog\/..\/public\/newmedia\/2015\/10\/Multi-Sorting.jpg 1728w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><figcaption id=\"caption-attachment-18428\" class=\"wp-caption-text\">In tempi pi\u00f9 recenti, Bingmann ha prodotto un secondo video, in cui i diversi sistemi di ordinamento vengono fatti gareggiare tra di loro in parallelo, usando dei dataset della stessa grandezza. Qui appare, infine, tremendamente chiara l&#8217;inefficienza di alcuni dei metodi che producevano il &#8220;canto&#8221; migliore.<\/figcaption><\/figure>\n<p style=\"text-align: justify;\">Lo\u00a0heapsort \u00e8 un sistema caotico\u00a0che lavora per &#8220;cumuli&#8221; (heaps) all&#8217;interno dei quali viene per prima cosa individuato l&#8217;elemento pi\u00f9 grande o piccolo di ciascun gruppo. Quindi questo, di volta in volta, viene integrato nella lista ordinata, in ci\u00f2\u00a0che costituisce statisticamente un notevole miglioramento del semplice gesto di prendere i dati uno per uno, poi spostarli nella posizione corretta. Segue il radix sort, un&#8217;approccio particolarmente utile quando, come in questo caso, si ha a che fare con dei valori numerici puri: questo algoritmo prende in analisi infatti una cifra alla volta, a seconda delle preferenze dell&#8217;utilizzatore, l&#8217;unit\u00e0, la decina, il centinaio oppure&#8230;Quindi passa a quella successiva e cos\u00ec via, finch\u00e9 non si ottiene quella scala graduata discendente, che nel mondo musicale di\u00a0The Sound of Sorting \u00e8 per prima cosa un&#8217;esperienza aurale (mmmmMMM-Bop) soddisfacente in se e per se, pur non avendo alcuna valida funzione.<br \/>\nMa forse il video \u00e8 al suo meglio nella parte successiva, quando vengono mostrati gli algoritmi cosiddetti semplici o per meglio dire inefficienti. Il migliore sound \u00e8 forse conteso tra il bubble sort, un metodo che consiste nel comparare i dati\u00a0una coppia per volta, scambiandoli se sono nell&#8217;ordine sbagliato, in una serie interminabile\u00a0di plurimi\u00a0passaggi, e lo gnome sort, un metodo inventato come parte di un esperimento teorico del\u00a0Dr. Hamid Sarbazi-Azad dell&#8217;Universit\u00e0 di Sharif, e che \u00e8 stato scherzosamente paragonato all&#8217;approccio di uno gnomo che debba ordinare un grande numero di vasi fioriti. Ovvero, prendendoli uno per volta, confrontandoli con ci\u00f2 che hanno a fianco e infine mettendoli da una parte in ordine di grandezza, in una sorta di versione inutilmente complicata dell&#8217;insertion sort. Ma il piccolo popolo, si sa, vive a dei ritmi molto differenti dai nostri. \u00c8 stato del resto\u00a0provato che un essere umano, trovandosi di fronte al compito di dover riordinare un mazzo di carte, non segue un approccio metodico e sempre uguale, come negli algoritmi computerizzati, bens\u00ec ne applica di differenti senza soluzione di continuit\u00e0, mescolando in genere l&#8217;insertion con diverse varianti del bubble sort. Non \u00e8 questo, che l&#8217;ultimo mistero del nostro cervello, che equivale a un numero imprecisato di possenti processori <em>epta-core<\/em> posti in sequenza, con quintillioni di possenti banchi di ram,\u00a0eppure dimentica il nome di un collega nel giro di due secondi, per non parlare del numero di telefono del proprio capufficio.<br \/>\nRiordinare diventa, quindi, un processo gradevolmente musicale. Quale miglior modo per dare colore alla giornata? Una sequenza di numeri disordinati, nel pensiero tecnico specializzato, non \u00e8 altro che un drago da sconfiggere, con la migliore arma a disposizione e che sia diversa in base al caso e alle necessit\u00e0. Non esiste\u00a0un algoritmo &#8220;migliore&#8221; proprio come l&#8217;ascia di Conan non \u00e8 meglio del martello di Thor, n\u00e9 del resto la spada Excalibur, della lancia Gae Bolg. Tutto dipende dallo spessore delle scaglie che si hanno di fronte; l&#8217;ampiezza delle pipistrellesche ali; la quantit\u00e0 di denti avvelenati. Anche se\u00a0uno stregone logaritmico\u00a0potrebbe dissentire: sarebbe\u00a0infatti possibile, per chi manovra gli universi paralleli della scienza quantistica, creare una lista ordinata sulla base delle particelle prive di una massa, e quindi di una posizione nello spazio. A quel punto, a patto di non osservarle (come <a href=\"https:\/\/it.wikipedia.org\/wiki\/Paradosso_del_gatto_di_Schr%C3%B6dinger\" target=\"_blank\">nel famoso paradosso\u00a0del Gatto<\/a>) il dataset sarebbe al tempo stesso in ripida sequenza, e per mille volte volte disordinato. Nessun\u00a0algoritmo\u00a0umano pu\u00f2 competere con una simile realt\u00e0. Peccato soltanto che a quel punto, per avere una lista finalmente corretta, l&#8217;unica soluzione sarebbe distruggere tutti i mondi tranne il milleunesimo. Aspetta un attimo! Possibile che questo&#8230;Sia GI\u00c0\u00a0successo?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Musica dai numeri, per una volta, invece che il contrario. E tutto quanto perch\u00e9\u00a0Timo Bingmann, studente PhD dell&#8217;Istituto di Informatica e Algoritmica di Karlsruhe, in terra di Germania, ha\u00a0messo assieme una delle pi\u00f9 inutili, ed al contempo suggestive, applicazioni dell&#8217;ambito open source: una demo musicata, fondata sull&#8217;incontro ben riuscito\u00a0tra immagini elaborate al computer e suoni &#8230; <a title=\"Il suono di un computer che riordina le cose\" class=\"read-more\" href=\"https:\/\/www.jacoporanieri.com\/blog\/?p=18427\" aria-label=\"Per saperne di pi\u00f9 su Il suono di un computer che riordina le cose\">Leggi tutto<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[1230,1229,231,101,140,269,73,134,78],"class_list":["post-18427","post","type-post","status-publish","format-standard","hentry","category-news","tag-applicazioni","tag-database","tag-esperimento","tag-filosofia","tag-informatica","tag-matematica","tag-musica","tag-programmazione","tag-scienza"],"_links":{"self":[{"href":"https:\/\/www.jacoporanieri.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/18427","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jacoporanieri.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jacoporanieri.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jacoporanieri.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jacoporanieri.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=18427"}],"version-history":[{"count":2,"href":"https:\/\/www.jacoporanieri.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/18427\/revisions"}],"predecessor-version":[{"id":18433,"href":"https:\/\/www.jacoporanieri.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/18427\/revisions\/18433"}],"wp:attachment":[{"href":"https:\/\/www.jacoporanieri.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=18427"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jacoporanieri.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=18427"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jacoporanieri.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=18427"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}