Selezione innaturale

Per diventare un progettista di antenne professionista, puoi seguire uno dei due percorsi: puoi iscriverti a corsi universitari e universitari sull'elettromagnetismo, immergerti nello studio empirico delle forme delle antenne e apprendistato da un tecnico affermato disposto a impartire le segreti gelosamente custoditi della disciplina.





Oppure puoi fare quello che ha fatto Jason Lohn: lasciare che sia l'evoluzione a fare il lavoro.

Vuoi vivere per sempre?

Questa storia faceva parte del nostro numero di febbraio 2005

  • Vedi il resto del problema
  • sottoscrivi

I fisici sanno molto sulle equazioni di Maxwell e sugli altri principi che governano le comunicazioni wireless. Ma il design dell'antenna è ancora un'arte oscura, afferma Lohn, un informatico che lavora presso l'Ames Research Center della NASA fuori Mountain View, in California. Il campo è così scoiattolo. Tutto il tuo apprendimento avviene attraverso prove ed errori, la scuola dei duri.



Allora perché non automatizzare tentativi ed errori? Il design dell'antenna, crede Lohn, è uno dei tanti problemi ingegneristici che potrebbero essere risolti al meglio da algoritmi evolutivi, una classe emergente di software che produce molti progetti diversi, rifiutando i meno adatti per selezionare i più funzionali. I design risultanti sembrano spesso un po' disumani: inelegante e inquietante.

Gli algoritmi evolutivi, noti anche come algoritmi genetici o GA, prendono spunto dall'evoluzione biologica, che può trasformare un rettile strisciante in un uccello in volo senza alcun tipo di progetto lungimirante. Nella riproduzione sessuale, il rimescolamento dei geni di ciascun genitore, combinato con una mutazione genetica casuale, crea organismi con nuove caratteristiche e gli organismi meno adatti tendono a non trasmettere i propri geni alle generazioni successive. Gli algoritmi evolutivi funzionano più o meno allo stesso modo, ma all'interno di un computer. Quando Lohn crea una nuova antenna, ad esempio, inizia con una popolazione di progetti generati casualmente e valuta le loro prestazioni relative. I progetti che si avvicinano agli obiettivi prefissati si aggiudicano il diritto di mischiare le loro proprietà con quelle di altri candidati prescelti. I disegni che deludono fanno la fine dell'archaeopteryx: l'oblio.

L'allevamento di antenne richiede tempo, ovviamente. La maggior parte dei progetti sono decisamente orribili e ci vuole un gran numero di cicli di calcolo per trovare esecutori decenti. Tuttavia, quando hai un computer in grado di generare e testare 1.000 generazioni all'ora, emergono idee interessanti*. Lohn, un PhD che non ha seguito un corso sull'elettromagnetismo dai suoi anni universitari, prevede che almeno uno dei progetti di antenne del suo team andrà nello spazio quest'anno come parte della missione Space Technology 5 della NASA, che testerà un trio di miniature satelliti. La sua antenna preferita progettata al computer: un congegno cavatappi abbastanza piccolo da stare in un bicchiere di vino, ma in grado di inviare un'onda radio ad ampio raggio dallo spazio alla Terra. Non assomiglia a niente che un ingegnere radiofonico sano di mente costruirebbe da solo.



Gli algoritmi evolutivi sono un ottimo strumento per esplorare gli angoli oscuri dello spazio del design, afferma Lohn. Mostri [i tuoi progetti] a persone con 25 anni di esperienza nel settore e loro dicono: 'Wow, funziona davvero?' La risposta leggermente inquietante è che sì, lo fanno davvero, come ha stabilito Lohn dopo mesi di test. Se siamo fortunati, potremmo avere fino a sei progetti di antenne che andranno nello spazio nel 2005, dice Lohn.

Non tutti i problemi soccomberanno all'approccio evolutivo. Ma quelli che condivideranno una caratteristica comune: tutti siedono al di là di quella che il matematico John von Neumann ha soprannominato la barriera della complessità, la linea di demarcazione tra i problemi che possono essere risolti usando metodi tradizionali e riduzionisti e quelli che richiedono un approccio più intuitivo -e-vedi-cosa-basta approccio. Fino a poco tempo, attraversare questa barriera era una proposta costosa. Ma i computer di oggi sono abbastanza veloci da setacciare milioni di progetti insoliti nella speranza di trovarne uno che funzioni. Abbinalo alla crescente abilità dei designer moderni nell'applicazione di algoritmi evolutivi, afferma David Goldberg, direttore dell'Illinois Genetic Algorithms Laboratory presso l'Università dell'Illinois a Urbana-Champaign, e ottieni ciò che gli ingegneri chiamano amorevolmente scalabilità: la capacità di affrontare sia la miniatura che enormi sfide di progettazione.

