#AI – MineRL, play #Minecraft to benefit science!

Hi !

I’ve write a couple of time about project Malmo and Minecraft, so if you like Minecraft and Artificial Intelligence, MineRL will make your day. Let’s start with some basis:

MineRL is a large-scale dataset on Minecraft of seven different tasks, which highlight a variety of research challenges including open-world multi-agent interactions, long-term planning, vision, control, navigation, and explicit and implicit subtask hierarchies.

There are 2 main ways to be involved with MineRL, entering the AI (DL) competition, or playing Minecraft (to create more source data to train and test models!)

In the play more, MineRL want to solve Minecraft using state-of-the-art Machine Learning! To do so, MineRL is creating one of the largest datasets of recorded human player data. The dataset includes a set of tasks which highlights many of the hardest problems in modern-day Reinforcement Learning: sparse rewards and hierarchical policies.

There is plenty of information and details on the main website, and as soon as I finish some of my current work and personal projects, I’ll for sure spend more time here!

More information http://minerl.io/about/

Happy coding!

Greetings @ Toronto

El Bruno

#AI – MARLO 2018, Contest using Reinforcement Learning on Minecraft

01 Marlo 2018

Buenas!

A while ago I wrote a series of posts about “Artificial Intelligence With Minecraft using Project Malmo“. Minecraft is an excellent playground To test AI experiences, and competencies like MARMO are excellent for learning and to drive the AI community.

Learning to Play: The Multi-Agent Reinforcement Learning in MalmO Competition (“Challenge”) is a new challenge that proposes research on Multi-Agent Reinforcement Learning using multiple games. Participants would create learning agents that will be able to play multiple 3D games as defined in the MalmO platform. The aim of the competition is to encourage AI research on more general approaches via multi-player games. For this, the Challenge will consist of not one but several games, each one of them with several tasks of varying difficulty and settings. Some of these tasks will be public and participants will be able to train on them. Others, however, will be private, only used to determine the final rankings of the competition.

The competition has been open for a long time so that participants can know the environment, and will formally start on the 14th November At the University of Alberta, in Edmonton, Canada.

More information

Learning to Play: The Multi-Agent Reinforcement Learning in MalmÖ (MARLÖ) Competition

Greetings @ Toronto

El Bruno

#AI – MARLO 2018, Reinforcement Learning con Minecraft

01 Marlo 2018

Buenas!

Hace un tiempo escribí una serie de posts sobre “Artificial Intelligence con Minecraft utilizando Project Malmo”. Minecraft es un excelente playground para probar experiencias de AI, y competencias como MARMO son excelentes para aprender y para impulsar la comunidad de AI.

La competencia Malmo es un nuevo desafío que propone una investigación con Multi-Agent Reinforcement Learning utilizando juegos múltiples. Los participantes crean agentes de Minecraft para jugar múltiples juegos 3D como se define en la plataforma MalmO. El objetivo de la competencia es fomentar la investigación de IA sobre enfoques más generales a través de juegos multijugador.

El reto consistirá en no uno sino varios juegos, cada uno de ellos con varias tareas de diferente dificultad y configuración. Algunas de estas tareas serán públicas y los participantes podrán capacitarse en ellas. Otros, sin embargo, serán privados, y solo se utilizarán para determinar las clasificaciones finales de la competencia.

La competencia esta abierta desde hace tiempo para que los participantes puedan conocer el entorno, y se dará inicio formalmente el 14 de Noviembre en la Universidad de Alberta, en Edmonton, Canada.

Mas información en

Learning to Play: The Multi-Agent Reinforcement Learning in MalmÖ (MARLÖ) Competition

Saludos @ Toronto

El Bruno

#Event – Materials used on the session: #Minecraft for developers – Learning to code and advanced #AI

Hi!

Yesterday night, I had an amazing time with my friends from Canada Technology Triangle .Net User Group, so now it is the time to share the materials I used during the presentation. Let’s start with the slides

Source Code (link)

All the references and links of the materials that you comment during the session can be seen in the slides. And I have a pending task to improve the way I present Project Malmo 😀

Happy coding!

Greetings @ Burlington

El Bruno

Refereces

#Event – Materiales del evento: #Minecraft for developers – Learning to code and advanced #AI

Buenas!

Después de pasar un excelente rato con los amigos de Canada Technology Triangle .Net User Group  llega el momento de compartir los materiales que utilice durante la sesión. Comenzando por las slides

Y el código fuente que se puede descargar desde aquí (link)

Todas las referencias y links de los materiales que comente durante la sesión se pueden ver en las slides. Y tengo como tarea pendiente mejorar la forma en la que presento Project Malmo 😀

Happy coding!

Saludos @ Burlington

