Non-Adversarial Inverse Reinforcement Learning via Successor Feature Matching

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 search_: by 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 an explicit reward function and can be solved seamlessly with existing 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.

Cite

Text

Jain et al. "Non-Adversarial Inverse Reinforcement Learning via Successor Feature Matching." International Conference on Learning Representations, 2025.

Markdown

[Jain et al. "Non-Adversarial Inverse Reinforcement Learning via Successor Feature Matching." International Conference on Learning Representations, 2025.](https://mlanthology.org/iclr/2025/jain2025iclr-nonadversarial/)

BibTeX

@inproceedings{jain2025iclr-nonadversarial,
  title     = {{Non-Adversarial Inverse Reinforcement Learning via Successor Feature Matching}},
  author    = {Jain, Arnav Kumar and Wiltzer, Harley and Farebrother, Jesse and Rish, Irina and Berseth, Glen and Choudhury, Sanjiban},
  booktitle = {International Conference on Learning Representations},
  year      = {2025},
  url       = {https://mlanthology.org/iclr/2025/jain2025iclr-nonadversarial/}
}