(57)【要約】【課題】将来のイベントにおけるトラヒックを時空間レベルで予測可能とすること。【解決手段】トラヒック予測装置は、通信端末の複数人のユーザを集約する複数のエージェントの単位時間ごとの所在地を、前記エージェントごとに予め設定されたエージェントデータに基づいて変更し、前記単位時間ごとに、各エージェントについて、記憶部に設定された通信発生確率に基づいて通信するか否かを決定し、通信することが決定されたエージェントについて、各通信アプリに関して前記記憶部に設定された選択比率に基づいて使用する通信アプリを決定し、前記単位時間ごとに、前記シミュレーション空間における１以上の通信範囲について、当該通信範囲に所在地が含まれる各エージェントについて決定された通信アプリの要求帯域と、当該通信範囲に設定された前記単位時間あたりに利用可能なトラヒック量とに基づいて、当該各エージェントに対して割り当てる帯域を決定する。【選択図】図４
2018133680.tif 000002
【特許請求の範囲】
【請求項１】
それぞれがシミュレーション空間において通信端末の複数人のユーザを集約する複数のエージェントの単位時間ごとの所在地を、前記エージェントごとに予め設定されたエージェントデータに基づいて変更する移動行動部と、
前記単位時間ごとに、各エージェントについて、記憶部に設定された通信発生確率に基づいて通信するか否かを決定し、通信することが決定されたエージェントについて、各通信アプリに関して前記記憶部に設定された選択比率に基づいて使用する通信アプリを決定する通信行動部と、
前記単位時間ごとに、前記シミュレーション空間における１以上の通信範囲について、当該通信範囲に所在地が含まれる各エージェントについて前記通信行動部によって決定された通信アプリの要求帯域と、当該通信範囲に設定された前記単位時間あたりに利用可能なトラヒック量とに基づいて、当該各エージェントに対して割り当てる帯域を決定する通信環境制御部と、
を有することを特徴とするトラヒック予測装置。
【請求項２】
複数の前記通信アプリのそれぞれについて、一人あたりの前記単位時間あたりの要求帯域と、当該通信アプリの一人あたりの使用確率とが予め設定され、
前記一人あたりの前記単位時間の要求帯域を、エージェントあたりの前記単位時間の要求帯域に変換し、前記一人あたりの使用確率を、エージェントあたりの通信発生確率及び通信アプリの選択比率に変換し、前記エージェントあたりの前記単位時間の要求帯域と、前記エージェントあたりの通信発生確率及び通信アプリの選択比率とを前記記憶部に記憶する変換部を有する、
ことを特徴とする請求項１記載のトラヒック予測装置。
【請求項３】
前記変換部は、前記複数の通信アプリを一つの通信アプリにまとめた場合について、前記エージェントあたりの前記単位時間の要求帯域と、前記エージェントあたりの通信発生確率及び当該通信アプリの選択比率とを算出する、
ことを特徴とする請求項２記載のトラヒック予測装置。
【請求項４】
前記変換部は、前記複数人のそれぞれが、前記一人あたりの使用確率に従っていずれか通信アプリを使用する場合の全ての組み合わせについて、前記エージェントあたりの前記単位時間の要求帯域と、前記エージェントあたりの通信発生確率及び前記組み合わせごとの各通信アプリの選択比率とを算出する、
ことを特徴とする請求項２記載のトラヒック予測装置。
【請求項５】
それぞれがシミュレーション空間において通信端末の複数人のユーザを集約する複数のエージェントの単位時間ごとの所在地を、前記エージェントごとに予め設定されたエージェントデータに基づいて変更する移動行動手順と、
前記単位時間ごとに、各エージェントについて、記憶部に設定された通信発生確率に基づいて通信するか否かを決定し、通信することが決定されたエージェントについて、各通信アプリに関して前記記憶部に設定された選択比率に基づいて使用する通信アプリを決定する通信行動手順と、
前記単位時間ごとに、前記シミュレーション空間における１以上の通信範囲について、当該通信範囲に所在地が含まれる各エージェントについて前記通信行動手順において決定された通信アプリの要求帯域と、当該通信範囲に設定された前記単位時間あたりに利用可能なトラヒック量とに基づいて、当該各エージェントに対して割り当てる帯域を決定する通信環境制御手順と、
をコンピュータが実行することを特徴とするトラヒック予測方法。
【請求項６】
複数の前記通信アプリのそれぞれについて、一人あたりの前記単位時間あたりの要求帯域と、当該通信アプリの一人あたりの使用確率とが予め設定され、
前記一人あたりの前記単位時間の要求帯域を、エージェントあたりの前記単位時間の要求帯域に変換し、前記一人あたりの使用確率を、エージェントあたりの通信発生確率及び通信アプリの選択比率に変換し、前記エージェントあたりの前記単位時間の要求帯域と、前記エージェントあたりの通信発生確率及び通信アプリの選択比率とを前記記憶部に記憶する変換手順をコンピュータが実行する、
ことを特徴とする請求項５記載のトラヒック予測方法。
【請求項７】
前記変換手順は、前記複数の通信アプリを一つの通信アプリにまとめた場合について、前記エージェントあたりの前記単位時間の要求帯域と、前記エージェントあたりの通信発生確率及び当該通信アプリの選択比率とを算出する、
ことを特徴とする請求項６記載のトラヒック予測方法。
【請求項８】
前記変換手順は、前記複数人のそれぞれが、前記一人あたりの使用確率に従っていずれか通信アプリを使用する場合の全ての組み合わせについて、前記エージェントあたりの前記単位時間の要求帯域と、前記エージェントあたりの通信発生確率及び前記組み合わせごとの各通信アプリの選択比率とを算出する、
ことを特徴とする請求項６記載のトラヒック予測方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トラヒック予測装置及びトラヒック予測方法に関する。
【背景技術】
【０００２】
モバイル端末の高機能化や移動体通信網の高帯域化に伴い、場所を問わずモバイルトラヒックが発生しやすい環境となっている。また、モバイル端末の利用形態の多様化が進んでいるため、大規模なイベント時において会場及びその周辺では、様々なモバイルアプリの利用による局所的なアップロード／ダウンロードトラヒック（以下、「イベントトラヒック」という。）の発生が見込まれる。
【０００３】
イベントトラヒックは、発生時間及び発生場所が局所的であり、イベント毎に利用されるアプリの傾向も異なる。そのため、光ファイバーや基地局の様に常設となる通信リソースの新規・追加配備による対応では、平常時における通信リソースの使用率が小さくなるため、余剰な設備投資になる。
【０００４】
そこで、移動基地局車やＷｉ−Ｆｉ（登録商標）ＡＰの様な臨時に用意することが可能な通信リソースを適切に配備することで、通信リソースに必要なコストを抑えつつイベント当日における通信品質を向上させることが可能となる。
【０００５】
この場合、用意すべき臨時用の通信リソース量の見積りや、イベントトラヒックの収容量を最大化する通信リソースの配備場所を検討する上では、イベントトラヒック量を時空間レベルで事前に予測することが重要となる。
【０００６】
従来は、コミックマーケットの様な定期開催の大規模イベントがイベントトラヒック対策の対象であり、過去の経験やノウハウに基づいて次回イベント時のイベントトラヒック量の予測および通信リソースの配備が実施されていた。過去のノウハウを基に通信トラヒックを予測するアプローチとしては、過去観測された通信トラヒックデータを基に外挿を用いて、将来の通信トラヒック量を予測するアプローチ等がある（特許文献１、特許文献２）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１５−２３１１８７号公報
【特許文献２】特開２０１５−２１６５８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、これまでの大規模イベントは、同一の場所で定期的に開催されるものが主体であったが、モバイルサービスの多様化とそれを可能とする移動体通信網の機能向上によって、今後は過去に実施経験のないイベント、及びそれに伴うイベントトラヒックの発生が場所を問わずに発生するものが増加していくと見込まれる。この様な新たなイベント（以下、「将来イベント」という。）を対象にトラヒック対策を考える上では、トラヒック観測値等の過去のノウハウがまだ得られていないため、従来技術等の外挿によるイベントトラヒックの予測を、直接適用することは困難である。
【０００９】
本発明は、上記の点に鑑みてなされたものであって、将来のイベントにおけるトラヒックを時空間レベルで予測可能とすることを目的とする。
【課題を解決するための手段】
【００１０】
そこで上記課題を解決するため、トラヒック予測装置は、それぞれがシミュレーション空間において通信端末の複数人のユーザを集約する複数のエージェントの単位時間ごとの所在地を、前記エージェントごとに予め設定されたエージェントデータに基づいて変更する移動行動部と、前記単位時間ごとに、各エージェントについて、記憶部に設定された通信発生確率に基づいて通信するか否かを決定し、通信することが決定されたエージェントについて、各通信アプリに関して前記記憶部に設定された選択比率に基づいて使用する通信アプリを決定する通信行動部と、前記単位時間ごとに、前記シミュレーション空間における１以上の通信範囲について、当該通信範囲に所在地が含まれる各エージェントについて前記通信行動部によって決定された通信アプリの要求帯域と、当該通信範囲に設定された前記単位時間あたりに利用可能なトラヒック量とに基づいて、当該各エージェントに対して割り当てる帯域を決定する通信環境制御部と、を有する。
【発明の効果】
【００１１】
将来のイベントにおけるトラヒックを時空間レベルで予測することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態の構成例を示す第１の図である。
【図２】本発明の実施の形態の構成例を示す第２の図である。
【図３】本発明の実施の形態におけるシミュレータ装置のハードウェア構成例を示す図である。
【図４】本発明の実施の形態におけるシミュレータ装置の機能構成例を示す図である。
【図５】エージェントの移動範囲と目的地候補に関するイメージを示す図である。
【図６】通信範囲に関するイメージを示す図である。
【図７】ＭＡＳエンジンが実行する処理手順の一例を説明するためのフローチャートである。
【図８】目的管理部が実行する処理手順の一例を説明するためのフローチャートである。
【図９】経路計算部が実行する処理手順の一例を説明するためのフローチャートである。
【図１０】移動行動部が実行する処理手順の一例を説明するためのフローチャートである。
【図１１】通信行動部が実行する処理手順の一例を説明するためのフローチャートである。
【図１２】移動環境制御部が実行する処理手順の一例を説明するためのフローチャートである。
【図１３】通信環境制御部が実行する処理手順の一例を説明するためのフローチャートである。
【図１４】本実施の形態のトラヒック予測において対象としたイベント会場周辺の情報を示す図である。
【図１５】シミュレーション範囲内における、各モデルを用いた場合の総ＤＬトラヒック量を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面に基づいて本発明の実施の形態を説明する。本実施の形態は、移動体通信網上の通信サービスにおいて、スポーツ大会やコミックマーケットの様な大規模イベントが新規で企画された場合に対し、トラヒックを収容する上で事前に用意すべき通信リソースを見積もることを目的に、イベント会場周辺におけるモバイルトラヒック量を、指定された時間及び空間粒度で予測する技術に関するものである。
【００１４】
本実施の形態は、集団行動モデル１３と環境モデル１４の仕組み、及び、そのモデルを動作させる装置に関するものである。集団行動モデル１３は、イベント時における代表的なモバイルユーザの集団（以下、単に「集団」という。）を一つの動体と捉え、集団の移動行動及び通信行動をアルゴリズム化したものである。また、環境モデル１４は、道路・建物のような集団の移動範囲、Ｗｉ−Ｆｉ（登録商標）、ＬＴＥ（Long Term Evolution）等の様な各種通信方式が利用可能な通信範囲等、集団が移動又は通信するときの条件として用いられる外部要因をモデル化したものである。本実施の形態は、個々人の動きをシミュレートするマルチエージェントベースシミュレーション（ＭＡＳ）の枠組みを用いて、集団を一つのエージェントモデルとして定義し、各集団の行動結果に基づき、対象とするイベントのモバイルトラヒック量を予測する技術である。
【００１５】
図１及び図２は、本発明の実施の形態の構成例を示す図である。本実施の形態は、スポーツ大会やコミックマーケット等のようなイベントにおいて、様々なモバイルアプリによる局所的なアップロード／ダウンロードによるトラヒック（以下、「イベントトラヒック」という。）の予測を行う上で、将来イベントでのトラヒック発生を模したシミュレーションを実行するソフトウェア、ソフトウェアを動作させるハードウェア、シミュレーション時に要する入出力データを保存するためのストレージで構成される。
【００１６】
ソフトウェア上では、シミュレーション全体を制御するＭＡＳエンジン１１にＡＰＩ１２（Application Program Interface）を介して、集団行動モデル１３、環境モデル１４、入力データ記憶部１５が繋がっており、ＭＡＳエンジン１１がシミュレーション全体の計算を実行し、ＡＰＩ１２を介して、出力データ記憶部１６に計算結果を出力する。
【００１７】
以降の説明では簡便化のため、全てのソフトウェア及び入出力データ用記憶媒体を一つのハードウェア上に実装している例を示すが、ソフトウェアが実装されるハードウェアに関しては、集団行動モデル１３、環境モデル１４、ＡＰＩ１２、ＭＡＳエンジン１１、入力データ記憶部１５、出力データ記憶部１６間でデータの送受信が可能であれば実装形態は問わない。例えば、全てのソフトウェアと入出力データを保持する記憶媒体が一つのハードウェア上に実装されてもよいし、各ソフトウェアと入出力データ用記憶媒体とが個別のハードウェアに実装されてもよい。
【００１８】
図３は、本発明の実施の形態におけるシミュレータ装置のハードウェア構成例を示す図である。図３のシミュレータ装置１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、及びインタフェース装置１０５等を有する。
【００１９】
シミュレータ装置１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００２０】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従ってシミュレータ装置１０に係る機能を実行する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。
【００２１】
図４は、本発明の実施の形態におけるシミュレータ装置の機能構成例を示す図である。図４において、集団行動モデル１３、環境モデル１４、ＡＰＩ１２、及びＭＡＳエンジン１１は、シミュレータ装置１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。入力データ記憶部１５及び出力データ記憶部１６は、例えば、補助記憶装置１０２、又はシミュレータ装置１０にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
【００２２】
シミュレータ装置１０内では、予測対象とするイベント内のモバイル端末（通信端末）のユーザを各種パラメータやモデルによって模擬している。各種パラメータやモデルによって模擬されるモバイル端末ユーザを「エージェント」と呼ぶ。
【００２３】
集団行動モデル１３は、シミュレーション上の予測対象のイベントにおけるエージェントの行動アルゴリズムである。エージェントは、集団行動モデル１３と入力データから得られるパラメータに基づいて単位時間毎に計算される移動行動と通信行動とを実施する。
【００２４】
エージェントは、入力データ記憶部１５に記憶されているエージェントデータＤ２に設定されたシナリオに従い、行動目的に応じた移動行動及び通信行動を実施する。エージェントデータＤ２には、エージェントごとに、以下のパラメータが設定されている。
・エージェントＩＤ：エージェントごとに一意な識別子
・属性：エージェントの性別、年齢、趣味等に応じてグルーピングされたグループごとに割り当てられる、シミュレーション内時間において不変のグループＩＤ
・速度：エージェントの歩行速度
・停止限界：エージェントが停止状態の際に行動目的を切替えるまでの時間
・開始時間：エージェントが行動を開始する時間
・終了時間：エージェントが行動を終了する予定時間
・開始場所：エージェントが行動を開始する目的地候補
・到着場所：エージェントが行動を終了する際の目的地候補
・経由地点：到着場所にたどり着くまでに実施する行動目的（経由地点を特定するための情報）のリスト
経由地点は行動目的毎に以下のパラメータを含む。
・優先順位：行動目的が複数設定されているエージェントについて、現在設定されている行動目的が混雑等の要因により、一定時間処理不可能と判断された際に、行動目的を変更するために用いられるパラメータ（小さいほど優先して実行される）
・タスクタイプ：行動目的のタイプ
・予定開始時間：行動目的の処理を実行開始する予定の時間
・予定滞留時間：行動目的を処理可能な目的地候補に到着した際に、行動目的が達成されるまで滞留する時間（予定終了時間が優先される）
・予定終了時間：行動目的の処理を実行中に滞留を止め、次の目的に移行する時間
・処理完了フラグ：初期値は０であり、行動目的の処理が完了した場合に１となる
また、各エージェントは、シミュレーション空間内に置いて、動的に変化する動的状態を持つ、動的状態は、シミュレーション内時間帯、エリア種別、及び移動状態の組み合わせを含む。シミュレーション内時間帯は、シミュレーション空間内における現在の時間帯（例えば、１時、２時、・・・等、１時間間隔の時間帯）である。エリア種別は、エージェントの現在の所在地（以下、「現在地」という。）を含む場所（エリア）の種別（例：屋内、屋外、イベント会場・・・等）である。移動状態は、エージェントの移動の状態を示し、移動、停止、滞留のいずれかの状態に分類される。移動は、エージェントがシミュレーション上で移動中である状態を示す。停止は、エージェントがシミュレーション上で停止中（信号などの環境起因、行列・混雑などのエージェント起因）であることを示す。滞留は、エージェントが、目的地候補で滞留している状態を示す。なお、移動とは、エージェントの現在地を示す座標値が、シミュレーション空間内の２次元座標系（後述の移動範囲）において変化することをいう。
【００２５】
集団行動モデル１３は、目的管理部１３１、移動行動部１３２、通信行動部１３３、及び経路計算部１３４等を含む。目的管理部１３１は、各エージェントに対する行動目的の設定及び変更と、行動目的の変更に伴う移動行動及び通信行動の変更を制御する。目的管理部１３１は、また、経路計算部１３４を利用して、エージェントの移動経路の生成を実施する。なお、各エージェントは、それぞれに設定された行動目的を満たす場所を目的地として移動を行う。
【００２６】
移動行動部１３２は、シミュレーション内時間におけるエージェントの移動行動を決定する。
【００２７】
通信行動部１３３は、エージェントの通信行動を決定する。
【００２８】
経路計算部１３４は、エージェントに設定された行動目的に対応する目的地までの移動経路を計算する。
【００２９】
環境モデル１４は、シミュレーション上におけるイベント空間を模擬し、エージェントが実施した移動行動及び通信行動に対する結果を返す仕組みである。環境モデル１４は、道路や建物等を模擬したエージェントの移動範囲や、ＬＴＥやＷｉ−Ｆｉ（登録商標）等を模擬したエージェントの通信範囲に応じて、集団行動モデル１３で実施された移動行動及び通信行動の可否を判断する。
【００３０】
エージェントは、シミュレーション空間内において２次元で表現された、移動範囲及び目的地候補となる平面上を移動する。エージェントの移動範囲と目的地候補に関するイメージを図５に示す。なお、目的地候補とは、エージェントの目的地となりうる場所（すなわち、エージェントの行動目的を満たしうる場所）をいう。移動範囲や目的地候補に関する情報は、入力データ記憶部１５に記憶されている移動範囲・目的地データＤ４に含まれている。
【００３１】
目的地候補は、２次元座標系における範囲として扱われ、目的地候補ごとに滞留可能人数ａｒｅａＬｉｍｉｔが予め移動範囲・目的地データＤ４に設定される。人数とは、モバイル端末のユーザの数をいい、エージェントの数ではない。滞留可能人数ａｒｅａＬｉｍｉｔ分に相当するエージェントが滞留している目的地候補に関しては、他のエージェントが通過する際や、目的地に到達する際の障害となる。そうすることで、混雑や行列が再現される。移動範囲は、予め設定された時間に応じて一時的に移動禁止となる場合がある。また、目的地候補には、処理可能な行動目的の種別がタスクタイプとして設定されている。上述したように、エージェントには行動目的が設定されており、設定された行動目的が処理可能な目的地候補に到達し、一定時間滞留することで当該行動目的は達成される。全ての行動目的が達成されたエージェントの行動は終了する。
【００３２】
なお、移動範囲・目的地データＤ４は、対象イベントの開催地における移動範囲及び目的地候補に基づいて設定される。
【００３３】
環境モデル１４は、移動環境制御部１４１及び通信環境制御部１４２を含む。移動環境制御部１４１は、移動行動部１３２が実施しようとしているエージェントの移動行動について、可否判断を行う。
【００３４】
通信環境制御部１４２は、通信行動部１３３が実施しようとしているエージェントの通信行動について、可否判断を行う。通信行動の可否判断は、エージェントの位置が、予め設定された通信範囲に含まれるか否か等に基づいて行われる。
【００３５】
図６は、通信範囲に関するイメージを示す図である。エージェントは、シミュレーション空間内において２次元で表現された、通信範囲となる平面上に存在する場合に、通信行動が可能となる。各通信範囲には識別子として通信範囲ＩＤが設定されており、Ｗｉ−Ｆｉ（登録商標）とＬＴＥ等の通信方式毎に任意の平面で通信範囲が表現可能である（通信方式の種類も追加可能）。各通信範囲には、単位時間あたり利用可能なアップロード（ＵＬ）／ダウンロード（ＤＬ）トラヒック量の上限値と接続端末数の上限値が設定されており、既に接続端末数が上限値となってしまっている通信範囲では、新規に通信を行うことは出来ない。通信範囲に関する情報は、入力データ記憶部１５に記憶されている通信範囲データＤ３に含まれている。なお、図６では、ＬＴＥの通信範囲として、通信範囲Ｌ１、Ｌ２、及びＬ３が例示されており、Ｗｉ−Ｆｉ（登録商標）の通信範囲として、Ｗ１が例示されている。エージェントＡ１は、通信範囲Ｌ２及び通信範囲Ｗ１に含まれる位置に所在している。
【００３６】
通信環境制御部１４２は、シミュレーション空間内における全ての通信範囲の接続端末数とそのエージェントの要求帯域を管理する。
【００３７】
ＭＡＳエンジン１１は、シミュレーション全体の制御を実施する（同等の機能を持つ市販製品も存在するため、それらを利用することも可能）。例えば、ＭＡＳエンジン１１は、シミュレーション空間における時間の経過を管理し、各エージェントについて、シミュレーション上のイベント空間を模擬する環境モデル１４と、エージェントの行動を模擬する集団行動モデル１３に従う移動行動及び通信行動を単位時間毎に、移動行動部１３２及び通信行動部１３３に計算させる。
【００３８】
ＡＰＩ１２は、ＭＡＳエンジン１１と集団行動モデル１３及び環境モデル１４間で必要なデータのやりとり、並びにエージェントの行動ログＬ１を出力データとして出力する。図４において、ＡＰＩ１２は、データ変換部１２１及び行動ログ出力部１２２等を含む。データ変換部１２１は、通信アプリデータＤ１や、移動範囲・目的地データＤ４等について、１エージェントに対して集約される人数である集約数Ｓ等に基づく変換処理を行う。行動ログ出力部１２２は、行動ログＬ１を出力する。集約数Ｓは、予め設定され、入力データ記憶部１５に記憶されている。
【００３９】
以下、シミュレータ装置１０が実行する処理手順について説明する。図７は、ＭＡＳエンジンが実行する処理手順の一例を説明するためのフローチャートである。
【００４０】
イベントトラヒック予測の実施の開始時において、ＭＡＳエンジン１１は、入力データ記憶部１５から通信アプリデータＤ１、エージェントデータＤ２、通信範囲データＤ３、及び移動範囲・目的地データＤ４を読み込むと共にシミュレーション空間内の時間ｔの初期化を行う（ｔ＝０）（Ｓ１０１）。また、各エージェントが有する、シミュレーション内における行動状況を示すパラメータであるエージェントステータスが、全てのエージェントについて「行動開始前」に初期化される。更に、データ変換部１２１が呼び出されて通信アプリデータＤ１や、移動範囲・目的地データＤ４等についての変換処理が行われる。当該変換処理の詳細については後述される。
【００４１】
続いて、ＭＡＳエンジン１１は、開始時間がｔであり、エージェントステータスが「行動開始前」である各エージェントのステータスを「行動中」に設定し、当該各エージェントの行動目的の設定又は変更等を目的管理部１３１に実行させる（Ｓ１０２）。この際、各エージェントのエージェントＩＤが目的管理部１３１に対して入力され、目的管理部１３１によって、該当する各エージェントに行動目的が設定されると共に、当該各エージェントの移動経路が決定される。
【００４２】
続いて、ＭＡＳエンジン１１は、ステータスが「行動中」である全エージェントの行動フラグを０に初期化する（Ｓ１０３）。続いて、ＭＡＳエンジン１１は、ステータスが「行動中」であり、かつ、行動フラグが０であるエージェントを一つ選択する（Ｓ１０４）。続いて、ＭＡＳエンジン１１は、選択したエージェント（以下、「対象エージェント」という。）の移動行動の決定を、移動行動部１３２に実行させる（Ｓ１０５）。この際、対象エージェントのエージェントＩＤが、移動行動部１３２に入力される。続いて、ＭＡＳエンジン１１は、対象エージェントの行動フラグを１に設定する（Ｓ１０６）。
【００４３】
ステップＳ１０４〜Ｓ１０６が、ステータスが「行動中」であり、かつ、行動フラグが０である全てのエージェントについて実行されると（Ｓ１０７でＹｅｓ）、ＭＡＳエンジン１１は、各エージェントの通信行動の決定を、通信行動部１３３に実行させる（Ｓ１０８）。
【００４４】
続いて、ＭＡＳエンジン１１は、ステータスが「行動中」であり、かつ、行動フラグが１である各エージェントが採用した移動行動及び通信行動等を示す情報である行動ログＬ１の出力をＡＰＩ１２の行動ログ出力部１２２に実行させる（Ｓ１０９）。続いて、ＭＡＳエンジン１１は、シミュレーション空間内の現在時間ｔを１単位時間進める（Ｓ１１０）。
【００４５】
ステップＳ１０２〜Ｓ１１０は、全てのエージェントが行動終了となるまで繰り返される（Ｓ１１１）。
【００４６】
図８は、目的管理部が実行する処理手順の一例を説明するためのフローチャートである。目的管理部１３１は、エージェントが行動開始となる時間ｔにＭＡＳエンジン１１から要求される場合（図７のステップＳ１０２）、又は、後述されるように、行動目的の変更が移動行動部１３２から要求された場合に処理を実行する。
【００４７】
ステップＳ２０１において、目的管理部１３１は、要求元から入力されたエージェントＩＤに対応するエージェントデータＤ２を取得する。
【００４８】
続いて、目的管理部１３１は、要求元がＭＡＳエンジン１１であるか否かを判定する（Ｓ２０２）。すなわち、図７のステップＳ１０２において、行動開始となるエージェントに関する処理を実行すべきか否かが判定される。
【００４９】
要求元がＭＡＳエンジン１１である場合（Ｓ２０２でＹｅｓ）、処理対象のエージェント（以下、「対象エージェント」という。）のエージェントデータＤ２に含まれている経由地点（行動目的のリスト）に含まれている行動目的のうち、未選択の行動目的の中で経由地点のリスト順において最初の行動目的を選択する（Ｓ２０３）。
【００５０】
続いて、目的管理部１３１は、選択された行動目的のタスクタイプを処理可能な目的地候補の中で、現在地から最寄りの目的地候補を対象エージェントの目的地として設定する（Ｓ２０４）。なお、各エージェントの最初の現在地（移動の開始場所）は、各エージェントのエージェントデータＤ２に設定されている開始場所によって特定される。
【００５１】
続いて、目的管理部１３１は、対象エージェントのエージェントデータＤ２に設定されている開始場所を移動元とし、ステップＳ２０４において選択された目的地を移動先として、当該移動元及び当該移動先の間の移動経路の計算を経路計算部１３４に実行させる（Ｓ２０５）。なお、当該移動元、当該移動先、及び対象エージェントのエージェントＩＤが経路計算部１３４に入力される。
【００５２】
一方、後述される移動行動部１３２が要求元である場合（Ｓ２０２でＮｏ）、すなわち、既に行動を開始しているエージェントに関して行動目的の変更が移動行動部１３２から要求された場合、目的管理部１３１は、現在時間ｔが、対象エージェントのエージェントデータＤ２に設定されている終了時間を経過しているか、又は対象エージェントの経由地点に含まれる全ての行動目的の予定終了時間を経過しているかを判定する（Ｓ２０６）。
【００５３】
現在時間ｔが、終了時間又は全ての行動目的の予定終了時間を経過している場合（Ｓ２０６でＹｅｓ）、目的管理部１３１は、対象エージェントのエージェントデータＤ２に設定されている到着場所を、対象エージェントの目的地として設定する（Ｓ２０７）。
【００５４】
現在時間ｔが終了時間を経過しておらず、かつ、いずれかの行動目的の予定終了時間を経過していない場合（Ｓ２０６でＮｏ）、目的管理部１３１は、対象エージェントのエージェントデータＤ２に設定されている経由地点に含まれる行動目的のうち、以下の（ａ）〜（ｃ）の条件の全てを満たす行動目的の有無を判定する（Ｓ２０８）。
（ａ）処理完了フラグが０である。
（ｂ）現在時間ｔが予定開始時間を過ぎている。
（ｃ）現在時間ｔが予定終了時間に達していない。
【００５５】
該当する行動目的が１以上有る場合（Ｓ２０８でＹｅｓ）、目的管理部１３１は、該当する行動目的のうちのいずれか一つの行動目的を選択する（Ｓ２０９）。該当する行動目的が複数有る場合、優先順位が最小である行動目的が選択される。優先順位が最小である行動目的が複数有る場合、当該複数の行動目的の中から対応するタスクタイプを処理可能な目的地候補の中で、現在地から最も近い行動目的が選択される。該当する行動目的が複数有る場合、当該複数の行動目的の中から予定終了時間が最も早い行動目的が選択される。予定終了時間が最も早い行動目的が複数有る場合、当該複数の行動目的の中から、例えば、ランダムに一つの行動目的が選択される。なお、選択された行動目的が、対象エージェントの新たな行動目的となる。
【００５６】
続いて、目的管理部１３１は、選択された行動目的のタスクタイプを処理可能な目的地候補の中で、対象エージェントの現在地に対して最寄りの目的地候補を対象エージェントの目的地として設定する（Ｓ２１０）。
【００５７】
一方、ステップＳ２０８において該当する行動目的が無い場合（Ｓ２０８でＮｏ）、目的管理部１３１は、行動目的の設定の失敗を移動行動部１３２に返却する（Ｓ２１１）。後述より明らかなように、この場合、対象エージェントの移動状態は元の状態に維持される。
【００５８】
ステップＳ２０７又はＳ２１０に続いて、目的管理部１３１は、対象エージェントの現在地を移動元とし、対象エージェントの目的地を移動先として、当該移動元及び当該移動先を経路計算部１３４に入力して、対象エージェントの新たな移動経路を経路計算部１３４に計算させる（Ｓ２１２）。なお、対象エージェントのエージェントＩＤも経路計算部１３４に入力される。
【００５９】
図９は、経路計算部が実行する処理手順の一例を説明するためのフローチャートである。図９の処理手順は、図８のステップＳ２０５又はＳ２１２において呼び出される。
【００６０】
ステップＳ３０１において、経路計算部１３４は、入力された移動元及び移動先（のそれぞれを示す座標値）と、移動範囲・目的地データＤ４において定義されている移動範囲及び目的地情報と、予め設定された方針とに基づいて、移動元から移動先までの経路計算を実行する。予め設定された方針とは、例えば、最短距離の経路を探索することである。また、経路計算（又は経路探索）は、公知の方法を用いて行われればよい。
【００６１】
続いて、経路計算部１３４は、計算された移動経路を示す情報（以下、「移動経路情報」という。）を、入力されたエージェントＩＤに紐付けて、例えば、メモリ装置１０３又は補助記憶装置１０２に記憶する（Ｓ３０２）。当該エージェントＩＤに対して既に移動経路情報が紐付けられている場合、当該移動経路情報は、新たな移動経路情報によって上書きされる。
【００６２】
図１０は、移動行動部が実行する処理手順の一例を説明するためのフローチャートである。移動行動部１３２は、ＭＡＳエンジン１１からの要求に応じ、対象エージェントの移動経路情報に基づいて、対象エージェントにおいて、シミュレーション空間内の現在時間ｔに対して、ｔ＋１における現在地を決定する。なお、図１０の処理手順は、図７のステップＳ１０５において呼び出される。
【００６３】
ステップＳ４０１において、移動行動部１３２は、入力されたエージェントＩＤに係るエージェント（対象エージェント）の動的属性の移動状態を確認する。当該移動状態が「移動」又は「停止」である場合（Ｓ４０２でＮｏ）、移動行動部１３２は、シミュレーション内の現在時間ｔにおける対象エージェントの現在地と、対象エージェントのエージェントデータＤ２に設定されている速度とを用いて、対象エージェントが単位時間あたりに移動可能な範囲を計算する（Ｓ４０３）。例えば、対象エージェントの現在地を中心とし、速度×単位時間を半径とする円の範囲が、移動可能な範囲として計算される。
【００６４】
続いて、移動行動部１３２は、移動可能な範囲の内、対象エージェントの移動経路情報が示す目的地までの経路について、残りの距離が最小となる位置を仮選択する（Ｓ４０４）。続いて、移動行動部１３２は、移動環境制御部１４１を起動し、対象エージェントのエージェントＩＤと、仮選択した位置を示す位置情報（座標）とを移動環境制御部１４１に入力して、対象エージェントの最終的な移動先を示す位置情報（座標）を確定する（Ｓ４０５）。
【００６５】
なお、移動行動部１３２は、このタイミングで、必要に応じて、対象エージェントの動的属性のシミュレーション内時間帯及びエリア種別を更新する。すなわち、対象エージェントのシミュレーション内時間帯が、現在時間ｔの時間帯に整合していなければ、対象エージェントのシミュレーション内時間帯が、現在時間ｔが属する時間帯に更新される。また、確定された位置情報に係る位置のエリア種別が、対象エージェントのエリア種別と異なっていれば、対象エージェントのエリア種別が、当該位置情報に係る位置のエリア種別に更新される。
【００６６】
続いて、移動行動部１３２は、移動環境制御部１４１から返された位置情報（座標）が示す位置が、対象エージェントの目的地又は当該目的地と同じタスクタイプを有する他の目的地候補に含まれるか否かを判定する（Ｓ４０６）。当該位置情報が、当該目的地又は当該他の目的地候補に含まれる場合（Ｓ４０６でＹｅｓ）、移動行動部１３２は、対象エージェントの現在の行動目的の予定滞留時間をｔに加算した時間と、対象エージェントの現在の行動目的の予定終了時間との早いほうを、滞留終了時間として対象エージェントに設定し、対象エージェントの行動状態を「滞留」に遷移させる（Ｓ４０７）。
【００６７】
移動環境制御部１４１から返された位置情報（座標）が、対象エージェントの目的地又は当該目的地と同じタスクタイプを有する他の目的地候補に含まれない場合（Ｓ４０６でＮｏ）、移動行動部１３２は、対象エージェントのｔにおける現在地から、対象エージェントの目的地までの距離ｄｓｔ＿ｏｌｄと、移動環境制御部１４１から返された位置情報が示す位置から対象エージェントの目的地までの距離ｄｓｔ＿ｎｅｗとの差ｄｓｔ＿ｎｅｗ−ｄｓｔ＿ｏｌｄが、予め定められた閾値ｔｈ＿ｄｓｔ以上であるか否かを判定する（Ｓ４０８）。
【００６８】
当該差が、閾値ｔｈ＿ｄｓｔ以上である場合（Ｓ４０８でＹｅｓ）、移動環境制御部１４１は、対象エージェントの移動状態が「停止」であれば、対象エージェントの移動状態を「移動」に設定する（Ｓ４０９）。
【００６９】
当該差が、閾値ｔｈ＿ｄｓｔより小さい場合（Ｓ４０８でＮｏ）、対象エージェントの移動状態が「移動」であれば（Ｓ４０９でＹｅｓ）、移動行動部１３２は、現在時間ｔを停止状態開始時間として、当該停止状態開始時間を対象エージェントのエージェントＩＤに紐付けて、対象エージェントの移動状態を「停止」に遷移させる。（Ｓ４１０）。
【００７０】
一方、対象エージェントの移動状態が「停止」であれば（Ｓ４１０でＮｏ）、移動行動部１３２は、対象エージェントについて、シミュレーション空間内の現在時間ｔが停止状態開始時間＋停止限界を超えているか否かを判定する（Ｓ４１２）。現在時間ｔが停止状態開始時間＋停止限界を超えている場合（Ｓ４１２でＹｅｓ）、移動行動部１３２は、対象エージェントが長時間停止状態にあると判断し、目的管理部１３１を呼び出して対象エージェントの行動目的を変更する（Ｓ４１３）。この際、対象エージェントのエージェントＩＤが目的管理部１３１に入力される。行動目的の変更（設定）に成功した場合（Ｓ４１４でＹｅｓ）、移動行動部１３２は、対象エージェントの行動状態を「移動」に遷移させる（Ｓ４１５）。
【００７１】
一方、対象エージェントの移動状態が「滞留」である場合（Ｓ４０２でＹｅｓ）、移動行動部１３２は、対象エージェントのエージェントＩＤに紐付けられている滞留終了時間を確認する（Ｓ４１６）。シミュレーション空間内の現在時間ｔが、当該滞留終了時間を過ぎている場合（Ｓ４１７でＹｅｓ）、移動行動部１３２は、対象エージェントの現在の行動目的の処理完了フラグに１を設定する（Ｓ４１８）。続いて、移動行動部１３２は、目的管理部１３１を起動して対象エージェントの行動目的の再設定を試みる（Ｓ４１９）。再設定に成功すると（Ｓ４２０でＹｅｓ）、移動行動部１３２は、対象エージェントの移動状態を「移動」に遷移させる（Ｓ４２１）。なお、目的管理部１３１の起動の際、対象エージェントのエージェントＩＤが目的管理部１３１に入力される。
【００７２】
図１１は、通信行動部が実行する処理手順の一例を説明するためのフローチャートである。図１１の処理手順は、図７のステップＳ１０８において呼び出される。通信行動部１３３は、シミュレーション内時間の現在時間ｔにおける全エージェントの移動先が移動行動部１３２によって確定した後に、集団行動モデル用通信アプリデータを用いて、各場所における通信アプリの選択及び発生トラヒックの決定を行う。集団行動モデル用通信アプリデータは、後述されるように、入力データ記憶部１５に予め記憶されている通信アプリデータＤ１に基づいてデータ変換部１２１によって生成され、補助記憶装置１０２又はメモリ装置１０３に記憶されている。例えば、通信アプリデータＤ１の各種のパラメータは、エージェントの属性と動的状態の組合せの数だけ種類が存在する。したがって、集団行動モデル用通信アプリデータも、エージェントの属性と動的状態の組合せの数だけ種類が存在する。なお、通信アプリデータＤ１に設定される各パラメータの値は、１ユーザあたり（一人あたり）の値であるのに対し、集団行動モデル用通信アプリデータに設定される各パラメータの値は、１エージェントあたりの値である。
【００７３】
ステップＳ５０１において、通信行動部１３３は、各エージェントのエージェントＩＤに紐付けられた通信フラグを確認する。通信フラグとは、エージェントが通信中であるか否かを示すフラグであり、エージェントの行動開始時に、０に設定される。なお、０は、通信中でないことを示し、１は、通信中であることを示す。
【００７４】
続いて、通信行動部１３３は、通信フラグが０であるエージェントごとに、当該エージェントの属性及び動的状態に関して集団行動モデル用通信アプリデータに設定されている通信発生確率に従い、通信アプリを使用するか否かを決定する（Ｓ５０２）。通信発生確率は、通信を行う確率（いずれかの通信アプリを使用する確率）である。
【００７５】
続いて、通信行動部１３３は、ステップＳ５０２において通信アプリを使用することが決定されたエージェントごとに、当該エージェントに対する通信フラグに１を設定して、当該エージェントの属性及び動的状態に関して集団行動モデル用通信アプリデータに設定されているアプリ選択比率に従って、当該各エージェントが使用する通信アプリを決定する（Ｓ５０３）。アプリ選択比率は、各通信アプリが選択される比率である。各通信アプリについては、一度の利用で通信するトラヒック量と単位時間あたりの要求帯域とが、ＤＬ／ＵＬ毎に集団行動モデル用通信アプリデータに設定されている。また、通信アプリを使用する各エージェントについては、変数として残トラヒック量が生成され、当該通信アプリに関して集団行動モデル用通信アプリデータに設定されている、一度の利用で通信する（ＤＬ／ＵＬ）トラヒック量が、残トラヒック量に設定される。
【００７６】
続いて、通信行動部１３３は、通信フラグが１であるエージェントのエージェントＩＤ及び単位時間あたりの要求帯域の組み合わせのリストを生成する（Ｓ５０４）。続いて、通信行動部１３３は、ステップＳ５０４において生成したリストを、通信環境制御部１４２に入力して、通信環境制御部１４２によって生成される、シミュレーション空間内の現在時間ｔにおける利用可能帯域のリストを受け取る（Ｓ５０５）。利用可能帯域のリストとは、エージェントＩＤ及び要求帯域のリストの要素ごとに、当該要素に係るエージェントに対して割り当てられた、単位時間あたりに利用可能な帯域を含むリストである。
【００７７】
続いて、通信行動部１３３は、通信環境制御部１４２から受け取った利用可能帯域のリストに基づいて、各エージェントの残トラヒック量を更新する（Ｓ５０６）。すなわち、各エージェントの残トラヒック量が、残トラヒック量−利用可能帯域×単位時間によって更新される。
【００７８】
続いて、通信行動部１３３は、残トラヒック量が０以下となったエージェントの通信フラグに０を設定する（Ｓ５０７）。その結果、当該エージェントの通信行動は終了する。
【００７９】
図１２は、移動環境制御部が実行する処理手順の一例を説明するためのフローチャートである。図１２の処理手順は、図１０のステップＳ４０５において呼び出される。移動環境制御部１４１は、２次元で表現されるエージェントの移動範囲及び目的地候補に関する情報と、シミュレーション空間内における全てのエージェントに関する現在地情報を座標情報として管理する。
【００８０】
ステップＳ６０１において、移動環境制御部１４１は、入力されたエージェントＩＤに係るエージェント（対象エージェント）の現在地を取得する。続いて、移動環境制御部１４１は、現在地から、移動行動部１３２から入力された仮選択された位置情報（座標）が示す移動先、又は当該移動先までの経路上に通行禁止区が無いか否かを判定する（Ｓ６０２）。例えば、信号等の存在による移動の制限の有無が判定される。信号等の通行禁止区は、予め移動範囲に対してその範囲が設定されている。
【００８１】
該当する通行禁止区が無い場合（Ｓ６０２でＹｅｓ）、移動環境制御部１４１は、当該移動先、又は当該移動先までの経路となる移動範囲が、他のエージェントによって塞がれていないか否かを判定する（Ｓ６０３）。すなわち、混雑や行列の存在による移動の制限の有無が判定される。なお、当該判定は、当該移動範囲に、他のエージェントの現在地が含まれているか否かに基づいて実行可能である。
【００８２】
当該移動先、又は当該移動先までの経路となる移動範囲が他のエージェントによって塞がれていない場合（Ｓ６０３でＹｅｓ）、移動環境制御部１４１は、当該移動先の目的地候補が他のエージェントによって塞がれていないか否かを判定する（Ｓ６０４）。すなわち、他のエージェントによる目的地候補の利用による移動の制限の有無が判定される。
【００８３】
当該目的地候補が他のエージェントによって塞がれていない場合（Ｓ６０４でＹｅｓ）、移動環境制御部１４１は、移動行動部１３２から入力された位置情報（座標）をそのまま移動行動部１３２に出力する（Ｓ６０５）。
【００８４】
当該目的地候補が他のエージェントによって塞がれている場合（Ｓ６０４でＮｏ）、移動環境制御部１４１は、移動可能な範囲内に、対象エージェントが滞留可能な他の目的地候補が存在するか否かを判定する（Ｓ６０６）。なお、当該他の目的地候補は、対象エージェントの現在の行動目的のタスクタイプを処理可能な目的地候補である必要が有る。また、移動可能な範囲とは、対象エージェントの現在地を中心とし、入力でされた移動情報が示す移動先までの距離を半径とした円状のエリアをいう。
【００８５】
該当する目的地候補が有る場合（Ｓ６０６でＹｅｓ）、移動環境制御部１４１は、当該目的地候補において滞留可能な位置の位置情報（座標）を、移動行動部１３２に出力する（Ｓ６０７）。なお、複数の目的地候補が該当する場合、対象エージェントの現在地から最寄りの目的地候補が選択されればよい。
【００８６】
一方、ステップＳ６０３、ステップＳ６０４、又はステップＳ６０６の判定結果が否定的な場合、移動環境制御部１４１は、移動可能な範囲内で、移動先に一番近い場所の位置情報（座標）を移動行動部１３２に出力する（Ｓ６０８）。当該移動可能な範囲内の意味は、ステップＳ６０６における意味と同じである。
【００８７】
ステップＳ６０５、Ｓ６０７、又はＳ６０８に続いて、移動環境制御部１４１は、対象エージェントの現在地を、ステップＳ６０５、Ｓ６０７、又はＳ６０８において移動行動部１３２に対して出力された位置情報によって更新する（Ｓ６０９）。
【００８８】
図１３は、通信環境制御部が実行する処理手順の一例を説明するためのフローチャートである。図１３の処理手順は、図１１のステップＳ５０５において呼び出される。
【００８９】
ステップＳ７０１において、通信環境制御部１４２は、通信行動部１３３から入力された各エージェントＩＤに係るエージェントごとに、当該エージェントの現在地を含む通信範囲をリストアップし、一つの通信範囲のみがリストアップされたエージェントの接続先を当該通信範囲に決定する。なお、いずれの通信範囲にも含まれないエージェントについては、通信範囲はリストアップされない。また、接続端末数に空き（残余）が無い通信範囲は、リストアップされない。
【００９０】
続いて、通信環境制御部１４２は、相互に異なる通信方式に係る複数の通信範囲がリストアップされたエージェントが存在する場合、当該各エージェントについて、予め設定された方針に従って接続先の通信範囲を選択する（Ｓ７０２）。予め設定された方針とは、例えば、ＬＴＥよりＷｉ−Ｆｉ（登録商標）の方を優先して接続する等である。
【００９１】
続いて、通信環境制御部１４２は、同じ通信方式で利用可能な通信範囲が複数リストアップされたエージェントについて、予め設定された方針に従って、一つの通信範囲を選択する（Ｓ７０３）。予め定められた方針とは、例えば、接続端末数の上限に対する残余が相対的に多い通信範囲が優先的に選択される等である。
【００９２】
なお、ステップＳ７０２及びＳ７０３において、現在時間より１単位時間前の時間（ｔ−１）において、既にいずれかの通信範囲に接続していたエージェントについては、当該通信範囲が優先的に選択される。
【００９３】
ステップＳ７０１〜Ｓ７０３の実行の結果、通信範囲ごとに、当該通信範囲に接続するエージェントのエージェントＩＤと要求帯域のリストが生成される。
【００９４】
続いて、通信環境制御部１４２は、接続するエージェント数が接続端末数の上限値を超える通信範囲について、接続するエージェント数が当該上限値以下となるように、ステップＳ７０１〜Ｓ７０３において接続することが決定されたエージェントのうちの一部のエージェントを接続対象から除外する（Ｓ７０４）。この際、現在時間ｔより１単位時間前の時間（ｔ−１）において、当該通信範囲に接続していなかったエージェントが優先的に除外対象として選択される。すなわち、既に通信中であったエージェントが突然通信できなくなるといった状況が回避されるようにする。
【００９５】
続いて、通信環境制御部１４２は、通信範囲ごとに当該通信範囲へ接続することが決定された各エージェントへの単位時間あたりの帯域の割当てを実行する（Ｓ７０５）。具体的には、通信範囲ごとに、当該通信範囲の帯域上限が、予め設定された方式に従って分配され、各エージェントの単位時間あたりの利用可能帯域として割り当てられる。予め設定された方式とは、例えば、通信範囲の帯域の上限を、当該通信範囲に接続する各エージェントの要求帯域で按分することである。帯域の割り当ては、ＵＬ及びＤＬの両方について同様に行われる。
【００９６】
なお、要求帯域が存在するが、通信範囲に接続できなかったエージェントの利用可能帯域は、ＤＬ及びＵＬ共に０とされる。すなわち、いずれの通信範囲にも含まれないエージェントや、ステップＳ７０４において除外されたエージェントの利用可能帯域は０とされる。
【００９７】
続いて、通信環境制御部１４２は、入力とされたエージェントＩＤと要求帯域の組み合せリストにおける要求帯域の部分が、利用可能帯域によって置換されたリストを通信行動部１３３に出力する（Ｓ７０６）。
【００９８】
続いて、図７のステップＳ１０９の詳細について説明する。ステップＳ１０９において、ＡＰＩ１２は、集団行動モデル１３、環境モデル１４、ＭＡＳエンジン１１、及び入力データ記憶部１５の間のデータの授受を仲介し、かつ、ＭＡＳエンジン１１の実行結果を行動ログＬ１として出力する。行動ログＬ１は、エージェントごとに、エージェントＩＤ、時間、現在地（の座標）、動的状態、接続した通信範囲のＩＤ、利用している通信方式、利用している通信アプリ、通信トラヒック量（割り当てられた利用可能帯域）（ＤＬ／ＵＬ）等の項目を含み、単位時間毎に出力データ記憶部１６に記憶される。
【００９９】
続いて、データ変換部１２１が実行する変換処理について説明する。当該変換処理は、図７のステップＳ１０１において実行される。
【０１００】
まず、データ変換部１２１は、移動範囲・目的地データＤ４に設定されている各目的地候補における滞留可能人数ａｒｅａＬｉｍｉｔと、集約数Ｓとを用いて、以下の式（１）を計算する。
ａｒｅａＬｉｍｉｔ'＝ａｒｅａＬｉｍｉｔ／Ｓ      （１）
式（１）を計算することで算出されるａｒｅａＬｉｍｉｔ'は、シミュレーション上における、各目的地候補における滞留可能なエージェント数として用いられる。なお、ａｒｅａＬｉｍｉｔは、目的地候補ごとに設定されている。したがって、ａｒｅａＬｉｍｉｔ'は、目的地候補ごとに算出される。
【０１０１】
ａｒｅａＬｉｍｉｔ'は、例えば、各目的地候補におけるエージェントの滞留の可否の判定に用いられる。具体的には、図１２のステップＳ６０４及びＳ６０６等において、移動環境制御部１４１は、目的地候補が他のエージェントによって塞がれていないかを、当該目的地候補に対するａｒｅａＬｉｍｉｔ'分のエージェントが当該目的地候補に滞留していないか否かに基づいて判定する。
【０１０２】
続いて、データ変換部１２１は、通信アプリデータＤ１について、３段階の変換を行うことで、集団行動モデル用通信アプリデータを生成し、当該集団行動モデル用通信アプリデータを補助記憶装置１０２又はメモリ装置１０３に記憶する。なお、通信アプリデータＤ１には、アプリ使用確率、各通信アプリの一度の利用で通信するトラヒック量、各通信アプリの単位時間あたりの要求帯域等について、エージェントの属性と動的状態の組み合わせの数だけ一人あたりの値が設定されている。集団行動モデル用通信アプリデータは、通信アプリデータＤ１に設定されている一人あたりの値が、１エージェントあたりの値に変換された結果が設定されるデータである。したがって、以下の変換処理は、エージェントの属性と動的状態の組み合わせの数だけ実行される。なお、アプリ使用確率とは、通信アプリが使用される確率をいい、通信発生確率×アプリ選択比率に対応する概念である。
【０１０３】
第１段階（変換（１））として、データ変換部１２１は、各通信アプリについて通信アプリデータＤ１に設定されている、一人あたりの通信トラヒック量（ＤＬ／ＵＬ）ＴＤＬ、ＴＵＬと、一人あたりの単位時間あたりの要求帯域（ＤＬ／ＵＬ）ＢＤＬ、ＢＵＬとを用いて、以下の式（２）によって通信時間Δｔを算出する。
【０１０４】
【数１】
2018133680.tif 000003
【０１０５】
続いて、データ変換部１２１は、Δｔが同じａ個の通信アプリ（アプリ使用確率：ｐ１，…，ｐａ；通信トラヒック量（ＤＬ）：ＴＤＬ＿１，…，ＴＤＬ＿ａ；通信トラヒック量（ＵＬ）：ＴＵＬ＿１，…，ＴＵＬ＿ａ）を、一つの通信アプリとしてまとめる。
【０１０６】
まとめられた通信アプリのアプリ使用確率をｐ'、通信時間をΔｔ'（＝Δｔ）、通信トラヒック量（ＤＬ／ＵＬ）をＴ'ＤＬ、Ｔ'ＵＬとすると、各パラメータは下記の式で算出される。
ｐ'＝（ｐ１＋…＋ｐａ）
Ｔ'ＤＬ＝（ｐ１ＴＤＬ＿１＋…＋ｐａＴＤＬ＿ａ）／ｐ'
Ｔ'ＵＬ＝（ｐ１ＴＵＬ＿１＋…＋ｐａＴＵＬ＿ａ）／ｐ'
なお、第１段階（変換（１））は、省略されてもよい。第１段階（変換（１））を実行するか否かは、ユーザによって予め設定されてもよい。
【０１０７】
第２段階（変換（２））として、データ変換部１２１は、各通信アプリのアプリ使用確率が直前まで通信アプリによる通信が発生していないという条件付きでの確率であるため、単位時間あたりの通信アプリ使用確率に変換する。ここで、第１段階を経てまとめられた通信アプリの総数がｎであるとする。各通信アプリにおける条件付きアプリ使用確率をｐ１，…，ｐｎ、通信時間をΔｔ１，…，Δｔｎとする。また、通信アプリが使用されないケースについて、ｐ０＝１−ｐ１−…−ｐｎ、Δｔ０＝１とする。このとき、単位時間あたりのアプリ使用確率ｐ−１，…，ｐ−ｎは以、下の式で算出される。なお、ｐ−は、数２において、ｐの真上に−が付加された記号として表現されている。
【０１０８】
【数２】
2018133680.tif 000004
なお、単位時間あたりのアプリ使用確率ｐ−１，…，ｐ−ｎに対し、発生トラヒック量Ｔ−ＤＬ、Ｔ−ＵＬ、及び単位時間あたりの要求帯域Ｂ−ＤＬ、Ｂ−ＵＬについては、以下の式で算出される。
Ｔ−ＤＬ＝Ｂ−ＤＬ＝ＢＤＬ
Ｔ−ＵＬ＝Ｂ−ＵＬ＝ＢＵＬ
第３段階（変換（３））として、データ変換部１２１は、単位時間あたりのアプリ使用確率に変換したｎ個の通信アプリの設定に関して、一つの通信アプリとみなしてパラメータをまとめる。パラメータをまとめるアプローチは２通りあり、いずれが採用されるかについては予めユーザによって選択可能である。
【０１０９】
［アプローチ１］
一人あたりの単位時間あたり発生トラヒック量に関する期待値を、第２段階で算出されるパラメータに基づいて第１段階と同様に算出し、それに対して集約数Ｓを乗じる。まとめられた通信アプリの単位時間あたりアプリ使用確率をｐ−'、通信トラヒック量（ＤＬ／ＵＬ）をＴ−'ＤＬ，Ｔ−'ＵＬ、単位時間あたりの要求帯域（ＤＬ／ＵＬ）をＢ−'ＤＬ，Ｂ−'ＵＬとすると、データ変換部１２１は、各パラメータの値を以下の式で算出する。
ｐ−'＝（ｐ−１＋…＋ｐ−ｎ）
Ｔ−'ＤＬ＝Ｂ−'ＤＬ＝Ｓ（ｐ−１Ｔ−ＤＬ＿１＋…＋ｐ−ｎＴ−ＤＬ＿ｎ）／ｐ−'
Ｔ−'ＵＬ＝Ｂ−'ＵＬ＝Ｓ（ｐ−１Ｔ−ＵＬ＿１＋…＋ｐ−ｎＴ−ＵＬ＿ｎ）／ｐ−'
データ変換部１２１は、アプリ使用確率をｐ−'を、通信発生確率とアプリ選択比率とに分解する。アプローチ１では、ａ個の通信アプリがｎ個にまとめられ、ｎ個の通信アプリが１つの通信アプリにまとめられた場合について、アプリ使用確率をｐ−'が算出されている。したがって、当該１つの通信アプリのアプリ選択比率は、１である。よって、アプリ使用確率ｐ−'は、そのまま通信発生確率として利用される。したがって、データ変換部１２１は、当該通信発生確率と、アプリ選択比率（＝１）と、通信トラヒック量Ｔ−'ＤＬ，Ｔ−'ＵＬと、単位時間あたりの要求帯域Ｂ−'ＤＬ，Ｂ−'ＵＬとを集団行動モデル用通信アプリデータ設定する。斯かる集団行動モデル用通信アプリデータが、図１１の処理手順において通信行動部１３３によって用いられる。
【０１１０】
［アプローチ２］
集約数Ｓ人がそれぞれ一人あたりの単位時間あたりアプリ使用確率に従い独立にｎ個の通信アプリのどれかを使用すると考え、全ての組み合わせにおける単位時間あたりアプリ使用確率、通信トラヒック量、および、要求帯域を、第２段階で算出されるパラメータに基づいて算出する。
【０１１１】
まとめられた通信アプリの単位時間あたりアプリ使用確率をｐ−'、通信トラヒック量（ＤＬ／ＵＬ）をＴ−'ＤＬ，Ｔ−'ＵＬ、単位時間あたりの要求帯域（ＤＬ／ＵＬ）をＢ−'ＤＬ，Ｂ−'ＵＬとすると、データ変換部１２１は、これらのパラメータの値を、各通信アプリを利用する人の数の組み合わせｋ０、…、ｋｎ（ｋ０は、通信アプリを使用しなかった人の数）を変数として、以下の式によって算出する。
Ｔ−'ＤＬ＝Ｂ−'ＤＬ＝ｋ１Ｔ−ＤＬ＿１＋…＋ｋｎＴ−ＤＬ＿ｎ
Ｔ−'ＵＬ＝Ｂ−'ＵＬ＝ｋ１Ｔ−ＵＬ＿１＋…＋ｋｎＴ−ＵＬ＿ｎ
【０１１２】
【数３】
2018133680.tif 000005
なお、ｋ０，…，ｋｎの組み合わせは、全部でＳ＋ｎＣｎ通りとなる。
【０１１３】
また、データ変換部１２１は、ｋ０，…，ｋｎの組み合わせに対するアプリ使用確率も、以下の式によって算出する。なお、ｐ−は、数４において、ｐの真上に−が付加された記号として表現されている。
【０１１４】
【数４】
2018133680.tif 000006
アプローチ２において、データ変換部１２１は、ｋ０，…，ｋｎの組み合わせＳ＋ｎＣｎだけ通信アプリがあるとみなして、通信発生確率、各通信アプリのアプリ選択比率、通信トラヒック量、要求帯域を集団行動モデル用通信アプリデータに設定する。ここで、通信発生確率は、数４の全通りの算出結果の総和である。各通信アプリの選択比率は、通信アプリごとの数４の算出結果の比率である。斯かる集団行動モデル用通信アプリデータが、図１１の処理手順において通信行動部１３３によって用いられる。
【０１１５】
次に、本実施の形態によるトラヒック予測の結果について以下に説明する。当該トラフィック予測では、２０００人のモバイル端末ユーザによるイベントトラヒック発生について、ユーザ行動モデル（モバイル端末ユーザ１人を１個のエージェントとした場合（すなわち、集約数Ｓ＝１）のモデル）を用いてシミュレートした結果に対し、集団行動モデルによりモバイル端末ユーザ２人を１個のエージェントとして１０００個のエージェントでシミュレートした近似結果と比較する。
【０１１６】
各モデル（ユーザ行動モデル、集団行動モデル）には、５：００以降駅より活動を開始、１０時まで待機エリアに滞留、１０時以降、物販エリアでのグッズ購入を想定した主目的のタスクと、休憩／コスプレ見学／物販エリアでの回遊等を想定した副目的のタスクを順に遂行し、全タスク達成またはイベント終了時間を超えたら駅に移動して行動を終了するというシナリオを設定した。
【０１１７】
対象とするイベント会場周辺の情報を図１４に示す。集団行動モデルにおける集約数Ｓは２となるため、目的地候補に滞留可能な座標数はユーザ行動モデルを用いた場合に対して１／２の数となる。
【０１１８】
通信アプリは、３秒間通信するアプリＡと２秒間通信するアプリＢとの２種類を用意し、集団行動モデルでは通信アプリデータの変換（３）をアプローチ１で実施した通信発生確率と発生トラヒック量が設定されている。
【０１１９】
図１５は、シミュレーション範囲内における、各モデルを用いた場合の総ＤＬトラヒック量を示す図である。図１５から、ユーザ行動モデルを用いた２、０００個のエージェントによるシミュレーション結果に対し、集団行動モデルを用いることで少ないエージェントで近似結果を算出することが出来ていることが分かる。
【０１２０】
上述したように、本実施の形態によれば、これまでに実施経験のないイベント（将来イベント）を対象とした場合に発生すると見込まれるイベントトラヒックのピーク値を時空間レベルで予測することが可能となる。
【０１２１】
これにより、従来、将来イベントを対象としたイベントトラヒック対策において、イベント時に発生するトラヒック量を過少に見積もることによる通信品質の劣化、又は、過大に見積もることによる通信リソースの配備に要するコストの過剰投入の可能性が低下する効果が期待される。
【０１２２】
また、配備可能な通信リソース量が不足する場合においても、イベントトラヒックの予測結果を基に通信リソースの配置変更および制御に関するスケジュールを事前に計画することで、イベント当日の通信品質劣化が発生する可能性を抑える効果が見込まれる。
【０１２３】
更に、本実施の形態では、１エージェントに複数人を集約することができる。すなわち、人数がｎ人の時の予測結果を、ｎ／ｍ（１≦ｍ＜ｎ）のエージェント数で近似することができる。したがって、大規模イベントを対象とした場合、イベントのスケールに合わせて個々のモバイル端末ユーザをエージェントとしてシミュレートすることで膨大な計算時間を要し、予測値を得られなくなるといった可能性を低下させることができる。
【０１２４】
なお、本実施の形態において、シミュレータ装置１０は、トラヒック予測装置の一例である。データ変換部１２１は、変換部の一例である。アプリ選択比率は、選択比率の一例である。アプリ使用確率は、使用確率の一例である。補助記憶装置１０２又はメモリ装置１０３は、記憶部の一例である。
【０１２５】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【０１２６】
１０          シミュレータ装置
１１          ＭＡＳエンジン
１２          ＡＰＩ
１３          集団行動モデル
１４          環境モデル
１５          入力データ記憶部
１６          出力データ記憶部
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
１２１        データ変換部
１２２        行動ログ出力部
１３１        目的管理部
１３２        移動行動部
１３３        通信行動部
１３４        経路計算部
１４１        移動環境制御部
１４２        通信環境制御部
Ｂ            バス
Ｄ１          通信アプリデータ
Ｄ２          エージェントデータ
Ｄ３          通信範囲データ
Ｄ４          移動範囲・目的地データ
Ｌ１          行動ログ
【図１】
2018133680.tif 000007
【図２】
2018133680.tif 000008
【図３】
2018133680.tif 000009
【図４】
2018133680.tif 000010
【図５】
2018133680.tif 000011
【図６】
2018133680.tif 000012
【図７】
2018133680.tif 000013
【図８】
2018133680.tif 000014
【図９】
2018133680.tif 000015
【図１０】
2018133680.tif 000016
【図１１】
2018133680.tif 000017
【図１２】
2018133680.tif 000018
【図１３】
2018133680.tif 000019
【図１４】
2018133680.tif 000020
【図１５】
2018133680.tif 000021