In high-energy physics experiments at CERN, the calorimeter is a key detector technology to measure the energy of particles. These particles interact with the material of the calorimeter, creating cascades of secondary particles, or showers. Describing the showering process relies on simulation methods that precisely model all the particle interactions with matter, using the Geant4 toolkit. However, this approach is computationally expensive and future upgrades make this full simulation for all events even less feasible.
Machine Learning (ML) techniques, such as generative modelling, are used as fast simulation alternatives to learn how to generate showers in a calorimeter, i.e. simulating the calorimeter response to certain particles. Recently there has been significant advances in the fidelity of shower simulations, with the Fast Calorimeter Simulation Challenge spurring development and comparison of various different models.
Also in HEP there has been increasing interest in using Julia as a language for HEP software that combines the ease of programming in interactive languages, e.g., Python, with the speed of compiled language, such as C++. One of the areas that merits investigation is to use Julia’s machine learning tool kits and to compare ease of use and performance against current popular solutions.
Review the most successful models implemented in the CaloChallenge, to understand which ML/AI approaches have been used. Prepare data for use in Julia, selecting suitable Julia packages for implementing the training. Retrain selected models in the Julia ecosystem, with generation of suitable metrics. Compare the training results between models, using the CaloChallenge metrics. Compare the inference times between Julia and Python/C++ models.
The evaluation exercise for this project is here. When you have finished the evaluation please contact the mentors with your solution (before 18 March, no evaluations will be accepted afterwards).