Giter Site home page Giter Site logo

bikaylee / pixel-jump Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 36.99 MB

Deep Reinforcement Project in Malmo - UCI CS175 Fall 2020

Home Page: https://bikaylee.github.io/Pixel-Jump/

Python 100.00%
physics rllib malmo machine-learning ppo deep-reinforcement-learning openai-gym projectile-motion 2020

pixel-jump's Introduction

CS175 Fall 2020

Pixel Jump

Pixel Jump is a gameplay simulation in Minecraft that the agent will perform physical jumps from one platform to another with user-control jump simulation based on projectile motion in 3D. The purpose of this project is to let the agent observe his surrounding platforms and then pick an initial velocity from a continuous action space to ensure that the agent can land on various positions of the next platform and hopefully jump onto the glass (goal) block for greater reward.


Our agent James is trapped by a swamp of lava. In order to escape, he must jump through a variety of platforms without falling to the lava. Our job is to improve his jumping skills by training him in his “mind palace” because he only lives once.

Website

https://bikaylee.github.io/Pixel-Jump/.

Basics

  • Classical Mechanics
  • Deep Reinforcement Learning
  • Proximal Policy Optimization

Level of Difficulty

all maps are randomly generated for each mission

  1. No degree, complete 3x3 platform, glass always centered
  2. No degree, complete 3x3 platform, glass randomly at x = 1.5
  3. Restricted degree, complete 3x3 platform, glass randomly at any block
  4. Restricted degree, incomplete 3x3 platform, glass may randomly be at any block
  5. Wider degree, incomplete 3x3 platform, glass may randomly be at any block

Reward System

Glass Block of Platform: +100
Other Block Type of Platform: < 90, based on the relative distance to glass block
Lava: < -10, based on the relative distance to glass block

Observation Space

Layers that store information about the next platform with one layer containing all available blocks and the other containing only glass blocks. Also, information of the current platforms or other platforms besides the next platform are excluded.

First Layer: 5 x 10 storing all available blocks information and air
Second Layer: 5 x 10 storing only glass block information and air

Game Demo GIF


References

Malmo

Physics

Machine Learning Algorithm

Tools

pixel-jump's People

Contributors

bikaylee avatar hashiong avatar wencongshe avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.