Paper title: Disentangling the Effects of Simultaneous Environmental Variables on Perovskite Synthesis and Device Performance via Interpretable Machine Learning
- We present a systematic framework to investigate the influence of both individual and coupled environmental variables on the efficiency and crystallization kinetics of formamidinium lead iodide perovskite solar cells.
- Using custom environmental enclosures equipped with conditioned gas inputs and real-time sensors, we control ambient solvent partial pressure, absolute humidity, and temperature during the spin-coating and annealing processes.
- We quantify the impacts of these environmental variables on key photovoltaic performance metrics, then systematically disentangle their individual and joint effects.
- Feature contributions are ranked using SHapley Additive exPlanations, while multivariate interactions are revealed through interpretability methods.
- In-situ grazing-incidence wide-angle X-ray scattering measurements confirm a nonlinear coupling between humidity and solvent partial pressure during crystal formation.
- We isolate and quantify nonlinear interactions between pairs of environmental variables, where changes in one variable can either compensate for or counteract the effects of another.
- These findings reinforce the need for multivariable optimization strategies in the development of halide perovskite solar cells, as changes in one variable can either compensate for or counteract the effects of another.
- Our study underscores the importance of integrated ambient sensing and control to achieve repeatable, high-performance perovskite devices, and demonstrates the utility of combining active learning with interpretable machine learning to navigate complex, high-dimensional processing landscapes.
- Emukit https://emukit.github.io/ (Python >=3.7)
- GPy https://sheffieldml.github.io/GPy/ (Python >=3.9)
- Pytorch https://pytorch.org/ (any version should work)
- Shap https://shap.readthedocs.io/ (Python >=3.9)
- shapiq https://shapiq.readthedocs.io/ (Python >=3.10)
- sklearn https://scikit-learn.org/ (any version should work)

