2020.07.14 公開 Reprint from: RAD-IT21 WEB マガジン 「電⼦回路シミュレータで解く感染症モデル２」（⾨, 神⽥）

電⼦回路シミュレータで解く感染症モデル（その２）〜 実効再⽣産数 Rt を求めよう〜
⾨ 信⼀郎（京都⼤学エネルギー理⼯学研究所）1
神⽥ 峻彦（電源装置メーカー勤務）2
1. はじめに本稿「その１」[1]ではアナログコンピュータ（電⼦回路シミュレータ）をもちいて、
SIR モデルの微分⽅程式を解くことができることを⽰しました。主要な素⼦としては、倍率を与える係数器、２つ以上の電圧の加算値を出⼒する加算器、⼊⼒電圧の時間積分を出⼒する積分器、２つ以上の⼊⼒電圧を乗算する乗算器でした。
本稿「その２」では、電⼦回路やシステム制御の分野で広く使われる「伝達関数」の考え⽅に基づいて、実効再⽣産数を回路出⼒として表現することに成功いたしました。⽇々の感染者数（確定⽇、または発症⽇）の計数値（⼈数）を⼊⼒しますので、電⼦回路シミュレー
タ LTspice[2]を⼊⼿すれば、どなたでも実効再⽣産数を求めることができます。ここでの主要な素⼦は、電⼦回路部品として、より馴染みのある、抵抗やコンデンサ、オペアンプ（演算増幅器）のみです。電気回路に詳しい⽅は、もしかすると、より適切な回路構成を構築することができるかもしれません。
「その１」同様、本稿でもちいたソースファイル、および必要な⼊⼒ファイル例を公開しています（公開時点）。是⾮活⽤いただければ幸いです。
2. 感染症モデルの概略 II「実効再⽣産数」
2-1) 実効再⽣産数 Rt の「発⽣間隔計数法」による導出
現在、専⾨家会議の提⾔で⽤いられる評価法も公開されており[3]、前著[4]の分類で⾔えば、8 章の⾼度なモデリングと統計処理に⽀えられた「発⽣間隔計数法」（発病間隔とも訳されているようです。）に基づいた説明が⾒られるようになってきました。そこでは、単純な SIR モデルにおける回復率（または除去率）を表す γ に相当するものとし「発⽣間隔(Serial Interval)」が現れます。
あらためて発⽣間隔計数法[4]における実効再⽣産数の表記を書くと(接触機会×感染確率) × 感染性を有する時間 = Nβ ×（1/γ）と表せます。感染性を有する時間は単純な SIR モデル[1]では、[I]にいる時間ですが、「発⽣間隔計数法」では、感染数の履歴を⾒ることで、モデルが従うべき「発⽣間隔」を推定し、その特徴に従って現時点の実効再⽣産数を推定します。
例えば Rt = 1 のとき、単純モデルでは「感染数が倍に増える間に、現有感染者が半分になる」と解釈できました。それに対して、発⽣間隔計数法では「発⽣数が⼀定であるとき、2
1

写真左︓京都⼤学理学部卒。九州⼤学⼤学院総合理⼯学研究科修了。博⼠（⼯学）。核融合科学研究所、東京⼤学を経て 2013 年 2 ⽉より現職（宇治キャンパス）。専⾨︓プラズマ理⼯学、核融合学、プラズマ計測、分光学。科学教育。趣味︓ピアノ。囲碁。元フィギュアスケート選⼿。
URL: http://www.iae.kyoto-u.ac.jp/complex/
SNS: https://twitter.com/plasmankado2
写真右︓⽇本⼯業⼤学⼯学部電気電⼦⼯学科卒、⽇本⼯業⼤学⼤学院⼯学研究科電気⼯学専攻博⼠前期課程修了、修⼠（⼯学）。電源装置メーカーに勤務、電⼦回路の設計を担当、現在に⾄る。趣味︓電⼦⼯作、プログラ
ミング。 SNS: https://twitter.com/AKIBAJIN

1

2020.07.14 公開 Reprint from: RAD-IT21 WEB マガジン 「電⼦回路シミュレータで解く感染症モデル２」（⾨, 神⽥）

次感染を発⽣する時定数は、感染性を有する平均時間に⼀致する」と解釈できます。すなわ
ち[I]は感染性を有する⼈の仮想的な⼈⼝とも⾔えます（半減期法で、1/γ を仮想的な回復の時定数と解釈したのと対照的）。
もう少し数学的に厳密に解釈してみましょう。単純な SIR モデルでは、[I]から[R]への回復・隔離が指数関数 exp(-γt)に従うとするものでした。その回復・隔離が指数関数ではな
く、ある分布をもった関数 g(t)だったらどうでしょうか。その g(t)に従い、[I]が[I]でなくなります。つまり、感染性を喪失するわけです。すると、[I]と[S]が接触して[S]から[I]に移る
レートが変化するので、[I]⾃⾝の変化に反映されてくることになります。
いわゆる「⻄浦モデル」（⼀般的な統計⼿法の適⽤であるが、⽇本のコロナ禍における北海道⼤学・⻄浦博⽒の貢献で有名になった。）における感染動向は、上記のような考え⽅か
ら、以下の「再⽣産⽅程式」で表されます[3]。
-𝐽(𝑡) = 𝑅' (𝑡) ( 𝐽(𝑡 − 𝜏)𝑔(𝜏)𝑑𝜏(1).

