(57)【要約】【課題】移動体のモジュールを効率よく利用する。【解決手段】移動体に着脱可能な所定モジュールが不足している第一地域を特定することと、所定モジュールに余剰がある第二地域を特定することと、第二地域において所定モジュールを搭載している移動体に対して、余剰な所定モジュールを、所定の移動体に提供するように指示することと、所定の移動体に対して、所定モジュールを第二地域で搭載して第一地域まで運ぶように指示することと、第一地域において所定モジュールを搭載していない移動体に対して、所定の移動体によって第一地域に運ばれた所定モジュールを受け取るように指示することと、を実行する。【選択図】図８
2020135613.tif 000002
【特許請求の範囲】
【請求項１】
移動体に着脱可能な所定モジュールが不足している第一地域を特定することと、
前記所定モジュールに余剰がある第二地域を特定することと、
前記第二地域において前記所定モジュールを搭載している移動体に対して、余剰な前記所定モジュールを、所定の移動体に提供するように指示することと、
前記所定の移動体に対して、前記所定モジュールを前記第二地域で搭載して前記第一地域まで運ぶように指示することと、
前記第一地域において前記所定モジュールを搭載していない移動体に対して、前記所定の移動体によって前記第一地域に運ばれた前記所定モジュールを受け取るように指示することと、
を実行する制御部を備える情報処理装置。
【請求項２】
前記制御部は、前記移動体に備わる周辺環境を検知するセンサによって取得されたデータに基づいて、前記第一地域を特定する、
請求項１に記載の情報処理装置。
【請求項３】
前記制御部は、前記所定モジュールの稼働状態に基づいて、前記第二地域を特定する、請求項１または２に記載の情報処理装置。
【請求項４】
コンピュータが、
移動体に着脱可能な所定モジュールが不足している第一地域を特定することと、
前記所定モジュールに余剰がある第二地域を特定することと、
前記第二地域において前記所定モジュールを搭載している移動体に対して、余剰な前記所定モジュールを、所定の移動体に提供するように指示することと、
前記所定の移動体に対して、前記所定モジュールを前記第二地域で搭載して前記第一地域まで運ぶように指示することと、
前記第一地域において前記所定モジュールを搭載していない移動体に対して、前記所定の移動体によって前記第一地域に運ばれた前記所定モジュールを受け取るように指示することと、
を実行する情報処理方法。
【請求項５】
コンピュータに、
移動体に着脱可能な所定モジュールが不足している第一地域を特定することと、
前記所定モジュールに余剰がある第二地域を特定することと、
前記第二地域において前記所定モジュールを搭載している移動体に対して、余剰な前記所定モジュールを、所定の移動体に提供するように指示することと、
前記所定の移動体に対して、前記所定モジュールを前記第二地域で搭載して前記第一地域まで運ぶように指示することと、
前記第一地域において前記所定モジュールを搭載していない移動体に対して、前記所定の移動体によって前記第一地域に運ばれた前記所定モジュールを受け取るように指示することと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理方法、プログラムに関する。
【背景技術】
【０００２】
自律走行する移動体による荷物の配送方法を指定した際に、自律走行する移動体による配送の可否を確認するシステムが知られている（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１８−１２４６７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１では、荷物の配送を行う移動体については記載があるが、他のサービスについては記載がなく、他のサービスに応用するためには改善の余地がある。本発明の目的は、移動体のモジュールを効率よく利用することにある。
【課題を解決するための手段】
【０００５】
本発明の態様の一つは、移動体に着脱可能な所定モジュールが不足している第一地域を特定することと、前記所定モジュールに余剰がある第二地域を特定することと、前記第二地域において前記所定モジュールを搭載している移動体に対して、余剰な前記所定モジュールを、所定の移動体に提供するように指示することと、前記所定の移動体に対して、前記所定モジュールを前記第二地域で搭載して前記第一地域まで運ぶように指示することと、前記第一地域において前記所定モジュールを搭載していない移動体に対して、前記所定の移動体によって前記第一地域に運ばれた前記所定モジュールを受け取るように指示することと、を実行する制御部を備える情報処理装置である。
【０００６】
本発明の態様の一つは、コンピュータが、移動体に着脱可能な所定モジュールが不足している第一地域を特定することと、前記所定モジュールに余剰がある第二地域を特定することと、前記第二地域において前記所定モジュールを搭載している移動体に対して、余剰な前記所定モジュールを、所定の移動体に提供するように指示することと、前記所定の移動体に対して、前記所定モジュールを前記第二地域で搭載して前記第一地域まで運ぶように指示することと、前記第一地域において前記所定モジュールを搭載していない移動体に対して、前記所定の移動体によって前記第一地域に運ばれた前記所定モジュールを受け取るように指示することと、を実行する情報処理方法である。
【０００７】
本発明の態様の一つは、コンピュータに、移動体に着脱可能な所定モジュールが不足している第一地域を特定することと、前記所定モジュールに余剰がある第二地域を特定することと、前記第二地域において前記所定モジュールを搭載している移動体に対して、余剰な前記所定モジュールを、所定の移動体に提供するように指示することと、前記所定の移動体に対して、前記所定モジュールを前記第二地域で搭載して前記第一地域まで運ぶように指示することと、前記第一地域において前記所定モジュールを搭載していない移動体に対して、前記所定の移動体によって前記第一地域に運ばれた前記所定モジュールを受け取るように指示することと、を実行させるプログラムである。
【発明の効果】
【０００８】
本発明によれば、移動体のモジュールを効率よく利用することができる。
【図面の簡単な説明】
【０００９】
【図１】実施形態に係る自動運転システムの概略構成を示す図である。
【図２】車両の移動について説明するための図である。
【図３】実施形態に係る自動運転システムを構成する車両及びサーバのそれぞれの構成の一例を概略的に示すブロック図である。
【図４】サーバの機能構成の一例を示す図である。
【図５】車両情報のテーブル構成を例示した図である。
【図６】調整情報のテーブル構成を例示した図である。
【図７】車両の機能構成の一例を示す図である。
【図８】実施形態に係る運行指令を送信する処理のフローチャートの一例である。
【図９】実施形態に係る車両を走行させる処理のフローチャートの一例である。
【発明を実施するための形態】
【００１０】
本発明の態様の一つである情報処理装置は、例えば、移動体が備えていてもよく、移動体を管理するサーバが備えていてもよい。移動体は、モジュールを１つだけ搭載可能であってもよく、２つ以上搭載可能であってもよい。また、搭載可能なモジュールの数が異なる複数種類の移動体が混在していてもよい。制御部は、第二地域において所定モジュールを搭載している移動体に対して、余剰な所定モジュールを、所定の移動体に提供するように指示する。例えば、所定モジュールを搭載する移動体が工場に移動してこの工場において所定モジュールを取り外す指示、又は、所定モジュールを搭載する移動体が所定の移動体に所定モジュールを直接渡す指示である。所定の移動体には、所定モジュールを複数搭載することができる。所定の移動体は、例えば、所定モジュールを運ぶ専用の移動体、第一地域から所定モジュールを取りに行く移動体、第二地域で所定モジュールを１つ以上搭載していた移動体、第二地域で所定モジュールを搭載していなかった移動体、第一地域及び第二地域以外の他の地域に配置されていた移動体である。第二地域では、所定モジュールを提供する移動体に対して、所定モジュール以外の他のモジュールを代わりに搭載してもよい。
【００１１】
制御部は、所定の移動体に対して、所定モジュールを第二地域で搭載して第一地域まで運ぶように指示する。この指示には、例えば、第二地域において所定モジュールを搭載する指示、第二地域から第一地域まで所定モジュールを運ぶ指示、及び、第一地域において所定モジュールを提供する指示を含む。この所定モジュールを提供する指示は、工場において所定モジュールを降ろす指示であってもよく、第一地域の移動体に所定モジュールを直接渡す指示であってもよい。所定の移動体によって第一地域に運ばれた所定モジュールは、第一地域の移動体であって所定モジュールを搭載していない移動体に提供される。制御部は、第一地域において所定モジュールを搭載していない移動体に対して、所定モジュールを受け取るように指示する。この指示では、例えば、工場まで走行してその工場において所定モジュールを搭載する指示、または、所定の移動体から所定モジュールを直接受け取る指示が含まれる。
【００１２】
このようにして、第一地域における所定モジュールの不足を、第二地域から運ばれる所定モジュールによって解消することができため、所定モジュールを効率的に利用することができる。そのため、必要以上の所定モジュールを用意しておく必要がなくなるので、所定モジュールの製造にかかるコストを削減することができる。また、所定モジュールを必要以上に用意しておくと、所定モジュールを保管する倉庫等が必要となるが、その倉庫等も削減することができる。
【００１３】
前記制御部は、前記移動体に備わる周辺環境を検知するセンサによって取得されたデータに基づいて、前記第一地域を特定してもよい。
【００１４】
例えば、イメージセンサによって火災などの災害等を検知した場合には、移動体が救急車や消防車として機能するモジュールが不足すると判断し、第一地域として特定してもよい。また、災害等の規模によって必要となるモジュールの数が変わることもある。したがって、センサによって取得されたデータに基づいて、災害等の規模を把握して、モジュールが不足するか否か判断してもよい。なお、前記制御部は、ユーザからの要請に基づいて、前記第一地域を特定してもよい。例えば、ユーザがイベントを行うことによって、例えば照明や音響設備として移動体を機能させるためのモジュールが不足することも考えられる。このような場合にユーザから要請があれば、第一地域を容易に特定することができる。
【００１５】
前記制御部は、前記所定モジュールの稼働状態に基づいて、前記第二地域を特定してもよい。
【００１６】
例えば、所定モジュールが稼働状態であれば、その所定モジュールは余剰でないと判断してもよい。また、例えば、所定モジュールが稼働状態でなければ、その所定モジュールが余剰であると判断してもよい。このようにして第二地域を容易に特定することができる。
【００１７】
以下、図面に基づいて、本発明の実施の形態を説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。また、以下の実施形態は可能な限り組み合わせることができる。
【００１８】
＜実施形態＞
（自動運転システムの概要）
図１は、実施形態に係る自動運転システム１の概略構成を示す図である。自動運転システム１は、例えば、車両１０及びサーバ３０を含む。車両１０は、移動体の一例である。車両１０には、各種モジュールが着脱可能である。車両１０が搭載するモジュールを変更することによって、車両１０の機能を変更することができる。また、車両１０は複数のモジュールを搭載することもできる。各モジュールは、機能しない状態で車両１０に搭載することも可能である。
【００１９】
自動運転システム１は、第一地域において所定モジュールが不足した場合に、他の地域（第二地域）においてその所定モジュールが余剰であれば、その余剰分の所定モジュールを車両１０が第二地域から第一地域まで運ぶシステムである。その際に、夫々の車両１０が第二地域から第一地域に所定モジュールを運ぶと、輸送コストが大きくなるため、第二地域から第一地域に所定モジュールを運ぶ車両１０には、複数の所定モジュールを搭載させる。すなわち、第二地域において複数の所定モジュールを搭載した車両１０が第一地域まで走行し、第一地域において、所定モジュールを複数の車両１０に提供する。このようにして、第一地域では、所定モジュールの不足が解消される。また、モジュールの輸送コストも低減することができる。また、製造する所定モジュールの数を低減することができる。
【００２０】
車両１０とサーバ３０とは、ネットワークＮ１によって相互に接続されている。ネットワークＮ１は、例えば、インターネット等の世界規模の公衆通信網でありＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やその他の通信網が採用されてもよい。また、ネットワークＮ１は、携帯電話等の電話通信網、ＷｉＦｉ等の無線通信網を含んでもよい。
【００２１】
図２は、車両１０の移動について説明するための図である。図１及び図２において、車両１０Ａは、第一地域Ｌ１においてモジュール４０を受け取る車両（以下、第一車両とも
いう。）である。また、車両１０Ｂは、第二地域Ｌ２においてモジュール４０を渡す車両（以下、第二車両ともいう。）である。また、車両１０Ｃは、モジュール４０を複数搭載して第二地域Ｌ２から第一地域Ｌ１まで運ぶ車両（以下、第三車両ともいう。）である。第一車両１０Ａ、第二車両１０Ｂ、第三車両１０Ｃは、夫々複数存在することができる。なお、以下において、第一車両１０Ａ、第二車両１０Ｂ、第三車両１０Ｃを区別しない場合には、単に車両１０という。第一地域Ｌ１には、モジュール４０を着脱可能な第一工場Ｆ１が設けられている。第二地域Ｌ２には、モジュール４０を着脱可能な第二工場Ｆ２が設けられている。図２に示したモジュール４０は、全て同じ機能を有するモジュールである。モジュール４０は、例えば、災害時に車両１０を救急車または消防車として機能させることができるもの、または、イベント時に照明またはスピーカ等を提供する機能を有するものである。
【００２２】
サーバ３０は、モジュール４０が不足している第一地域Ｌ１を特定すると、そのモジュール４０が余剰である第二地域Ｌ２を特定する。サーバ３０は、第二地域Ｌ２に存在する第二車両１０Ｂに対して、第二工場Ｆ２まで移動して第二工場Ｆ２においてモジュール４０を降ろすように指示するための運行指令を生成する。また、サーバ３０は、第三車両１０Ｃに対して、第二工場Ｆ２まで移動してモジュール４０を複数搭載し、さらに、その後に第一工場Ｆ１まで移動してモジュール４０を降ろすように指示するための運行指令を生成する。また、サーバ３０は、第一車両１０Ａに対して、第一工場Ｆ１まで移動して第一工場Ｆ１においてモジュール４０を搭載するように指示するための運行指令を生成する。サーバ３０が生成した運行指令は、サーバ３０から各車両１０に送信される。運行指令を受信した車両１０は、この運行指令にしたがって自律走行する。
【００２３】
（ハードウェア構成）
図３に基づいて、車両１０及びサーバ３０のハードウェア構成について説明する。図３は、本実施形態に係る自動運転システム１を構成する車両１０及びサーバ３０のそれぞれの構成の一例を概略的に示すブロック図である。
【００２４】
サーバ３０は、一般的なコンピュータの構成を有している。サーバ３０は、プロセッサ３１、主記憶部３２、補助記憶部３３、通信部３４を有する。これらは、バスにより相互に接続される。
【００２５】
プロセッサ３１は、ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）等である。プロセッサ３１は、サーバ３０を制御し、様々な情報処理の演算を
行う。プロセッサ３１は、「制御部」の一例である。主記憶部３２は、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等である。補助記憶部３３は、ＥＰＲＯＭ（Erasable Programmable ROM）、ハードディスクドライブ（ＨＤＤ、Hard Disk Drive）、リムーバブルメディア等である。補助記憶部３３には、オペレーティングシステム（Operating System :ＯＳ）、各種プログラム、各種テーブル等が格納される。補助記憶部３３に格納されたプログラムをプロセッサ３１が主記憶部３２の作業領域にロードして実行し、このプログラムの実行を通じて各構成部等が制御される。これにより、所定の目的に合致した機能をサーバ３０が実現する。主記憶部３２および補助記憶部３３は、コンピュータで読み取り可能な記録媒体である。なお、サーバ３０は、単一のコンピュータであってもよいし、複数台のコンピュータが連携したものであってもよい。また、補助記憶部３３に格納される情報は、主記憶部３２に格納されてもよい。また、主記憶部３２に格納される情報は、補助記憶部３３に格納されてもよい。
【００２６】
通信部３４は、ネットワークＮ１経由で車両１０、ユーザ端末２０と通信を行う手段である。通信部３４は、例えば、ＬＡＮ（Local Area Network）インターフェースボード、無線通信のための無線通信回路である。ＬＡＮインターフェースボードや無線通信回路は
、ネットワークＮ１に接続される。
【００２７】
なお、サーバ３０で実行される一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。サーバ３０のハードウェア構成は、図３に示されるものに限定されない。また、サーバ３０の一部または全ての構成が、車両１０に搭載されていてもよい。
【００２８】
次に、車両１０について説明する。車両１０は、プロセッサ１１、主記憶部１２、補助記憶部１３、入力部１４、出力部１５、通信部１６、位置情報センサ１７、環境情報センサ１８、駆動部１９を有する。これらは、バスにより相互に接続される。プロセッサ１１、主記憶部１２、補助記憶部１３については、サーバ３０のプロセッサ３１、主記憶部３２、補助記憶部３３と同様であるため、説明を省略する。
【００２９】
入力部１４は、ユーザが行った入力操作を受け付ける手段であり、例えば、タッチパネル、押しボタン等である。出力部１５は、ユーザに対して情報を提示する手段であり、例えば、ＬＣＤ（Liquid Crystal Display）、ＥＬ（Electroluminescence）パネル、スピ
ーカ、ランプ等である。入力部１４及び出力部１５は、１つのタッチパネルディスプレイとして構成してもよい。入力部１４及び出力部１５は、例えば、車両１０を利用するユーザまたは車両１０を管理するユーザが利用できる。通信部１６は、車両１０をネットワークＮ１に接続するための通信手段である。通信部１６は、例えば、移動体通信サービス（３Ｇ（3rd Generation）やＬＴＥ（Long Term Evolution）等の電話通信網、ＷｉＦｉ等
の無線通信）を利用して、ネットワークＮ１経由で他の装置（例えばサーバ３０等）と通信を行うための回路である。
【００３０】
位置情報センサ１７は、所定の周期で、車両１０の位置情報（例えば緯度、経度）を取得する。位置情報センサ１７は、例えば、ＧＰＳ（Global Positioning System）受信部
、ＷｉＦｉ通信部等である。位置情報センサ１７で取得された情報は、例えば、補助記憶部１３等に記録され、サーバ３０に送信される。
【００３１】
環境情報センサ１８は、車両１０の状態をセンシングしたり車両１０の周辺をセンシングしたりする手段である。車両１０の状態をセンシングするためのセンサとして、加速度センサ、速度センサ、方位角センサが挙げられる。車両１０の周辺をセンシングするためのセンサとして、イメージセンサ、レーザスキャナ、ＬＩＤＡＲ、レーダなどが挙げられる。
【００３２】
駆動部１９は、プロセッサ１１が生成した制御指令に基づいて、車両１０を走行させる。駆動部１９は、例えば、車両１０が備える車輪を駆動するためのモータやインバータ、ブレーキ、ステアリング機構等を含んで構成され、制御指令に従ってモータやブレーキ等が駆動されることで、車両１０の自律走行が実現される。
【００３３】
（機能構成：サーバ）
図４は、サーバ３０の機能構成の一例を示す図である。サーバ３０は、機能構成要素として、車両管理部３０１、調整部３０２、運行指令生成部３０３、車両情報ＤＢ３１１、調整情報ＤＢ３１２、地図情報ＤＢ３１３を含む。車両管理部３０１、調整部３０２、運行指令生成部３０３は、例えば、サーバ３０のプロセッサ３１が、補助記憶部３３に記憶された各種プログラムを実行することで提供される機能構成要素である。
【００３４】
車両情報ＤＢ３１１、調整情報ＤＢ３１２、地図情報ＤＢ３１３は、プロセッサ３１によって実行されるデータベース管理システム（Ｄａｔａｂａｓｅ  Ｍａｎａｇｅｍｅｎｔ
Ｓｙｓｔｅｍ、ＤＢＭＳ）のプログラムが、補助記憶部３３に記憶されるデータを管理
することで構築される、例えば、リレーショナルデータベースである。なお、サーバ３０の各機能構成要素のいずれか、またはその処理の一部は、ネットワークＮ１に接続される他のコンピュータにより実行されてもよい。
【００３５】
車両管理部３０１は、車両情報を管理する。車両情報には、車両１０の位置情報及び車両１０のモジュール情報が含まれる。車両１０の位置情報は、車両１０の現在位置に関する情報であり、車両１０のモジュール情報は、車両１０が搭載しているモジュールに関する情報である。車両管理部３０１は、例えば、所定の周期で車両１０から送信された位置情報、または、サーバ３０からの要求に応じて車両１０から送信された位置情報を取得して管理する。車両管理部３０１は、位置情報を車両ＩＤと関連付けて車両情報ＤＢ３１１に格納する。また、車両管理部３０１は、例えば、所定の周期で車両１０から送信されたモジュール情報、または、サーバ３０からの要求に応じて車両１０から送信されたモジュール情報を取得して管理する。なお、サーバ３０からの指示により車両１０にモジュールが搭載される場合には、サーバ３０が車両１０に指示したモジュールに関する情報を車両ＩＤと関連付けて車両情報ＤＢ３１１に格納してもよい。
【００３６】
また、車両１０のモジュール情報には、モジュールの稼働状況を示す情報も含まれる。そのため、車両管理部３０１は、車両１０に搭載されているモジュールの稼働状況を管理する。車両１０が複数のモジュールを搭載している場合には、夫々のモジュールについて稼働状況を管理する。車両１０に搭載されているモジュールが機能している場合に、モジュールが稼働状態であるといえる。一方、車両１０に搭載されているモジュールであっても機能していない場合には、モジュールが待機状態であるといえる。車両管理部３０１は、各モジュールの稼働状況を車両ＩＤと関連付けて車両情報ＤＢ３１１に格納する。この稼働状況は、例えば、所定の周期で車両１０から送信されてもよい。また、運行指令生成部３０３の指示によってモジュールが稼働する場合には、運行指令生成部３０３の指示に応じて車両管理部３０１が稼働状況を取得してもよい。
【００３７】
調整部３０２は、地域毎のモジュールの過不足を調整する。そのために、調整部３０２は、モジュールが不足している地域（第一地域Ｌ１）と、モジュールが余剰である地域（第二地域Ｌ２）とを特定する。調整部３０２は、例えば、車両１０からの通知、又は、所定のユーザからの通知に基づいて、モジュールが不足している地域を特定する。なお、車両１０または所定のユーザは、モジュールが不足していることや、モジュールが不足している地域を通知してもよい。所定のユーザには、所定の公的機関又は所定の報道機関が含まれる。
【００３８】
調整部３０２は、イベント発生時に、必要になるモジュールの数を特定し、そのイベントが発生した地域に存在するモジュールの数と比較する。そして、イベントが発生した地域に存在するモジュールの数が、そのイベントに対応するために必要となるモジュールの数よりも少なければ、その地域においてモジュールが不足していると判断する。これにより、モジュールが不足している地域が特定される。イベントが発生した地域に存在するモジュールの数は、後述する車両情報ＤＢ３１１に格納されている情報から得る。また、イベント発生時に必要になるモジュールの数は、イベント毎に予め定められていてもよく、所定のユーザからの通知に基づいて定めてもよい。また、イベント発生時に必要になるモジュールの数は、イベントの規模に応じて変化させてもよい。イベントの規模に対応するモジュールの数は、予め定めておく。調整部３０２は、イベントに対応するために必要となるモジュールの数から、イベントが発生した地域に存在するモジュールの数を減算することにより、不足しているモジュールの数を算出する。
【００３９】
例えば、災害の発生を検出した車両１０からの通知、所定のユーザからの通知に基づいて、調整部３０２が災害の発生を検出する。これらの通知には、例えば、災害の種類、災
害の規模、災害の発生場所等の情報が含まれていてもよい。車両１０は、例えば、環境情報センサ１８がセンシングした情報に基づいて災害の発生、災害の種類、災害の規模を検出し、これらの情報をサーバ３０に送信する。また、所定のユーザが所持する端末等に所定のユーザが所定の入力を行うことにより、災害の発生、災害の種類、災害の規模等に関する情報がサーバ３０に送信されてもよい。調整部３０２は、災害の発生を検出すると、その災害に対応可能なモジュールが、災害の発生地域において不足しているか否か判定する。災害に対応するモジュールは災害の種類に応じて予め決まっている。また、災害の規模に応じて必要となるモジュールの数も予め決まっている。調整部３０２は、災害の発生地域において存在するモジュールの数が、災害の規模に応じて必要となるモジュールの数よりも少ない場合に、災害が発生した地域においてモジュールが不足していると判断する。このようにして、調整部３０２は、モジュールの不足を検出し、モジュールが不足している第一地域Ｌ１を特定する。
【００４０】
また、調整部３０２は、第一地域Ｌ１において不足しているモジュールが余剰である地域を特定する。なお、車両１０または所定のユーザが、モジュールが余剰であることや、モジュールが余剰である地域を通知してもよい。例えば、イベントが発生していない場合におけるモジュールの必要数を地域毎に予め設定しておき、この必要数よりも多くのモジュールが存在している地域では、モジュールが余剰であると判断される。また、例えば、以前のイベント発生時に他の地域から運ばれてきたモジュールが存在する地域では、イベント終了後にそのモジュールが余剰であると判断してもよい。また、待機状態のモジュールは全て余剰であると判断してもよい。このようにして、調整部３０２は、モジュールの余剰を検出し、モジュールが余剰である第二地域Ｌ２を特定する。
【００４１】
調整部３０２は、モジュールが不足している第一地域Ｌ１、及びモジュールが余剰な第二地域Ｌ２を特定すると、第二地域Ｌ２においてモジュールを取り外す第二車両１０Ｂ、第二地域Ｌ２から第一地域Ｌ１にモジュールを運ぶ第三車両１０Ｃ、第一地域Ｌ１においてモジュールを搭載する第一車両１０Ａを夫々選定する。調整部３０２は、例えば、第二地域Ｌ２に存在する車両１０であってモジュールを搭載している車両１０の中から、モジュールの不足数に応じた台数の車両１０を第二車両１０Ｂとして選定する。このときには、第二工場Ｆ２からの距離が近い順に第二車両１０Ｂを選定してもよい。また、調整部３０２は、第一地域Ｌ１に存在する車両１０であってモジュールを搭載していない車両１０の中から、モジュールの不足数に応じた台数の車両１０を第一車両１０Ａとして選定する。このときには、第一工場Ｆ１からの距離が近い順に第一車両１０Ａを選定してもよい。また、調整部３０２は、例えば輸送コスト等に基づいて第三車両１０Ｃを選定する。例えば、より多くのモジュールを搭載可能な車両１０、または、第二地域Ｌ２から第一地域Ｌ１まで走行するときに要する電力量が最も小さい車両１０等が第三車両１０Ｃとして選定される。第三車両１０Ｃは、第二地域Ｌ２においてモジュールを予め搭載した車両１０の中から選定してもよい。
【００４２】
運行指令生成部３０３は、第一車両１０Ａ、第二車両１０Ｂ、及び、第三車両１０Ｃの夫々に対応する運行指令を生成する。第二車両１０Ｂに対しては、第二工場Ｆ２まで移動し、第二工場Ｆ２においてモジュールを降ろすように運行指令を生成する。第一車両１０Ａに対しては、第一工場Ｆ１まで移動し、第一工場Ｆ１においてモジュールを搭載するように運行指令を生成する。第三車両１０Ｃに対しては、第二工場Ｆ２まで移動し、第二工場Ｆ２においてモジュールを搭載した後、第一工場Ｆ１まで移動し、第一工場Ｆ１においてモジュールを降ろすように運行指令が生成される。運行指令生成部３０３は、生成した運行指令を、対応する各車両１０に送信する。なお、本実施形態に係る運行指令生成部３０３は、後述する地図情報ＤＢ３１３に格納されている地図情報に基づいて移動経路を生成してもよい。移動経路は、車両１０の移動距離が最短になる経路や、車両１０の移動時間が最短になる経路等の予め決められたルールにしたがった経路となるように生成される
。この場合、運行指令生成部３０３は、移動経路を含む運行指令を車両１０に送信する。なお、モジュールを搭載した第一車両１０Ａに対しては、その後にイベントに対応するように運行指令生成部３０３によって運行指令が生成される。イベントに対応する運行指令の生成には周知の技術を用いることができる。
【００４３】
車両情報ＤＢ３１１は、補助記憶部３３に車両情報が格納されて形成されており、そこでは車両ＩＤと車両情報との紐付けが行われている。ここで、車両情報ＤＢ３１１に格納される車両情報の構成について、図５に基づいて説明する。図５は、車両情報のテーブル構成を例示した図である。車両情報テーブルは、車両ＩＤ、位置情報、モジュール、稼働状況の各フィールドを有する。車両ＩＤフィールドには、車両１０を特定する識別情報が入力される。位置情報フィールドには、車両１０が送信した位置情報が入力される。この位置情報は、車両１０の現在地を示す情報である。モジュールフィールドには、車両１０が対応するモジュールを示す情報が入力される。なお、車両１０には複数のモジュールを搭載することができ、図５では、車両１０の一台当たりに４つのモジュールが対応している。稼働状況フィールドには、各モジュールの稼働状況を示す情報が入力されている。稼働状況は、例えば車両１０から送信されてもよい。図５に示す「待機」は、モジュールが稼働していない状態であることを示し、「稼働」は、モジュールが稼働している状態であることを示している。
【００４４】
調整情報ＤＢ３１２は、補助記憶部３３に調整情報（地域毎のモジュールの必要数に関する情報）が格納されて形成されている。ここで、調整情報ＤＢ３１２に格納される調整情報の構成について、図６に基づいて説明する。図６は、調整情報のテーブル構成を例示した図である。調整情報テーブルは、地域、モジュール、必要数の各フィールドを有する。地域フィールドには、地域を特定するための情報が入力される。地域は、例えば、市町村などの行政区画に応じて設定されてもよい。調整部３０２により第一地域が特定されると、第一地域を示す情報が地域フィールドに入力される。モジュールフィールドには、第一地域で不足しているモジュールを特定するための情報が入力される。必要数フィールドには、第一地域において必要とされているモジュールの数を特定するための情報が入力される。例えば、調整部３０２は、イベントに対応するために必要となるモジュールの数から、第一地域に存在するモジュールの数を減算することによりモジュールの必要数を算出して必要数フィールドにその必要数を示す情報を入力する。
【００４５】
地図情報ＤＢ３１３には、地図データ、当該地図データ上の各地点の特性を示す文字や写真等のＰＯＩ（Point of Interest）情報を含む地図情報が格納される。なお、地図情
報ＤＢ３１３は、ネットワークＮ１に接続される他のシステム、例えば、ＧＩＳ（Geographic Information System）から提供されてもよい。また、地図データには、各地域にお
いて車両１０にモジュールを着脱可能な工場の所在地に関する情報が含まれる。
【００４６】
（機能構成：車両）
図７は、車両１０の機能構成の一例を示す図である。車両１０は、機能構成要素として、運行計画生成部１０１、環境検出部１０２、車両制御部１０３、位置情報送信部１０４を含む。運行計画生成部１０１、環境検出部１０２、車両制御部１０３、位置情報送信部１０４は、例えば、車両１０のプロセッサ１１が、補助記憶部１３に記憶された各種プログラムを実行することで提供される機能構成要素である。
【００４７】
運行計画生成部１０１は、サーバ３０から運行指令を取得し、自身の運行計画を生成する。運行計画生成部１０１は、サーバ３０から与えられた運行指令に基づいて、車両１０の移動経路を算出し、移動経路を移動する運行計画を生成する。
【００４８】
環境検出部１０２は、環境情報センサ１８が取得したデータに基づいて、自律走行に必
要な車両１０の周囲の環境を検出する。検出の対象は、例えば、車線の数や位置、車両１０の周囲に存在する他の移動体の数や位置、自身の周囲に存在する障害物（例えば歩行者、自転車、構造物、建築物など）の数や位置、道路の構造、道路標識などであるが、これらに限られない。自律的な走行を行うために必要なものであれば、検出の対象はどのようなものであってもよい。例えば、環境情報センサ１８がステレオカメラである場合には、それにより撮像された画像データを画像処理することで車両１０の周囲の物体検出が行われる。環境検出部１０２が検出した、車両１０の周囲環境に関するデータ（以下、環境データという）は、後述する車両制御部１０３へ送信される。また、環境検出部１０２は、環境情報センサ１８が取得したデータに基づいて、イベントの発生を検出する。例えば、イメージセンサによって撮像された画像に基づいて災害の発生を検出する。
【００４９】
車両制御部１０３は、運行計画生成部１０１が生成した運行計画と、環境検出部１０２が生成した環境データ、ならびに、位置情報センサ１７が取得した車両１０の位置情報に基づいて、車両１０の自律的な走行を制御するための制御指令を生成する。例えば、車両制御部１０３は、所定の経路に沿って走行し、かつ、車両１０を中心とする所定の安全領域内に障害物が進入しないように車両１０を走行させるべく制御指令を生成する。生成された制御指令は、駆動部１９へ送信される。車両１０を自律移動させるための制御指令の生成方法については、公知の方法を採用することができる。
【００５０】
位置情報送信部１０４は、位置情報センサ１７から取得される位置情報を、通信部１６を介してサーバ３０に送信する。位置情報送信部１０４が位置情報を送信するタイミングは適宜設定可能であり、例えば、定期的に送信してもよいし、何らかの情報をサーバ３０に送信するタイミングに合わせて送信してもよいし、サーバ３０からの要求に応じて送信してもよい。位置情報送信部１０４は、自車両を一意に識別する識別情報（車両ＩＤ）とともに、位置情報をサーバ３０に送信する。なお、車両１０を識別する車両ＩＤは、予め割り当てられる。
【００５１】
（処理の流れ：サーバ）
次に、サーバ３０が車両１０に運行指令を送信する処理について説明する。図８は、本実施形態に係る運行指令を送信する処理のフローチャートの一例である。図８に示す処理は、サーバ３０のプロセッサ３１によって所定の時間毎に実行される。なお、ここでは、車両情報ＤＢ３１１、及び、調整情報ＤＢ３１２を構築するために必要な情報をサーバ３０が既に受信しているものとする。
【００５２】
ステップＳ１０１では、モジュールの不足を検出したか否か調整部３０２が判定する。調整部３０２は、調整情報ＤＢ３１２にアクセスして、モジュールが不足している第一地域Ｌ１が新たに追加されていないか判定する。ステップＳ１０１で肯定判定された場合にはステップＳ１０２へ進み、否定判定された場合には本ルーチンを終了させる。
【００５３】
ステップＳ１０２では、調整部３０２が第一地域Ｌ１を特定する。調整部３０２は、調整情報ＤＢ３１２にアクセスしてモジュールが不足している第一地域Ｌ１を特定する。次にステップＳ１０３では、調整部３０２が第二地域Ｌ２を特定する。調整部３０２は、車両情報ＤＢ３１１にアクセスして、ステップＳ１０２で不足しているモジュールと同じモジュールの稼働状況が「待機」であるモジュールが、第一地域Ｌ１における必要数以上存在する地域をピックアップする。各車両１０が配置されている地域は、各車両１０の位置情報に基づいて特定される。このようにしてピックアップされた地域が、モジュールに余剰がある第二地域Ｌ２として特定される。
【００５４】
ステップＳ１０４では、調整部３０２が第一車両１０Ａを選定する。第一車両１０Ａは、ステップＳ１０２において特定された第一地域Ｌ１に存在するモジュールを搭載してい
ない車両１０の中から、モジュールの必要数に応じて選定される。この第一車両１０Ａは、例えば、第一工場Ｆ１からの距離が短い順に選定してもよい。ステップＳ１０５では、運行指令生成部３０３が、第一車両１０Ａの運行指令を生成する。運行指令生成部３０３は、第一車両１０Ａに対して、第一工場Ｆ１まで移動して第一工場Ｆ１においてモジュールを搭載するように運行指令を生成する。
【００５５】
ステップＳ１０６では、調整部３０２が第二車両１０Ｂを選定する。第二車両１０Ｂは、ステップＳ１０３において特定された第二地域Ｌ２に位置する稼働状況が「待機」であるモジュールを搭載する第二車両１０Ｂの中から、モジュールの必要数に応じて選定される。この第二車両１０Ｂは、例えば、第二工場Ｆ２からの距離が短い順に選定してもよい。ステップＳ１０７では、運行指令生成部３０３が、第二車両１０Ｂの運行指令を生成する。運行指令生成部３０３は、第二車両１０Ｂに対して、第二工場Ｆ２まで移動して第二工場Ｆ２においてモジュールを降ろすように運行指令を生成する。
【００５６】
ステップＳ１０８では、調整部３０２が第三車両１０Ｃを選定する。第三車両１０Ｃは、ステップＳ１０３において特定された第二地域Ｌ２に位置する車両１０の中から、モジュールの必要数に応じて選定される。第三車両１０Ｃは、複数の同じモジュールを搭載する。ステップＳ１０９では、運行指令生成部３０３が、第三車両１０Ｃの運行指令を生成する。運行指令生成部３０３は、第三車両１０Ｃに対して、第二工場Ｆ２まで移動してモジュールを複数搭載し、その後に第一工場Ｆ１まで移動してモジュールを降ろすように運行指令を生成する。
【００５７】
なお、第二工場Ｆ２において人が第二車両１０Ｂから第三車両１０Ｃにモジュールを載せ換えてもよいし、自動化された機械が第二車両１０Ｂから第三車両１０Ｃにモジュールを載せ換えてもよい。また、第一工場Ｆ１において人が第三車両１０Ｃから第一車両１０Ａにモジュールを載せ換えてもよいし、自動化された機械が第三車両１０Ｃから第一車両１０Ａにモジュールを載せ換えてもよい。また、モジュールの乗せ換えについては、第一工場Ｆ１や第二工場Ｆ２に限らず、例えば、駐車場等で行ってもよい。また、第一工場Ｆ１において、第一車両１０Ａが搭載していたモジュールであって現時点では必要のないモジュールを、第三車両１０Ｃに乗せ換えてもよい。また、第二工場Ｆ２において、第三車両１０Ｃが搭載していたモジュールであって現時点では必要のないモジュールを、第二車両１０Ｂに乗せ換えてもよい。第三車両１０Ｃは、第一地域Ｌ１から第二地域Ｌ２までモジュールを受け取りに行く車両であってもよい。また、第三車両１０Ｃは、第一地域Ｌ１及び第二地域Ｌ２以外の地域から第二地域Ｌ２まで移動してモジュールを搭載してもよい。また、第三車両１０Ｃは、第二地域Ｌ２から第一地域Ｌ１まで移動する間に他の地域においてモジュールを更に搭載してもよい。
【００５８】
そして、ステップＳ１１０では、第二車両１０Ｂに対して、運行指令生成部３０３が運行指令を送信し、ステップＳ１１１では、第三車両１０Ｃに対して、運行指令生成部３０３が運行指令を送信し、ステップＳ１１２では、第一車両１０Ａに対して、運行指令生成部３０３が運行指令を送信する。なお、ステップＳ１１０の処理が終了し、第二地域Ｌ２において必要数のモジュールが集まった後に、ステップＳ１１１へ進んで、第三車両１０Ｃに対して運行指令を送信してもよい。また、ステップＳ１１１の処理が終了し、第三車両１０Ｃが第一地域Ｌ１に到着した後に、ステップＳ１１２へ進んで、第一車両１０Ａに対して運行指令を送信してもよい。
【００５９】
（処理の流れ：車両）
次に、車両１０を走行させる処理について説明する。図９は、本実施形態に係る車両１０を走行させる処理のフローチャートの一例である。図９に示す処理は、車両１０のプロセッサ１１によって所定の時間毎に実行される。なお、本フローチャートは、待機状態に
ある車両１０について実行される。
【００６０】
ステップＳ２０１では、サーバ３０から運行指令を受信したか否かを運行計画生成部１０１が判定する。ステップＳ２０１で肯定判定された場合にはステップＳ２０２へ進み、否定判定された場合には本ルーチンを終了させる。ステップＳ２０２では、運行計画生成部１０１が運行指令にしたがって運行計画を生成する。ステップＳ２０３では、車両制御部１０３が運行計画にしたがって制御指令を生成し、この制御指令にしたがって駆動部１９が制御され、車両１０が移動する。例えば、第二車両１０Ｂは第二工場Ｆ２まで移動し、第一車両１０Ａは第一工場Ｆ１まで移動し、第三車両１０Ｃは、先ず第二工場Ｆ２まで移動し、その後、第一工場Ｆ１まで移動する。なお、第三車両１０Ｃは、第一地域Ｌ１において他のモジュールを搭載して第二地域Ｌ２まで戻り、第二地域Ｌ２において第二車両１０Ｂに他のモジュールを提供してもよい。
【００６１】
以上説明したように本実施形態によれば、モジュールに余剰がある地域から、モジュールが不足している地域に、車両１０が自律走行によってモジュールを運ぶため、特定の地域においてモジュールが不足することを抑制できる。ここで、全ての地域においてイベントの発生等を想定してモジュールを用意しておくと、より多くのモジュールを製造する必要があり、コストが大きくなる。また、イベントが発生していないときには、モジュールを保管する場所も必要となる。これに対して、本実施形態に係る自動運転システム１によれば、必要以上にモジュールを用意する必要がなく、保管場所の面積も小さくて済むので、コストを抑えることができる。また、車両１０同士でモジュールを交換することにより、モジュールの保管場所を別途設ける必要がなくなる。
【００６２】
＜その他の実施形態＞
上記の実施形態はあくまでも一例であって、本発明はその要旨を逸脱しない範囲内で適宜変更して実施し得る。
【００６３】
本開示において説明した処理や手段は、技術的な矛盾が生じない限りにおいて、自由に組み合わせて実施することができる。
【００６４】
また、１つの装置が行うものとして説明した処理が、複数の装置によって分担して実行されてもよい。あるいは、異なる装置が行うものとして説明した処理が、１つの装置によって実行されても構わない。コンピュータシステムにおいて、各機能をどのようなハードウェア構成（サーバ構成）によって実現するかは柔軟に変更可能である。上記実施形態では、サーバ３０が、機能構成要素として、車両管理部３０１、調整部３０２、運行指令生成部３０３、車両情報ＤＢ３１１、調整情報ＤＢ３１２、地図情報ＤＢ３１３を含んでいるが、これらの機能構成要素の一部または全部が、車両１０に含まれていてもよい。例えば、各地域にサーバ３０の代わりになる車両１０が配置されていてもよい。また、各車両１０がサーバ３０と同じ機能を持っていてもよい。この場合、モジュールの不足を車車間通信を用いて周りの車両１０に順次伝えていってもよい。
【００６５】
本発明は、上記の実施形態で説明した機能を実装したコンピュータプログラムをコンピュータに供給し、当該コンピュータが有する１つ以上のプロセッサがプログラムを読み出して実行することによっても実現可能である。このようなコンピュータプログラムは、コンピュータのシステムバスに接続可能な非一時的なコンピュータ可読記憶媒体によってコンピュータに提供されてもよいし、ネットワークを介してコンピュータに提供されてもよい。非一時的なコンピュータ可読記憶媒体は、例えば、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクドライブ（ＨＤＤ）等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤディスク、ブルーレイディスク等）など任意のタイプのディスク、読み込み専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気
カード、フラッシュメモリ、光学式カード、電子的命令を格納するために適した任意のタイプの媒体を含む。
【符号の説明】
【００６６】
１  自動運転システム
１０  車両
３０  サーバ
３１  プロセッサ
３２  主記憶部
３３  補助記憶部
３４  通信部
【図１】
2020135613.tif 000003
【図２】
2020135613.tif 000004
【図３】
2020135613.tif 000005
【図４】
2020135613.tif 000006
【図５】
2020135613.tif 000007
【図６】
2020135613.tif 000008
【図７】
2020135613.tif 000009
【図８】
2020135613.tif 000010
【図９】
2020135613.tif 000011