Skip to content
JW
CompetitionCV award2024

May Day Competition — Rockburst Risk

五一数学建模论文与代码

A mining-safety modelling project that predicts rockburst risk from electromagnetic radiation and acoustic-emission signals.

May Day Competition — Rockburst Risk project diagram

97.99%

EMR test accuracy

99.40%

AE test accuracy

31p

sanitized paper

01 / Overview

What this package actually contains.

The May Day competition project predicts rockburst risk from electromagnetic radiation (EMR) and acoustic-emission (AE) signals. It combines time-domain features, FFT features, wavelet denoising and calibrated classifiers.

Objectives

  • 01Separate interference signals from precursor signals.
  • 02Extract frequency- and time-domain features from EMR and AE series.
  • 03Produce calibrated precursor probabilities for a new observation window.

Competition narrative

Problem, model, result, paper.

The page foregrounds the modelling decision and result before implementation details.

Stage 01

Raw signal windows

EMR and AE measurements over time.

01

Stage 02

Denoising

Wavelet cleanup and rolling statistics.

02

Stage 03

Feature extraction

Mean, variance, peak, frequency and spectral energy.

03

Stage 04

Models

Random Forest, Naive Bayes and Platt-scaled probabilities.

04

Stage 05

Prediction

Precursor intervals and highest-risk time windows.

05

02 / Package highlights

What this work demonstrates.

  • Extracts time-domain and frequency-domain features with Fourier analysis.
  • Compares Random Forest and Naive Bayes classifiers with wavelet denoising and Platt scaling.
  • Reports 97.99% EMR and 99.40% AE classification accuracy on the test set.

03 / Model

The modelling choices behind the result.

01

Signal features

The workflow extracted seven descriptive features including mean, variance, peak factor, skewness, dominant frequency and spectral energy density. FFT features and rolling statistics made the time-series variation visible to tabular classifiers.

02

Calibrated probabilities

A Gaussian Naive Bayes classifier was wrapped in CalibratedClassifierCV using Platt scaling. This turns raw classifier outputs into probability estimates that can be compared across windows and used to rank risk.

03

Reported accuracy

The paper reports 97.99% classification accuracy for EMR precursor signals and 99.40% for AE signals on the test set. The output includes precursor intervals and a highest-probability time window for the prediction data.

04 / Key code

Selected modelling code.

Only verified source excerpts and pseudocode taken from the project papers are shown.

Verified project codePython

FFT and rolling features

Original Python excerpt for signal preprocessing and spectral features.

def cal_fft_features(signal):
    signal = np.asarray(signal).squeeze()
    fft_abs = np.abs(np.fft.fft(signal))
    return np.mean(fft_abs), np.std(fft_abs), np.max(fft_abs)

signal_denoised = wavelet_denoising(
    data['声波强度 (AE)'].values
)
data['声波强度 (AE)_denoised'] = signal_denoised

fft_features = data['声波强度 (AE)_denoised'].apply(
    cal_fft_features
)
data['fft_mean'], data['fft_std'], data['fft_max'] = zip(
    *fft_features
)

data['d1'] = data['声波强度 (AE)_denoised'].diff(1).fillna(0)
data['rolling_mean'] = (
    data['声波强度 (AE)_denoised'].rolling(10).mean().bfill()
)
data['rolling_std'] = (
    data['声波强度 (AE)_denoised'].rolling(10).std().bfill()
)
Verified project codePython

Platt-calibrated Naive Bayes

Original Python excerpt for probability calibration and risk ranking.

model = GaussianNB()
model.fit(X_train, y_train)

calibrated_model = CalibratedClassifierCV(
    model, method='sigmoid', cv=5
)
calibrated_model.fit(X_train, y_train)

probabilities = calibrated_model.predict_proba(X_test)
predictions = calibrated_model.predict(X_test)

predict_proba = calibrated_model.predict_proba(
    predict_data[features_list]
)

highest_index = np.argmax(predict_proba[:, 1])
highest_time = predict_data.iloc[highest_index]['time']
highest_probability = predict_proba[highest_index, 1]

Reproducibility notes

  • Wavelet denoising reduced high-frequency noise before FFT extraction.
  • The classification target distinguishes precursor windows from normal windows.
  • Probability calibration makes the output easier to threshold and explain.

Limitations / next steps

  • The data is specific to one mining context and requires external validation.
  • A production warning system needs false-positive costs and real-time streaming constraints.

05 / Downloads

Files in this folder.

Open the original report, presentation or source archive. PDF cover pages with private details were removed.

PDF

Sanitized competition paper

中文 · 31 pages · 1.4 MB

31-page paper with the personal-information cover removed.

Open file
ZIP

Python source archive

Mixed · 28 KB

Curated scripts for the competition analysis.

Download ZIP