/MineRL_HCI

Primary LanguageJupyter Notebook

Can intelligent agents play Minecraft? Developing a hierarchical reinforcement learning agent to play Minecraft.

Note:

This study is a collaborative project between Max Planck Institute (Germany) and Dr. Shihan Wang (Utrecht University). and it is under supervision of Dr. Shihan Wang.

MineRL HCI assistant

image

1. Subtask recommendation

 a. Assigning subtask for human-player.
 b. Subtask could be the chain in HDQfD or Markov-controller or hand-crafted chain.
 c. Potential research: Comparing Human-player performance between different provided chains.

2. Action recommendation

 a. Assigning action in the subtask for human-player.
 b. For action, things might be a bit complex.
 c. 10 basic actions: 
    Move -- [forward, back, left, right]  
    Camera -- [up, down, left, right] 
    Combo -- [forward+jump] 
    Attack 
 d. Special actions:
    Craft -- [Planke, stick, crafting_table, wooden_pickaxe, etc]: converting raw material
    Place -- [item]: placing item(s)
    NearbyCraft -- [item]: Craft item(s) when something nearby
    Equip -- [item]

MineRL intelligent agent:

The MineRL intelligent agent is based on HDQfD (forgER) algorithm, see [Paper] [Github].
Notes:

  • We cannot reproduce the results in the paper, could be caused by multiple reasons, e.g: 1.dataset; 2.Bugs;
  • We changed some parts of the algorithm to improve the performance.
  • You will find more detals in the forger folder.

MineRL Markov Model:

In order to find out how subtask state transitions are transfered, we implemented a Markov Model to analyze them. We first split the whole IronPickaxe dataset to different subtasks, e.g: Start, Log, Planks, Crafting tables etc, to extract the subtasks. After that, to keep consistency, we filtered some poor quality trajectories. Finally, the most greedy subtask path was generated by our Markov model..