ここで、J(t)は感染時刻（カレンダー時刻）における新規発病者の計数値であり、g(τ)は感
染性時間（発⽣間隔）の確率密度、すなわち、単純な SIR モデルの指数関数的減衰 exp(-γt)にかわるものです。τ は時間に関する積分変数で、遅れ時間を意味します。
感染者数の公表データと合わせるには、「報告⽇」あるいは「確定⽇」ではなく「発症⽇」に補正したデータを⽤います。これを、「発症⽇(onset)ベース」の実効再⽣産数と呼び、明⽰することにしましょう。もちろん、確定⽇ごとの計数値を⽤いれば、確定当⽇の再⽣産数として概算値ながらリアルタイムで求めることができます。これを「確定⽇(confirmed)ベース」の実効再⽣産数と呼びましょう。ただし、確定⽇のデータには、無症状感染者も潜伏期間中の検査陽性も含まれるため、解釈には注意が必要です。発症⽇からさかのぼり、潜伏期間を統計的に補正し、「感染⽇(infection)ベース」として評価することが求められる場合もあります。
いずれの場合でも、この発⽣間隔計数法では、いったん適切な発⽣間隔を推定できれば(ここは⾼度な疫学統計が必要)、以降、その発⽣間隔の確率密度を固定し、実効再⽣産数 Rtを推定していきます。施策や治療、隔離によってその関数の形状に多少の変化があったとしても、その変化を Rt の値が引き受ける、とも⾔えるでしょう。
再⽣産⽅程式(式(1))の具体的なイメージをつかむため、図 1 に表計算を⽤いた実効再⽣産数の導出例を⽰します。まず、実効再⽣産数が 1、すなわち、感染者が毎⽇ 10 名ずつ出て、増えない状態にいるとします（図 1(a)参照）。⼆次感染は 2 ⽇後から 1-2-3-2-1-1 ⼈と現れるとします。この例では、発⽣間隔の期待値を計算すると 4.3 ⽇になります。このとき、たとえば 10 ⽇後には、過去 4〜9 ⽇⽬、つまり J(t-τ)の遅れ時間 τ として 1〜6 ⽇の分 ）の⼀次感染者の割合を⾜し合わせていることになります。このとき g(τ)は全部⾜して 1 になるような割合（確率密度）です。過去から⾒たらその後の発⽣（表の横列右向き）、現在から⾒たら過去にさかのぼった影響（表の縦列上向き）ですので、0.1-0.2-0.3-0.2-0.1-0.1 とな
ります。
もし、感染者の報告が⽇を追って増えているなら、その割合をかけ合わせたものが、⾜し合わされることになります。その増え⽅が実効再⽣産数 Rt に相当します。

2

2020.07.14 公開 Reprint from: RAD-IT21 WEB マガジン 「電⼦回路シミュレータで解く感染症モデル２」（⾨, 神⽥）

そこで、⽇々の増加率が 10%ずつ新規感染者が増加する場合を考えてみます（図1(b)参照）。報告⽇毎に同じ統計分布 g(τ)
をかけ合わせてそれを図 1(b)の縦に⾜し合わせて予測値をたてます。実際の新規感染者をその予測値で割ると、実効再⽣産数
1.36 が得られます。
単純モデルと対応させると⽇々1.1 倍は、倍加時間 7.27 ⽇（時定数 10.5 ⽇）ですので、1/γ を回復（隔離）の時定数とす
ると、半減期（に対応する数値）は1.36×7.27 = 9.9 ⽇に相当します。累計の感染者の倍加時間は、割合が⼀定であれば、数が増えてくれば⽇々の報告数の増加率と等しくなってきます（割合が変化する場合 図 1 発⽣間隔の期待値（平均値）が 4.3 ⽇となる
ような、ある統計分布を仮定した場合の、実効再は注意が必要です）。
⽣産数導出の数値的イメージ（仮定した統計分布
⼀⽅、発⽣間隔の期待値 4.30 を 1/γ と仮に依存する）。実際の感染者を、過去のデータか定すると、前著[4]の式(18)より、Rt =ら予測される 2 次感染者発⽣数でわったものが実
効再⽣産数 Rt に相当する。(a) Rt = 1 のとき。(b)4.3/10.5 + 1 = 1.41 となります。1.36 との差
⽇々の増加割合が 1.1 倍だったとき。
は g(τ)の分布の形状に依存するものと解釈できるでしょう。
発⽣間隔あるいは世代時間と実時間における半減期や倍加時間などの時定数との対応関係を、単純な条件想定のもと、付録 B に考察しました。
2-2)

発⽣間隔計数法の数学的意味と電⼦回路

このように、この再⽣産⽅程式(式（1）)は、過去時刻における感染が、次の感染を⽣む確率
を分布 g(τ)に従い、現時刻の感染者に「畳み込まれる」ことを意味します。「その⼈」が感染させるのではなく、統計的な増加の動向を現在から過去を振り返って評価するものともい
えます。これを数学的には「convolution（畳み込み積分）」といいます。
ここで、電⼦回路や線形システム、実験物理学を学んだ⽅は「装置関数」「インパルス応
答」「伝達関数」という⽤語を⽿にしたことがあると思われます。
パルスの⼊⼒があっても、検出器で得られる信号は、装置特有の「時定数」によって「なまった」信号になるのは⽐較的知られた事実でしょう。
電気回路では、この「なまり」を意図的に作ることができます。「ローパスフィルタ(low-pass filter; LPF)」、「積分回路」がそれにあたります。コンデンサによる電荷蓄積やコイルの⾃⼰誘導をつかって、パルス時間を遅らせます。大学教養レベルの数学・物理学
や電気数学に出てくる「ラプラス変換」をご存知であれば、インパルス応答（時間 t の関数）と伝達関数（複素⾓周波数 s の関数）はラプラス変換と逆変換の関係にある、といえばおわかりでしょうか。「伝達関数を求める」とは「インパルス応答を求める」こと、「伝達関数を通す」とは「インパルス応答を畳み込んだ波形を得る」ことと同義と考えてください。

3

2020.07.14 公開 Reprint from: RAD-IT21 WEB マガジン 「電⼦回路シミュレータで解く感染症モデル２」（⾨, 神⽥）

例えば、図 2(a)の回路では、電源がつくる 5V 0.1 秒の矩形の⼊⼒パルス（図 2(b)、⾚線の矩形）に対し、右側にある出⼒端⼦ではゆっくり⽴ち上がり、ゆっくり減衰します（図 2(b)、⻘線のカーブ）。直感的にいうと、連続的な電圧も矩形パルスの組み合わせだと思えば、出⼒もこのような変形した出⼒を組み合わせたものになるはずです。これが畳み込み積分の物理的意味です。この単純なRC 回路ではこの変化の「時定数 τ」は抵抗値 R、静電容量C の積で、

𝜏 = 𝑅𝐶(2)

図 2 インパルス応答（伝達関数）を表す、RC フィルタ回路。

と表されます。図 2(a)の回路定数 R と C で計算すると τ =100 ms で、実際、出⼒電圧は 0.1 秒のオーダー（⼤きさの程度）の変化をしているのがみてとれるでしょう。
3. 伝達関数の導⼊
3-1) 伝達関数による実効再⽣産数の導出
本章では、伝達関数を⽤いて、実効再⽣産数 Rt を求めてみましょう。伝達関数（インパルス応答 g(t)）の形状は論⽂[5]に近いものを作りましたので、厳密ではないにしても、さほ
ど⼤きく異るものではないでしょう（論⽂[5]の図 1 の縦軸は 1 ⽇あたりではなく、0.1 ⽇
あたりの数値のようです）。 採⽤した g(t)の具体的な形は、⼤学での数学や統計学でよく知られるガンマ関数 Γ(*)を⽤いた以下の式(3)になります。
345 𝑡 3 exp(−𝑎𝑡 6 )𝑔(𝑡) = 0𝑛𝑎 6 7

𝛤<

𝑚+1
@
𝑛

(3)

ただし、n = 1、m = 3、1/a = 1.1 です（a を逆数で書くのは、時定数を表すため考えやすいからです）。この形を採⽤する利点や計算⽅法は付録 C に述べています。
いく通りかの関数型を図 3 に⽰します。
式(1)の右辺の時間積分は伝達関数（インパルス応答 g(τ)）が 0 になると効かなくなりますので、2 週間程度でも⼗分でしょう（τ 無限⼤まで積分しても結果は同じ）。この部分は伝達関数の回路を通すことで⾃動的にやってくれます。
あとは、⽇々の発症者報告数と、回路の出⼒値との⽐をとります。図 4 にその概念図を⽰します。
伝達関数を求めるには、図１の横の列と同じ考え⽅で、１⼈を１⽇間だけ⼊⼒したときに、何⽇後にどのような割合で感染を広げるかを⽰
す確率分布を作ることを⽬標にします。その確率分布はすでに評価済みの（論⽂等に出て認め
図 3 発⽣間隔(serial interval)の確率密られた）もの（例えば⽂献 [5]）、あるいはそれ 度。n, m, a はそれぞれ、次数、重み、時に類する形状のもの（例えば式(3)）にします。 定数の逆数、に関連した式(3)における係数。これらの組み合わせで、適切な関数型を構成することを試みた。

4

2020.07.14 公開 Reprint from: RAD-IT21 WEB マガジン 「電⼦回路シミュレータで解く感染症モデル２」（⾨, 神⽥）

図 4 電⼦回路をもちいて発症者ベースで実効再⽣産数 Rt の求める概念図。平滑化は⽬的と必要に応じて⾏う。

そのような伝達関数が得られると、⽇々の発症者数の⼊⼒に対して、その⼈たちが次の感染を起こす⼈数の予想値が得られます（図 1 の縦列）。
データのばらつきが⼤きい場合、データをそのまま⽤いて演算処理（特に割り算や微分）を⾏うと、そのばらつきがますます増⼤し、データの解釈ができなくなることがよくあります。したがって、実験データを扱う場合は適切な「前処理」をして次のステップに進むことが⾏われています。平均操作もその⼀つです。時間的に平均をすることと、何度も実験をやって、回数分の平均をとること（アンサンブル平均）は、通常、同等とみなされます。
データを滑らかにする代表的な⽅法は「平滑化（スムージング）」と⾔われるもので、例
えば、ある１点のデータの前後数点を平均し、それをその１点の代表値として表現します。
次の点は、またその前後の平均値をとります。濃い霧の中のスポットライトの移動をイメージしてみてください。１点の光が滑らかに動くかわりに、その光はその周囲の場所にも影響を与えることになります。どの程度の「幅」で平均をとるか、あるいは、その「幅」のなかに強弱をつけるかどうかは、データの品質と解析の⽬的とのバランスを保つように選びます。⼀連の同様な解析には、同じ処理の仕⽅で⽐較検討を⾏うことが重要です。
本稿では、平滑化回路として、図２に⽰したような「ローパスフィルタ」を⽤いています。電気回路で、⾼周波成分をカットするために広く使われており、ノイズキャンセラーの⼀⽅式として有名かもしれません。どの程度の周波数（時間変化の速さ）をカットするか、というのは、これも、データの品質と⽬的に応じて決定します。
3-2) 電⼦回路シミュレータによる伝達関
数回路の構築では、これを LTspice で実装してみましょう。回路図を図 5(a)に⽰します。
伝達関数の回路は、⾮反転増幅の 2 次ローパスフィルタとして代表的なものです。
各 R や C の値を探索するには、「その１」でおこなった SIR モデル構築と同様、粒⼦群最適化を⽤いました。伝達関数（インパルス応答）は、時間積分が⼊⼒と出⼒で同じになるように規格化されたものです（図5(b)）。⼊⼒は「デルタ関数」[6]を実効的に模擬するため、100V-0.01 秒のパルスにしました(単位インパルスと⾔います)。規格化は出⼒前の R5、R6 の抵抗⽐を⽤いて

図 5 電⼦回路シミュレータを使った、実効再⽣産数導出のための(a)伝達関数回路 (b)伝達関数への⼊⼒（単位インパルス波形）および出⼒波形（インパルス応答 g(t)）。

52020.07.14 公開 Reprint from: RAD-IT21 WEB マガジン 「電⼦回路シミュレータで解く感染症モデル２」（⾨, 神⽥）

調整します。今の値は 1.01 でしたので、誤差 1%です。これは得られる精度に対し、無視できる量とみなせます。
オペアンプなどの電⼦回路に不慣れな⽅は、図 2 のような単純な RC 回路を多段に接続して、近い形状の伝達関数を作成してみるところからチャレンジしてみられてはどうでしょうか。
「感触」がつかめるのではないかと思います（実⽤上はなかなか適度な時間に 0 に落とすのがむずかしいですが、ピーク位置をあわせ、時間積分を 1 に近づけることを⽬標に）。
本回路で採⽤した伝達関数（インパルス応答 g(t)）は、実際に専⾨家会議の評価で採⽤されている再⽣産⽅程式(式(1))における発⽣間隔の確率密度 g(τ)や、それを模した数式(3)のg(t)と⽐べると若⼲の違いはあります。これを合わせ込むには、フィルター回路の構造を⾼次にするなどで改善が⾒込めますが、本稿ではあえて典型的な回路のまま近づける試みをしました。実際、⽤いるデータのばらつきや誤差の影響もあり、決定される実効再⽣産数は、伝達関数の形状の変化には鈍感といえます。
3-3) 電⼦回路シミュレータによる実効再⽣産数の計算結果
計算結果を図 6 に⽰します。実効再⽣産数 Rt は、⼊⼒電圧（実際の新規発症者数）を出
⼒電圧（Rt = 1 の場合の発症者の予測値）で割ったものです。これも LTspice 内で計算して表⽰し数値データとして書き出すことができます。発症⽇毎の計数データは、「新型コロナ
ウイルス感染者数マップ」[7]にまとめられている感染者リストのファイルからカウントしました。発症⽇データのない報告もあるのですが、本稿では原理実証のため、⼊⼿可能な発症⽇のデータをそのまま⽤いました。⼊⼒する計数として、誤差を許容し、データ数と速報性を重視すれば、確定⽇のものを選ぶと、確定⽇ベースの実効再⽣産数が得られます。都道
府県別の計数値を⽤いればその県の実効再⽣産数が得られます。
結果は、専⾨家会議等[8][9]から公表されている実効再⽣産数の時間的推移をほぼ反映しており、評価値もかなり近い値が得られているのがわかります。発症者ピークの伝達関数への⼊⼒波形と出⼒波形の中間は 4 ⽉ 4 ⽇付近です。ちょうどそのあたりで実効再⽣産数は
Rt = 1 を横切っています。ただし、政府の発表にあるような「感染⽇ベース」の実効再⽣産

図 6 電⼦回路シミュレータを使ってもとめた⽇本における発症⽇ベースの実効再⽣産数の推移。⼊⼒は発症時間がわかっているもののみの計
数 を ⽤ い た （ 17593 例 中 、 9026例）。6 ⽉以降は発症⽇がまだわか
らないデータがあることを考慮し表⽰範囲から省いてある。⼊⼒の起点
は 2020 年 1 ⽉ 3 ⽇であるが、「.tran」コマンドで、記録開始を30 ⽇後に設定したため、表⽰上の 0
秒=2 ⽉ 2 ⽇である。

6

2020.07.14 公開 Reprint from: RAD-IT21 WEB マガジン 「電⼦回路シミュレータで解く感染症モデル２」（⾨, 神⽥）

