{"id":20143,"name":"CityFlow","description":"A Multi-Agent Reinforcement Learning Environment for Large Scale City Traffic Scenario.","url":"https://github.com/cityflow-project/CityFlow","last_synced_at":"2026-04-07T14:00:38.681Z","repository":{"id":37664790,"uuid":"172636772","full_name":"cityflow-project/CityFlow","owner":"cityflow-project","description":"A Multi-Agent Reinforcement Learning Environment for Large Scale City Traffic Scenario","archived":false,"fork":false,"pushed_at":"2025-08-19T21:39:36.000Z","size":347,"stargazers_count":982,"open_issues_count":48,"forks_count":205,"subscribers_count":15,"default_branch":"master","last_synced_at":"2026-04-05T13:02:29.119Z","etag":null,"topics":["multiagent-reinforcement-learning","multiagent-systems","traffic-signal-control","traffic-simulation"],"latest_commit_sha":null,"homepage":"https://cityflow-project.github.io","language":"C++","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/cityflow-project.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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}},"created_at":"2019-02-26T04:16:52.000Z","updated_at":"2026-03-31T18:47:51.000Z","dependencies_parsed_at":"2025-08-29T01:32:17.825Z","dependency_job_id":"a50195e5-daf4-424e-b4a9-5b970a9f5ce0","html_url":"https://github.com/cityflow-project/CityFlow","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cityflow-project/CityFlow","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cityflow-project%2FCityFlow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cityflow-project%2FCityFlow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cityflow-project%2FCityFlow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cityflow-project%2FCityFlow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cityflow-project","download_url":"https://codeload.github.com/cityflow-project/CityFlow/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cityflow-project%2FCityFlow/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31515151,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T03:10:19.677Z","status":"ssl_error","status_checked_at":"2026-04-07T03:10:13.982Z","response_time":105,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5: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"}},"owner":{"login":"cityflow-project","name":"cityflow-project","uuid":"48002753","kind":"organization","description":null,"email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/48002753?v=4","repositories_count":5,"last_synced_at":"2023-03-05T14:16:11.646Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/cityflow-project","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-15T17:43:32.603Z","updated_at":"2023-03-05T14:16:11.667Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cityflow-project","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cityflow-project/repositories"},"packages":[],"commits":{"id":1254137,"full_name":"cityflow-project/CityFlow","default_branch":"master","total_commits":73,"total_committers":9,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":8.11111111111111,"dds":0.5616438356164384,"past_year_total_commits":1,"past_year_total_committers":1,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":1.0,"past_year_dds":0.0,"last_synced_at":"2026-04-05T13:01:28.877Z","last_synced_commit":"81ee0f47659ca66177a71f81676691c58ee89184","created_at":"2023-03-27T10:58:47.441Z","updated_at":"2026-04-05T13:01:28.673Z","committers":[{"name":"Qidong Su","email":"soodoshll@gmail.com","login":"soodoshll","count":32},{"name":"zhc134","email":"me@zhanghuichu.com","login":"zhc134","count":25},{"name":"Siyuan Feng","email":"Hzfengsy@sjtu.edu.cn","login":"Hzfengsy","count":5},{"name":"only-changer","email":"only-changer@sjtu.edu.cn","login":"only-changer","count":5},{"name":"이중건 Isaac Lee","email":"49523965+ThisIsIsaac","login":"ThisIsIsaac","count":2},{"name":"zyr17","email":"jzjqz17@gmail.com","login":"zyr17","count":1},{"name":"chacha","email":"chachachen1997@gmail.com","login":"Chacha-Chen","count":1},{"name":"Weinan Zhang","email":"zwn1989@gmail.com","login":"wnzhang","count":1},{"name":"Hua Wei","email":"wingsweihua@gmail.com","login":"wingsweihua","count":1}],"past_year_committers":[{"name":"Hua Wei","email":"wingsweihua@gmail.com","login":"wingsweihua","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/cityflow-project%2FCityFlow/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-07T00:00:11.408Z","repositories_count":6211410,"commits_count":918046029,"contributors_count":35589666,"owners_count":1142640,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"cityflow-project/CityFlow","html_url":"https://github.com/cityflow-project/CityFlow","last_synced_at":"2026-04-05T13:00:33.451Z","status":"error","issues_count":141,"pull_requests_count":57,"avg_time_to_close_issue":14384995.298969071,"avg_time_to_close_pull_request":5078085.37037037,"issues_closed_count":97,"pull_requests_closed_count":54,"pull_request_authors_count":15,"issue_authors_count":91,"avg_comments_per_issue":2.3404255319148937,"avg_comments_per_pull_request":0.2807017543859649,"merged_pull_requests_count":46,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":5,"past_year_pull_requests_count":4,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":87100.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":4,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"created_at":"2023-05-09T10:39:58.765Z","updated_at":"2026-04-05T13:00:33.451Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/cityflow-project%2FCityFlow","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/cityflow-project%2FCityFlow/issues","issue_labels_count":{"enhancement":3,"refactor":1},"pull_request_labels_count":{"need testcase":2,"work in process":2},"issue_author_associations_count":{"NONE":117,"CONTRIBUTOR":21,"MEMBER":3},"pull_request_author_associations_count":{"CONTRIBUTOR":34,"MEMBER":13,"NONE":10},"issue_authors":{"ThisIsIsaac":17,"WaterFountain-Jack":7,"oroojlooy":6,"soodoshll":4,"JinmingM":3,"Siaaa-3":3,"zhc134":3,"samta":2,"kclim2":2,"huanyuyunhuang":2,"LuckyLeeLL":2,"Fullstop000":2,"ZheliXiong":2,"Sheagu":2,"snowman109":2,"josemanuelsannav":2,"Sdinesh7":2,"mcolavita":2,"mandharepa":2,"chuckbassx":2,"TQX177":2,"SiliconSiliconGrass":1,"MartijnD1815":1,"wzFanM":1,"IridescentL":1,"Mnji4":1,"pzxynmy":1,"carolina68":1,"AnniRen":1,"Water2style":1,"zongzidedandan":1,"lizehong111":1,"thanos91":1,"toprakfirat":1,"baimengwei":1,"EvanMath":1,"zzchuman":1,"ykwd":1,"Danny-wenya":1,"abderraouf2che":1,"hch1017":1,"Sirius-1110":1,"Eurekaaw":1,"X3nOph0N":1,"yqwang96":1,"Henr1ch":1,"oagbulut":1,"La-Seine":1,"kriver91":1,"SamuelXie":1,"nimasler":1,"AhmadM-DL":1,"Run-Aground":1,"ygdl0228":1,"BackMountainDevil":1,"thesneakerhead":1,"LiangZhang1996":1,"qmlzhk":1,"traderforce":1,"itsparth":1,"ashok-arora":1,"yuanzhi0515":1,"maranlll":1,"Clown1206":1,"valaxkong":1,"yumianhuli2":1,"sachin-iitd":1,"TTyka":1,"Razi10":1,"wlmsoft":1,"fxsatrio99":1,"IAFutur":1,"zzws603":1,"Zhenlin-Xu":1,"LucasAlegre":1,"666github100":1,"windor":1,"wenzhaoabc":1,"ghost":1,"MFeng1221":1,"Viole-Grace":1,"XiaoWangya":1,"zql1015":1,"zlg9folira":1,"illuminati945":1,"happy956":1,"AmanSavaria1402":1,"1dSHallRed":1,"ankitdipto":1,"XZXSean":1,"moghadas76":1},"pull_request_authors":{"soodoshll":28,"zhc134":8,"Hzfengsy":5,"210041258":3,"only-changer":2,"lilyjazz":2,"Chacha-Chen":1,"ThisIsIsaac":1,"snowman109":1,"wenzhaoabc":1,"wnzhang":1,"MaxVanDijck":1,"zyr17":1,"caokangx":1,"wangyb18":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-07T00:00:09.463Z","repositories_count":14126300,"issues_count":34511815,"pull_requests_count":112731264,"authors_count":11228696,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{"NONE":5},"past_year_pull_request_author_associations_count":{"NONE":4},"past_year_issue_authors":{"AmanSavaria1402":1,"moghadas76":1,"SiliconSiliconGrass":1,"wenzhaoabc":1,"yqwang96":1},"past_year_pull_request_authors":{"210041258":3,"wenzhaoabc":1},"maintainers":[{"login":"zhc134","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/zhc134"},{"login":"Hzfengsy","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/Hzfengsy"}],"active_maintainers":[]},"events":{"total":{"PullRequestEvent":1,"ForkEvent":18,"IssuesEvent":9,"WatchEvent":142,"IssueCommentEvent":9,"PushEvent":1,"PullRequestReviewEvent":1},"last_year":{"PullRequestEvent":1,"ForkEvent":12,"IssuesEvent":6,"WatchEvent":82,"IssueCommentEvent":4,"PushEvent":1,"PullRequestReviewEvent":1}},"keywords":["multiagent-reinforcement-learning","multiagent-systems","traffic-signal-control","traffic-simulation"],"dependencies":[{"ecosystem":"docker","filepath":"Dockerfile","sha":null,"kind":"manifest","created_at":"2025-08-29T01:32:17.628Z","updated_at":"2025-08-29T01:32:17.628Z","repository_link":"https://github.com/cityflow-project/CityFlow/blob/master/Dockerfile","dependencies":[{"id":24890522146,"package_name":"ubuntu","ecosystem":"docker","requirements":"16.04","direct":true,"kind":"build","optional":false}]},{"ecosystem":"pypi","filepath":"setup.py","sha":null,"kind":"manifest","created_at":"2025-08-29T01:32:17.715Z","updated_at":"2025-08-29T01:32:17.715Z","repository_link":"https://github.com/cityflow-project/CityFlow/blob/master/setup.py","dependencies":[]}],"score":9.1345386585599,"created_at":"2023-09-11T14:52:10.121Z","updated_at":"2026-04-07T14:00:38.690Z","avatar_url":"https://github.com/cityflow-project.png","language":"C++","category":"Consumption","sub_category":"Mobility and Transportation","monthly_downloads":0,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"CityFlow\n============\n\n.. image:: https://readthedocs.org/projects/cityflow/badge/?version=latest\n    :target: https://cityflow.readthedocs.io/en/latest/?badge=latest\n    :alt: Documentation Status\n\n.. image:: https://dev.azure.com/CityFlow/CityFlow/_apis/build/status/cityflow-project.CityFlow?branchName=master\n    :target: https://dev.azure.com/CityFlow/CityFlow/_build/latest?definitionId=2\u0026branchName=master\n    :alt: Build Status\n\nCityFlow is a multi-agent reinforcement learning environment for large-scale city traffic scenario.\n\nCheckout these features!\n\n- A microscopic traffic simulator which simulates the behavior of each vehicle, providing highest level detail of traffic evolution.\n- Supports flexible definitions for road network and traffic flow\n- Provides friendly python interface for reinforcement learning\n- **Fast!** Elaborately designed data structure and simulation algorithm with multithreading. Capable of simulating city-wide traffic. See the performance comparison with SUMO [#sumo]_.\n\n.. figure:: https://user-images.githubusercontent.com/44251346/54403537-5ce16b00-470b-11e9-928d-76c8ba0ab463.png\n    :align: center\n    :alt: performance compared with SUMO\n\n    Performance comparison between CityFlow with different number of threads (1, 2, 4, 8) and SUMO. From small 1x1 grid roadnet to city-level 30x30 roadnet. Even faster when you need to interact with the simulator through python API.\n\nScreencast\n----------\n\n.. figure:: https://user-images.githubusercontent.com/44251346/62375390-c9e98600-b570-11e9-8808-e13dbe776f1e.gif\n    :align: center\n    :alt: demo\n\nFeatured Research and Projects Using CityFlow\n---------------------------------------------\n- `PressLight: Learning Max Pressure Control to Coordinate Traffic Signals in Arterial Network (KDD 2019) \u003chttp://personal.psu.edu/hzw77/publications/presslight-kdd19.pdf\u003e`_\n- `CoLight: Learning Network-level Cooperation for Traffic Signal Control \u003chttps://arxiv.org/abs/1905.05717\u003e`_\n- `Traffic Signal Control Benchmark \u003chttps://traffic-signal-control.github.io/\u003e`_\n- `TSCC2050: A Traffic Signal Control Game by Tianrang Intelligence (in Chinese) \u003chttp://game.tscc2050.com/\u003e`_ [#tianrang]_\n\nLinks\n-----\n\n- `WWW 2019 Demo Paper \u003chttps://arxiv.org/abs/1905.05217\u003e`_\n- `Home Page \u003chttp://cityflow-project.github.io/\u003e`_\n- `Documentation and Quick Start \u003chttps://cityflow.readthedocs.io/en/latest/\u003e`_\n- `Docker \u003chttps://hub.docker.com/r/cityflowproject/cityflow\u003e`_\n\n\n.. [#sumo] `SUMO home page \u003chttps://sumo.dlr.de/index.html\u003e`_\n.. [#tianrang] `Tianrang Intelligence home page \u003chttps://www.tianrang.com/\u003e`_\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://ost.ecosyste.ms/api/v1/projects/20143","html_url":"https://ost.ecosyste.ms/projects/20143"}