This repository contains my contribution to PiuPiuDefense, a collaborative prototype developed during the European Defense Tech Hackathon, Sweden Edition.
PiuPiuDefense explored how simulation, machine learning and rule-based decision logic could be combined to evaluate multiple simultaneous UAS threats and support threat-prioritisation decisions.
I developed the C++ 2D kinematic simulation backend used to generate synthetic multi-threat scenarios and export telemetry data for downstream machine-learning and visualisation components.
The simulation includes:
- randomised threat and target scenario generation;
- multiple simulated threat categories with different speeds and motion parameters;
- target-seeking trajectory modelling;
- heading correction and turn-rate constraints;
- simplified lateral acceleration, velocity control and drag effects;
- simulated sensor noise for measured positions;
- target impact and map-boundary detection;
- risk-level labelling based on threat and target categories;
- telemetry export to CSV for later processing.
The simulation generates a SimOut.csv file containing time-series data such as:
- true and measured positions;
- normalised measured coordinates;
- velocity and direction components;
- speed and heading;
- target information;
- risk level;
- damage potential;
- simulation time.
This code was developed as part of a larger collaborative hackathon prototype. My work focused specifically on the simulation and data-generation component.
