Hoicos Blog

Author: かどけん

Excelを使った感染シミュレーション

パソコン

簡単なシミュレーションを行いExcelや感染症についての理解を深めてみる
270306 s - Excelを使った感染シミュレーション-%e3%83%91%e3%82%bd%e3%82%b3%e3%83%b3-自由研究

2021年1月現在、未だに新型コロナウイルスは猛威を振るっています。医療従事者が並々ならぬ努力により多くの命を救っていますが、医療従事者以外の方々も感染症対策において大きな役割を果たしていることを忘れてはいけません。もちろん情報技術だって大いに役立ちます。

その最たるものがシミュレーションです。

シミュレーションと聞くと難しそうだなと思う人も多いと思います。実際飛沫の飛び方のシミュレーション等は流体力学の知識が必要だったりと考えるのが難しいですが、案外簡単なものも多くあるのです。今回はそういったことがもっと身近に感じられるよう集団免疫についての簡単なシミュレーションをしていきたいと思います。

集団免疫とは

集団免疫は個人ではなく社会全体が持つ免疫力のことです。集団免疫が低いと、社会全体でより多くの人が感染してしまい、逆に集団免疫が高いと、感染の広がりが小さくなりいずれ感染は収束していきます。ではどうやったらこれを高めることができるでしょう?この集団免疫は感染症に対する抗体をもつ人の数に左右されます。つまりワクチンをうたれた人もしくはすでに感染症にかかった人が増えれば集団免疫は高まってくるといえるのです。

3865481 m 1024x683 - Excelを使った感染シミュレーション-%e3%83%91%e3%82%bd%e3%82%b3%e3%83%b3-自由研究

シミュレーションしてみる

さて実際にシミュレーションしていきましょう!

必要な値の設定

シミュレーションに条件は必要不可欠!!今回は次のような条件で行っていきます。
 ・ 人口1000000人の閉鎖された都市の中の1人が、ウイルスに感染
 ・ 感染者は感染後平均一日で回復、免疫を持つ
  (回復する直前に接触した人を感染させる)
 ・ 基本再生産数は2.0とする
 ・ 最初はだれもウイルスに対する免疫を持たない
 ・ 免疫を持っていれば100%感染しない
 ・ 感染しても絶対に死なない

基本再生産数とは
 ”疫学において、感染症に感染した1人の感染者が、誰も免疫を持たない集団に加わったとき、平均して何人に直接感染させるかという人数。1人の患者が何人に感染を広げる可能性があるかを示す。” つまりウイルス自体の感染力の強さと考えられる。それに対してすでに感染が広がっている状況において、1人の感染者が次に平均で何人にうつすかを表す指標を実効再生産数という。
引用元:ウィキペディア(URL:基本再生産数 – Wikipedia

Excelに入力していく

40日間のシミュレーションを行うので下の画像のような表をあらかじめ作っておきます。表の値は左から日数、実効再生産数、新規感染者数、未感染者数、新規感染者含む免疫保持者数、免疫保持者率となってます。

2 2 764x1024 - Excelを使った感染シミュレーション-%e3%83%91%e3%82%bd%e3%82%b3%e3%83%b3-自由研究

0日目の実効再生産数は基本再生産数に等しく、新規感染者数は1、未感染者数は1000000-1=999999、新規感染者含む免疫保持者数は1、免疫保持者率は1÷1000000でほぼ0%となる。0日目以降は表計算ソフトであるExcelの機能を活用して一気にやってしまいましょう。

実行生産数は基本再生産数×(人口-免疫保持者数)/(人口-1)という式で表せます。一日目においてこれをExcelの式におこすと
=$B$2*($B$1-E4)/($B$1-1) ($で絶対参照にしてます)
新規感染者数は一日前の新規感染者数×現在の実効再生産数
=C4*B5
未感染者数は一日前の未感染者数-新規感染者数
=D4-C5
新規感染者数含む免疫保持者数は一日前の値+新規感染者数
=E4+C5
免疫保持率は新規感染者数含む免疫保持者数÷総人口
=E5/$B$1

これらの式を対応するセルにすべて適応させると以下の画像のようになります。

1 1 767x1024 - Excelを使った感染シミュレーション-%e3%83%91%e3%82%bd%e3%82%b3%e3%83%b3-自由研究

これをグラフにしてみるといろいろと見えてきます。

3 1024x690 - Excelを使った感染シミュレーション-%e3%83%91%e3%82%bd%e3%82%b3%e3%83%b3-自由研究

赤線が経過日数と免疫保持率の関係です。最初の感染者が出てからから15日前後から急激に上昇、最終的に87%付近で一定になっているとわかります。これより基本再生産数が2.0のウイルスは総人口の86.9%が感染しないと集団免疫によってウイルスが絶滅することはないということがわかりますね。

最後に

皆さんいかがでしたか?シミュレーションのハードルは少し下がったでしょうか?シミュレーションは各種値を変えることで新たな発見をすることができます。ですので今回紹介したことをご自身でやってみるとさらなる発見があるかもしれませんよ!

あと言い忘れていたのですが今回作ったシミュレーション欠陥だらけです。入力する値が大きすぎたり小さすぎたりすると新規感染者数がマイナスになったりと改善点は多く存在するのです。今度やるときまでに直しておきます!

最後まで読んでいただきありがとうございました。

この記事がいいと思ったら↓のシェアボタンから

Leave a Comment

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。