Skip to content

austineaero/Remaining-Useful-Life-RUL-Estimation

Repository files navigation

RUL Estimation (Turbofan Engine)

Author: Augustine Osaigbevo


Table of Contents


Project Description

This project implements a similarity-based Remaining Useful Life (RUL) estimation workflow for turbofan jet engines.

By analysing run-to-failure trajectories from historical engines, the method estimates how much useful life a current engine has left, along with confidence bounds.

Why it matters

  • Safety: Early and reliable failure prediction prevents in-flight shutdowns and unscheduled removals, ensuring higher operational safety.
  • Cost savings: Predictive maintenance avoids unnecessary preventive part replacements, while also minimising costly unplanned downtime (aircraft-on-ground events).
  • Operational efficiency: Condition-based maintenance allows airlines and MROs to schedule interventions just-in-time, improving fleet utilisation.

In short: predictive maintenance = safer flights, lower costs, smarter scheduling.


Repository Structure

Similarity_RUL.mlx               # Main MATLAB Live Script: end-to-end workflow
helperLoadData.m                 # Load/convert NASA turbofan data into timetables
helperPlotEnsemble.m             # Visualize run-to-failure ensemble
helperPlotClusters.m             # Visualize operating-regime clusters
helperPlotRULDistribution.m      # Plot RUL PDF, estimate, and confidence bands
README.md

The dataset (NASA C-MAPSS / PHM08) is automatically downloaded and preprocessed by the live script.


Instructions (How to Run)

1) Requirements

  • MATLAB (R2022b or later recommended)
  • Predictive Maintenance Toolbox

2) Clone the repo

git clone https://github.com/austineaero/Remaining-Useful-Life-RUL-Estimation.git
cd Remaining-Useful-Life-RUL-Estimation

3) Open and run

  • Open Similarity_RUL.mlx in MATLAB.
  • Run all sections sequentially:
    1. Load and preprocess data
    2. Normalise across operating regimes
    3. Construct health indicators
    4. Train residual-similarity RUL model
    5. Evaluate predictions at different observation horizons

Technical Approach

1. Data Preparation

  • Use NASA turbofan run-to-failure dataset.
  • Split into training and validation engine sets.

2. Handling Operating Regimes

  • Cluster trajectories by operating condition (e.g., throttle/altitude).
  • Apply regime-specific normalisation to remove biases.

3. Feature Screening

  • Compute trendability, monotonicity, and prognosability scores.
  • Retain only features that evolve consistently with degradation.

4. Health Indicator (HI) Fusion

  • Fuse selected sensor features into a single HI.
  • Apply offsetting and smoothing so engines align at time zero.

5. Residual-Similarity RUL Estimation

  • Fit a polynomial model to each training HI.
  • For a test engine, compute residuals against each trained model.
  • Use L1 distance to find K most similar histories.
  • Estimate RUL distribution from the selected neighbors → provides both point estimate and confidence intervals.

6. Performance Evaluation

  • Compare RUL estimates when 50%, 70%, 90% of trajectory observed.
  • Assess accuracy, bias, and spread of prediction intervals.

Results & Performance

Key Observations

  • Early in life: RUL distributions are wide (greater uncertainty).
  • Closer to failure: estimates tighten significantly, giving high confidence.
  • Method balances accuracy with uncertainty quantification, providing safer decision-making for maintenance.
  1. Ensemble of run-to-failure trajectories (health indicator over time)
training_data validation_data
  1. Clustered operating regimes visualisation
clustering_1 clustering_2
  1. Trendability/monotonicity/prognosability scores for feature selection
trendability health_condition
  1. KNN vs. RUL (by % life observed)
% Observed KNN (nearest neighbours in HI space) RUL PDF (mean + 90% CI)
50% life knn_50 rul_50
70% life knn_70 rul_70
90% life knn_90 rul_90
Observation Mean Absolute Error (MAE) 90% CI Coverage
50% life Higher error, wide CI ~95%
70% life Improved accuracy ~92%
90% life High accuracy, narrow CI ~90%

--

Challenges & Mitigations

Challenge Mitigation
Engines operate under multiple regimes → sensor drift Cluster regimes and normalise within each cluster
Noisy or inconsistent sensor channels Feature scoring → select only robust indicators
Misaligned degradation progression Offset and smooth health indicators
Mid-life predictions have wide uncertainty Provide RUL PDFs with confidence bands, update as new data arrives

Next Steps

  • Experiment with alternative distance metrics (Dynamic Time Warping, Mahalanobis).
  • Explore deep learning-based HI extraction (autoencoders, LSTMs).
  • Calibrate confidence intervals via conformal prediction.
  • Extend to Python implementation (PyTorch/tslearn) for open-source portability.
  • Package workflow as a deployable web service for maintenance engineers.

Credits

About

Predict the RUL of an engine using run-to-failure dataset

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages