Participant Guide

CPS-IoT Week 2026 Tutorial

Data-Driven Modeling of Hybrid Automata within a Unified Model Learning Framework

Before the Workshop

Please bring a laptop with Python 3.12, a working terminal, and a stable internet connection. The workshop uses Python 3.12 or newer to match the Flowcean 0.8.0 release and the tested examples. Install Flowcean locally.

uv setup

Recommended if you already use uv for Python projects.

uv init flowcean-workshop
cd flowcean-workshop
uv add "flowcean[pysr]>=0.8.0"
i

uv creates a project-local environment and installs the released Flowcean package from PyPI.

pip and venv setup

Use the standard Python tooling path if you prefer not to use uv.

python3.12 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install "flowcean[pysr]>=0.8.0"
i

venv creates the environment, and pip installs the released Flowcean package.

Smoke test

Run this from the uv project directory after setup. If you used the pip and venv fallback, activate .venv and run the same Python body with python instead.

uv run python - <<'PY'
import flowcean.core
import flowcean.polars
import flowcean.hydra

print("Imports OK")
PY

The command prints Imports OK.

Optional live plots

Install PyQt6 if you want interactive Matplotlib windows on your laptop.

uv add PyQt6

# pip and venv fallback
python -m pip install PyQt6

During the Workshop

Flowcean workflow basics

Goal: understand the common structure of a Flowcean project.

i

Environments, datasets, learners, and evaluation callbacks form a reusable modeling workflow.

References: overview and new project.

Trace prediction

Goal: build a model that predicts future trace values from data.

Identify which columns are inputs, targets, and time-dependent outputs.

Dataset: Download thermostat_trace.csv.
Reference: trace prediction example.

Minimal hybrid-system simulation

Goal: inspect a compact hybrid-system simulation workflow.

i

Hybrid behavior combines continuous dynamics with discrete location changes.

Reference: minimal hybrid-system example.

Hybrid-system gallery

Goal: compare several simulated systems used for hybrid modeling.

Choose one system and describe its locations, guards, and continuous state variables.

Reference: hybrid systems examples directory.

Simulated identification with HyDRA

Goal: use HyDRA to identify hybrid-system structure from simulation data.

i

HyDRA combines segmentation, flow learning, and guard learning into an interpretable hybrid automaton workflow.

Reference: simulated hybrid-system example.

Troubleshooting

Symptom Likely Cause What To Try
Python version errors The active interpreter is not Python 3.12 or newer. Run uv run python --version and recreate the environment with Python 3.12.
Wrong directory The command is running outside the workshop project. Change into the directory created by uv init flowcean-workshop, then rerun the command.
uv command fails You are not using uv. Manually source the python environment and run python commands without uv.
import flowcean fails Flowcean is missing or older than 0.8.0 in the activated environment. Activate the environment and install with flowcean[pysr]>=0.8.0.
Matplotlib window does not open The active environment does not have an interactive Matplotlib backend. Prefer saved figures during the workshop, or install PyQt6 if you need a local window.
Documentation is missing Flowcean is still in development and a research project. Let us know! We are happy to collect issues or contributions.

After the Workshop

Continue with the Flowcean documentation and browse the Flowcean repository.

Questions after the tutorial can be sent to Maximilian Schmidt or Swantje Plambeck.