# 🧬 Symbolic Regression: A Methodological Framework for Interpretable Learning
> *Research thesis exploring symbolic regression as an interpretable alternative to classical machine learning methods*
---
## 📚 Table of Contents
- 📖 About
- 🎯 Objectives
- 🔬 Methodology
- 📊 Key Results
- 🚀 Installation
- 🔍 Applications
- 📈 Comparisons
- 📝 Citation
- 👥 Author
- 📄 License
---
## 📖 About
This repository contains the code and experiments associated with my research thesis on **Symbolic Regression (SR)** conducted at the **African Institute for Mathematical Sciences (AIMS) - Senegal**.
### What is Symbolic Regression?
Symbolic regression is a machine learning technique that, unlike "black box" methods (neural networks, random forests), generates **explicit mathematical expressions** relating input variables to the target.
**Example:**
```python
# Instead of an opaque model, SR produces:
f(x, y) = 2.5*x² + sin(y) - 3.1
# A readable, interpretable, and verifiable formula!
```
### 🌟 Why It Matters
- ✅ **Interpretability**: Explicit formulas understandable by domain experts
- ✅ **Law Discovery**: Reveals hidden physical or biological relationships
- ✅ **Generalization**: Better extrapolation beyond the training domain
- ✅ **Data Efficiency**: Performs well even with few samples
- ✅ **Scientific Validation**: Results can be theoretically verified
---
## 🎯 Objectives
This thesis aims to:
1. **Analyze the mathematical and algorithmic foundations** of symbolic regression
2. **Compare SR with classical ML methods** (SVR, Random Forest, Neural Networks)
3. **Evaluate performance on synthetic and real data** (diabetes, finance, physics)
4. **Demonstrate scientific discovery capability** through rediscovery of physical laws
5. **Provide a complete methodological framework** for practical use of SR
---
## 🔬 Methodology
### Three Algorithmic Paradigms Explored
#### 1️⃣ **Genetic Programming (GP)**
Population of expressions evolving through natural selection, cross …