1,460 research outputs found

    Generic Behaviour Similarity Measures for Evolutionary Swarm Robotics

    Full text link
    Novelty search has shown to be a promising approach for the evolution of controllers for swarm robotics. In existing studies, however, the experimenter had to craft a domain dependent behaviour similarity measure to use novelty search in swarm robotics applications. The reliance on hand-crafted similarity measures places an additional burden to the experimenter and introduces a bias in the evolutionary process. In this paper, we propose and compare two task-independent, generic behaviour similarity measures: combined state count and sampled average state. The proposed measures use the values of sensors and effectors recorded for each individual robot of the swarm. The characterisation of the group-level behaviour is then obtained by combining the sensor-effector values from all the robots. We evaluate the proposed measures in an aggregation task and in a resource sharing task. We show that the generic measures match the performance of domain dependent measures in terms of solution quality. Our results indicate that the proposed generic measures operate as effective behaviour similarity measures, and that it is possible to leverage the benefits of novelty search without having to craft domain specific similarity measures.Comment: Initial submission. Final version to appear in GECCO 2013 and dl.acm.or

    Open-Ended Evolutionary Robotics: an Information Theoretic Approach

    Get PDF
    This paper is concerned with designing self-driven fitness functions for Embedded Evolutionary Robotics. The proposed approach considers the entropy of the sensori-motor stream generated by the robot controller. This entropy is computed using unsupervised learning; its maximization, achieved by an on-board evolutionary algorithm, implements a "curiosity instinct", favouring controllers visiting many diverse sensori-motor states (sms). Further, the set of sms discovered by an individual can be transmitted to its offspring, making a cultural evolution mode possible. Cumulative entropy (computed from ancestors and current individual visits to the sms) defines another self-driven fitness; its optimization implements a "discovery instinct", as it favours controllers visiting new or rare sensori-motor states. Empirical results on the benchmark problems proposed by Lehman and Stanley (2008) comparatively demonstrate the merits of the approach

    Evolution of self-organising behaviours with novelty search

    Get PDF
    Tese de mestrado em Engenharia Informática, apresentada à Universidade de Lisboa, através da Faculdade de Ciências, 2012A pesquisa de novidade (novelty search) é um nova e promissora técnica de evolução artificial, que desafia a abordagem tradicional focada na perseguição direta dos objetivos. O principal conceito por trás da pesquisa de novidade é a recompensa de soluções que sejam novas, em vez de soluções que se aproximem do objetivo pré-definido. Este carácter divergente da procura faz com que a pesquisa de novidade não esteja sujeita a alguns problemas comuns na evolução artificial, tal como a convergência prematura e a deceção da função objetivo, pois na pesquisa de novidade o objetivo não tem inuência direta no processo evolutivo. A função objetivo diz-se decetiva quando ela conduz a população do algoritmo evolucionário para máximos locais, e como consequência não consegue atingir o objetivo desejado numa quantidade razoável de tempo. No algoritmo de pesquisa de novidade, a função objetivo é substituída por uma métrica que quantifica a novidade das soluções, baseando-se em caracterizações de comportamento que são obtidas para cada uma. A função que obtém estas caracterizações deve ser definida pelo humano que conduz o processo, usando conhecimento sobre o domínio e tendo em consideração a tarefa que se está a tentar desempenhar. A novidade de cada individuo é medida relativamente à população corrente e a um arquivo de indivíduos que representa o espaço de comportamentos que já foi anteriormente explorado. Desta forma, soluções que se situem em locais do espaço de comportamentos que estejam pouco explorados são consideradas mais aptas para seleção, e vice-versa, guiando o processo evolutivo em direção à diversidade comportamental. Contraintuitivamente, embora a pesquisa de novidade ignore totalmente o objetivo, ela revelou em vários casos um maior sucesso que a abordagem tradicional baseada em objetivos, especialmente em tarefas onde a função objetivo sofre de algum grau de deceção. Em trabalhos anteriores, a pesquisa de novidade foi aplicada com sucesso em tarefas de robótica não coletiva. Nesta tese, propomos a aplicação da pesquisa de novidade à evolução de controladores para robótica coletiva, uma área que tem sido dominada pelas técnicas de evolução tradicionais, focadas em objetivos. A motivação para a aplicação da pesquisa de novidade a esta área é o elevado nível de complexidade na robótica coletiva, resultante das relações entre os vários agentes do grupo, e entre os agentes e o seu ambiente. À medida que um sistema se torna mais complexo, a função objetivo é mais suscetível de se tornar decetiva, e a pesquisa de novidade é particularmente eficaz a lidar com a deceção da função objetivo. Ultrapassar o problema da deceção neste domínio é mais um passo em direção à geração automática de controladores para grupos de robôs capazes de resolver tarefas com a complexidade do mundo real. O carácter da pesquisa de novidade orientado à diversidade comportamental é também interessante neste domínio, pois permite a geração de uma diversidade de soluções para o mesmo problema, possivelmente revelando formas originais de auto-organização. No nosso trabalho, os controladores que são usados pelos grupos de robôs (todos os robôs do grupo usam o mesmo controlador) são redes neuronais recorrentes. O método escolhido para implementar o processo neuro-evolutivo foi o NEAT. A pesquisa de novidade é implementada sobre o NEAT, da forma como foi descrito acima. O NEAT é um método neuro-evolutivo que modifica tanto os pesos das ligações da rede, como a sua estrutura, podendo adicionar e remover nós e ligações. Começa com um conjunto de redes neuronais simples, completamente ligadas e sem nós intermédios, e vai gradualmente complexificando as redes neuronais, à medida que se verifique vantajoso, podendo levar à evolução de comportamentos gradualmente mais complexos. Para conduzir o estudo descrito nesta tese, foi seguida uma abordagem experimental, através da realização de ensaios evolucionários com diferentes técnicas evolucionárias, parâmetros, e tarefas. Em cada ensaio foram recolhidas informações e métricas detalhadas de forma a facilitar a compreensão das dinâmicas evolucionárias. Para a execução dos ensaios evolucionários, foi desenvolvida uma nova aplicação, baseada num simulador de robótica existente e numa implementação do NEAT. A aplicação é altamente modular, permitindo a definição de novos ambientes, robôs, métodos evolucionários, entre outros, sem ter que modificar código fonte existente. O primeiro passo do nosso trabalho consistiu em aplicar o algoritmo original de pesquisa de novidade à evolução de controladores para um grupo de robôs que deve executar uma tarefa de agregação. Nesta tarefa (amplamente estudada em trabalhos anteriores), os robôs são colocados em posições aleatórias dentro de uma arena fechada, e têm como objetivo formar um único agregado compacto, em qualquer ponto da arena. A tarefa é dificultada por uma arena de grandes dimensões e robôs com sensores de curto alcance. Foram realizadas experiências com a pesquisa de novidade usando três diferentes caracterizações de comportamento: uma altamente correlacionada com o objetivo, outra pouco correlacionada, e finalmente a combinação das duas. Foi também experimentada a evolução tradicional guiada por objetivos. De seguida, é experimentada a aplicação da pesquisa de novidade a uma tarefa de gestão coletiva de energia, em que os robôs gastam energia ao longo do tempo e devem coordenar-se para permitir o acesso periódico à única estacão de recarga, de modo a sobreviverem. São definidas duas variantes desta tarefa, uma em que os robôs gastam sempre a mesma quantidade de energia ao longo do tempo, e outra em que a quantidade de energia despendida depende da velocidade dos robôs. Na primeira variante, a função objetivo consegue guiar eficazmente a população em direção ao objectivo. Na segunda variante, a função objetivo é claramente decetiva, e conduz a população para máximos locais muito prematuros. Foram também experimentadas duas caracterizações comportamentais distintas na pesquisa de novidade: uma caracterização curta, altamente relacionada com o objetivo, e outra caracterização expandida, com algumas dimensões não relacionadas com o objetivo. Os resultados destas experiências revelam que a pesquisa de novidade pode ser um método eficaz para evolução de controladores para robótica coletiva. A pesquisa de novidade mostrou ser eficaz em ultrapassar a deceção da função objetivo, evitando com sucesso os máximos locais. Foi particularmente bem sucedida na inicialização da evolução, evitando a convergência prematura e atingindo elevados valores de fitness cedo na evolução. Foram estabelecidas comparações detalhadas entre a pesquisa de novidade e o método evolutivo tradicional, baseado em objetivos. Em configurações onde a deceção da função objetivo não era um problema, a pesquisa de novidade obteve um desempenho semelhante à evolução guiada por objetivos, em termos dos valores de fitness das soluções evoluídas. Por outro lado, em configurações onde a função objetivo era decetiva, a pesquisa de novidade revelou-se claramente superior. Os resultados também mostram que a pesquisa de novidade consegue evoluir soluções com redes neuronais mais simples, em comparação com a evolução guiada por objetivos. Os nossos resultados representam uma contribuição relevante para o domínio da robótica coletiva evolucionaria, pois os trabalhos anteriores revelam dificuldades em evoluir grupos de robôs capazes de desempenhar tarefas ambiciosas. As experiências sugerem que a evolução de comportamentos coletivos é especialmente suscetível à deceção da função objetivo, e como tal a pesquisa de novidade revela-se como uma promissora alternativa para ultrapassar esta dificuldade, e conseguir a evolução de comportamentos coletivos mais ambiciosos. Os resultados também revelaram que a pesquisa de novidade pode ser utilizada para descobrir uma ampla diversidade de formas de auto-organização. A procura de diversidade em robótica coletiva é um tópico relevante porque tipicamente existe um grande leque de possibilidades de comportamentos, resultante das possíveis interações entre os vários robôs do grupo, e entre os robôs e o ambiente. Procurar ativamente estas possibilidades pode levar a formas inesperadas de auto-organização e diferentes soluções para o mesmo problema. Por exemplo, nas experiências com a tarefa de agregação, a pesquisa de novidade evoluiu um tipo de comportamentos de agregação que não é descrito no trabalho relacionado, mas que pode ser encontrado no mundo natural. Estas experiências forneceram também alguma compreensão sobre como devem ser construídas as caracterizações comportamentais a usar na pesquisa de novidade. Mostrámos que combinar várias medidas pode ser uma forma de aumentar o desempenho da pesquisa de novidade. No entanto, deve-se evitar acrescentar à caracterização do comportamento dimensões que estejam pouco relacionadas com a tarefa que se está a tentar resolver. Neste caso, os resultados mostraram que a pesquisa de novidade pode começar a focar-se em zonas do espaço de comportamentos que não são relevantes para a solução da tarefa. Para visualizar e analisar espaços de comportamentos de elevada dimensionalidade, foram utilizados mapas de Kohonen auto-organizados. Esta técnica de visualização mostrou ser útil para uma melhor compreensão da dinâmica evolucionária na pesquisa de novidade. Como referido acima, os resultados mostraram que a pesquisa de novidade pode ter dificuldade em encontrar boas soluções em espaços de comportamentos que tenham dimensões não relacionadas com o objetivo. Para ultrapassar este problema, estendemos o nosso estudo para variantes da pesquisa de novidade que combinam a diversidade comportamental com a função objetivo. Propomos um novo método para combinar a pesquisa de novidade com os objetivos, chamado Progressive Minimal Criteria Novelty Search (PMCNS). Este método restringe progressivamente o espaço de comportamentos, através da definição de um limiar de fitness que os indivíduos devem superar para serem selecionados para reprodução. Este limiar é dinâmico, começando sem impacto e aumentando progressivamente à medida que a população se vai aproximando do objetivo. Para avaliar este novo método, foram realizadas experiências com as tarefas de agregação e gestão coletiva de energia, já apresentadas anteriormente. O PMCNS foi comparado com outro método bem sucedido, onde a avaliação de cada individuo consiste numa combinação linear dos seus valores de fitness e novidade. Os resultados mostram que o PMCNS é um método eficaz em direcionar a exploração do espaço de comportamentos para as zonas associadas a soluções de elevada qualidade, sem comprometer a diversidade que é descoberta pela pesquisa de novidade, e conseguindo na mesma ultrapassar a deceção da função objetivo. O desempenho do PMCNS foi superior a todos os outros métodos testados.Novelty search is a recent artificial evolution technique that challenges the traditional evolutionary approach. The main idea behind novelty search is to reward the novelty of solutions instead of progress towards a fixed goal, in order to avoid premature convergence and deception. Deception occurs in artificial evolution when the objective-function leads the population to local maxima, failing to reach the desired objective. In novelty search, there is no pressure to evolve better solutions, only pressure to evolve solutions different from the ones seen so far, thus avoiding the potential deceptiveness of an objective-function. In previous works, novelty search has been applied with success to single robot system. In this thesis, we use novelty search together with NEAT to evolve neuro-controllers for homogeneous swarms of robots. The aim of this approach is to facilitate the achievement of more ambitious objectives through artificial evolution, and in the end contribute towards the evolution of robotic swarms capable of taking on complex, real-world tasks. Our empirical study is conducted in simulation and uses two common swarm robotics tasks: aggregation, and sharing of an energy recharging station. Our results show that novelty search is capable of overcoming deception, and is notably effective in bootstrapping the evolution. In non-deceptive setups, novelty search achieved fitness scores similar to fitness-based evolution. Novelty search could evolve a broad diversity of solutions to the same problem, unveiling interesting forms of self-organization. Our study also encompasses variants of novelty search that combine novelty with objectives, in order to combine the exploratory character of novelty search with the exploratory character of objective-based evolution. We propose Progressive Minimal Criteria Novelty Search (PMCNS), a novel method for combining novelty and objectives, where the exploration of the behavior space is progressively restricted to zones of increasing fitness scores. We show that PMCNS can improve the fitness scores of the evolved solutions, without compromising the diversity of behaviors. Overall, our study shows that novelty search is a promising alternative for the evolution of controllers for robotic swarms

    Embodied Evolution in Collective Robotics: A Review

    Full text link
    This paper provides an overview of evolutionary robotics techniques applied to on-line distributed evolution for robot collectives -- namely, embodied evolution. It provides a definition of embodied evolution as well as a thorough description of the underlying concepts and mechanisms. The paper also presents a comprehensive summary of research published in the field since its inception (1999-2017), providing various perspectives to identify the major trends. In particular, we identify a shift from considering embodied evolution as a parallel search method within small robot collectives (fewer than 10 robots) to embodied evolution as an on-line distributed learning method for designing collective behaviours in swarm-like collectives. The paper concludes with a discussion of applications and open questions, providing a milestone for past and an inspiration for future research.Comment: 23 pages, 1 figure, 1 tabl

    Neuro-evolution search methodologies for collective self-driving vehicles

    Get PDF
    Recently there has been an increasing amount of research into autonomous vehicles for real-world driving. Much progress has been made in the past decade with many automotive manufacturers demonstrating real-world prototypes. Current predictions indicate that roads designed exclusively for autonomous vehicles will be constructed and thus this thesis explores the use of methods to automatically produce controllers for autonomous vehicles that must navigate with each other on these roads. Neuro-Evolution, a method that combines evolutionary algorithms with neural networks, has shown to be effective in reinforcement-learning, multi-agent tasks such as maze navigation, biped locomotion, autonomous racing vehicles and fin-less rocket control. Hence, a neuro-evolution method is selected and investigated for the controller evolution of collective autonomous vehicles in homogeneous teams. The impact of objective and non-objective search (and a combination of both, a hybrid method) for controller evolution is comparatively evaluated for robustness on a range of driving tasks and collection sizes. Results indicate that the objective search was able to generalise the best on unseen task environments compared to all other methods and the hybrid approach was able to yield desired task performance on evolution far earlier than both approaches but was unable to generalise as effectively over new environments

    Fault Recovery in Swarm Robotics Systems using Learning Algorithms

    Get PDF
    When faults occur in swarm robotic systems they can have a detrimental effect on collective behaviours, to the point that failed individuals may jeopardise the swarm's ability to complete its task. Although fault tolerance is a desirable property of swarm robotic systems, fault recovery mechanisms have not yet been thoroughly explored. Individual robots may suffer a variety of faults, which will affect collective behaviours in different ways, therefore a recovery process is required that can cope with many different failure scenarios. In this thesis, we propose a novel approach for fault recovery in robot swarms that uses Reinforcement Learning and Self-Organising Maps to select the most appropriate recovery strategy for any given scenario. The learning process is evaluated in both centralised and distributed settings. Additionally, we experimentally evaluate the performance of this approach in comparison to random selection of fault recovery strategies, using simulated collective phototaxis, aggregation and foraging tasks as case studies. Our results show that this machine learning approach outperforms random selection, and allows swarm robotic systems to recover from faults that would otherwise prevent the swarm from completing its mission. This work builds upon existing research in fault detection and diagnosis in robot swarms, with the aim of creating a fully fault-tolerant swarm capable of long-term autonomy

    Cooperative coevolution of morphologically heterogeneous robots

    Get PDF
    Morphologically heterogeneous multirobot teams have shown significant potential in many applications. While cooperative coevolutionary algorithms can be used for synthesising controllers for heterogeneous multirobot systems, they have been almost exclusively applied to morphologically homogeneous systems. In this paper, we investigate if and how cooperative coevolutionary algorithms can be used to evolve behavioural control for a morphologically heterogeneous multirobot system. Our experiments rely on a simulated task, where a ground robot with a simple sensor-actuator configuration must cooperate tightly with a more complex aerial robot to find and collect items in the environment. We first show how differences in the number and complexity of skills each robot has to learn can impair the effectiveness of cooperative coevolution. We then show how coevolution’s effectiveness can be improved using incremental evolution or novelty-driven coevolution. Despite its limitations, we show that coevolution is a viable approach for synthesising control for morphologically heterogeneous systems.info:eu-repo/semantics/publishedVersio

    Evolution of collective behaviors for a real swarm of aquatic surface robots

    Get PDF
    Swarm robotics is a promising approach for the coordination of large numbers of robots. While previous studies have shown that evolutionary robotics techniques can be applied to obtain robust and efficient self-organized behaviors for robot swarms, most studies have been conducted in simulation, and the few that have been conducted on real robots have been confined to laboratory environments. In this paper, we demonstrate for the first time a swarm robotics system with evolved control successfully operating in a real and uncontrolled environment. We evolve neural network-based controllers in simulation for canonical swarm robotics tasks, namely homing, dispersion, clustering, and monitoring. We then assess the performance of the controllers on a real swarm of up to ten aquatic surface robots. Our results show that the evolved controllers transfer successfully to real robots and achieve a performance similar to the performance obtained in simulation. We validate that the evolved controllers display key properties of swarm intelligence-based control, namely scalability, flexibility, and robustness on the real swarm. We conclude with a proof-of-concept experiment in which the swarm performs a complete environmental monitoring task by combining multiple evolved controllers.info:eu-repo/semantics/publishedVersio
    corecore