Papers › Unity: A General Platform for Intelligent Agents

Unity: A General Platform for Intelligent Agents

7 Sep 2018arXiv:1809.02627archive 2025-07-28

Arthur Juliani, Vincent-Pierre Berges, Ervin Teng, Andrew Cohen, Jonathan Harper, Chris Elion, Chris Goy, Yuan Gao, Hunter Henry, Marwan Mattar, Danny Lange

Recent advances in artificial intelligence have been driven by the presence of increasingly realistic and complex simulated environments. However, many of the existing environments provide either unrealistic visuals, inaccurate physics, low task complexity, restricted agent perspective, or a limited capacity for interaction among artificial agents. Furthermore, many platforms lack the ability to flexibly configure the simulation, making the simulated environment a black-box from the perspective of the learning system. In this work, we propose a novel taxonomy of existing simulation platforms and discuss the highest level class of general platforms which enable the development of learning environments that are rich in visual, physical, task, and social complexity. We argue that modern game engines are uniquely suited to act as general platforms and as a case study examine the Unity engine and open source Unity ML-Agents Toolkit. We then survey the research enabled by Unity and the Unity ML-Agents Toolkit, discussing the kinds of research a flexible, interactive and easily configurable general platform can facilitate.

PaperPDFCodeCode Syntology ran

In Syntology Open this paper in Syntology's Atlas, the map of the papers in Syntology's graph and their citations.

For agents, Syntology's MCP tool lists every function and class Syntology harvested from this paper and whether it ran (how to connect): get_harvested_code_for_paper(arxiv_id="1809.02627")

Code

Syntology Ran 7 of 44 code samples harvested from 16 repositories linked to this paper; 37 have no recorded run. Of those that ran: 4 ran · fixture could not drive it; 3 ran with no contract checked.

By repository: community (archive-listed): 44 samples from 16 repositories, 7 ran. The run record, sample by sample. “Ran” means executed on a synthesized input, not that the code is correct or reproduces the paper.

55 repositories listed; official and paper-mentioned ones first.

Unity-Technologies/ml-agents officialmentioned in papermentioned on GitHubtfNOASSERTION report
Charlesthebird/BOXES-DroneDelivery-ML-Agents mentioned on GitHubtfApache-2.0 report
DdATM/ML-FlappyBird mentioned on GitHubtfApache-2.0 report
EVavylonis/iSEER mentioned on GitHubtfApache-2.0 report
Henreich/ML-Breakout-Pong mentioned on GitHubtfApache-2.0 report
Henreich/ML-Pong mentioned on GitHubtfApache-2.0 report
Henreich/ML-testing mentioned on GitHubtfApache-2.0 report
JonathanVanDyke/ML-Unity mentioned on GitHubtfApache-2.0 report
Michaelwolf95/Hierarchical-ML-agents mentioned on GitHubtfApache-2.0 report
MikeWise2718/ml-agents-mod mentioned on GitHubtfApache-2.0 report
MnMaxon/VR-Gesture-Detection mentioned on GitHubtfApache-2.0 report
Pranacahya/FP-GameCerdas mentioned on GitHubtfApache-2.0 report
Skylerzhang023/MediaAISuperCloneBoy mentioned on GitHubtfApache-2.0 report
Xking8/Nav_ml-agent-v5 mentioned on GitHubtf report
Yarlak/Larry mentioned on GitHubtfApache-2.0 report
Yarlak/LarryOriginal mentioned on GitHubtfApache-2.0 report
addy369/AnimalAI mentioned on GitHubtf report
alexcercos/ML-Agents mentioned on GitHubtfApache-2.0 report
carlotes247/IGGI19_Imitation_Learning_Workshop mentioned on GitHubtfApache-2.0 report
chenh1001/Basketball-ML-Unity mentioned on GitHubtfApache-2.0 report
dingxiaowei/MLAgents mentioned on GitHubtfApache-2.0 report
dotcli/zombie-architect mentioned on GitHubtfApache-2.0 report
gyutaaa/gyutaekim-2016011728 mentioned on GitHub report
gzrjzcx/ML-agents mentioned on GitHubtfApache-2.0 report
ironbar/AnimalAI-Olympics mentioned on GitHub report
ivanfeliciano/AnimalAI-INAOE mentioned on GitHubtf report
jlee335/AI-Alggagi-Game mentioned on GitHubtfApache-2.0 report
josdyr/ml-agents mentioned on GitHubtfApache-2.0 report
jwawon/unity-ml-agent-study mentioned on GitHubtfApache-2.0 report
kaiolae/UnityMLAgents mentioned on GitHubtfApache-2.0 report
leiapollos/ml-agents-iaj-selfdrivingcar mentioned on GitHubtfApache-2.0 report
limxuanyu127/Tank-Game mentioned on GitHubtfApache-2.0 report
mantoone/ml-agents mentioned on GitHubtfApache-2.0 report
maxiwoj/car_racer_ml_agents mentioned on GitHubtfApache-2.0 report
mbiesenb/TensorFlowTikTak mentioned on GitHubtfApache-2.0 report
mdcrosby/animal-ai mentioned on GitHubApache-2.0 report
neuroailab/flex-ml-agents mentioned on GitHubtfApache-2.0 report
nouwaarom/ml-agents mentioned on GitHubtf report
oereo/ML_Agents_App mentioned on GitHubtfApache-2.0 report
piroLight/unity-ml-agent mentioned on GitHubtfApache-2.0 report
porouspaper/games-test mentioned on GitHubtfApache-2.0 report
porouspaper/svo-games mentioned on GitHubtfApache-2.0 report
richard-UMD/Unity-ml-agents mentioned on GitHubtfApache-2.0 report
saya1984/MonsterCarlo2 mentioned on GitHubtfApache-2.0 report
schmitzmelissa/unity-ml-penguins mentioned on GitHubtfApache-2.0 report
seboz123/mlagents-meta-learning mentioned on GitHubtfApache-2.0 report
sociodouble/Machine-Learning mentioned on GitHubtfApache-2.0 report
suhruthGit/Unity3DML mentioned on GitHubtfApache-2.0 report
taesiri/my-mlagents-envs mentioned on GitHubtfApache-2.0 report
timka357/ML_Game mentioned on GitHubtfApache-2.0 report
vkakerbeck/ml-agents-dev mentioned on GitHubtfApache-2.0 report
zachary2940/ml-agents-assignment mentioned on GitHubtfApache-2.0 report

