(57)【要約】【課題】テーマパークにおける待ち時間を精度良く推定することができる待ち時間予測装置、待ち時間予測方法、及び待ち時間予測プログラムを提供する。【解決手段】テーマパークにおけるアトラクションの複数の巡回ルートを入力とし、テーマパークにおけるユーザの行動を再現するテーマパークシミュレータを実行し、テーマパークシミュレータの実行結果に基づいて、各アトラクションについて、時間帯毎の待ち人数を表すヒストグラムを生成し、各アトラクションのヒストグラムを表すベクトルを生成する。また、生成されたベクトルと、ベクトルに基づいてユーザの待ち時間の平均値又は最大値を予測するための予め学習された予測モデルとに基づいて、複数の巡回ルートのユーザの待ち時間の平均値又は最大値を予測する。【選択図】図５
2018073361.tif 000002
【特許請求の範囲】
【請求項１】
テーマパークにおけるアトラクションの複数の巡回ルートを入力とし、前記テーマパークにおけるユーザの行動を再現するテーマパークシミュレータを実行し、前記テーマパークシミュレータの実行結果に基づいて、各アトラクションについて、時間帯毎の待ち人数を表すヒストグラムを生成し、各アトラクションのヒストグラムを表すベクトルを生成するヒストグラム作成実行部と、
前記ヒストグラム作成実行部によって生成された前記ベクトルと、前記ベクトルに基づいてユーザの待ち時間の平均値又は最大値を予測するための予め学習された予測モデルとに基づいて、前記複数の巡回ルートのユーザの待ち時間の平均値又は最大値を予測する待ち時間予測部と、
を含む待ち時間予測装置。
【請求項２】
前記ヒストグラム作成実行部は、前記テーマパークシミュレータを実行する際に、前記複数の巡回ルートに基づいて、ユーザの行動待機時刻が早い順に、ユーザを対象とし、前記ユーザが搭乗するアトラクションの待ち時間及び実行時間を加算して、前記ユーザの行動待機時間を更新すると共に、前記ユーザが前記アトラクションの搭乗待ちをしている場合、前記アトラクションの対応する時間帯における待ち人数をカウントアップすることを繰り返すことにより、各アトラクションについて、前記ヒストグラムを生成する
請求項１記載の待ち時間予測装置。
【請求項３】
前記ヒストグラムの各時間帯の時間幅、又は各時間帯の分割数を設定する入力初期設定処理部を更に備えた
請求項１又は２記載の待ち時間予測装置。
【請求項４】
ヒストグラム作成実行部、及び待ち時間予測部を含む待ち時間予測装置における待ち時間予測方法であって、
前記ヒストグラム作成実行部が、テーマパークにおけるアトラクションの複数の巡回ルートを入力とし、前記テーマパークにおけるユーザの行動を再現するテーマパークシミュレータを実行し、前記テーマパークシミュレータの実行結果に基づいて、各アトラクションについて、時間帯毎の待ち人数を表すヒストグラムを生成し、各アトラクションのヒストグラムを表すベクトルを生成するステップと、
前記待ち時間予測部が、前記ヒストグラム作成実行部によって生成された前記ベクトルと、前記ベクトルに基づいてユーザの待ち時間の平均値又は最大値を予測するための予め学習された予測モデルとに基づいて、前記複数の巡回ルートのユーザの待ち時間の平均値又は最大値を予測するステップと、
を行う待ち時間予測方法。
【請求項５】
コンピュータを、請求項１〜３の何れか１項記載の待ち時間予測装置の各部として機能させるための待ち時間予測プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テーマパークにおける巡回ルートと待ち時間の関係式を推定する待ち時間予測装置、待ち時間予測方法、及び待ち時間予測プログラムに関する。
【背景技術】
【０００２】
近年、スマートフォン、ソーシャルメディア等の普及により様々な構造のデータが入手できるようになった。このようなデータとしては、例えば、滞在地をノードとし、道路ネットワークをエッジとするグラフ構造で表現される滞在履歴データ、文字列で表現されるブログ等の文書データ等が例示される。これらのデータを分析することで、自分がいる付近の飲食店を推薦するサービス等、多くのサービスが提供されている。
【０００３】
文書、グラフ等の構造化されたデータ分析する手法として、カーネル法が注目されている。カーネル法は、複数のデータ間の“類似度”（カーネル関数）を定義することにより、データ分析を行う手法であり、多くの分野でその有用性が確かめられている。カーネル関数は、データの特徴を反映し、ベクトルで表現した特徴ベクトルを作成し、その内積を取ることで定義される。このカーネル関数は、問題、目的等に応じて変更することが可能であるが、カーネル関数の選択によっては分析結果の解釈が難しくなることもあり、その選択には注意が必要である。そのため、グラフデータを分析する際はグラフカーネルを用い、文書データを分析する際は文字列カーネルを用いる等、データ構造に応じたカーネルが用いられることが多い（非特許文献１及び２参照）。
【０００４】
一方、テーマパークにおけるユーザの巡回ルートのように、所定の複数人のユーザが施設を巡回する順序（以下、「巡回ルート」という）のデータが与えられた際に、待ち時間を分析したい場合がある。例えば、所定の巡回ルートに対するアトラクション待ち時間を予測したい場合がある。
【０００５】
なお、所定の巡回ルートに対する待ち時間のデータは、テーマパークを模したシミュレータ（以下、「テーマパークシミュレータ」という）から得られる。テーマパークシミュレータは、ユーザの巡回ルートを入力すると、アトラクション待ち時間を出力する。このようなシミュレータには、ユーザの移動速度、各アトラクションの実行時間、アトラクション間距離、混んでいたらユーザの移動速度が遅くなる、といったユーザ間相互作用が設定される。
【０００６】
ここで、図９に、２人のユーザが３つのアトラクションを利用する場合のテーマパークシミュレータの例を示した。また、図１０に、シミュレータの入力である巡回ルートと、シミュレータの出力である平均待ち時間の関係を示した。図１０では、縦軸がユーザ番号を表し、横軸が時間を表し、ユーザが各アトラクションに乗っている時間をそれぞれアトラクション毎に分けて図示している。また、図１０のドット領域は、待ち時間を表している。なお、後述する図２、図３、図８、及び図１２についても同様に、ドット領域は、待ち時間を表している。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】Hisashi Kashima, Koji Tsuda, and Akihiro Inokuchi. Marginalized kernels between labeled graphs. In Proceedings of the International Conference on Machine Learning, pages 321-328, San Francisco, CA, 2003. Morgan Kaufmann.
【非特許文献２】H.Lodhi, C.Saunders, J.Shawe-Taylor, N.Cristianini and C.Watkins "Text classification using string kernels" JMLR, vol.2, pp.419-444 (2002).
【非特許文献３】Nello Cristianini，John Shawa-Taylor，大北剛(訳)：カーネル法 によるパターン解析(2010).
【発明の概要】
【発明が解決しようとする課題】
【０００８】
所定の巡回ルートに対し、アトラクション待ち時間を予測することを考えた場合、そのルートをシミュレータに入力し、アトラクション待ち時間を得る方法を用いることが一般的である。しかしながら、シミュレータはユーザの歩行速度、アトラクション間距離、混んでいたら速度が遅くなる、といったユーザ間相互作用を考慮するため、１度の実行に非常に時間がかかってしまう。そのため、全ての巡回ルートに対して出力結果を得ることは現実的に不可能である。
【０００９】
そこで、巡回ルートに対し、アトラクション待ち時間を予測するような予測モデルを構築することを考える。先に述べたように、データ構造に応じて適切にカーネル関数を決めることは非常に重要である。言い換えると、待ち時間を予測するために必要な特徴量を持った特徴ベクトルを巡回ルートから構成することが重要である。また、カーネル法において予測モデルを構築する場合、類似した特徴ベクトルに対し、類似した出力となるように特徴ベクトルを設計することが予測精度を向上させる上では重要である。
【００１０】
巡回ルートのような系列データを扱う場合に用いられるカーネル関数として、下記（１）式で表される線形カーネルがある（非特許文献３参照）。
【００１１】
【数１】
2018073361.tif 000003
…（１）
【００１２】
ここで、上記（１）式のｘ，ｙは、図１１に示すように、ユーザの巡回ルートをそのままユークリッド空間に射影した特徴ベクトルを意味する。これは、巡回ルートからベクトルに変換する際に、“アトラクションの巡回順序”を特徴として抽出していると考えることができる。
【００１３】
しかしながら、線形カーネルを用いることは、巡回ルートと平均待ち時間との関係性を推定するには不適切である。ここで、その不適切な理由を示すために、図１２に示すような２つの巡回ルートＲ、Ｒ’を考える。この２つのルートは線形カーネルの意味で、特徴ベクトルの第４成分が違っているだけでその他の成分が全て一致しており、類似度は高くなっている。しかしながら、出力結果は，ドット領域の面積を比較すればわかるように、巡回ルートＲ’の待ち時間は巡回ルートＲの待ち時間の約３倍になっている。
【００１４】
このことから、アトラクションの巡回順序を特徴とする従来の線形カーネルでは、類似する特徴ベクトルに対し、類似の出力結果が得られないため、待ち時間の分析に不適切だということがわかる。すなわち、従来の線形カーネルではユーザの“アトラクション巡回順序“のみに着目し、待ち時間を分析するために必要な特徴を特徴ベクトルに反映できていない、という課題があった。
【００１５】
本発明は、以上のような事情に鑑みてなされたものであり、テーマパークにおける待ち時間を精度良く推定することができる待ち時間予測装置、待ち時間予測方法、及び待ち時間予測プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１６】
上記目的を達成するために、本発明の待ち時間予測装置は、テーマパークにおけるアトラクションの複数の巡回ルートを入力とし、前記テーマパークにおけるユーザの行動を再現するテーマパークシミュレータを実行し、前記テーマパークシミュレータの実行結果に基づいて、各アトラクションについて、時間帯毎の待ち人数を表すヒストグラムを生成し、各アトラクションのヒストグラムを表すベクトルを生成するヒストグラム作成実行部と、前記ヒストグラム作成実行部によって生成された前記ベクトルと、前記ベクトルに基づいてユーザの待ち時間の平均値又は最大値を予測するための予め学習された予測モデルとに基づいて、前記複数の巡回ルートのユーザの待ち時間の平均値又は最大値を予測する待ち時間予測部と、を備える。
【００１７】
なお、本発明の待ち時間予測装置において、前記ヒストグラム作成実行部は、前記テーマパークシミュレータを実行する際に、前記複数の巡回ルートに基づいて、ユーザの行動待機時刻が早い順に、ユーザを対象とし、前記ユーザが搭乗するアトラクションの待ち時間及び実行時間を加算して、前記ユーザの行動待機時間を更新すると共に、前記ユーザが前記アトラクションの搭乗待ちをしている場合、前記アトラクションの対応する時間帯における待ち人数をカウントアップすることを繰り返すことにより、各アトラクションについて、前記ヒストグラムを生成するようにしても良い。
【００１８】
また、本発明の待ち時間予測装置において、前記ヒストグラムの各時間帯の時間幅、又は各時間帯の分割数を設定する入力初期設定処理部を更に備えるようにしても良い。
【００１９】
上記目的を達成するために、本発明の待ち時間予測方法は、ヒストグラム作成実行部、及び待ち時間予測部を含む待ち時間予測装置における待ち時間予測方法であって、前記ヒストグラム作成実行部が、テーマパークにおけるアトラクションの複数の巡回ルートを入力とし、前記テーマパークにおけるユーザの行動を再現するテーマパークシミュレータを実行し、前記テーマパークシミュレータの実行結果に基づいて、各アトラクションについて、時間帯毎の待ち人数を表すヒストグラムを生成し、各アトラクションのヒストグラムを表すベクトルを生成するステップと、前記待ち時間予測部が、前記ヒストグラム作成実行部によって生成された前記ベクトルと、前記ベクトルに基づいてユーザの待ち時間の平均値又は最大値を予測するための予め学習された予測モデルとに基づいて、前記複数の巡回ルートのユーザの待ち時間の平均値又は最大値を予測するステップと、を行う。
【００２０】
上記目的を達成するために、本発明の文書分類プログラムは、コンピュータを、上記待ち時間予測装置の各部として機能させるためのプログラムである。
【発明の効果】
【００２１】
本発明によれば、テーマパークにおける待ち時間を精度良く推定することができる。
【図面の簡単な説明】
【００２２】
【図１】実施形態に係る待ち時間予測装置における疑似待ち人数ヒストグラムの概要を説明するための説明図である。
【図２】本実施形態に係る待ち時間予測装置における疑似待ち人数ヒストグラムの作成方法を説明するための説明図である。
【図３】本実施形態に係る待ち時間予測装置における疑似待ち人数ヒストグラムの作成方法を説明するための説明図である。
【図４】本実施形態に係る待ち時間予測装置において推定された待ち人数、及び、既存手法で推定された待ち人数について、シミュレーションで得られた待ち人数に対する誤差で評価した評価結果を示す説明図である。
【図５】実施形態に係る待ち時間予測装置の機能構成を示すブロック図である。
【図６】実施形態に係る待ち時間予測装置により実行される待ち時間予測処理の流れを示すフローチャートである。
【図７】実施形態に係る待ち時間予測装置により実行される疑似待ち人数ヒストグラム作成処理の流れを示すフローチャートである。
【図８】実施形態に係る待ち時間予測装置により実行される疑似待ち人数ヒストグラム作成処理について説明するための説明図である。
【図９】テーマパークシミュレータの概略について説明するための説明図である。
【図１０】テーマパークにおける巡回ルートと待ち時間との対応関係を示す模式図である。
【図１１】線形カーネルと特徴ベクトルとの関係を示す模式図である。
【図１２】線形カーネルを用いることが、巡回ルートと平均待ち時間との関係性を推定するには不適切な理由を説明するための模式図である。
【発明を実施するための形態】
【００２３】
本実施形態に係る待ち時間予測装置は、テーマパークにおいて“アトラクションの待ち人数”を考慮したカーネル関数を用いることで、待ち時間の予測を高精度に行う。
【００２４】
具体的には、図１に示すように、ユーザの巡回ルートを“アトラクション毎の待ち人数のヒストグラム”に変換し、複数のタイムスケールで分割することで特徴ベクトルを得る。
【００２５】
このように、“アトラクション毎の待ち人数”をベクトル表現することで、ユーザが何人待っていたのかという情報を考慮することができる。また、待ち人数のヒストグラムが類似していれば待ち時間も類似すると考えられるため、カーネル関数の意味で類似した巡回ルートが、類似した待ち時間の出力値を与えることが可能となると考えられる。
【００２６】
以下、図１に示すように、ユーザの巡回ルートから待ち人数のヒストグラムを作成する手法について説明する。なお、ユーザが最初に乗るアトラクションに到着する時刻、希望搭乗アトラクション、各アトラクション体験時間は既知とする。また、巡回ルートのデータからユーザの歩行速度、及びユーザ間相互作用を考えることは難しいため、待ち人数のヒスグラムを作成する際にはユーザの歩行速度を無視し、アトラクション間の移動時間を０とする。
【００２７】
以下、巡回ルートをシミュレータに入力することで得られた正確な待ち人数のヒストグラムをベクトル変換したものを“待ち人数ヒストグラム”と呼び、下記手法により疑似的にベクトル変換した待ち人数のヒストグラムを“疑似待ち人数ヒストグラム”と呼ぶことにより、各々のヒストグラムを使い分ける。
【００２８】
本実施形態では、アトラクション数を３とし、ユーザ数を２とした場合について説明するが、これに限らず、アトラクション数及びユーザ数を任意に設定した場合にも同様の処理を行うことができる。
【００２９】
まず初めに、ユーザ１人ずつの行動について考えるため、各ユーザに対し、行動待機時刻ＴＵｉという時刻を定義する。行動待機時刻ＴＵｉは、ユーザｉのアトラクション搭乗終了時刻を表しており、アトラクションへの搭乗が終了する毎に更新される。なお、疑似待ち人数ヒストグラムの作成開始時の各ユーザの行動待機時刻ＴＵｉは、テーマパークへの到着時刻とする。
【００３０】
行動待機時刻ＴＵｉが最も早いユーザについて考える。例えば、図２の（ａ）では、行動待機時刻ＴＵｉが最も早いユーザはユーザ１であるため、ユーザ１について考える。ユーザ１は、自分より前にユーザがいないため、図２の（ｂ）に示すように、待ち時間なくアトラクション１に乗ることができる。そして、ユーザ１の行動待機時刻ＴＵ１がアトラクション１の搭乗終了時刻になるように、ユーザ１の行動待機時刻ＴＵ１を更新する。
【００３１】
次に、図２の（ｂ）において行動待機時刻ＴＵｉが最も早いユーザ２について考える。ユーザ２は、アトラクション１に乗ろうとしているが、アトラクション１にはユーザ１が既に搭乗しているため、図２の（ｃ）に示すように、ユーザ１の搭乗が終了するのを待ってからアトラクション１に乗ることにとなる。以後も同様に、行動待機時刻ＴＵｉが最も早いユーザ１を選択し、図２の（ｄ）に示すように、待ち時間を考慮した上でアトラクション２の搭乗時間を加える。また、行動待機時刻ＴＵｉが最も早いユーザ２を選択し、図２の（ｅ）に示すように、待ち時間を考慮した上でアトラクション２の搭乗時間を加える。さらに、行動待機時刻ＴＵｉが最も早いユーザ１を選択し、図２の（ｆ）に示すように、待ち時間を考慮した上でアトラクション３の搭乗時間を加える。そして、行動待機時刻ＴＵｉが最も早いユーザ２を選択し、図２の（ｇ）に示すように、待ち時間を考慮した上でアトラクション１の搭乗時間を加える。
【００３２】
このような処理を順次繰り返していくことによって、巡回ルートと待ち人数との関係図を描くことができる。そして、この関係図をもとに、図３に示すように、各アトラクションの待ち人数をヒストグラムにすることで、疑似待ち人数ヒストグラムを描くことができる。
【００３３】
最後に、疑似待ち人数ヒストグラムを予め定めた時間帯毎に、又は予め定めた分割数で分割することでベクトル表現することができる。図３では、分割数を３としてベクトル表現を行った場合について示している。 
【００３４】
以上の方法によって巡回ルートをベクトルに変換し、内積を取ったものが、巡回ルートカーネルである。
【００３５】
ここで、実際にテーマパークシミュレータから得られたデータを用いて、本実施形態に係る待ち時間予測装置１で予測された待ち時間と、テーマパークシミュレータから得られた待ち時間とを比較する検証を行った。予測精度の確認をするために、既存手法と本実施形態の手法とで、それぞれのカーネル関数よって予測モデルを作成し、それぞれの手法でモデルに巡回ルートを入力することで得られた予測値と、テーマパークシミュレータに巡回ルートを入力することで実際に得られた実測値との誤差を評価した。
【００３６】
具体的には、下記（２）式に示すように、ランダムに選択した巡回ルートと、巡回ルートをシミュレーションに入力することで得られた１００個の待ち時間の組Ｗをモデル構築用データとした。また、下記（３）式に示すように、１０個のランダムな巡回ルートＲｔｅｓｔをテストデータとした。
【数２】
2018073361.tif 000004
…（２）
【数３】
2018073361.tif 000005
…（３）
【００３７】
評価指標には、下記（４）式で表される誤差指標を用いた。ここで、Rｉｔｅｓｔは、待ち時間の予測を行いたい巡回ルートを表す。また、ｆ（Ｒｉｔｅｓｔ）は、シミュレータにRｉｔｅｓｔを入力することで得られた待ち時間を表す。また、ｐｒｅｄ（Ｒｉｔｅｓｔ）は、それぞれのモデルによる巡回ルートRｉｔｅｓｔの予測値を表す。
【００３８】
【数４】
2018073361.tif 000006
…（４）
【００３９】
上記誤差を評価した結果を図４に示した。図４に示すように、テーマパークシミュレータで得られた実測値に対する誤差は、本実施形態の手法の巡回ルートカーネルによる予測値では４．８４８であり、既知手法の巡回ルートカーネルによる予測値では７．９６７であった。よって、本実施形態の手法の巡回ルートカーネルでは、既知手法の巡回ルートカーネルと比較し、予測値と実測値との誤差が小さく、待ち時間を高精度に推定できていることが確認できた。
【００４０】
このように、本実施形態では、待ち時間を分析するために必要な特徴量を考慮できていないという課題に対し、待ち人数情報を考慮することができる疑似待ち人数ヒストグラムを用いることで、ある巡回ルートにおけるアトラクション待ち時間の高精度な推定が可能となり、混雑状況の正確な予測が期待される。
【００４１】
以下、本実施形態に係る待ち時間予測装置１の構成について詳細に説明する。図５は、本実施形態に係る待ち時間予測装置１の機能構成を示すブロック図である。
【００４２】
図５に示すように、待ち時間予測装置１は，モデリングデータ処理部１０、モデル構築部２０、初期設定処理部３０、データ記憶部４０、ヒストグラム作成実行部５０、及び、予測結果処理部６０を含んで構成されている。また、モデリングデータ処理部１０、初期設定処理部３０、及びデータ記憶部４０はそれぞれ、入力装置、表示装置等の外部装置２に接続されている。
【００４３】
モデリングデータ処理部１０は、外部装置２により入力された、モデル構築のための待ち人数ヒストグラムと、アトラクション待ち時間のデータと、をモデル構築部２０のモデリングデータテーブル２１に設定する。
【００４４】
モデル構築部２０は、モデリングデータテーブル２１、及び待ち時間予測部２２を有し、モデリングデータテーブル２１に設定された待ち人数ヒストグラムと、アトラクション待ち時間のデータに対し、ガウス過程を適応することで、待ち人数ヒストグラムを表すベクトルに基づいてアトラクション待ち時間のデータを予測するための予測モデルの構築を行う。
【００４５】
待ち時間予測部２２は、ヒストグラム作成実行部５０によって生成されたベクトルと、予め学習された予測モデルとに基づいて、複数の巡回ルートの各々のユーザの待ち時間データを予測する。
【００４６】
以下、モデリングデータテーブル２１について説明する。
【００４７】
＜モデリングデータテーブル２１＞
【００４８】
モデリングデータテーブル２１は、モデリングデータフィールドを有する。モデリングデータフィールドは、モデリングデータ処理部１０により入力された、事前にシミュレータによって得られた待ち人数ヒストグラム、及び待ち時間のデータが設定される。
【００４９】
初期設定処理部３０は、外部装置２により入力された、ヒストグラム幅（時間帯の幅）ｄ、各アトラクションの実行時間、アトラクション総数Ａ、及び、ユーザｉの到着時刻（行動待機時刻ＴＵｉ）をデータ記憶部４０の初期設定テーブル４１に設定する。
【００５０】
データ記憶部４０は、初期設定テーブル４１、疑似ヒストグラムテーブル４２、及び、予測結果テーブル４３を有する。以下、それぞれのテーブルについて説明する。
【００５１】
＜初期設定テーブル４１＞
【００５２】
初期設定テーブル４１は、ヒストグラム分割数フィールドを有する。ヒストグラム分割フィールドは、初期設定処理部３０により入力されたヒストグラムを何次元のベクトルにするかといった分割数が設定される。
【００５３】
＜疑似ヒストグラムテーブル４２＞
【００５４】
疑似ヒストグラムテーブル４２は、ヒストグラム作成実行部５０により入力された疑似待ち人数ヒストグラムが設定される。
【００５５】
＜予測結果テーブル４３＞
【００５６】
予測結果テーブル４３は、待ち時間予測部２２により入力された疑似待ち人数ヒストグラムに対する予測結果が設定される。
【００５７】
ヒストグラム作成実行部５０は、行動待機時刻テーブル５１を有し、テーマパークにおけるアトラクションの複数の巡回ルートを入力とし、テーマパークにおけるユーザの行動を再現するテーマパークシミュレータを実行し、テーマパークシミュレータの実行結果に基づいて、各アトラクションについて、時間帯毎の待ち人数を表すヒストグラムを生成し、各アトラクションのヒストグラムを表すベクトルを生成する。具体的には、テーマパークシミュレータを実行する際に、複数の巡回ルートに基づいて、ユーザの行動待機時刻が早い順に、ユーザを対象とし、ユーザが搭乗するアトラクションの待ち時間及び実行時間を加算して、ユーザの行動待機時間を更新すると共に、ユーザがアトラクションの搭乗待ちをしている場合、当該アトラクションの対応する時間帯における待ち人数をカウントアップすることを繰り返すことにより、各アトラクションについて、ヒストグラムを生成する。
【００５８】
＜行動待機時刻テーブル５１＞
【００５９】
行動待機時刻テーブル５１は、データ記憶部４０より入力された最初のアトラクション到着時刻がユーザ毎に設定される。
【００６０】
予測結果処理部６０は、データ記憶部４０により入力された、予測結果を外部装置２に出力する。
【００６１】
なお、本実施形態に係る待ち時間予測装置１は、例えば、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、各種プログラムを記憶するＲＯＭ（Read Only Memory）を備えたコンピュータ装置で構成される。また、待ち時間予測装置１を構成するコンピュータは、ハードディスクドライブ、不揮発性メモリ等の記憶部を備えていても良い。本実施形態では、ＣＰＵがＲＯＭ、ハードディスク等の記憶部に記憶されているプログラムを読み出して実行することにより、上記のハードウェア資源とプログラムとが協働し、上述した機能が実現される。
【００６２】
ここで、本実施形態に係る待ち時間予測装置１が実行する全体的な処理について説明する。本実施形態では，巡回ルートと待ち時間の関係式を正確に近似し、所定の巡回ルートにおける待ち時間を予測することを考える。
【００６３】
なお、本実施形態では、初めに、モデルを構築するためには巡回ルートから得られる疑似待ち人数ヒストグラムと、巡回ルートとを、テーマパークシミュレータに入力することで得られる、アトラクション待ち時間のデータが必要となるが、それらのモデル構築のために必要となるデータは、事前に得られているものとする。
【００６４】
（ステップ１）では、ヒストグラム作成実行部５０が、事前に得られている疑似待ち人数ヒストグラム、及び待ち時間のデータに対しガウス過程を用いることで、疑似待ち人数ヒストグラムと待ち時間の関係をモデル化する。
【００６５】
（ステップ２）では、モデル構築部２０が、待ち時間を予測したい巡回ルートを入力し、入力した巡回ルートに対して、疑似待ち人数ヒストグラムを作成する。
【００６６】
（ステップ３）では、（ステップ２）で作成した疑似待ち人数ヒストグラムを、（ステップ１）で作成したモデルに入力することで、モデルの予測値としての待ち時間を出力する。
【００６７】
次に、本実施形態に係る待ち時間予測装置１が実行する待ち時間予測処理について、図６のフローチャートを参照して詳細に説明する。 
【００６８】
本実施形態では、待ち時間予測装置１が疑似待ち人数ヒストグラム作成処理を実行するタイミングは、例えば、使用者が外部装置２から疑似待ち人数ヒストグラム作成処理の実行を指示したタイミングとする。
【００６９】
ステップＳ２０１では、モデリングデータ処理部１０が、外部装置２により入力された、モデル構築のための待ち人数ヒストグラムと、アトラクション待ち時間のデータと、をモデル構築部２０のモデリングデータテーブル２１に設定する。
【００７０】
ステップＳ２０３では、モデル構築部２０が、モデリングデータテーブル２１に設定された待ち人数ヒストグラムと、アトラクション待ち時間のデータに対し、ガウス過程を適応することで予測モデルの構築を行う。
【００７１】
ステップＳ２０５では、初期設定処理部３０が、外部装置２により入力された、ヒストグラム幅（時間帯の幅）ｄ、各アトラクションの実行時間、アトラクション総数Ａ、及び、ユーザｉの到着時刻（行動待機時刻ＴＵｉ）をデータ記憶部４０の初期設定テーブル４１に設定する。
【００７２】
ステップＳ２０７では、ヒストグラム作成実行部５０が、以下の方法で、データ記憶部４０の疑似ヒストグラムテーブル４２に入力する疑似ヒストグラムを決定する。図７に、本実施形態に係る待ち時間予測装置１が実行する疑似待ち人数ヒストグラム作成処理の流れを示すフローチャートを示した。
【００７３】
ステップＳ３０１では、ヒストグラム作成実行部５０が、下記（３）式に示すように、行動待機時刻ＴＵｉが最も早いユーザＵａｃｔを選出する。なお、下記（３）式では、全ユーザをＵａｌｌとしている。
【００７４】
【数５】
2018073361.tif 000007
…（５）
【００７５】
ステップＳ３０３では、ヒストグラム作成実行部５０が、図８に示すように、下記（４）式に従ってユーザＵａｃｔの現在の行動待機時刻ＴＵｉをＴＵｉｔｍｐに設定し、次にＵａｃｔが搭乗するアトラクションｉと待ち時間とを考慮した上で搭乗終了時刻を算出し、下記（５）式に従って行動待機時刻ＴＵｉを更新する。なお、下記（５）式では、アトラクションｉの待ち時間をＴ１ｉとし、アトラクションｉの実行時間をＴ２ｉとする
【００７６】
【数６】
2018073361.tif 000008
…（６）
【００７７】
【数７】
2018073361.tif 000009
…（７）
【００７８】
次に、下記（６）式に従って、ユーザＵａｃｔの時刻ＴＵｉｔｍｐから時刻ＴＵａｃｔまでのアトラクションの待ち状態をヒストグラムとして表現する。
【００７９】
【数８】
2018073361.tif 000010
…（８）
【００８０】
ステップＳ３０５では、ヒストグラム作成実行部５０が、全てのユーザの全ての搭乗アトラクションに対し、上記ステップＳ３０１及びＳ３０３の処理を終えたか否かを判定する。ステップＳ３０５で上記処理を終えたと判定した場合（Ｓ３０５，Ｙ）はステップＳ３０７に移行し、上記処理を終えていないと判定した場合（Ｓ３０５，Ｎ）はステップＳ３０１に移行する。
【００８１】
ステップＳ３０７では、ヒストグラム作成実行部５０がステップＳ３０５までで得られた、各ユーザのアトラクションの待ち状態に関するヒストグラムを、下記（７）式に従ってアトラクション毎に和を取ることで、各アトラクションｉの待ち人数ヒストグラムＨｉ（ｔ）を作成する。
【００８２】
【数９】
2018073361.tif 000011
…（９）
【００８３】
ステップＳ３０９では、ヒストグラム作成実行部５０が、下記（８）式に従って、アトラクションの待ち人数ヒストグラムＨｉ（ｔ）をｄ次元ベクトル化する。ここで、Ｔは最初のユーザが到着してから全ユーザがアトラクションを乗り終わるまでにかかった時間とする。なお、ｄは、上述したように、初期設定処理部３０により入力されたヒストグラム幅である。
【００８４】
【数１０】
2018073361.tif 000012
…（１０）
【００８５】
ステップＳ３１１では、上記ステップＳ２１５で算出した各アトラクションの待ち人数ｄ次元ベクトルを、下記（９）式のように並べることで、全アトラクションの待ち人数ヒストグラムベクトルを構築する。なお、下記（９）式におけるＡは、上述したように、初期設定処理部３０により入力されたアトラクションの総数である。
【００８６】
【数１１】
2018073361.tif 000013
…（１１）
【００８７】
ステップＳ２０９では、モデル構築部２０の待ち時間予測部２２が、疑似ヒストグラムテーブルにより入力された疑似ヒストグラムに対し、待ち時間の値を決定し，データ記憶部４０の予測結果テーブルに設定する。
【００８８】
ステップＳ２１１では、予測結果処理部６０が、データ記憶部４０により入力された、予測結果を外部装置２に出力する。出力処理は、例えば、外部装置２から出力のリクエストが入力された場合に実行すればよい。
【００８９】
このようにして、待ち時間予測装置１は、テーマパークにおけるアトラクションの複数の巡回ルートを入力とし、テーマパークにおけるユーザの行動を再現するテーマパークシミュレータを実行し、テーマパークシミュレータの実行結果に基づいて、各アトラクションについて、時間帯毎の待ち人数を表すヒストグラムを生成し、各アトラクションのヒストグラムを表すベクトルを生成する。また、生成されたベクトルと、ベクトルに基づいてユーザの待ち時間の平均値を予測するための予め学習された予測モデルとに基づいて、複数の巡回ルートのユーザの待ち時間の平均値を予測する。
【００９０】
なお、本実施形態では、疑似待ち時間ヒストグラムを作成する際のアトラクション実行時間を固定した場合について説明したが、これに限らず、乗り物系のアトラクションで安全器具の装着に手間取り、実行時間が長くなってしまう場合等、アトラクション実行時間が変動することを前提として考えることも可能である。
【００９１】
また、本実施形態では、入力をユーザの巡回ルートとし、出力を平均待ち時間とするテーマパークシミュレータ５０を用いた場合について説明したが、これに限らない。例えば、出力を待ち時間の最大値してもよい。また、入力を信号の点灯時間とし、出力を単位時間当たりの車の流量とするシミュレータ等を用いることもでき、その形態にとらわれることなく全てのシミュレータに対して最適パラメータを探索することが可能である。
【００９２】
また、本実施形態では、図５に示す機能の構成要素の動作をプログラムとして構築し、待ち時間予測装置１として利用されるコンピュータにインストールして実行させるが、これに限らず、ネットワークを介して流通させても良い。
【００９３】
また、構築されたプログラムをハードディスクやフレキシブルディスク、ＣＤ−ＲＯＭ等の可搬記憶媒体に格納し、コンピュータにインストールしたり、配布したりしても良い。
【符号の説明】
【００９４】
１  待ち時間予測装置
２  外部装置
１０  モデリングデータ処理部
２０  モデル構築部
２１  モデリングデータテーブル
２２  待ち時間予測部
３０  初期設定処理部
４０  データ記憶部
４１  初期設定テーブル
４２  疑似ヒストグラムテーブル
４３  予測結果テーブル
５０  ヒストグラム作成実行部
５１  行動待機時刻テーブル
６０  予測結果処理部
【図１】
2018073361.tif 000014
【図２】
2018073361.tif 000015
【図３】
2018073361.tif 000016
【図４】
2018073361.tif 000017
【図５】
2018073361.tif 000018
【図６】
2018073361.tif 000019
【図７】
2018073361.tif 000020
【図８】
2018073361.tif 000021
【図９】
2018073361.tif 000022
【図１０】
2018073361.tif 000023
【図１１】
2018073361.tif 000024
【図１２】
2018073361.tif 000025