Plan-to-Synthesis: Cross-City Human Mobility Generation via Semantic Latent Flow Matching
Organizations: Singapore-MIT Alliance for Research and Technology Centre, MIT · Nanyang Technological University · Hong Kong University of Science & Technology (Guangzhou) · Korea Advanced Institute of Science & Technology ·
Abstract
Human mobility generation aims to synthesize realistic point-of-interest (POI) visitation trajectories and has become an important tool for travel behavior modeling, transportation management, and urban planning. Existing diffusion-based methods achieve high fidelity but require per-city generation, given the inherent heterogeneity of geospatial locations and POI categories, while large language model-based methods generalize across cities but remain too costly at scale, especially for long-horizon trajectory generation. To address this, we propose SeMoFlow, a Semantic human Mobility generation framework based on latent Flow matching. We first encode heterogeneous POIs from different cities into a shared cross-city representation space via hierarchical Semantic IDs, where shared prefixes capture transferable semantics, and successive codes progressively refine the representation toward individual POIs. Building on the semantic IDs, SeMoFlow follows a plan-to-synthesis hierarchical generation paradigm, in which an autoregressive planner generates coarse-grained semantic and recurrence patterns, and a flow matching realizer synthesizes fine-grained suffix latents. The generated latents are subsequently decoded and grounded to concrete POIs. Extensive experiments on large-scale multi-city datasets show that SeMoFlow achieves higher trajectory fidelity than existing baselines, preserves city-specific mobility motifs, and supports both joint multi-city generation and effective cross-city transfer. The code is available at https://github.com/urban-mobility-generation/SeMoFlow.
Figures & tables
| City | Model | ||||||
| Chicago | MoveSim | 0.1115 | 0.0087 | 0.0479 | 0.1346 | 0.4227 | 0.3399 |
| TimeGeo | 0.3286 | 0.0220 | 0.3240 | 0.2905 | 0.0810 | 0.0640 | |
| MIRAGE | 0.1136 | 0.0091 | 0.0711 | 0.0709 | 0.0071 | 0.0257 | |
| MobiDiff | 0.6187 | 0.4815 | 0.0167 | 0.0265 | 0.0187 | 0.0275 | |
| Traveller | 0.4096 | 0.1329 | 0.1909 | 0.2339 | 0.0037 | 0.0073 | |
| SeMoFlow (Per-City) | 0.0943 | 0.0052 | 0.0172 | 0.0018 | 0.0025 | 0.0020 |
| Variant | ||||||
| w/o Graph | 0.0978 | 0.0049 | 0.2133 | 0.2798 | 0.0026 | 0.0056 |
| w/o Planner | 0.4093 | 0.0409 | 0.0745 | 0.0304 | 0.0055 | 0.0052 |
| w/o Router | 0.0943 | 0.0054 | 0.0184 | 0.0019 | 0.0048 | 0.0060 |
| SeMoFlow | 0.0943 | 0.0052 | 0.0172 | 0.0018 | 0.0025 | 0.0020 |
Appendix figures & tables8 assets
Supplementary material from the paper’s appendix.
Appendix
| Dataset | City | # POIs | # Weekly Segments | Length Range ( ) | Experimental Settings |
| Veraset | Boston | 122,731 | 390,148 | Per-City / Multi-City training | |
| Chicago | 206,852 | 679,417 | Per-City / Multi-City training | ||
| New York City | 394,469 | 1,609,108 | Per-City / Multi-City training | ||
| Pittsburgh | 68,869 | 219,842 | Per-City / Multi-City training | ||
| Dallas | 180,268 | 939,831 | Only for Cross-City Transfer | ||
| Foursquare | Los Angeles | 25,889 | 10,197 | Per-City / Multi-City training |
| SID Tokenizer | Prefix Planner | Latent-Flow Realizer | |||
| Parameter | Value | Parameter | Value | Parameter | Value |
| SID levels | 6 | Depth | 6 | Transformer width | 256 |
| Codebook size | 32 (Boston / Pittsburgh) | Attention heads | 8 | Latent width | 256 |
| Codebook size | 48 (Chicago / NYC) | Gap bins | 16 | Attention heads | 8 |
| Prefix levels | 1–3 | Time bins | 42 | Flow trunk | 6 layers |
| Suffix levels | 4–6 | Max. occurrences | 128 | Max. occurrences | 128 |
| Module | Per-City Training | Joint Training | ||
| Parameter | Value | Parameter | Value | |
| Planner | Learning rate | (Boston/NYC/Pittsburgh) (Chicago) | Learning rate | |
| Batch size | 1024 (Boston); 4096 (Chicago) 2048 (NYC/Pittsburgh) | Batch size | 2304 | |
| Epochs | 30 (Boston/Pittsburgh) 50 (Chicago); 60 (NYC) | Epochs | 100 | |
| Weight decay | Weight decay | |||
| Routing temperature | 1.7 | Routing temperature | 2.0 | |
| City | Model | ||||||
| Los Angeles | MoveSim | 0.5282 | 0.0467 | 0.4850 | 0.4333 | 0.5963 | 0.4274 |
| TimeGeo | 0.5558 | 0.0424 | 0.0597 | 0.0683 | 0.0311 | 0.0720 | |
| MIRAGE | 0.4729 | 0.0462 | 0.1367 | 0.1841 | 0.0020 | 0.0182 | |
| MobiDiff | 0.6144 | 0.3996 | 0.0945 | 0.1795 | 0.0782 | 0.2363 | |
| Traveller | 0.5596 | 0.0635 | 0.1496 | 0.1538 | 0.0037 | 0.0064 | |
| SeMoFlow (Per-City) | 0.4883 | 0.0564 | 0.3968 | 0.1474 | 0.0629 | 0.1072 |
Trajectory Generation
Trajectory generation creates plausible, goal-directed paths and motion sequences for people, vehicles, and robots.
See all 181 papers