The machine learning component of the NoScope9000 sniper shot prediction simulator. This repository contains the ML models and analysis developed by the NoScope9000 team, complementing our Unity simulation environment.
As part of the broader NoScope9000 project, this repository contains the machine learning components that power our sniper shot prediction system. Our team developed both the Unity-based physics simulation (in the NoScope9000 repository) and the machine learning models (in this repository) to create a complete system that accurately predicts shot outcomes.
- Multiple Model Implementations: Random Forest classifiers with various optimization techniques
- Data Imbalance Handling: Techniques to address the hit/miss class imbalance
- Feature Importance Analysis: Identification of the most critical factors for shot prediction
- Ensemble Learning: Voting-based ensemble model for improved prediction accuracy
- Comprehensive Metrics: Detailed performance evaluation including ROC curves, confusion matrices, and classification reports
├── data/ # Dataset files
├── models/ # Trained model files
├── notebooks/ # Jupyter notebooks for analysis and visualization
├── src/ # Source code for the ML implementation
├── docs/ # Documentation and resources
├── results/ # Visualization outputs and performance metrics
└── assets/ # Images and additional files
The dataset contains parameters that influence shot accuracy:
DistanceFromTarget(float): Distance to targetElevationDifference(float): Difference in elevationGunTiltX(float): Horizontal gun tiltGunTiltY(float): Vertical gun tiltXDifference,YDifference,ZDifference(float): Position differencesHitOrMiss(binary): Target outcome (1 = Hit, 0 = Miss)
| Model | Accuracy | Key Features |
|---|---|---|
| Baseline Random Forest | 0.89 | Basic implementation |
| Oversampled Random Forest | 0.91 | Balanced class representation |
| Feature-Selected Random Forest | 0.90 | Optimized feature subset |
| Ensemble Model | 0.93 | Majority voting from multiple models |
- The most influential factors for shot prediction are GunTiltY, DistanceFromTarget, and XDifference
- Oversampling techniques significantly improved model performance on the minority class
- Ensemble methods provided the best overall prediction accuracy
- Clone the repository
git clone https://github.com/yourusername/NoScope9000-ML-Analysis.git
cd NoScope9000-ML-Analysis- Install dependencies
pip install -r requirements.txt- Run the prediction models
python src/predict.pyFor more detailed information, refer to the notebooks in the notebooks/ directory and the documentation in the docs/ folder.
This project is licensed under the MIT License - see the LICENSE file for details.
This project is a collaborative effort by our team:
- Abhiram Kothagundu - Unity Developmen
- Vihaan Thatiparthi - Machine Learning
- Charvi Palem - Machine Learning
- NoScope9000 - The Unity simulation environment
- aimThat - The ML models and analysis (this repository)
Both repositories were developed in parallel by our team as part of a unified academic project to create an AI-powered sniper shot prediction system.