mercoledì 13 giugno 2012

Algoritmi veloci

Un sacco di cose oggi vengono fatte funzionare con algoritmi veloci. Si comprano e si vendono azioni con algoritmi veloci. Si costruiscono reti di computer, reti del traffico, rotte e linee aeree, previsioni statistiche... con gli algoritmi. Tutto oggi ha natura algoritmica, essendo necessariamente rappresentato all'interno di memorie digitali, e calcolato da processori che digeriscono al meglio (e solo) algoritmi.



L'algoritmo è l'incarnazione dell'idea umana che il mondo è descrivibile, prevedibile, organizzabile. Tutti sanno che così non è ma a tutti conviene crederlo, a me e a te compresi.

L'algoritmo, che è una sequenza di istruzioni discrete, 'crede' che il mondo vada come lui si aspetta, e lo calcola, lo dirige e lo prevede. Ha un solo nemico: la complessità.
Più un fenomeno è complesso più è difficile gestirlo con algoritmi, per quanto veloci ed addirittura automodificanti[1] o, udite udite, genetici.[2]
Alla fine, che si voglia formattare un file di testo o tentare di prevedere l'effetto di un colpo di tosse emesso in Nicaragua sulla piovosità del giorno dopo nelle Filippine, è sempre l'uomo che scrive algoritmi. Cioè scrive codici, con quello che conosce, per gestire al meglio ciò che conosce e per non farsi prendere impreparato da ciò che non conosce.
Una bella contraddizione non risolvibile. E nemmeno mai pericolosa, fin tanto che le decisioni venivano prese 'lentamente'. Oggi, con l'immediatezza richiesta dai sistemi, la fase di previsione, quella della progettazione degli algoritmi, è vitale. Ancor più se si pensa che spesso, una volta scritto, nell'algoritmo non ci capisce più nulla nemmeno il suo autore[3].

Il mondo umano e quello naturale sono fortemente stocastici e non lineari. Cioè caotici e imprevedibili.
L'idea che si possa organizzare il caos è quella che fa funzionare la nostra società ed il nostro modo di vivere. E che, inevitabilmente, la porterà al collasso. Speriamo tardi.

PS: per fortuna c'è una cosa che non cambia mai, e che è assolutamente prevedibile, rassicurante e confortevole. La scuola italiana. Hai voglia te a cambiare norme e regolamenti, a scrivere riforme, circolari e indicazioni.
Com'era ai tempi del perfido Papini continua ad essere oggi. Prevedibile e perfettamente algoritmica.

Giovanni Papini (brutto che era!)


_______________________________



1] La programmazione di codice automodificante è una particolare tecnica di programmazione volta a realizzare programmi in grado di modificare il proprio codice durante l'esecuzione.
Per la complessità dell'analisi relativa a tali algoritmi, è una tecnica sconsigliata per quasi tutte le applicazioni: allo stato attuale solo i virus, i programmi di intelligenza artificiale ed alcuni algoritmi di protezione del software fanno uso di codice automodificante. I virus lo fanno per cercare di sfuggire all'analisi dei programmi antivirus, mentre in IA serve per simulare (o per alcuni imitare) l'apprendimento. Infine gli algoritmi di protezione del software usano il codice automodificante per rendere difficoltosa la realizzazione di "crack" in grado di eliminare illegalmente la protezione sul software stesso.
2] L'algoritmo genetico è un algoritmo di ottimizzazione e appartiene ad una particolare classe di algoritmi utilizzati in diversi campi, tra cui l'intelligenza artificiale. È un metodo euristico di ricerca ed ottimizzazione, ispirato al principio della selezione naturale di Charles Darwin che regola l'evoluzione biologica. Il nome deriva dal fatto che i suoi primi pionieri si ispirarono alla natura e alla genetica, branca della biologia. Gli algoritmi genetici sono applicabili alla risoluzione di un'ampia varietà di problemi d'ottimizzazione non indicati per gli algoritmi classici, compresi quelli in cui la funzione obiettivo è discontinua, non derivabile, stocastica, o fortemente non lineare.
3] Pare che negli algoritmi che comprano e vendono e gestiscono la composizione degli strumenti derivati e degli swaps non ci capisca niente nessuno.

4 commenti:

  1. Io non credo al caos, nè all'anarchia.
    Alla fine, se ci pensi, pure l'illogicità è una variabile.

    RispondiElimina
  2. Chissà... secondo me il caos E'.
    Che la dinamica dei fluidi è niente, al confronto di quello che si riesce a produrre oggi, nell'organizzazione del mondo perfetto degli uomini.
    PS: Intendendo Caos non come semplice disordine, ma come ordine di grado ipercomplesso, ultraimpredittibile e quindi non deterministico (in senso umano).

    RispondiElimina
  3. Ovvero quello che comunemente viene chiamato dio =D
    E manco a quello credo.

    RispondiElimina
  4. :D non credo. Troppo umano.
    Quello di cui parlo è pura materialità.
    Ci siamo inventati dio perchè nella materia non capiamo una cippa.

    RispondiElimina