{"id":40977857,"url":"https://github.com/opendrivelab/simscale","last_synced_at":"2026-01-22T07:03:29.864Z","repository":{"id":327007861,"uuid":"1106396319","full_name":"OpenDriveLab/SimScale","owner":"OpenDriveLab","description":"Learning to Drive via Real-World Simulation at Scale","archived":false,"fork":false,"pushed_at":"2026-01-07T06:45:27.000Z","size":21980,"stargazers_count":135,"open_issues_count":2,"forks_count":7,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-01-14T00:20:51.245Z","etag":null,"topics":["autonomous-driving","co-training","data-scaling-laws","sim-to-real","simulation"],"latest_commit_sha":null,"homepage":"https://opendrivelab.com/SimScale/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OpenDriveLab.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":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"docs/agents.md","dco":null,"cla":null}},"created_at":"2025-11-29T06:50:17.000Z","updated_at":"2026-01-13T07:23:25.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/OpenDriveLab/SimScale","commit_stats":null,"previous_names":["opendrivelab/simscale"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/OpenDriveLab/SimScale","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenDriveLab%2FSimScale","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenDriveLab%2FSimScale/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenDriveLab%2FSimScale/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenDriveLab%2FSimScale/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OpenDriveLab","download_url":"https://codeload.github.com/OpenDriveLab/SimScale/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenDriveLab%2FSimScale/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28657557,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-22T01:17:37.254Z","status":"online","status_checked_at":"2026-01-22T02:00:07.137Z","response_time":144,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["autonomous-driving","co-training","data-scaling-laws","sim-to-real","simulation"],"created_at":"2026-01-22T07:03:28.198Z","updated_at":"2026-01-22T07:03:29.853Z","avatar_url":"https://github.com/OpenDriveLab.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\u003cdiv id=\"top\" align=\"center\"\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://ik.imagekit.io/StarBurger/SimScale/title_1080p.gif\"\u003e\n\u003c/p\u003e\n\n# **Learning to Drive via Real-World Simulation at Scale**\n\n[![Paper](https://img.shields.io/badge/ArXiv-A42C25?style=for-the-badge\u0026logo=arxiv\u0026logoColor=white)](https://arxiv.org/abs/2511.23369)\n[![Home](https://img.shields.io/badge/project_page-5F259F?style=for-the-badge\u0026logo=homepage\u0026logoColor=white)](https://opendrivelab.com/SimScale/) \n[![Hugging Face](https://img.shields.io/badge/hugging_face-ffc107?style=for-the-badge\u0026logo=huggingface\u0026logoColor=white)](https://huggingface.co/datasets/OpenDriveLab/SimScale) \n[![ModelScope](https://img.shields.io/badge/modelscope-624AFF?style=for-the-badge\u0026logo=modelscope\u0026logoColor=white)](https://modelscope.cn/datasets/OpenDriveLab/SimScale) \n[![License](https://img.shields.io/badge/Apache--2.0-019B8F?style=for-the-badge\u0026logo=apache)](https://github.com/OpenDriveLab/SimScale/blob/main/LICENSE) \n\n\u003c/div\u003e\n\n\u003cdiv id=\"top\" align=\"center\"\u003e\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"assets/teaser.png\" \u003e\n\u003c/p\u003e\n\u003c/div\u003e\n\n\n\u003e [Haochen Tian](https://github.com/hctian713), \n\u003e [Tianyu Li](https://github.com/sephyli), \n\u003e [Haochen Liu](https://georgeliu233.github.io/), \n\u003e [Jiazhi Yang](https://github.com/YTEP-ZHI), \n\u003e [Yihang Qiu](https://github.com/gihharwtw),\n\u003e [Guang Li](https://scholar.google.com/citations?user=McEfO8UAAAAJ\u0026hl=en),\n\u003e [Junli Wang](https://openreview.net/profile?id=%7EJunli_Wang4),\n\u003e [Yinfeng Gao](https://scholar.google.com/citations?user=VTn0hqIAAAAJ\u0026hl=en),\n\u003e [Zhang Zhang](https://scholar.google.com/citations?user=rnRNwEMAAAAJ\u0026hl=en),\n\u003e [Liang Wang](https://scholar.google.com/citations?user=8kzzUboAAAAJ\u0026hl=en),\n\u003e [Hangjun Ye](https://scholar.google.com/citations?user=68tXhe8AAAAJ\u0026hl=en),\n\u003e [Tieniu Tan](https://scholar.google.com/citations?user=W-FGd_UAAAAJ\u0026hl=en), \n\u003e [Long Chen](https://long.ooo/), \n\u003e [Hongyang Li](https://lihongyang.info/)\n\u003e \n\u003e\n\u003e - 📧 Primary Contact: Haochen Tian (tianhaochen2023@ia.ac.cn)\n\u003e - 📜 Materials: 🌐 [𝕏](https://x.com/OpenDriveLab/status/1999507869633527845) | 📰 [Media](https://mp.weixin.qq.com/s/OGV3Xlb0bHSSSloG11qFJA) | 🗂️ [Slides](https://docs.google.com/presentation/d/17qbsKZU9jdw7MfiPk7hZelaLb3leR2M76gPcMkuf1MI/edit?usp=sharing) | 🎬 [Talk (in Chinese)](https://www.bilibili.com/video/BV1tqrEBNECQ)\n\u003e - 🖊️ Joint effort by CASIA, OpenDriveLab at HKU, and Xiaomi EV.\n\n---\n\n## 🔥 Highlights \n\n- 🏗️ A scalable simulation pipepline that synthesizes diverse and high-fidelity reactive driving scenarios with pseudo-expert demonstrations. \n- 🚀 An effective sim-real co-training strategy that improves robustness and generalization synergistically across various end-to-end planners. \n- 🔬 A comprehensive recipe that reveals crucial insights into the underlying scaling properties of sim-real learning systems for end-to-end autonomy.\n\n\n## 📢 News\n- **`[2025/1/16]`** We released the data and models on 👾 ModelScope to better serve users in China.\n- **`[2026/1/6]`** We released the code **v1.0**.\n- **`[2025/12/31]`** We released the data and models **v1.0** on 🤗 Hugging Face. Happy New Year ! 🎄\n- **`[2025/12/1]`** We released our [paper](https://arxiv.org/abs/2511.23369) on arXiv. \n\n\n## 📋 TODO List\n- [x] More Visualization Results.\n- [x] Future Sensors Data.\n- [x] Sim-Real Co-training Code release (Jan. 2026).\n- [x] Simulation Data release (Dec. 2025).\n- [x] Checkpoints release (Dec. 2025).\n\n---\n\n## 📌 Table of Contents\n\n- 🏛️ [Model Zoo](#%EF%B8%8F-model-zoo)\n- 🎯 [Getting Started](#-getting-started)\n- 📦 [Data Preparation](#-data-preparation)\n  - [Download Dataset](#1-download-dataset)\n  - [Set Up Configuration](#2-set-up-configuration)\n- ⚙️ [Sim-Real Co-Training](#%EF%B8%8F-sim-real-co-training-recipe)\n  - [Co-Training with Pseudo-Expert](#co-training-with-pseudo-expert)\n  - [Co-Training with Rewards Only](#co-training-with-rewards-only)\n- 🔍 [Inference](#-inference)\n  - [NAVSIM v2 navhard](#navsim-v2-navhard)\n  - [NAVSIM v2 navtest](#navsim-v2-navtest)\n- ⭐ [License and Citation](#-license-and-citation) \n\n## 🏛️ Model Zoo\n\n\u003ctable\u003e\n  \u003ctr style=\"text-align: center;\"\u003e\n    \u003cth rowspan=\"2\"\u003eModel\u003c/th\u003e\n    \u003cth rowspan=\"2\"\u003eBackbone\u003c/th\u003e\n    \u003cth rowspan=\"2\"\u003eSim-Real Config\u003c/th\u003e\n    \u003cth colspan=\"2\"\u003eNAVSIM v2 navhard\u003c/th\u003e\n    \u003cth colspan=\"2\"\u003eNAVSIM v2 navtest\u003c/t\u003e\n\n  \u003c/tr\u003e\n\n  \u003ctr style=\"text-align: center;\"\u003e\n    \u003cth\u003eEPDMS\u003c/th\u003e\n    \u003cth\u003eCKPT\u003c/th\u003e\n    \u003cth\u003eEPDMS\u003c/th\u003e\n    \u003cth\u003eCKPT\u003c/th\u003e\n  \u003c/tr\u003e\n\n  \u003c!-- LTF --\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"./navsim/planning/script/config/common/agent/transfuser_agent.yaml\"\u003eLTF\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003eResNet34\u003c/td\u003e\n    \u003ctd\u003ew/ pseudo-expert\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"./assets/csv/LTF/ltf_sim_navhard.csv\"\u003e30.3\u003c/a\u003e | +6.9\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/blob/main/SimScale_ckpts/LTF/ltf_sim_navhard.ckpt\"\u003eHF\u003c/a\u003e / \n    \u003ca href=\"https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/file/view/master/SimScale_ckpts%2FLTF%2Fltf_sim_navtest.ckpt?id=170866\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"./assets/csv/LTF/ltf_sim_navtest.csv\"\u003e84.4\u003c/a\u003e | +2.9\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/blob/main/SimScale_ckpts/LTF/ltf_sim_navtest.ckpt\"\u003eHF\u003c/a\u003e /\n    \u003ca href=\"https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/file/view/master/SimScale_ckpts%2FLTF%2Fltf_sim_navhard.ckpt?id=170866\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003c!-- DiffusionDrive --\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"./navsim/planning/script/config/common/agent/diffusiondrive_agent.yaml\"\u003eDiffusionDrive\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003eResNet34\u003c/td\u003e\n    \u003ctd\u003ew/ pseudo-expert\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"./assets/csv/DiffusionDrive/diffusiondrive_sim_navhard.csv\"\u003e32.6\u003c/a\u003e | +5.1\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/blob/main/SimScale_ckpts/DiffusionDrive/diffusiondrive_sim_navhard.ckpt\"\u003eHF\u003c/a\u003e / \n    \u003ca href=\"https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/file/view/master/SimScale_ckpts%2FDiffusionDrive%2Fdiffusiondrive_sim_navhard.ckpt?id=170866\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"./assets/csv/DiffusionDrive/diffusiondrive_sim_navtest.csv\"\u003e85.9\u003c/a\u003e | +1.7\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/blob/main/SimScale_ckpts/DiffusionDrive/diffusiondrive_sim_navtest.ckpt\"\u003eHF\u003c/a\u003e / \n    \u003ca href=\"https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/file/view/master/SimScale_ckpts%2FDiffusionDrive%2Fdiffusiondrive_sim_navtest.ckpt?id=170866\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n    \n  \u003c/tr\u003e\n\n  \u003c!-- GTRS-Dense block --\u003e\n  \u003ctr\u003e\n    \u003ctd rowspan=\"4\"\u003e\u003ca href=\"./navsim/planning/script/config/common/agent/gtrs_dense_vov.yaml\"\u003eGTRS-Dense\u003c/a\u003e\u003c/td\u003e\n    \u003ctd rowspan=\"2\"\u003eResNet34\u003c/td\u003e\n    \u003ctd\u003ew/ pseudo-expert\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"./assets/csv/GTRS_Dense/gtrs_dense_resnet_sim_expert_navhard.csv\"\u003e46.1\u003c/a\u003e | +7.8\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/blob/main/SimScale_ckpts/GTRS_Dense/gtrs_dense_resnet_sim_expert_navhard.ckpt\"\u003eHF\u003c/a\u003e /\n    \u003ca href=\"https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/file/view/master/SimScale_ckpts%2FGTRS_Dense%2Fgtrs_dense_resnet_sim_expert_navhard.ckpt?id=170866\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"./assets/csv/GTRS_Dense/gtrs_dense_resnet_sim_expert_navtest.csv\"\u003e84.0\u003c/a\u003e | +1.7\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/blob/main/SimScale_ckpts/GTRS_Dense/gtrs_dense_resnet_sim_expert_navtest.ckpt\"\u003eHF\u003c/a\u003e /\n    \u003ca href=\"https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/file/view/master/SimScale_ckpts%2FGTRS_Dense%2Fgtrs_dense_resnet_sim_expert_navtest.ckpt?id=170866\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd\u003erewards only\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"./assets/csv/GTRS_Dense/gtrs_dense_resnet_sim_expert_navhard.csv\"\u003e46.9\u003c/a\u003e | +8.6\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/blob/main/SimScale_ckpts/GTRS_Dense/gtrs_dense_resnet_sim_reward_navhard.ckpt\"\u003eHF\u003c/a\u003e /\n    \u003ca href=\"https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/file/view/master/SimScale_ckpts%2FGTRS_Dense%2Fgtrs_dense_resnet_sim_reward_navhard.ckpt?id=170866\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"./assets/csv/GTRS_Dense/gtrs_dense_resnet_sim_reward_navtest.csv\"\u003e84.6\u003c/a\u003e | +2.3\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/blob/main/SimScale_ckpts/GTRS_Dense/gtrs_dense_resnet_sim_reward_navtest.ckpt\"\u003eHF\u003c/a\u003e /\n    \u003ca href=\"https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/file/view/master/SimScale_ckpts%2FGTRS_Dense%2Fgtrs_dense_resnet_sim_reward_navtest.ckpt?id=170866\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd rowspan=\"2\"\u003eV2-99\u003c/td\u003e\n    \u003ctd\u003ew/ pseudo-expert\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"./assets/csv/GTRS_Dense/gtrs_dense_vov_sim_expert_navhard.csv\"\u003e47.7\u003c/a\u003e | +5.8\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/blob/main/SimScale_ckpts/GTRS_Dense/gtrs_dense_vov_sim_expert_navhard.ckpt\"\u003eHF\u003c/a\u003e /\n    \u003ca href=\"https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/file/view/master/SimScale_ckpts%2FGTRS_Dense%2Fgtrs_dense_vov_sim_expert_navhard.ckpt?id=170866\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"./assets/csv/GTRS_Dense/gtrs_dense_vov_sim_expert_navtest.csv\"\u003e84.5\u003c/a\u003e | +0.5\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/blob/main/SimScale_ckpts/GTRS_Dense/gtrs_dense_vov_sim_expert_navtest.ckpt\"\u003eHF\u003c/a\u003e /\n    \u003ca href=\"https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/file/view/master/SimScale_ckpts%2FGTRS_Dense%2Fgtrs_dense_vov_sim_expert_navtest.ckpt?id=170866\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd\u003erewards only\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"./assets/csv/GTRS_Dense/gtrs_dense_vov_sim_reward_navhard.csv\"\u003e48.0\u003c/a\u003e | +6.1\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/blob/main/SimScale_ckpts/GTRS_Dense/gtrs_dense_vov_sim_reward_navhard.ckpt\"\u003eHF\u003c/a\u003e /\n    \u003ca href=\"https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/file/view/master/SimScale_ckpts%2FGTRS_Dense%2Fgtrs_dense_vov_sim_reward_navhard.ckpt?id=170866\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"./assets/csv/GTRS_Dense/gtrs_dense_vov_sim_reward_navtest.csv\"\u003e84.8\u003c/a\u003e | +0.8\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/blob/main/SimScale_ckpts/GTRS_Dense/gtrs_dense_vov_sim_reward_navtest.ckpt\"\u003eHF\u003c/a\u003e /\n    \u003ca href=\"https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/file/view/master/SimScale_ckpts%2FGTRS_Dense%2Fgtrs_dense_vov_sim_reward_navtest.ckpt?id=170866\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003e [!NOTE]\n\u003e We fixed a minor error in the simulation process without changing the method, resulting in better performance than the numbers reported in the arXiv version. We will update the arXiv paper soon.\n\n\n## 🎯 Getting Started\n\n### 1. Clone SimScale Repo\n\n```bash\ngit clone https://github.com/OpenDriveLab/SimScale.git\ncd SimScale\n```\n\n### 2. Create Environment\n\n```bash\nconda env create --name simscale -f environment.yml\nconda activate simscale\npip install -e .\n```\n\n## 📦 Data Preparation\n\nOur released simulation data is based on [nuPlan](https://www.nuscenes.org/nuplan) and [NAVSIM](https://github.com/autonomousvision/navsim). **We recommend first preparing the real-world data by following the instructions in [Download NAVSIM](https://github.com/autonomousvision/navsim/blob/main/docs/install.md#2-download-the-dataset). If you plan to use GTRS, please directly refer [Download NAVSIM](./docs/install.md#2-download-the-dataset).**\n\n### 1. Download Dataset\n\nWe provide 🤗 [Script (Hugging Face)](./tools/download_hf.sh) and 👾 [Script (ModelScope)](./tools/download_ms) (users in China) for downloading the simulation data .\n\nOur simulation data format follows that of [OpenScene](https://github.com/OpenDriveLab/OpenScene/blob/main/docs/getting_started.md#download-data), with each clip/log has a fixed temporal horizon of 6 seconds at 2 Hz (2 s history + 4 s future), which are stored separately in `sensor_blobs_hist` and `sensor_blobs_fut`, respectively. \n**For policy training, `sensor_blobs_hist` alone is sufficient.**\n\n#### 📊  Overview Table of Simulated Synthetic Data\n\n\u003ctable\u003e\n  \u003ctr style=\"text-align: center;\"\u003e\n    \u003cth rowspan=\"1\"\u003eSplit / Sim. Round\u003c/th\u003e\n    \u003cth rowspan=\"1\"\u003e# Tokens\u003c/th\u003e\n    \u003cth rowspan=\"1\"\u003eLogs\u003c/th\u003e\n    \u003cth rowspan=\"1\"\u003eSensors_Hist\u003c/th\u003e\n    \u003cth rowspan=\"1\"\u003eSensors_Fut\u003c/th\u003e\n    \u003cth rowspan=\"1\"\u003eLink\u003c/th\u003e\n  \u003c/tr\u003e\n  \n  \u003cth colspan=\"6\"\u003ePlanner-based Pseudo-Expert\u003c/th\u003e\n\n  \u003ctr \u003e\n    \u003ctd\u003e\u003ca href=\"./navsim/planning/script/config/common/train_test_split/scene_filter/navtrain_reaction_pdm_v1.0-0.yaml\"\u003ereaction_pdm_v1.0-0\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e65K\u003c/td\u003e\n    \u003ctd\u003e9.9GB\u003c/td\u003e\n    \u003ctd\u003e569GB\u003c/td\u003e\n    \u003ctd\u003e1.2T\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/tree/main/SimScale_data/synthetic_reaction_pdm_v1.0-0\"\u003eHF\u003c/a\u003e+ \n    \u003ca href=\"https://huggingface.co/datasets/OpenDriveLab-org/SimScale/tree/main/SimScale_data/synthetic_reaction_pdm_v1.0-0\"\u003eHF_Fut\u003c/a\u003e /\n    \u003ca href=\"https://modelscope.cn/datasets/OpenDriveLab/SimScale/tree/master/SimScale_data/synthetic_reaction_pdm_v1.0-0\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"./navsim/planning/script/config/common/train_test_split/scene_filter/navtrain_reaction_pdm_v1.0-1.yaml\"\u003ereaction_pdm_v1.0-1\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e55K\u003c/td\u003e\n    \u003ctd\u003e8.5GB\u003c/td\u003e\n    \u003ctd\u003e448GB\u003c/td\u003e\n    \u003ctd\u003e964GB\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/tree/main/SimScale_data/synthetic_reaction_pdm_v1.0-1\"\u003eHF\u003c/a\u003e+ \n    \u003ca href=\"https://huggingface.co/datasets/OpenDriveLab-org/SimScale/tree/main/SimScale_data/synthetic_reaction_pdm_v1.0-1\"\u003eHF_Fut\u003c/a\u003e /\n    \u003ca href=\"https://modelscope.cn/datasets/OpenDriveLab/SimScale/tree/master/SimScale_data/synthetic_reaction_pdm_v1.0-1\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"./navsim/planning/script/config/common/train_test_split/scene_filter/navtrain_reaction_pdm_v1.0-2.yaml\"\u003ereaction_pdm_v1.0-2\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e46K\u003c/td\u003e\n    \u003ctd\u003e6.9GB\u003c/td\u003e\n    \u003ctd\u003e402GB\u003c/td\u003e\n    \u003ctd\u003e801GB\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/tree/main/SimScale_data/synthetic_reaction_pdm_v1.0-2\"\u003eHF\u003c/a\u003e+ \n    \u003ca href=\"https://huggingface.co/datasets/OpenDriveLab-org/SimScale/tree/main/SimScale_data/synthetic_reaction_pdm_v1.0-2\"\u003eHF_Fut\u003c/a\u003e /\n    \u003ca href=\"https://modelscope.cn/datasets/OpenDriveLab/SimScale/tree/master/SimScale_data/synthetic_reaction_pdm_v1.0-2\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"./navsim/planning/script/config/common/train_test_split/scene_filter/navtrain_reaction_pdm_v1.0-3.yaml\"\u003ereaction_pdm_v1.0-3\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e38K\u003c/td\u003e\n    \u003ctd\u003e5.6GB\u003c/td\u003e\n    \u003ctd\u003e333GB\u003c/td\u003e\n    \u003ctd\u003e663GB\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/tree/main/SimScale_data/synthetic_reaction_pdm_v1.0-3\"\u003eHF\u003c/a\u003e+ \n    \u003ca href=\"https://huggingface.co/datasets/OpenDriveLab-org/SimScale/tree/main/SimScale_data/synthetic_reaction_pdm_v1.0-3\"\u003eHF_Fut\u003c/a\u003e /\n    \u003ca href=\"https://modelscope.cn/datasets/OpenDriveLab/SimScale/tree/master/SimScale_data/synthetic_reaction_pdm_v1.0-3\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"./navsim/planning/script/config/common/train_test_split/scene_filter/navtrain_reaction_pdm_v1.0-4.yaml\"\u003ereaction_pdm_v1.0-4\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e32K\u003c/td\u003e\n    \u003ctd\u003e4.7GB\u003c/td\u003e\n    \u003ctd\u003e279GB\u003c/td\u003e\n    \u003ctd\u003e554GB\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/tree/main/SimScale_data/synthetic_reaction_pdm_v1.0-4\"\u003eHF\u003c/a\u003e+ \n    \u003ca href=\"https://huggingface.co/datasets/OpenDriveLab-org/SimScale/tree/main/SimScale_data/synthetic_reaction_pdm_v1.0-4\"\u003eHF_Fut\u003c/a\u003e /\n    \u003ca href=\"https://modelscope.cn/datasets/OpenDriveLab/SimScale/tree/master/SimScale_data/synthetic_reaction_pdm_v1.0-4\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003cth colspan=\"6\"\u003eRecovery-based Pseudo-Expert\u003c/th\u003e\n\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"./navsim/planning/script/config/common/train_test_split/scene_filter/navtrain_reaction_recovery_v1.0-0.yaml\"\u003ereaction_recovery_v1.0-0\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e45K\u003c/td\u003e\n    \u003ctd\u003e6.8GB\u003c/td\u003e\n    \u003ctd\u003e395GB\u003c/td\u003e\n    \u003ctd\u003e789GB\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/tree/main/SimScale_data/synthetic_reaction_recovery_v1.0-0\"\u003eHF\u003c/a\u003e+ \n    \u003ca href=\"https://huggingface.co/datasets/OpenDriveLab-org/SimScale/tree/main/SimScale_data/synthetic_reaction_recovery_v1.0-0\"\u003eHF_Fut\u003c/a\u003e /\n    \u003ca href=\"https://modelscope.cn/datasets/OpenDriveLab/SimScale/tree/master/SimScale_data/synthetic_reaction_recovery_v1.0-0\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"./navsim/planning/script/config/common/train_test_split/scene_filter/navtrain_reaction_recovery_v1.0-1.yaml\"\u003ereaction_recovery_v1.0-1\u003c/td\u003e\n    \u003ctd\u003e36K\u003c/td\u003e\n    \u003ctd\u003e5.5GB\u003c/td\u003e\n    \u003ctd\u003e316GB\u003c/td\u003e\n    \u003ctd\u003e631GB\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/tree/main/SimScale_data/synthetic_reaction_recovery_v1.0-1\"\u003eHF\u003c/a\u003e+ \n    \u003ca href=\"https://huggingface.co/datasets/OpenDriveLab-org/SimScale/tree/main/SimScale_data/synthetic_reaction_recovery_v1.0-1\"\u003eHF_Fut\u003c/a\u003e /\n    \u003ca href=\"https://modelscope.cn/datasets/OpenDriveLab/SimScale/tree/master/SimScale_data/synthetic_reaction_recovery_v1.0-1\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"./navsim/planning/script/config/common/train_test_split/scene_filter/navtrain_reaction_recovery_v1.0-2.yaml\"\u003ereaction_recovery_v1.0-2\u003c/td\u003e\n    \u003ctd\u003e28K\u003c/td\u003e\n    \u003ctd\u003e4.3GB\u003c/td\u003e\n    \u003ctd\u003e244GB\u003c/td\u003e\n    \u003ctd\u003e488GB\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/tree/main/SimScale_data/synthetic_reaction_recovery_v1.0-2\"\u003eHF\u003c/a\u003e+ \n    \u003ca href=\"https://huggingface.co/datasets/OpenDriveLab-org/SimScale/tree/main/SimScale_data/synthetic_reaction_recovery_v1.0-2\"\u003eHF_Fut\u003c/a\u003e /\n    \u003ca href=\"https://modelscope.cn/datasets/OpenDriveLab/SimScale/tree/master/SimScale_data/synthetic_reaction_recovery_v1.0-2\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"./navsim/planning/script/config/common/train_test_split/scene_filter/navtrain_reaction_recovery_v1.0-3.yaml\"\u003ereaction_recovery_v1.0-3\u003c/td\u003e\n    \u003ctd\u003e22K\u003c/td\u003e\n    \u003ctd\u003e3.3GB\u003c/td\u003e\n    \u003ctd\u003e189GB\u003c/td\u003e\n    \u003ctd\u003e378GB\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/tree/main/SimScale_data/synthetic_reaction_recovery_v1.0-3\"\u003eHF\u003c/a\u003e+ \n    \u003ca href=\"https://huggingface.co/datasets/OpenDriveLab-org/SimScale/tree/main/SimScale_data/synthetic_reaction_recovery_v1.0-3\"\u003eHF_Fut\u003c/a\u003e /\n    \u003ca href=\"https://modelscope.cn/datasets/OpenDriveLab/SimScale/tree/master/SimScale_data/synthetic_reaction_recovery_v1.0-3\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ca href=\"./navsim/planning/script/config/common/train_test_split/scene_filter/navtrain_reaction_recovery_v1.0-4.yaml\"\u003ereaction_recovery_v1.0-4\u003c/td\u003e\n    \u003ctd\u003e17K\u003c/td\u003e\n    \u003ctd\u003e2.7GB\u003c/td\u003e\n    \u003ctd\u003e148GB\u003c/td\u003e\n    \u003ctd\u003e296GB\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://huggingface.co/datasets/OpenDriveLab/SimScale/tree/main/SimScale_data/synthetic_reaction_recovery_v1.0-4\"\u003eHF\u003c/a\u003e+ \n    \u003ca href=\"https://huggingface.co/datasets/OpenDriveLab-org/SimScale/tree/main/SimScale_data/synthetic_reaction_recovery_v1.0-4\"\u003eHF_Fut\u003c/a\u003e /\n    \u003ca href=\"https://modelscope.cn/datasets/OpenDriveLab/SimScale/tree/master/SimScale_data/synthetic_reaction_recovery_v1.0-4\"\u003eMS\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\n\u003c/table\u003e\n\n\u003e [!TIP]\n\u003e Before downloading, we recommend checking the table above to select the appropriate split and `sensor_blobs`.\n\n#### 🏭 Simulation Data Pipeline\n\n\u003cdiv id=\"top\" align=\"center\"\u003e\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"assets/pipeline.png\" \u003e\n\u003c/p\u003e\n\u003c/div\u003e\n\n#### 🧩 Examples of Simulated Synthetic Data\n\n\u003ctable align=\"center\"\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cp\u003e5c9694f15f9c5537\u003c/p\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/OpenDriveLab/opendrivelab.github.io/master/SimScale/github/5c9694f15f9c5537.png\" /\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cp\u003e367cfa28901257ee\u003c/p\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/OpenDriveLab/opendrivelab.github.io/master/SimScale/github/367cfa28901257ee.png\"/\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cp\u003ed37c49db3dcd59fa\u003c/p\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/OpenDriveLab/opendrivelab.github.io/master/SimScale/github/d37c49db3dcd59fa.png\"/\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cp\u003eSim. 1\u003c/p\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/OpenDriveLab/opendrivelab.github.io/master/SimScale/github/5c9694f15f9c5537-sim1.gif\" /\u003e\u003cbr/\u003e\n      \u003cp\u003eSim. 2\u003c/p\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/OpenDriveLab/opendrivelab.github.io/master/SimScale/github/5c9694f15f9c5537-sim2.gif\" /\u003e\u003cbr/\u003e\n      \u003cp\u003eSim. 3\u003c/p\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/OpenDriveLab/opendrivelab.github.io/master/SimScale/github/5c9694f15f9c5537-sim3.gif\" /\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cp\u003eSim. 1\u003c/p\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/OpenDriveLab/opendrivelab.github.io/master/SimScale/github/367cfa28901257ee-sim1.gif\" /\u003e\u003cbr/\u003e\n      \u003cp\u003eSim. 2\u003c/p\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/OpenDriveLab/opendrivelab.github.io/master/SimScale/github/367cfa28901257ee-sim2.gif\" /\u003e\u003cbr/\u003e\n      \u003cp\u003eSim. 3\u003c/p\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/OpenDriveLab/opendrivelab.github.io/master/SimScale/github/367cfa28901257ee-sim3.gif\"/\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cp\u003eSim. 1\u003c/p\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/OpenDriveLab/opendrivelab.github.io/master/SimScale/github/d37c49db3dcd59fa-sim1.gif\" /\u003e\u003cbr/\u003e\n      \u003cp\u003eSim. 2\u003c/p\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/OpenDriveLab/opendrivelab.github.io/master/SimScale/github/d37c49db3dcd59fa-sim2.gif\" /\u003e\u003cbr/\u003e\n      \u003cp\u003eSim. 3\u003c/p\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/OpenDriveLab/opendrivelab.github.io/master/SimScale/github/d37c49db3dcd59fa-sim3.gif\" /\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\n\n### 2. Set Up Configuration\nWe provide a [Script](./tools/move.sh) for moving the download simulation data to create the following structure.\n\n```angular2html\nnavsim_workspace/\n├── simscale/\n├── exp/\n└── dataset/\n    ├── maps/\n    ├── navsim_logs/\n    │   ├── test/\n    │   ├── trainval/\n    │   ├── synthetic_reaction_pdm_v1.0-*/\n    │   │   ├── [log]-00*.pkl\n    │   │   └── ...\n    │   └── synthetic_reaction_recovery_v1.0-*/\n    ├── sensor_blobs/\n    │   ├── test/\n    │   ├── trainval/\n    │   ├── synthetic_reaction_pdm_v1.0-*/\n    │   │   └── [token]-00*/\n    │   │       ├── CAM_B0/\n    │   │       └── ...\n    │   └── synthetic_reaction_recovery_v1.0-*/\n    └── navhard_two_stage/\n```\n\n## ⚙️ Sim-Real Co-Training Recipe\n\n### Preparation\n1. Refer the [Script](./scripts/training/run_dataset_cache.sh) to cache the real-world and simulation data.\n2. Download pretrained image backbone weight, [ResNet34](https://huggingface.co/timm/resnet34.a1_in1k) or [V2_99](https://drive.google.com/file/d/1gQkhWERCzAosBwG5bh2BKkt1k0TJZt-A/view).\n\n\n### Co-Training with Pseudo-Expert\nWe provide [Scripts](./scripts/training) for sim–real co-training, \n*e.g.*, [run_diffusiondrive_training_syn.sh](./scripts/training/run_diffusiondrive_training_syn.sh).\n\nThe main configuration options are as follows:\n```bash\nexport SYN_IDX=0   # 0, 1, 2, 3, 4\nexport SYN_GT=pdm  # pdm, recovery\n```\n- `SYN_IDX` specifies which rounds of simulation data are included; *e.g.*, `SYN_IDX=2` means that rounds 0, 1, and 2 will be used.\n- `SYN_GT` specifies the type of pseudo-expert used for supervision.\n\n\n\nIn addition, the cache path for simulation data is hard-coded in [dataset.py#136](./navsim/planning/training/dataset.py#L136). Please make sure the path is correctly set to your local simulation data directory before training.\n- **Regression-based Policy | *LTF***\n\nWe provide a [Script](./scripts/training/run_transfuser_training_syn.sh) to train LTF with 8 GPUs for 100 epochs.\n\n- **Diffusion-based Policy | *DiffusionDrive***\n\nWe provide a [Script](./scripts/training/run_diffusiondrive_training_syn.sh) to train DiffusionDrive with 8 GPUs for 100 epochs.\n\n- **Scoring-based Policy | *GTRS-Dense***\n\nWe provide a [Script](./scripts/training/run_gtrs_dense_training_multi_syn.sh) to train GTRS_Dense on 4 nodes, each with 8 GPUs, for 50 epochs.\n\nWe also provide 🤗 [Reward Files (Hugging Face)](https://huggingface.co/datasets/OpenDriveLab/SimScale/tree/main/SimScale_rewards) and 👾 [Reward Files (ModelScope)](https://www.modelscope.cn/datasets/OpenDriveLab/SimScale/tree/master/SimScale_rewards) (users in China) for rewards in simulation data.  Please download correspending files first and move them to `NAVSIM_TRAJPDM_ROOT/sim`. The reward files path is hard-coded in [gtrs_agent.py#223](./navsim/agents/gtrs_dense/gtrs_agent.py#223). Check it before training.\n \n\n### Co-Training with Rewards Only\n\n- **Scoring-based Policy | *GTRS-Dense***\n\nIt uses the same training \n[Script](./scripts/training/run_gtrs_dense_training_multi_syn.sh),\nto train GTRS_Dense on 4 nodes, each with 8 GPUs, for 50 epochs.\n\nThe main configuration option is as follows:\n```bash\nsyn_imi=false  # true, false\n```\n- `syn_imi`: When set to `false`, the imitation learning loss is disabled for simulation data, while it remains enabled for real-world data.\n## 🔍 Inference\n\n### Preparation\n\nRefer the [Script](./scripts/evaluation/run_metric_caching.sh) to cache metric first.\n\n### NAVSIM v2 navhard\n\nWe provide [Scripts](./scripts/evaluation_navhard) to evaluate three policies on [navhard](./navsim/planning/script/config/common/train_test_split/scene_filter/navhard_two_stage.yaml) using GPU inference.\n\n### NAVSIM v2 navtest\n\nWe provide [Scripts](./scripts/evaluation_navtest) to evaluate three policies  on [navtest](./navsim/planning/script/config/common/train_test_split/scene_filter/navtest.yaml) using GPU inference.\n\n## ❤️ Acknowledgements\n\nWe acknowledge all the open-source contributors for the following projects to make this work possible:\n\n- [NAVSIM](https://github.com/autonomousvision/navsim) | [MTGS](https://github.com/OpenDriveLab/MTGS) | [GTRS](https://github.com/NVlabs/GTRS) | [DiffusionDrive](https://github.com/hustvl/DiffusionDrive)\n\n## ⭐ License and Citation\n\nAll content in this repository is under the [Apache-2.0 license](https://www.apache.org/licenses/LICENSE-2.0).\nThe released data is based on [nuPlan](https://www.nuscenes.org/nuplan) and is under the [CC-BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) license.\n\nIf any parts of our paper and code help your research, please consider citing us and giving a star to our repository.\n\n```bibtex\n@article{tian2025simscale,\n  title={SimScale: Learning to Drive via Real-World Simulation at Scale},\n  author={Haochen Tian and Tianyu Li and Haochen Liu and Jiazhi Yang and Yihang Qiu and Guang Li and Junli Wang and Yinfeng Gao and Zhang Zhang and Liang Wang and Hangjun Ye and Tieniu Tan and Long Chen and Hongyang Li},\n  journal={arXiv preprint arXiv:2511.23369},\n  year={2025}\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopendrivelab%2Fsimscale","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopendrivelab%2Fsimscale","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopendrivelab%2Fsimscale/lists"}