Repository list and official/mentioned flags are the archive's, frozen 2025-07-28. Reachability, where shown, is from one Syntology probe window (2026-09-16 to 2026-09-18); repositories not probed show nothing. GitHub stars are not tracked.

Code Syntology ran Syntology

44 samples harvested; 7 ran; 0 honoured the contract we drafted; 37 have no recorded run. Read from Syntology's graph 2026-09-24; that is when this build read the record, not when the samples ran.

4ran · fixture could not drive it
3ran
37unverified

Licence: 0 of the 44 samples are pointer only, meaning Syntology does not serve that copy's text. This page shows no code text for any sample; each one links to its file in the repository.

Harvested from 16 repositories linked to this paper, official or community; each sample names its own and says which. “Ran” means the sample executed on a synthesized input. It does not mean the output is correct, and nothing here reproduces the paper's results. “Honoured” and “violated” refer to a contract Syntology drafted from the code itself; “our draft was wrong” and “fixture could not drive it” are failures of Syntology's instrument, not of the code.

Each sample ends with its code_sha256, Syntology's identity for that exact code. An agent fetches the stored sample with Syntology's MCP tool get_code(code_sha256="…") (how to connect); click an identity to copy that call.

Repository labels, per sample. official repository: The archive marks this repository official for the paper. named in the paper: The archive records that the paper mentions this repository; it is not marked official. community (archive-listed): In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper. found in paper text by Syntology: 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. Samples from a repository marked official are listed first. Licence labels name the repository's licence as recorded at harvest. “Pointer only” means Syntology does not serve that copy's text, for one of four reasons: no licence file was found; the licence was not identified; the licence is recorded as permissive but that copy's record is not marked cleared; or the licence is outside the permissive list Syntology serves text under (MIT, Apache-2.0, BSD and similar). Some licences outside that list permit redistribution, such as WTFPL, and GPL-3.0 under its conditions; they are simply not on the list. Hover a licence label for the reason. File links open the file on GitHub at the default branch, which may have changed since the harvest.

