Skip to content

Amber-s-art/tool-wear-reliability-analysis

Repository files navigation

🔧 Reliability Theory — Tool Wear Analysis

A structured Python notebook applying Reliability Theory to real-world predictive maintenance data.
Covers distribution fitting, MLE/UMVUE estimation, KS goodness-of-fit testing, and the four core reliability functions.


📌 Project Overview

This project analyses the AI4I 2020 Predictive Maintenance Dataset (10,000 machine records) through the lens of Reliability Theory. The Tool wear [min] column is treated as Time-To-Failure (TTF) and used to:

  • Understand its statistical distribution
  • Fit and compare three lifetime models (Exponential, Lognormal, Weibull)
  • Estimate the failure rate λ using MLE and UMVUE
  • Compute and visualise the four pillars of reliability

📁 Repository Structure

reliability-theory/
│
├── reliability_analysis.ipynb   ← Main analysis notebook
├── maintainance dataset_SI.xlsx ← Raw dataset
├── four_pillars.png             ← Auto-generated plot (created on first run)
├── requirements.txt             ← Python dependencies
└── README.md                    ← This file

📊 Dataset

Field Detail
Source AI4I 2020 Predictive Maintenance Dataset
Records 10,000
Key column Tool wear [min] (used as TTF)
Failure types No Failure, Heat Dissipation, Power Failure, Overstrain, Tool Wear, Random

🔬 Analysis Pipeline

Raw Data
   │
   ├─ 1. Load & Overview (failure type breakdown, box plots)
   │
   ├─ 2. EDA  (histogram, KDE, summary statistics)
   │
   ├─ 3. Distribution Fitting
   │       ├─ Exponential
   │       ├─ Lognormal
   │       └─ Weibull
   │
   ├─ 4. Goodness-of-Fit (KS Test)
   │       └─ p-value comparison table + bar chart
   │
   ├─ 5. MLE & UMVUE Estimation
   │       └─ Consistency check (convergence plot)
   │
   ├─ 6. Four Pillars of Reliability (2×2 subplot)
   │       ├─ PDF  — f(t)
   │       ├─ CDF  — F(t)
   │       ├─ Survival Function — S(t)
   │       └─ Hazard Function  — h(t)
   │
   └─ 7. Final Model Selection & Insights

📐 Key Concepts

Estimators (Exponential Model)

Estimator Formula Property
MLE λ̂ = n / Σt Biased, consistent
UMVUE λ̂ = (n−1) / Σt Uniformly Minimum Variance Unbiased

Four Pillars

Function Formula Interpretation
PDF f(t) Probability of failing at time t
CDF F(t) Probability of failing by time t
Survival S(t) = 1 − F(t) Probability of surviving past time t
Hazard h(t) = f(t) / S(t) Instantaneous failure rate given survival to t

🖼️ Sample Output

The notebook auto-generates this 2×2 plot showing all four reliability functions:

Four Pillars of Reliability


⚙️ Setup & Usage

1. Clone the repository

git clone https://github.com/your-username/reliability-theory.git
cd reliability-theory

2. Install dependencies

pip install -r requirements.txt

3. Run the notebook

jupyter notebook reliability_analysis.ipynb

📦 Requirements

See requirements.txt. Key libraries:

pandas
numpy
matplotlib
seaborn
scipy
openpyxl
jupyter

📝 Results Summary

Model KS p-value Verdict
Exponential See notebook output
Lognormal See notebook output
Weibull See notebook output

The best-fit model is determined automatically by highest KS p-value.


🎓 Academic Context

This project is part of a study on Reliability Theory and Statistical Inference, demonstrating:

  • Point estimation under exponential lifetime models
  • Non-parametric goodness-of-fit testing
  • Reliability function derivation from empirical industrial data

📄 License

MIT License — free to use and adapt with attribution.

About

A statistical analysis of the AI4I 2020 Predictive Maintenance dataset applying Reliability Theory. This project analyzes machine tool wear (Time-To-Failure) using Python, featuring distribution fitting, MLE/UMVUE parameter estimation, Kolmogorov-Smirnov goodness-of-fit testing, and the calculation of core reliability functions.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages