Skip to content

MineRL Competition for Sample Efficient Reinforcement Learning - Python Package

License

Notifications You must be signed in to change notification settings

iglu-contest/minerl

 
 

Repository files navigation

IGLU patch

This repo contains Minerl package with patched Malmo with custom blocks and behaviour added.

The MineRL Python Package

Build Status Dev Build status Downloads PyPI version "Open Issues" GitHub issues by-label Discord

Python package providing easy to use gym environments and a simple data api for the MineRLv0 dataset.

To get started please read the docs here!

Installation

With JDK-8 installed run this command

pip3 install --upgrade minerl

Basic Usage

Running an environment:

import minerl_patched
import gym
env = gym.make('MineRLNavigateDense-v0')


obs = env.reset()

done = False
while not done:
    action = env.action_space.sample() 
 
    # One can also take a no_op action with
    # action =env.action_space.noop()
    
 
    obs, reward, done, info = env.step(
        action)

Sampling the dataset:

import minerl_patched

# YOU ONLY NEED TO DO THIS ONCE!
minerl_patched.data.download('/your/local/path')

data = minerl_patched.data.make(
    'MineRLObtainDiamond-v0',
    data_dir='/your/local/path')

# Iterate through a single epoch gathering sequences of at most 32 steps
for current_state, action, reward, next_state, done \
    in data.sarsd_iter(
        num_epochs=1, max_sequence_len=32):

        # Print the POV @ the first step of the sequence
        print(current_state['pov'][0])

        # Print the final reward pf the sequence!
        print(reward[-1])

        # Check if final (next_state) is terminal.
        print(done[-1])

        # ... do something with the data.
        print("At the end of trajectories the length"
              "can be < max_sequence_len", len(reward))

Visualizing the dataset:

viewer|540x272

# Make sure your MINERL_DATA_ROOT is set!
export MINERL_DATA_ROOT='/your/local/path'

# Visualizes a random trajectory of MineRLObtainDiamondDense-v0
python3 -m minerl_patched.viewer MineRLObtainDiamondDense-v0

MineRL Competition

If you're here for the MineRL competition. Please check the main competition website here.

About

MineRL Competition for Sample Efficient Reinforcement Learning - Python Package

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 70.6%
  • Python 26.9%
  • C 1.4%
  • CMake 0.4%
  • Shell 0.3%
  • Batchfile 0.2%
  • Other 0.2%