El Bruno

Refereces

#VS2017 – Commands with the basic movements for an #Minecraft Agent with #ProjectMalmo

Hi!

Today I will share how to perform 2 basic Agent movements in Minecraft

  • Move along
  • Turn

The code example at the end of the post, is part of a ConsoleApp, which once connected to the Minecraft host, controls the movement of the current player / agent. The script advances a series of steps, then turns and returns to the advance mode again and again. Animation sample.

2017 11 19 Malmo Movements 01.gif

The basic set of commands are

  • Move > “move {1}”
  • Turn > “turn {1}”

Where the first parameter is an integer between 0 and 1 that defines the movement to be performed. These 2 commands are the minimum we can use in scenarios such as a labyrinth, so it makes sense that the next post talk about it.

Sample Project en GitHub link

Greetings @ Toronto

El Bruno

References

 

#VS2017 – Comandos con los movimientos básicos en un Agente #Minecraft con #ProjectMalmo

Buenas!

Hoy mostrare como realizar 2 movimientos básicos con un Agente en Minecraft

  • Avanzar
  • Girar

El ejemplo de código al final del post, representa una ConsoleApp, que una vez conectado al host Minecraft, adelanta una serie de pasos, luego gira y vuelve a adelantar. Ejemplo en modo gráfico.

2017 11 19 Malmo Movements 01.gif

Pues bien, los comandos que usamos son

  • Avanzar > “move {1}”
  • Girar > “turn {1}”

Donde el primer parámetro es un entero entre 0 y 1 que define el movimiento a realizar. Estos 2 comandos son los mínimos que podemos utilizar en escenarios como por ejemplo un laberinto, así que tiene sentido que el siguiente post hable de eso.

Sample Project en GitHub link

Saludos @ Toronto

El Bruno

References

 

#VS2017 – #Minecraft missions options in Xml format #ProjectMalmo

Hi!

In this post I will explain some of the configurations and options we can define in the mission files. The sample file is at the end of the post.

  • Line 21 defines the name of the Agent
  • The <AgentStart /> element defines the initial position of the agent.

The following image shows how to define a high value on the Y axis,
because our agent dies a few seconds later

 

2017 11 14 Malmo 02

Another interesting element is [ServerSection // ServerInitialCondition] where we can define the climate of the mod (line 12). The supported values ​​are normal, clear, rain and thunder.

My advice is to dedicate some time to understand Mission definition schema (see references) and know a little about the options offered by Minecraft.

For example, in the section [Mission // ServerSection // ServerInitialConditions // Time // StartTime] it is possible to define the time of the day in which the mission will start.

The possible values ​​are measured based on this table

 

  • 0 = dawn
  • 6000 = noon
  • 18000 = midnight

Sample Project en GitHub link

Greetings @ Toronto

El Bruno

References

 

#VS2017 – Algunas opciones para misiones en #Minecraft en formato Xml #ProjectMalmo

Buenas!

Hoy voy a explicar algunas de las configuraciones que Podemos definir en los archivos de mision. El ejemplo de archivo esta al final. Por ejemplo:

  • La línea 21 define el nombre del Agente
  • El elemento <AgentStart/> define la posición inicial del agente.

La siguiente imagen muestra como al definir un valor alto en el eje Y, pues nuestro agente muere a los pocos segundos

2017 11 14 Malmo 02

Otro elemento interesante es [ServerSection // ServerInitialCondition] donde podemos definir el clima del mod (línea 12). Los valores soportados son normal, clear, rain y thunder.

Las opciones son muchas, lo mejor es dedicarle un poco de tiempo a la definición de Mission (ver referencias) y conocer un poco las opciones que nos ofrece Minecraft.

Por ejemplo, en la sección [Mission // ServerSection // ServerInitialConditions // Time // StartTime] es posible definir la hora del dia en la que se iniciara la misión.

Los posibles valores se miden en base a esta tabla

  • 0 = dawn
  • 6000 = noon
  • 18000 = midnight

Sample Project en GitHub link

Saludos @ Toronto

El Bruno

References

 

#VS2017 – Sample ConsoleApp to initialize missions in #Minecraft with Xml #ProjectMalmo

Good!

Before continuing to analyze the sections that have an xml file with the definition of a mission in Minecraft, I will share a small ConsoleApp sample project which creates from scratch the necessary elements to interact in a Minecraft mission.

The function that initializes the mission from a file is

In line 4 we can see the definition in plain xml mode can be used in the MissionSpec() constructor. From this moment, the mission is created with the parameters of the file.

It is possible, once created about writing some values, as for example in line 5 where I define the video quality with which the mission will be executed.

 

Sample Project en GitHub link

Greetings @ Toronto

El Bruno

References