Skip to content
@DisCo-BaTS

DisCo-BaTS

Distributed Component-Based Traffic Simulation

DISCO-BATS Project Logo

DisCo-BaTS

Distributed Component-Based Traffic Simulation

License Build Status

Build Status API Build Status

A framework for highly flexible scenario modeling and direct simulation execution
without the need for manual model-transformations or adjustments of the simulation application.

Centered around a unified meta-model that explicitly targets scenario-based simulation testing of
various software-based systems and system-components, which can be located both locally and remotely.


Project Structure


Important

This framework was developed as part of a doctoral thesis submitted on February 19, 2026, titled "Flexible Komponentenbasierte Modellierung und Simulation von Szenarien für die Verifizierung und Validierung automatisierter maritimer Fahrsysteme" (eng.: "Flexible component-based modeling and simulation of scenarios for the verification and validation of automated maritime navigation systems.").
Although a lot of work has been put into it, be aware that the software is still in a proof-of-concept stage and you may find currently unused code that was once used to explore alternative solutions, undocumented parts, missing comments, and other imperfections.


Build Order

Simulation Application

  1. util
  2. build
  3. meta
  4. simulation

Models and Libraries

  1. util
  2. build
  3. meta
  4. models

Prerequisites

Building Models / Libraries / Simulation

  • JDK >= 21
  • Maven >= 3.9.9

Running the Simulation

  • JDK / JRE >= 21

Distributed simulation runs

  • Docker has to be installed on the host system that runs the 'root' simulation (for building and pushing the image)
  • Docker has to be installed on the remote system that runs the 'remote' simulation (for pulling and running the image)
  • an instance of the poRTIco WAN-Router has to run somewhere where it can be reached by all simulation participants (HLA calls them federates). A ready-to-use, directly executable Docker image that starts a WAN router and can be accessed via port 23114 of the executing system / 0.0.0.0 / localhost is publicly available here: https://hub.docker.com/repository/docker/dvdrhr/discobats/tags/wan_router/
  • the RTI.rid files must be adjusted accordingly (wan = true/false, wan router ip, wan router port)

Documentation

For documentation check out the wiki pages and the READMEs located in the individual repositories.

Additionally, once the thesis in which DisCo-BaTS was developed has been successfully defended and published, the URL to the corresponding publicly available PDF version will be added here.

Attribution

If you use the DisCo-BaTS modeling and simulation framework or parts of it for your own research, it would be appreciated if you would include the following reference in all published work for which DisCo-BaTS or parts of it where used:

A citable reference will be added here once the corresponding thesis has been successfully defended and published.

Related Repositories

OpenLVC / poRTIco is utilized as the implementation of the Runtime Infrastructure (RTI) according to the High Level Architecture (HLA) standard for distributed cooperative simulation coupling in the version of 2010 (IEEE 1516:2010). The version of poRTIco used is 2.1.3.
PoRTIco is awesome - go support the maintainers! 💜

Contact

Any questions regarding DisCo-BaTS can be asked, discussed, and found in the discussion section.

License

Distributed Component-Based Traffic Simulation (DisCo-BaTS)
Copyright (C) 2026 David Reiher https://github.com/dvdrhr

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License version 3 as published by the Free Software Foundation

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License version 3 for more details.

You should have received a copy of the GNU Lesser General Public License along with this program.
If not, see https://www.gnu.org/licenses/lgpl+gpl-3.0.txt and https://www.gnu.org/licenses/lgpl-3.0.en.html.

Popular repositories Loading

  1. editor editor Public

    Java 1

  2. testunits testunits Public

    Java 1

  3. webview webview Public

    JavaScript 1

  4. .github .github Public

    DISCO-BATS README

    1

  5. models models Public

    Java 1

  6. meta meta Public

    Java 1

Repositories

Showing 10 of 11 repositories

Top languages

Loading…

Most used topics

Loading…