Parnassus:GPUで動くPython製の高速粒子検出器シミュレーションと再構成ソフト公開
新しいソフトウェア「Parnassus」は、粒子・原子核実験で使う検出器シミュレーションと再構成の処理を、PythonとPyTorchでGPU上に高速に置き換えるための公開フレームワークです。従来の詳細なGeant4ベースの全段階シミュレーションは計算コストが非常に高く、Parnassusは「生成器レベル(truth)」の粒子を直接検出器レベルの再構成データに変換する代理モデルを提供します。論文では、このアプローチが同等の忠実性を保ちながら「桁違いに速く」動くことを目指していると説明しています。
Parnassusは交換可能な「検出器カード」を持つバックエンドを提供します。神経ネットワークベースのモデルは条件付きフローマッチング(conditional flow matching)という生成手法で学習され、検出器の応答を学習データから再現します。パラメトリックなバックエンドは「TorchDelphes」と呼ばれる、従来のDelphes(C++/ROOT製の高速シミュレータ)の機能をPyTorchで再実装したものです。初期公開版にはCMS(神経モデルとTorchDelphes両方)、ATLASとALEPHのTorchDelphesカード、およびALEPHの神経モデルが含まれます。Pythia(イベント生成器)やFastJet(ジェットクラスタリング)とのネイティブ連携も備えています。ParnassusはROOTを必要とせず、出力はuprootで扱えます。ソフトはMITライセンスでPython >= 3.12向けに配布されています。
仕組みは大きく分けて二段階です。まず入力の真実粒子情報(HepMCファイルやPythiaの指示)を検出器モデルに渡します。神経モデルは学習したベクトル場を時間積分(Euler法など)でサンプリングして、粒子フロー(particle-flow)オブジェクトを生成します。積分ステップ数は実行時に変えられ、計算速度と出力品質のトレードオフが可能です。一方、TorchDelphesは磁場中の粒子伝搬、トラッキング効率、運動量のブレ(smearing)、カロリメータ応答、エナジーフローの合成などをモジュールとして再現します。生成後は同一の後処理パイプラインでジェットクラスタリングや荷電レプトンの分離(アイソレーション)計算などを行えます。
なぜ重要かというと、実験の詳細シミュレーションは計算予算を圧迫しがちで、探索的研究や大規模解析の足かせになってきたからです。ParnassusはGPUで動くPyTorch実装により、既存のPythonワークフローに自然に組み込めます。加えて、同じAPIで検出器カードを切り替えられるため、新しい物理過程に対して再学習せずに同じツールを使える設計です。論文では標準模型やBeyond Standard Model(BSM)過程での利用例を示しており、実用性を重視した公開リリースとなっています。
重要な注意点もあります。現行の神経モデルは学習時に使った最大粒子数に固定されます。たとえばCMSの神経モデルは最大400個、ALEPHモデルは最大128個の粒子に対応します。対してTorchDelphesにはこのモデル上の制限はありません。また、パイルアップ(複数同時計測される衝突の重ね合わせ)に関して、学習時に真のパイルアップ情報が公開されていないため、神経モデルはパイルアップを無条件にモデル化する必要があり、完璧ではありません。パラメトリック版は最小バイアス事象を重ね合わせる方法で処理しますが、パイルアップの改善は継続研究課題です。さらに、神経モデルは過去の検証研究に基づいた設計だが、今回の公開は以前のチェックポイントのそのままの再配布ではなく、新たに学習したモデルが含まれる点にも注意が必要です。