The Scientific Discovery Engine is a powerful symbolic regression framework designed to rediscover fundamental physical laws from empirical data. Unlike standard machine learning, it prioritizes interpretability, physical consistency, and structural elegance.
- Physics-Informed Discovery: Enforces strict dimensional consistency across Mass, Length, Time, and more. Penalizes "physics nonsense" to guide evolution toward plausible laws.
- Hybrid Optimization: Combines Genetic Programming (for structural discovery) with SciPy's
curve_fit(for precise constant refinement). - High Performance: Fully parallelized evaluation logic to utilize modern multi-core architectures.
- Dimensional Constants: Supports automatic discovery of unit-bearing constants (e.g., Gravitational constant, Gas constant).
- Automated Reporting: Generates publication-ready LaTeX reports covering the Pareto front of discovered formulas.
git clone https://github.com/trungminhdo4-glitch/algorithm-evolver.git
cd algorithm-evolver
pip install -r requirements.txtExperience the engine in action through the interactive CLI:
python demo.pyThe engine has successfully rediscovered the following laws:
| Experiment | Discovered Law | Physical Domain |
|---|---|---|
| Kepler's 3rd Law | Orbital Mechanics | |
| Ballistic Motion | Classical Mechanics | |
| Ideal Gas Law | Thermodynamics | |
| Damped Oscillation | Dynamic Systems |
The engine is built on a modular stack:
core/: Evolutionary logic, physics kernels, and program simplification.problems/: Physical problem definitions and synthetic data generators.utils/: Fine-tuning modules and LaTeX exporters.
Developed for the intersection of Artificial Intelligence and Physical Sciences.