数に⽐べると、「発症⽇ベース」のものはピークが 5 ⽇程度遅れ、「確定⽇ベース」のもの
は、さらに５⽇程度遅れます。（次章図 8 参照）。
濃厚接触者を追跡し、通知するアプリケーション等が浸透し、データが蓄積してくれば、もしかすると感染⽇ベースの実効再⽣産数も直接評価が可能になるかもしれません。
実効再⽣産数が少し「バタついて」いるのは、⼊⼒データのバタつきを反映しています。
⼊⼒する前に数値的に移動平均などの前処理（平滑化・スムージング等）をすることによって、なめらかになります。ただしその分、時間分解能は低下しますので、もとのデータの性質にあわせて適切な⽅法をとるのが通例です。図６に⽰した発症⽇ベースの実効再⽣産数の評価では、平滑化をせずに伝達関数に⼊⼒しています。「確定⽇」を⽤いると検査体制のばらつきを反映し、さらにバタつきますので、フィルタ処理が必要だと思われます。
平滑化も回路シミュレータを⽤いる場合、図 4 のように、適当な時定数の平滑化回路を前段に挿⼊することで⼊⼒信号をなめらかにすることが可能です。図 2 に⽰した RC 回路も代表的な平滑化回路の⼀つです。
実際に、東京都の確定⽇ごとの計数値を⽤いて、平滑化回路を通し、確定⽇ベースの実効
再⽣産数を求めてみましょう。結果を図 7 に⽰します。この場合は、データのばらつきが⼤きいので、前段に式(2)で与えられる時定数として４秒（すなわちグラフでは４⽇）の平滑化回路を⼊れています。
東洋経済オンライン[10]で公開されている実効再⽣産数とほぼ同程度時間スケールで相対的な挙動を⽰しています。このサイトで採⽤されている、⻄浦⽒の提案による簡易式（付録B の式(B5)）では１週間分の総計を求めているため、当⽇のデータが、おおよそ１週間の中央、すなわち 3.5 ⽇前の移動平均値となっています。⼀⽅、図 7(b)については、⽣データと平滑化後の出⼒をみると 3 ⽇前後の遅れがあるのがわかります。その原因は平滑化回路の時定数（式(２)）によるものです。⽣データを、数値的に平滑化し、それを伝達関数に⼊⼒
すれば、この遅れをなくすことができるので、より早い段階で新規感染者計数値の変化を検知することが可能です。
平滑化回路へ⼊⼒すると、この信号遅延のため、出⼒値が最新⽇よりも先まで得られます。そこで、平滑化回路の⼊⼒と出⼒の傾向が重なる程度まで、伝達関数の⼊⼒（＝平滑化
回路出⼒）と出⼒の時間軸を⼿前にずらせば、回路シミュレータのみで数値的平滑化と同様

図 7 (a)平滑化回路を組み込んだ伝達関数の回路図。(b) 電⼦回路シミュレータ
を使って求めた東京都のにおける確定⽇
ベースの実効再⽣産数の推移。東京は発症⽇データがほとんど得られていない(2020 年 6 ⽉ 29 ⽇データで確定⽇ 6172
中、発症⽇の記載は 258 ⼈のみ) 。⼊⼒の起点は 2020 年 1 ⽉ 3 ⽇であるが、「.tran」コマンドで、記録開始を 60 ⽇
後に設定したため、表⽰上の 0 秒=3 ⽉ 3⽇である。時間軸を 7 ⽇刻みに表⽰すると、曜⽇毎の傾向がわかりやすい。

7

2020.07.14 公開 Reprint from: RAD-IT21 WEB マガジン 「電⼦回路シミュレータで解く感染症モデル２」（⾨, 神⽥）の結果が得られます。本稿では回路出⼒の特徴を⽰すため、あえてそのまま表⽰しています。
このように、回路シミュレータを利⽤すると、データ処理のどの段階で、データのばらつ
きや遅れが評価に響いてくるかを確認しながらデータ解析を進めることができる、という利点もあります4. 結語 〜

結果の考え⽅について

現在にいたるまでの経時の計数データをもとに、現在の（実際には、発症数が確定した⽇における）実効再⽣産数を求めることは、感染が拡⼤しているのか、収束しているのか、その⽬安を把握するために意義があると思います。種々の評価⽅法が公開されており、発⽣間隔の関数型と⽇々の計数値から Rt を求めるエクセルシートが適⽤されている論⽂も出ています[11][12]。ただし、その数学的な「中⾝」を理解するにはやや敷居が⾼いようにも思えます。
回路シミュレータを⽤いれば、いったん回路を構築してしまえば、あるいは動作が確認された回路を利⽤できれば、数式や統計処理をブラックボックスとして、実効再⽣産数の概算
値、その経時変化を追っていくことができることがわかりました。こちらも⼀つの⼿法として提案できる⽅法ではないかと思います。複数の⼿法で同⼀の結果が得られることは、「SIR モデル」や「実効再⽣産数」などの概念の信頼性向上や様々な分野の⼈たちへの浸透にも有⽤と思われます。
もちろん、もし厳密性を要求するならば、個々⼈について、図 8 に⽰すように、
感染 → 潜伏 → 発症 → 受診・検査 → 確定・報告 → 治癒・死亡といった、⼀連の時間的な状態の変化を加味する必要があります。それぞれ個⼈差があるので、統計分布（ポアソン過程など）に従う、などの統計的処理を⾏います。
ですが、施策の決定が細かい数値の差に依存するような場になければ、信頼区間の評価など、数値そのものに付帯する幅にある程度⽬をつぶり、迅速性と、データの⼊⼿性を考慮して相対変化による傾向を把握することも⼀つの考え⽅だと思います。
発症 (待機) 検査
感染
この個⼈差、特に感染から発症までの誤差は⼩さいと仮定することにより、その⽇の発症確定 (⼊院) 治癒/死亡
検査基準
検査体制
(潜伏)
医療体制
者の数がほぼ確定した段階で、リアルタイムに実効再⽣産数を出すことができます。もっと+α 11() ~ 17 ()
3-10
1-12
国ごとの基準も、発症から確定までには 1 週間程度の遅れはあると思いますし、感染は発症の数⽇前で発⽣/発病間隔(serial interval)
世代時間(generation time)
す。やはり⾏動変容が、数字として現れるには 2 週間程度の遅れがあるのは致し⽅ありませ
R =3
(a)
ん。
不確実
t

