Papers
Topics
Authors
Recent
Search
2000 character limit reached

EvoCraft: A New Challenge for Open-Endedness

Published 8 Dec 2020 in cs.AI | (2012.04751v1)

Abstract: This paper introduces EvoCraft, a framework for Minecraft designed to study open-ended algorithms. We introduce an API that provides an open-source Python interface for communicating with Minecraft to place and track blocks. In contrast to previous work in Minecraft that focused on learning to play the game, the grand challenge we pose here is to automatically search for increasingly complex artifacts in an open-ended fashion. Compared to other environments used to study open-endedness, Minecraft allows the construction of almost any kind of structure, including actuated machines with circuits and mechanical components. We present initial baseline results in evolving simple Minecraft creations through both interactive and automated evolution. While evolution succeeds when tasked to grow a structure towards a specific target, it is unable to find a solution when rewarded for creating a simple machine that moves. Thus, EvoCraft offers a challenging new environment for automated search methods (such as evolution) to find complex artifacts that we hope will spur the development of more open-ended algorithms. A Python implementation of the EvoCraft framework is available at: https://github.com/real-itu/Evocraft-py.

Citations (28)

Summary

  • The paper introduces EvoCraft, a novel framework that leverages Minecraft to study open-ended evolution through automated and interactive experiments.
  • It details a Python API and gRPC-based interface that automates block manipulation to evolve increasingly complex structures within the game.
  • Experimental results show promise in evolving static artifacts but highlight significant challenges in creating autonomous moving machines.

EvoCraft: A New Challenge for Open-Endedness

Introduction

The paper "EvoCraft: A New Challenge for Open-Endedness" (2012.04751) introduces EvoCraft, a novel framework for studying open-endedness through artificial evolution in Minecraft. The research aims to create a competitive environment for evolving complex artifacts, addressing the gap left by previous environments in artificial life simulations. EvoCraft leverages Minecraft's flexibility, where players can construct intricate structures like actuated machines, by interfacing through a Python API. This facilitates automated and interactive evolutionary experiments, setting a stage for significant advances in open-ended algorithm development. The authors argue that EvoCraft provides a unique platform to overcome the limitations of existing alife worlds by allowing the construction of almost any conceivable structure, thanks to Minecraft's intricate building blocks and redstone components. Figure 1

Figure 1: A selection of existing OOE frameworks.

Framework and Implementation

EvoCraft is implemented as a mod for Minecraft, enabling programmatic manipulation of the game environment through an easy-to-use API. The API, built on gRPC, allows extensive interaction with a running Minecraft server, providing methods to place and track blocks efficiently. This setup streamlines experiments using evolutionary algorithms by automating the manipulation of blocks, promoting the construction of increasingly complex structures within the game world. EvoCraft supports interactive and automated evolution, providing baseline results for both methods. The research highlights the ability to grow structures towards predefined targets effectively. However, it also reveals the challenge in evolving a machine that autonomously moves, indicating areas where current algorithms struggle. Figure 2

Figure 2

Figure 2

Figure 2

Figure 2: Examples of human-built structures in Minecraft.

Experimental Results and Challenges

Initial experiments demonstrate EvoCraft's potential and challenges. In interactive evolution, humans guide the evolutionary process by selecting structures they find interesting. Automated experiments include growing towers towards targets and evolving machines meant to move. The results are promising for structural goals but reveal persistent difficulties in automating machine movement, underscoring limitations in traditional fitness-based approaches. The inability to evolve a perpetual moving machine highlights the need for more advanced algorithms, potentially integrating quality diversity and novelty search to exploit EvoCraft's full potential. Figure 3

Figure 3: A minimal flying machine (created by code), showcasing the difficulty of evolving movement in structures.

Implications and Future Research

The EvoCraft framework broadens the scope for research into open-ended evolution, providing a sandbox for pioneering AI methodologies. Future explorations may involve integrating quality diversity algorithms which aim at maximizing diversity among evolved artifacts. EvoCraft also poses a unique opportunity to apply machine learning strategies, like reinforcement learning and self-play, to achieve open-endedness in evolutionary algorithms. Moreover, advancements in genetic encodings could lead to the discovery of novel artifacts and behaviors within Minecraft, prompting the development of encoding strategies that maintain a library of complex, functional components like CPUs or moving parts. Figure 4

Figure 4: Response times when spawning blocks using the EvoCraft API.

Conclusion

EvoCraft represents a significant contribution to AI research, facilitating the study of open-endedness through an engaging and flexible environment. While initial results demonstrate the framework's potential, they also emphasize the need for novel algorithms to fully exploit EvoCraft's capabilities. Future research will likely focus on integrating innovative search methods to enable the discovery of complex artifacts and improve the capacity for open-ended evolution. EvoCraft stands as a promising platform for AI experimentation, encouraging advancements in both theoretical understanding and practical algorithm development within the artificial life field.

Paper to Video (Beta)

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Collections

Sign up for free to add this paper to one or more collections.