Skip to content

An inverse feedback game solver for inferring costs in nonlinear general-sum dynamic games.

Notifications You must be signed in to change notification settings

jamesjingqili/inverse-feedback-games

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

inverse-iLQGames

We proposed the first inverse feedback games solver for general-sum games with nonlinear dynamics and non-quadratic costs.

This repo contains the essential codes for the following paper:

Cost Inference for Feedback Dynamic Games from Noisy Partial State Observations and Incomplete Trajectories, by Jingqi Li, Chih-Yuan Chiu, Lasse Peters, Somayeh Sojoudi, Claire Tomlin, and David Fridovich-Keil, AAMAS 2023

Julia version: 1.6.6

First thing to do:

  1. cd to /src
  2. run: "julia --project"
  3. within Julia REPL terminal interface, run "import Pkg; Pkg.instantiate()"
  4. copy the codes in "/examples/inverse_2_player_dubins_car.jl" to the Julia REPL terminal interface and wait for results

Important files:

  1. experiment_utils.jl: we defined the loss in the function loss(). We defined the alternating gradient descent of theta and x0 in the functions inverse_game_gradient_descent_with_x0();
  2. diff_solver.jl: we removed the type checking in the LQ game solver in iLQGames.jl such that ForwardDiff.jl can evaluate gradient properly.

About

An inverse feedback game solver for inferring costs in nonlinear general-sum dynamic games.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages