図1は、本実施例の感染通知システムの一例を示す説明図である。図1に示す感染通知システム1は、複数の利用者の移動端末2と、移動端末2の行動履歴を管理する行動履歴サーバ3と、利用者の感染情報を管理するサーバ4とを有する。移動端末2は、図示せぬ無線基地局を通じて行動履歴サーバ3及びサーバ4と通信接続する。サーバ4は、図示せぬインターネットや専用線網等の通信網経由で行動履歴サーバ3と通信接続する。
図2は、移動端末2内部の一例を示すブロック図である。図2に示す移動端末2は、無線部11と、操作部12と、表示部13と、記憶部14と、制御部15とを有する。無線部11は、無線基地局経由で通信相手との無線通信を実行する。操作部12は、操作内容に対応した各種コマンドを入力する。表示部13は、各種情報を表示する。記憶部14は、各種情報を記憶する。制御部15は、移動端末2全体を制御する。制御部15は、GPS(Global Positioning System)機能を使用してGPS情報を取得する位置取得部15Aを有する。GPS情報は、移動端末2、すなわち移動端末2の利用者を識別する識別子であるユーザIDと、移動端末2の現在位置の位置情報である滞在エリアと、現在位置の日時情報である滞在日時とを有する。位置取得部15Aは、GPS情報を取得すると、取得されたGPS情報を行動履歴サーバ3に送信する。行動履歴サーバ3は、各移動端末2から受信したGPS情報を行動履歴データベース(以下、単にDBと称する)3Aに記憶する。尚、行動履歴DB3Aでは、例えば、利用者の1秒毎の行動履歴を記憶するものである。更に、行動履歴サーバ3は、行動履歴DB3Aに記憶済みの行動履歴をサーバ4に送信する。
図3は、サーバ4内部の一例を示すブロック図である。図3に示すサーバ4は、通信部21と、操作部22と、表示部23と、記憶部24と、制御部25とを有する。通信部21は、移動端末2の無線基地局及び行動履歴サーバ3と通信接続する。操作部22は、操作内容に対応した各種コマンドを入力する。表示部23は、各種情報を表示する。記憶部24は、ユーザテーブル31と、エリアテーブル32と、ウイルステーブル33と、行動履歴テーブル34と、ユーザ感染テーブル35と、システムテーブル36とを有する。更に、記憶部24は、除菌エリアテーブル37と、リスク集計テーブル38と、警告対象リスト39と、感染者行動テーブル40とを有する。図4は、ユーザテーブル31のテーブル内容の一例を示す説明図である。図4に示すユーザテーブル31は、ユーザID31Aと、メールアドレス31Bと、属性31Cとを有する。ユーザID31Aは、移動端末2、すなわち移動端末2の利用者を識別するIDである。メールアドレス31Bは、利用者の通知先のメールのアドレスである。属性31Cは、利用者の属性、例えば、高齢者、20代、新生児等の属性情報である。制御部25は、図4に示すユーザテーブル31を参照して、例えば、ユーザID31Aの“USR0001”、メールアドレス31Bの“usr01@dodomo.ne.jp”及び属性31C“高齢者”を認識できる。
図5は、エリアテーブル32のテーブル内容の一例を示す説明図である。図5に示すエリアテーブル32は、エリアID32Aと、位置情報起点32Bと、位置情報終点32Cと、エリア名32Dと、ウイルス生存率32Eとを有する。エリアID32Aは、滞在エリアを識別するIDである。位置情報起点32Bは、滞在エリアの位置情報の開始点座標である。位置情報終点32Cは、滞在エリアに関わる位置情報の終点座標である。エリア名32Dは、滞在エリアを識別する名称である。ウイルス生存率32Eは、滞在エリア内のウイルスの生存率である。尚、ウイルス生存率は、環境の温度や湿度の変化で変動するものである。制御部25は、図5に示すエリアテーブル32を参照して、例えば、エリアID32Aの“AREA00001”、エリア名32Dの“センタービル1階入口”、ウイルス生存率32Eの“20%”を認識できる。
図6は、ウイルステーブル33のテーブル内容の一例を示す説明図である。図6に示すウイルステーブル33は、ウイルスID33Aと、ウイルス名33Bと、第1感染ポイント33Cと、第2感染ポイント33Dと、第3感染ポイント33Eとを有する。更に、ウイルステーブル33は、最大生存時間33Fと、発症前感染可能時間33Gと、発症後感染可能時間33Hと、発症前潜伏時間33Iとを有する。ウイルスID33Aは、ウイルスを識別するIDである。ウイルス名33Bは、ウイルスを識別する名称である。
第1感染ポイント33Cは、後述する危険エリア範囲の“狭範囲”に滞在した利用者に付与する危険度を示すポイントである。第2感染ポイント33Dは、後述する危険エリア範囲の“中範囲”に滞在した利用者に付与する危険度を示すポイントである。第3感染ポイント33Eは、後述する危険エリア範囲の“広範囲”に滞在した利用者に付与する危険度を示すポイントである。最大生存時間33Fは、当該滞在エリアでウイルスが生存可能な最大時間である。発症前感染可能時間33Gは、発症前に感染可能な期間である。発症後感染可能時間33Hは、発症後に感染可能な期間である。発症前潜伏時間33Iは、発症までの潜伏期間である。制御部25は、図6に示すウイルステーブル33を参照して、例えば、ウイルスID33Aの“VRS001”、ウイルス名33Bの“香港型インフルエンザ”、第1感染ポイント33Cの“300”及び第2感染ポイント33Dの“100”を認識できる。更に、制御部25は、第3感染ポイント33Eの“50”、最大生存時間33Fの“24”、発症前感染可能時間33Gの“24”、発症後感染可能時間33Hの“48”、発症前潜伏時間33Iの“48”を認識できる。
図7は、行動履歴を検索する範囲の一例を示す説明図である。図7に示す行動履歴の検索範囲は、発症日を起点にした発症前感染可能時間と発症後感染可能時間との間を行動履歴の検索範囲とする。例えば、発症前感染可能時間を24時間、発症後感染可能時間を48時間とする。制御部25は、発症日時を基点にした発症日前の発症前感染可能時間(24時間)から発症日時後の発症後感染可能時間(48時間)の内、現在日時までの期間を行動履歴の検索範囲とする。尚、現在日時が発症後感染可能時間を超えている場合は、発症前感染可能時間から発症後感染可能時間までを行動履歴の検索範囲とする。
図8は、行動履歴テーブル34のテーブル内容の一例を示す説明図である。図8に示す行動履歴テーブル34は、ユーザID34Aと、滞在日時34Bと、滞在エリア34Cとを有する。ユーザID34Aは、移動端末2、すなわち移動端末2の利用者を識別するIDである。滞在日時34Bは、利用者が滞在エリアに滞在した日時である。滞在エリア34Cは、移動端末2、すなわち利用者が滞在した位置情報(GPSの位置座標)である。制御部25は、図8に示す行動履歴テーブル34を参照して、例えば、ユーザID34Aの“USR0001”、滞在日時34Bの“2010/2/2 17:59:59”及び滞在エリア34Cを認識できる。尚、制御部25は、行動履歴テーブル34のメモリ資源を有効に活用するために、行動履歴の登録から所定の期間が経過すると、行動履歴テーブル34のテーブル内容を自動的に消去するようにしても良い。
図9は、ユーザ感染テーブル35のテーブル内容の一例を示す説明図である。図9に示すユーザ感染テーブル35は、ユーザID35Aと、感染ウイルスID35Bと、発症日時35Cとを有する。ユーザID35Aは、感染が発症した利用者のIDである。感染ウイルスID35Bは、感染が発症したウイルスを識別するIDである。発症日時35Cは、感染ウイルスの発症日時である。制御部25は、図9に示すユーザ感染テーブル35を参照して、例えば、ユーザID35Aの“USR0003”、感染ウイルスID35Bの“VRS003”、発症日時35Cの“2010/2/17 03:00:00”を認識できる。尚、制御部25は、感染者が完治した時点で、当該感染者のレコードをユーザ感染テーブル35から消去しても良い。
図10は、システムテーブル36のテーブル内容の一例を示す説明図である。図10に示すシステムテーブル36は、システム値分類36Aと、システムコード名36Bと、システム値36Cとを有する。尚、システムテーブル36は、条件閾値や条件ポイント等を設定して管理するものである。制御部25は、図10に示すシステムテーブル36を参照して、危険エリア範囲の“広範囲”は半径3m、“中範囲”は半径2m、“狭範囲”は半径1m、行動履歴テーブル34の行動履歴を記憶保持した期間として7日間と認識できる。また、制御部25は、危険ポイント閾値の“レベルAAA”は10000ポイント、危険ポイント閾値の“レベルAA”は5000ポイント、危険ポイント閾値の“レベルA”は3000ポイントと認識できる。制御部25は、危険ポイント閾値の“レベルB”は2000ポイント、危険ポイント閾値の“レベルC”は1000ポイントと認識できる。
図11は、除菌エリアテーブル37のテーブル内容の一例を示す説明図である。図11に示す除菌エリアテーブル37は、除菌ウイルスID37Aと、実施日時37Bと、対象エリア37Cと、対象エリアID37Dとを有する。除菌ウイルスID37Aは、除菌したウイルスのIDである。実施日時37Bは、ウイルス除菌を実施した除菌日時である。対象エリア37Cは、除菌を実施したエリアの位置座標である。対象エリアID37Dは、除菌を実施したエリアを識別するIDである。制御部25は、図11に示す除菌エリアテーブル37を参照して、例えば、除菌ウイルスID37Aの“VRS001”、実施日時37Bの“2010/2/2 17:59:59”、対象エリア37C及びエリアID37を認識できる。
図12は、リスク集計テーブル38のテーブル内容の一例を示す説明図である。図12に示すリスク集計テーブル38は、ユーザID38Aと、滞在日時38Bと、滞在エリア38Cと、感染ウイルスID38Dと、危険ポイント38Eとを有する。ユーザID38Aは、危険エリア範囲内に滞在した移動端末2、すなわち移動端末2の利用者を識別するIDである。滞在日時38Bは、危険エリア範囲内の滞在エリアに滞在した移動端末2の利用者の滞在日時である。滞在エリア38Cは、利用者が滞在した危険エリア範囲内の滞在エリアの位置座標である。感染ウイルスID38Dは、危険エリア範囲内での感染ウイルスを識別するIDである。危険ポイントは、危険エリア範囲内の利用者の滞在位置に応じて感染の危険性を示す評価点である。制御部25は、図12に示すリスク集計テーブル38を参照して、例えば、ユーザID38Aの“USR0001”、滞在日時38Bの“2010/2/2 17:59:59”、滞在エリア38Cを認識できる。更に、制御部25は、感染ウイルスID38Dの“VSR001”、危険ポイント38Eの“300”を認識できる。
図13は、警告対象リスト39のリスト内容の一例を示す説明図である。図13に示す警告対象リスト39は、ユーザID39Aと、集計ポイント39Bとを有する。ユーザIDは、感染者と近接した接触者、すなわち感染濃厚者を識別するIDである。集計ポイント39Bは、感染濃厚者の危険ポイントを集計したポイントである。制御部25は、図13の警告対象リスト39を参照して、例えば、ユーザID39Aの“USR0001”及び集計ポイント39Bの“1500”を認識できる。
制御部25は、収集部41と、特定部42と、通知部43とを有する。収集部41は、行動履歴サーバ3の行動履歴DB3Aに登録済みの各移動端末2の行動履歴を収集し、収集された行動履歴を行動履歴テーブル34に登録する。特定部42は、検索部42Aと、感染者特定部42Bと、危険エリア算出部42Cと、接触者特定部42Dと、第1ポイント算出部42Eと、調整部42Fと、第2ポイント算出部42Gとを有する。検索部42Aは、感染者のユーザID、ウイルスID及び発症日時を検出すると、ウイルスID33Aに対応した発症前感染可能時間33G及び発症後感染可能時間33Hをウイルステーブル33から取得する。更に、検索部42Aは、感染者の発症日時を基点にして発症前感染可能時間及び発症後感染可能時間で検索範囲である指定期間を算出する。更に、検索部42Aは、指定期間内における感染者の行動履歴を行動履歴テーブル34から検索する。
感染者特定部42Bは、検索部42Aの検索結果に基づき、感染者の行動履歴を特定する。危険エリア算出部42Cは、感染者の行動履歴の滞在エリアと、システムテーブル36内の危険エリア範囲とに基づき、危険エリア範囲のエリア情報を算出する。尚、危険エリア範囲は、例えば、“広範囲”→“中範囲”→“狭範囲”の順に感染危険のレベルが高くなる。図14は、危険エリア範囲の一例を示す説明図である。危険エリア算出部42Cは、図14に示すように、感染者の滞在エリアを中心Pに球体状の危険エリア範囲を作成する。感染者の滞在エリアを中心Pに半径1mの範囲を“狭範囲”、滞在エリアを中心Pに半径2mの範囲を“中範囲”、滞在エリアを中心Pに半径3mの範囲を“広範囲”とする。つまり、危険エリア算出部42Cは、指定期間内に行動した感染者の滞在エリアに基づき危険エリア範囲のエリア情報を算出する。更に、危険エリア算出部42Cは、感染者の危険エリア範囲のエリア情報を使用してエリアID32A及びウイルス生存率32Eをエリアテーブル32から検索する。
接触者特定部42Dは、指定期間内に感染者と同一日時に危険エリア範囲、かつ、同一エリアIDの滞在エリア内に滞在した移動端末2、すなわち移動端末2の感染濃厚者の行動履歴を行動履歴テーブル34から特定する。更に、第1ポイント算出部42Eは、感染濃厚者の行動履歴毎の危険エリア範囲に対応した感染ポイントをウイルステーブル33から取得し、感染濃厚者の行動履歴毎に感染ポイントを危険ポイント38Eとしてリスク集計テーブル38に登録する。
図15は、エリア内の危険エリア範囲の一例を示す説明図である。第1ポイント算出部42Eは、指定期間内に同一日時かつ同一エリアIDの危険エリア範囲内に滞在した移動端末2の利用者、すなわち感染濃厚者を特定し、その感染濃厚者の感染危険性を示す感染ポイントを算出する。図15に示す滞在エリア(会議室1)内の利用者Bは、危険エリア範囲の“狭範囲”に滞在したので、“狭範囲”に対応した第1感染ポイントのため、その危険ポイントは“300”となる。利用者Cは、危険エリア範囲の“中範囲”に滞在したので、“中範囲”に対応した第2感染ポイントのため、その危険ポイントは“100”となる。利用者Eは、危険エリア範囲の“広範囲”に滞在したので、“広範囲”に対応した第3感染ポイントのため、その危険ポイントは“50”となる。利用者D及びFは、危険エリア範囲の“広範囲”に滞在したものの、感染者が滞在した滞在エリアのエリアIDが異なる、すなわち会議室1の外であるため、感染濃厚者から除外されることになる。つまり、エリアIDが異なるということは、例えば、部屋等の空間が異なるため、その感染者による感染の危険性は低いと判断されるものである。利用者Gは、感染者と同一エリア内でも、危険エリア範囲の外であるため感染濃厚者から除外されることになる。
また、ウイルスは、部屋等の滞在エリアに滞在した感染者が退出した場合でも、部屋内に一定期間残留するため、その一定期間内に同部屋に滞在した利用者が、感染者による残留ウイルスで感染するおそれも十分考えられる。そこで、接触者特定部42Dは、感染者が滞在エリアの部屋から立ち去ってウイルス残留の残留期間内に同一エリアIDの危険エリア範囲内に滞在した利用者、すなわち感染濃厚者の行動履歴を行動履歴テーブル34から特定する。また、調整部42Fは、感染者のウイルスID33Aに対応した最大生存時間33Fをウイルステーブル33から取得する。更に、調整部42Fは、感染者の滞在エリアのエリアID32Aに対応した空間のウイルス生存率32Eをエリアテーブル32から取得する。調整部42Fは、ウイルスの最大生存時間及び滞在エリア内のウイルス生存率に基づき、当該滞在エリア内のウイルスの最大生存時間を算出する。更に、調整部42Fは、当該滞在エリアの最大生存時間に基づき、残留期間の経過時間及び危険エリア範囲に対応した第1感染ポイント、第2感染ポイント及び第3感染ポイントを算出する。図16は、第2ポイント算出部42Gの動作の一例及び滞在エリア内の危険エリア範囲の一例を示す説明図である。図16に示すウイルステーブル33では、対象ウイルスのウイルスID33Aが“VRS001”、第1感染ポイント33Cが“300”、第2感染ポイント33Dが“100”、第3感染ポイント33Eが“50”、最大生存時間33Fが“24”時間である。更に、エリアテーブル32では、エリアID32Aが“AREA00006”で、そのウイルス生存率32Eが40%である。従って、調整部42Fは、最大生存時間24時間×ウイルス生存率40%に基づき、当該滞在エリアのウイルスの最大生存時間が9.6時間となる。
更に、調整部42Fは、最大生存時間9.6時間を1/4に分割し、0時間≦X<2.4時間後の第1時間帯、2.4時間≦X<4.8時間後の第2時間帯、4.8時間≦X<7.2時間後の第3時間帯、7.2時間≦X<9.6時間後の第4時間帯とする。更に、調整部42Fは、第1時間帯に対応するウイルス生存率を100%、第1感染ポイントを300、第2感染ポイントを100、第3感染ポイントを50とする。また、調整部42Fは、第2時間帯に対応するウイルス生存率を75%、第1感染ポイントを300×75%、第2感染ポイントを100×75%、第3感染ポイントを50×75%とする。また、調整部42Fは、第3時間帯に対応するウイルス生存率を50%、第1感染ポイントを300×50%、第2感染ポイントを100×50%、第3感染ポイントを50×50%とする。更に、調整部42Fは、第4時間帯に対応するウイルス生存率を25%、第1感染ポイントを300×25%、第2感染ポイントを100×25%、第3感染ポイントを50×25%とする。つまり、第1時間帯→第2時間帯→第3時間帯→第4時間帯へと経過するに連れて、部屋内の残留ウイルスも減少して感染の危険性も低くなるため、感染ポイントも低下する。
第2ポイント算出部42Gは、感染者のエリア退出後の時間帯毎に算出された感染ポイントに基づき、危険エリア範囲及び時間帯に対応した感染ポイントを取得し、取得された利用者の感染ポイントを危険ポイントとしてリスク集計テーブル38に登録する。図16は、第2時間帯及び第3時間帯の事例である。第2時間帯の例で、利用者Iは、危険エリア範囲の“狭範囲”に滞在したので、その危険ポイントは第1感染ポイント300×75%=225となる。利用者Hは、危険エリア範囲の“中範囲”に滞在したので、その危険ポイントは第2感染ポイント100×75%=75となる。利用者Jは、危険エリア範囲の“広範囲”に滞在したので、その危険ポイントは第3感染ポイント50×75%=37.5となる。利用者K及びLは、同一エリアIDの滞在エリア内に滞在するものの、危険エリア範囲の外であるため、感染濃厚者から除外される。更に、利用者Mは、危険エリア範囲の“広範囲”内に滞在したものの、エリアIDが異なるため、感染濃厚者から除外される。
また、第3時間帯の例で、利用者Hは、危険エリア範囲の“狭範囲”に滞在したので、その危険ポイントは第1感染ポイント300×50%=150となる。利用者Iは、危険エリア範囲の“中範囲”に滞在したので、その危険ポイントは第2感染ポイント100×50%=50となる。利用者Jは、危険エリア範囲の“広範囲”に滞在したので、その危険ポイントは第3感染ポイント50×50%=25となる。利用者Kは、危険エリア範囲の外であるため、感染濃厚者から除外される。更に、利用者Mは、危険エリア範囲の外、かつエリアIDが異なるため、感染濃厚者から除外される。
通知部43は、集計部43Aと、判定部43Bとを有する。集計部43Aは、リスク集計テーブル38に登録済みの危険ポイントを感染濃厚者のユーザID単位で集計し、ユーザIDに対応付けて集計された危険ポイントを警告対象リスト39に登録する。判定部43Bは、警告対象リスト39に登録済みの危険ポイントがシステムテーブル36に登録済みの危険ポイント閾値を超えたか否かを判定する。通知部43は、感染濃厚者の危険ポイントが危険ポイント閾値を超えた場合、その感染濃厚者の移動端末2のメールアドレスに警告情報を通知する。その結果、移動端末2のユーザは、警告情報に基づき自分が感染危険性の高い感染濃厚者であると認識できる。
次に、本実施例の感染通知システム1の動作について説明する。移動端末2の位置取得部15Aは、自己のGPS情報を取得すると、GPS情報を行動履歴サーバ3に送信する。行動履歴サーバ3は、各移動端末2のGPS情報を受信すると、受信されたGPS情報を移動端末2に関わる利用者の行動履歴として行動履歴DB3Aに記憶する。更に、サーバ4の制御部25内の収集部41は、通信部21経由で行動履歴サーバ3と通信して行動履歴DB3Aに記憶された各移動端末2の行動履歴を受信し、これら受信された行動履歴を行動履歴テーブル34に記憶する。
図17は、感染登録処理に関わるサーバ4側の制御部25の処理動作の一例を示すフローチャートである。図17に示す感染登録処理とは、感染者の登録要求に応じて感染者の情報をユーザ感染テーブル35に登録する処理である。図17において制御部25は、通信部21を通じて移動端末2から感染者の登録要求を検出したか否かを判定する(ステップS11)。制御部25は、感染者の登録要求を検出した場合(ステップS11肯定)、感染者のユーザID35A、ウイルス名に対応した感染ウイルスID35B及び発症日時35Cをユーザ感染テーブル35内に登録し(ステップS12)、図17に示す処理動作を終了する。また、制御部25は、感染者の登録要求を検出しなかった場合(ステップS11否定)、図17に示す処理動作を終了する。図17に示す感染登録処理では、移動端末2の登録要求に応じて自分の感染をユーザ感染テーブル35に登録する。その結果、制御部25は、ユーザ感染テーブル35を参照して、感染者を認識できる。
図18は、行動履歴抽出処理に関わるサーバ4側の制御部25の処理動作を示すフローチャートである。図19は、行動履歴抽出処理に関わるデータ取得イメージの一例を示す説明図である。図18に示す行動履歴抽出処理では、行動履歴テーブル34から感染者の行動履歴を抽出する処理である。図18において制御部25の特定部42内の検索部42Aは、ユーザ感染テーブル35から感染者のユーザID、ウイルスID及び発症日時を取得する(ステップS21)。検索部42Aは、取得されたウイルスIDに応じて当該ウイルスの発症前感染可能時間及び発症後感染可能時間をウイルステーブル33から取得する(ステップS22)。検索部42Aは、図19に示すように、行動履歴テーブル34内の行動履歴レコードを指定する(ステップS23)。検索部42Aは、指定された行動履歴レコードのユーザIDが感染者のユーザIDと一致するか否かを判定する(ステップS24)。検索部42Aは、感染者のユーザIDと一致する場合(ステップS24肯定)、当該行動履歴レコード内の滞在日時が(発症日時−発症前感染可能時間)〜(発症日時+発症後感染可能時間)の指定期間内であるか否かを判定する(ステップS25)。
感染者特定部42Bは、滞在日時が指定期間内である場合(ステップS25肯定)、図19に示すように、行動履歴レコードを感染者の行動履歴としてユーザID、滞在日時及び滞在エリアを感染者行動テーブル40に登録する(ステップS26)。そして、検索部42Aは、行動履歴テーブル34内に未処理の行動履歴レコードがあるか否かを判定する(ステップS27)。検索部42Aは、未処理の行動履歴レコードがない場合(ステップS27否定)、図18に示す処理動作を終了する。
また、検索部42Aは、行動履歴レコードのユーザIDが感染者のユーザIDと一致しない場合(ステップS24否定)、行動履歴テーブル34内から未処理の行動履歴レコードを指定し(ステップS28)、ステップS24に移行する。また、検索部42Aは、行動履歴レコード内の滞在日時が指定期間内でない場合(ステップS25否定)、行動履歴テーブル34から未処理の行動履歴レコードを指定すべく、ステップS28に移行する。また、検索部42Aは、未処理の行動履歴レコードがある場合(ステップS27肯定)、行動履歴テーブル34から未処理の行動履歴レコードを指定し(ステップS29)、ステップS24に移行する。
図18に示す行動履歴抽出処理では、行動履歴テーブル34から指定期間内の感染者の行動履歴を抽出し、感染者行動テーブル40に感染者の行動履歴を登録できる。その結果、制御部25は、感染者行動テーブル40を参照して感染者の行動履歴を認識できる。
図20は、感染濃厚者抽出処理に関わるサーバ4側の制御部25の処理動作の一例を示すフローチャートである。感染濃厚者抽出処理では、感染者と同一日時かつ同一エリアIDの危険エリア範囲内に滞在した感染濃厚者、及び、感染者退出後の残留期間内に同一エリアIDの危険エリア範囲内に滞在した感染濃厚者の行動履歴を行動履歴テーブル34から抽出する処理である。図20に示す制御部25内の特定部42は、感染者と同一日時に同一エリアIDの危険エリア範囲内に滞在した感染濃厚者の行動履歴を抽出する第1抽出処理を実行する(ステップS31)。特定部42は、第1抽出処理を実行した後、感染者退出後の残留期間内に同一エリアIDの危険エリア範囲内に滞在した感染濃厚者の行動履歴を抽出する第2抽出処理を実行し(ステップS32)、図20に示す処理動作を終了する。
図21及び図22は、第1抽出処理に関わるサーバ4側の制御部25の処理動作の一例を示すフローチャートである。図21に示す第1抽出処理では、感染者と同一日時に同一エリアID内の危険エリア範囲内に滞在した感染濃厚者の行動履歴を抽出する処理である。図21において制御部25内の危険エリア算出部42Cは、感染者行動テーブル40から感染者の行動履歴レコード内の滞在エリア及び滞在日時を取得する(ステップS41)。危険エリア算出部42Cは、感染者の滞在エリア毎に、図19に示すように、滞在エリアに対応するエリアID32A、位置情報起点32B及び位置情報終点32Cをエリアテーブル32から取得する(ステップS42)。危険エリア算出部42Cは、滞在エリアの位置情報起点32B及び位置情報終点32Cと、システムテーブル36内に登録済みの危険エリア範囲のシステム値とに基づき、滞在エリアを中心とした同心円の危険エリア範囲のエリア情報を算出する(ステップS43)。つまり、危険エリア算出部42Cは、滞在エリアを中心としたとして同心円の危険エリア範囲の“狭範囲”、“中範囲”及び“広範囲”のエリア情報を算出し、各範囲に対応したエリア情報を図示せぬ危険エリア範囲テーブル内に登録する。尚、“広範囲”は、図14及び図15に示すように、感染者の滞在エリアを中心とした半径3m以内、“中範囲”は、感染者の滞在エリアを中心とした半径2m以内、“狭範囲”は、感染者の滞在エリアを中心とした半径1m以内である。
接触者特定部42Dは、行動履歴テーブル34から感染者と同一日時に危険エリア範囲で滞在した感染濃厚者の行動履歴を抽出すべく、行動履歴テーブル34から利用者の行動履歴レコードを指定する(ステップS44)。接触者特定部42Dは、指定された行動履歴レコード内の滞在日時が感染者の滞在日時と同一であるか否かを判定する(ステップS45)。接触者特定部42Dは、行動履歴レコード内の滞在日時が感染者の滞在日時と同一の場合(ステップS45肯定)、当該行動履歴レコード内の滞在エリアが危険エリア範囲の“狭範囲”内であるか否かを判定する(ステップS46)。第1ポイント算出部42Eは、滞在エリアが“狭範囲”内である場合(ステップS46肯定)、感染者の感染ウイルスのウイルスIDに対応した第1感染ポイントをウイルステーブル33から取得し(ステップS47)、図22のM1に移行する。
また、接触者特定部42Dは、行動履歴レコード内の滞在エリアが“狭範囲”内でない場合(ステップS46否定)、滞在エリアが危険エリア範囲の“中範囲”内であるか否かを判定する(ステップS48)。接触者特定部42Dは、滞在エリアが“中範囲”内である場合(ステップS48肯定)、感染者のウイルスIDに対応した第2感染ポイントをウイルステーブル33から取得し(ステップS49)、図22のM1に移行する。また、接触者特定部42Dは、滞在エリアが“中範囲”内でない場合(ステップS48否定)、滞在エリアが危険エリア範囲の“広範囲”内であるか否かを判定する(ステップS50)。また、接触者特定部42Dは、滞在エリアが“広範囲”内である場合(ステップS50肯定)、感染者のウイルスIDに対応した第3感染ポイントをウイルステーブル33から取得し(ステップS51)、図22のM1に移行する。
また、接触者特定部42Dは、行動履歴レコード内の滞在日時が感染者の滞在日時と同一でない場合(ステップS45否定)、未処理の次の行動履歴レコードを指定すべく、図22のM2Aに移行する。また、接触者特定部42Dは、行動履歴レコード内の滞在エリアが“広範囲”内でない場合(ステップS50否定)、この行動履歴が対象外と判断し、未処理の次の行動履歴レコードを指定すべく、図22のM2Aに移行する。
図22のM1において接触者特定部42Dは、ステップS47、ステップS49又はステップS51にて危険ポイントを取得すると、行動履歴レコード内の滞在エリアに対応する利用者のエリアIDをエリアテーブル32から取得する(ステップS61)。そして、接触者特定部42Dは、行動履歴レコード内の利用者のエリアIDとステップS42で取得された感染者のエリアIDとが同一であるか否かを判定する(ステップS62)。接触者特定部42Dは、行動履歴レコード内の利用者のエリアIDと感染者のエリアIDとが同一の場合(ステップS62肯定)、その利用者を感染濃厚者と認識する。そして、接触者特定部42Dは、感染濃厚者である利用者のユーザID、滞在日時、滞在エリア、危険ポイント及びウイルスIDをリスク集計テーブル38に登録する(ステップS63)。更に、接触者特定部42Dは、行動履歴テーブル34内の未処理の次の行動履歴レコードがあるか否かを判定する(ステップS64)。接触者特定部42Dは、行動履歴テーブル34内の未処理の次の行動履歴レコードがある場合(ステップS64肯定)、次の行動履歴レコードを指定し(ステップS66)、図21のM2に移行する。尚、ステップS64では、未処理の行動履歴レコードがあるか否かを判定するようにしたが、行動履歴レコードの指定を滞在日時の古い順に指定した場合、接触者特定部42Dは、滞在日時が感染者の発症後感染可能時間以降であるか否かを判定し、滞在時刻が感染者の発症後感染可能時間以降の場合は、ステップS65に移行しても良い。
接触者特定部42Dは、行動履歴テーブル34内の未処理の行動履歴レコードがない場合(ステップS64否定)、感染者行動テーブル40内に未処理の感染者の行動履歴レコードがあるか否かを判定する(ステップS65)。接触者特定部42Dは、未処理の感染者レコードがある場合(ステップS65肯定)、感染者行動テーブル40内の未処理の次の感染者の行動履歴レコードを指定する(ステップS67)。そして、接触者特定部42Dは、感染者の行動履歴レコードから滞在日時及び滞在エリアを取得すべく、図21のM3に移行する。また、接触者特定部42Dは、未処理の感染者の行動履歴レコードがない場合(ステップS65否定)、図22の処理動作を終了する。
第1抽出処理では、感染者と同一日時に同一エリアIDの危険エリア範囲内に滞在した感染濃厚者の行動履歴を行動履歴テーブル34から抽出する。その結果、感染者と同一日時に同一エリアIDの危険エリア範囲に滞在した利用者である感染濃厚者の行動履歴を取得できる。
更に、第1抽出処理では、感染濃厚者が滞在した危険エリア範囲の“狭範囲”、“中範囲”又は“広範囲”に応じて異なる感染ポイントを危険ポイントとしてリスク集計テーブル38に登録できる。
図23及び図24は、第2抽出処理に関わるサーバ4側の制御部25の処理動作の一例を示すフローチャートである。図23に示す第2抽出処理は、感染者退出後、残留期間内に同一エリアIDの危険エリア範囲内に立ち入った感染濃厚者の行動履歴を抽出する処理である。図23において制御部25の調整部42Fは、感染者の感染ウイルスを識別するウイルスIDに対応した第1感染ポイント、第2感染ポイント、第3感染ポイント及び最大生存時間をウイルステーブル33から取得する(ステップS71)。感染者特定部42Bは、感染者行動テーブル40から感染者の行動履歴レコード内の滞在エリア及び滞在日時を取得する(ステップS72)。調整部42Fは、感染者の滞在エリア毎に、滞在エリアに対応するエリアID32A、位置情報起点32B、位置情報終点32C及びウイルス生存率32Eをエリアテーブル32から取得する(ステップS73)。調整部42Fは、図16に示すように、感染者の感染ウイルスのウイルスIDに対応した最大生存時間と、滞在エリアのエリアIDに対応するウイルス生存率とに基づき、最大生存時間×ウイルス生存率で滞在エリアの最大生存時間を算出する(ステップS74)。更に、調整部42Fは、最大生存時間(残留期間)を1/4に分けて4個の時間帯に分割し、時間帯毎に第1感染ポイント、第2感染ポイント及び第3感染ポイントを算出する(ステップS75)。
危険エリア算出部42Cは、滞在エリアの位置情報起点及び位置情報終点と、システムテーブル36内に登録済みの危険エリア範囲のシステム値とに基づき、滞在エリア中心の危険エリア範囲のエリア情報を算出し(ステップS76)、図24のM4に移行する。
図24に示すM4において接触者特定部42Dは、行動履歴テーブル34から行動履歴レコードを指定する(ステップS81)。接触者特定部42Dは、行動履歴レコード内の滞在日時が残留期間内であるか否かを判定する(ステップS82)。接触者特定部42Dは、行動履歴レコード内の滞在日時が残留期間内である場合(ステップS82肯定)、当該行動履歴レコード内の滞在エリアが危険エリア範囲の“狭範囲”内であるか否かを判定する(ステップS83)。接触者特定部42Dは、滞在エリアが“狭範囲”内である場合(ステップS83肯定)、残留期間内の該当時間帯に対応した第1感染ポイントを取得する第1感染ポイント設定処理を実行する(ステップS84)。
また、接触者特定部42Dは、行動履歴レコード内の滞在エリアが“狭範囲”内でない場合(ステップS83否定)、滞在エリアが危険エリア範囲の“中範囲”内であるか否かを判定する(ステップS85)。接触者特定部42Dは、滞在エリアが“中範囲”内である場合(ステップS85肯定)、残留期間内の該当時間帯に対応した第2感染ポイントを取得する第2感染ポイント設定処理を実行する(ステップS86)。
また、接触者特定部42Dは、滞在エリアが“中範囲”内でない場合(ステップS85否定)、滞在エリアが危険エリア範囲の“広範囲”内であるか否かを判定する(ステップS87)。また、接触者特定部42Dは、滞在エリアが“広範囲”内である場合(ステップS87肯定)、残留期間内の該当時間帯に対応した第3感染ポイントを取得する第3感染ポイント設定処理を実行する(ステップS88)。
接触者特定部42Dは、ステップS84、ステップS86又はステップS88にて感染ポイントを取得すると、行動履歴レコード内の滞在エリアに対応する利用者のエリアIDをエリアテーブル32から取得する(ステップS89)。そして、接触者特定部42Dは、行動履歴レコードの利用者のエリアIDとステップS73で取得された感染者のエリアIDとが同一であるか否かを判定する(ステップS90)。接触者特定部42Dは、行動履歴の利用者のエリアIDと感染者のエリアIDとが同一の場合(ステップS90肯定)、その利用者を感染濃厚者と認識する。そして、接触者特定部42Dは、感染濃厚者のユーザID、滞在日時及び滞在エリアを含む同一レコードがリスク集計テーブル38内に存在するか否かを判定する(ステップS91)。接触者特定部42Dは、同一レコードがリスク集計テーブル38内にない場合(ステップS91否定)、利用者のユーザID、滞在日時、滞在エリア、感染ポイント及びウイルスIDのレコードをリスク集計テーブル38に登録する(ステップS92)。
更に、接触者特定部42Dは、行動履歴テーブル34内の未処理の行動履歴レコードがあるか否かを判定する(ステップS93)。接触者特定部42Dは、行動履歴テーブル34内の未処理の次の行動履歴レコードがある場合(ステップS93肯定)、次の行動履歴レコードを指定し(ステップS94)、ステップS82に移行する。また、接触者特定部42Dは、行動履歴テーブル34内の未処理の次の行動履歴レコードがない場合(ステップS93否定)、感染者行動テーブル40内に未処理の感染者の行動履歴レコードがあるか否かを判定する(ステップS95)。尚、ステップS93では、未処理の行動履歴レコードがあるか否かを判定したが、行動履歴レコードの指定を滞在日時の古い順に指定した場合、接触者特定部42Dは、滞在日時が感染者の発症後感染可能時間以降であるか否かを判定し、滞在時刻が感染者の発症後感染可能時間以降の場合は、ステップS95に移行しても良い。
接触者特定部42Dは、未処理の感染者の行動履歴レコードがある場合(ステップS95肯定)、感染者行動テーブル40の未処理の感染者の行動履歴レコードを指定する(ステップS96)。そして、接触者特定部42Dは、感染者の行動履歴から滞在日時及び滞在エリアを取得すべく、図23のM5に移行する。また、接触者特定部42Dは、未処理の感染者の行動履歴レコードがない場合(ステップS95否定)、図24の処理動作を終了する。また、接触者特定部42Dは、同一レコードがリスク集計テーブル38内にある場合(ステップS91肯定)、未処理の次の行動履歴レコードがあるか否かを判定すべく、ステップS93に移行する。また。接触者特定部42Dは、エリアIDが同一でない場合(ステップS90否定)、未処理の次の行動履歴レコードがあるか否かを判定すべく、ステップS93に移行する。また、接触者特定部42Dは、行動履歴レコード内の滞在日時が残留期間内でない場合(ステップS82否定)、又は、行動履歴レコード内の滞在エリアが“広範囲”でない場合(ステップS87否定)、ステップS93に移行する。
第2抽出処理では、感染者退出後、残留期間内に同一エリアIDの危険エリア範囲内に滞在した感染濃厚者の行動履歴を行動履歴テーブル34から抽出する。その結果、残留期間内に同一エリアIDの危険エリア範囲内に滞在した感染の危険性のある感染濃厚者の行動履歴を取得できる。
更に、第2抽出処理では、感染濃厚者が滞在した危険エリア範囲の“狭範囲”、“中範囲”又は“広範囲”に応じて異なる感染ポイントを危険ポイントとしてリスク集計テーブル38に登録できる。
図25は、第1感染ポイント設定処理に関わるサーバ4側の制御部25の処理動作の一例を示すフローチャートである。図25に示す第1感染ポイント設定処理では、滞在エリア内の残留期間の経過時間帯に応じて第1感染ポイントを危険ポイントとして設定する処理である。図25において第2ポイント算出部42Gは、利用者の滞在日時が第1時間帯であるか否かを判定する(ステップS101)。第2ポイント算出部42Gは、利用者の滞在日時が第1時間帯である場合(ステップS101肯定)、第1時間帯の第1感染ポイント(×100%)を設定し(ステップS102)、図25に示す処理動作を終了する。
第2ポイント算出部42Gは、当該利用者の滞在日時が第1時間帯でない場合(ステップS101否定)、利用者の滞在日時が第2時間帯であるか否かを判定する(ステップS103)。第2ポイント算出部42Gは、利用者の滞在日時が第2時間帯である場合(ステップS103肯定)、第2時間帯の第1感染ポイント(×75%)を設定し(ステップS104)、図25に示す処理動作を終了する。
第2ポイント算出部42Gは、当該利用者の滞在日時が第2時間帯でない場合(ステップS103否定)、利用者の滞在日時が第3時間帯であるか否かを判定する(ステップS105)。第2ポイント算出部42Gは、利用者の滞在日時が第3時間帯である場合(ステップS105肯定)、第3時間帯の第1感染ポイント(×50%)を設定し(ステップS106)、図25に示す処理動作を終了する。
また、第2ポイント算出部42Gは、利用者の滞在日時が第3時間帯でない場合(ステップS105否定)、第4時間帯の第1感染ポイント(×25%)を設定し(ステップS107)、図25に示す処理動作を終了する。
図25に示す第1感染ポイント設定処理では、残留期間の経過時間帯に応じて、危険エリア範囲の“狭範囲”に滞在した感染濃厚者に対して、そのウイルス生存率に対応した第1感染ポイントを設定できる。
図26は、第2感染ポイント設定処理に関わるサーバ4側の制御部25の処理動作の一例を示すフローチャートである。図26に示す第2感染ポイント設定処理では、滞在エリア内の残留期間の経過時間帯に応じて第2感染ポイントを設定する処理である。図26において第2ポイント算出部42Gは、当該利用者の滞在日時が第1時間帯であるか否かを判定する(ステップS111)。第2ポイント算出部42Gは、利用者の滞在日時が第1時間帯である場合(ステップS111肯定)、第1時間帯の第2感染ポイント(×100%)を設定し(ステップS112)、図26に示す処理動作を終了する。
第2ポイント算出部42Gは、当該利用者の滞在日時が第1時間帯でない場合(ステップS111否定)、利用者の滞在日時が第2時間帯であるか否かを判定する(ステップS113)。第2ポイント算出部42Gは、利用者の滞在日時が第2時間帯である場合(ステップS113肯定)、第2時間帯の第2感染ポイント(×75%)を設定し(ステップS114)、図26に示す処理動作を終了する。
第2ポイント算出部42Gは、当該利用者の滞在日時が第2時間帯でない場合(ステップS113否定)、利用者の滞在日時が第3時間帯であるか否かを判定する(ステップS115)。第2ポイント算出部42Gは、利用者の滞在日時が第3時間帯である場合(ステップS115肯定)、第3時間帯の第2感染ポイント(×50%)を設定し(ステップS116)、図26に示す処理動作を終了する。
また、第2ポイント算出部42Gは、利用者の滞在日時が第3時間帯でない場合(ステップS115否定)、第4時間帯の第2感染ポイント(×25%)を設定し(ステップS117)、図26に示す処理動作を終了する。
図26に示す第2感染ポイント設定処理では、残留期間の経過時間帯に応じて、危険エリア範囲の“中範囲”に滞在した感染濃厚者に対して、ウイルス生存率に対応した第2感染ポイントを設定できる。
図27は、第3感染ポイント設定処理に関わるサーバ4側の制御部25の処理動作の一例を示すフローチャートである。図27に示す第3感染ポイント設定処理では、滞在エリア内の残留期間内の経過時間帯に応じて第3感染ポイントを設定する処理である。図27において第2ポイント算出部42Gは、当該利用者の滞在日時が第1時間帯であるか否かを判定する(ステップS121)。第2ポイント算出部42Gは、利用者の滞在日時が第1時間帯である場合(ステップS121肯定)、第1時間帯の第3感染ポイント(×100%)を設定し(ステップS122)、図27に示す処理動作を終了する。
第2ポイント算出部42Gは、当該利用者の滞在日時が第1時間帯でない場合(ステップS121否定)、利用者の滞在日時が第2時間帯であるか否かを判定する(ステップS123)。第2ポイント算出部42Gは、利用者の滞在日時が第2時間帯である場合(ステップS123肯定)、第2時間帯の第3感染ポイント(×75%)を設定し(ステップS124)、図27に示す処理動作を終了する。
第2ポイント算出部42Gは、当該利用者の滞在日時が第2時間帯でない場合(ステップS123否定)、利用者の滞在日時が第3時間帯であるか否かを判定する(ステップS125)。第2ポイント算出部42Gは、利用者の滞在日時が第3時間帯である場合(ステップS125肯定)、第3時間帯の第3感染ポイント(×50%)を設定し(ステップS126)、図27に示す処理動作を終了する。
また、第2ポイント算出部42Gは、利用者の滞在日時が第3時間帯でない場合(ステップS125否定)、第4時間帯の第3感染ポイント(×25%)を設定し(ステップS127)、図27に示す処理動作を終了する。
図27に示す第3感染ポイント設定処理では、残留期間の経過時間帯に応じて、危険エリア範囲の“広範囲”に滞在した感染濃厚者に対して、ウイルス生存率に対応した第3感染ポイントを設定できる。
図28は、除菌登録処理に関わるサーバ4側の制御部25内部の処理動作の一例を示すフローチャートである。図28に示す除菌登録処理では、エリア内のウイルスを消毒等で除菌した場合、当該エリアの除菌をエリアIDに対応付けて除菌エリアテーブル37内に登録する処理である。図28において制御部25は、除菌作業が登録済みであるか否かを判定する(ステップS131)。制御部25は、除菌作業が登録済みである場合(ステップS131肯定)、図28に示す処理動作を終了する。制御部25は、除菌作業が登録済みでない場合(ステップS131否定)、除菌対象ウイルスの除菌ウイルスID、除菌の実施日時、実施した対象エリアを識別するエリアIDを対応付けて除菌情報として除菌エリアテーブル37に登録する(ステップS132)。そして、制御部25は、図28に示す処理動作を終了する。
図28に示す除菌登録処理では、除菌作業を実行すると、その除菌対象のウイルスの除菌ウイルスID、除菌日時及びエリアIDを除菌エリアテーブル37に登録できる。その結果、制御部25は、除菌エリアテーブル37のテーブル内容を参照して、除菌ウイルスID、除菌日時及びエリアIDを認識できる。
図29は、危険ポイント集計処理に関わるサーバ4側の制御部25の処理動作の一例を示すフローチャートである。図29に示す危険ポイント集計処理とは、リスク集計テーブル38に登録済みの各利用者の感染ポイントを利用者単位で集計する処理である。図29に示す制御部25の集計部43Aは、リスク集計テーブル38内のユーザID、滞在日時及びウイルスIDの順にソートし(ステップS141)、リスク集計テーブル38から未処理の行動履歴レコードを指定する(ステップS142)。集計部43Aは、除菌エリアテーブル37のテーブル内容を参照し、行動履歴レコード内の滞在日時が該当ウイルスの除菌日時(実施日時)以降であるか否かを判定する(ステップS143)。集計部43Aは、行動履歴レコード内の滞在日時が除菌日時以降である場合(ステップS143肯定)、行動履歴レコード内の滞在エリアのエリアIDが除菌の対象エリアのエリアIDと同一であるか否かを判定する(ステップS144)。
集計部43Aは、除菌対象エリアのエリアIDと同一である場合(ステップS144肯定)、当該行動履歴レコード内の危険ポイントを加算せず、リスク集計テーブル38内の未処理の行動履歴レコードがあるか否かを判定する(ステップS145)。集計部43Aは、リスク集計テーブル38内の未処理の行動履歴レコードがある場合(ステップS145肯定)、リスク集計テーブル38内の未処理の行動履歴レコードを指定する(ステップS146)。更に、集計部43Aは、未処理の行動履歴レコードを指定すると、行動履歴レコード内の滞在日時が除菌日時以降であるか否かを判定すべく、ステップS143に移行する。
また、集計部43Aは、行動履歴レコード内の滞在日時が除菌日時以降でない場合(ステップS143否定)、行動履歴レコードのユーザIDに対応する危険ポイントの集計が完了したか否かを判定する(ステップS147)。集計部43Aは、行動履歴レコード内のユーザIDに対応した危険ポイントの集計が完了しなかった場合(ステップS147否定)、当該ユーザIDに対応した前回までの危険ポイントに今回の危険ポイントを加算して集計する(ステップS148)。そして、集計部43Aは、ステップS148にて危険ポイントを集計した後、リスク集計テーブル38内の未処理の行動履歴レコードがあるか否かを判定すべく、ステップS145に移行する。
更に、集計部43Aは、行動履歴レコード内のユーザIDに対応した危険ポイントの集計が完了した場合(ステップS147肯定)、当該利用者のユーザID及び危険ポイントを警告対象リスト39に登録する(ステップS149)。そして、集計部43Aは、未処理の行動履歴レコードがあるか否かを判定すべく、ステップS145に移行する。集計部43Aは、行動履歴レコード内の滞在エリアのエリアIDが除菌の対象エリアのエリアIDでない場合(ステップS144否定)、行動履歴レコード内のユーザIDに対応した危険ポイントの集計が完了したか否かを判定すべく、ステップS147に移行する。
図29に示す危険ポイント集計処理では、リスク集計テーブル38内の危険ポイントを感染濃厚者単位に集計し、その集計された危険ポイントを集計ポイントとして警告対象リスト39に登録する。その結果、制御部25は、感染濃厚者単位で危険ポイントを集計ポイントとして集計できる。
更に、危険ポイント集計処理では、除菌した対象エリアに関わる除菌日時以降の利用者の危険ポイントの加算から除くことで、ウイルス除菌のエリアも反映できる。
図30は、警告通知処理に関わるサーバ4側の制御部25の処理動作の一例を示すフローチャートである。図30に示す警告通知処理では、警告対象リスト39内に登録済みの利用者毎の集計ポイントが所定の危険ポイント閾値を超えた場合に感染濃厚の警告情報を感染濃厚者宛に通知する処理である。図30において制御部25内の判定部43Bは、警告対象リスト39に登録済みのユーザIDの集計ポイントが危険ポイント閾値AAA以上であるか否かを判定する(ステップS151)。判定部43Bは、集計ポイントが危険ポイント閾値AAA以上である場合(ステップS151肯定)、当該ユーザIDのメールアドレス宛に危険レベルAAAの警告情報を通知する(ステップS152)。更に、判定部43Bは、警告対象リスト39内に未処理のレコードがあるか否かを判定する(ステップS153)。判定部43Bは、警告対象リスト39内に未処理のレコードがない場合(ステップS153否定)、図30に示す処理動作を終了する。判定部43Bは、警告対象リスト39内に未処理のレコードがある場合(ステップS153肯定)、次の未処理のレコードを指定し(ステップS154)、ステップS151に移行する。
また、判定部43Bは、集計ポイントが危険ポイント閾値AAA以上でない場合(ステップS151否定)、集計ポイントが危険ポイント閾値AA以上であるか否かを判定する(ステップS155)。判定部43Bは、集計ポイントが危険ポイント閾値AA以上である場合(ステップS155肯定)、当該ユーザIDのメールアドレス宛に危険レベルAAの警告情報を通知し(ステップS156)、ステップS153に移行する。
また、判定部43Bは、集計ポイントが危険ポイント閾値AA以上でない場合(ステップS155否定)、集計ポイントが危険レベルA以上であるか否かを判定する(ステップS157)。判定部43Bは、集計ポイントが危険ポイント閾値A以上である場合(ステップS157肯定)、当該ユーザIDのメールアドレス宛に危険レベルAの警告情報を通知し(ステップS158)、ステップS153に移行する。
また、判定部43Bは、集計ポイントが危険ポイント閾値A以上でない場合(ステップS157否定)、集計ポイントが危険ポイント閾値B以上であるか否かを判定する(ステップS159)。判定部43Bは、集計ポイントが危険ポイント閾値B以上である場合(ステップS159肯定)、当該ユーザIDのメールアドレス宛に危険レベルBの警告情報を通知し(ステップS160)、ステップS153に移行する。
また、判定部43Bは、集計ポイントが危険ポイント閾値B以上でない場合(ステップS159否定)、集計ポイントが危険ポイント閾値C以上であるか否かを判定する(ステップS161)。判定部43Bは、集計ポイントが危険ポイント閾値C以上である場合(ステップS161肯定)、当該ユーザIDのメールアドレス宛に危険レベルCの警告情報を通知し(ステップS162)、ステップS153に移行する。
また、判定部43Bは、集計ポイントが危険ポイント閾値C以上でない場合(ステップS161否定)、当該ユーザIDのメールアドレス宛に安全レベルの警告情報を通知し(ステップS163)、ステップS153に移行する。尚、制御部25は、ステップS163にて安全レベルの警告情報を通知したが、安全レベルのため、警告情報を通知しなくても良い。
図30に示す警告通知処理では、警告対象リスト39内に登録済みの各感染濃厚者の集計ポイントが危険ポイント閾値以上の場合、当該危険ポイント閾値に対応した警告情報を感染濃厚者のメールアドレス宛に通知する。その結果、利用者は、危険ポイント閾値に応じた警告情報に基づき、感染濃厚の危険性を認識できる。
本実施例では、サーバ4が、各移動端末2の利用者の行動履歴を収集して行動履歴テーブル34に登録する。更に、サーバ4は、感染者のユーザIDを検知すると、当該感染者のユーザIDを含む行動履歴に基づき、指定期間内に、同一エリアIDの危険エリア範囲に滞在した感染濃厚者のユーザIDを特定する。更に、サーバ4は、特定されたユーザIDの感染濃厚者宛に警告情報を通知する。つまり、同一危険エリア範囲内でも空間(部屋)が異なる、すなわち、エリアIDが異なる場合、空気感染の危険性が低いため、感染濃厚者として特定せず、同一エリアIDの場合に感染濃厚者として特定する。その結果、感染通知システム1では、感染濃厚者を特定する精度の向上が図れることで、感染濃厚者の誤特定による不要な警告情報の通知を回避できる。
本実施例では、感染者の移動端末2のユーザID及び発症日時を検知すると、当該発症日時前の発症前感染可能期間から、当該発症日時後の発症後感染可能期間の内、現在日時までの期間を指定期間とした。その結果、サーバ4は、指定期間内に感染者と同一エリアIDの危険エリア範囲内に滞在した感染濃厚者を特定できる。
本実施例では、空間(部屋)毎のウイルス生存率及び、当該ウイルスの最大生存時間に基づき当該空間におけるウイルスの最大生存時間(残留期間)を算出し、その残留期間を指定期間とした。その結果、サーバ4は、感染者が滞在した空間から退出した後の残留期間内に危険エリア範囲内に滞在した感染濃厚者を特定できる。
本実施例では、危険エリア範囲を区分する距離区分(“狭範囲”、“中範囲”及び“広範囲”に対応した感染ポイントをウイルステーブル33内に管理する。サーバ4は、指定期間内に、同一空間内の危険エリア範囲内に滞在した感染濃厚者のユーザIDを特定すると、感染濃厚者が滞在した危険エリア範囲内の該当距離区分に対応する感染ポイントを取得してユーザID毎に感染ポイントを集計する。サーバ4は、ユーザID毎に集計された感染ポイントが所定の危険ポイント閾値を超えた場合に、当該ユーザIDの感染濃厚者宛に警告情報を通知する。その結果、感染濃厚者は、警告情報に基づき、距離区分を反映した危険ポイントに基づき感染の危険性を認識できる。
本実施例では、危険エリア範囲を区分する距離区分及び残留期間を区分する時間区分に対応した感染ポイントを管理する。サーバ4は、残留期間内に、同一空間内の危険エリア範囲内に滞在した感染濃厚者のユーザIDを特定すると、危険エリア範囲内の該当距離区分及び該当時間区分に対応した感染ポイントを取得して移動端末2のユーザIDを取得する。更に、サーバ4は、移動端末2のユーザIDを取得して利用者単位の危険ポイントを集計する。サーバ4は、移動端末2のユーザID毎に集計された感染ポイントが危険ポイント閾値を超えた場合に、当該ユーザIDの感染濃厚者宛に警告情報を通知する。その結果、感染濃厚者は、警告情報に基づき、距離区分及び時間区分を反映した危険ポイントに基づき感染の危険性を認識できる。
尚、上記実施例では、利用者の行動履歴として移動端末2のGPS情報を使用したが、移動端末2を無線接続する複数の無線基地局の通信エリア範囲から移動端末2の現在位置を特定する位置情報及び時刻情報で利用者の行動履歴を作成しても良い。
また、上記実施例では、移動端末2側でGPS情報を取得し、取得されたGPS情報を行動履歴サーバ3に送信し、行動履歴サーバ3側で行動履歴を作成するようにしたが、行動履歴サーバ3を経由せず、移動端末2がサーバ4にGPS情報を送信しても良い。そして、サーバ4は、各移動端末2のGPS情報に基づき行動履歴を作成しても良い。
また、上記実施例では、移動端末2からGPS情報を取得するようにしたが、移動端末2と無線接続する無線基地局から移動端末2のGPS情報を取得しても良い。
また、上記実施例では、行動履歴内の利用者が滞在する空間をエリアテーブル32のエリアIDで特定したが、移動端末2の利用者の入室記録を他のシステムから取得し、入室記録に基づき利用者の滞在する空間を特定しても良い。
また、上記実施例では、利用者の属性、例えば、高齢者や新生児等に応じてウイルス抵抗力を設定し、利用者の属性に応じたウイルス抵抗力で感染ポイントを変えるようにしても良い。例えば、新生児はウイルス抵抗力が弱いため、20代に比較して感染ポイントを高める。その結果、利用者の属性を反映した感染危険の判定が実現できる。
また、上記実施例では、危険エリア範囲を“狭範囲”、“中範囲”及び“広範囲”の三段階としたが、一乃至複数段としても良く、これら段数に限定するものではない。
また、上記実施例では、感染濃厚者抽出処理にて第1抽出処理を実行した後、第2抽出処理を実行したが、第2抽出処理を実行後、第1抽出処理を実行しても良い。また、上記実施例では、感染濃厚者抽出処理にて第1抽出処理及び第2抽出処理を実行したが、第1抽出処理及び第2抽出処理の内、何れか一つの抽出処理を選択可能に実行しても良い。
また、上記実施例では、警告対象リスト39に登録済みの感染濃厚者の危険ポイントの集計ポイントが所定の危険ポイント閾値以上になった場合に感染濃厚者宛に警告情報を通知した。しかしながら、危険ポイント閾値に関係なく、行動履歴に基づき、感染濃厚者と認識されると、感染濃厚者宛に警告情報を通知しても良い。
また、上記実施例では、移動端末2から感染者の感染登録要求を発信するようにしたが、例えば、当該サーバ4と通信接続する医療機関の通信端末からの発信や、当該サーバ4の操作部22の入力操作で感染登録要求を入力するようにしても良い。
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
更に、各装置で行われる各種処理機能は、CPU(Central Processing Unit)(又はMPU(Micro Processing Unit)、MCU(Micro Controller Unit)等のマイクロ・コンピュータ)上で、その全部又は任意の一部を実行するようにしても良い。また、各種処理機能は、CPU(又はMPU、MCU等のマイクロ・コンピュータ)で解析実行するプログラム上、又はワイヤードロジックによるハードウェア上で、その全部又は任意の一部を実行するようにしても良いことは言うまでもない。
ところで、本実施例で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することによって実現できる。そこで、以下では、図31を用いて、上記の実施例と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図31は、感染通知プログラムを実行するコンピュータを示す説明図である。
図31に示すように、感染通知プログラムとしてのコンピュータ100では、HDD(Hard Disk Drive)110、RAM(Random Access Memory)120、ROM(Read Only Memory)130及びCPU140がバス150を介して接続される。
そして、ROM130若しくはHDD110には、上記の実施例と同様の機能を発揮する感染通知プログラムが予め記憶されている。尚、ROM130及びHDD110ではなく、図示せぬドライブでコンピュータ読取可能な記録媒体に感染通知プログラムが記録されていても良い。また、記録媒体としては、例えば、CD−ROM、DVDディスク、USBメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ等でも良い。感染通知プログラムとしては、図31に示すように、収集プログラム131、管理プログラム132、特定プログラム133及び通知プログラム134である。尚、プログラム131〜134については、図3に示したサーバ4の各構成要素と同様、適宜統合又は分散してもよい。
そして、CPU140が、これらのプログラム131〜134をROM130から読み出して実行する。そして、各プログラム131〜134は、収集プロセス141、管理プロセス142、特定プロセス143及び通知プロセス144として機能するようになる。
CPU140は、移動端末2から、当該移動端末2を識別するユーザIDと、当該移動端末2の位置を識別する位置情報及び当該位置の日時を識別する時刻情報を含む利用者の行動履歴を収集してRAM120に記憶する。CPU140は、感染者の移動端末2のユーザIDを検知すると、当該感染者のユーザIDを含む行動履歴の位置情報及び時刻情報に基づき、指定期間内に、同一空間内の危険エリア範囲内に滞在した移動端末2のユーザIDをRAM120から特定する。そして、CPU140は、特定されたユーザIDの利用者宛に警告情報を通知する。その結果、感染濃厚者に関わる警告対象端末の特定精度の向上が図れる。
以上、本実施例を含む実施の形態に関し、更に以下の付記を開示する。
(付記1)コンピュータが、
端末装置から、当該端末装置を識別する識別子、当該端末装置の位置を識別する位置情報及び当該位置の日時を識別する時刻情報を含む履歴を収集して記憶部に記憶し、
感染者の端末装置の識別子を検知すると、当該感染者の端末装置の識別子を含む前記履歴に基づき、所定期間内に、同一空間内の指定距離内に存在した端末装置の識別子を前記記憶部から特定し、
特定された識別子の端末装置に関わる利用者宛に通知する
各処理を実行することを特徴とする感染通知方法。
(付記2)前記コンピュータは、さらに、前記空間を識別する空間識別子毎に当該空間の位置情報を予め記憶しておき、前記特定する処理は、前記感染者の端末装置の識別子を含む前記履歴に基づき、前記空間識別子を特定し、特定された前記空間識別子、当該履歴に基づき、前記所定期間内に、同一空間内の指定距離内に存在した端末装置の識別子を前記記憶部から特定することを特徴とする付記1に記載の感染通知方法。
(付記3)前記特定する処理は、前記感染者の端末装置の識別子及び感染の発症日時を検知すると、当該発症日時を基点した当該発症日時前の第1の指定期間から、当該発症日時を基点にした当該発症日時後の第2の指定期間の内、現在日時までの期間内に、同一空間内の指定距離内に存在した端末装置の識別子を特定することを特徴とする付記1又は2に記載の感染通知方法。
(付記4)前記特定する処理は、前記感染者が存在した前記空間から退出後のタイミングから指定期間内に、同一空間内の指定距離内に存在した端末装置の識別子を特定することを特徴とする付記1又は2に記載の感染通知方法。
(付記5)前記特定する処理は、前記空間のウイルス生存率及び、当該ウイルスの最大生存時間に基づいて算出された当該空間内の当該ウイルスに関わる最大生存時間内に、同一空間内の指定距離内に存在した端末装置の識別子を特定することを特徴とする付記1又は2に記載の感染通知方法。
(付記6)前記コンピュータは、さらに、前記指定距離を区分する距離区分に対応した評価点を記憶しておき、前記通知する処理は、前記所定期間内に、同一空間内の指定距離内に存在した端末装置の識別子を特定すると、当該端末装置が存在した前記指定距離内の該当距離区分に対応する評価点を取得して当該端末装置の識別子毎に当該所定期間内に取得された評価点を集計し、前記端末装置の識別子毎に集計された評価点が所定閾値を超えた場合に、当該識別子に関わる端末装置の利用者宛に通知することを特徴とする付記1〜5の何れか一つに記載の感染通知方法。
(付記7)前記コンピュータは、さらに、前記指定距離を区分する距離区分及び前記指定期間を区分する時間区分に対応した評価点を記憶しておき、前記通知する処理は、前記所定期間内に、同一空間内の指定距離内に存在した端末装置の識別子を特定すると、当該指定距離内の該当距離区分及び当該第3の指定期間内の該当時間区分に対応した評価点を取得して当該端末装置の識別子毎に当該所定期間内に取得された評価点を集計し、前記端末装置の識別子毎に集計された評価点が所定閾値を超えた場合に、当該識別子に関わる端末装置の利用者宛に通知することを特徴とする付記1〜5の何れか一つに記載の感染通知方法。
(付記8)端末装置から、当該端末装置を識別する識別子、当該端末装置の位置を識別する位置情報及び当該位置の日時を識別する時刻情報を含む履歴を収集して記憶部に記憶する収集部と、
感染者の端末装置の識別子を検知すると、当該感染者の端末装置の識別子を含む前記履歴に基づき、所定期間内に、同一空間内の指定距離内に存在した端末装置の識別子を前記記憶部から特定する特定部と、
特定された識別子に関わる端末装置の利用者宛に通知する通知部と
を有することを特徴とする感染通知装置。