Skip to content

gautams3/IRL_IntelligentGrading

Repository files navigation

Maven Central Hex.pm 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 https://github.com/gautams3/IRL_IntelligentGrading.git )
  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/IRLParkingLotExample.java
  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.

About

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

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages