{"id":15361401,"url":"https://github.com/muhd-umer/twds-cafe-manuevers","last_synced_at":"2026-02-03T11:33:40.214Z","repository":{"id":237981949,"uuid":"795592957","full_name":"muhd-umer/twds-cafe-manuevers","owner":"muhd-umer","description":"Implementation of paper \"Towards Collaborative and Fuel-Efficient Maneuvers for Autonomous Vehicles\"","archived":false,"fork":false,"pushed_at":"2024-05-21T04:22:38.000Z","size":505,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-30T21:08:43.856Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/muhd-umer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-03T16:00:46.000Z","updated_at":"2024-05-21T04:22:42.000Z","dependencies_parsed_at":"2024-05-03T19:31:15.475Z","dependency_job_id":"d862150a-5a5b-4f70-9036-9c8780eb19ed","html_url":"https://github.com/muhd-umer/twds-cafe-manuevers","commit_stats":null,"previous_names":["muhd-umer/twds-cafe-manuevers"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/muhd-umer/twds-cafe-manuevers","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muhd-umer%2Ftwds-cafe-manuevers","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muhd-umer%2Ftwds-cafe-manuevers/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muhd-umer%2Ftwds-cafe-manuevers/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muhd-umer%2Ftwds-cafe-manuevers/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/muhd-umer","download_url":"https://codeload.github.com/muhd-umer/twds-cafe-manuevers/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muhd-umer%2Ftwds-cafe-manuevers/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29044334,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-03T10:09:22.136Z","status":"ssl_error","status_checked_at":"2026-02-03T10:09:16.814Z","response_time":96,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-01T12:54:54.707Z","updated_at":"2026-02-03T11:33:40.195Z","avatar_url":"https://github.com/muhd-umer.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Towards Collaborative and Fuel-Efficient Maneuvers for Autonomous Vehicles\n\nThe increasing prevalence of autonomous vehicles (AVs) necessitates the development of advanced decision-making algorithms that prioritize safety, fuel efficiency, and passenger comfort. This paper presents a novel approach that leverages multi-agent coordination and deep reinforcement learning (DRL) to achieve these objectives. Building upon existing game-theoretic frameworks for lane-changing scenarios, we propose a system that incorporates interactions with multiple surrounding vehicles. This allows AVs to anticipate and respond strategically to the actions of others, promoting smoother traffic flow and reducing unnecessary braking or acceleration. Furthermore, our framework introduces a fuel optimization variable, enabling AVs to dynamically adjust their speed and trajectory to minimize fuel consumption while maintaining safety and compliance with traffic regulations. The result is an intelligent system that enhances fuel efficiency, passenger comfort, and vehicle safety, contributing to a more efficient and enjoyable driving experience.\n\n## Block Diagram\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"resources/block.png\" width=\"700px\"/\u003e\n\u003c/p\u003e\n\nThe environment, simulated using SMARTS, represents a multi-lane highway populated with AVs and human-driven vehicles. The AVs are controlled by trained agents, which receive observations from the environment and generate actions. The agents employ a hybrid proximal policy optimization (H-PPO) algorithm to learn optimal strategies, balancing fuel efficiency, passenger comfort, and safety. Each agent has two separate actor networks, one for discrete lane change decisions and another for continuous speed control. A single critic network estimates the value function, guiding the policy optimization process.\n\n## Usage\n\nTo run the project, follow these steps:\n\n1. Clone the repository:\n   ```shell\n   git clone https://github.com/muhd-umer/twds-cafe-manuevers.git\n   ```\n\n2. Install dependencies:\n   ```shell\n   pip install -r requirements.txt\n   ```\n\n3. Train the agents:\n   ```shell\n   python train.py --scenarios resources/scenarios/lane_changing --time-total 2000 --envision\n   ```\n\n4. Run the trained model:\n   ```shell\n   python train.py --scenarios resources/scenarios/lane_changing --time-total 0 --envision --resume\n   ```\n\n*Note: It is recommended to create a new virtual environment so that updates/downgrades of packages do not break other projects.*\n\nThe `train.py` script takes several optional arguments:\n\n- `--scenarios`: Path to the scenarios folder containing the SMARTS scenario files.\n- `--time-total`: Total training time in seconds.\n- `--envision`: Enable visualization of the simulation.\n- `--resume`: Resume training from the latest checkpoint.\n- `--checkpoint-num`: Restart training from a specific checkpoint.\n- `--rollout-length`: Episodes are divided into fragments of this many steps for each rollout.\n- `--batch-size`: Number of steps in a training batch.\n- `--seed`: Random seed for the simulation.\n- `--num-agents`: Number of AVs in the simulation.\n- `--num-workers`: Number of parallel workers for training.\n- `--checkpoint-freq`: Frequency of checkpoint saving during training.\n- `--log-level`: Logging level for debugging.\n\nFor detailed instructions on how to customize the simulation setup, modify the agent configuration, or analyze the training results, please refer to the code comments.\n\n## BibTeX\nIf you find this work useful for your research, please cite our paper:\n\n```\n@inproceedings{}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmuhd-umer%2Ftwds-cafe-manuevers","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmuhd-umer%2Ftwds-cafe-manuevers","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmuhd-umer%2Ftwds-cafe-manuevers/lists"}