-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
807000f
commit 97ce1fa
Showing
13 changed files
with
3,118 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
# Compiled sources | ||
*.pyc | ||
build/ | ||
dist/ | ||
|
||
# Setup | ||
**.egg* | ||
|
||
# Jupyter notebooks | ||
**.ipynb_checkpoints* | ||
|
||
# Sphinx documentation | ||
_build | ||
|
||
# Editor files | ||
.idea | ||
.vscode | ||
|
||
# Test files | ||
.pytest_cache | ||
.cache | ||
|
||
# Outputs | ||
**/out/* | ||
runs/ | ||
saved_models/ | ||
|
||
# Docs | ||
docs/_build | ||
**jupyter_execute |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
# Aggresiveness-regulated Multi-agent Stress Testing of Autonomous Vehicles | ||
|
||
This repo dedicates to the task of stress testing a black-box autnomous vehicle system using multi-agent reinforcement learnign algorithms under an adversarial environment. | ||
|
||
The simulation environment used are included as a submodule, which is adapted from [highway-env](https://github.com/Farama-Foundation/HighwayEnv). | ||
|
||
The codes in this repo follow the suggested one-file implementation in reinforcement learning community. | ||
|
||
There are four algorithms experimented in this repo: | ||
- [MACPO](https://arxiv.org/abs/2110.02793) (Multi-Agent Constrained Policy Optimization) | ||
- [HATRPO](https://arxiv.org/abs/2109.11251) (Heterogeneous-Agent Trust Region Policy Optimization) | ||
- [CPO](https://arxiv.org/abs/1705.10528) (Constrained Policy Optimization) | ||
- [TRPO](https://arxiv.org/abs/1502.05477) (Trust Region Policy Optimization) | ||
|
||
The results are summarized in this [thesis](http://hdl.handle.net/10012/19897) | ||
|
||
## Environment Setup | ||
The python environemnt can be created using conda: | ||
```bash | ||
conda env create -f environment.yml | ||
``` | ||
|
||
## Running | ||
To run the training script of an algorithm `ALGO` listed above `ALGO.py`: | ||
```bash | ||
python ALGO.py | ||
``` | ||
To run the testing script of an algorithm `ALGO` listed above `ALGO_vis.py`: | ||
```bash | ||
python ALGO_vis.py | ||
``` | ||
|
||
## Acknowledgments | ||
The code within this repository was developed with assistance from [MACPO](https://github.com/chauncygu/Multi-Agent-Constrained-Policy-Optimisation) and [CleanRL](https://github.com/vwxyzjn/cleanrl/tree/master/cleanrl). |
Binary file not shown.
Oops, something went wrong.