2 karma · joined December 27, 2024
First off, the ML surrogate is many orders of magnitude faster than direct kMC simulation. Each global optimization involved up to 500 sequential predictions of emission intensity with different nanoparticle structures (and gradients - I'll come back to those). For the largest particles that we optimized, running kMC on only the final optimized structure (for validation) took three months! So running 500 sequential kMC simulations would take approximately 125 years - not ideal. In contrast, all 81 global optimizations took two days with our trained hetero-GNN.
Back to the gradients - running the kMC simulations involves generating four different randomly doped 3D nanoparticle structures according to the shell thicknesses and dopant concentrations for the structure of interest, and then running four kMC trajectories with different random seeds for each structure. The final predicted value for emission (based on the number of emitted photons within the energy range of interest) is averaged over all sixteen trajectories. kMC is fundamentally stochastic, and not differentiable. But even if you could make it so with the adjoint-variable method (which I am admittedly not super familiar with), or maybe by writing your kMC code in a language with foundational auto-diff capabilities, once you move from a description of layer thicknesses and dopant concentrations to an ensemble of 3D structures/trajectories, I still don't think that the gradient of emission with respect to layer thicknesses and dopant concentrations would be accessible.
Thoughts? Thanks!