Non-Adversarial Inverse Reinforcement Learning via Successor Feature Matching

Arnav Kumar Jain, Harley Wiltzer, Jesse Farebrother, Irina Rish, Glen Berseth +1 more
11/11/2024
cs.LGcs.AI

No official code found. Best implementation: arnavkj1995/SFM (21 stars, MIT, last commit 2025-05-31).

Abstract

In inverse reinforcement learning (IRL), an agent seeks to replicate expert demonstrations through interactions with the environment. Traditionally, IRL is treated as an adversarial game, where an adversary searches over reward models, and a learner optimizes the reward through repeated RL procedures. This game-solving approach is both computationally expensive and difficult to stabilize. In this work, we propose a novel approach to IRL by direct policy optimization: exploiting a linear factorization of the return as the inner product of successor features and a reward vector, we design an IRL algorithm by policy gradient descent on the gap between the learner and expert features. Our non-adversarial method does not require learning a reward function and can be solved seamlessly with existing actor-critic RL algorithms. Remarkably, our approach works in state-only settings without expert action labels, a setting which behavior cloning (BC) cannot solve. Empirical results demonstrate that our method learns from as few as a single expert demonstration and achieves improved performance on various control tasks.

View on arXivView PDF

Code Implementations(1)

arnavkj1995/SFMCommunity100%
MIT

Official Implementation of SFM and the baselines in Jax.

211PythonMay 27, 20241 years agoMIT
imitation-learninginverse-reinforcement-learningreinforcement-learningsuccessor-features

Similar Papers

Cite this paper

@article{jain2024nonadversarial,
  title  = {Non-Adversarial Inverse Reinforcement Learning via Successor Feature Matching},
  author = {Arnav Kumar Jain and Harley Wiltzer and Jesse Farebrother and Irina Rish and Glen Berseth and Sanjiban Choudhury},
  year   = {2024},
  eprint = {2411.07007},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2411.07007v2},
  journal = {ICLR 2024 2024}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2411.07007.svg)](https://codeofpaper.com/paper/2411.07007)

Discussion