Skip to content
Using Inverse Reinforcement Learning for grading of physical (sensorimotor) skills. This framework is a proof-of-concept with a toy problem of navigating in grid-based parking lot
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Maven Central java6 java7 java8

Intelligent Grading with Inverse Reinforcement Learning

This is a project on using Inverse Reinforcement Learning (IRL) for automated grading of physical (sensorimotor) skills. It also includes a snapshot of the BURLAP codebase, since I had to make a few changes in BURLAP to create my IRL framework.

How to run

This project is built using Maven; I will outline steps to use it with IntelliJ, a free Java IDE.

  1. Clone the project to a local directory (git clone )
  2. Import the project as a Maven project in IntelliJ (Import Project -> go to root project folder -> double click pom.xml. You may have to wait a while for the dependencies to download and the indexing)
  3. Open file src/main/java/Tutorial/
  4. Run that class (main() function. You may have to add a Configuration that runs the IRLParkingLotExample class)

There are 4 modes to run in sequential order, explained thoroughly in the paper. The main() function in IRLParkingLotExample let's you choose these modes, using the GridWorldRunOptions enum

  1. Explore and record: This lets you navigate the parking lot world, and record episodes
  2. Playback: Playback recorded episodes
  3. RunIRL: Run the IRL algorithm to learn the reward function based on the given expert demonstrations (transitions are considered deterministic)
  4. TestUser: Test the user trials based on the learned reward function from step 3.

In order to help you skip to the mode you wish to run, I have added sample output files for expert demonstrations, user trials, and IRL reward function output.

You can’t perform that action at this time.