Proprio come il motore a vapore ha creato una leva meccanica per svolgere compiti più grandi, gli algoritmi genetici stanno iniziando a dare agli individui una sorta di leva intellettuale che rimodellerà il lavoro, afferma Goldberg. Automatizzando parte del pesante sollevamento del pensiero, ci liberiamo di operare a un livello più alto e più creativo. Tale libertà ha un prezzo, ovviamente. Richiede che gli ingegneri riconoscano l'impossibilità di scrutare in ogni singolo angolo oscuro e ripongano la loro fiducia in un ulteriore livello di assistenza meccanica. Ma sempre più di loro stanno facendo questo salto.



Dai giocattoli agli strumenti
Riprodurre in microsecondi su un computer un processo che in natura richiede milioni di anni è un'idea che precede di molto la capacità di realizzarlo. John H. Holland, un professore di informatica di 76 anni all'Università del Michigan, afferma di aver avuto l'idea per la prima volta mentre sfogliava gli scaffali aperti della biblioteca di matematica del Michigan nei primi anni '50.

Ogni tanto prendevo un libro che sembrava interessante e lo leggevo, dice. Quell'abitudine lo portò a La teoria genetica della selezione naturale, un libro del 1930 del matematico britannico diventato biologo Ronald Fisher. Ispirato dagli esperimenti sulle piante di pisello del monaco austriaco del XIX secolo Gregor Mendel, Fisher elaborò descrizioni matematiche della selezione naturale a livello dei singoli geni. Anche se i ricercatori non avrebbero decifrato la biochimica alla base di quel processo fino agli anni '50, il lavoro di Fisher concordava comunque con ciò che agricoltori e pastori sapevano da secoli: la riproduzione sessuale garantisce variazione e novità.

Ecco da dove provengono gli algoritmi genetici, dice Holland. Ho iniziato a chiedermi se si potessero allevare programmi nel modo in cui, ad esempio, le persone allevano buoni cavalli e buon mais.



Holland ha scritto il suo primo articolo sugli algoritmi adattivi nel 1962. Ma è stato solo alla fine degli anni '70 che lui e i suoi studenti laureati avevano accumulato le risorse computazionali per mettere in pratica l'idea. Holland attribuisce a uno dei suoi studenti, Edward Codd, il merito di aver convinto il suo ex datore di lavoro, IBM, a vendere al gruppo di ricerca del Michigan un mainframe a basso costo. (Codd avrebbe vinto l'AM Turing Award, l'equivalente informatico del Premio Nobel, per aver progettato i primi database relazionali.) Anche allora, tuttavia, i miseri 32 kilobyte di memoria del computer limitavano le dimensioni e la portata dell'iniziale esperimenti.

Uno dei primi scienziati a dare agli algoritmi evolutivi un serio test drive è stato Goldberg, che ha lavorato sotto l'Olanda come studente di dottorato nei primi anni '80. Goldberg ha fatto risorgere un problema che aveva affrontato durante i suoi giorni nell'industria del gas naturale: ridurre al minimo il consumo di energia di un gasdotto a lunga distanza, date le variazioni della domanda regionale. I suoi algoritmi evolutivi hanno prodotto soluzioni efficienti quanto quelle prodotte dal software di meccanica dei fluidi esistente utilizzato dai progettisti di tubazioni. Ma mentre Goldberg alimentava i suoi algoritmi con problemi più grandi e più complicati, cominciarono a inciampare: rimasero bloccati esplorando vicoli ciechi evolutivi o sputando soluzioni irrimediabilmente selvagge. Capivo i problemi che stavo risolvendo meglio degli strumenti che stavo usando per risolverli, e questo mi dava fastidio, dice Goldberg.

