4.5
La novelty search
La novelty search è un nuovo tipo approccio alla ricerca che trae ispirazione dalla propensione illimitata dell’evoluzione naturale a scoprire continuamente cose nuove. Piuttosto che convergere verso un’unica soluzione ottima, la natura scopre un’ampia varietà di modi differenti per far fronte alle sfide della vita.
Come astrazione della scoperta della novità in natura, la novelty search premia direttamente il fatto di comportarsi diversamente al posto di ricom- pensare i progressi effettuati verso il raggiungimento di un obiettivo finale, che costituisce l’approccio tradizionale alla ricerca.
Scendendo nel dettaglio, la ricerca evolutiva viene tipicamente accompa- gnata dalla misurazione del divario tra il candidato corrente e l’obiettivo. Tale divario determina quindi se il candidato debba essere premiato e utilizzato per produrre nuove generazioni, o scartato. Contrariamente, la novelty search non misura mai i progressi ma premia semplicemente gli individui che sono differenti.
Si può quindi affermare che questo nuovo approccio, piuttosto che per- seguire un obiettivo, cerca la novità. Con sorpresa, a volte non puntare direttamente al raggiungimento di un obiettivo porta a raggiungerlo in ma- niera più rapida e consistente. Anche se può sembrare strano, si ha che, nel trattare alcuni problemi, ignorare del tutto l’obiettivo potrebbe dare risultati migliori di quelli che si sarebbero ottenuti cercando di raggiungerlo. La spie- gazione di questo fenomeno deriva dal fatto che talvolta i passaggi intermedi che si effettuano per raggiungere l’obiettivo si discostano dall’obiettivo stesso.
La validità di questo approccio è provata anche dal fatto che, mediante il suo utilizzo, si è riusciti con successo a fare camminare dei robot bipedi al simulatore, un problema noto in robotica per via della sua grande difficoltà.
Conclusioni
Una delle principali caratteristiche che rendono l’approccio della robotica evolutiva adatto allo studio di comportamenti adattativi nei sistemi naturali e artificiali è la possibilità di fare affidamento su di un processo in grado di organizzarsi autonomamente. Infatti, utilizzando l’evoluzione artificiale, il ruolo del progettista potrebbe limitarsi alla stesura delle sole specifiche relative alla funzione di fitness, anche se tale compito, come si è mostrato nei paragrafi precedenti, non risulta affatto semplice e privo di problemi. Non è infatti necessario che il comportamento richiesto, anche se complesso, sia specificato mediante la sua suddivisione in comportamenti più semplici perché gli individui promossi dalla funzione di fitness sono tutti in grado di mostrare il comportamento desiderato, frutto dell’interazione tra il robot e l’ambiente, nella sua totalità. Gli esperimenti di robotica evolutiva, nei quali i robot sono liberi di scegliere autonomamente il modo in cui risolvere i loro compiti attraverso l’interazione con l’ambiente, potrebbero così rivelarsi utili alla comprensione di come gli organismi presenti in natura siano in grado di produrre comportamenti adattativi.
Le applicazioni della computazione evolutiva nel campo della robotica sono oggi numerose e rivestono un ruolo importante nel tentativo di risolvere i problemi storicamente irrisolti ad essa legati. Nei primi vent’anni trascorsi dalla sua nascita, la robotica evolutiva è sempre rimasta un po’ in ombra, pur avendo prodotto alcuni risultati promettenti. Anche se non è ancora stata in grado di fare evolvere un robot a tal punto da renderlo migliore di uno prodotto utilizzando i comuni metodi di ottimizzazione della robotica tradizionale, la robotica evolutiva è comunque riuscita a produrre una più
32 Conclusioni ampia varietà di robot e in maniera del tutto automatizzata. Gli studiosi di robotica, nel corso degli anni, hanno dato vita ad alcune centinaia di robot progettati e costruiti a mano, dalla forma umanoide o simile a quella degli animali. I metodi evolutivi hanno invece prodotto milioni di robot diversi tra loro e in grado di svolgere svariati compiti come camminare o afferrare oggetti. Si auspica che l’analisi della moltitudine dei possibili modi in cui i robot sono in grado di svolgere questi compiti possa portare alla formulazione di nuove idee su come poter fare scalare i robot per far loro svolgere compiti più complessi. Una sfida aperta consiste nel creare robot in grado di vivere e lavorare in sicurezza a fianco dell’uomo. I recenti progressi in campi esterni alla robotica stanno fornendo nuove opportunità per mostrare i vantaggi dell’adozione di questo nuovo approccio evolutivo. Dalle scienze dei materiali provengono, ad esempio, tecnologie abilitanti per la creazione di robot flessibili e modulari, anche se la progettazione di tali robot, così come lo sviluppo di adeguate politiche di controllo, non è né semplice né intuitiva. Gli sviluppi recenti nell’ambito della fabbricazione automatizzata hanno consentito la progettazione e la fabbricazione di robot a livelli mai raggiunti in precedenza. Algoritmi evolutivi e simulatori all’avanguardia stanno rendendo possibile l’ottimizzazione simultanea di tutti gli aspetti della struttura fisica di un robot e della sua politica di controllo utilizzando risorse computazionali e tempi di calcolo più ragionevoli rispetto al passato. Infine, le nuove scoperte nei campi della biologia evolutiva e della neuroscienza sono insegnamenti utili alla creazione di macchine sempre più complesse, autonome e adattative.
Nei prossimi anni i robot sono destinati a diffondersi tra le persone così come è accaduto in passato con gli elettrodomestici e i computer. L’approccio della robotica evolutiva, che si ispira ai meccanismi evolutivi presenti in natura, al problema della progettazione e della fabbricazione di tali robot è di certo promettente: non è forse vero che l’evoluzione biologica ha prodotto le macchine più autonome, adattative, complesse e intelligenti che conosciamo, ovvero noi umani?
Bibliografia
[1] A. Roli, Evolutionary robotics slides. 2013. http://campus.unibo.it/128653
[2] J. C. Bongard, Evolutionary Robotics. Communications of the ACM, Vol. 56 No. 8, Pages 74–83, August 2013.
[3] C. G. Langton, Artificial Life: Proceedings of an interdisciplinary work- shop on the synthesis and simulation of living systems. Addison-Wesley, 1989.
[4] J. E. Auerbach, J. C. Bongard, On the Relationship Between Environ- mental and Morphological Complexity in Evolved Robots. Proceedings of the 2012 Genetic and Evolutionary Computation Conference, Pages 521–528, July 2012.
[5] J. C. Bongard, Morphological change in machines accelerates the evolution of robust behavior. Proceedings of the National Academy of Sciences, Vol. 108 No. 4, Pages 1234–1239, January 2011.
[6] C. W. Reynolds, Flocks, Herds, and Schools: A Distributed Behavioral Model. ACM SIGGRAPH Computer Graphics, Vol. 21 No. 4, Pages 25–34, July 1987.
[7] S. Wischmann, D. Floreano, L. Keller, Historical contingency affects signaling strategies and competitive abilities in evolving populations of simulated robots. Proceedings of the National Academy of Sciences, Vol. 109 No. 3, Pages 864–868, January 2012.
34 BIBLIOGRAFIA [8] M. Yim, W.-M. Shen, B. Salemi, D. Rus, M. Moll, H. Lipson, E. Klavins, G. S. Chirikjian, Modular Self-Reconfigurable Robot Systems (Grand Challenges of Robotics). IEEE Robotics & Automation Magazine, Vol. 14 No. 1, Pages 43–52, March 2007.
[9] J. Rieffel, F. Saunders, S. Nadimpalli, H. Zhou, S. Hassoun, J. Rife, B. Trimmer, Evolving Soft Robotic Locomotion in PhysX. Proceedings of the 11th Annual Conference Companion on Genetic and Evolutionary Computation Conference: Late Breaking Papers, Pages 2499–2504, July 2009.
[10] J. C. Bongard, V. Zykov, H. Lipson, Resilient Machines Through Con- tinuous Self-Modeling. Science, Vol. 314, Pages 1118–1121, November 2006.
[11] S. Koos, J.-B. Mouret, S. Doncieux, The Transferability Approach: Cros- sing the Reality Gap in Evolutionary Robotics. IEEE Transactions on Evolutionary Computation, Vol. 17 No. 1, Pages 122–145, February 2013. [12] H. Lipson, J. B. Pollack, Automatic design and manufacture of robotic
Ringraziamenti
Ringrazio i miei genitori, che mi hanno permesso di frequentare l’università e si sono sempre mostrati fiduciosi nei miei confronti. Ringrazio Greta, la mia ragazza, che mi ha sempre sostenuto. Ringrazio i miei amici, i miei compagni di corso e tutte le persone che durante questi tre anni universitari hanno creduto nelle mie capacità, talvolta sovrastimandole. Ringrazio infine tutti i docenti del mio corso di studio, in modo particolare il relatore Andrea Roli per la gentilezza e la disponibilità che mi ha sempre mostrato.