{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/multi-agent-connected-autonomous-driving","title":"Multi-Agent Connected Autonomous Driving using Deep Reinforcement Learning","arxiv_id":"1911.04175","date":"2019-11-11","proceeding":null,"authors":["Praveen Palanisamy"],"abstract":"The capability to learn and adapt to changes in the driving environment is crucial for developing autonomous driving systems that are scalable beyond geo-fenced operational design domains. Deep Reinforcement Learning (RL) provides a promising and scalable framework for developing adaptive learning based solutions. Deep RL methods usually model the problem as a (Partially Observable) Markov Decision Process in which an agent acts in a stationary environment to learn an optimal behavior policy. However, driving involves complex interaction between multiple, intelligent (artificial or human) agents in a highly non-stationary environment. In this paper, we propose the use of Partially Observable Markov Games(POSG) for formulating the connected autonomous driving problems with realistic assumptions. We provide a taxonomy of multi-agent learning environments based on the nature of tasks, nature of agents and the nature of the environment to help in categorizing various autonomous driving problems that can be addressed under the proposed formulation. As our main contributions, we provide MACAD-Gym, a Multi-Agent Connected, Autonomous Driving agent learning platform for furthering research in this direction. Our MACAD-Gym platform provides an extensible set of Connected Autonomous Driving (CAD) simulation environments that enable the research and development of Deep RL- based integrated sensing, perception, planning and control algorithms for CAD systems with unlimited operational design domain under realistic, multi-agent settings. We also share the MACAD-Agents that were trained successfully using the MACAD-Gym platform to learn control policies for multiple vehicle agents in a partially observable, stop-sign controlled, 3-way urban intersection environment with raw (camera) sensor observations.","url_abs":"https://arxiv.org/abs/1911.04175v1","url_pdf":"https://arxiv.org/pdf/1911.04175v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"multi-agent-connected-autonomous-driving","repo_url":"https://github.com/praveen-palanisamy/macad-gym","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"autonomous-driving","task_name":"Autonomous Driving"},{"task_slug":"deep-reinforcement-learning","task_name":"Deep Reinforcement Learning"},{"task_slug":"reinforcement-learning","task_name":"Reinforcement Learning"},{"task_slug":"reinforcement-learning-1","task_name":"Reinforcement Learning (RL)"},{"task_slug":"reinforcement-learning-2","task_name":"reinforcement-learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1911.04175","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1911.04175"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/praveen-palanisamy/macad-gym","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":1,"ran_draft_wrong":1,"unverified":7},"by_repo_kind":{"official":{"samples":9,"ran":2,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"ccc25780948874cb","entry":"clamp","repo":"praveen-palanisamy/macad-gym","repo_kind":"official","path":"src/macad_gym/carla/PythonAPI/dynamic_weather.py","file_url":"https://github.com/praveen-palanisamy/macad-gym/blob/HEAD/src/macad_gym/carla/PythonAPI/dynamic_weather.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ccc25780948874cb"}},{"code_sha256_prefix":"c882c504d11f2b36","entry":"get_actor_display_name","repo":"praveen-palanisamy/macad-gym","repo_kind":"official","path":"src/macad_gym/carla/spawn_control.py","file_url":"https://github.com/praveen-palanisamy/macad-gym/blob/HEAD/src/macad_gym/carla/spawn_control.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c882c504d11f2b36"}},{"code_sha256_prefix":"7634aeaee9a3f995","entry":"build_ma_scenario","repo":"praveen-palanisamy/macad-gym","repo_kind":"official","path":"src/macad_gym/carla/scenarios.py","file_url":"https://github.com/praveen-palanisamy/macad-gym/blob/HEAD/src/macad_gym/carla/scenarios.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7634aeaee9a3f995"}},{"code_sha256_prefix":"bab428663d8f6cc4","entry":"build_scenario","repo":"praveen-palanisamy/macad-gym","repo_kind":"official","path":"src/macad_gym/carla/scenarios.py","file_url":"https://github.com/praveen-palanisamy/macad-gym/blob/HEAD/src/macad_gym/carla/scenarios.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bab428663d8f6cc4"}},{"code_sha256_prefix":"ae9d82d7c264830f","entry":"collided_done","repo":"praveen-palanisamy/macad-gym","repo_kind":"official","path":"src/macad_gym/carla/multi_env.py","file_url":"https://github.com/praveen-palanisamy/macad-gym/blob/HEAD/src/macad_gym/carla/multi_env.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ae9d82d7c264830f"}},{"code_sha256_prefix":"a7912a8646518c6f","entry":"get_next_actions","repo":"praveen-palanisamy/macad-gym","repo_kind":"official","path":"src/macad_gym/carla/multi_env.py","file_url":"https://github.com/praveen-palanisamy/macad-gym/blob/HEAD/src/macad_gym/carla/multi_env.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a7912a8646518c6f"}},{"code_sha256_prefix":"9ac577fab3b01be8","entry":"sigmoid","repo":"praveen-palanisamy/macad-gym","repo_kind":"official","path":"src/macad_gym/carla/multi_env.py","file_url":"https://github.com/praveen-palanisamy/macad-gym/blob/HEAD/src/macad_gym/carla/multi_env.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"9ac577fab3b01be8"}},{"code_sha256_prefix":"3b7f3991efc831ea","entry":"string_to_floats","repo":"praveen-palanisamy/macad-gym","repo_kind":"official","path":"src/macad_gym/carla/PythonAPI/converter.py","file_url":"https://github.com/praveen-palanisamy/macad-gym/blob/HEAD/src/macad_gym/carla/PythonAPI/converter.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3b7f3991efc831ea"}},{"code_sha256_prefix":"221aa9bc0bce9068","entry":"transform_points","repo":"praveen-palanisamy/macad-gym","repo_kind":"official","path":"src/macad_gym/carla/Transform.py","file_url":"https://github.com/praveen-palanisamy/macad-gym/blob/HEAD/src/macad_gym/carla/Transform.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"221aa9bc0bce9068"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}