Goldberg ha concentrato la sua tesi e poi un altro mezzo decennio di lavoro sul rendere gli algoritmi genetici più prevedibili. Ha scoperto che la regolazione dei parametri di ogni nuovo algoritmo, ad esempio la dimensione della popolazione iniziale o il tasso di mutazione, ha attenuato alcune rughe. Ma per la maggior parte, la sua ricerca lo ha lasciato con una consapevolezza che fa riflettere: gli algoritmi evolutivi erano spesso più complessi dei problemi che cercavano di risolvere. Alla fine, Goldberg ha imparato a stare alla larga da quelli che chiama i problemi dell'ago nel pagliaio, che richiedono un'unica soluzione migliore; questi tendevano a far perdere il controllo agli algoritmi evolutivi. Invece, mirava a problemi più amichevoli che avevano una gamma di soluzioni praticabili, a seconda di come li affrontavi. Se ci sono dozzine di aghi sparsi in giro in modo tale che [l'algoritmo evolutivo] possa suddividere il pagliaio in mucchi di fieno più piccoli, almeno ti garantisci una possibilità di ottenere un risultato migliore, dice Goldberg.

Goldberg ha documentato il suo lavoro in un libro di testo del 1989, un volume che avrebbe ispirato altri ingegneri esperti di computer a iniziare il proprio lavoro. A metà degli anni '90, gli ingegneri del General Electric Research Center di Niskayuna, NY, avevano costruito metodi evolutivi in ​​uno strumento di progettazione interno chiamato EnGENEous, che è stato utilizzato per trovare la forma più efficiente per le pale del ventilatore nei motori a reazione GE90 utilizzati sull'aereo Boeing 777. EnGENEous ha permesso al team GE90 di eliminare uno stadio del compressore del motore, il che significava una riduzione del peso del motore e dei costi di produzione senza alcun sacrificio nelle prestazioni aerodinamiche. Dopo questo successo iniziale, si sono aperte le porte per utilizzare questi tipi di strumenti in molte applicazioni diverse in tutte le attività di GE, afferma Pete Finnigan, responsabile di laboratorio per le applicazioni di progettazione meccanica avanzata presso il centro di ricerca. Gli ingegneri di Rolls Royce, Honda e Pratt and Whitney hanno seguito l'esempio, incorporando algoritmi genetici nei propri processi di progettazione.

Segnalazione di frode
Ma mentre i computer sono diventati abbastanza potenti da applicare i principi evolutivi a tutti i tipi di problemi, i pagliai si sono moltiplicati a un ritmo ancora più drammatico. Considera le frodi ai consumatori. Le società di carte di credito stimano che $ 0,07 per $ 100 addebitati sulle carte di credito vadano persi a causa di frodi, il che costa all'industria più di $ 1 miliardo all'anno solo negli Stati Uniti. Tuttavia, scrivere software tradizionale per identificare addebiti fraudolenti rimane straordinariamente difficile. Come mai? Perché le persone che perpetrano la frode sono esperte nel modificare il loro comportamento per eludere il rilevamento. Semplicemente non è possibile scrivere un programma che anticipi ogni possibile truffa.

Ma gli algoritmi evolutivi possono almeno aumentare le probabilità di successo del rilevamento delle frodi computerizzate, sostengono i ricercatori di intelligenza artificiale che hanno fondato Searchspace con sede a New York City. L'azienda vende una varietà di programmi che dividono il pagliaio cercando attività aberranti all'interno di sezioni definite con precisione dei dati dell'account esistenti, afferma Michael Recce, capo scienziato di Searchspace. Il software utilizza strumenti chiamati sentinelle, programmati con regole di rilevamento delle frodi. Ad esempio, più addebiti sulla stessa carta di debito in un singolo negozio in un solo giorno potrebbero sollevare automaticamente un campanello d'allarme.

Ma la persona che accumula questi acquisti potrebbe essere semplicemente un acquirente di Natale smemorato, non un ladro. Quindi le sentinelle valutano una varietà di fattori, come l'attività precedente di una persona in quel negozio, al fine di evitare falsi positivi e segnalare solo gli account che gli esperti umani sarebbero d'accordo come sospetti. Dice Recce, è possibile impostare i criteri di idoneità in modo tale da garantire sia una minima perdita per frode che una minima perdita di buoni clienti.

Searchspace ospita regolarmente dei progetti pilota, essenzialmente dei software che mettono a confronto i suoi algoritmi con i sistemi di rilevamento delle frodi esistenti dei potenziali clienti. I partecipanti portano campioni ciechi di dati storici per vedere se le sentinelle di Searchspace piantano bandiere rosse in tutti i posti giusti. Invariabilmente, dice Recce, le sentinelle si presentano non solo con i conti presegnalati, ma anche con qualche altro furfante in agguato nel rumore di fondo. Non credo che ci sia stata una di quelle presentazioni in cui non abbiamo dovuto sospendere le cose per un momento in modo che un dirigente potesse uscire per fare una telefonata veloce, dice Recce, sorridendo.

Brevemente originale
Ora che gli algoritmi evolutivi stanno superando in astuzia gli umani, alcuni ricercatori vogliono alzare ulteriormente l'asticella. Alla Stanford University, ad esempio, il professore di informatica biomedica John Koza – un altro protetto olandese – sta esplorando un campo strettamente correlato chiamato programmazione genetica. Gli algoritmi evolutivi hanno serie fisse di istruzioni e si limitano a variare i dati che manipolano. I programmi genetici sono più simili agli organismi sessuali, capaci di migliorare nel tempo mischiando fra loro frammenti di codice. Le scoperte fatte finora dai programmi di Koza spaziano da nuovi metodi computerizzati per l'ordinamento delle proteine ​​a progetti all'avanguardia per circuiti elettronici.

I progetti dei circuiti sono emersi dal lavoro di Koza con Matthew Streeter della Carnegie Mellon University e Martin Keane di Econometrics, una società di consulenza strategica di marketing con sede a Chicago. Insieme, i ricercatori hanno creato un programma che disegna schemi circuitali schematici. La loro prima sfida era vedere se l'approccio genetico potesse derivare da progetti di circuiti a zero già brevettati da ingegneri del passato. Il programma ha avuto pochi problemi a generare progetti semplici che corrispondessero a quelli brevettati negli anni '30 e '40. In effetti, Koza ha iniziato a riferirsi al programma come a una macchina inventata e ha creato una pagina Web che tiene traccia delle ultime scoperte del software competitivo umano.

Quando il gruppo di Koza ha testato la quarta o la quinta versione del loro programma, tuttavia, ha cominciato a succedere qualcosa di ancora più sorprendente: il programma ha eliminato i progetti di circuiti non pubblicati nella letteratura sui brevetti. Due di questi progetti, una coppia di circuiti di controllo che regolano il feedback, erano così originali che Koza e i suoi colleghi ne hanno brevettati.

Per quanto orgoglioso sia del suo software, Koza non ha intenzione di assegnare la responsabilità dei nuovi progetti al programma stesso. I brevetti accreditano Keane, Koza e Streeter, in quest'ordine. Ma ci sono alcuni nuovi enigmi pseudofilosofici in agguato qui: se qualcosa viene inventato senza essere umano vicino, è davvero un'invenzione? Chi è l'inventore? E se l'invenzione funziona davvero, che importa se non capiamo come?

Su quest'ultimo punto, afferma Lohn della NASA, ci sono due scuole di pensiero. Uno dice che ho solo bisogno di qualcosa che faccia X, Y e Z, e se l'evoluzione mi dà X, Y e Z, è tutto ciò che mi interessa. L'altra scuola vuole sapere cosa c'è dentro e come funziona. Non possiamo davvero aiutare quelle persone, perché vediamo spesso progetti evoluti che sono completamente incomprensibili.

Non c'è ancora bisogno che gli umani si sentano gelosi del software competitivo umano, afferma Koza, poiché l'obiettivo finale è semplicemente quello di trasferire il lavoro più faticoso dell'ingegneria ai computer. Prevede un momento nel prossimo futuro, forse tra 20 anni, in cui algoritmi genetici in esecuzione su computer ultraveloci assumeranno compiti di progettazione di base in campi diversi come l'elettronica e l'ottica. Ma anche allora, Koza crede, l'intelligenza umana e quella della macchina funzioneranno in collaborazione. Non siamo mai arrivati ​​al punto in cui i computer hanno sostituito le persone, afferma Koza. In aree particolarmente ristrette, sì, ma storicamente le persone sono passate a lavorare su problemi più difficili. Penso che continuerà ad essere così.

Sam Williams è uno scrittore di tecnologia freelance con sede a Staten Island, NY. È un assiduo collaboratore di Salon.

nascondere