Glen Berseth

I am an assistant professor at the University de Montreal and Mila. My research explores how to use deep learning and reinforcement learning to develop generalist robots.

I was a Postdoctoral Researcher at the Berkeley Artificial Intelligence Research (BAIR) working in the Robotic AI & Learning (RAIL) lab with Sergey Levine. My research combines deep learning and reinforcement learning on high-dimensional control problems. I received my PhD at the Department of Computer Science at the University of British Columbia in 2019 where I worked on reinforcement learning, machine learning and motion planning with Michiel van de Panne. I received my BSc degree in Computer Science from York University in 2012 and my MSc from York University under the supervision of Petros Faloutsos in 2014 for optimization and authoring crowd simulations. I have published in a wide range of areas including computer animation, machine learning and robotics and am a NSERC scholarship award winner. I have also worked at IBM (2012) and with Christopher Pal at ElementAI (2018). You can find a list of projects and publications here.

Interested in joining the lab?

Are you interested in the practical and theoretical challenges of creating generalist problem-solving robots? Please see this page to apply. I may not respond to emails.


  • Sep 2021: New paper accepted to CoRL on autonomous robot learning!
  • Sep 2021: New paper accepted to NeurIPS on surprise minimization in partially observed environments (paper coming soon)!
  • Sep 2021: I will be teaching a course on deep reinforcement learning for robotics in January 2022!
  • May 2021: I will be joining Mila and starting as an assistant professor at the University of Montreal in August 2021!
  • Apr 2021: Our research paper that will be presented at ICRA2021 on RL for bipedal robots was featured in MIT Technology Review
  • Mar 2021: Associate Editor for IROS 2021
  • Feb 2021: Two papers accepted to ICRA2021!
  • Jan 2021: SMiRL: Surprise Minimizing RL in Unstable Environments receives oral presentation at ICLR 2021 (top 1.8% of submitted papers)
  • Jan 2021: Two papers accepted to ICLR 2021
  • Jan 2021: Invited talk at IJCAI workshop Neuro-Cognitive Modeling of Humans and Environments
  • Aug 2020: Deep Integration of Physical Humanoid Control and Crowd Navigation receives best paper runner up at MIG2020
  • Sep 2019: Visual Imitation work featured in MIT CSAIL podcast
  • Feb 2019: Defended Ph.D. Thesis at the University of British Columbia under the supervision of Michiel van de Panne
  • Aug 2017: SIGGRAPH paper DeepLoco: Dynamic Locomotion Skills Using Hierarchical Deep Reinforcement Learning covered in the Popular Mechanics.
  • Mar 2017: Awarded NSERC PhD scholarship
  • May 2016: Modelling Dynamic Brachiation receives best poster award at Graphics Interfaces 2016
  • Mar 2016: Robust Space-Time Footsteps for Agent-Based Steering receives best short paper award at CASA 2016


