2024-09-05
Noticias emocionantes! ¿FREA es aceptada por CoRL 2024 para presentación oral ??!2024-08-10
Explora la página de nuestro proyecto, ¡¿ahora vive aquí?!2024-08-10
Los códigos ya están disponibles!2024-06-05
Nuestro artículo está disponible en Arxiv?Este repositorio contiene la implementación del artículo.
FREA: Generación guiada por viabilidad de escenarios críticos para la seguridad con adversidad razonable
Keyu Chen 1 , Yuheng Lei 2 , Hao Cheng 1 , Haoran Wu 1 , Wenchao Sun 1 , Sifa Zheng 1
1 Escuela de Vehículos y Movilidad, Universidad de Tsinghua 2 Universidad de Hong Kong
Si encuentra útil nuestro trabajo, ¡¿danos una estrella?!
? FREA incorpora la viabilidad como guía para generar escenarios conflictivos pero factibles para la seguridad AV.
Sistema recomendado: Ubuntu 20.04 o 22.04
Paso 1: Instale Carla (se recomienda 0.9.13)
Paso 2: configurar el entorno conda
conda create -n frea python=3.8
conda activate frea
Paso 3: clona este repositorio de git en una carpeta adecuada
git clone [email protected]:CurryChen77/FREA.git
Paso 4: Ingrese a la carpeta raíz del repositorio e instale los paquetes:
cd FREA
pip install -r requirements.txt
pip install -e .
# Launch CARLA
./CarlaUE4.sh -prefernvidia -RenderOffScreen -carla-port=2000
# Launch in another terminal
python scripts/run.py --agent_cfg expert.yaml --scenario_cfg standard_train.yaml --mode collect_feasibility_data
# Merge data
python frea/feasibility/unify_offline_data.py
Para utilizar el conjunto de datos fuera de línea en nuestra descarga impresa desde aquí, colóquelos en la carpeta de feasibility
.
# Train optimal feasible value function of AV
python train_feasibility.py
# Launch CARLA
./CarlaUE4.sh -prefernvidia -RenderOffScreen -carla-port=2000
# Train FREA
python scripts/run.py --agent_cfg expert.yaml --scenario_cfg fppo_adv_train.yaml --mode train_scenario
# Launch CARLA
./CarlaUE4.sh -prefernvidia -RenderOffScreen -carla-port=2000
# Train FPPO-RS
python scripts/run.py --agent_cfg expert.yaml --scenario_cfg fppo_rs_train.yaml --mode train_scenario
# Launch CARLA
./CarlaUE4.sh -prefernvidia -RenderOffScreen -carla-port=2000
# Train PPO
python scripts/run.py --agent_cfg expert.yaml --scenario_cfg ppo_train.yaml --mode train_scenario
# Launch CARLA
./CarlaUE4.sh -prefernvidia -RenderOffScreen -carla-port=2000
# Train FREA
python scripts/run.py --agent_cfg ppo.yaml --scenario_cfg fppo_adv_train.yaml --mode train_agent
# Launch CARLA
./CarlaUE4.sh -prefernvidia -RenderOffScreen -carla-port=2000
# Train FREA
python scripts/run.py --agent_cfg ppo.yaml --scenario_cfg standard_train.yaml --mode train_agent
# Launch CARLA
./CarlaUE4.sh -prefernvidia -windowed -carla-port=2000
# Evaluation FREA
python scripts/run.py --agent_cfg expert.yaml --scenario_cfg FPPO_adv_eval.yaml --mode eval --eval_mode analysis
# Launch CARLA
./CarlaUE4.sh -prefernvidia -windowed -carla-port=2000
# Evaluation FREA
python scripts/run.py --agent_cfg expert.yaml --scenario_cfg FPPO_adv_eval.yaml --mode eval --eval_mode render
Asegúrese de que la evaluación haya finalizado y que el resultado esté guardado en la carpeta.
# Process the recorded data
python eval_analysis/process_data/process_all_data.py
# Plot the evaluation result
python eval_analysis/plot_data/plot_evaluation_result.py
# Launch CARLA
./CarlaUE4.sh -prefernvidia -windowed -carla-port=2000
# Set world spectator
python scripts/run.py --agent_cfg expert.yaml --scenario_cfg standard_eval.yaml --mode eval -sp
# Launch CARLA
./CarlaUE4.sh -prefernvidia -windowed -carla-port=2000
# Visualize AV route
python scripts/run.py --agent_cfg expert.yaml --scenario_cfg standard_eval.yaml --mode eval -viz_route
# Launch CARLA
./CarlaUE4.sh -prefernvidia -windowed -carla-port=2000
# Visualize BEV map
python scripts/run.py --agent_cfg expert.yaml --scenario_cfg FPPO_adv_eval.yaml --mode eval --eval_mode render
Si encuentra útil nuestro documento, por favor cítenos a través de:
@inproceedings{
chen2024frea,
title={{FREA}: Feasibility-Guided Generation of Safety-Critical Scenarios with Reasonable Adversariality},
author={Keyu Chen and Yuheng Lei and Hao Cheng and Haoran Wu and Wenchao Sun and Sifa Zheng},
booktitle={8th Annual Conference on Robot Learning},
year={2024},
url={https://openreview.net/forum?id=3bcujpPikC}
}
Esta implementación se basa en código de varios repositorios. Agradecemos sinceramente a los autores por su increíble trabajo.