├── .gitignore ├── LICENSE ├── README.md ├── highway_env ├── .idea │ ├── .gitignore │ ├── highway_env.iml │ ├── inspectionProfiles │ │ └── profiles_settings.xml │ ├── misc.xml │ └── modules.xml ├── __init__.py ├── envs │ ├── __init__.py │ ├── common │ │ ├── __init__.py │ │ ├── abstract.py │ │ ├── action.py │ │ ├── finite_mdp.py │ │ ├── graphics.py │ │ ├── observation.py │ │ └── safe_protect.py │ ├── exit_env.py │ ├── highway_env.py │ ├── intersection_env.py │ ├── lane_keeping_env.py │ ├── merge_env.py │ ├── merge_game_env.py │ ├── parking_env.py │ ├── racetrack_env.py │ ├── roundabout_env.py │ ├── summon_env.py │ ├── two_way_env.py │ └── u_turn_env.py ├── interval.py ├── road │ ├── __init__.py │ ├── graphics.py │ ├── lane.py │ ├── regulation.py │ └── road.py ├── utils.py └── vehicle │ ├── MPC_control.py │ ├── __init__.py │ ├── behavior.py │ ├── controller.py │ ├── dynamics.py │ ├── graphics.py │ ├── kinematics.py │ ├── objects.py │ └── uncertainty │ ├── __init__.py │ ├── estimation.py │ └── prediction.py ├── picture ├── render_results.png ├── train_results_a.png └── train_results_b.png ├── requirement.txt ├── src ├── agent │ ├── core.py │ ├── dueling_dqn.py │ ├── ppo_baseline.py │ ├── ppo_lagrangian.py │ ├── sac_discrete_nstep.py │ └── sac_discrete_original.py └── evaluate │ ├── evaluate_agents.py │ ├── evaluate_data.py │ └── human_AI_compare.py ├── tools ├── computational_time.py ├── draw_pictures.py ├── post_data.py ├── post_data2.py ├── post_data3.py ├── post_data4.py └── sac_post_data.py └── utils ├── __init__.py ├── logx.py ├── mpi_pytorch.py ├── mpi_tf.py ├── mpi_tools.py ├── plot.py ├── run_entrypoint.py ├── run_utils.py ├── serialization_utils.py ├── test_policy.py └── user_config.py /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/README.md -------------------------------------------------------------------------------- /highway_env/.idea/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/.idea/.gitignore -------------------------------------------------------------------------------- /highway_env/.idea/highway_env.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/.idea/highway_env.iml -------------------------------------------------------------------------------- /highway_env/.idea/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/.idea/inspectionProfiles/profiles_settings.xml -------------------------------------------------------------------------------- /highway_env/.idea/misc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/.idea/misc.xml -------------------------------------------------------------------------------- /highway_env/.idea/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/.idea/modules.xml -------------------------------------------------------------------------------- /highway_env/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/__init__.py -------------------------------------------------------------------------------- /highway_env/envs/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/__init__.py -------------------------------------------------------------------------------- /highway_env/envs/common/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /highway_env/envs/common/abstract.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/common/abstract.py -------------------------------------------------------------------------------- /highway_env/envs/common/action.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/common/action.py -------------------------------------------------------------------------------- /highway_env/envs/common/finite_mdp.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/common/finite_mdp.py -------------------------------------------------------------------------------- /highway_env/envs/common/graphics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/common/graphics.py -------------------------------------------------------------------------------- /highway_env/envs/common/observation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/common/observation.py -------------------------------------------------------------------------------- /highway_env/envs/common/safe_protect.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/common/safe_protect.py -------------------------------------------------------------------------------- /highway_env/envs/exit_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/exit_env.py -------------------------------------------------------------------------------- /highway_env/envs/highway_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/highway_env.py -------------------------------------------------------------------------------- /highway_env/envs/intersection_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/intersection_env.py -------------------------------------------------------------------------------- /highway_env/envs/lane_keeping_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/lane_keeping_env.py -------------------------------------------------------------------------------- /highway_env/envs/merge_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/merge_env.py -------------------------------------------------------------------------------- /highway_env/envs/merge_game_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/merge_game_env.py -------------------------------------------------------------------------------- /highway_env/envs/parking_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/parking_env.py -------------------------------------------------------------------------------- /highway_env/envs/racetrack_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/racetrack_env.py -------------------------------------------------------------------------------- /highway_env/envs/roundabout_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/roundabout_env.py -------------------------------------------------------------------------------- /highway_env/envs/summon_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/summon_env.py -------------------------------------------------------------------------------- /highway_env/envs/two_way_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/two_way_env.py -------------------------------------------------------------------------------- /highway_env/envs/u_turn_env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/envs/u_turn_env.py -------------------------------------------------------------------------------- /highway_env/interval.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/interval.py -------------------------------------------------------------------------------- /highway_env/road/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /highway_env/road/graphics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/road/graphics.py -------------------------------------------------------------------------------- /highway_env/road/lane.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/road/lane.py -------------------------------------------------------------------------------- /highway_env/road/regulation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/road/regulation.py -------------------------------------------------------------------------------- /highway_env/road/road.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/road/road.py -------------------------------------------------------------------------------- /highway_env/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/utils.py -------------------------------------------------------------------------------- /highway_env/vehicle/MPC_control.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/vehicle/MPC_control.py -------------------------------------------------------------------------------- /highway_env/vehicle/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /highway_env/vehicle/behavior.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/vehicle/behavior.py -------------------------------------------------------------------------------- /highway_env/vehicle/controller.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/vehicle/controller.py -------------------------------------------------------------------------------- /highway_env/vehicle/dynamics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/vehicle/dynamics.py -------------------------------------------------------------------------------- /highway_env/vehicle/graphics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/vehicle/graphics.py -------------------------------------------------------------------------------- /highway_env/vehicle/kinematics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/vehicle/kinematics.py -------------------------------------------------------------------------------- /highway_env/vehicle/objects.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/vehicle/objects.py -------------------------------------------------------------------------------- /highway_env/vehicle/uncertainty/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /highway_env/vehicle/uncertainty/estimation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/vehicle/uncertainty/estimation.py -------------------------------------------------------------------------------- /highway_env/vehicle/uncertainty/prediction.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/highway_env/vehicle/uncertainty/prediction.py -------------------------------------------------------------------------------- /picture/render_results.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/picture/render_results.png -------------------------------------------------------------------------------- /picture/train_results_a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/picture/train_results_a.png -------------------------------------------------------------------------------- /picture/train_results_b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/picture/train_results_b.png -------------------------------------------------------------------------------- /requirement.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/requirement.txt -------------------------------------------------------------------------------- /src/agent/core.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/src/agent/core.py -------------------------------------------------------------------------------- /src/agent/dueling_dqn.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/src/agent/dueling_dqn.py -------------------------------------------------------------------------------- /src/agent/ppo_baseline.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/src/agent/ppo_baseline.py -------------------------------------------------------------------------------- /src/agent/ppo_lagrangian.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/src/agent/ppo_lagrangian.py -------------------------------------------------------------------------------- /src/agent/sac_discrete_nstep.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/src/agent/sac_discrete_nstep.py -------------------------------------------------------------------------------- /src/agent/sac_discrete_original.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/src/agent/sac_discrete_original.py -------------------------------------------------------------------------------- /src/evaluate/evaluate_agents.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/src/evaluate/evaluate_agents.py -------------------------------------------------------------------------------- /src/evaluate/evaluate_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/src/evaluate/evaluate_data.py -------------------------------------------------------------------------------- /src/evaluate/human_AI_compare.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/src/evaluate/human_AI_compare.py -------------------------------------------------------------------------------- /tools/computational_time.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/tools/computational_time.py -------------------------------------------------------------------------------- /tools/draw_pictures.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/tools/draw_pictures.py -------------------------------------------------------------------------------- /tools/post_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/tools/post_data.py -------------------------------------------------------------------------------- /tools/post_data2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/tools/post_data2.py -------------------------------------------------------------------------------- /tools/post_data3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/tools/post_data3.py -------------------------------------------------------------------------------- /tools/post_data4.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/tools/post_data4.py -------------------------------------------------------------------------------- /tools/sac_post_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/tools/sac_post_data.py -------------------------------------------------------------------------------- /utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /utils/logx.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/utils/logx.py -------------------------------------------------------------------------------- /utils/mpi_pytorch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/utils/mpi_pytorch.py -------------------------------------------------------------------------------- /utils/mpi_tf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/utils/mpi_tf.py -------------------------------------------------------------------------------- /utils/mpi_tools.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/utils/mpi_tools.py -------------------------------------------------------------------------------- /utils/plot.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/utils/plot.py -------------------------------------------------------------------------------- /utils/run_entrypoint.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/utils/run_entrypoint.py -------------------------------------------------------------------------------- /utils/run_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/utils/run_utils.py -------------------------------------------------------------------------------- /utils/serialization_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/utils/serialization_utils.py -------------------------------------------------------------------------------- /utils/test_policy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/utils/test_policy.py -------------------------------------------------------------------------------- /utils/user_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenqing-2021/On_Ramp_Merge_Safe_RL/HEAD/utils/user_config.py --------------------------------------------------------------------------------