Sun 03 October 2021
Thu 09 September 2021
Teaching: New course in Robot learning
Tue 10 November 2020
XT2: Training an X-to-Text Typing Interface with Online Learning from Implicit Feedback
Sun 08 November 2020
DisCo RL: Distribution-Conditioned Reinforcement Learning for General-Purpose Policies
Sat 10 October 2020
Deep Integration of Physical Humanoid Control and Crowd Navigation
Thu 13 August 2020
Ecological Reinforcement Learning
Thu 13 August 2020
Inter-Level Cooperation in Hierarchical Reinforcement Learning
Thu 12 March 2020
Morphology-Agnostic Visual Robotic Control
Tue 10 December 2019
SMiRL: Surprise Minimizing RL in Unstable Environments
Sat 12 October 2019
Contextual Imagined Goals for Self-Supervised Robotic Learning
Wed 02 October 2019
Interactive Architectural Design with Diverse Solution Exploration
Thu 20 June 2019
Gamification of Crowd-Driven Environment Design
Sat 25 May 2019
Visual Imitation with Reinforcement Learning using Recurrent Siamese Networks
Tue 25 September 2018
Feedback Control for Cassie with Deep Reinforcement Learning
Tue 25 September 2018
Model-Based Action Exploration for Learning Dynamic Motion Skills
Thu 05 April 2018
TerrainRL Sim
Tue 06 February 2018
Progressive Reinforcement Learning with Distillation for Multi-Skilled Motion Control
Wed 10 January 2018
Demystifying the Many Deep Reinforcement Learning Algorithms
Tue 14 November 2017
Evaluating and Optimizing Evacuation Plans for Crowd Egress
Fri 10 November 2017
Deep Rienforcement Learning: A course on the subject
Thu 25 May 2017
KL Divergence Regularization for RL
Sun 14 May 2017
DeepLoco: Dynamic Locomotion Skills Using Hierarchical Deep Reinforcement Learning
Sun 14 May 2017
Interfacing with Simulators for RL
Mon 14 November 2016
Towards Computer Assisted Crowd Aware Architectural Design
Sat 14 May 2016
Using synthetic crowds to inform building pillar placements
Sat 14 May 2016
Dynamic terrain traversal skills using reinforcement learning
Sat 14 May 2016
Modelling Dynamic Brachiation
Sat 14 May 2016
Terrain Adaptive Locomotion Skills using Deep Reinforcement Learning
Thu 14 April 2016
ACCLMesh: Curvature-Based Navigation Mesh Generation
Sat 21 November 2015
Basic Reinforcement Learning Example using Logistic Regression
Sun 25 October 2015
Using SWIG to wrap C++ for Python
Wed 21 October 2015
Animation/Simulation System flow of control
Wed 20 May 2015
Evaluating and Optimizing Level of Service for Crowd Evacuations
Mon 04 May 2015
Handling Segfaults in Python that occur in custom C++ libraries
Fri 01 May 2015
Knowledge vs Information
Tue 14 April 2015
Asynchronous Real-time Multiplayer Game (ARM Game)
Wed 18 March 2015
Install eclipse plugins via the command line
Mon 09 March 2015
Crowd Simulation Lecture
Sun 21 December 2014
High Resolution performance timer
Sun 12 October 2014
Mesh Subdivision with the Loop Algorithm
Sat 06 September 2014
Install SciPy on Mac OS
Thu 14 August 2014
Spelling and Grammar Checking for Latex
Fri 20 June 2014
Characterizing and Optimizing Game Level Difficulty
Tue 20 May 2014
Environment Optimization for Crowd Evacuation
Tue 20 May 2014
Optimizing Simulated Crowd Behaviour
Tue 20 May 2014
Robust Space-time Footsteps for Agent-based Steering
Tue 20 May 2014
Tue 20 May 2014
Tue 20 May 2014
Unreal IndiGolog Bot Project
Thu 14 November 2013
Digit Reconition using a Multi-Layer Perceptron
Tue 03 September 2013
Generating Latex table of Matlab/Octave Matrix
Mon 20 May 2013
Research in Unique Satisfiability
Sun 19 May 2013
psycopg2 instering an array of polygons
Sun 19 May 2013
'Postgresql: Calculate the number of polygon islands or overlapping groups'
Sun 21 April 2013
Install Twiki on Ubuntu 12.04
Wed 17 April 2013
Putting a steering algorithm into SteerSuite
Tue 19 March 2013
Postgresql Transfer Database to New Tablespace with Python
Sat 09 March 2013
Rare but powerful Unix/Linux commands
Fri 08 March 2013
SmartBody, first steps
Fri 08 March 2013
Eclipse Find/Replace
Wed 06 March 2013
'SmartBody Example:'
Sun 03 March 2013
'plpgsql: Creating Functions and saving intermetiate query results'
Fri 22 February 2013
IndiGolog Basics
Thu 21 February 2013
Install/setup Postgres 9.1 on Ubuntu 12.04
Wed 20 February 2013
Python and TCP/IP
Wed 20 February 2013
Get and Compile Smart Body
Thu 07 February 2013
Ubuntu 12.04 on ASUS n56v
Sun 20 May 2012
Sun 20 May 2012
Unreal Environment Interface
Fri 10 December 2010
Fri 10 December 2010