Skip to content
Snippets Groups Projects
README.md 2.84 KiB
Newer Older
Carolin Ganahl's avatar
Carolin Ganahl committed
# Introduction

This repository contains the setup for a CARLA-based simulation framework. The simulation framework is designed for simulation-based fault injection for evaluating test case generation approaches for functional safety. It includes a [Search-based test case generation](https://git.fortiss.org/fico/fico_test_case_generation/fico_search) and a [GAN-based test case generation](https://git.fortiss.org/fico/fico_test_case_generation/fico_search).
Carolin Ganahl's avatar
Carolin Ganahl committed

Carolin Ganahl's avatar
Carolin Ganahl committed
## Requirements

Before running this notebook, make sure that the computer on which it shall be executed meets the following requirements:

_Hardware_

| Component| Requirements |
| --- | --- |
| CPU | Quad-core Intel or AMD, 2.5 GHz or faster |
| GPU | NVIDIA GeForce 960 GTX or higher with 8 GB VRAM or more |
| RAM | 32 GB or more |

_Software_

* Ubuntu 22.04
Carolin Ganahl's avatar
Carolin Ganahl committed
* Python 3.10 with `pip` and `venv` (for the Search-based Test Case Generation)
* Python 3.8 with `pip` and `venv` (for the GAN-based Test Case Generation)
Carolin Ganahl's avatar
Carolin Ganahl committed
* Docker engine (see [here](https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository)) with `sudo`-less access (see [here](https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user))
* NVIDIA Containter Toolkit (see [here](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#installation-guide))
* Internet access (for pulling Docker images and dependencies)
Carolin Ganahl's avatar
Carolin Ganahl committed

Carolin Ganahl's avatar
Carolin Ganahl committed
# Setup of the CARLA-based simulation framework

The pre-defined setup for the FICo simulation framework in this repository includes all necessary components to run the test case generation. This includes:
- CARLA (https://github.com/carla-simulator/carla) (Tag: 0.9.15)
- ScenarioRunner for CARLA (https://github.com/carla-simulator/scenario_runner) (Tag: 0.9.15)
- The CARLA interface for scenario-based testing (https://git.fortiss.org/fico/fico_simulation_framework/fico_carla.git)
Carolin Ganahl's avatar
Carolin Ganahl committed
- ROSCo for ROS-based co-simulation of FMUs (https://git.fortiss.org/ff1/rosco) (Branch: galactic)
Carolin Ganahl's avatar
Carolin Ganahl committed
- Search-based test case generation using the OpenSBT framework (https://git.fortiss.org/fico/fico_test_case_generation/fico_search.git)
- GAN-based test case generation (https://git.fortiss.org/fico/fico_test_case_generation/fico_gan.git)

## Installation
Nina Benkendorf's avatar
Nina Benkendorf committed

Carolin Ganahl's avatar
Carolin Ganahl committed
To install the simulation framework, run the `setup.bash` script. This script creates the root folder `fico`, in which all components of the FICo simulation framework and FICo test case generation will be installed. This setup script installs all repositories and packages required and sets up necessary virtual environments.
Nina Benkendorf's avatar
Nina Benkendorf committed

```
bash setup.bash
Carolin Ganahl's avatar
Carolin Ganahl committed
```

The details to run the Search-based test case generation can be found [here](https://git.fortiss.org/fico/fico_test_case_generation/fico_search).
The details to run the GAN-based test case generation can be found [here](https://git.fortiss.org/fico/fico_test_case_generation/fico_gan).