Git Product home page Git Product logo

engineers-thesis-wwwrsrm's Introduction

Efficient visualization of the distributed urban traffic simulation

This application is used to visualize distributed urban traffic simulation. It is compatible with OSM maps in .osm or .pbf format and consumes messages from Apache Kafka broker instance.

Goals

The goal of the project was to create an efficient visualization for presenting the results of distributed urban traffic simulation. The project is mainly aimed at people using the simulation, which will allow them to clearly observe the simulated car traffic.

Requirements

  • Java 17
  • Running Apache Kafka broker instance
  • Running Confluence Schema Registry instance

Startup

  • Compile model.proto file with maven compile command
  • Run all required instances via provided docker-compose file
  • Run SimulationVisualization main class
  • Provide path to OSM map (.osm or .pbf formats are used)

Visualized map Alt text

Simulation Control

  • User can send start message to Kafka broker with Start button, which will start simulation computations
  • User can send stop message to Kafka broker with Stop button, which will stop simulation
  • User can send resume message to Kafka broker with Resume button, which will resume simulation
  • User can send end message to Kafka broker with End button, which will end simulation computations
  • User can change simulation computation speed with Time Multiplier bar

Visualization Control

  • User can drag and zoom map
  • Visualization show cars level or road density level depending on current zoom level

Cars level Alt text

Road density level Alt text

Configuration

  • application.yaml: user provides endpoints to Apache Broker instance and Confluence Schema Registry
  • model.proto: user specifies structure of consumed messages which need to be synchronized with simulation messages format via Schema Registry
  • TopicConfiguration class: user can change the names of Kafka Topics from which visualization consumes messages and which are registered to Kafka at startup
  • way_parameters.json: user can add or remove OSM map data definitions which will be visualized as roads or buildings.
  • docker-compose.yml: user can change Kafka broker or Schema Registry enpoints there

engineers-thesis-wwwrsrm's People

Contributors

nwolniak avatar tjatkowski avatar mexasimov avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.