A client in agricultural technology needed to determine the best structural parameters (leaf size, angles, spacing, arrangement) for eggplant cultivation in a 30-meter solar greenhouse containing 4,032 plants. I built a complete pipeline — 3D plant modeling, Monte Carlo light simulation, intelligent parameter search — and delivered a 29% improvement in photosynthetic efficiency alongside a 30-page technical report.
Highlights
- Mastered GroIMP's RGG/XL language (Java-based L-systems) from scratch to build parametric double-trunk eggplant models with 8 tunable architectural parameters (leaf size, angles, internode spacing, phyllotaxis) over a 60–120% range from baseline.
- Implemented Monte Carlo ray tracing with 1M+ rays per simulation including atmospheric effects and spectral conversion, validated against real December 2024 greenhouse data via maximum likelihood calibration.
- Applied 6-point Legendre-Gauss quadrature to integrate daily photosynthesis over solar angles, exploiting noon symmetry to halve computation time.
- Used the Ax Bayesian optimization platform with Gaussian Process regression to identify parameters that improved photosynthesis from 14.85 to 19.16 μmol CO₂/s — a 29% gain.
- Ran variable importance analysis (univariate and bivariate GP regression) revealing leaf size as the dominant factor and height effects as stronger than east-west position effects.
- Compared North-South vs. East-West planting layouts across 4,032-plant configurations, quantifying ~12% better light interception for N-S orientation.
- Configured GPU-accelerated OpenCL/JOCL computation on NixOS and designed parallel workflows with custom thread pools for reproducible large-scale simulations.
Technology
- Python (NumPy, pandas, matplotlib, seaborn)
- Java / GroIMP (RGG/XL L-systems)
- Ax Platform (Bayesian optimization)
- Gaussian Process regression
- Monte Carlo ray tracing
- Legendre-Gauss quadrature
- OpenCL / JOCL (GPU compute)
- FreeCAD (3D geometry verification)
- NixOS