full_content = """
π Real-Time Cricket Match Outcome Prediction Using Ball-by-Ball Analytics and Monte Carlo Simulation
This project predicts the outcome of a live Test match innings using ball-by-ball data and advanced machine learning models. It uses real data from Cricsheet (YAML format), and models the win probability using XGBoost, Neural Networks, and Monte Carlo simulations.
- Parses real match data from Cricsheet (YAML)
- Builds a ball-by-ball simulation of Test innings
- Extracts meaningful features: run rate, required RR, form, pressure
- Trains:
- XGBoost Model (classification)
- Neural Network (Keras)
- Runs Monte Carlo simulations to predict win probability
- Visualizes match progression and win probability over time
- Python
- Pandas, NumPy
- XGBoost
- TensorFlow / Keras
- Matplotlib / Seaborn
- PyYAML
The following features are computed per ball:
cumulative_runs
cumulative_wickets
balls_faced
run_rate
required_runs
/required_rr
batsman_form
(simulated)pitch_flatness
(simulated)crowd_pressure
(simulated)
Model | Accuracy |
---|---|
XGBoost | ~88% |
Neural Network | ~89% |
Monte Carlo simulation yields win probabilities with high confidence under realistic match constraints.
pip install xgboost tensorflow pandas numpy matplotlib seaborn pyyaml scikit-learn