17 febbraio 2011

Singolarità: il problema del software

La "Singolarità" è quel punto omega, previsto entro il 2030 da scienziati come Vernor Vinge e Raymond Kurzweil, che prevede la realizzazione di una Intelligenza Artificiale "forte" (o I.A. avanzata) ovvero di un computer pensante. Invero essa potrebbe realizzarsi anche attraverso un interfacciamento neurale di un cervello umano a una macchina I.A. in modo da realizzare un essere dalla potenza cognitiva superiore. Altresì la singolarità potrebbe emergere come autocoscienza dalla stessa rete Internet a causa dei miliardi di interazioni tra computer che simulerebbero in tutto è per tutto una rete neuronale. Quest'ultima ipotesi io la scarterei poiché essa non tiene conto della "organizzazione funzionale" della rete neurale (ammesso che di rete neurale possa parlarsi). Se pensiamo ad esempio alla rete neurale del cervello dell'orca ci accorgiamo che essa è più estesa della nostra (il cervello è più grande) ma questi animali, pur mostrando comportamenti intelligenti, non hanno sviluppato la fisica...

Ora: quando la mente artificiale verrà creata essa sarà l'ultima invenzione che l'essere umano avrà potuto fare. Da quel momento in poi essa, dato che sarà superintelligente, progetterà nuove I.A. ancora più evolute e le stesse realizzeranno una sorta di "boom" in ogni campo della scienza rivoluzionando la matematica, la fisica, la biologia e la tecnologia in generale: gli esseri umani ne saranno surclassati e non potranno più arrivare a comprendere i progetti delle intelligenze avanzate. Nessuno potrà prevedere cosa accadrà dopo questo evento poiché esso sfuggirà alla nostra comprensione.

Uno dei pilastri su cui si fonda l'assunto della singolarità è la "Legge di Moore": una osservazione empirica compiuta nel 1965 da Gordon Moore, cofondatore di Intel (la casa che costruisce i processori per i nostri computer). Questa legge afferma che il numero di componenti elettronici (transistor) che formano un microprocessore sarebbe raddoppiato ogni anno che passa. Questa legge è un esempio lampante di futurologia scientifica (ovvero di una previsione del futuro fatta da uno scienziato) tant'è che è valida ancora oggi: ogni 18 mesi circa la potenza di elaborazione di questi piccoli "cervelli digitali" raddoppia! Il fenomeno è evidente nella evoluzione del Personal Computer (Pc), il cui processore è evoluto dai 29.000 transistor del primo Pc Ibm nel 1980 (Intel 8086) agli 810.000.000 del più recente processore (Intel i7) con un aumento della complessità circuitale pari a 28.000 volte (!). Kurzweil dunque afferma che nel 2021 avremo computer capaci di elaborare la stessa quantità di informazioni di un cervello umano ed è molto probabile che abbia ragione. Sono inoltre allo studio complete mappature neurali del cervello per poterne realizzare una emulazione. Tuttavia questa teoria non tiene conto di un fatto; un computer è costituito da due componenti:

HARDWARE + SOFTWARE

E senza il secondo il primo non funziona. Qualsiasi microprocessore o rete neurale artificiale, per quanto evoluti, senza software sono solo ammassi inutili di circuiti! Ora: mentre la tendenza evolutiva dell'hardware è un fatto accertato è altrettanto accertato che l'evoluzione dei software avviene in modo decisamente più lento, anzi, a voler essere sinceri: parossisticamente più lento. Ciò è dovuto al fatto che a sviluppare il software sono sempre esseri umani ovvero esseri che soffrono di limitazioni cognitive.

