ICLR 2026
Qinhong Zhou*, Hongxin Zhang*, Xiangye Lin*, Zheyuan Zhang*, Yutian Chen, Wenjun Liu, Zunzhe Zhang, Sunli Chen, Lixing Fang, Qiushi Lyu, Xinyu Sun, Jincheng Yang, Zeyuan Wang, Bao Chi Dang, Zhehuan Chen, Daksha Ladia, Quang Vinh Dang, Jiageng Liu, Chuang Gan
Virtual Community is an open-world platform that simulates human-robot coexistence in shared communities, featuring a physics-based multi-agent simulator and real-world 3D scenes to study embodied social intelligence at scale.
Tabel of Contents
- [2026-05-28] All assets are now hosted on HuggingFace at Virtual-Community-AI/assets and are downloaded automatically on first use.
- [2026-05-24] Codebase restructured into the
vicoPython package; assets moved tovico/assets/. - [2026-05-23] Virtual Community now supports user controlled agents and improves project structure for easier development [uv management and importable vico package].
- [2026-01-26] Virtual Community is accepted by ICLR 2026.
- [2025-06-19] We have released the Virtual Community! Check out the project website and our paper for more details.
We're using Python 3.11, CUDA 11.7 and Ubuntu 24.04. If you are using a different version, please modify the pyproject.toml accordingly.
Install uv if you haven't already.
Install all dependencies:
uv sync
source .venv/bin/activateThis creates a virtual environment, installs PyTorch (CUDA 11.7) from the PyTorch index, and fetches Genesis at the pinned commit — all automatically.
To run the example tour agent, also install the volume grid lib:
cd vico/agents/sg
./setup.shAssets are hosted on HuggingFace at Virtual-Community-AI/assets and are downloaded automatically the first time you run the environment.
To download them manually in advance:
python -c "from vico.tools.asset_utils import download_all_assets; download_all_assets()"Assets include:
scenefolder: contains the generated outdoor 3D scenes.robotsfolder: contains the robot models.objectsfolder: contains the object models.avatarsfolder: contains the human avatars' skin and motion.carsfolder: contains the vehicle models including car, bus, bike, etc.
If you want to use indoor scenes from GRUTopia (otherwise use --no_load_indoor_scene flag), please follow their instructions here to download the commercial_scenes.zip, and unzip it under vico/assets/ViCo/scene/.
After this step, the directory structure should be:
vico/assets/ViCo/
├── scene/
├──── v1/
├──── commercial_scenes/ (optional)
├── robots/
├── objects/
├── avatars/
└── cars/
Run the following script to test the simulation, where 15 agents will tour around the New York Scene.
./scripts/run_tour_agent.shTips: Loading all indoor scenes and objects may take around 40G memory. If you encounter memory issues, consider adding --no_load_indoor_scene flag to the script to disable indoor scenes.
You can take direct control of one agent in the simulation using keyboard input:
./scripts/run_controlled_agent.shThis spawns a 15-agent simulation where agent 0 is controlled by you. Controls:
| Key | Action |
|---|---|
↑ |
Move forward |
← |
Turn left |
→ |
Turn right |
B |
Pick up object |
N |
Put down object |
M |
Enter / exit bus |
< |
Enter / exit bike |
> |
Enter / exit building |
P |
Print agent status |
- **Minimum**: 24 GB
- **Recommended**: 32 GB
- **Minimum**: 10 GB
- **Recommended**: 16 GB
- **Minimum**: 60 GB
- **Recommended**: 100 GB
If you encounter any issues, please check the following:
libstdcxx.so.6: version GLIBCXX_3.4.32 not found (required by sg/builder/builtin/libbuider.so)
To resolve this issue, you may need to update your GCC runtime. On Ubuntu/Debian:
sudo apt install --only-upgrade libstdc++6Alternatively, install an updated runtime via conda-forge (without activating a full conda environment):
conda install -c conda-forge libstdcxx-ngOnly pygltflib-1.16.0 works for now, the latest version pygltflib-1.16.1 will slower the scene loading.
Virtual Community is built on lots of amazing open-source projects:
- Genesis: Universal physics engine backend. Thanks for the team for their great work on Genesis, which provides the foundation for our project.
- GRUtopia: The indoor scene dataset we used for retrieval.
- ARCHITECT: The indoor scene generation method we used.
- Google 3D Tiles: The source of our outdoor scene data.
- OpenStreetMap: The source of our outdoor scene data.
- Blender: The 3D modeling software we used to create and modify the assets.
- ...
And inspiring works that influenced our design and implementation:
- Generative Agents: Inspiring our character generation.
- V-IRL: Inspiring our leverage of real geospatial data.
- ...
With many more not listed here, we are grateful for the contributions of the open-source community that made this project possible.
If you find this work useful, please consider citing:
@inproceedings{virtualcommunity,
title={Virtual Community: An Open World for Humans, Robots, and Society},
author={Qinhong Zhou and Hongxin Zhang and Xiangye Lin and Zheyuan Zhang and Yutian Chen and Wenjun Liu and Zunzhe Zhang and Sunli Chen and Lixing Fang and Qiushi Lyu and Xinyu Sun and Jincheng Yang and Zeyuan Wang and Bao Chi Dang and Zhehuan Chen and Daksha Ladia and Quang Vinh Dang and Jiageng Liu and Chuang Gan},
booktitle={The Fourteenth International Conference on Learning Representations},
year={2026},
url={https://openreview.net/forum?id=Qo0OZZoTLh}
}