• Stars
    star
    559
  • Rank 79,673 (Top 2 %)
  • Language
    Python
  • Created over 7 years ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Implementation of Inverse Reinforcement Learning (IRL) algorithms in Python/Tensorflow. Deep MaxEnt, MaxEnt, LPIRL

irl-imitation

Implementation of selected Inverse Reinforcement Learning (IRL) algorithms in python/Tensorflow.

python demo.py

Algorithms implemented
  • Linear inverse reinforcement learning (Ng & Russell 2000)
  • Maximum entropy inverse reinforcement learning (Ziebart et al. 2008)
  • Maximum entropy deep inverse reinforcement learning (Wulfmeier et al. 2015)
MDP & solver implemented
  • gridworld 2D
  • gridworld 1D
  • value iteration

Please cite this work using the following bibtex if you use the software in your publications

@software{Lu_yrlu_irl-imitation_Implementation_of_2022,
  author = {Lu, Yiren},
  doi = {10.5281/zenodo.6796157},
  month = {7},
  title = {{yrlu/irl-imitation: Implementation of Inverse Reinforcement Learning (IRL) algorithms in python/Tensorflow}},
  url = {https://github.com/yrlu/irl-imitation},
  version = {1.0.0},
  year = {2017}
}

Dependencies

  • python 2.7
  • cvxopt
  • Tensorflow 0.12.1
  • matplotlib

Linear Inverse Reinforcement Learning

$ python linear_irl_gridworld.py --act_random=0.3 --gamma=0.5 --l1=10 --r_max=10

Maximum Entropy Inverse Reinforcement Learning

(This implementation is largely influenced by Matthew Alger's maxent implementation)

$ python maxent_irl_gridworld.py --height=10 --width=10 --gamma=0.8 --n_trajs=100 --l_traj=50 --no-rand_start --learning_rate=0.01 --n_iters=20

$ python maxent_irl_gridworld.py --gamma=0.8 --n_trajs=400 --l_traj=50 --rand_start --learning_rate=0.01 --n_iters=20

Maximum Entropy Deep Inverse Reinforcement Learning

  • Following Wulfmeier et al. 2015 paper: Maximum Entropy Deep Inverse Reinforcement Learning. FC version implemented. The implementation does not follow exactly the model proposed in the paper. Some tweaks applied including elu activations, clipping gradients, l2 regularization etc.
  • $ python deep_maxent_irl_gridworld.py --help for options descriptions
$ python deep_maxent_irl_gridworld.py --learning_rate=0.02 --n_trajs=200 --n_iters=20

MIT License

More Repositories

1

quadrotor

Quadrotor control, path planning and trajectory optimization
MATLAB
830
star
2

reinforcement_learning

Implementation of selected reinforcement learning algorithms in Tensorflow. A3C, DDPG, REINFORCE, DQN, etc.
Python
148
star
3

non-convex

Self-contained implementation of non-convex optimization algorithms in python. Steepest Descent, Conjugate Gradient, Newton's Method, Quasi-newton (BFGS), l-BFGS
Python
76
star
4

image_mosaic_stitching

Implemented a pipeline for 2D image mosaic and stitching. Feature extraction & matching, Adaptive Non-Maximal Suppression (ANMS), geometric blur, RANSAC
MATLAB
65
star
5

orientation_tracking-unscented_kalman_filter

Implemented Unscented Kalman Filter (UKF) for orientation tracking. Sensors fusion of accelerometer, and gyroscope
MATLAB
59
star
6

vision-based_estimations

Vision-based Robot 3D Pose and Velocities Estimations
MATLAB
37
star
7

seamless_face_replacement

Implemented a pipeline for automatic face replacement in videos (without deep learning). Image morphing, triangulation, TPS, Poisson blending, etc.
MATLAB
33
star
8

Teaism

A full-fledged yet minimalistic CUDA-based convolutional neural network library from scratch in C++
C++
15
star
9

image_color_segmentation-gmm

Implemented Gaussian Mixture Models (GMM) for image color segmentation.
MATLAB
15
star
10

twitter_users_gender_classification

92% gender prediction accuracy based on users' tweets and profile pictures.
MATLAB
11
star
11

SLAM-particle-filter

Particle-filter based SLAM.
MATLAB
9
star
12

face_morphing_tps

Implemented face morphing algorithm based on Thin-Plate Splines
MATLAB
5
star
13

path_planning_imitation_learning

Path planning on high resolution aerial map based on imitation learning. Learn a cost-to-go map from demonstrations.
MATLAB
3
star
14

gestures_recognition_hmm

Implemented a Hidden Markov Model (HMM) for gestures recognition
MATLAB
3
star
15

3d_reconstruction-ICP

Implemented Iterative Closest Point (ICP) method for 3d reconstruction
TeX
2
star