Ben sapendo questo un gigante come Microsoft, per la realizzazione del suo sistema operativo Windows e dei software applicativi ha diviso il sistema di sviluppo in "moduli". Ogni modulo è affidato ad un team di sviluppo umano (15-30 programmatori) che si occupa di generare il codice per quella parte. Poi tutti i moduli vengono assemblati a formare il Kernel e vengono avviati lunghissimi periodi di debugging e di beta testing che prevedono anche il rilascio in commercio di pre-release del prodotto. Infatti uno dei problemi legati allo sviluppo di software da parte di esseri umani è la continua errorazione che viene prodotta nei vari moduli o nell'assemblaggio degli stessi: due moduli possono funzionar bene da soli ma una volta accoppiati generano errori. Non solo, spesso accade che un sistema software (ad esempio un sistema operativo) funzioni benissimo su un determinato hardware ma quando viene posto a contatto con driver (software pilota) diversificati genera errori imprevisti; per questo Microsoft prevede la Driver Certification WHQL. Quello che vedete in alto in figura è uno schema di sviluppo software della ministero della difesa americano in modo che lo stesso risulti il più possibile privo di bug. Come vedete le fasi prevedono iter lunghi e complessi... Concludo dicendo che se vediamo oggi il computer più potente: l'IBM RoadRunner esso monta 20.000 processori, ha 100 Terabyte di Ram e genera una potenza di calcolo di 1.105 Teraflops (!) eppure, nonostante tutto, gira su un sistema operativo Linux, ovvero lo stesso che usiamo sui nostri notebook...

8 commenti:

Anonimo ha detto...

In effetti l'affermazione che il progresso (scientifico) proceda a velocità esponenziale è quanto meno discutibile.

L'unica crescita esponenziale accertabile (quantitativamente) è quella enunciata dalla legge di Moore. Il resto è, semplicemente, interpretabile a piacimento.

Ma a parte ciò, vorrei puntualizzare un aspetto che a non tutti è evidente: non è detto affatto che per risolvere un problema "grande il doppio" sia sufficiente il raddoppio dei transistor che compongono il processore. Anzi, solo la classe di problemi più semplice (i problemi a complessità computazionale lineare) può essere "trattata" così. La legge di Moore non può essere citata come una prova che ci si stia avvicinando sempre più alla Mente Artificiale; è molto più plausibile che la possibilità che una simile entità possa vedere la luce risieda sull'evoluzione del sw (in senso lato), e non su quanti transistor si riescano a piazzare su un chip.

E riguardo alla A.I. forte: cosa vi dice che già non esista? Sareste in grado di capire se siamo tutti manipolati da qualcosa che è intrinsecamente più intelligente di tutti noi?

David Orban ha detto...

Non sembrerebbe, a guardare i bug di Windows o la quantità di virus che ne sfruttano le vulnerabilità non corrette, ma il software evolve anche più rapidamente del hardware. Ne ho parlato con Geordie Rose documentando quantitativamente la cosa su The evolution of software vs. hardware solutions

Cesare ha detto...

eh gia', il buon Kurzweil ha soprasseduto su questo argomento fondamentale (e temo in malafede, non credo proprio sia una dimenticanza).
Direi che molti argomenti del transumanesimo sono di rilevanza anche molto attuale, e nei prossimi decenni diverrano importanti anche nella vita di tutti i giorni. Ma la singolarita' e' un tema basato su elementi totalmente teorici e pure assai fragili ed avra' a mio avviso una valore puramente speculativo per ancora moltissimi decenni o secoli. Altro che 2029 o 2045. Il fatto e' che il futurologo non accetta l' idea di morte e cerca disperatamente di far quadrare i suoi conti con tempi "convenienti" per la sua aspettativa di vita, tenendo in considerazioni le variabili utili alla sua equazione (hardware) e tralasciando quelle che allungano i tempi.

Estropico ha detto...

Personalmente non escludo la possibilita' di un hard take-off [1] ma considero piu' probabile una 'singolarita' ad onda' [2] causa una serie di ragioni fra le quali quella del software.

Un commento su quanto detto da Anonimo, cioe' che "L'unica crescita esponenziale accertabile (quantitativamente) è quella enunciata dalla legge di Moore"

Beh, in realta' ce ne sono anche delle altre:

Other formulations and similar laws
http://en.wikipedia.org/wiki/Moore%27s_law#Other_formulations_and_similar_laws

Tutte queste 'sorelle' della legge di Moore sono nello stesso settore, ma Kurzweil ne ha rintracciate molte altre, in The Singularity is Near se ricordo bene, in altri campi.

Ciao,
Fabio

[1]http://www.acceleratingfuture.com/wiki/Hard_Takeoff

[2]vedi "singolarita' numero 3" in questo articolo: http://www.estropico.com/id146.htm

David ha detto...

Anch'io ho scartato da tempo l'idea che la Singolarità possa emergere dalla stessa rete globale di computer interconnessi. Per arrivare a una supermente artificiale abbiamo bisogno, oltre che di un hardware abbastanza potente, anche di un software avanzato, quindi la questione da porsi è: che genere di software?

Ritengo probabile che la superintelligenza sarà frutto di un programma adattativo ed evolutivo, capace di autoapprendere, in questo senso potrebbro risultare sempre più significative le ricerche sulle reti neurali, gli algoritmi Genetici, la logica fuzzy, la vita artificiale, etc...

Huk ha detto...

Salve, forse non sarà un commento attinentissimo o originale ma vorrei porre un problema di natura funzionale all'interazione fra una ipotetica super intelligenza e la nostra, con questo voglio sottolineare a mio avviso l'impossibilità da parte dell'uomo odierno di sfruttare per la sua stessa crescita una singolarità in questo senso o, anche ampliando il discorso, un possibile postumano possa interagire in modo costruttivo con quelli che una volta potevano essere i suoi simili. Ma per non allungare troppo il discorso riduco i miei dubbi alla singolarità di una possibile I.A, insomma si ha un'idea troppo idealistica delle scoperte in ambito scientifico e della loro applicazione immediata per il "progresso" in quanto non vengono prese in considerazione tutta quella serie di meccanismi di freno a carattere filosofico, ideologico e lobbystico che filtrano e frenano e deviano i percorsi dell'evolvere umano. La singolarità verrà ignorata.

Anonimo ha detto...

Checchè ne dicano gli altri , io invece vedo con i miei occhi , e chiunque dovrebbe essere d'accordo, che il progresso scientifico nella sua totalità è 'esponenziale'.
Proviamo ad andare indietro con la mente di 50 anni , nel 1960, e poi di altri 50, nel 1910, e cosi' via, il 1860, il 1810, il 1760 etc.
Provate a dare una valore numerico all'insieme di conoscenze scientifiche e tecnologiche di ogni gradino di questa immaginaria scala temporale, non limitatevi solo alla Legge di Moore, Kurzweil non era cosi' limitato nel suo pensiero.
Vi accorgerete che la crescita è senz'altro esponenziale, non solo negli ultimi 50 anni riferendoci alla Legge di Moore, ma praticamente dalla preistoria ad oggi.
Se tutto questo vi sembra cosi' normale allora siete ciechi , ciechi che non vedono dove stanno andando.
Per quanto riguarda il problema del software, si esiste. L'uomo non puo' fare molto di piu' di quanto sta facendo adesso.
Ma non bisogna sottovalutare la potenza computazionale della forza bruta e neanche gli studi in svariati campi delle scienze cognitive .
Mettendo assieme i vari pezzi e le varie tecniche e con l'aiuto della forza bruta computazionale il problema a mio avviso dovrebbe essere risolto.

Anonimo ha detto...

Anche se il post è di qualche mese fa, l'argomento è tremendamente stuzzicante, quindi lascio questo mio commento ora anche se in grave ritardo:

Il software procede in modo "artigianale" a differenza dell'hardware. Tuttavia, secondo una ricerca commissionata dalla Casa Bianca, è il software e non l'hardware ad avere trainato lo sviluppo informatico in questi anni. Secondo tale studio, infatti, le capacità dei circuiti integrati sono cresciute di ben 1000 volte in appena 15 anni, eppure, sorprendentemente, nello stesso lasso di tempo, la velocità d'esecuzione degli algoritmi è cresciuta addirittura di 43mila volte.

Quindi, per quanto possa essere contro-intuitivo, ha ragione David Orban nel far presente l’illusorietà del “problema” del software.

Si veda: http://punto-informatico.it/3106014/PI/News/software-batte-hardware.aspx

Si pensi cosa potrebbe accadere, se si riuscisse a sistematizzare ed a rendere "più scientifico" l'approccio software. Dove si potrebbe giungere se si riuscisse a creare un approccio software fortemente ricorsivo (ossia software che migliora altro software incluso anche versioni di sé stesso).

Saluti a tutti