Biomaker CA: um projeto de Criador de Biomas utilizando Autômatos Celulares
Biomaker CA: a Biome Maker project using Cellular Automata
July 18, 2023
Autores: Ettore Randazzo, Alexander Mordvintsev
cs.AI
Resumo
Apresentamos o Biomaker CA: um projeto Biome Maker utilizando Autômatos Celulares (CA). No Biomaker CA, a morfogênese é um elemento central, e pequenas sementes precisam crescer em organismos semelhantes a plantas para sobreviver em um ambiente com escassez de nutrientes e, eventualmente, se reproduzir com variação, de modo que um bioma sobreviva por longos períodos. Simulamos biomas complexos por meio de regras de CA em grades 2D e paralelizamos todos os cálculos em GPUs utilizando o framework Python JAX. Mostramos como este projeto permite a criação de diversos tipos de ambientes e leis da 'física', juntamente com diferentes arquiteturas de modelos e estratégias de mutação. Analisamos ainda algumas configurações para demonstrar como agentes vegetais podem crescer, sobreviver, reproduzir-se e evoluir, formando biomas estáveis e instáveis. Em seguida, demonstramos como é possível meta-evoluir modelos para sobreviver em um ambiente hostil, seja por meio de meta-evolução de ponta a ponta ou por uma abordagem mais cirúrgica e eficiente, chamada meta-evolução em placa de Petri. Por fim, mostramos como realizar evolução interativa, onde o usuário decide como evoluir um modelo de planta de forma interativa e, em seguida, o implanta em um ambiente maior. Disponibilizamos o código-fonte do Biomaker CA em: https://tinyurl.com/2x8yu34s.
English
We introduce Biomaker CA: a Biome Maker project using Cellular Automata (CA).
In Biomaker CA, morphogenesis is a first class citizen and small seeds need to
grow into plant-like organisms to survive in a nutrient starved environment and
eventually reproduce with variation so that a biome survives for long
timelines. We simulate complex biomes by means of CA rules in 2D grids and
parallelize all of its computation on GPUs through the Python JAX framework. We
show how this project allows for several different kinds of environments and
laws of 'physics', alongside different model architectures and mutation
strategies. We further analyze some configurations to show how plant agents can
grow, survive, reproduce, and evolve, forming stable and unstable biomes. We
then demonstrate how one can meta-evolve models to survive in a harsh
environment either through end-to-end meta-evolution or by a more surgical and
efficient approach, called Petri dish meta-evolution. Finally, we show how to
perform interactive evolution, where the user decides how to evolve a plant
model interactively and then deploys it in a larger environment. We open source
Biomaker CA at: https://tinyurl.com/2x8yu34s .