augmentData MnMaxon/VR-Gesture-Detection/QuickDraw-master/QD_trainer.py community (archive-listed) ran · fixture could not drive it fingerprinted Apache-2.0 (permissive) · 2e6fe67a4824a13c · report
discount_rewards Xking8/Nav_ml-agent-v5/ml-agents/mlagents/trainers/ppo/trainer.py community (archive-listed) ran · fixture could not drive it fingerprinted Apache-2.0 (permissive) · c8715f0abed1447a · report
disp_to_depth vkakerbeck/ml-agents-dev/ml-agents-dev/mlagentsdev/trainers/depth_layers.py community (archive-listed) ran Apache-2.0 (permissive) · 62287188376f0ba0 · report
get_gae Xking8/Nav_ml-agent-v5/ml-agents/mlagents/trainers/ppo/trainer.py community (archive-listed) ran · fixture could not drive it Apache-2.0 (permissive) · be5ce4c6ffd05eb6 · report
get_gae nouwaarom/ml-agents/ml-agents/mlagents/trainers/ppo/trainer.py community (archive-listed) ran · fixture could not drive it Apache-2.0 (permissive) · 5dbc205f719692d9 · report
get_translation_matrix vkakerbeck/ml-agents-dev/ml-agents-dev/mlagentsdev/trainers/depth_layers.py community (archive-listed) ran fingerprinted Apache-2.0 (permissive) · 955112f5788539a8 · report
transformation_from_parameters vkakerbeck/ml-agents-dev/ml-agents-dev/mlagentsdev/trainers/depth_layers.py community (archive-listed) ran Apache-2.0 (permissive) · cdc03d6bfc4d3a34 · report
check_all_files limxuanyu127/Tank-Game/utils/validate_release_links.py community (archive-listed) unverified Apache-2.0 (permissive) · ac4fd14a07faacee · report
check_file limxuanyu127/Tank-Game/utils/validate_release_links.py community (archive-listed) unverified Apache-2.0 (permissive) · 3ba3ea00f16dd25f · report
extract_version_string DdATM/ML-FlappyBird/utils/validate_versions.py community (archive-listed) unverified Apache-2.0 (permissive) · 252a51760867c974 · report
extract_version_string limxuanyu127/Tank-Game/utils/validate_versions.py community (archive-listed) unverified Apache-2.0 (permissive) · 3bd88e14245aea0d · report
extract_version_string suhruthGit/Unity3DML/utils/validate_versions.py community (archive-listed) unverified Apache-2.0 (permissive) · e1dfe51210a25a64 · report
fuse_batchnorm_weights Pranacahya/FP-GameCerdas/ml-agents/mlagents/trainers/barracuda.py community (archive-listed) unverified Apache-2.0 (permissive) · c94435e355e7b351 · report
get_logger dingxiaowei/MLAgents/ml-agents-envs/mlagents_envs/logging_util.py community (archive-listed) unverified Apache-2.0 (permissive) · 0d1db9baf7692a97 · report
get_timer_root jlee335/AI-Alggagi-Game/ml-agents-envs/mlagents_envs/timers.py community (archive-listed) unverified Apache-2.0 (permissive) · 898636e62e62a74b · report
get_timer_root maxiwoj/car_racer_ml_agents/ml-agents-envs/mlagents_envs/timers.py community (archive-listed) unverified Apache-2.0 (permissive) · cabdd9ab42cbcb3f · report
get_timer_stack_for_thread dingxiaowei/MLAgents/ml-agents-envs/mlagents_envs/timers.py community (archive-listed) unverified Apache-2.0 (permissive) · bd12af24fb1c992d · report
get_timer_tree dingxiaowei/MLAgents/ml-agents-envs/mlagents_envs/timers.py community (archive-listed) unverified Apache-2.0 (permissive) · 1cd17c136f273530 · report
get_timer_tree jlee335/AI-Alggagi-Game/ml-agents-envs/mlagents_envs/timers.py community (archive-listed) unverified Apache-2.0 (permissive) · 0c8a5eafd33283a4 · report
get_timer_tree maxiwoj/car_racer_ml_agents/ml-agents-envs/mlagents_envs/timers.py community (archive-listed) unverified Apache-2.0 (permissive) · bc9fe84c78a170b4 · report
keras_model MnMaxon/VR-Gesture-Detection/QuickDraw-master/QD_trainer.py community (archive-listed) unverified Apache-2.0 (permissive) · 80b9318d99a30fc7 · report
keras_predict MnMaxon/VR-Gesture-Detection/QuickDraw-master/MyQD.py community (archive-listed) unverified Apache-2.0 (permissive) · 4809df98b781df5b · report
keras_process_image MnMaxon/VR-Gesture-Detection/QuickDraw-master/QuickDrawApp.py community (archive-listed) unverified Apache-2.0 (permissive) · f7bd2f0e3225162d · report
make_factory saya1984/MonsterCarlo2/experiment_example.py community (archive-listed) unverified Apache-2.0 (permissive) · e65a6bc07a66d1af · report
make_factory saya1984/MonsterCarlo2/experiment_example_alive.py community (archive-listed) unverified Apache-2.0 (permissive) · 445a0082b362ea30 · report
overlay MnMaxon/VR-Gesture-Detection/QuickDraw-master/QuickDrawApp.py community (archive-listed) unverified Apache-2.0 (permissive) · 4d902986f28e6cb8 · report
parse_args Pranacahya/FP-GameCerdas/ml-agents/mlagents/trainers/barracuda.py community (archive-listed) unverified Apache-2.0 (permissive) · 05ae8444066f2dba · report
resnet_multiimage_input vkakerbeck/ml-agents-dev/ml-agents-dev/mlagentsdev/trainers/depth_networks/resnet_encoder.py community (archive-listed) unverified Apache-2.0 (permissive) · 018b5a0b7cde83df · report
run saya1984/MonsterCarlo2/MonsterCarlo.py community (archive-listed) unverified Apache-2.0 (permissive) · 97bbecd4527e35c5 · report
run saya1984/MonsterCarlo2/MonsterCarlo_alive.py community (archive-listed) unverified Apache-2.0 (permissive) · 6c9bd3e8d926dabd · report
safe_concat_lists DdATM/ML-FlappyBird/ml-agents-envs/mlagents/envs/brain.py community (archive-listed) unverified Apache-2.0 (permissive) · 81afc84fbec73312 · report
safe_concat_lists Skylerzhang023/MediaAISuperCloneBoy/ml-agents-envs/mlagents/envs/brain.py community (archive-listed) unverified Apache-2.0 (permissive) · 1184a9fb2e22088c · report
safe_concat_lists Yarlak/Larry/ml-agents-envs/mlagents/envs/brain.py community (archive-listed) unverified Apache-2.0 (permissive) · 6a0e22a59fe253a4 · report
safe_concat_np_ndarray DdATM/ML-FlappyBird/ml-agents-envs/mlagents/envs/brain.py community (archive-listed) unverified Apache-2.0 (permissive) · 2d7ef98a863e59fc · report
safe_concat_np_ndarray Skylerzhang023/MediaAISuperCloneBoy/ml-agents-envs/mlagents/envs/brain.py community (archive-listed) unverified Apache-2.0 (permissive) · 5190b0ecc419147a · report
sort Pranacahya/FP-GameCerdas/ml-agents/mlagents/trainers/barracuda.py community (archive-listed) unverified Apache-2.0 (permissive) · b3c16c380fe997ae · report
stars_to_ar MnMaxon/VR-Gesture-Detection/QuickDraw-master/MyQD.py community (archive-listed) unverified Apache-2.0 (permissive) · 4cfaabc4e711dbfd · report
table_line chenh1001/Basketball-ML-Unity/utils/make_readme_table.py community (archive-listed) unverified Apache-2.0 (permissive) · f4c083a4a22cef9d · report
table_line dotcli/zombie-architect/utils/make_readme_table.py community (archive-listed) unverified Apache-2.0 (permissive) · 9779b0b074e2f3da · report
table_line limxuanyu127/Tank-Game/utils/make_readme_table.py community (archive-listed) unverified Apache-2.0 (permissive) · 2935d2be2fab5495 · report
timed dingxiaowei/MLAgents/ml-agents-envs/mlagents_envs/timers.py community (archive-listed) unverified Apache-2.0 (permissive) · f7c5856fd6c542aa · report
timed jlee335/AI-Alggagi-Game/ml-agents-envs/mlagents_envs/timers.py community (archive-listed) unverified Apache-2.0 (permissive) · 854424acc6ca7c64 · report
timed maxiwoj/car_racer_ml_agents/ml-agents-envs/mlagents_envs/timers.py community (archive-listed) unverified Apache-2.0 (permissive) · cee687ba0be5df15 · report
top_predict MnMaxon/VR-Gesture-Detection/QuickDraw-master/MyQD.py community (archive-listed) unverified Apache-2.0 (permissive) · c9e61fb08307f034 · report

Tasks

Reinforcement LearningUnity

Results from the paper archive 2025-07-28

No leaderboard rows for this paper in the archive.

Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections