Skip to content
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
31 lines (17 sloc) 1.67 KB


Code for Yonadav Shavit's Masters Thesis, "Learning Environment Representations from Sparse Signals"

The code was written for Tensorflow 1.0 or later, and the system heavily utilizes Tensorboard for visualizing learned embeddings.

Learning architecture

For an in-depth explanation of the algorithm, see this blog post.

Table of Contents is the primary file for running experiments, including training and visualizing environment models. Call python -h for the possible pre-configured experiments you can run.

model.EnvModel defines the environment-simulating network architecture.

modellearner.ModelLearner wraps EnvModel and implements functions to gather environment training data and train the model. contains a large set of possible experiment configurations, and a simple interface for defining new experiments. defines different RL agents utilizing the learned models, including a BFS-based planner and a random-rollout planner. lets you compare an agent's learned environment representation to the real environment. It does this by letting you take actions and displaying side-by-side the true state and the agent's best guess of the current state.,, and generate the respective figures for Chapter 3, Chapter 4, and the final model-based agents' performance.

Example learned latent space

(A learned environment embedding)

You can’t perform that action at this time.