visualising real time large scale micro simulation of
play

Visualising Real Time Large Scale Micro-Simulation of Transport - PowerPoint PPT Presentation

Visualising Real Time Large Scale Micro-Simulation of Transport Networks . Peter Heywood, Paul Richmond & Steve Maddock Department of Computer Science, The University of Sheffield Overview . Introduction Road Traffic Network Simulation


  1. Visualising Real Time Large Scale Micro-Simulation of Transport Networks . Peter Heywood, Paul Richmond & Steve Maddock Department of Computer Science, The University of Sheffield

  2. Overview . Introduction Road Traffic Network Simulation 3isualisation & Performance Conclusions Heywood P., Richmond P. & Maddock S.

  3. Introduction .

  4. Why Simulate Transport Networks? . • Increasing traffic demand globally • UK projected increase between ���� & ����: [Dep��] • Up to ��% increase of car ownership • ��% to ��% growth in UK road traffic • Poor utilisation of existing infrastructure • Need for improved road simulation systems [NFN ∗ ��, UK ��] • Used for planning & trialling road network changes Rush hour traffic on the M� motorway • Cheaper & less disruptive than real world trials (Mat Fascione - CC BY-SA �.�) Heywood P., Richmond P. & Maddock S.

  5. Why Visualise Transport Network Simulations? . • Decision makers are often not modelling specialists [NFN ∗ ��] • 3isualisation increases accessibility of simulations • Improves decision making An example of traffic microsimulation visualisation ( sumo-gui ) Heywood P., Richmond P. & Maddock S.

  6. Our Aims . • Use the GPU for Agent Based Simulation of Road Network • Using FLAME GPU (Flexible Large Scale Agent Modelling Environment for the GPU) • Large-scale simulation of a road network • Car following behaviour on an artificial road network • Demonstrate performance of road network simulation using FLAME GPU • Described in forthcoming paper “Road Network Simulation using FLAME GPU” [HRM��] • Develop custom visualisation for the simulation • Enable interactive simulation observation • Minimal impact on performance Heywood P., Richmond P. & Maddock S.

  7. Road Traffic Network Simulation .

  8. Microsimulation, Agent Based Modelling & the GPU . Microsimulation & Agent Based Modelling (ABM) • Bottom up simulations - individual level with local interactions [SYGD��] • ABM provides a natural method for describing agents and behaviours • allows emergence of more complex behaviour • Good for modelling congested transport networks Why General Purpose computing on Graphics Processing Units ( GPGPU )? • Increased performance due to massively parallel architecture • Microsimulation is well suited for GPGPU computing [SN��, 4S��] • However it is not embarrassingly parallel Heywood P., Richmond P. & Maddock S.

  9. The Simulation . Artificial Road Network • Scales consistently unlike real world networks • Uniform grid of N � junctions & � N ( N − � ) roads Gipps’ Car Following Model [Gip8�] • Safety distance car following model • Considers driver and vehicle limitations N = 3 N = 4 N = 5 • Extensively used [CPM��] FLAME GPU • “ Template based simulation environment ” for agent based simulation on GPU architecture [Ric��] • Provides a high level interface for describing agents, www.flamegpu.com abstracting the CUDA programming model [Ric��] github.com/flamegpu • State-based agent representation • Message-based communication Heywood P., Richmond P. & Maddock S.

  10. Visualisation & Performance .

  11. General Purpose computing on Graphics Processing Units . • Massively parallel architecture • Perform same operation on many items of data (SIMD) • Kernels (GPU functions) execute same code in parallel using many threads • Multiple memory spaces • Memory access pattern is important for performance • Dedicated cards connected over PCI bus Nvidia Tesla C���� (Source - CC� �.�) CC� �.� • Host-Device memory transfers are relatively slow Heywood P., Richmond P. & Maddock S.

  12. What is Geometry Instancing ? . • Rendering multiple copies of the same geometry • 3ertex data is copied but modified to reduce repetition • Position • Colour • Animation state • Data needs to be accessible on the GPU • OpenGL Buffers • Requires fewer API calls [Khr��] Heywood P., Richmond P. & Maddock S.

  13. What is Geometry Instancing ? . • Rendering multiple copies of the same geometry • 3ertex data is copied but modified to reduce repetition • Position • Colour • Animation state • Data needs to be accessible on the GPU • OpenGL Buffers • Requires fewer API calls [Khr��] Heywood P., Richmond P. & Maddock S.

  14. Interactive Visualisation . • Cross platform C++ , 2penGL & libSDL [SDL] • Mouse & Keyboard controls ( no-clip ) • Simulation updated per frame (currently) • Geometry loaded from wavefront ( .obj ) files • Flat shading Overview of visualisation Heywood P., Richmond P. & Maddock S.

  15. Interactive Visualisation . • OpenGL Texture Buffers populated with agent data via CUDA OpenGL Interop [Nvi��] • Geometry Instancing [Khr] used to apply data to models • gvec� texelFetch(gsamplerBuffer sampler, int P); [Khr��] • Reduced number of API calls [Khr��] • Minimises host-device memory transfers • Fragment shader used to differentiate vehicles & apply lighting model Nearby view of visualisation Heywood P., Richmond P. & Maddock S.

  16. How we use the GPU . Device Host • Road network stored in CUDA Constant Memory FLAME GPU simulation • Does not change during kernels • Maximum size to ��Kb currently -> CUDA Initial Agent Agent Data Data Read-only Memory • Geometry Instancing & CUDA interop T exture Bu ff ers • Avoids unnecessary host-device transfers ... TBO1 TBO2 .obj model fi le • FLAME GPU • One thread per agent Instanced Rendering n • State-based representation minimises branching ... 1 Model VBOs • Synchronisation points defined by message 0 dependence • Transparently converts between AoS & SoA PCI Bus • Minimal transfer of data to host (CPU) Instanced rendering memory transfers Heywood P., Richmond P. & Maddock S.

  17. Demonstration Heywood P., Richmond P. & Maddock S.

  18. Performance Impact . 10 4 • Instanced visualisation has minimal Non Partitioned Messaging Spatially Partitioned (radius = 5000m) Spatially Partitioned (radius = 2500m) performance impact Simulation time (ms) per iteration 10 3 Spatially Partitioned (radius = 250m) • N = �, length ���� m , ���� vehicles & ���� 10 2 iterations 10 1 • N3IDIA GeForce GT9 ��� 10 0 Console ����� ms 10 − 1 2 8 2 9 2 10 2 11 2 12 2 13 2 14 2 15 2 16 2 17 2 18 3isualisation ����� ms Number of Agents Run-time Increase � . �8x Performance comparison between FLAME GPU message partitioning schemes Heywood P., Richmond P. & Maddock S.

  19. What Next? . Procedural Instancing • Increase variation of instanced vehicles • Procedurally generate data at runtime to modify instances • Use simulation data such as vehicle length / type • Applicable to many types of agents • 3ehicles • Pedestrians • Environment Other Future Work • Analyse and visualise aggregate data using the GPU to increase accessibility • Further performance optimisations for large populations Heywood P., Richmond P. & Maddock S.

  20. Conclusions .

  21. Conclusions . • Highlighted difficulties of large scale GPGPU microsimulation of transport networks • Expensive host-device memory transfers • Number of GPU draw calls • Described & demonstrated techniques used to combat these issues • CUDA OpenGL Interoperability • Geometry Instancing • Demonstrated minimal performance impact for an example visualisation Heywood P., Richmond P. & Maddock S.

  22. Thank You ptheywood.uk ptheywood�@sheffield.ac.uk Heywood P., Richmond P. & Maddock S.

  23. Additional Slides .

  24. Gipps’ Car Following Model Equation . { � v n ( t + τ ) = min v n ( t ) + � . � a n τ ( � − v n ( t ) / 1 n )( � . ��� + v n ( t ) / 1 n ) � , } √ � τ � − b n [ � [ x n − � ( t ) − s n − � − x n ( t )] − v n ( t ) τ − v n − � ( t ) � / ˆ b n τ + b n b ] Free-flow and Braking components of Gipps’ Car Following Model 25 Free-flow Component ( V n = 15 , v n (0) = 0 ) an the maximum acceleration of vehicle n Braking Component ( V n − 1 = 10 , x n − 1 ( t ) = 50 ) bn the most severe braking that the vehicle n will undertake 20 sn the effective size of vehicle n , including a margin 15 1n the target speed of vehicle n v n ( t + τ ) xn ( t ) the location of the front of vehicle n at time t 10 vn ( t ) the speed of vehicle n at time t constant reaction time for all vehicles 5 τ b ˆ estimate of leading vehicles most severe braking 0 0 5 10 15 20 25 t Heywood P., Richmond P. & Maddock S.

  25. Results: Fixed Grid Network . 10 4 Non Partitioned Messaging Spatially Partitioned (radius = 5000m) Spatially Partitioned (radius = 2500m) Simulation time (ms) per iteration 10 3 Spatially Partitioned (radius = 250m) 10 2 • Spatially partitioned messaging outperforms non-partitioned 10 1 messaging • Smaller radii outperforms larger radii 10 0 beyond overhead 10 − 1 2 8 2 9 2 10 2 11 2 12 2 13 2 14 2 15 2 16 2 17 2 18 Number of Agents Heywood P., Richmond P. & Maddock S.

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend