This repository contains a machine learning model developed by University College Dublin (UCD) for Augmenta (acquired by CNH Industrial) as part of the MLSysOps project, focusing on drone deployment prediction.
The model predicts the should_fly signal for drone operations, leveraging temporal sensor and flight data to anticipate deployment needs ahead of time. This enables proactive drone management, accounting for operational delays and improving decision-making in real-world scenarios.
The model is exported in ONNX format (Opset 15) for efficient inference on edge or cloud devices.
This model performs Time-Series Classification to predict a binary signal:
- Input: A vector of features including temporal lagged variables and flight parameters (e.g., sensor fault probability, success rate, velocity, heading).
- Output: Predicted binary signal
should_flyindicating if the drone should deploy or not at the forecast horizon.
The repository provides the trained model and its configuration for easy deployment.
.
├── inference_demo.py # Full inference script
├── model/ # Directory containing the ONNX model and config
│ ├── drone_deployment_xgboost_model.onnx
│ └── model_config.json
├── requirements.txt # Python dependencies
└── README.md # Project documentation
The model was trained on drone deployment data capturing sensor readings and flight parameters with temporal dependencies engineered as lag features.
- Data Characteristics: Time-stamped data with features such as sensor fault probability, success rate, processing performance, velocity, and heading.
- Prediction Horizon: Forecasts the should_fly signal several time steps ahead to mimic real deployment delays.
The complete training dataset is publicly available on Zenodo: Augmenta Tractor-Drone Co-Robotics Dataset for Weed Detection
The model uses a rich feature set including:
-
Temporal lags of:
- sensor_fault_probability_1
- success_rate
- processing_performance
- velocity
- heading
- Time metadata: year, month, hour
- Time since last sensor fault and heading changes
- Median fixed heading value
This model utilizes an XGBoost classifier:
- Boosting rounds: 200 estimators
- Max tree depth: 5
- Learning rate: 0.1
- Objective: Binary logistic regression (binary classification)
The model captures complex temporal and non-linear relationships in sensor data to predict drone deployment signals accurately.
The model accepts a single tensor representing the feature vector.
| Input Name | Shape | Type | Description |
|---|---|---|---|
float_input |
[batch_size, 44] |
float |
Vector of features including lags & metadata |
List of 44 feature names is included in the model/model_config.json under "features": {"names": [...]}.
| Output Name | Shape | Type | Description |
|---|---|---|---|
label |
[batch_size] |
int64 |
Predicted class (0 or 1) |
probabilities |
[batch_size, 2] |
float32 |
Class probabilities |
- No scaling applied: Model expects raw or preprocessed feature vectors matching training distributions.
- Domain Specific: Trained specifically for the drone deployment dataset and operational settings used; transfer to other drone types or environments may require retraining.
python3.13 -m venv venv
source venv/bin/activate
pip install -r requirements.txtpython inference_demo.pyThis script loads the model and performs prediction on sample input data.
If you wish to cite this model, please use the citation generated by Zenodo (located in the right sidebar of this record).
This work is part of the MLSysOps project, funded by the European Union’s Horizon Europe research and innovation programme under grant agreement No. 101092912.
More information about the project is available at https://mlsysops.eu/