J言語によるCovid-19アウトブレイクのモデリング(2020年)
この記事では、配列指向プログラミング言語Jを用いてCOVID-19の流行をモデル化する方法を解説する。SIRモデル(感受性者・感染者・回復者の3区分)をJの簡潔な表記で実装し、感染症の拡大シミュレーションやパラメータ推定の手法を示している。数学的モデリングと関数型プログラミングの交差点を探る実践的な内容となっている。
背景メモ
- この記事は2020年3月に書かれており、新型コロナウイルス(COVID-19)のパンデミック初期に、感染症の広がりをシミュレーションする試みである。
- 使用されている「J言語」は、1970年代に開発されたAPLの影響を強く受けた配列指向プログラミング言語。データを行列やベクトルとして一括処理するのに優れ、金融・統計・数学モデルなどで使われるが、汎用言語に比べるとユーザーはごく少数。
- 著者は典型的なSIRモデル(感受性者・感染者・回復者の3コンパートメントに分けて感染動態を記述する標準的な疫学モデル)をJ言語で実装している。
- この記事が注目される理由は、当時「誰もがPythonやRでモデルを書くなか、なぜJ言語なのか」という異質性にある。パンデミック初期の情報混乱期に、マイナー言語で書かれた可視化コードが公開されたことは、データ分析コミュニティで話題になった。