(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-05-01
(45)【発行日】2025-05-13
(54)【発明の名称】管理システム及び管理方法
(51)【国際特許分類】
G06Q 10/02 20120101AFI20250502BHJP
G06Q 50/10 20120101ALI20250502BHJP
G08G 1/09 20060101ALI20250502BHJP
G08G 1/14 20060101ALI20250502BHJP
【FI】
G06Q10/02
G06Q50/10
G08G1/09 H
G08G1/14 A
(21)【出願番号】P 2021166612
(22)【出願日】2021-10-11
【審査請求日】2024-08-20
(73)【特許権者】
【識別番号】000003137
【氏名又は名称】マツダ株式会社
(74)【代理人】
【識別番号】100094569
【氏名又は名称】田中 伸一郎
(74)【代理人】
【識別番号】100059959
【氏名又は名称】中村 稔
(74)【代理人】
【識別番号】100067013
【氏名又は名称】大塚 文昭
(74)【代理人】
【識別番号】100130937
【氏名又は名称】山本 泰史
(74)【代理人】
【識別番号】100162824
【氏名又は名称】石崎 亮
(72)【発明者】
【氏名】伊藤 誠一
(72)【発明者】
【氏名】岡村 雅
(72)【発明者】
【氏名】前田 貴史
(72)【発明者】
【氏名】古川 優史
(72)【発明者】
【氏名】丸子 敬生
【審査官】松田 岳士
(56)【参考文献】
【文献】特開2019-175216(JP,A)
【文献】特開2020-160661(JP,A)
【文献】特開2013-120526(JP,A)
【文献】特開2007-089021(JP,A)
【文献】特開2021-060651(JP,A)
【文献】米国特許出願公開第2020/0128066(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00 -99/00
B60R 16/00 -17/02
G06F 9/455- 9/54
G08G 1/00 -99/00
(57)【特許請求の範囲】
【請求項1】
複数の車両に搭載された複数の演算装置にジョブデータを処理させるグリッドコンピューティングを管理する管理システムであって、
複数の演算装置及び/又は演算装置が搭載された複数の車両に関する情報を記憶する記憶装置と、
前記記憶装置に記憶された情報に基づき、前記ジョブデータを複数の演算装置のそれぞれに分配して処理させることで、前記グリッドコンピューティングを実現するように構成された制御装置と、を有し、
前記制御装置は、
前記演算装置が搭載された車両のユーザによって、駐車エリアを有する商業的な所定の施設への訪問を予約するために事前に指定された、前記所定の施設に滞在することを予定している滞在予定日及び滞在予定時間帯を含む滞在予定日時を受信し、
複数のユーザの前記滞在予定日時に基づき、前記滞在予定日が同日で前記滞在予定時間帯が重なる複数のユーザの複数の車両が前記駐車エリアにおいて車車間通信可能な範囲内に位置するように、この複数の車両のそれぞれが前記駐車エリアにおいて駐車すべき指定駐車位置を設定して、この指定駐車位置を複数の車両のそれぞれのユーザに送信し、
前記指定駐車位置の送信に応じて複数の車両が前記駐車エリアに駐車したときに、この複数の車両のそれぞれに搭載された前記演算装置に前記ジョブデータを処理させることで、前記グリッドコンピューティングを実現する、
ように構成されている、ことを特徴とする管理システム。
【請求項2】
前記記憶装置は、前記所定の施設に滞在可能な複数の滞在時間帯のそれぞれに対して、前記滞在時間帯が重なる複数の車両が前記駐車エリアにおいて車車間通信可能な範囲内に位置するように設定された前記指定駐車位置が関連付けられた駐車位置テーブルを記憶し、
前記制御装置は、前記記憶装置に記憶された前記駐車位置テーブルを参照して、ユーザの前記滞在予定時間帯に対応する前記滞在時間帯に関連付けられた前記指定駐車位置を設定して、この指定駐車位置をユーザに送信するように構成されている、
請求項1に記載の管理システム。
【請求項3】
前記駐車位置テーブルは、前記滞在時間帯が重なる複数の車両が前記駐車エリアにおいて車車間通信可能な範囲内に位置し、且つ複数の車両のそれぞれが前記駐車エリアにおいて隣接して位置するように、前記指定駐車位置が設定されている、請求項2に記載の管理システム。
【請求項4】
前記制御装置は、ユーザが前記所定の施設を訪問する当日の前日までに受信された前記滞在予定日時に基づき、前記当日において前記滞在予定時間帯が重なる車両の台数を特定し、この車両の台数に基づき、前記グリッドコンピューティングにおいて前記当日に計算可能なジョブデータ量を見積もり、このジョブデータ量を複数の前記演算装置に分配して処理させるように構成されている、請求項1乃至3のいずれか一項に記載の管理システム。
【請求項5】
前記制御装置は、特定された前記車両の台数から、前記当日において、ユーザが前記所定の施設の訪問の予約をキャンセルすることが予想される車両の台数、及び/又は、前記演算装置が前記ジョブデータを処理している途中でこの処理を中断することが予想される車両の台数を、差し引いた車両の台数に基づき、前記ジョブデータ量を見積もるように構成されている、請求項4に記載の管理システム。
【請求項6】
前記制御装置は、前記所定の施設への訪問を予約するために前記滞在予定日時を指定した複数のユーザの中から予備ユーザを事前に設定しておき、ユーザが前記所定の施設の訪問の予約をキャンセルした場合、及び/又は、前記演算装置が前記ジョブデータを処理している途中でこの処理を中断した場合に、前記予備ユーザの車両に搭載された前記演算装置に対して、前記ジョブデータを分配して処理させることで、前記グリッドコンピューティングを実現するように構成されている、請求項1乃至5のいずれか一項に記載の管理システム。
【請求項7】
複数の車両に搭載された複数の演算装置にジョブデータを処理させるグリッドコンピューティングをコンピュータにより管理する管理方法であって、
複数の演算装置及び/又は演算装置が搭載された複数の車両に関する情報を記憶する記憶ステップと、
前記記憶ステップにより記憶された情報に基づき、前記ジョブデータを複数の演算装置のそれぞれに分配して処理させることで、前記グリッドコンピューティングを実現する制御ステップと、を有し、
前記制御ステップは、
前記演算装置が搭載された車両のユーザによって、駐車エリアを有する商業的な所定の施設への訪問を予約するために事前に指定された、前記所定の施設に滞在することを予定している滞在予定日及び滞在予定時間帯を含む滞在予定日時を受信するステップと、
複数のユーザの前記滞在予定日時に基づき、前記滞在予定日が同日で前記滞在予定時間帯が重なる複数のユーザの複数の車両が前記駐車エリアにおいて車車間通信可能な範囲内に位置するように、この複数の車両のそれぞれが前記駐車エリアにおいて駐車すべき指定駐車位置を設定して、この指定駐車位置を複数の車両のそれぞれのユーザに送信するステップと、
前記指定駐車位置の送信に応じて複数の車両が前記駐車エリアに駐車したときに、この複数の車両のそれぞれに搭載された前記演算装置に前記ジョブデータを処理させることで、前記グリッドコンピューティングを実現するステップと、
を有する、ことを特徴とする管理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の車両に搭載された複数の演算装置において実現されるグリッドコンピューティングを管理する管理システム及び管理方法に関する。
【背景技術】
【0002】
従来、複数の車両をグリッドコンピューティングに適用する技術が提案されている(例えば、特許文献1参照)。特許文献1に記載のシステムは、通信ネットワークに接続された管理サーバと複数の車両に搭載された演算装置とによって構成されている。このシステムでは、管理サーバは、通信ネットワークを介して複数の演算装置へジョブデータ(演算ジョブ)を分配して演算処理させることで、グリッドコンピューティングを実現している。
【0003】
演算装置は、車両が非稼働状態(例えばイグニッションオフや車両電源オフの状態)であるときに、安定した品質の計算能力を提供することができる。このため、特許文献1の管理サーバは、各車両の使用履歴に基づいて、各車両がグリッドコンピューティングに参加可能な期間を予測するようになっている。そして、管理サーバは、この予測に基づいて、ジョブデータを分配するのに適した演算装置を選択する。すなわち、管理サーバは、ジョブデータを実行する演算期間にわたって非稼働状態である可能性の高い車両の演算装置を選択している。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、非稼働状態にある複数の車両に搭載された複数の演算装置によりグリッドコンピューティングを実現する場合、以下のような理由により、この複数の車両が近距離に存在していることが望ましいと考えられる。
【0006】
演算装置が搭載された複数の車両を近距離に集めると、グリッドコンピューティング時に車車間通信を行って、複数の演算装置間で演算データを適切に受け渡すことができる。また、こうして複数の車両を近距離に集めると、管理サーバとの通信環境を複数の演算装置において均一化することができる。更に、複数の車両を近距離に集めて、複数の車両によって特定の場所に車両群を形成させるようにすると、複数の演算装置を比較的長時間、同時に稼働させておくのに有効である。こうして複数の演算装置を同時に稼働させるようにすると、例えば分散コンピューティング(プログラムの個々の部分が同時並行的に複数の演算装置上で実行され、各々がネットワークを介して互いに通信を行いながら全体として処理が進行する計算手法)を効率的に行うことができる。
【0007】
以上より、演算装置が搭載された複数の車両を近距離に集めてグリッドコンピューティングを行うと、グリッドコンピューティングのための安定且つ確度の高い計算資源(演算装置の計算能力)を効果的に確保することができると考えられる。なお、上記した特許文献1に記載されたシステムは、複数の車両を近距離に集めてグリッドコンピューティングを行うことはできなかった。
【0008】
他方で、上記のようにグリッドコンピューティングのために複数の車両を近距離に集める場合に、商業的な所定の施設(例えば、スーパーマーケット、ショッピングモール、競技場、劇場、レストラン、宿泊施設、映画館、販売店など)の駐車エリアを利用するようにすると、この施設などの運営にも貢献することができると考えられる。例えば、複数の車両を施設の駐車エリアにおいて近距離に集めるために、各車両の駐車位置を管理(コントロール)することで、駐車エリアの混雑を緩和することができる。また、そのように駐車位置を管理する前段階において、来場者が施設に滞在する時間や来場者数などの情報を把握することで、この情報を施設の運営(オペレーション)に活用することができる。
【0009】
本発明は、上述した問題点を解決するためになされたものであり、演算装置が搭載された複数の車両を商業的な所定の施設の駐車エリアにおいて近距離に集めてグリッドコンピューティングを行わせることで、確度の高い計算資源を確保すると共に、所定の施設の運営に貢献することができる管理システム及び管理方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
上記の目的を達成するために、本発明は、複数の車両に搭載された複数の演算装置にジョブデータを処理させるグリッドコンピューティングを管理する管理システムであって、複数の演算装置及び/又は演算装置が搭載された複数の車両に関する情報を記憶する記憶装置と、記憶装置に記憶された情報に基づき、ジョブデータを複数の演算装置のそれぞれに分配して処理させることで、グリッドコンピューティングを実現するように構成された制御装置と、を有し、制御装置は、演算装置が搭載された車両のユーザによって、駐車エリアを有する商業的な所定の施設への訪問を予約するために事前に指定された、所定の施設に滞在することを予定している滞在予定日及び滞在予定時間帯を含む滞在予定日時を受信し、複数のユーザの滞在予定日時に基づき、滞在予定日が同日で滞在予定時間帯が重なる複数のユーザの複数の車両が駐車エリアにおいて車車間通信可能な範囲内に位置するように、この複数の車両のそれぞれが駐車エリアにおいて駐車すべき指定駐車位置を設定して、この指定駐車位置を複数の車両のそれぞれのユーザに送信し、指定駐車位置の送信に応じて複数の車両が駐車エリアに駐車したときに、この複数の車両のそれぞれに搭載された演算装置にジョブデータを処理させることで、グリッドコンピューティングを実現する、ように構成されている、ことを特徴とする。
【0011】
このように構成された本発明では、管理システムは、所定の施設への訪問を予約する(換言すると所定の施設の駐車エリアに車両を駐車することを予約する)ために複数のユーザによって事前に指定された滞在予定日時に基づき、滞在予定日が同日で滞在予定時間帯が重なる複数の車両が駐車エリアにおいて車車間通信可能な範囲内(例えば50m以内)に位置するように、各車両の指定駐車位置を設定する。こうすることで、所定の施設に滞在する滞在予定時間帯が重なる複数の車両を駐車エリアにおいて車車間通信可能な範囲内に駐車させた状態で、これら車両に搭載された演算装置によりグリッドコンピューティングを実現するようにする。
これにより、グリッドコンピューティング時に車車間通信を行って、複数の演算装置間で演算データを適切に受け渡すことができる。また、管理システムとの通信環境を複数の演算装置において均一化し、ジョブデータなどの受け渡しを的確に行うことができる。更に、複数の車両によって所定の施設の駐車エリアに車両群を形成させることで、複数の演算装置を比較的長時間、同時に稼働させておくことができる。これにより、グリッドコンピューティングにおいて、例えば分散コンピューティングなどを適切に実現することができる。以上より、本発明によれば、非稼働状態にある複数の車両に搭載された複数の演算装置によりグリッドコンピューティングを行う場合に、安定且つ確度の高い計算資源を効果的に確保することができる。
【0012】
また、本発明によれば、ユーザが所定の施設への訪問を予約するために滞在予定日時を事前に指定するので、こうして複数のユーザにより事前に指定された滞在予定日時に基づき、一日の時間帯ごとの車両の台数(つまり演算装置の数)を把握することができる。その結果、グリッドコンピューティングにおいて一日に計算可能なジョブデータ量の見積もりや調整を容易に行うことが可能となる。
【0013】
また、本発明によれば、グリッドコンピューティングのために所定の施設の駐車エリアに複数の車両を近距離(車車間通信可能な範囲内)に集めることで、この施設などの運営にも貢献することができる。例えば、複数の車両を駐車エリアにおいて近距離に集めるために、各車両の駐車位置を管理(コントロール)することで、駐車エリアの混雑を緩和することができる。また、そのように駐車位置を管理する前段階において、来場者(ユーザ)が施設に滞在する時間や来場者数などの情報を把握することで、この情報を施設の運営(オペレーション)や駐車エリアの管理に活用することができる。
【0014】
本発明において、好ましくは、記憶装置は、所定の施設に滞在可能な複数の滞在時間帯のそれぞれに対して、滞在時間帯が重なる複数の車両が駐車エリアにおいて車車間通信可能な範囲内に位置するように設定された指定駐車位置が関連付けられた駐車位置テーブルを記憶し、制御装置は、記憶装置に記憶された駐車位置テーブルを参照して、ユーザの滞在予定時間帯に対応する滞在時間帯に関連付けられた指定駐車位置を設定して、この指定駐車位置をユーザに送信するように構成されている。
このように構成された本発明によれば、滞在時間帯ごとに設定すべき複数の指定駐車位置が事前に規定された駐車位置テーブルを用いることで、複数の車両のそれぞれに的確な指定駐車位置を割り当てることができる。
【0015】
本発明において、好ましくは、駐車位置テーブルは、滞在時間帯が重なる複数の車両が駐車エリアにおいて車車間通信可能な範囲内に位置し、且つ複数の車両のそれぞれが駐車エリアにおいて隣接して位置するように、指定駐車位置が設定されている。
このように構成された本発明によれば、各車両が近接して位置する車両群を駐車エリアに形成することができ、それにより、グリッドコンピューティングのために形成された車両群による広告効果を得ることが可能となる。
【0016】
本発明において、好ましくは、制御装置は、ユーザが所定の施設を訪問する当日の前日までに受信された滞在予定日時に基づき、当日において滞在予定時間帯が重なる車両の台数を特定し、この車両の台数に基づき、グリッドコンピューティングにおいて当日に計算可能なジョブデータ量を見積もり、このジョブデータ量を複数の演算装置に分配して処理させるように構成されている。
このように構成された本発明では、ユーザが所定の施設への訪問を予約するために事前に指定した滞在予定日時に基づき、当日において滞在予定時間帯が重なる車両の台数を特定する。こうして特定された車両の台数(つまり演算装置の数)に基づきジョブデータ量を見積もることで、的確なジョブデータ量を求めることができる。
【0017】
本発明において、好ましくは、制御装置は、特定された車両の台数から、当日において、ユーザが所定の施設の訪問の予約をキャンセルすることが予想される車両の台数、及び/又は、演算装置がジョブデータを処理している途中でこの処理を中断することが予想される車両の台数を、差し引いた車両の台数に基づき、ジョブデータ量を見積もるように構成されている。
このように構成された本発明によれば、施設訪問の予約のキャンセルやジョブデータの処理の中断が生じた場合にも、当日に確実に計算可能なジョブデータ量を求めることができる。
【0018】
本発明において、好ましくは、制御装置は、所定の施設への訪問を予約するために滞在予定日時を指定した複数のユーザの中から予備ユーザを事前に設定しておき、ユーザが所定の施設の訪問の予約をキャンセルした場合、及び/又は、演算装置がジョブデータを処理している途中でこの処理を中断した場合に、予備ユーザの車両に搭載された演算装置に対して、ジョブデータを分配して処理させることで、グリッドコンピューティングを実現するように構成されている。
このように構成された本発明によれば、施設訪問の予約のキャンセルやジョブデータの処理の中断が生じた場合にも、事前に設定された予備ユーザの演算装置にジョブデータを再分配することで、グリッドコンピューティングを確実に実現することができる。
【0019】
他の観点では、上記の目的を達成するために、本発明は、複数の車両に搭載された複数の演算装置にジョブデータを処理させるグリッドコンピューティングをコンピュータにより管理する管理方法であって、複数の演算装置及び/又は演算装置が搭載された複数の車両に関する情報を記憶する記憶ステップと、記憶ステップにより記憶された情報に基づき、ジョブデータを複数の演算装置のそれぞれに分配して処理させることで、グリッドコンピューティングを実現する制御ステップと、を有し、制御ステップは、演算装置が搭載された車両のユーザによって、駐車エリアを有する商業的な所定の施設への訪問を予約するために事前に指定された、所定の施設に滞在することを予定している滞在予定日及び滞在予定時間帯を含む滞在予定日時を受信するステップと、複数のユーザの滞在予定日時に基づき、滞在予定日が同日で滞在予定時間帯が重なる複数のユーザの複数の車両が駐車エリアにおいて車車間通信可能な範囲内に位置するように、この複数の車両のそれぞれが駐車エリアにおいて駐車すべき指定駐車位置を設定して、この指定駐車位置を複数の車両のそれぞれのユーザに送信するステップと、指定駐車位置の送信に応じて複数の車両が駐車エリアに駐車したときに、この複数の車両のそれぞれに搭載された演算装置にジョブデータを処理させることで、グリッドコンピューティングを実現するステップと、を有する、ことを特徴とする。
このように構成された本発明によっても、非稼働状態にある複数の車両に搭載された複数の演算装置によりグリッドコンピューティングを行う場合に、安定且つ確度の高い計算資源を効果的に確保することができると共に、所定の施設などの運営に貢献することができる。
【発明の効果】
【0020】
本発明に係る管理システム及び管理方法によれば、演算装置が搭載された複数の車両を商業的な所定の施設の駐車エリアにおいて近距離に集めてグリッドコンピューティングを行わせることで、確度の高い計算資源を確保すると共に、所定の施設の運営に貢献することができる。
【図面の簡単な説明】
【0021】
【
図1】本発明の実施形態によるシステムの構成を示す概略図である。
【
図2】本発明の実施形態によるグリッドコンピューティングについて説明するための概念図である。
【
図3】本発明の実施形態による車両の構成を示すブロック図である。
【
図4】本発明の実施形態によるユーザ端末の構成を示すブロック図である。
【
図5】本発明の実施形態によるクライアントサーバの構成を示すブロック図である。
【
図6】本発明の実施形態による施設サーバの構成を示すブロック図である。
【
図7】本発明の実施形態による管理サーバの構成を示すブロック図である。
【
図8】本発明の実施形態によるジョブ受付処理を示すフローチャートである。
【
図9】本発明の実施形態によるジョブ受付画面の画像を示す概略図である。
【
図10】本発明の実施形態による駐車位置指定処理を示すフローチャートである。
【
図11】本発明の実施形態による滞在予定日時の入力画面(予約画面)の一例を示す。
【
図12】本発明の実施形態による指定駐車位置の割り当ての一例を示す表である。
【
図13】本発明の実施形態による駐車レイアウトの一例を示す。
【
図14】本発明の実施形態による指定駐車位置の通知画面の一例を示す。
【
図15】本発明の実施形態によるグリッドコンピューティング処理を示すフローチャートである。
【発明を実施するための形態】
【0022】
以下、添付図面を参照して、本発明の実施形態による管理システム及び管理方法について説明する。
【0023】
[システム]
図1は、本実施形態による実施形態のシステム1の構成を例示する。このシステム1は、複数の車両10と、複数のユーザ端末20と、クライアントサーバ30と、施設サーバ40と、管理サーバ50とを備える。これらの構成要素は、通信網5を経由して互いに通信可能である。複数の車両10の各々には、演算装置105が搭載される。なお、システム1には、複数のクライアントサーバ30が設けられてもよい。同様に、システム1には、複数の施設サーバ40が設けられてもよい。
なお、システム1は、本発明における「管理システム」の一例に相当する。特に、本実施形態では、施設サーバ40及び管理サーバ50が、本発明における「管理システム」として機能し、また、本発明における「管理方法」の実行主体となる。
【0024】
図2に示すように、本実施形態のシステム1では、複数の演算装置105によりグリッドコンピューティングが構成され、複数の演算装置105のうち利用可能な演算装置105にジョブデータを処理させるグリッドコンピューティング処理が行われる。
【0025】
なお、車両10において演算装置105の計算能力が必要となると、演算装置105が稼働状態となり、演算装置105の計算能力が利用される。例えば、車両10が走行している場合、車両10の走行制御のために演算装置105の計算能力が必要となり、演算装置105が稼働状態となる。
【0026】
一方、車両10において演算装置105の計算能力が不要となると、演算装置105が停止状態となり、演算装置105の計算能力が利用されなくなる。例えば、車両10が停車して車両10の電源がオフ状態になると、演算装置105の起算能力が不要となり、演算装置105が停止状態となる。
【0027】
ここで、車両10において演算装置105の計算能力が不要である場合に、演算装置105の計算能力をグリッドコンピューティング処理に提供することで、演算装置105の計算能力を有効に利用することが可能となる。
【0028】
[車両]
車両10は、ユーザに所有される。ユーザは、車両10を運転する。この例では、車両10は、自動四輪車である。また、車両10には、電池(図示省略)が搭載される。電池の電力は、演算装置105などの車載機器に供給される。このような車両10の例としては、電気自動車、プラグインハイブリッド自動車などが挙げられる。
【0029】
図3に示すように、車両10は、アクチュエータ11と、センサ12と、入力部101と、出力部102と、通信部103と、記憶部104と、演算装置105と、点灯装置110と、を備える。
【0030】
アクチュエータ11は、駆動系のアクチュエータ、操舵系のアクチュエータ、制動系のアクチュエータなどを含む。駆動系のアクチュエータの例としては、エンジン、トランスミッション、モータが挙げられる。制動系のアクチュエータの例としては、ブレーキが挙げられる。操舵系のアクチュエータの例としては、ステアリングが挙げられる。
【0031】
センサ12は、車両10の制御に用いられる各種の情報を取得する。センサ12の例としては、車外を撮像する車外カメラ、車内を撮像する車内カメラ、車外の物体を検出するレーダ、車速センサ、加速度センサ、ヨーレートセンサ、アクセル開度センサ、ステアリングセンサ、ブレーキ油圧センサなどが挙げられる。
【0032】
入力部101は、情報やデータを入力する。入力部101の例としては、操作されることで操作に応じた情報を入力する操作部、情報を示す画像を入力するカメラ、情報を示す音声を入力するマイクロフォンなどが挙げられる。操作部の例としては、カーナビゲーション装置の操作ボタンやタッチセンサなどが挙げられる。入力部101に入力された情報やデータは、演算装置105に送られる。例えば、本実施形態では、入力部101は、車両10の演算装置105の計算能力をグリッドコンピューティング処理に提供するための指示をユーザから受け付ける。
【0033】
出力部102は、情報やデータを出力する。出力部102の例としては、情報を示す画像を出力する表示部、情報を示す音声を出力するスピーカなどが挙げられる。表示部の例としては、カーナビゲーション装置のディスプレイが挙げられる。スピーカの例としては、カーナビゲーション装置のスピーカが挙げられる。
【0034】
通信部103は、情報やデータを送受信する。通信部103により受信された情報やデータは、演算装置105に送られる。点灯装置110は、エクステリアランプ(ヘッドライト、テールライト、ブレーキライト、ウィンカーなど)や、ルームランプなどを有する。
【0035】
演算装置105は、上述したように、その計算能力をグリッドコンピューティング処理に提供する。具体的には、演算装置105は、グリッドコンピューティングを実現するように、分配されたジョブデータを処理する。演算装置105は、プロセッサ、メモリなどを有するコンピュータである。プロセッサの例としては、CPU(Central Processing Unit)や、MPU(Media Processing Unit)や、GPU(Graphics Processing Unit)などが挙げられる。メモリは、プロセッサを動作させるためのプログラム、プロセッサの処理結果を示す情報やデータなどを記憶する。
【0036】
なお、演算装置105に搭載されるプロセッサの数は、一つであってもよいし、複数のであってもよい。また、演算装置105に搭載されるプロセッサは、MPU、CPUおよびGPUのいずれか一つのみであってもよいし、MPU、CPUおよびGPUの2つ以上であってもよい。一つの例では、演算装置105は、一つまたは複数のECU(Electronic Control Unit)により構成され、車両10の各部を制御する。この例では、演算装置105は、上記のグリッドコンピューティングのためのジョブデータの処理に加えて、センサ12により得られた各種の情報に応じて、アクチュエータ11や点灯装置110を制御する。他の例では、演算装置105は、このようなECUとは異なる(つまりECUとは別体の)コンピュータであってもよい。この例では、演算装置105は、車両10の各部を制御せずに、主に、グリッドコンピューティングのためのジョブデータの処理を行う。
【0037】
記憶部104は、情報やデータを記憶する。この例では、記憶部104は、車両情報D11と、車両状態情報D12と、走行履歴情報D13と、演算装置情報D14と、稼働履歴情報D15とを記憶する。
【0038】
車両情報D11は、車両10に関する情報である。例えば、車両情報D11は、車両10に設定された車両IDや、車両の性能を示す車両性能情報や、車両10について登録された住所などを含む。車両IDは、車両10を識別する車両識別情報の一例である。ユーザIDは、ユーザを識別するユーザ識別情報の一例である。
【0039】
車両状態情報D12は、車両10の状態を示す。例えば、車両状態情報D12は、車両位置情報、車両通信情報、車両電源情報、車両電池残量情報、車両充電情報などを含む。車両位置情報は、車両10の位置(緯度および経度)を示す。例えば、車両位置情報は、GPS(Global Positioning System)により取得可能である。車両通信情報は、車両10の通信状態を示す。車両電源情報は、車両10の電源の状態を示す。例えば、車両電源情報は、イグニッション電源のオンオフ、アクセサリ電源のオンオフなどを示す。車両電池残量情報は、車両10に搭載された電池(図示省略)の残量を示す。車両充電情報は、充電設備(図示省略)において車両10が充電中であるか否かを示す。
【0040】
走行履歴情報D13は、車両10の走行履歴を示す情報である。例えば、走行履歴情報D13は、車両10の位置と時刻とを関連付けて示す。また、走行履歴情報D13に、車両10のナビゲーション(経路案内)において設定された案内経路や目的地などの情報を含めてもよい。
【0041】
演算装置情報D14は、演算装置105に関する情報である。例えば、演算装置情報D14は、演算装置105に設定された演算装置ID、演算装置105を搭載する車両10に設定された車両ID、演算装置105の性能を示す演算装置性能情報などを含む。演算装置IDは、演算装置105を識別する演算装置識別情報の一例である。演算装置性能情報に示される演算装置105の性能には、演算装置105の計算能力(具体的には最大計算能力)を示す計算能力、演算装置105におけるCPUとGPUとの比率などが含まれる。なお、演算装置105の計算能力は、演算装置105が単位時間当たりに計算することができるデータ量である。
【0042】
稼働履歴情報D15は、演算装置105の稼働履歴を示す情報である。例えば、稼働履歴情報D15は、演算装置105の計算能力の利用率と時刻とを関連付けて示す。
【0043】
[ユーザ端末]
ユーザ端末20は、ユーザに所有される。ユーザは、ユーザ端末20を操作して各種の機能を利用する。また、ユーザは、ユーザ端末20を持ち運ぶことができる。このようなユーザ端末20の例としては、スマートフォン、タブレット、ノート型パーソナルコンピュータなどが挙げられる。
【0044】
図4に示すように、ユーザ端末20は、入力部201と、出力部202と、通信部203と、記憶部204と、制御部205とを備える。
【0045】
入力部201は、情報やデータを入力する。入力部201の例としては、操作されることで操作に応じた情報を入力する操作部、情報を示す画像を入力するカメラ、情報を示す音声を入力するマイクロフォンなどが挙げられる。操作部の例としては、操作ボタン、タッチセンサなどが挙げられる。入力部201に入力された情報は、演算装置105に送られる。例えば、本実施形態では、入力部201は、車両10の演算装置105の計算能力をグリッドコンピューティング処理に提供するための指示をユーザから受け付ける。
【0046】
出力部202は、情報やデータを出力する。出力部202の例としては、情報を示す画像を出力する表示部、情報を示す音声を出力するスピーカなどが挙げられる。通信部203は、情報やデータを送受信する。通信部303により受信された情報やデータは、制御部205に送られる。
【0047】
制御部205は、ユーザ端末20の各部を制御する。制御部205は、プロセッサ、メモリなどを有する。メモリは、プロセッサを動作させるためのプログラム、プロセッサの処理結果を示す情報やデータなどを記憶する。
【0048】
記憶部204は、情報やデータを記憶する。この例では、記憶部204は、端末情報D21と、端末状態情報D22と、スケジュール情報D23とを記憶する。
【0049】
端末情報D21は、ユーザ端末20に関する情報である。例えば、端末情報D21は、ユーザ端末20に設定されたユーザ端末ID、ユーザ端末20の性能を示すユーザ端末性能情報などを含む。ユーザ端末IDは、ユーザ端末20を識別するユーザ端末識別情報の一例である。
【0050】
端末状態情報D22は、ユーザ端末20の状態を示す情報である。端末状態情報D22は、ユーザ端末20の位置を示すユーザ端末位置情報、ユーザ端末20の通信状態を示すユーザ端末通信状態情報などを含む。
【0051】
スケジュール情報D23は、ユーザ端末20を所有するユーザの行動履歴および行動予定を示す。例えば、スケジュール情報D23は、ユーザの位置と滞在期間(または滞在予定期間)とを関連付けて示す。なお、スケジュール情報D23は、ユーザ端末20に搭載されたスケジュール機能により取得可能である。具体的には、ユーザがスケジュール機能を利用して自身の行動履歴および行動予定をユーザ端末20に入力することで、そのユーザの行動履歴および行動予定を示すスケジュール情報D23が得られる。
【0052】
[クライアントサーバ]
クライアントサーバ30は、クライアントに所有される。クライアントは、ジョブデータの計算を依頼する。このようなクライアントの例としては、企業、研究機関、教育機関などが挙げられる。
【0053】
図5に示すように、クライアントサーバ30は、入力部301と、出力部302と、通信部303と、記憶部304と、制御部305とを備える。
【0054】
入力部301は、情報やデータを入力する。入力部301の例としては、操作されることで操作に応じた情報を入力する操作部、情報を示す画像を入力するカメラ、情報を示す音声を入力するマイクロフォンなどが挙げられる。操作部の例としては、操作ボタン、タッチセンサ、キーボード、マウスなどが挙げられる。入力部301に入力された情報やデータは、制御部305に送られる。
【0055】
出力部302は、情報やデータを出力する。出力部302の例としては、情報を示す画像を出力する表示部、情報を示す音声を出力するスピーカなどが挙げられる。通信部303は、情報やデータを送受信する。通信部303により受信された情報やデータは、制御部305に送られる。
【0056】
制御部305は、クライアントサーバ30の各部を制御する。制御部305は、プロセッサ、メモリなどを有する。メモリは、プロセッサを動作させるためのプログラム、プロセッサの処理結果を示す情報やデータなどを記憶する。
【0057】
記憶部304は、情報やデータを記憶する。この例では、記憶部304は、クライアント情報D31と、ジョブデータD1とを記憶する。
【0058】
クライアント情報D31は、クライアントに関する情報である。クライアント情報D31は、クライアントに設定されたクライアントID、クライアントに所有されるクライアントサーバ30に設定されたクライアントサーバID、担当者名、住所、電話番号などを含む。クライアントIDは、クライアントを識別するクライアント識別情報の一例である。クライアントサーバIDは、クライアントサーバ30を識別するクライアントサーバ識別情報の一例である。
【0059】
ジョブデータD1は、ジョブに対応するデータであり、ジョブの実施のために処理されるデータである。ジョブデータD1は、計算タイプにより分類可能である。計算タイプの例としては、CPU系の計算タイプ、GPU系の計算タイプなどが挙げられる。CPU系の計算タイプのジョブデータD1では、シミュレーション計算など、条件分岐の多い複雑な計算が要求される傾向にある。GPU系の計算タイプのジョブデータD1では、画像処理や機械学習など、膨大な量の単純計算が要求される傾向にある。
【0060】
また、ジョブデータD1は、処理条件により分類可能である。処理条件の例としては、常時通信が要求される処理条件、常時通信が要求されない処理条件などが挙げられる。常時通信が要求される処理条件のジョブデータD1では、グリッドコンピューティング処理において演算装置105が常に通信可能であることが要求される。常時通信が要求されない処理条件のジョブデータD1では、グリッドコンピューティング処理において演算装置105が常に通信可能であることが要求されない。
【0061】
なお、記憶部304には、ジョブに関するジョブ情報が記憶されてもよい。ジョブ情報は、ジョブの名称を示すジョブ名称情報、ジョブの内容を説明するジョブ内容情報、ジョブに対応するジョブデータに関するジョブデータ情報、ジョブの納期を示すジョブ納期情報などを含む。ジョブデータ情報は、ジョブデータの計算タイプ、処理条件、必要計算能力などを示す。
【0062】
[施設サーバ]
施設サーバ40は、ユーザが訪れる施設に所有されるものである。このような施設の例としては、スーパーマーケット、ショッピングモール、競技場、劇場、レストラン、宿泊施設、映画館、販売店などが挙げられる。なお、ユーザが施設への来訪予約を行えるようにしてもよい。
【0063】
図6に示すように、施設サーバ40は、入力部401と、出力部402と、通信部403と、記憶部404と、制御部405とを備える。施設サーバ40の入力部401、出力部402、通信部403、記憶部404、制御部405の構成は、クライアントサーバ30の入力部301、出力部302、通信部303、記憶部304、制御部305の構成と同様である。
【0064】
この例では、記憶部404は、施設情報D41と、施設利用情報D42とを記憶する。施設情報D41は、施設に関する情報である。施設情報D41は、施設に設定された施設ID、施設に所有される施設サーバ40に設定された施設サーバID、施設の位置(緯度および経度)を示す施設位置情報、施設を運営(又は管理)する企業の情報、担当者名、住所、電話番号などを含む。施設IDは、施設を識別する施設識別情報の一例である。施設サーバIDは、施設サーバ40を識別する施設サーバ識別情報の一例である。
【0065】
また、本実施形態では、施設情報D41は、施設に設けられた駐車エリア内の複数の駐車位置に関する駐車位置情報も含む。この駐車位置情報は、複数の駐車位置を示すマップ(例えば緯度及び経度により規定される)や、複数の駐車位置のそれぞれに割り当てられた駐車番号などを含む。なお、この複数の駐車位置は、例えば、グリッドコンピューティングを実現する車両10を駐車させるために予め用意された駐車エリア内の所定エリアに規定されるものである。更に、本実施形態では、施設情報D41は、ユーザが施設に滞在可能な複数の滞在時間帯(入場時刻と退出時刻により規定される)の候補のそれぞれに対して、滞在時間帯が重なる複数の車両10が駐車エリアにおいて車車間通信可能な範囲内に位置するように、この複数の車両10のそれぞれが駐車エリアにおいて駐車すべき駐車位置(指定駐車位置)が関連付けられた駐車位置テーブルも含む。
【0066】
施設利用情報D42は、施設の利用状況(利用履歴および利用予定)を示す。本実施形態では、施設利用情報D42は、施設を訪れるユーザ(具体的にはユーザID)と、ユーザによる施設の滞在予定情報とを関連付けて示す情報である。本実施形態では、この滞在予定情報は、ユーザによって施設への訪問を予約するために事前に指定された、施設に滞在することを予定している滞在予定日及び滞在予定時間帯(入場予定時刻と退出予定時刻により規定される)を含む滞在予定日時に関する情報である。
【0067】
[管理サーバ]
管理サーバ50は、グリッドコンピューティングが構成されるシステム1の運営を管理する。管理サーバ50は、システム1を運営する事業者に所有される。
【0068】
図7に示すように、管理サーバ50は、入力部501と、出力部502と、通信部503と、記憶部504と、制御部505とを備える。管理サーバ50の入力部501、出力部502、通信部503、記憶部504、制御部505の構成は、クライアントサーバ30の入力部301、出力部302、通信部303、記憶部304、制御部305の構成とである。
なお、管理サーバ50の記憶部504は、上記の施設サーバ40の記憶部404と共に、本発明における「記憶装置」の一例として機能し、また、管理サーバ50の制御部505は、上記の施設サーバ40の制御部405と共に、本発明における「制御装置」の一例として機能する。
【0069】
この例では、記憶部504は、ユーザテーブルD51と、演算装置テーブルD52と、クライアントテーブルD53と、ジョブテーブルD54と、リソーステーブルD55と、マッチングテーブルD56と、ジョブデータD1と、計算結果データD2とを記憶する。
【0070】
ユーザテーブルD51は、ユーザを管理するためのテーブルである。ユーザテーブルD51には、ユーザ毎に、そのユーザに設定されたユーザID、そのユーザに所有される車両10に設定された車両ID、そのユーザに所有される演算装置105に設定された演算装置ID、そのユーザに所有されるユーザ端末20に設定されたユーザ端末IDなどが登録される。
【0071】
演算装置テーブルD52は、演算装置105を管理するためのテーブルである。演算装置テーブルD52には、演算装置105毎に、その演算装置105に設定された演算装置ID、その演算装置105を所有するユーザに設定されたユーザID、その演算装置105が搭載される車両10に設定された車両IDなどが登録される。
【0072】
また、演算装置テーブルD52には、演算装置105毎に、その演算装置105の性能(計算能力やCPUとGPUの比率など)、その演算装置105の稼働状況(稼働履歴および稼働予定)などが登録される。言い換えると、演算装置テーブルD52は、複数の演算装置105の各々の稼働状況を示す稼働状況情報D5と、複数の演算装置105の各々の性能を示す性能情報D6とを含む。性能情報D6は、複数の演算装置105の各々の計算能力を示す計算能力情報D7を含む。
【0073】
クライアントテーブルD53は、クライアントを管理するためのテーブルである。クライアントテーブルD53には、クライアント毎に、そのクライアントに設定されたクライアントID、クライアントに所有されるクライアントサーバ30に設定されたクライアントサーバID、そのクライアントの担当者名、住所、電話番号などが登録される。
【0074】
ジョブテーブルD54は、クライアントから依頼されたジョブを管理するためのテーブルである。ジョブテーブルD54には、ジョブ毎に、そのジョブに設定された受付番号、そのジョブを依頼したクライアントに設定されたクライアントID、そのジョブの名称および内容などが登録される。また、ジョブテーブルD54には、ジョブ毎に、そのジョブに対応するジョブデータの計算タイプおよび処理条件、そのジョブデータの計算に必要となる計算能力である必要計算能力、そのジョブに設定された納期などが登録される。
【0075】
リソーステーブルD55は、グリッドコンピューティング処理における計算能力を管理するためのテーブルである。具体的には、リソーステーブルD55には、演算装置105毎に、その演算装置105に設定された演算装置ID、その演算装置105のグリッドコンピューティング処理において利用可能な計算能力の時間的変化の予測結果などが登録される。マッチングテーブルD56には、ジョブ毎に、そのジョブに設定された受付番号、そのジョブに対応するジョブデータ、そのジョブデータに対して割り当てられた演算装置105に設定された演算装置IDなどが登録される。
【0076】
記憶部504に記憶されるジョブデータD1は、後述するジョブ受付処理により受け付けられたジョブデータD1である。記憶部504に記憶される計算結果データD2は、後述するグリッドコンピューティング処理により計算されたジョブデータであり、その計算の結果を示す。
【0077】
次に、ユーザテーブルD51の更新について説明する。ユーザテーブルD51は、管理サーバ50の制御部505により更新される。例えば、新規のユーザがシステム1に加入すると、制御部505は、その新規のユーザに関連する情報をユーザテーブルD51に登録することで、ユーザテーブルD51を更新する。具体的には、制御部505は、新規のユーザに対してユーザIDを新たに設定し、新規のユーザに設定された「ユーザID」と、そのユーザに所有される車両10に設定された「車両ID」と、その車両10に搭載された演算装置105に設定された「演算装置ID」と、新規のユーザに所有されるユーザ端末20に設定された「ユーザ端末ID」とを関連付けて、ユーザテーブルD51に登録する。
【0078】
なお、新規のユーザに所有される車両10と管理サーバ50との通信により、新規のユーザに関連する「車両ID」と「演算装置ID」とを得ることが可能である。また、新規のユーザに所有されるユーザ端末20と管理サーバ50との通信により、新規のユーザに関連する「ユーザ端末ID」を得ることが可能である。
【0079】
[演算装置テーブルの更新]
次に、演算装置テーブルD52の更新について説明する。演算装置テーブルD52は、管理サーバ50の制御部505により更新される。例えば、新規の演算装置105がシステム1に加入すると、制御部505は、その新規の演算装置105に関連する情報を演算装置テーブルD52に登録することで、演算装置テーブルD52を更新する。具体的には、制御部505は、新規の演算装置105に設定された「演算装置ID」と、その演算装置105を所有するユーザに設定された「ユーザID」と、その演算装置105を搭載する車両10に設定された「車両ID」と、その演算装置105の「性能」および「稼働状況」とを関連付けて、演算装置テーブルD52に登録する。
【0080】
なお、新規の演算装置105を搭載する車両10と管理サーバ50との通信により、新規の演算装置105に関連する「演算装置ID」と「車両ID」と「性能」と「稼働状況」とを得ることが可能である。また、ユーザテーブルD51を参照することにより、新規の演算装置105に関連する「ユーザID」を得ることが可能である。
【0081】
[演算装置テーブルの定期更新]
また、演算装置テーブルD52に登録された演算装置105の「稼働状況」が定期的に更新される。言い換えると、演算装置テーブルD52に含まれる稼働状況情報D5が定期的に更新される。この定期更新は、管理サーバ50の制御部505により行われる。
【0082】
(第1更新処理)
例えば、車両10の「稼働履歴情報D15」に基づいて、演算装置テーブルD52の演算装置105の「稼働状況」(言い換えると稼働状況情報D5)が定期的に更新されてもよい。具体的には、制御部505は、演算装置テーブルD52に登録された演算装置105毎に、以下の第1更新処理を実行してもよい。
【0083】
第1更新処理では、制御部505は、演算装置105を搭載する車両10に対して「稼働履歴情報D15」へのアクセスを要求する。車両10の演算装置105は、その要求に応答して「稼働履歴情報D15」へのアクセスを許可する。制御部505は、その稼働履歴情報D15に示された演算装置105の稼働履歴に基づいて、演算装置テーブルD52に登録された演算装置105の「稼働状況」のうち過去の稼働状況である「稼働履歴」を更新する。
【0084】
(第2更新処理)
また、車両10の「走行履歴情報D13」に基づいて、演算装置テーブルD52の演算装置105の「稼働状況」(言い換えると稼働状況情報D5)が定期的に更新されてもよい。具体的には、制御部505は、演算装置テーブルD52に登録された演算装置105毎に、以下の第2更新処理を実行してもよい。
【0085】
第2更新処理では、制御部505は、演算装置105を搭載する車両10に対して「走行履歴情報D13」へのアクセスを要求する。車両10の演算装置105は、その要求に応答して「走行履歴情報D13」へのアクセスを許可する。制御部505は、その走行履歴情報D13に示された車両10の走行履歴に基づいて、演算装置105の稼働履歴を推定する。次に、制御部505は、その推定された演算装置105の稼働履歴に基づいて、演算装置テーブルD52に登録された演算装置105の「稼働状況」のうち過去の稼働状況である「稼働履歴」を更新する。
【0086】
(第3更新処理)
また、ユーザ端末20の「スケジュール情報D23」に基づいて、演算装置テーブルD52の演算装置105の「稼働状況」(言い換えると稼働状況情報D5)が定期的に更新されてもよい。具体的には、制御部505は、演算装置テーブルD52に登録された演算装置105毎に、以下の第3更新処理を実行してもよい。
【0087】
第3更新処理では、制御部505は、演算装置105を所有するユーザに所有されるユーザ端末20に対して「スケジュール情報D23」へのアクセスを要求する。ユーザ端末20の制御部205は、その要求に応答して「スケジュール情報D23」へのアクセスを許可する。制御部505は、そのスケジュール情報D23に示されたユーザの行動状況(行動履歴および行動予定)の中から、演算装置105を搭載する車両10に関連する行動状況を検出する。例えば、ユーザの行動状況のうち過去の行動状況である行動履歴の中から、そのユーザが車両10に搭乗していた行動履歴が検出され、ユーザの行動状況のうち未来の行動状況である行動予定の中から、そのユーザが車両10に搭乗する予定がある行動予定が検出される。
【0088】
次に、制御部505は、その検出されたユーザの行動状況に基づいて、車両10の走行状況(走行履歴および走行予定)を推定する。次に、制御部505は、その推定された車両10の走行状況に基づいて、演算装置105の稼働状況(稼働履歴および稼働予定)を推定する。そして、制御部505は、その推定された演算装置105の稼働状況に基づいて、演算装置テーブルD52に登録された演算装置105の「稼働状況」を更新する。
【0089】
(第4更新処理)
また、施設サーバ40の「施設利用情報D42」に基づいて、演算装置テーブルD52の演算装置105の「稼働状況」(言い換えると稼働状況情報D5)が定期的に更新されてもよい。具体的には、制御部505は、演算装置テーブルD52に登録された演算装置105毎に、以下の第4更新処理を実行してもよい。
【0090】
第4更新処理では、制御部505は、施設サーバ40に対して「施設利用情報D42」へのアクセスを要求する。施設サーバ40は、その要求に応答して「施設利用情報D42」へのアクセスを許可する。制御部505は、その施設利用情報D42に示された施設の利用状況(利用履歴および利用予定)の中から、演算装置105を搭載する車両10に関連する利用状況を検出する。例えば、施設の利用状況のうち過去の利用状況である利用履歴の中から、ユーザが車両10に搭乗していた利用履歴が検出され、施設の利用状況のうち未来の利用状況である利用予定の中から、ユーザが車両10に搭乗する予定がある利用予定が検出される。
【0091】
次に、制御部505は、その検出された施設の利用状況に基づいて、車両10の走行状況(走行履歴および走行予定)を推定する。次に、制御部505は、その推定された車両10の走行状況に基づいて、演算装置105の稼働状況(稼働履歴および稼働予定)を推定する。次に、制御部505は、その推定された演算装置105の稼働状況に基づいて、演算装置テーブルD52に登録された演算装置105の「稼働状況」を更新する。
【0092】
[クライアントテーブルの更新]
次に、クライアントテーブルD53の更新について説明する。クライアントテーブルD53は、管理サーバ50の制御部505により更新される。例えば、新規のクライアントがシステム1に加入すると、制御部505は、その新規のクライアントに関連する情報をクライアントテーブルD53に登録することで、クライアントテーブルD53を更新する。
【0093】
具体的には、制御部505は、新規のクライアントに対してクライアントIDを新たに設定し、新規のクライアントに設定された「クライアントID」と、新規のクライアントに所有されるクライアントサーバ30に設定された「クライアントサーバID」と、新規のクライアントの「担当者」と「住所」と「電話番号」とを関連付けて、クライアントテーブルD53に登録する。
【0094】
なお、クライアントサーバ30と管理サーバ50との通信により、新規のクライアントに関する「クライアントサーバID」と「担当者」と「住所」と「電話番号」とを得ることが可能である。
【0095】
[本実施形態に係る処理]
次に、本実施形態において行われる処理について具体的に説明する。本実施形態では、主に、ジョブ受付処理と、駐車位置指定処理と、グリッドコンピューティング処理とが行われる。
【0096】
(ジョブ受付処理)
図8を参照して、本実施形態において、管理サーバ50の制御部505により行われるジョブ受付処理について説明する。ジョブ受付処理では、クライアントにより計算を依頼されたジョブデータD1を受け付ける。例えば、管理サーバ50の制御部505は、クライアントからジョブデータD1の計算が依頼される毎に、以下の処理を行う。
【0097】
まず、ステップS1において、管理サーバ50は、クライアントからジョブの依頼を受け付ける。具体的には、クライアントサーバ30は、クライアントの担当者による操作に応答して、ジョブ依頼申請を管理サーバ50に送信する。管理サーバ50の制御部505は、その申請に応答して以下の処理を行う。
【0098】
制御部505は、ジョブの受付に必要となる情報(具体的にはジョブを依頼するクライアントに関するクライアント情報とジョブに関するジョブ情報)の送信をクライアントサーバ30に要求する。この例では、制御部505は、ジョブ受付画面の画像データをクライアントサーバ30に送信する。クライアントサーバ30の制御部305は、その画像データからジョブ受付画面の画像を再生し、その画像を出力部302(表示部)に出力(表示)させる。
【0099】
図9に示すように、ジョブ受付画面は、ジョブの受付に必要となる情報を入力させる画面である。ジョブ受付画面には、クライアント名を入力するクライアント名入力欄R101、クライアントの担当者名を入力する担当者名入力欄R102、クライアントの住所を入力する住所入力欄R104、ジョブの名称を入力するジョブ名称入力欄R111、ジョブの内容に関する説明を入力するジョブ内容入力欄R112、ジョブに対応するジョブデータの計算タイプを入力する計算タイプ入力欄R113、ジョブデータの処理条件を入力する処理条件入力欄R114、ジョブデータの必要計算能力を入力する必要計算能力入力欄R115、ジョブの納期を入力する納期入力欄R116と、登録ボタンB100とが設けられる。
【0100】
クライアントの担当者は、クライアントサーバ30の入力部301(操作部)を操作して、ジョブ受付画面に必要な情報を入力する。これにより、ジョブを依頼するクライアントに関するクライアント情報と、ジョブに関するジョブ情報とが入力される。そして、これらの情報の入力が完了すると、クライアントの担当者は、クライアントサーバ30の入力部301(操作部)を操作して、ジョブ受付画面の登録ボタンB100を押下する。登録ボタンB100が押下されると、クライアントサーバ30の制御部305は、ジョブ受付画面に入力された情報(クライアント情報およびジョブ情報)を管理サーバ50に送信する。管理サーバ50の制御部505は、クライアント情報とジョブ情報とを受信する。
【0101】
次に、制御部505は、ジョブに対応するジョブデータD1の送信をクライアントサーバ30に要求する。クライアントサーバ30の制御部305は、その要求に応答して、ジョブに対応するジョブデータD1を管理サーバ50に送信する。管理サーバ50の制御部505は、ジョブデータD1を受信する。
【0102】
次に、ステップS2において、管理サーバ50の制御部505は、ステップS1において受信されたジョブデータD1を分析する。具体的には、制御部505は、ジョブデータD1の計算タイプ、処理条件、必要計算能力などを分析する。そして、制御部505は、ジョブデータD1の分析の結果に基づいて、ステップS1において受信されたジョブ情報を修正する。なお、ステップS1において受信されたジョブ情報が十分に信頼できる場合は、ステップS2の処理を省略してもよい。
【0103】
次に、ステップS3において、管理サーバ50の制御部505は、ステップS1において受信されたクライアント情報と、ステップS2において必要に応じて修正されたジョブ情報(またはステップS1において受信されたジョブ情報)とを関連付けて、ジョブテーブルD54に登録する。また、制御部505は、ステップS1において受信されたジョブデータD1を記憶部504に記憶する。
【0104】
(駐車位置指定処理)
次に、
図10乃至
図14を参照して、本実施形態による駐車位置指定処理について説明する。
図10は、本実施形態による駐車位置指定処理を示すフローチャートであり、
図11は、本実施形態による滞在予定日時の入力画面(予約画面)の一例を示し、
図12は、本実施形態による指定駐車位置の割り当ての一例を示す表であり、
図13は、本実施形態による駐車レイアウトの一例を示し、
図14は、本実施形態による指定駐車位置の通知画面の一例を示している。
【0105】
本実施形態による駐車位置指定処理は、管理サーバ50の制御部505及び施設サーバ40の制御部405によって実行される。この駐車位置指定処理の概要を説明すると、まず、施設サーバ40の制御部405は、この施設サーバ40が設けられた所定の施設に滞在可能な複数の滞在時間帯の候補のそれぞれに対して、滞在時間帯が重なる複数の車両10が駐車エリアにおいて車車間通信可能な範囲内に位置するように設定された指定駐車位置が関連付けられた駐車位置テーブルを事前に設定しておき、この駐車位置テーブルを記憶部404に記憶させる。また、施設サーバ40の制御部405は、演算装置105が搭載された車両10のユーザによって、所定の施設への訪問を予約する(換言すると所定の施設の駐車エリアに車両10を駐車することを予約する)ために事前に指定された、滞在予定日及び滞在予定時間帯を含む滞在予定日時を受信し、記憶部404に記憶された駐車位置テーブルを参照して、このユーザの滞在予定時間帯に対応する滞在時間帯に関連付けられた指定駐車位置を設定して、この指定駐車位置をユーザに送信する。
【0106】
他方で、管理サーバ50の制御部505は、ユーザが所定の施設を訪問する当日の前日までに受信された滞在予定日時に基づき、当日において滞在予定時間帯が重なる車両10の台数を特定し、この車両10の台数に基づき、グリッドコンピューティングにおいて当日に計算可能なジョブデータ量(個々の演算装置105に割り当てる前の元のジョブデータの量を意味する。以下同様とする。)を見積もる。また、管理サーバ50の制御部505は、ユーザが滞在予定日時の訪問の予約をキャンセルした場合に、これと同じ滞在予定日時を指定した複数のユーザの中から事前に設定された予備ユーザを、キャンセルしたユーザの代わりに、ジョブデータD1を分配して処理させることでグリッドコンピューティングを実現させるためのユーザとして追加する。また、管理サーバ50の制御部505は、指定駐車位置が送信された複数の車両10のそれぞれが指定駐車位置に駐車しているか否かを判定し、複数の車両10による車両群の形成を判断する。
【0107】
具体的には、
図10の駐車位置指定処理が開始されると、まず、ステップS11において、施設サーバ40の制御部405は、所定の施設に滞在可能な複数の滞在時間帯(入場時刻と退出時刻により規定される)の候補のそれぞれに対して、滞在時間帯が重なる複数の車両10が駐車エリアにおいて車車間通信可能な範囲内(50m以内)に位置するように設定された指定駐車位置が関連付けられた駐車位置テーブルを事前に設定し(
図12参照)、この駐車位置テーブルを施設情報D41として記憶部404に記憶させておく。特に、制御部405は、滞在時間帯が重なる(典型的には滞在時間帯が同一である)複数の車両10が駐車エリアにおいて車車間通信可能な範囲内に位置し、且つ、複数の車両10のそれぞれが駐車エリアにおいて互いに隣接して位置するように、駐車位置テーブルの指定駐車位置を設定する。なお、このように駐車エリアにおいて指定駐車位置を設定するための条件は、管理サーバ50から施設サーバ40へと事前に提示される。
【0108】
次いで、ステップS12において、施設サーバ40の制御部405は、演算装置105が搭載された車両10のユーザによって、所定の施設への訪問を予約するために事前に指定された、滞在予定日及び滞在予定時間帯を含む滞在予定日時を受信したか否かを判定する。一つの例では、施設サーバ40は、ユーザが、ユーザ端末20によって所定の施設への訪問を予約するための予約サイト(施設サーバ40により管理されるサイト)にアクセスし、この予約サイトによる予約ページを用いて入力した滞在予定日時を受信する。この例では、ユーザは、ユーザ端末20における表示部としての出力部202に表示された入力画面(予約画面)を参照して、ユーザ端末20におけるタッチセンサとしての入力部201により滞在予定日時を入力する(
図11参照)。
図11に示す入力画面の例では、ユーザは、映画館への訪問を予約する(換言すると映画館の駐車エリアに車両10を駐車することを予約する)ために、滞在予定日に対応する特定の日にちについて複数表示された滞在予定時間帯の候補から、一つの滞在予定時間帯(例えば「11時~13時」)を選択するようになっている。この画面において、「〇」が表示された滞在予定時間帯は予約可能な時間帯を表し、「×」が表示された滞在予定時間帯は予約不可な時間帯を表している。制御部405は、受信した滞在予定日時を、ユーザID(車両IDを含めてよい)に対応付けて、施設利用情報D42として記憶部404に記憶させる。なお、他の例では、施設サーバ40は、ユーザがPCや車両10などにおいて入力した滞在予定日時を受信してもよい。施設サーバ40の制御部405は、滞在予定日時を受信したと判定した場合(ステップS12:Yes)、ステップS13に進み、滞在予定日時を受信したと判定しなかった場合(ステップS12:No)、ステップS12の判定を繰り返す。
【0109】
ステップS13において、施設サーバ40の制御部405は、ステップS11で施設情報D41として記憶部404に記憶された駐車位置テーブルを参照して、ステップS12で受信された滞在予定日時に含まれる滞在予定日及び滞在予定時間帯に対応する滞在時間帯に関連付けられた指定駐車位置をユーザに割り当て、この指定駐車位置をユーザに送信する。制御部405は、複数のユーザから滞在予定日時を受信するごとに、駐車位置テーブルに設定された各指定駐車位置にユーザを割り当て、こうしてユーザに指定駐車位置を割り当てた情報を施設情報D41又は施設利用情報D42として記憶部404に記憶させる。一つの例では、施設サーバ40は、ユーザに割り当てた指定駐車位置をユーザ端末20に送信し、それにより、ユーザ端末20は、指定駐車位置の通知画面を表示部としての出力部202に表示させる(
図14参照)。
図14に示す通知画面の例では、滞在予定日及び滞在予定時間帯に加えて、指定駐車位置を示す駐車番号が表示されている。なお、他の例では、施設サーバ40は、指定駐車位置をユーザのPCや車両10に送信し、これらを介して指定駐車位置をユーザに通知してもよい。
【0110】
ここで、
図12及び
図13に示す具体例について説明する。この例では、施設サーバ40の制御部405は、滞在予定時間帯(駐車位置テーブルの滞在時間帯に対応する)が同じ11時~13時のユーザa、b、d、f、g、j、kのそれぞれに対して、指定駐車位置A1~A7を割り当て、これとは別の滞在予定時間帯が同じ13時~14時のユーザc、e、h、i、lのそれぞれに対して、指定駐車位置B1~B5を割り当てている(
図12参照)。これら指定駐車位置A1~A7及び指定駐車位置B1~B5のそれぞれは、駐車エリアにおいて車車間通信可能な範囲内に位置する、特に指定駐車位置A1~A7及び指定駐車位置B1~B5を含めた全体の各々の位置が互いに隣接するようになっている(
図13参照)。
【0111】
なお、施設サーバ40の制御部405は、滞在予定時間帯ごとに、複数のユーザの中から予備ユーザを事前に設定しておく(
図12参照)。このように予備ユーザを設定するのは、ユーザが滞在予定日時の訪問の予約をキャンセルした場合や、滞在予定日時の当時において演算装置105がジョブデータD1を処理している途中でこの処理を中断した場合に、予備ユーザの車両10に搭載された演算装置105によりグリッドコンピューティングを実現するためである。そういった観点より、制御部405は、ユーザが滞在予定日時の訪問の予約をキャンセルすることが予想される車両10の台数(換言するとユーザ数)と、演算装置105がジョブデータD1を処理している途中でこの処理を中断することが予想される車両10の台数(換言するとユーザ数)に基づき、滞在予定時間帯ごとに、設定する予備ユーザの数を規定する。例えば、滞在予定時間帯ごとの予備ユーザの数は、過去一ヶ月分の曜日及び時間帯ごとに得られた実績値(キャンセルした車両10の台数及び演算装置105が処理を中断した車両10の台数)に基づき規定される。
図12に示す例では、制御部405は、11時~13時の滞在予定時間帯では、ユーザj、kの二人の予備ユーザを設定し、13時~14時の滞在予定時間帯では、ユーザlの一人の予備ユーザを設定する。また、例えば、制御部405は、同じ滞在予定時間帯を予約した複数のユーザの中で、予約した時間(時刻)が遅いユーザを予備ユーザに設定する。
【0112】
次いで、
図10に戻ると、ステップS14において、施設サーバ40の制御部405は、ステップS12で取得されたユーザの滞在予定日時、及びステップS13で設定された指定駐車位置などを管理サーバ50と共有すべく、少なくとも滞在予定日時及び指定駐車位置をユーザID(車両IDを含めてよい)に関連付けて、管理サーバ50に送信する。これにより、管理サーバ50は、受信した滞在予定日時及び指定駐車位置などの情報を、ユーザIDに関連付けて記憶部504に記憶させる。また、施設サーバ40は、上記のように設定した予備ユーザのユーザID(車両IDを含めてよい)も管理サーバ50に送信し、管理サーバ50は、ユーザIDに関連付けて予備ユーザの情報を記憶部504に記憶させる。例えば、管理サーバ50の制御部505は、このように施設サーバ40から受信した情報を、記憶部504のユーザテーブルD51に記憶させる。
【0113】
他方で、ステップS21において、管理サーバ50の制御部505は、ユーザが所定の施設を訪問する当日の前日までに施設サーバ40から受信された複数の滞在予定日時に関する情報に基づき、当日において滞在予定時間帯が重なる車両10の台数を特定し、この車両10の台数に基づき、グリッドコンピューティングにおいて当日に計算可能なジョブデータ量を見積もる。具体的には、制御部505は、一般的な演算装置105の平均的な計算能力(事前に定めておく)を用いて、特定された車両10の台数(つまり演算装置105の台数)に応じたジョブデータ量を求める。例えば、制御部505は、同じ日における複数の滞在予定時間帯のそれぞれについて、車両10の台数に応じたジョブデータ量を求め、複数の滞在予定時間帯のそれぞれについて求められたジョブデータ量を合計した量を、当日一日において計算可能なジョブデータ量として求める。
【0114】
加えて、制御部505は、上記のように滞在予定時間帯ごとに特定された車両10の台数から、当日において、ユーザが滞在予定日時の訪問の予約をキャンセルすることが予想される車両10の台数と、演算装置105がジョブデータD1を処理している途中でこの処理を中断することが予想される車両10の台数を、差し引いた車両10の台数に基づき、ジョブデータ量を見積もる。こうして差し引くことになる車両10の台数は、複数の滞在予定時間帯のそれぞれについて規定され、基本的には、上記した予備ユーザの数と同じである。つまり、この差し引く車両10の台数は、例えば、過去一ヶ月分の曜日及び時間帯ごとに得られた実績値(キャンセルした車両10の台数及び演算装置105が処理を中断した車両10の台数)に基づき設定される。1つの例では、制御部505は、或る滞在予定時間帯を予約した車両10の台数が7台であり、過去の実績値に対応する割合(具体的には、キャンセルした車両10の台数及び演算装置105が処理を中断した車両10の台数が、全体の予約台数に占める割合)が20%である場合、7台から2台を差し引いた5台を採用し、この5台の演算装置105により計算可能なジョブデータ量を見積もる。
【0115】
次いで、ステップS22において、管理サーバ50の制御部505は、車両10が当日において所定の施設の駐車エリアで実際に駐車した位置(以下適宜「実駐車位置」と呼ぶ。)を、車両10から受信したか否かを判定する。この場合、車両10は、所定の施設の駐車エリアにおいて非稼働状態(例えばイグニッション電源オフやアクセサリ電源オフの状態などのスタンバイ状態になった状態)になったときに、車両状態情報D12(上述したように車両10の位置(緯度および経度)を示す車両位置情報を含む)を管理サーバ50に送信し、管理サーバ50の制御部505は、この車両状態情報D12に含まれる車両位置情報を実駐車位置として用いる。制御部505は、実駐車位置を受信したと判定した場合(ステップS22:Yes)、ステップS23に進み、実駐車位置を受信したと判定しなかった場合(ステップS22:No)、ステップS22の判定を繰り返す。
【0116】
ステップS23において、管理サーバ50の制御部505は、施設サーバ40から受信した指定駐車位置と、車両10から受信した実駐車位置に基づき、車両10が施設サーバ40により設定された指定駐車位置に駐車したか否かを判定する。具体的には、制御部505は、実駐車位置が指定駐車位置に一致する場合、車両10が指定駐車位置に駐車したと判定する。なお、制御部505は、車両10が指定駐車位置に駐車したか否かを判定するに当たって、このように実駐車位置と指定駐車位置とを比較する代わりに、他の例では、駐車エリアの各駐車位置に予め設けられたマーカー(駐車位置が特定できるもの)を車両10のカメラ等で読み込んだ結果に基づき、この判定を行ってもよい。更に他の例では、駐車エリアにカメラ等のセンサを設けて、施設サーバ40の制御部405が、駐車された車両10のナンバー等を取得することで、この判定を行ってもよい。
【0117】
ステップS24において、管理サーバ50の制御部505は、ユーザが滞在予定日時の訪問の予約をキャンセルしたか否かを判定する。例えば、ユーザは、ユーザ端末20によって上記の予約サイトにアクセスし、この予約サイトによる予約ページを用いて滞在予定日時の予約をキャンセルするための操作入力を行う。そして、施設サーバ40は、こうして予約サイトを介して取得された予約のキャンセルに関する情報(予約をキャンセルしたユーザのユーザIDも含む)を、管理サーバ50に送信し、管理サーバ50は、この情報が受信されると、ユーザが予約をキャンセルしたと判定する(ステップS24:Yes)。この場合、管理サーバ50の制御部505は、ステップS25に進み、予備ユーザを追加する処理を行う。すなわち、制御部505は、予約をキャンセルしたユーザの代わりに、予備ユーザの車両10の演算装置105を、ジョブデータD1を分配して処理させることでグリッドコンピューティングを実現する対象として設定する。この場合、制御部505は、ステップS25の処理を行うに当たって、上述したように記憶部504のユーザテーブルD51に記憶された予備ユーザの情報(特に予備ユーザのユーザID)を用いる。
【0118】
次いで、ステップS26において、制御部505は、ステップS23での駐車位置の判定結果に基づき、同じ滞在予定時間帯を予約した複数の車両10が各々の指定駐車位置に駐車することで車両群が形成されたか否かを判定する。その結果、制御部505は、車両群が形成されたと判定した場合(ステップS26:Yes)、
図10の処理フローを終了する。これに対して、制御部505は、車両群が形成されたと判定しなかった場合(ステップS26:No)、ステップS21に戻る。この場合、制御部505は、車両群が形成されるまで、ステップS21~S26の処理を繰り返す。
【0119】
なお、ステップS22、S23の処理とステップS24、S25の処理とを実行する順序を入れ替えてもよい。すなわち、上記の実施形態では、駐車位置の判定後に予約のキャンセルを判定していたが、他の例では、予約のキャンセルの判定後に駐車位置の判定を行ってもよい。更に他の例では、これらの判定を並列して行ってもよい。
【0120】
(グリッドコンピューティング処理)
次に、
図15を参照して、本実施形態において、管理サーバ50の制御部505により行われるグリッドコンピューティング処理について説明する。グリッドコンピューティング処理では、管理サーバ50の制御部505は、
図10の駐車位置指定処理の結果、車両群を構成するようになった複数の車両10のそれぞれに搭載された演算装置105に、ジョブデータD1を処理させる。例えば、制御部505は、ジョブ受付処理及び駐車位置指定処理の後に、以下の処理を行う。
【0121】
まず、ステップS31において、管理サーバ50の制御部505は、車両群を構成する複数の車両10のそれぞれに搭載された演算装置105の計算能力を予測する。具体的には、制御部505は、管理サーバ50の記憶部504に記憶された演算装置テーブルD52や、車両10から受信した車両状態情報D12などに基づき、車両群の各演算装置105の計算能力として、計算能力(計算量)や、計算タイプや、計算可能スケジュールなどを予測する。計算タイプは、演算装置テーブルD52に含まれるCPUとGPUの比率などであり、計算可能スケジュールは、車両状態情報D12に含まれる車両電池残量情報や車両充電情報に応じた、電池の状態に基づく計算可能な時間により規定される。そして、制御部505は、このように予測された複数の演算装置105の各々の計算能力に基づき、車両群全体の計算能力の情報をコンピューティンググリッド情報として登録する。
【0122】
次いで、ステップS32において、制御部505は、ステップS31で予測された各演算装置105の計算能力に基づき、上記のジョブ受付処理(
図8)において受け付けられた、グリッドコンピューティング処理の対象となるジョブデータD1を、車両群のグリッドを構成する各演算装置105に割り当てる。こうして各演算装置105に割り当てられるジョブデータD1は、同一のジョブに対応するジョブデータである。そして、ステップS33において、制御部505は、ステップS32の割り当て結果に基づき、ジョブデータD1の一部を各演算装置105に分配(送信)する。
【0123】
この後、車両群を構成する複数の車両10のそれぞれの演算装置105は、分配されたジョブデータD1の一部を処理する。このときに、好適な例では、管理サーバ50の制御部505は、駐車エリアにおいてグリッドコンピューティングを行っている演算装置105が搭載された車両10の点灯装置110を点灯させる要求を、車両10に送信してもよい。そして、この要求に応答して、車両群を構成する複数の車両10のそれぞれは、グリッドコンピューティングに係る処理を現在実行していることがわかるように、点灯装置110を所定の態様で点灯させてもよい。例えば、或る駐車エリアにおいて隣接して駐車している複数の車両10(車両群)のそれぞれが、エクステリアランプとしての点灯装置110を点灯させる。この場合、エクステリアランプを特定色(緑色など)で点灯させるのがよい。他の例では、エクステリアランプの代わりにルームランプを特定色(青色など)で点灯させてもよい。このように、複数の車両10の点灯装置110を点灯させることで、グリッドコンピューティングのために形成された車両群による広告効果が得られるようになる。
【0124】
次いで、演算装置105の各々は、その演算装置105に送信されたデータ(ジョブデータD1の一部)の計算が完了すると、その計算により得られた部分計算結果データを管理サーバ50に送信する。ステップS34において、管理サーバ50の制御部505は、演算装置105から送信された部分計算結果データを受信し、その部分計算結果データを記憶部504に記憶する。
【0125】
次いで、ステップS35において、制御部505は、演算装置105が分配されたジョブデータD1の一部を処理している途中でこの処理を中断したか否か、つまり演算装置105がジョブデータD1の一部を計算している途中で離脱したユーザがいるか否かを判定する。例えば、制御部505は、演算装置105がジョブデータD1の一部を計算している最中に、この演算装置105が搭載された車両10が非稼働状態から稼働状態(1つの例ではイグニッション電源がオンになった状態)になった場合に、演算装置105が処理を中断(終了)するため、途中で離脱したユーザがいると判定する。この場合、制御部505は、車両10から送信された車両状態情報D12に基づき、このような判定を行う。制御部505は、途中で離脱したユーザがいると判定した場合(ステップS35:Yes)、ステップS36に進み、途中で離脱したユーザがいると判定しなかった場合(ステップS35:No)、ステップS37に進む。
【0126】
ステップS36において、制御部505は、途中で離脱したユーザの演算装置105に分配していたジョブデータD1を、上述したように設定された予備ユーザの演算装置105に分配する。こうすることにより、予備ユーザの演算装置105にジョブデータD1の一部を新たに分配して処理させることで、グリッドコンピューティングを実現するようにする。この場合、制御部505は、記憶部504のユーザテーブルD51に記憶された予備ユーザの情報を参照して、新たにジョブデータD1を分配する予備ユーザ(具体的には途中離脱したユーザと同じ滞在予定日時を予約した予備ユーザ)を決定する。
【0127】
次いで、ステップS37において、制御部505は、ステップS33においてジョブデータD1が分配された演算装置105の全てが計算を完了したか否かを判定する。制御部505は、演算装置105の全てが計算を完了していると判定した場合(ステップS37:Yes)、ステップS38に進み、演算装置105の全てが計算を完了していると判定しなかった場合(ステップS37:No)、ステップS34に戻る。
【0128】
次いで、ステップS38において、制御部505は、記憶部504に記憶された部分計算結果データを結合することで、グリッドコンピューティング処理の対象となるジョブデータD1に対応する計算結果データD2(ジョブデータD1の計算の結果を示す計算結果データD2)を生成する。そして、制御部505は、グリッドコンピューティング処理の対象となるジョブデータD1に対応する計算結果データD2を、そのジョブデータD1の計算を依頼したクライアントのクライアントサーバ30に送信する。
【0129】
次いで、ステップS39において、制御部505は、システム1を運営する事業者から、グリッドコンピューティング処理に演算装置105の計算能力を提供したユーザに対して付与すべき報酬を算出する。報酬の例としては、システム1において利用可能なポイント、仮想通貨、商品の割引特典などが挙げられる。具体的には、制御部505は、演算装置105がグリッドコンピューティング処理に提供した計算量に応じて、ユーザに付与する報酬を求める。この場合、制御部505は、グリッドコンピューティング処理に提供した計算量が多いほど、ユーザに付与する報酬を大きくする。
【0130】
次いで、ステップS40において、制御部505は、ユーザに対して、ステップS39で算出された報酬を付与するための処理を行う。報酬を付与するための処理の例としては、ユーザに設定された「ユーザID」とシステム1において利用可能な「ポイント」(または仮想通貨)とを関連付けてユーザテーブルD51に登録する処理、ユーザに所有されるユーザ端末20に商品の割引特典を示す情報を送信する処理などが挙げられる。なお、報酬を示す情報は、ジョブテーブルD54においてジョブ毎に登録されてもよい。また、グリッドコンピューティング処理に演算装置105の計算能力を提供したユーザに対して、クライアントから報酬が付与されてもよい。例えば、クライアントサーバ30の制御部305は、グリッドコンピューティング処理に演算装置105の計算能力を提供したユーザに対して報酬を付与するための処理を実行してもよい。なお、ユーザが途中で離脱したために予備ユーザの演算装置105がジョブデータD1の一部を処理した場合には(ステップS35:Yes→ステップS36)、離脱したユーザ分の報酬は、予備ユーザに付与するのがよい。
【0131】
[作用及び効果]
次に、本実施形態の作用及び効果について説明する。本実施形態では、施設サーバ40の制御部405は、演算装置105が搭載された車両10のユーザによって、所定の施設への訪問を予約するために事前に指定された、施設に滞在することを予定している滞在予定日及び滞在予定時間帯を含む滞在予定日時を受信し、複数のユーザの滞在予定日時に基づき、滞在予定日が同日で滞在予定時間帯が重なる複数の車両10が駐車エリアにおいて車車間通信可能な範囲内(例えば50m以内)に位置するように、この複数の車両10のそれぞれが駐車エリアにおいて駐車すべき指定駐車位置を設定して、この指定駐車位置を複数の車両10のそれぞれのユーザに送信する。他方で、管理サーバ50の制御部505は、このような指定駐車位置の送信に応じて複数の車両10が駐車エリアに駐車したときに、この複数の車両10のそれぞれに搭載された演算装置105にジョブデータを処理させることで、グリッドコンピューティングを実現する。
【0132】
このような本実施形態によれば、滞在予定時間帯が重なる複数の車両10を駐車エリアにおいて車車間通信可能な範囲内に駐車させた状態で、これら車両10に搭載された演算装置105によりグリッドコンピューティングを実現する。これにより、グリッドコンピューティング時に車車間通信を行って、複数の演算装置105間で演算データを適切に受け渡すことができる。また、管理サーバ50との通信環境を複数の演算装置105において均一化し、ジョブデータなどの受け渡しを的確に行うことができる。更に、複数の車両10によって所定の施設の駐車エリアに車両群を形成させることで、複数の演算装置105を比較的長時間、同時に稼働させておくことができる。これにより、グリッドコンピューティングにおいて、例えば分散コンピューティングを適切に実現することができる。以上より、本実施形態によれば、非稼働状態にある複数の車両10に搭載された複数の演算装置105によりグリッドコンピューティングを行う場合に、安定且つ確度の高い計算資源を効果的に確保することができる。
【0133】
また、本実施形態によれば、ユーザが所定の施設への訪問を予約するために滞在予定日時を事前に指定するので、こうして複数のユーザにより事前に指定された滞在予定日時に基づき、一日の時間帯ごとの車両10の台数を把握することができ、その結果、グリッドコンピューティングにおいて一日に計算可能なジョブデータ量の見積もりや調整を容易に行うことが可能となる。
【0134】
また、本実施形態によれば、グリッドコンピューティングのために所定の施設の駐車エリアに複数の車両10を近距離(車車間通信可能な範囲内)に集めることで、この施設などの運営にも貢献することができる。例えば、複数の車両10を駐車エリアにおいて近距離に集めるために、各車両10の駐車位置を管理(コントロール)することで、駐車エリアの混雑を緩和することができる。また、そのように駐車位置を管理する前段階において、来場者が施設に滞在する時間や来場者数などの情報を把握することで、この情報を施設の運営(オペレーション)に活用することができる。
【0135】
更に、本実施形態では、施設サーバ40の記憶部404は、所定の施設に滞在可能な複数の滞在時間帯のそれぞれに対して、滞在時間帯が重なる複数の車両10が駐車エリアにおいて車車間通信可能な範囲内に位置するように設定された指定駐車位置が関連付けられた駐車位置テーブルを記憶し、施設サーバ40の制御部405は、この駐車位置テーブルを参照して、ユーザが指定した滞在予定時間帯に対応する滞在時間帯に関連付けられた指定駐車位置を設定する。このように滞在時間帯ごとに設定すべき指定駐車位置が事前に規定された駐車位置テーブルを用いることで、複数の車両10のそれぞれに的確な指定駐車位置を割り当てることができる。
【0136】
更に、本実施形態では、駐車位置テーブルは、滞在時間帯が重なる複数の車両10が駐車エリアにおいて車車間通信可能な範囲内に位置し、且つ複数の車両10のそれぞれが駐車エリアにおいて隣接して位置するように、指定駐車位置が設定されている。このような駐車位置テーブルによれば、複数の車両10のそれぞれを駐車エリアにおいて互いに隣接して位置させることで、グリッドコンピューティングのために形成された車両群による広告効果を得ることができる。
【0137】
更に、本実施形態では、管理サーバ50の制御部505は、ユーザが所定の施設を訪問する当日の前日までに受信された滞在予定日時に基づき、当日において滞在予定時間帯が重なる車両10の台数を特定し、この車両10の台数に基づき、グリッドコンピューティングにおいて当日に計算可能なジョブデータ量を見積もり、このジョブデータ量を複数の演算装置105に分配して処理させる。これにより、ユーザが所定の施設への訪問を予約するために事前に指定した滞在予定日時に基づき、当日において滞在予定時間帯が重なる車両10の台数を適切に特定することができ、その結果、この車両10の台数(つまり演算装置105の数)に応じた的確なジョブデータ量を求めることができる。
【0138】
更に、本実施形態では、管理サーバ50の制御部505は、特定された車両10の台数から、当日において、ユーザが滞在予定日時の訪問の予約をキャンセルすることが予想される車両10の台数、及び、演算装置105がジョブデータを処理している途中でこの処理を中断することが予想される車両10の台数を、差し引いた車両10の台数に基づき、ジョブデータ量を見積もる。これにより、滞在予定日時の予約のキャンセルやジョブデータの処理の中断が生じた場合にも、当日に確実に計算可能なジョブデータ量を求めることができる。
【0139】
更に、本実施形態では、管理サーバ50の制御部505は、所定の施設への訪問を予約するために滞在予定日時を指定した複数のユーザの中から予備ユーザを事前に設定しておき、ユーザが滞在予定日時の訪問の予約をキャンセルした場合、及び、演算装置105がジョブデータを処理している途中でこの処理を中断した場合に、予備ユーザの車両10に搭載された演算装置105に対して、ジョブデータを分配して処理させることで、グリッドコンピューティングを実現する。これにより、滞在予定日時の予約のキャンセルやジョブデータの処理の中断が生じた場合にも、事前に設定された予備ユーザの演算装置105にジョブデータを再分配することで、グリッドコンピューティングを確実に実現することができる。
【0140】
[変形例]
上記した実施形態では、施設サーバ40が、駐車位置テーブルを事前に設定しておき、この駐車位置テーブルを参照して、ユーザから受信された滞在予定日時に対応する指定駐車位置を設定して、この指定駐車位置をユーザに送信していた。他の実施形態では、施設サーバ40の代わりに、管理サーバ50が、このような処理の少なくもいずれか一以上を行ってもよい。一つの例では、管理サーバ50は、駐車位置テーブルを事前に設定しておき、ユーザから滞在予定日時を受信すると、この駐車位置テーブルを参照して、滞在予定日時に対応する指定駐車位置を設定してユーザに送信してもよい。この例では、管理サーバ50のみが、本発明における「管理システム」、「記憶装置」及び「制御装置」に対応する。他の例では、施設サーバ40は、駐車位置テーブルを事前に設定しておき、この駐車位置テーブルに基づき指定駐車位置を設定する一方で、管理サーバ50は、ユーザから滞在予定日時を受信して、この滞在予定日時を施設サーバ40に送信すると共に、施設サーバ40から指定駐車位置を受信して、この指定駐車位置をユーザに送信する。この例では、施設サーバ40及び管理サーバ50が、本発明における「管理システム」、「記憶装置」及び「制御装置」に対応する。
【符号の説明】
【0141】
1 システム
10 車両
20 ユーザ端末
30 クライアントサーバ
40 施設サーバ
50 管理サーバ
104 記憶部
105 演算装置
404 記憶部
405 制御部
504 記憶部
505 制御部
D1 ジョブデータ