  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.
