Examples List

September 25, 2018 ยท View on GitHub

Our repo contains some examples which shows how to use all of our features. They are located under Assets/UnityTensorflow/Examples.

Some of the examples are for our research purpose therefore do not actually work yet.

Below is a summary of those examples.

IntelligentPool

IntelligentPool

This environment is one of the initial environment we used as test scene for educational purpose. We tried to apply different methods on it. Some of those are working some others are not.

Please go HERE for the complete description and analysis of it. You can skip this one if you are just looking for simple examples.

3DBall

3DBall

This is just a copy of the Unity ML-Agents' 3DBall environment, with modifications for in editor training tutorial.

BananaCollectors

BananaCollectors

This is just a copy of the Unity ML-Agents' Banana Collectors, with modifications for in editor training tutorial.

  • Scenes:
    • Banana: Basic PPO example. It is also an example of using discrete action branching.

GAN2DPlane

GAN2DPlane

A simple demo of how to use GAN directly.

Click StartTraining to generate training data and start training.

Click UseGAN to generate data from GAN(blue).

GridWorld

GridWorld

This is just a copy of the Unity ML-Agents' GridWorld, with modifications for in editor training tutorial.

  • Scenes:
    • GridWorld: Basic PPO example. It uses visual observation and discrete action space with masking.

Maze

Maze

A game where the agent(yellow) has to reach to the destination(green) and avoid the obstables(red).
  • Discrete action space: Up, Down, Left, Right.
  • Algorithm: PPO.
  • Scenes:
    • MazePPO: Vector Observation with size of the map(36 by default). Each color has different value.
    • MazePPOVisual: Visual Observation of size 32x32, colored.

Pole

Pole

A 2D physcis based game where the agent need to give a torque to the pole to keep it up.
  • Continuous action space: torque.
  • Algorithm: PPO.
  • Scenes:
    • Pole: Vector Observation of size 2. Angular velocity and curren angle.
    • PoleVisual: Visual Observation. Game is modified so that the graphics shows the angular velocity.

Pong

Pong

Classic Pong game. Two agents play with each other in this game.

  • Observation: Vector of size 6. the y positions of the agent itself and the opponent. Position and velocity of the ball. The observations are transformed so that each agent feels they are the agent at the left.
  • Scenes:
    • PongRL: - Use PPO algorithm. - Discrete action space: up, stay, down.
    • PongRLWithSLInit: - Use PPO algorithm. However, the PPO model is initailize with weights trained from Supervised Learning. This might make the training faster to reach the best result. - Discrete action space: up, stay, down.
    • PongSL:
      • Use supervised learning. The left agent uses manual control for collecting data. Once enough data is collected, it will start to supervised learning to train the brain.
      • Discrete action space: up, stay, down.
    • PongSLGAN:
      • Use supervised learning. But the learning model is GAN instead of regular one.
      • Continuous action space: vertical velocity.