2020年3月31日火曜日

東京書籍から小冊子出ました


 東京書籍から小冊子出ました。タイトルは「人工知能時代のデータサイエンスの学び方 with Excel」。全32ページ、全部私が書きました。
 私が勤務校の夏の講習(→ https://omori55.blogspot.com/2019/03/with.html )で実施している内容を編集したものです。高校・情報科の教授用資料としてあちこちの学校に配るそうです。

2020年3月1日日曜日

情報伝達をモデル化して、エクセルでシミュレーションする

 感染症が広がるのも、うわさやデマが広まるのも、情報伝達の一種です。最初はゆっくりと、次第に急速に広がって、そしてやがて収まっていく。その様子をモデル化して、エクセルでシミュレーションしてみましょう。

  まず、情報量(たとえば感染者数)の初期値(たとえば1人)を設定します。次に、情報の増加率(伝達率)を設定します。その上で、エクセルのセルに
  • 情報量=前の情報量×(1+増加率)
という関数式を入力してコピーして、情報量の推移をグラフにすると、指数関数のグラフが得られます。これは情報量が加速度的に(いわゆるねずみ算式に)無限に増えるグラフになりますが、感染症でもうわさでも人口を超えて増え続けることはありませんね。そこで、次に上限(人口)を設定することにします。
  • 情報量=前の情報量×(1+増加率)×(1ー前の情報量/上限)
こうすれば、情報量が上限に近づくにつれて増え方が穏やかになります。アルファベットのSのような形であることから「S字カーブ」と呼ぶことにしましょう。
 けれどもこのモデルでは、最終的に上限(全人口)いっぱいまで広がって、一向に減らないことになりますから、もう一工夫しましょう。
 ここでは一定時間(たとえば2週間)後に感染症が治ったり、うわさ話をしなくなったりして、その分だけ情報量が減少するようなモデルを考えます。そのために、まず「減少量」を設定してみました。
  • 減少数=一定時間前の増加数
けれども、これではまだ終息には至りませんでした。考えてみると、このモデルは「感染症が治った人が再び同じ感染症に罹っ」たり、「うわさ話に飽きてうわさをしなくなった人が、他の人から同じうわさ話を聞いて再びうわさ話をし始め」たりする状況ですから、実態にあいませんね。そこでさらに
  • 上限=情報が未達の人=全人口ーすでに情報を得た人
こうすることで、最初はゆっくりと、次第に急激に増えて、やがてピークに達して、そこから減少に転じて、最終的にはゼロに近づくような山型の波形になりました。「流行終息曲線」と呼ぶことにしましょう。


 一般に、モノの増え方は直線的ではなくて、指数関数的(ねずみ算)です。でも、無限に増え続けるものでないことを考慮すると、モノの増え方はS字カーブになります。さらに、流行ったモノもやがて廃れるとすると、その波形は山型(流行終息曲線)になります。
 エクセルシートならびに関数式は以下のようにやりました。

  • セルB8 : = B7*(1+B$2)
  • セルC8 : = C7*(1+C$2*(1ーC7/C$3))
  • セルD8 : = D7+E8ーF8
      セルE8 : = D7*D$2*G7/D$3
      セルF21  : = E7
      セルG8 : = G7ーE8


《関連記事》
◇ S字カーブを描いてみよう(→ https://omori55.blogspot.com/2019/03/blog-post_734.html )
◇ 人のうわさも75日    (→ https://omori55.blogspot.com/2019/03/75.html )