IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ソフトバンクモバイル株式会社の特許一覧

<>
  • 特開-サーバシステム及び車両 図1
  • 特開-サーバシステム及び車両 図2
  • 特開-サーバシステム及び車両 図3
  • 特開-サーバシステム及び車両 図4
  • 特開-サーバシステム及び車両 図5
  • 特開-サーバシステム及び車両 図6
  • 特開-サーバシステム及び車両 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023117867
(43)【公開日】2023-08-24
(54)【発明の名称】サーバシステム及び車両
(51)【国際特許分類】
   G06F 9/50 20060101AFI20230817BHJP
【FI】
G06F9/50 150C
【審査請求】有
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022020657
(22)【出願日】2022-02-14
(11)【特許番号】
(45)【特許公報発行日】2023-04-24
(71)【出願人】
【識別番号】501440684
【氏名又は名称】ソフトバンク株式会社
(74)【代理人】
【識別番号】110000338
【氏名又は名称】弁理士法人 HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】小林 謙吾
(72)【発明者】
【氏名】海老沢 憲一
(72)【発明者】
【氏名】河村 浩彰
(57)【要約】
【課題】サーバシステムが、車両の挙動に関する演算のためのリソースを適切に割り当てることを可能とする。
【解決手段】サーバシステム(1)は、車両情報を受信する受信部(18)と、制御ソフトウェアを使用して各車両(100)の挙動に関する演算を行う第1制御部(4)と、車両情報に対応する各車両(100)のユースケースと各車両(100)が位置する範囲とのうち、少なくとも何れかに応じた単位によって制御ソフトウェアを動作させるコンテナを規定し、コンテナ毎に、制御ソフトウェアの動作に用いられるリソースを割り当て、当該サーバシステム(1)における処理負荷に関する所定条件が満たされた場合に、少なくとも何れかのコンテナに割り当てるリソースの分量を増減させる第2制御部(6)と、第1制御部(4)が算出した挙動を指示する制御信号を各車両に対して送信する送信部(16)と、を備える。
【選択図】図1
【特許請求の範囲】
【請求項1】
サーバシステムであって、
1又は複数の車両から各車両の状態を示す車両情報を受信する受信部と、
制御ソフトウェアを使用して各車両の挙動に関する演算を行う第1制御部と、
前記車両情報に対応する各車両のユースケースと各車両が位置する範囲とのうち、少なくとも何れかに応じた単位によって前記制御ソフトウェアを動作させるコンテナを規定し、前記コンテナ毎に、前記制御ソフトウェアの動作に用いられるリソースを割り当て、当該サーバシステムにおける処理負荷に関する所定条件が満たされた場合に、少なくとも何れかの前記コンテナに割り当てるリソースの分量を増減させる第2制御部と、
前記第1制御部が算出した挙動を指示する制御信号を各車両に対して送信する送信部と、を備える、サーバシステム。
【請求項2】
前記第2制御部は、
各車両が位置する範囲に応じた単位によって規定したコンテナに対して、前記範囲に含まれる道路の形状に応じた分量のリソースを割り当てる、請求項1に記載のサーバシステム。
【請求項3】
前記第2制御部は、
各車両のユースケースに応じた単位によって規定したコンテナに対して、当該ユースケースが、車両の加速、所定速度以上での走行、又は方向転換を伴うか否かに応じた分量のリソースを割り当てる、請求項1又は2に記載のサーバシステム。
【請求項4】
前記1又は複数の車両の一部又は全部は、
制御ソフトウェアを使用して各車両の挙動に関する演算を行う制御部と、
他の車両との車車間通信を行う通信部と、を備える第1種車両であり、
当該サーバシステムは、
前記第1種車両の位置、又は道路の形状に応じた特定範囲を設定し、当該特定範囲に含まれる車両に対する前記第1種車両の割合が所定以上であることを含む条件が満たされる場合に、当該特定範囲に含まれる車両を対象として前記第1制御部が行う演算の少なくとも一部を、当該特定範囲に含まれる第1種車両に実行させる第3制御部を更に備える、請求項1から3までの何れか1項に記載のサーバシステム。
【請求項5】
前記受信部は、
前記所定条件が満たされない場合、前記車両情報を第1の周期において受信し、
前記所定条件が満たされた場合、前記車両情報を第2の周期において受信する、請求項1から4までの何れか1項に記載のサーバシステム。
【請求項6】
1又は複数の前記車両情報を入力とし、当該サーバシステムにおける処理負荷に関する予測を出力する学習モデルを、1又は複数の前記車両情報と、当該サーバシステムにおける処理負荷を示す情報との組を教師データとして用いて学習させる学習部を更に備える、請求項1から5までの何れか1項に記載のサーバシステム。
【請求項7】
サーバシステムに関連付けられた車両であって、
自車両を含む特定範囲に含まれる1又は複数の車両の挙動に関する演算を行うことの指示を前記サーバシステムから受信する受信部と、
受信部が当該指示を受信した場合に、制御ソフトウェアを使用して、前記演算を行う制御部と、
自車両の状態を示す車両情報を前記サーバシステムに送信する送信部であって、前記制御部が算出した挙動を指示する制御信号を、前記特定範囲に含まれる他の車両に車車間通信によって送信する送信部と、を備える車両。
【請求項8】
前記受信部は、
前記車両情報の送信周期を変更することの指示を前記サーバシステムから受信し、
前記送信部は、
前記車両情報を当該指示に応じた送信周期において前記サーバシステムに送信する、請求項7に記載の車両。
【請求項9】
前記受信部は、
前記特定範囲に含まれる他の車両の台数を示す情報を受信し、
前記送信部は、
前記他の車両の台数が所定数以下である場合に、前記演算を前記サーバシステムにおいて行うことの要求を、前記サーバシステムに送信する、請求項7又は8に記載の車両。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバシステム及び車両に関する。
【背景技術】
【0002】
車両の挙動に関する演算を行うサーバシステムにおける機能障害の対策として、例えば特許文献1では、情報を有する通信センタと通信できないときに、車車間通信により情報を補填する車両が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2019-101641号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
前述したようなサーバシステムにおいては、車両の挙動に関する演算のためのリソースの割り当てが適切でない場合、機能障害が生じる要因となる。このような問題は、特許文献1に係る発明では解決されない。
【0005】
本発明の一態様は、上記の問題に鑑みてなされたものであり、サーバシステムが、車両の挙動に関する演算のためのリソースを適切に割り当てることを可能とすることを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様に係るサーバシステムは、1又は複数の車両から各車両の状態を示す車両情報を受信する受信部と、制御ソフトウェアを使用して各車両の挙動に関する演算を行う第1制御部と、前記車両情報に対応する各車両のユースケースと各車両が位置する範囲とのうち、少なくとも何れかに応じた単位によって前記制御ソフトウェアを動作させるコンテナを規定し、前記コンテナ毎に、前記制御ソフトウェアの動作に用いられるリソースを割り当て、当該サーバシステムにおける処理負荷に関する所定条件が満たされた場合に、少なくとも何れかの前記コンテナに割り当てるリソースの分量を増減させる第2制御部と、前記第1制御部が算出した挙動を指示する制御信号を各車両に対して送信する送信部と、を備える。
【0007】
本発明の他の態様に係る車両は、サーバシステムに関連付けられた車両であって、自車両を含む特定範囲に含まれる1又は複数の車両の挙動に関する演算を行うことの指示を前記サーバシステムから受信する受信部と、受信部が前記指示を受信した場合に、制御ソフトウェアを使用して、前記演算を行う制御部と、自車両の状態を示す情報を前記サーバシステムに送信する送信部であって、前記制御部が算出した挙動を指示する制御信号を、前記特定範囲に含まれる他の車両に車車間通信によって送信する送信部と、を備える。
【0008】
コンピュータを本発明の各態様に係るサーバシステム又は車両が備える各部(ソフトウェア要素)として動作させることにより前記サーバシステムをコンピュータにて実現させるサーバシステム又は車両の制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【0009】
また、前記制御プログラムは、コンピュータを前記各部として動作させる処理又はその他の処理において、各種の機械学習手法を用いてもよい。この場合、機械学習手法を用いるプログラムはサーバシステム又は車両で動作するものであってもよいし、他の装置(例えばエッジコンピュータまたはクラウドサーバ等)で動作するものであってもよい。
【発明の効果】
【0010】
本発明の一態様によれば、サーバシステムは、車両の状態と、車両の挙動に関する演算における処理負荷とに応じて、リソースを適切に割り当てることが可能となる。
【図面の簡単な説明】
【0011】
図1】サーバシステム、及びサーバシステムに関連付けられた車両の機能的構成を示すブロック図の一例である。
図2】第2制御部が規定するコンテナについて説明するための概念図の一例である。
図3】サーバシステムを主体とした、処理例1に係る処理の流れを示すフローチャートの一例である。
図4】サーバシステム及び車両によって実現される道路交通の概念図の一例である。
図5】サーバシステムを主体とした、処理例2に係る処理の流れを示すフローチャートの一例である。
図6】第3制御部が設定した特定範囲を図示した道路交通の概念図の一例である。
図7】オフロード処理の前後において各コンテナに割り当てられたリソースの分量を示す概念図である。
【発明を実施するための形態】
【0012】
以下、本発明の一実施形態について、詳細に説明する。
【0013】
〔1.サーバシステム1及び車両100の構成例〕
図1は、サーバシステム1、及びサーバシステム1に関連付けられた車両100の機能的構成を示すブロック図の一例である。
【0014】
サーバシステム1は、1又は複数台の車両100に対するサーバとして機能する装置であって、車両情報を各車両100から受信すると共に、各車両100の挙動を規定するための情報を送信する装置である。ここで、車両100の挙動を規定するための情報には、自動運転車の挙動を制御する制御信号、及び運転者に対する指示内容を示す情報が含まれ得る。また、車両情報とは、車両100の状態を示す情報であって、当該車両100の位置及び速度、並びにユースケース等を含む情報である。なお、車両情報には、自車両が別途備えるセンサがセンシングした、自車両の周囲の状況を示す情報及び画像データ等が含まれていてもよい。また、車両100のユースケースとは、当該車両100がどのような状況下にあるか、或いはどのような動作を行おうとしているのかを意味している。例えば車両100の合流、Uターン、駐車スペースへの移動、及び高速道路での走行等は、ユースケースの一例である。
【0015】
サーバシステム1は、制御部2、記憶部12及び通信部14を備えている。制御部2は、サーバシステム1全体を統括する制御装置であって、第1制御部4、第2制御部6、第3制御部8及び学習部10を備えている。
【0016】
第1制御部4は、制御ソフトウェアを使用して各車両100の挙動に関する演算を行う。前記制御ソフトウェアは、コンテナエンジンの制御に基づいて、仮想的に区分された実行環境であるコンテナにおいて動作するソフトウェアである。つまり、第1のコンテナにおいて動作する制御ソフトウェアと、第2のコンテナにおいて動作する制御ソフトウェアとは、それぞれ独立した演算を行う。コンテナを用いた近年の技術としては、Docker(登録商標)及びKubernetes(登録商標)等が挙げられる。
【0017】
第2制御部6は、制御ソフトウェアを動作させる1又は複数のコンテナを規定し、コンテナ毎に、制御ソフトウェアの動作に用いられるリソースの割り当てを行う。ここで、リソースとは、サーバシステム1の処理能力を意味する。
【0018】
また、第2制御部6は、サーバシステム1における処理負荷に関する所定条件が満たされた場合に、少なくとも何れかのコンテナに割り当てるリソースの分量を増減させる。即ち、各コンテナに割り当てられるリソースの分量は、可変であり互いに異なり得る。別の側面から言えば、CPU等として実現される制御部2、及びメモリ等として実現される記憶部12の占有率は、コンテナ毎に互いに異なり得る。また、所定条件とは、例えば受信部の処理負荷に関連する事項として、サーバシステム1と車両100との間の通信におけるネットワークの輻輳が生じた場合、或いは、第1制御部4の処理負荷に関連する事項として、制御ソフトウェアにおいて一定以上のリソースの過不足が生じた場合に満たされる条件である。
【0019】
図2は、第2制御部6が規定するコンテナについて説明するための概念図の一例である。図2のサーバシステム1においては、記憶部12上に実現されるコンテナ、及び通信部14以外の部材については記載を省略している。図2の例において、コンテナ23及び33は、或る車両100が位置する範囲Aに対応するコンテナであり、コンテナ25及び35は、別の車両100が位置する範囲Bに対応するコンテナである。また、枠線21は、内包するコンテナが、ユースケースAに対応するコンテナであることを示しており、枠線31は、内包するコンテナが、ユースケースBに対応するコンテナであることを示している。即ち、例えばコンテナ23は、ユースケースAに該当し且つ範囲Aに含まれる車両100の挙動に関する演算を行うための制御ソフトウェアの動作に用いられるコンテナである。
【0020】
第2制御部6は、車両情報に対応する各車両100のユースケースと各車両100が位置する範囲とのうち、少なくとも何れかに応じた単位によって制御ソフトウェアを動作させるコンテナを規定する。第2制御部6は、例えば各車両100のユースケース毎にコンテナを規定してもよいし、各車両100が位置する地域毎にコンテナを規定してもよい。また、図2の各コンテナのサイズは、当該コンテナに割り当てられたリソースの分量を示している。枠線23’は、第2制御部6がコンテナ23に割り当てるリソースの分量を増加させた例を示しており、枠線25’は、第2制御部6がコンテナ25に割り当てるリソースの分量を減少させた例を示している。
【0021】
第2制御部6は、各車両100が位置する範囲に応じた単位によって規定したコンテナに対して、前記範囲に含まれる道路の形状に応じた分量のリソースを割り当てる構成であってもよい。ここで、前記リソースの分量は、例えば所定時間内において前記範囲に含まれる車両100の一台あたりの分量であってもよい。また、道路の形状とは、例えば直線道路、曲線道路又は合流路等として区分される形状を意味している。第2制御部6は、例えば道路の交差点を含む範囲に対応するコンテナに対して、道路の交差点を含まない範囲に対応するコンテナに対してよりも、より多くの分量のリソースを割り当てる構成であってもよい。前記の構成によれば、第2制御部6は、道路の形状の複雑さ等に応じて、コンテナに割り当てるリソースの分量を決定することができる。
【0022】
また、第2制御部6は、各車両100のユースケースに応じた単位によって規定したコンテナに対して、当該ユースケースが、車両100の加速、所定速度以上での走行、又は方向転換等を伴うか否かに応じた分量のリソースを割り当てる構成であってもよい。前記の構成によれば、第2制御部6は、例えばユースケースの危険度合に応じて、コンテナに割り当てるリソースの分量を決定することができる。
【0023】
第3制御部8は、道路上における特定範囲を設定する処理と、当該特定範囲に含まれる車両100を対象として第1制御部4が行う演算の少なくとも一部を、当該特定範囲に含まれる第1種車両に実行させるオフロード処理とを行う。ここで、第1種車両は、車両100の一例である。前記オフロード処理においては、送信部16が、演算に必要な情報を第1種車両に送信する。第3制御部8の処理、及び第1種車両の詳細については後述する。
【0024】
学習部10は、1又は複数の車両情報を入力とし、サーバシステム1における処理負荷に関する予測を出力する学習モデルを、1又は複数の車両情報と、サーバシステム1における処理負荷を示す情報との組を教師データとして用いて学習させる。また、例えば第2制御部6は、学習モデルが出力した予測に基づいて、一定時間後においてコンテナに割り当てるリソースの分量を決定してもよい。
【0025】
また、学習部10が実行する機械学習手法は、特定の手法に限定されず、例えば車両情報に画像データが含まれる場合、CNN(Convolutional Neural Network)やRNN(Recurrent Neural Network)を用いたものであってもよい。
【0026】
また、学習部10は、例えば以下のような機械学習的手法の何れか又はそれらの組み合わせを用いる構成としてもよい。
【0027】
・サポートベクターマシン(SVM: Support Vector Machine)
・クラスタリング(Clustering)
・帰納論理プログラミング(ILP: Inductive Logic Programming)
・遺伝的アルゴリズム(GP: Genetic Programming)
・ベイジアンネットワーク(BN: Baysian Network)
記憶部12は、各種情報を記憶する記憶装置であって、例えば各車両100を識別するための情報、各車両100の状態を示す情報、並びに道路及び地図に関する情報等を記憶する。また、記憶部12は、前述した学習モデルを規定するパラメータセットを記憶する。学習部10は、学習モデルの学習によって、記憶部12が記憶するパラメータセットの値を更新する。一態様において、学習部10は、パラメータセットの値を、車両情報と、学習モデルの出力値とによって規定される損失関数を減少させる勾配方向に更新する。
【0028】
通信部14は、制御部2による制御に基づいて各種情報の送受信を行う部材であって、送信部16及び受信部18を備えている。図2に例示するように、通常、通信部14は、LTE V2X間接通信、又は5G NR V2X間接通信等を用いて、1又は複数の基地局200を介して各車両100との通信を行う。送信部16は、例えば第1制御部4が算出した挙動を指示する制御信号を各車両100に対して送信する。受信部18は、例えば1又は複数の車両100から各車両100の状態を示す車両情報を受信する。また、受信部18は、車両100毎に、車両情報を受信する周期を設定する機能を有する。
【0029】
車両100は、コネクテッドカー若しくは自動運転自動車又はこれらに準ずる自動車であって、制御部102、記憶部112、通信部114及び動作部120を備えている。
【0030】
制御部102は、車両100全体を統括する制御装置である。記憶部112は、各種情報を記憶する記憶装置であって、例えば、サーバシステム1に接続するための情報、自車両に関する情報、並びに道路及び地図に関する情報等を記憶する。
【0031】
通信部114は、制御部102による制御に基づいて各種情報の送受信を行う部材であって、送信部116及び受信部118を備えている。送信部116は、例えば車両情報をサーバシステム1に送信する。受信部118は、例えばサーバシステム1から送信された、自車両の挙動を制御する制御信号を受信する。
【0032】
また、サーバシステム1と各車両100との間において送受信される情報は、前述した情報に限定されず、例えば運転者によって車両100に入力された、所望の目的地を示す情報等の送受信が行われてもよい。
【0033】
動作部120は、自車両の各部を動作させる機構、及び動作する各部自体である。自車両が自動運転車である場合、動作部120は、受信部118が受信した制御信号が示す制御内容に従って、自車両の各部を自動的に動作させる。動作部120には、車両100の移動に直接的に関係しないスピーカー等の部材も含まれ得る。
【0034】
また、本開示においては、車両100のうち、前述した機能に加えて、以下の機能を更に有する受信部118、制御部102及び送信部116を備える車両100を、第1種車両と規定する。
・自車両を含む特定範囲に含まれる1又は複数の車両100の挙動に関する演算を行うことの指示をサーバシステム1から受信する受信部118。
・受信部118が前記指示を受信した場合に、制御ソフトウェアを使用して、前記演算を行う制御部102。
・制御部102が算出した挙動を指示する制御信号を、前記特定範囲に含まれる他の車両100に対して、LTE V2X直接通信、又は5G NR V2X間接通信等を用いた車車間通信によって送信する送信部116。
【0035】
別の観点から言えば、第1種車両とは、サーバシステム1がオフロード処理を行うことが可能な車両100を意味している。第1種車両は、サーバシステム1が特定範囲に含まれる車両100を対象とする演算の処理負荷を軽減することに寄与する。また、サーバシステム1は、車両100から受信した車両情報を参照して、当該車両100が第1種車両であるか否かを識別可能であるものとする。
【0036】
なお、サーバシステム1及び車両100が備える単一の部材の機能が、別の複数の部材によって実現されてもよく、サーバシステム1及び車両100が備える複数の部材の機能が、別の単一の部材によって実現されてもよい。また、サーバシステム1は、例えばデータベースを有する第1のサーバ装置と、車両100との通信を行う第2サーバ装置とによって実現される構成であってもよい。
【0037】
〔2.サーバシステム1の処理例1〕
続いて、サーバシステム1が実行する処理の流れについて一例を挙げて説明する。本例においては、サーバシステム1が、一部又は全部の車両100における車両情報の受信周期を伸長することによって、サーバシステム1と車両100との間の通信におけるネットワークの輻輳を解消する構成について説明する。図3は、サーバシステム1を主体とした、本例に係る処理の流れを示すフローチャートの一例である。
【0038】
S101において、サーバシステム1の受信部18は、各車両100から送信された車両情報を受信する。当初、受信部18は、デフォルトとして規定された第1の周期において車両情報を受信するが、後述するS104等の処理が実行されることによって、車両情報を受信する周期が変化する。なお、送信部16は、第1制御部4が算出した挙動を指示する制御信号を各車両100に送信するが、この送信周期は、車両情報の受信周期と同じであってもよいし、必ずしもそうでなくてもよい。
【0039】
S102において、制御部2は、単位時間あたりに受信部18が車両情報を受信した車両100の台数が所定台数以上であるか否かを判定する。制御部2は、前記車両100の台数が所定台数以上であると判定した場合(S102:YES)、S103において、サーバシステム1と車両100との間の通信におけるネットワークの輻輳によって、受信部18による車両情報の受信に所定時間以上の遅延が生じている車両100が存在するか否かを判定する。
【0040】
制御部2が、S102において前記車両100の台数が所定台数未満であると判定した場合(S102:NO)、S101からの処理が繰り返される。ここで、S102の判定について補足すると、前述した所定台数とは、サーバシステム1に同時接続する車両100の台数が多いためにネットワークの輻輳が生じ得るという観点において定められる台数である。
【0041】
制御部2が、S103において前記遅延が生じている車両100が1台でも存在すると判定した場合(S103:YES)、S104の処理が実行される。なお、制御部2は、前記遅延が生じている車両100が任意の所定台数以上存在する場合に「YES」の判定を行う構成であってもよい。
【0042】
S104において、受信部18は、サーバシステム1に関連付けられた全ての車両100について、車両情報を受信する周期を長くする処理を行う。S104の処理によって、前述した第1の周期よりも長くなった周期は、本開示における第2の周期の一例である。第2の周期の長さは、最大でも1分以内程度であることが望ましい。
【0043】
また、制御部2は、S103において前記遅延が生じている車両100は存在しないと判定した場合(S103:NO)、S105において、受信部18が全ての車両100から第1の周期において車両情報を受信しているか否かを判定する。制御部2が、受信部18が全ての車両100から第1の周期において車両情報を受信していると判定した場合(S105:YES)、S101からの処理が、第1の周期を用いて繰り返される。
【0044】
即ちここまで前述したように、受信部18は、サーバシステム1と車両100との間の通信におけるネットワークの輻輳が生じるという所定条件が満たされない場合、車両情報を第1の周期において受信し、前記所定条件が満たされた場合、車両情報を第2の周期において受信する。
【0045】
また、制御部2は、S105において、受信部18が第2の周期において車両情報を受信している車両100が存在すると判定した場合(S105:NO)、S106において、ネットワークの輻輳解除に関する条件が満たされたか否かを判定する。ここで、ネットワークの輻輳解除に関する条件とは、全ての車両100から車両情報を受信する周期を第1の周期に戻すための条件であって、例えば以下の何れかの場合に満たされる条件である。
・単位時間あたりに受信部18が車両情報を受信した車両100の台数が一定台数以下となった場合。
・S107の処理が直近に実行されてから一定時間以上が経過した場合。
・受信部18による車両情報の受信における遅延が無くなった場合。
【0046】
制御部2が、S106において、ネットワークの輻輳解除に関する条件が満たされていないと判定した場合(S106:NO)、S107の処理が実行される。S107において、受信部18は、一部の範囲に位置する車両100、及び一部のユースケースに該当する車両100から車両情報を受信する周期を第1の周期に戻す処理を行う。図4は、サーバシステム1及び車両100によって実現される道路交通の概念図の一例である。図4の例においては、範囲37の直線道路に位置する車両100からよりも、範囲39の合流路に位置する車両100から車両情報を受信する周期が短い方が望ましい。これは、直線道路よりも合流路の方が、危険度合が高いと見込めるためである。図4の例において、受信部18は、範囲39に位置する車両100から車両情報を受信する周期を第1の周期に設定し、範囲37に位置する車両100から車両情報を受信する周期を、引き続き第2の周期に設定した状態とする。
【0047】
また、制御部2が、S106において、ネットワークの輻輳に関する条件が満たされたと判定した場合(S106:YES)、S108の処理が実行される。S108において、受信部18は、全ての車両100から車両情報を受信する周期を第1の周期に戻す処理を行う。S107又はS108の処理が実行されたことに続いてS101からの処理が繰り返される。
【0048】
本例の構成によれば、サーバシステム1が、一部又は全部の車両100から単位時間当たりに取得する情報量を低減し、ネットワークの輻輳を解消することに寄与する。
【0049】
なお、サーバシステム1の構成は、S104、S107及びS108の工程において、受信部18が各車両100から車両情報を受信する周期を伸縮させる構成に限定されない。例えばサーバシステム1は、前記の工程において、送信部16が車両情報の送信周期を伸縮させる制御信号を各車両100に送信する構成であってもよい。別の側面から言えば、車両100は、受信部118が車両情報の送信周期を変更することの指示をサーバシステム1から受信し、送信部116が、車両情報を当該指示に応じた送信周期においてサーバシステム1に送信する構成であってもよい。これにより、サーバシステム1は、各車両100から基地局200に送信される情報量、及び基地局200からサーバシステム1に送信される情報量を低減し、ネットワークの輻輳を解消することに寄与する。
【0050】
また、サーバシステム1は、前記の工程において、受信部18が各車両100から車両情報を受信する周期を伸縮し、且つ送信部16が車両情報の送信周期を伸縮させる制御信号を各車両100に送信する構成であってもよい。
【0051】
また、制御部2は、S103において、ネットワークの輻輳によって車両情報の受信に遅延が生じている車両100が存在するか否かを判定する構成に限定されない。別の態様として、制御部2は、S103において、制御ソフトウェアの動作に用いられるコンテナのリソースが不足することによって第1制御部4の演算に遅延が生じているか否かを判定する構成であってもよい。即ち、S105までの処理において、受信部18は、コンテナのリソースが不足するという所定条件が満たされない場合、車両情報を第1の周期において受信し、前記所定条件が満たされた場合、車両情報を第2の周期において受信する構成であってもよい。これにより、サーバシステム1が、一部又は全部の車両100から単位時間あたりに取得する情報量を低減し、コンテナのリソースの不足を解消することに寄与する。
【0052】
〔3.サーバシステム1の処理例2〕
続いて、サーバシステム1が実行する処理の流れについて他の例を挙げて説明する。なお、説明の便宜上、前述した例において既に説明した事項については、重複する説明を繰り返さない。また、以降の例においても同様である。本例においては、サーバシステム1が、各車両100の挙動に関する演算を、第1種車両にオフロードする構成について説明する。図5は、サーバシステム1を主体とした、本例に係る処理の流れを示すフローチャートの一例である。また、図5に示す処理の間、一定周期において、送信部16は、車両100の挙動を指示する制御信号を各車両100に送信しており、受信部18は、各車両100から送信された車両情報を受信しているものとする。
【0053】
S201において、サーバシステム1の第3制御部8は、第1種車両の位置、又は道路の形状に応じた特定範囲を設定又は更新する。ここで、第3制御部8は、第1種車両の位置に応じた特定範囲を、第1種車両を中心とする範囲に設定することが望ましい。
【0054】
サーバシステム1は、同一の特定範囲に含まれる車両100を、車両群として取り扱う。また、図2のコンテナ23等に例示する単一のコンテナに対応する範囲は、1又は複数の前記特定範囲を含み得る。
【0055】
図6は、第3制御部8が設定した特定範囲を図示した道路交通の概念図の一例である。図6において、車両100a及び100a’は、第1種車両を示しており、車両100は、第1種車両ではない車両を示している。また、図6において、特定範囲41は、車両100a’の位置に応じて設定された、車両100a’と共に移動する特定範囲を例示している。第3制御部8は、全ての第1種車両に対応する特定範囲を設定せずともよく、特定範囲41に例示するように、単一の特定範囲に複数台の第1種車両が含まれていてもよい。また、特定範囲43は、道路の形状に応じた不動の特定範囲を例示している。各特定範囲の大きさは、互いに異なっていてもよいが、同一の特定範囲に含まれる車両間において車車間通信が有効な大きさであることが望ましい。
【0056】
S202において、制御部2は、受信部18が受信した車両情報に基づいて、対象とする特定範囲に含まれる車両100の台数が所定台数以上であるか否かを判定する。ここで、前記車両100の台数には、第1種車両も含まれる。また、前記所定台数とは、当該特定範囲に含まれる車両100の挙動に関する演算を行うためのコンテナのリソースが不足し得るという観点において定められる台数である。制御部2は、当該特定範囲に含まれる車両100の台数が所定台数以上であると判定した場合(S202:YES)、S203において、当該特定範囲に含まれる第1種車両の割合が所定以上であるか否かを判定する。一方で、制御部2が、当該範囲に含まれる車両100の台数が所定台数未満であると判定した場合(S202:NO)、S201からの処理が繰り返される。
【0057】
また、制御部2が、S203において、特定範囲に含まれる第1種車両の割合が所定以上であると判定した場合(S203:YES)、S204の処理が実行される。S204において、第3制御部8は、当該特定範囲に含まれる車両100を対象として第1制御部4が行う演算の少なくとも一部を、当該特定範囲に含まれる第1種車両に実行させるオフロード処理を行う。即ち第3制御部8は、或る特定範囲に含まれる車両100に対する第1種車両の割合が所定以上であることを含む条件が満たされる場合に、前記オフロード処理を行う。また、第2制御部6は、前記演算を行うためのコンテナに割り当てられるサーバシステム1のリソースの分量を減少させてもよい。オフロード処理が行われることによって、例えば図6の車両100a’は、特定範囲41に含まれる車両100及び100aの挙動に関する演算を行う。
【0058】
また、前述の第1種車両の送信部116は、制御部102が算出した挙動を指示する制御信号を、当該特定範囲に含まれる、車車間通信が可能な車両100に送信する。図6の特定範囲43に含まれる第1種車両の間の矢印は、前記車車間通信を示している。また、送信部116は、車車間通信ができない車両100を対象とする演算結果については、サーバシステム1に送信する。加えて、第1種車両は、自車両についての演算を行った場合、演算結果に従った挙動を行う。
【0059】
図7のグラフ45は、オフロード処理の前において各コンテナに割り当てられたリソースの分量を例示している。また、グラフ47は、サーバシステム1における処理負荷に関する所定条件が満たされて実行されたオフロード処理の後において各コンテナに割り当てられたリソースの分量を例示している。グラフ45は、範囲A、B、C及びDに対応するコンテナに、第2制御部6が割り当て可能なリソース全体の40%、20%、20%及び20%のリソースがそれぞれ割り当てられていることを示している。
【0060】
また、グラフ47は、範囲A及びDに対応するコンテナに、前記リソース全体の80%及び20%のリソースがそれぞれ割り当てられていることを示している。ここで、範囲B及びCに対応するコンテナを用いて第1制御部4が行っていた演算は、第3制御部8によって、特定範囲に含まれる第1種車両にオフロードされている。これにより、第2制御部6は、オフロード処理によって空いたリソースを、リソースが不足している他のコンテナに割り当てることが可能となる。
【0061】
また、第3制御部8は、コンテナを用いて第1制御部4が行っていた演算をオフロードするか否かを、当該コンテナに対応する範囲に含まれる道路の形状、又は当該範囲における天候等によって決定してもよい。例えば第3制御部8は、直線道路のような比較的安全な範囲に位置する第1種車両に対しては優先的にオフロード処理を行ってもよいし、雨又は霧等によって見晴らしの悪い範囲に位置する第1種車両に対しては、オフロード処理を行う優先度を低くしてもよい。
【0062】
また、制御部2は、S203において、特定範囲に含まれる第1種車両の割合が所定未満であると判定した場合(S203:NO)、S205において、直近又はそれに準ずる1又は複数の車両情報を学習モデルに入力する。また、S205において、制御部2は、学習モデルから出力された予測であって、サーバシステム1における処理負荷に関する予測を示す情報を取得する。
【0063】
S206において、第2制御部6は、学習モデルが出力した予測に基づいて、一定時間後においてコンテナに割り当てるリソースの分量を決定する。第2制御部6は、例えばリソースに余裕があると予測されるコンテナに割り当てるリソースの分量を減少させて、リソースの不足が予測されるコンテナに割り当てるリソースの分量を増加させることを決定する。また、第2制御部6は、各コンテナに割り当てるリソースの分量を増減することによって、決定したリソースの分量を反映し、続いてS201からの処理が繰り返される。
【0064】
本例の構成によれば、サーバシステム1は、特定範囲に含まれる車両100を対象とする演算の処理負荷を軽減させることができる。更にサーバシステム1は、車両100の状態と、車両100の挙動に関する演算における処理負荷とに応じて、リソースを適切に割り当てることが可能となる。
【0065】
なお、S203において、第1種車両の送信部116は、オフロードされた演算を制御部102が完了するまでの間、特定範囲に含まれる他の車両100に応答要求を一定周期毎に送信してもよい。続いて受信部118が、各車両100からの応答として、当該特定範囲に含まれる他の車両100の台数を示す情報を受信し、送信部116が、他の車両100の台数が所定数以下である場合に、前記演算をサーバシステム1において行うことの要求を、サーバシステム1に送信する構成であってもよい。前記の構成によれば、特定範囲に含まれる車両100を対象として行われる演算の処理負荷が比較的少ない場合に、サーバシステム1において一元的な演算を行うことに寄与する。
【0066】
また、サーバシステム1は、前述した処理例1と2との構成を組み合わせた構成であってもよい。即ちサーバシステム1は、ネットワークの輻輳又はコンテナのリソースの不足に関する前述の所定条件が満たされた場合に、車両情報を受信する周期又は車両情報を車両100に送信させる周期を長くする処理と、各車両100の挙動に関する演算を第1種車両にオフロードする処理との双方を行う構成であってもよい。
【0067】
〔ソフトウェアによる実現例〕
サーバシステム1(以下、「装置」と呼ぶ)の機能は、当該装置としてコンピュータを機能させるためのプログラムであって、当該装置の各制御ブロック(特に制御部2に含まれる各部)としてコンピュータを機能させるためのプログラムにより実現することができる。
【0068】
この場合、上記装置は、上記プログラムを実行するためのハードウェアとして、少なくとも1つの制御装置(例えばプロセッサ)と少なくとも1つの記憶装置(例えばメモリ)を有するコンピュータを備えている。この制御装置と記憶装置により上記プログラムを実行することにより、上記各実施形態で説明した各機能が実現される。
【0069】
上記プログラムは、一時的ではなく、コンピュータ読み取り可能な、1または複数の記録媒体に記録されていてもよい。この記録媒体は、上記装置が備えていてもよいし、備えていなくてもよい。後者の場合、上記プログラムは、有線または無線の任意の伝送媒体を介して上記装置に供給されてもよい。
【0070】
また、上記各制御ブロックの機能の一部または全部は、論理回路により実現することも可能である。例えば、上記各制御ブロックとして機能する論理回路が形成された集積回路も本発明の範疇に含まれる。この他にも、例えば量子コンピュータにより上記各制御ブロックの機能を実現することも可能である。
【0071】
また、上記各実施形態で説明した各処理は、AI(Artificial Intelligence:人工知能)に実行させてもよい。この場合、AIは上記制御装置で動作するものであってもよいし、他の装置(例えばエッジコンピュータまたはクラウドサーバ等)で動作するものであってもよい。
【0072】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【0073】
1 サーバシステム
2 制御部
4 第1制御部
6 第2制御部
8 第3制御部
10 学習部
12 記憶部
14 通信部
16 送信部
18 受信部
100、100a、100a’ 車両
102 制御部
112 記憶部
114 通信部
116 送信部
118 受信部
図1
図2
図3
図4
図5
図6
図7