Skip to content

Backend: Design fire simulation in railway vehicles using AI-based data

License

Notifications You must be signed in to change notification settings

openbcl/beskid-backend

Repository files navigation

Caution

At the moment this API is only intended for test purposes. Results of calculated tasks will only provide random data! This API will be available for productive use as soon as the modeling project phase has been successfully completed.

BESKID Logo

BEmessungsbrandsimulationen in Schienenfahrzeugen mittels KI-basierter Daten

Design fire simulation in railway vehicles using AI-based data

BESKID-API

The goal of the BESKID project, funded by the Federal Ministry of Education and Research (BMBF), is to develop and experimentally validate AI-based methods for calculating design fires. The project started in 2022.

Previous approaches to detailed modeling of fire spread in rail vehicles have required a large number of experiments, extensive optimization, and extensive variant calculations. In this project, two complementary AI approaches, KIM (Material AI System) and KIB (Fire AI System), are being researched and implemented. KIM aims to completely reduce the optimization calculations required for determining material parameters, allowing for the determination of necessary material parameters solely from data obtained from a few tests, such as the Cone Calorimeter. This test is already used for the fire protection assessment of all relevant components of rail vehicles, as required by the European standard (EN 45545-2), so the proposed AI approach (KIM) will eliminate the need for additional effort in design fire simulations in the future. KIB aims to significantly shorten the high computational cost for variation calculations of the entire vehicle and focuses on fast calculation of fire spread variations. The goal is to replace the cost-intensive traditional models used for variant calculations of design fires with the KIB AI system.

This API is intended to make the AI system accessible to the public.

How to run the docker image

# Run docker, open your browser and visit https://localhost:3000
docker run -it -p 3000:3000 openbcl/beskid-api

How to build this app

# Clone this repository 
git clone https://github.com/openbcl/beskid-backend.git

Make sure that the following dependencies are installed

  • Node.js
  • Python 3

Installation

$ npm install

Configuration

There are four environment variables.

  1. tokenSecret (default: random string value on each run): Contains a secret character string that is required for the generation of session tokens.
  2. tokenExpirationTime (default: 7d): Defines the time after which sessions become invalid.
  3. scriptFile (default: test.py): Name of the Python file that accesses the AI system.
  4. scriptDir (optional)

The environment variables can be stored in an .env-file. Just copy ".env.template" and name it ".env".

Running the app

# development
$ npm run start

# watch mode
$ npm run start:dev

# production mode
$ npm run start:prod

# docker
$ docker-compose up

Open your browser and visit https://localhost:3000

Test

# unit tests
$ npm run test

# e2e tests
$ npm run test:e2e

# test coverage
$ npm run test:cov

About

Backend: Design fire simulation in railway vehicles using AI-based data

Resources

License

Stars

Watchers

Forks

Packages