発症⽇が最も正確

発症

感染
(潜伏)

(待機) 検査
確定 (⼊院) 治癒/死亡
検査基準
検査体制
医療体制

1-12

3-10

Rt = 3
不確実(b)

発症から確定までのラグ

11() ~ 17 ()国ごとの基準発⽣/発病間隔(serial interval)

世代時間(generation time)

(a)

+α

(b)

発症⽇が最も正確

図 8 (a)感染から発症、確定診断を経て治癒または死亡に⾄るまでの時間のばらつきの模式図。本稿で⽤いたデータは17594 名中、9026 名の発症⽇の計数を発症から確定までのラグ⽤いた。発症から確定までかかった⽇数のヒストグラムを(b)に⽰す。

8

2020.07.14 公開 Reprint from: RAD-IT21 WEB マガジン 「電⼦回路シミュレータで解く感染症モデル２」（⾨, 神⽥）

かといって、隔離のために無症状の⼈たちに対する⼤規模な検査を定期的に実施するのは、クラスター追跡の過程や興⾏団体など公共性が⾼い集団の場合を除き、現実的ではないと思います。将来的には、濃厚接触の機会を検知するスマートフォン⽤のアプリケーション
を⽤い、通知された⼈への漏れのないフォローアップ検査が徹底できれば、感染拡⼤に対する予測性の向上にも有効かもしれません。ですが、その有効性が現れるには、体制整備などに期間を要すると思われます。
通常は⾏動変容を維持しつつ、症状がある場合は⾃主的に隔離、マスクなど⼈に移さない防護措置をすること、発症者について迅速に検査、判定を⾏うことによって、発症⽇と確定⽇のタイムラグを最⼩限に抑えることで、感染の拡⼤を抑制し、実効再⽣産数の評価の遅れも改善されると思われます。
今般のコロナ禍は本稿執筆の 2020 年 6 ⽉ 26 ⽇現在、いまだ進⾏中であり、⽇本よりも深刻な事態に陥ってしまった国も多くあります。⽇本も全く気を抜けない状況です。今後の「災害復興」で必要になることは、恐らく⽇々発表される感染状況のデータに⼀喜⼀憂する
ことなく、「社会的・経済的要因を考慮に⼊れながら合理的に達成できる限り」リスクを下げながら、感染拡⼤防⽌に努めつつ、数字やその変化の動向を冷静に判断できるようになる
ことではないでしょうか。科学的なリテラシーを基礎として⼀⼈ひとりが主体的に現状を理解し、施策の意味や効果を冷静に判断できるような社会の醸成、そのために本稿が少しでもお役に⽴つことを、著者としても⼼より願っております。
あとがき︓
⾨︓本稿の執筆の機会をくださいました京都⼥⼦⼤学の⽔野義之名誉教授(@y_mizuno)に感謝いた
します。SNS で、LTspice を⽤いて SIR モデルを解かれている[https://twitter.com/akibajin/status/1249541265667981317?s=21]の投稿に感銘をうけて、（お名前も存じ上げなかった）神⽥⽒(@Akibajin)に突然お声をかけて議論を進めました。同⽒には、私の様々な提案（無茶振り）にも適切に対応いただき、内容がどんどん深まっていきました。得意分野の異なる者同⼠が気軽に連絡をとれるのも SNS の魅⼒でもあると実感しました。
神⽥︓「感染症の流⾏をコンピュータ上で模擬することができないか」と興味本位で調べていくと
SIR モデルにたどり着きました。数理モデルが微分⽅程式で表されていたので、アナログ回路で演算できないかと思い、回路シミュレータで試⾏錯誤したのが始まりでした。普段から SNS で趣味の電⼦⼯作関連の発信をしているので、いつもの流れで発信したところ[https://twitter.com/AKIBAJIN/status/1249541265667981317]や[https://twitter.com/AKIBAJIN/status/1251015477205151744]など、思わぬ反響とともに⾨先⽣、京都⼥⼦⼤学の⽔野先⽣との出会いがありました。
無茶振り（︖）はありましたが、さまざまなアドバイスをいただき、とても充実した結果を得ることができました。今回このような共著という形で貴重な機会をいただき、⼼から感謝するとともに、厚く御礼申し上げます。

参考⽂献・サイト︓[1] ⾨ 信⼀郎、神⽥ 峻彦︓電⼦回路シミュレータで解く感染症モデル「その１〜SIR モデルを解こう〜」 https://rad-it21.com/サイエンス/kado-shinichiro_202007***/[2] アナログ・デバイセズ。ダウンロードサイト。
https://www.analog.com/jp/design-center/design-tools-and-calculators/ltspice-simulator.html#[3]⻄浦博 GitHub リポジトリ (2020.5.12 閲覧)

9

2020.07.14 公開 Reprint from: RAD-IT21 WEB マガジン 「電⼦回路シミュレータで解く感染症モデル２」（⾨, 神⽥）

https://github.com/contactmodel/COVID19-Japan-Reff「JASTJ COVID-19 科学ジャーナリストのための情報整理」で補⾜解説。
https://note.com/jastj/n/n463f1aeb1833[4] ⾨ 信⼀郎︓この感染は拡⼤か収束か︓再⽣産数 R の物理的意味と決定, RAD-IT21 WEB マガジン
(2020.03.27) https://rad-it21.com/サイエンス/kado-shinichiro_20200327/[5] H. Nishiura et al., "Serial interval of novel coronavirus (COVID-19) infections" International Journal of
Infectious Diseases 93 (2020) 284–286.
https://doi.org/10.1016/j.ijid.2020.02.060[6] デルタ関数︓ https://ja.wikipedia.org/wiki/ディラックのデルタ関数 （2020 年 6 ⽉ 22 ⽇閲覧）
[7] 「新型コロナウイルス感染者数マップ」(2020.6.20 時点)
https://jag-japan.com/covid19map-readme/[8]「新型コロナウイルス感染症対策の状況分析・提⾔」（2020 年 4 ⽉ 22 ⽇）
https://www.mhlw.go.jp/stf/seisakunitsuite/bunya/0000121431_00093.html[9] 新型コロナウイルス感染症対策専⾨家会議︓ https://ja.wikipedia.org/wiki/新型コロナウイルス感染症
対策専⾨家会議 （2020 年 6 ⽉ 22 ⽇閲覧）
[10] 東洋経済オンライン特設ページ（新型コロナウイルス国内感染の状況）
https://toyokeizai.net/sp/visual/tko/covid19/[11] ⼭中伸弥による新型コロナウイルス情報発信「実効再⽣産数（Rt）の計算を試みました」
https://www.covid19-yamanaka.com/index.html（6/20 閲覧) 内に紹介された⽂献︔ Anne Cori 他,

American Journal of Epidemiology,178,(2013)1505-1512. https://doi.org/10.1093/aje/kwt133 に発⽣間隔の関数型と⽇々の計数値から Rt を求めるエクセルシートがある。（2020 年 6 ⽉ 22 ⽇閲覧）
[12] Rt Covid-19 Japan, https://rt-live-japan.com, およびその引⽤ （2020 年 6 ⽉ 22 ⽇閲覧）

■付録 B 発⽣間隔、倍加時間、時定数などの関係
実効再⽣産数 Rt はしばしば「感染症の流⾏が進⾏中の集団のある時刻における、1 ⼈の感染者が⽣み出した⼆次感染者数の平均値」と説明されます。⽂字通りに解釈すると Rt の累乗
で新規の感染者が増え続けることになります。
ではこれを実時間軸にあわせ、単純モデルと対応させることができるでしょうか。仮に、ある時間間隔 τ がすぎたときに⼀⻫に感染が起きる特殊な場合を想定して計算してみましょう。
最初 1 名だったとすると、現有感染者数 I(t)は𝐼(𝑡) = 𝑅' '/C = exp 0𝑡7
𝜏/ln (𝑅' )(B1)と表せます。新規感染者が出た時点で、それまでの感染者は感染性をなくすからです。
⼀⽅、SIR モデルでは、感染初期において、倍加時間を τ2 とすると、𝐼(𝑡) = exp(𝛾(𝑅' − 1)𝑡) = 2'/CI(B2)なので、両者よりln (𝑅' )𝜏= 𝜏𝛾 =
𝑅' − 1
𝜏J / ln(2)(B3)と関連づけられそうです。この特殊な想定下で Rt =2 であれば、τ は倍加時間 τ2 と⼀致します（実際は統計分布に従いますので「なまり」ます）。その意味で、「発⽣間隔毎の等⽐級
数的な感染拡⼤」は、「現有感染者の半減期の間に倍加時間が何回⼊るぐらいの感染拡⼤かを表す」、という単純モデル（半減期法）による Rt の物理的意味と合致します。よくつかう10

2020.07.14 公開 Reprint from: RAD-IT21 WEB マガジン 「電⼦回路シミュレータで解く感染症モデル２」（⾨, 神⽥）

Rt の値(0.5〜6、ただし 1 を除く)であれば、両時間の⽐ τ/τ2 は概ね 0.5 倍から 2 倍程度の値をとります。
この関係を使うと、⻄浦⽒が[3]にて簡易⽅式として提案し、東洋経済のサイト[10]で評価されている実効再⽣産数 Rt の速報値の意味が納得できます。左辺は τ ⽇毎に Rt 倍、右辺は 7 ⽇毎に新規感染者が X 倍と書くと、現有感染者（新規感染者数に等しい）の時間変化
は式(B1)より'/C𝑅'= 𝑋'/L(B4)となります。発⽣間隔の平均値は約 5 ⽇なので、τ = 5 を代⼊し、
𝑅' = M

直近 7 ⽇P/LO
その前の７⽇(B5)が得られます。この簡易式を確定⽇（報告⽇）で整理したデータに⽤いると、過去 2 週間の確定⼈数を使って当⽇の実効再⽣産数が求まります（発症⽇のデータに適⽤できれば発症⽇
ベースの実効再⽣産数が得られる）。よって、得られる値は半週程度前の実効再⽣産数概算
値を反映しているといえます。さらに、7 ⽇分の計数値にはすでにそれ以前の伝達関数が畳み込まれているので、その分の誤差も含みます。したがって、実際の Rt の急な変化に対し、評価値はやや「鈍感」にならざるを得ません。
本稿の伝達関数を利⽤する⽅法では、同じ確定数の経時データを⽤いると、伝達関数（式(3)または図 3、図 5(b)）の広がりは、およそ 9-10 ⽇程度です。したがって、クラスターの発⽣や、⾏動変容が実効再⽣産数 Rt の値に現れるまでの時間を、４­５⽇程度短縮することができると考えられます。
参考︓K 値について同様の考え⽅で 2020 年 4 ⽉中旬から 5 ⽉にかけて発表[B1]されて以来、話題になっている K 値と Rt との関係を評価することができます。K 値の定義は
𝐾=M

直近 7 ⽇

O
累計感染者

(B6)

で与えられています。ここで 1 週間毎に新規感染者が X 倍に増えるなら、初項 1 から n 週
過ぎた時、分⼦は Xn-1、の累計感染者数は初項 1 の等⽐級数の和で

𝐾=

𝑋 6R5
𝑋 6R5 (𝑋 − 1)=
𝑋 645 − 1
𝑋 645 − 1
𝑋−1

(B7)

です。ただし、統計分布を考慮しない簡易式(B4)より X= Rt (7/5)です。
この⽅程式はおそらく解析的には解けませんので、解く場合は数値的に⾏います。ですが、式(B7)からわかるように、統計分布を考慮しない Rt の簡易値である式(B5)と K 値は対応しています（Rt が⼀定であれば、Rt が決まれば K 値が決まる）。K 値は 0〜1 の値をとり、収束トレンドで 0 に近い値になります。どちらも経時変化の傾向の指標になりますが、筆者（⾨）は、K 値が感染者累計数、すなわち感染規模に依存するので、収束トレンドの直感的なイメージはつかみにくいのではないかと思っています。例えば、⽇々の感染者が⼀定

11

2020.07.14 公開 Reprint from: RAD-IT21 WEB マガジン 「電⼦回路シミュレータで解く感染症モデル２」（⾨, 神⽥）

数である状況が続いている場合を考えてみます。実効再⽣産数は Rt = 1 で⼀定ですが、K 値
は分⼦が 1 のまま、分⺟が等差数列の和 n(n+1)/2 に従い増え続けますので、n が増えるにし
たがい、0 に向かって減少を続けます。そこからわずかに Rt が増えれば感染爆発ですが、K
値は減り続けます。K 値の「減り⽅の変化」を検知する必要がありますが、それは Rt の変化をみるのと同じです。しかも、K 値の場合はどこまで値を戻せばよいかが得られません（分⺟が異なっているから）。したがって、どこかでカウンタをリセットして計数を再開することになります。K 値の「リセット」は、トレンドの可視化と感度の向上に有⽤という⾔い⽅もできます。しかしその反⾯、値には任意性が避けられないことも分かります。
[B1] 中野貴志教授（⼤阪⼤学核物理研究センター）による論⽂等（K 値について）
https://www.osaka-u.ac.jp/ja/news/info/corona/corona_info/from_members/rcnp_nakano■付録 C︓ ガンマ関数の「必殺技」
伝達関数（インパルス応答 g(t)）は積分すると 1 になるように「規格化」しないといけま
せんが、式（3）の積分にはガンマ関数 Γ(n)[C1]というものを導⼊した、便利な公式が使えます。m、n を整数、a を正の実数とすると式(C1)が得られ、式(C2)の公式を⽤いて簡単にすることができます。
VWX

5 U< Y @∫. 𝑥 3 exp(−𝑎𝑥 6 )𝑑𝑥 = 6 VWX
Z Y

公式

(C1)

𝛤(𝑠 + 1) = 𝑠𝛤(𝑠), 𝛤 (1) = 1, 𝛤 (1⁄2) = √𝜋, 𝛤(𝑛 + 1) = 𝑛!

(C2)

ただし、n!は 整数 n の階乗を表します。
⼤学で学ぶ物理学において、量⼦⼒学に現れる波動関数の計算では n = 1 を、気体分⼦運動論、統計⼒学に現れるマックスウェル・ボルツマン分布を⽤いた計算では n = 2 をよく使います。証明はガンマ関数の定義から変数変換して簡単に求められます。筆者（⾨）が⼤学
⽣の頃、この種の計算（ガウス積分とも⾔われ、複素積分や漸化式で導出する、、、と習う）に嫌気がさして変数変換して以来、「必殺技」と呼んで重宝しています。
式(3)は「必殺技」をもちいると、つねに積分が 1 になるようにできていることがわかります。なお、統計学に詳しい⽅は、ガンマ分布[C2]の変数変換と解釈されもいいでしょう。
[C1] https://ja.wikipedia.org/wiki/ガンマ関数 (2020.6.20 閲覧)[C2] https://ja.wikipedia.org/wiki/ガンマ分布 (2020.6.20 閲覧)
元記事︓ https://rad-it21.com/サイエンス/kado_kanda_20200714_2/[ 短縮 URL: https://bit.ly/RADIT21KD2020071402 ]（ 2020 年 6 ⽉ 22 ⽇投稿、7 ⽉ 14 ⽇公開 ）引⽤︓「⾨信⼀郎・神⽥峻彦︓電⼦回路シミュレータで解く感染症モデル２, RAD-IT21 WEB マガ
ジン (2020.07.14) 」
RAD-IT21 は⼈類の未来を「科学」（⾃然・社会・⼈⽂科学）を踏まえて議論することで、より有⽤で信頼できる「情報」と「知識」を発信する WEB マガジンです。
RAD-IT21 編集部： 〒105-0001 東京都港区⻁ノ⾨ 2 丁⽬ 2-5 共同通信会館ビル ⽇本ラッド株式会社内12