(57)【要約】【課題】制御の自由度の向上を図ることができる移動体制御システム、移動体システム、移動体制御方法及びプログラムを提供する。【解決手段】移動体制御システム１は、制御部４２と、ノード生成部３２と、パス生成部３３と、を備えている。制御部４２は、所定エリア内を移動する移動体２を制御する。ノード生成部３２は、所定エリアに対応するマップにおける任意の位置に、それぞれ移動体２を制御可能なノードである一対の指定ノードを生成する。パス生成部３３は、一対の指定ノード間にパスを生成する。制御部４２は、所定エリアにおいてパスに対応する移動経路に沿って移動体２を移動させる。【選択図】図２
2020008962.tif 000002
【特許請求の範囲】
【請求項１】
所定エリア内を移動する移動体を制御する制御部と、
前記所定エリアに対応するマップにおける任意の位置に、それぞれ前記移動体を制御可能なノードである一対の指定ノードを生成するノード生成部と、
前記一対の指定ノード間にパスを生成するパス生成部と、を備え、
前記制御部は、前記所定エリアにおいて前記パスに対応する移動経路に沿って前記移動体を移動させる、
移動体制御システム。
【請求項２】
前記一対の指定ノードの間隔が上限値以上である場合、前記パス上に、前記一対の指定ノードとは別のノードである仮想ノードを、少なくとも１つ生成する仮想ノード生成部を更に備える、
請求項１に記載の移動体制御システム。
【請求項３】
前記仮想ノード生成部は、前記パス上における隣接する前記ノード同士の間隔が、下限値以上かつ前記上限値未満となるように、前記仮想ノードの個数及び位置を決定する、
請求項２に記載の移動体制御システム。
【請求項４】
予約部を更に備え、
前記移動体は複数あり、
前記予約部は、前記複数の移動体のうちの一の移動体である対象移動体に対応付けて１以上の前記ノードを占有状態とする予約処理を実行し、
前記制御部は、前記複数の移動体のうちの前記対象移動体以外の移動体の、前記所定エリアにおいて前記占有状態の前記ノードに対応する区域への進入を制限する、
請求項１〜３のいずれか１項に記載の移動体制御システム。
【請求項５】
前記予約部は、
前記予約処理において、前記対象移動体が位置する前記区域に対応する前記ノードから数えて進行方向側に予約数分の前記ノードを前記占有状態とし、
前記対象移動体が位置する前記区域が変わる度に前記予約処理を実行する、
請求項４に記載の移動体制御システム。
【請求項６】
電波を媒体とする無線通信により前記所定エリア内の前記移動体に搭載されている通信部と通信する通信端末を更に備え、
前記予約部は、前記通信端末における前記通信部との前記無線通信の状況に応じて前記予約数を決定する、
請求項５に記載の移動体制御システム。
【請求項７】
前記予約部は、前記無線通信における電波強度が小さいほど前記予約数を多くするように、前記無線通信の状況に応じて前記予約数を決定する、
請求項６に記載の移動体制御システム。
【請求項８】
前記マップはグリッド線を含み、
前記ノード生成部は、前記グリッド線の位置にはかかわらずに前記指定ノードを生成する、
請求項１〜７のいずれか１項に記載の移動体制御システム。
【請求項９】
請求項１〜８のいずれか１項に記載の移動体制御システムと、
前記移動体と、を備える、
移動体システム。
【請求項１０】
所定エリア内を移動する移動体を制御する移動体制御方法であって、
前記所定エリアに対応するマップにおける任意の位置に、それぞれ前記移動体を制御可能なノードである一対の指定ノードを生成するノード生成処理と、
前記一対の指定ノード間にパスを生成するパス生成処理と、を有し、
前記所定エリアにおいて前記パスに対応する移動経路に沿って前記移動体を移動させる、
移動体制御方法。
【請求項１１】
請求項１０に記載の移動体制御方法をコンピュータシステムに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に移動体制御システム、移動体システム、移動体制御方法及びプログラムに関し、より詳細には、所定エリア内を移動する移動体を制御する移動体制御システム、移動体システム、移動体制御方法及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、複数の移動体（自動搬送機）と、移動体と無線通信するサーバ装置とを備える、移動体（移動ロボット）制御システムが記載されている。特許文献１において、サーバ装置は、地図情報並びに移動体の経路情報及び移動体情報を格納する記憶部と、地図情報に基づき移動体の移動経路を探索する経路探索部と、経路情報に基づき移動体に移動の指示を与える移動制御部と、を有する。移動制御部が、移動体情報及び経路情報に基づき、複数の移動体の間で互いの移動に干渉が生じ得ると判定する場合、経路探索部は、干渉を生じ得る移動体のうちの少なくとも１つに関する経路情報を、干渉を回避するように変更する。
【０００３】
特許文献１において、地図情報は、所定エリアの地図をグリッドマップとして含み、移動体の移動経路及び移動体への移動の指示には、グリッドマップに適用されるグリッド座標が用いられる。グリッドマップは、地図に対して、Ｘ軸及びＹ軸に平行にかつ略一定の間隔で配置された複数のグリッド線によって、格子状に並ぶ複数のマス目に区分けされた構成を有している。これにより、地図情報のデータ量を低減し、かつ移動体の移動経路の探索処理が簡易になり、移動体へ指示する移動情報の算出も簡易になって、サーバ装置の処理速度を向上している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−１３４７９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の移動体制御システムでは、グリッド座標を基調として移動体の制御を行うため、グリッド線にて区分けされた複数のマス目単位でしか移動体を制御することができない。そのため、移動体制御システムでは、例えば、２つのマス目に跨る中途半端な位置で移動体を停止又は方向転換させることができない等により、所定エリア内の設備のレイアウトに合わせた最適な制御ができない場合がある。
【０００６】
本開示は上記事由に鑑みてなされており、制御の自由度の向上を図ることができる移動体制御システム、移動体システム、移動体制御方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本開示の一態様に係る移動体制御システムは、制御部と、ノード生成部と、パス生成部と、を備える。前記制御部は、所定エリア内を移動する移動体を制御する。前記ノード生成部は、前記所定エリアに対応するマップにおける任意の位置に、それぞれ前記移動体を制御可能なノードである一対の指定ノードを生成する。前記パス生成部は、前記一対の指定ノード間にパスを生成する。前記制御部は、前記所定エリアにおいて前記パスに対応する移動経路に沿って前記移動体を移動させる。
【０００８】
本開示の一態様に係る移動体システムは、前記移動体制御システムと、前記移動体と、を備える。
【０００９】
本開示の一態様に係る移動体制御方法は、所定エリア内を移動する移動体を制御する移動体制御方法であって、ノード生成処理と、パス生成処理と、を有する。前記ノード生成処理は、前記所定エリアに対応するマップにおける任意の位置に、それぞれ前記移動体を制御可能なノードである一対の指定ノードを生成する処理である。前記パス生成処理は、前記一対の指定ノード間にパスを生成する処理である。前記移動体制御方法では、前記所定エリアにおいて前記パスに対応する移動経路に沿って前記移動体を移動させる。
【００１０】
本開示の一態様に係るプログラムは、前記移動体制御方法をコンピュータシステムに実行させるためのプログラムである。
【発明の効果】
【００１１】
本開示によれば、制御の自由度の向上を図ることができる、という利点がある。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施形態１に係る移動体制御システムの制御対象となる移動体が配置された所定エリアの模式的な平面図である。
【図２】図２は、同上の移動体制御システム及び実施形態１に係る設計支援システムの概略構成を示すブロック図である。
【図３】図３は、同上の移動体の外観を示す概略斜視図である。
【図４】図４Ａ〜図４Ｅは、同上の移動体制御システムの動作を示し、所定エリアを上方から見て、所定エリア内を移動体が移動する様子を概念的に示す模式図である。
【図５】図５は、同上の設計支援システムにおいて、情報端末の表示部に表示される設定画面を模式的に表す説明図である。
【図６】図６は、同上の設計支援システムにおいて、情報端末の表示部に表示される設定画面を模式的に表す説明図である。
【図７】図７Ａ〜図７Ｄは、同上の設計支援システムにおける、仮想ノードの生成方法を概念的に表す説明図である。
【図８】図８は、同上の設計支援システムにおいて、情報端末の表示部に表示される設定画面を模式的に表す説明図である。
【図９】図９は、同上の設計支援システムにおいて、情報端末の表示部に表示される設定画面を模式的に表す説明図である。
【図１０】図１０Ａ〜図１０Ｅは、同上の移動体制御システムの動作を示し、所定エリアを上方から見て、所定エリア内を移動体が移動する様子を概念的に示す模式図である。
【図１１】図１１は、同上の設計支援システムにおいて、情報端末の表示部に表示される設定画面を模式的に表す説明図である。
【図１２】図１２Ａ及び図１２Ｂは、同上の設計支援システムにおいて、情報端末の表示部に表示される設定画面を模式的に表す説明図である。
【図１３】図１３Ａ及び図１３Ｂは、同上の設計支援システムにおいて、情報端末の表示部に表示される設定画面を模式的に表す説明図である。
【図１４】図１４Ａ及び図１４Ｂは、同上の設計支援システムにおいて、情報端末の表示部に表示される設定画面を模式的に表す説明図である。
【図１５】図１５Ａ及び図１５Ｂは、同上の設計支援システムにおいて、情報端末の表示部に表示される設定画面を模式的に表す説明図である。
【図１６】図１６Ａ及び図１６Ｂは、同上の設計支援システムにおいて、情報端末の表示部に表示される設定画面を模式的に表す説明図である。
【図１７】図１７は、同上の移動体制御システム及び設計支援システムの動作を示すフローチャートである。
【発明を実施するための形態】
【００１３】
（実施形態１）
以下、本実施形態に係る移動体制御システム１及び移動体システム１０について、図１〜図１７を参照して説明する。
【００１４】
（１）概要
本実施形態に係る移動体制御システム１は、図２に示すように、所定エリアＡ１（図１参照）内を移動する１台以上の移動体２を制御するためのシステムである。移動体制御システム１は、移動体制御システム１の制御対象となる移動体２と共に移動体システム１０を構成する。言い換えれば、本実施形態に係る移動体システム１０は、移動体制御システム１と、移動体２と、を備えている。
【００１５】
本開示でいう「移動体」は、無人搬送車（AGV：Automated Guided Vehicle）、移動ロボット及びドローン等を含む。本開示でいう「移動ロボット」は、例えば、車輪型、クローラ型又は脚型の（歩行型を含む）のロボットである。移動体２は、所定エリアＡ１内を移動するだけでなく、例えば、搬送、ピッキング、溶接、実装、陳列、接客、警備、組立及び検査等の様々な作業を実行する機能を有していてもよい。
【００１６】
移動体制御システム１は、例えば、所定エリアＡ１内において、第１地点から第２地点に移動体２を移動させるように、移動体２の制御を行う。この場合、移動体制御システム１は、例えば、第１地点から第２地点に至る移動経路等、移動体２の制御に必要な情報を求め、移動体２に移動の指示を与えることにより、移動体２を第１地点から第２地点に移動させる。これにより、移動体２は、移動体制御システム１からの指示に従って、所定エリアＡ１内を移動することが可能である。
【００１７】
ところで、本実施形態に係る移動体制御システム１は、図２に示すように、制御部４２と、ノード生成部３２と、パス生成部３３と、を備えている。制御部４２は、所定エリアＡ１内を移動する移動体２を制御する。ノード生成部３２は、所定エリアＡ１に対応するマップＭ１（図５参照）における任意の位置に、それぞれ移動体２を制御可能なノードである一対の指定ノードＮｄｍ（図６参照）を生成する。パス生成部３３は、一対の指定ノードＮｄｍ間にパスＰｍ（図６参照）を生成する。制御部４２は、所定エリアＡ１においてパスＰｍに対応する移動経路に沿って移動体２を移動させる。
【００１８】
本開示でいう「ノード」（Node）は、移動体制御システム１による移動体２の制御が可能な制御点である。つまり、移動体制御システム１は、ノード単位で移動体２の移動に係る制御が可能である。詳しくは後述するが、本開示でいう「ノード」には、指定ノードＮｄｍ、仮想ノードＮｖｍ及び例外ノードＮｅｍの３種類のノードが含まれる。指定ノードＮｄｍ、仮想ノードＮｖｍ、例外ノードＮｅｍ及びパスＰｍの添え字「ｍ」には、自然数（１，２，３，…）が入る。
【００１９】
本実施形態では特に、ノードは、移動体２の移動速度と進行方向との少なくとも一方を制御可能な制御点である。本開示でいう「移動速度」の制御は、移動速度がゼロ（０）の移動体２を加速させる「発進」、及び移動中の移動体２の移動速度をゼロ（０）まで減速する「停止」を含む。移動体制御システム１は、所定エリアＡ１においてノードに対応する位置にある移動体２を対象として、例えば、停止又は進行方向の変更（旋回を含む）等の動作を制御する。そのため、例えば、所定エリアＡ１において、一対のノードに対応する一対の地点間を移動中であって、いずれのノードに対応する位置にもない移動体２については、移動体制御システム１が停止又は進行方向の変更等の制御を行うことはできない。言い換えれば、移動体制御システム１が、ある地点に位置する移動体２について停止又は進行方向の変更等の制御を行うためには、この地点に対応するノードが設定されている必要がある。
【００２０】
本実施形態では、各ノードは、所定エリアＡ１において、ある大きさを持つ矩形領域と対応付けられている。つまり、所定エリアＡ１において、各ノードに対応する地点は、「点」で表されるのではなく、ある大きさを持った「矩形領域」で表される。そのため、所定エリアＡ１において、あるノードに対応する矩形領域内に移動体２の一部又は中心点が位置するときに、移動体制御システム１は、このノードに対応する位置に移動体２がある（存在している）と判断する。
【００２１】
このように、移動体制御システム１がノード単位で移動体２を制御することで、基本的には、移動体２は、一対のノード間に設定されるパス（Path）Ｐ１上を移動する。例えば、第１地点から第２地点に移動体２を移動させる場合、少なくとも第１地点に第１ノード、第２地点に第２ノードがそれぞれ設定され、これら第１ノード及び第２ノード間に設定されるパスＰｍを通って、移動体２は、第１地点から第２地点に移動する。さらに、第１ノード及び第２ノード間のパスＰｍ上に、１つ以上の中間ノードが設定される場合には、移動体制御システム１は、１つ以上の中間ノードにおいて、例えば、停止及び進行方向の変更等の動作が可能になる。
【００２２】
一例として、第１ノード及び第２ノード間に１つの中間ノードが設定されている場合を想定する。この場合、例えば、移動体制御システム１は、まず第１地点から中間ノードに対応する中間地点に移動体２を移動させて停止させ、その後、中間地点から第２地点に移動体２を移動させる、という制御が可能である。これにより、移動体制御システム１は、第１地点から第２地点に移動体２を移動させる場合において、第１地点と第２地点との間の中間地点にて移動体２を一旦停止させる、といった制御が可能になる。
【００２３】
ここにおいて、本実施形態に係る移動体制御システム１では、ノード生成部３２は、所定エリアＡ１に対応するマップＭ１における任意の位置に、それぞれ移動体２を制御可能なノードである一対の指定ノードＮｄｍを生成する。つまり、移動体制御システム１は、マップＭ１における任意の位置にノード（指定ノードＮｄｍ）を生成するので、グリッド座標を基調として移動体２の制御を行うグリッド方式に比べて、制御の自由度の向上を図ることができる。
【００２４】
要するに、グリッド座標を基調として移動体の制御を行うグリッド方式では、グリッド座標を基調として移動体２の制御を行うため、グリッド線にて規定される位置にしかノードを設定できない、という問題がある。このグリッド方式において、例えば、移動体２の停止位置を細かく調整するためには、グリッド線の間隔を小さくする必要があるが、グリッド線の間隔を小さくすると、その分だけ、演算負荷が大きくなる。
【００２５】
これに対して、本実施形態に係る移動体制御システム１では、グリッド線にかかわらず、マップＭ１上の任意の位置にノード（指定ノードＮｄｍ）を設定することが可能である。すなわち、本実施形態では、グリッド線ありきでノードが設定されるのではなく、まずはノードが設定され、その後に、ノードに基づいてパスＰｍが生成される。その結果、本実施形態に係る移動体制御システム１によれば、演算負荷の増加を抑制しつつも、制御の自由度の向上を図ることができる、という利点がある。
【００２６】
ここで、本実施形態に係る移動体制御システム１は、グリッド線に拘束されることなく、マップＭ１の任意の位置にノードを設定できればよく、グリッドレスであることは移動体制御システム１に必須の構成ではない。例えば、ノードを設定する際の目安又は入力支援として、ユーザが、ノード（指定ノードＮｄｍ）を設定するための設定画面Ｄ１（図５参照）においては、マップＭ１がグリッド線Ｇ１（図５参照）を含んでいてもよい。この場合でも、移動体制御システム１では、設定画面Ｄ１において、グリッド線Ｇ１に拘束されることなく、マップＭ１における任意の位置にノードを設定することが可能である。
【００２７】
（２）構成
以下、本実施形態に係る移動体制御システム１、移動体システム１０及び設計支援システム１００の構成について、図１〜図３を参照して、詳細に説明する。以下に示す、数値、形状、材料、構成要素の位置、複数の構成要素間の位置関係及び接続関係等は、一例であって、本開示を限定する主旨ではない。また、以下で参照する図面は、いずれも模式的な図であり、図中の各構成要素の大きさ及び厚さそれぞれの比が、必ずしも実際の寸法比を反映しているとは限らない。
【００２８】
以下では、移動体制御システム１の制御対象、つまり移動体システム１０に含まれる移動体２が、無人搬送車である場合を例として説明する。移動体２としての無人搬送車は、所定エリアＡ１内を移動しつつ、搬送物９２（図３参照）の搬送という作業を実行する。本実施形態で例示する移動体２の構成について詳しくは、「（２．２）移動体」の欄で説明する。
【００２９】
本開示でいう「所定エリア」は、１台以上の移動体２が配備された空間であって、移動体２は、移動体制御システム１からの指示を受けて、この所定エリアＡ１内を移動する。所定エリアＡ１は、一例として、倉庫、工場、建設現場、店舗（ショッピングモールを含む）、物流センタ、事務所、公園、住宅、学校、病院、駅、空港又は駐車場等である。さらに、例えば、船舶、電車又は飛行機の内部等、乗り物の内部に移動体２が配備されている場合には、乗り物の内部が所定エリアＡ１になる。本実施形態では、所定エリアＡ１が物流倉庫である場合を例に説明する。
【００３０】
（２．１）全体構成
移動体システム１０は、図１及び図２に示すように、移動体制御システム１と、１台以上の移動体２と、を備えている。本実施形態では、移動体システム１０は、複数台の移動体２を備えている。
【００３１】
図１は、所定エリアＡ１の模式的な平面図である。本実施形態では、物流倉庫であって、外壁９０１で囲まれた空間が所定エリアＡ１となる。本実施形態で想定している所定エリアＡ１には、搬送物９２を所定エリアＡ１内に搬入するための入口９０２、及び搬送物９２を所定エリアＡ１から搬出するための出口９０３がある。さらに、所定エリアＡ１には、複数本の柱９０４、隔壁９０５及びベルトコンベア９０６が配置されている。
【００３２】
移動体制御システム１は、サーバ装置３と、１以上のクライアント端末４と、１以上の通信端末５と、を備えている。本実施形態では、移動体制御システム１は、複数のクライアント端末４及び複数の通信端末５を備えている。複数のクライアント端末４及び複数の通信端末５は、複数台の移動体２と共に所定エリアＡ１内に配置されている。サーバ装置３は、所定エリアＡ１の外に設置され、インターネット等のネットワークＮＴ１を介して、複数の通信端末５に接続されている。
【００３３】
サーバ装置３と複数のクライアント端末４の各々とは、互いに通信可能に構成されている。本開示において「通信可能」とは、有線通信又は無線通信の適宜の通信方式により、直接的、又はネットワークＮＴ１若しくは中継器等を介して間接的に、情報を授受できることを意味する。すなわち、サーバ装置３と複数のクライアント端末４の各々とは、互いに情報を授受することができる。本実施形態では、複数のクライアント端末４の各々は、複数の通信端末５のいずれかと、電波を媒体とする無線通信によって通信を行う。そのため、サーバ装置３と複数のクライアント端末４とは、少なくともネットワークＮＴ１及び通信端末５を介して、間接的に通信を行うことになる。
【００３４】
要するに、各通信端末５は、各クライアント端末４とサーバ装置３との間の通信を中継する機器（アクセスポイント）である。通信端末５は、ネットワークＮＴ１を介して、サーバ装置３と通信する。本実施形態では一例として、通信端末５と移動体２との間の通信には、Wi-Fi（登録商標）、Bluetooth（登録商標）、ZigBee（登録商標）又は免許を必要としない小電力無線（特定小電力無線）等の規格に準拠した、無線通信を採用する。また、ネットワークＮＴ１は、インターネットに限らず、例えば、所定エリアＡ１内又は所定エリアＡ１の運営会社内のローカルな通信ネットワークが適用されてもよい。
【００３５】
本実施形態では一例として、クライアント端末４と移動体２とは一対一の関係にある。つまり、１台の移動体２に対して１つのクライアント端末４が搭載されることにより、１台の移動体２と１つのクライアント端末４とが紐付けられている。本実施形態では、クライアント端末４と移動体２とは一体化されている。詳しくは「（２．２）移動体」の欄で説明するが、クライアント端末４は移動体２の車体部２２に搭載されることで、移動体２と一体化されている。つまり、移動体２の１つの筐体には、移動体２としての機能を実現するための構成要素と、クライアント端末４の構成要素と、が収容されている。そのため、クライアント端末４を移動体２の一部とみなすこともでき、そうすると、サーバ装置３は、ネットワークＮＴ１及び通信端末５を介して、移動体２と間接的に通信を行うことになる。結果的に、サーバ装置３は、クライアント端末４（移動体２）と通信することにより、このクライアント端末４に対応する移動体２を間接的に制御することが可能である。
【００３６】
また、サーバ装置３は、情報端末６と共に設計支援システム１００を構成する。言い換えれば、本実施形態に係る設計支援システム１００は、サーバ装置３と、情報端末６と、を備えている。情報端末６は、インターネット等のネットワークＮＴ１を介して、サーバ装置３に接続されている。
【００３７】
サーバ装置３と情報端末６とは、互いに通信可能に構成されている。すなわち、サーバ装置３と情報端末６とは、互いに情報を授受することができる。本実施形態では、情報端末６は、例えば、ルータ等を介してネットワークＮＴ１に接続される。そのため、サーバ装置３と情報端末６とは、少なくともネットワークＮＴ１を介して、間接的に通信を行うことになる。サーバ装置３、通信端末５又は情報端末６と、ネットワークＮＴ１との間の通信には、無線通信又は有線通信の適宜の通信方式が適用される。
【００３８】
本実施形態では、サーバ装置３、クライアント端末４及び情報端末６の各々は、メモリ及びプロセッサを含むコンピュータシステムを主構成とする。すなわち、コンピュータシステムのメモリに記録されたプログラムを、プロセッサが実行することにより、サーバ装置３、クライアント端末４及び情報端末６の各々の機能が実現される。プログラムはメモリに予め記録されていてもよいし、インターネット等の電気通信回線を通して提供されてもよく、メモリカード等の非一時的記録媒体に記録されて提供されてもよい。
【００３９】
サーバ装置３と、クライアント端末４及び情報端末６とは、互いに双方向に通信可能である。そのため、サーバ装置３からクライアント端末４又は情報端末６への情報の送信、更には、クライアント端末４又は情報端末６からサーバ装置３への情報の送信の両方が可能である。
【００４０】
移動体２は、所定エリアＡ１内で搬送物９２を運搬するための無人搬送車であり、搬送物９２を積載して目的地まで自律走行する。サーバ装置３は、ネットワークＮＴ１及び通信端末５を介して移動体２（クライアント端末４）と通信し、移動体２を制御する。
【００４１】
（２．２）移動体
次に、本実施形態で例示する移動体２の構成についてより詳細に説明する。
【００４２】
移動体２は、図３に示すように、例えば、所定エリアＡ１の床面等からなる平坦な移動面９１を自律走行する。ここでは一例として、移動体２は、蓄電池を備え、蓄電池に蓄積された電気エネルギを用いて動作することとする。本実施形態では、移動体２は、搬送物９２を積載した状態で移動面９１上を走行する。これにより、移動体２は、例えば、所定エリアＡ１における、ある場所に置かれている搬送物９２を、所定エリアＡ１における別の場所に搬送することが可能である。本実施形態では、搬送物９２は、一例として、荷物が載せられた、ロールボックスパレット等のパレットである。
【００４３】
移動体２は、本体部２１を備えている。本体部２１は、平面視において長方形状となる直方体状に形成されている。本実施形態では、本体部２１が搬送物９２の下方に潜り込んで搬送物９２を持ち上げるようにして、搬送物９２が本体部２１に積載される。そのため、本体部２１が搬送物９２の下方に生じる隙間に収まるように、本体部２１の上下方向の寸法は、平面視における本体部２１の短手方向の寸法に比べても小さく設定されている。本実施形態では、本体部２１は金属製である。ただし、本体部２１は、金属製に限らず、例えば、樹脂製であってもよい。
【００４４】
本体部２１は、車体部２２と、昇降板２３と、を有している。車体部２２は、複数（ここでは、４つ）の車輪２２１、及び検知部２２２を含んでいる。
【００４５】
複数の車輪２２１は、平面視において車体部２２の四隅に配置されている。本実施形態では、複数の車輪２２１の全てが駆動輪である。これら複数の車輪２２１が個別に駆動されることにより、本体部２１は、移動面９１に沿って全方位に移動可能となる。車体部２２は、複数の車輪２２１が同一方向に同一速度で回転駆動されることによって、直線的に走行し、複数の車輪２２１間に回転差が与えられることによって、進行方向を変えて旋回等を実行することができる。車体部２２は、例えば、クラッチ等を含む駆動機構を介して複数の車輪２２１を駆動してもよい。つまり、本体部２１は、複数の車輪２２１の各々の回転により、移動面９１の上を、前、後、左及び右の全方位に移動可能である。複数の車輪２２１の各々は、例えば、オムニホイール等の全方向移動型車輪であってもよい。
【００４６】
検知部２２２は、本体部２１の挙動、及び本体部２１の周辺状況等を検知する。本開示でいう「挙動」は、動作及び様子等を意味する。つまり、本体部２１の挙動は、本体部２１が走行中／停止中を表す本体部２１の動作状態、本体部２１の速度（及び速度変化）、本体部２１に作用する加速度、及び本体部２１の姿勢等を含む。具体的には、検知部２２２は、例えば、速度センサ、加速度センサ、ジャイロセンサ等のセンサを含み、これらのセンサにて本体部２１の挙動を検知する。また、検知部２２２は、例えば、イメージセンサ（カメラ）、ソナーセンサ、レーダ、及びＬｉＤＡＲ（Light Detection and Ranging）等のセンサを含み、これらのセンサにて本体部２１の周辺状況を検知する。本体部２１の周辺状況には、例えば、本体部２１の進行方向の前方に存在する物体（障害物等）の有無、及び物体の位置（距離及び方位）等が含まれる。障害物には、他の移動体２及び人も含まれる。
【００４７】
また、検知部２２２は、本体部２１の位置、つまり移動体２の現在位置を特定する位置特定部を有している。位置特定部は、一例として、複数の発信器から電波で送信されるビーコン信号を受信する受信機を含む。複数の発信器は、移動体２が移動する範囲内の複数箇所に配置されている。位置特定部は、複数の発信器の位置と、受信機でのビーコン信号の受信電波強度とに基づいて、本体部２１の位置を測定する。位置特定部は、ＧＰＳ（Global Positioning System）等の衛星測位システムを用いて実現されてもよい。検知部２２２の検知結果は、クライアント端末４に出力される。
【００４８】
クライアント端末４は、サーバ装置３と協働して、少なくとも本体部２１の現在位置に基づいて、目的地までの本体部２１の移動経路を決定し（経路計画）、この移動経路に沿って本体部２１が移動するように車体部２２を動作させる。すなわち、移動体制御システム１は、クライアント端末４にて、移動体２を制御する。本体部２１は、クライアント端末４からの制御信号に基づいて、複数の車輪２２１を個別に駆動することにより、移動面９１上を自律的に移動する。これにより、本体部２１の自律走行が実現される。
【００４９】
昇降板２３は、車体部２２の上面の少なくとも一部を覆うように、車体部２２の上方に配置されている。本実施形態では、昇降板２３は、車体部２２の上面の四隅をそれぞれ覆うように設けられている。移動体２にて搬送物９２を搬送する際には、昇降板２３の上面に搬送物９２が積載される。
【００５０】
ここで、昇降板２３は、車体部２２に対して昇降可能である。このため、本体部が搬送物９２の下方に潜り込んだ状態で、昇降板２３が上昇することにより、昇降板２３にて搬送物９２が持ち上げられる。反対に、昇降板２３にて搬送物９２を持ち上げた状態で、昇降板２３が下降することにより、昇降板２３から搬送物９２が降ろされる。
【００５１】
ところで、移動体２の走行モードは、移動体制御システム１の指令（制御信号）に従う自動走行モードと、リモートコントローラの指令に従う手動走行モードと、を含む。リモートコントローラは、移動体２と無線通信し、操作者による操作で移動体２の動作を制御するための装置である。
【００５２】
また、移動体２は、上記以外の構成、例えば、蓄電池の充電回路、及びユーザインタフェース等を適宜備えている。ユーザインタフェースは、移動体２への指令等の情報を入力するための構成要素である。ユーザインタフェースは、例えば、足踏み式の複数のペダルにて実現される。複数のペダルでは、例えば、移動体２の走行／停止、移動体２の走行モードの切替え、移動体２の移動経路の選択、移動体２の走行方向の変更、昇降板２３の昇降、並びに複数の車輪２２１のロック／解除等のための操作入力が可能である。また、ユーザインタフェースは、移動体２に設定する移動経路の出発点及び目的点の少なくとも一方を設定可能に構成されていてもよい。ユーザインタフェースの構成及び機能は、複数のペダルを用いた上記構成及び機能に限定されない。さらに、移動体２の走行モードに関係なく、移動体２を緊急停止させるための緊急停止装置が設けられていてもよい。緊急停止装置は、移動体２に搭載されていてもよいし、リモートコントローラのように、移動体２と無線通信するように構成されていてもよい。
【００５３】
ところで、本実施形態では、上述したように、クライアント端末４は移動体２に搭載されることで、移動体２と一体化されている。本実施形態では、クライアント端末４が移動体２の動作の邪魔にならないように、クライアント端末４は、本体部２１に内蔵されている。つまり、本体部２１の外郭を構成する筐体には、移動体２としての機能を実現するための構成要素と、クライアント端末４の構成要素と、が収容されている。
【００５４】
また、移動体２の動力源（電源）となる蓄電池は、クライアント端末４の動力源に兼用されてもよい。つまり、蓄電池は、移動体２とクライアント端末４とで共用可能である。さらに、クライアント端末４の制御機能（制御部４２）は、移動体２における車体部２２の制御と昇降板２３の制御とに兼用されてもよい。
【００５５】
（２．３）クライアント端末
次に、クライアント端末４の構成についてより詳細に説明する。
【００５６】
クライアント端末４は、図２に示すように、第２通信部４１と、制御部４２と、インタフェース４３と、第２記憶部４４と、を有している。
【００５７】
第２通信部４１は、ネットワークＮＴ１及び通信端末５を介して間接的に、サーバ装置３と通信する。第２通信部４１とサーバ装置３との間の通信方式としては、無線通信又は有線通信の適宜の通信方式が採用される。
【００５８】
制御部４２は、移動体２の走行モードが自動走行モードにある場合において、サーバ装置３からの指示に従って、移動体２の本体部２１に制御信号を出力する。これにより、制御部４２は、移動体２を制御する。より詳細には、制御部４２は、第２通信部４１により、サーバ装置３との間で情報の送受信を行い、インタフェース４３により、移動体２との間で情報の送受信を行う。制御部４２は、サーバ装置３から取得する指示情報に従って、制御信号を生成する。制御部４２は、制御信号を移動体２に出力することによって、指示情報で規定される、発進、停止又は旋回等の動作を移動体２に実行させる。指示情報には、移動体２の移動経路、移動速度及び進行方向等に関する情報も含まれている。制御部４２は、指示情報を定期的（例えば、１秒毎）にサーバ装置３から取得する。
【００５９】
また、制御部４２は、検知部２２２の検知結果を移動体２から取得し、取得した検知結果を第２通信部４１からサーバ装置３に送信する機能を有している。検知部２２２の検知結果には、本体部２１の挙動、本体部２１の周辺状況、本体部２１の位置等に関する情報が含まれている。制御部４２は、検知部２２２の検知結果を定期的（例えば、１秒毎）に移動体２から取得する。
【００６０】
本実施形態では、制御部４２は、サーバ装置３からの指示に従って、移動体２を制御するので、検知部２２２の検知結果についても、基本的にはサーバ装置３での演算に用いられる。ただし、検知部２２２の検知結果は、制御部４２での処理に用いられてもよい。この場合、制御部４２は、検知部２２２の検知結果から、例えば、移動体２の周囲における障害物の有無及びその位置等に関する障害物情報を抽出し、障害物情報に従って移動体２を制御する。一例として、制御部４２は、移動体２の移動経路、又は移動経路の近傍に障害物の存在を認めた場合に、移動体２を停止させる。その後、制御部４２は、検知部２２２により移動経路、又は移動経路の近傍の障害物が無くなったことをもって、移動体２の移動を再開する。
【００６１】
インタフェース４３は、直接的又は間接的に、移動体２と通信する。インタフェース４３と移動体２との間の通信方式としては、無線通信又は有線通信の適宜の通信方式が採用される。
【００６２】
第２記憶部４４は、例えば、書換可能な不揮発性の半導体メモリ等の非一時的記録媒体にて実現される。第２記憶部４４は、例えば、サーバ装置３から取得した指示情報、及び検知部２２２の検知結果等の情報を記憶する。
【００６３】
（２．４）サーバ装置
次に、サーバ装置３の構成について、図２を参照してより詳細に説明する。
【００６４】
サーバ装置３は、図２に示すように、第１通信部３１と、ノード生成部３２と、パス生成部３３と、予約部３４と、仮想ノード生成部３５と、例外ノード生成部３６と、位置調整部３７と、表示制御部３８と、第１記憶部３９と、を有している。
【００６５】
第１通信部３１は、ネットワークＮＴ１及び通信端末５を介して間接的に、クライアント端末４と通信する。さらに、第１通信部３１は、ネットワークＮＴ１を介して間接的に、情報端末６と通信する。第１通信部３１とクライアント端末４又は情報端末６との間の通信方式としては、無線通信又は有線通信の適宜の通信方式が採用される。
【００６６】
ノード生成部３２は、指定ノードＮｄｍを生成する。指定ノードＮｄｍは、移動体２を制御可能な「ノード」の一種である。ノード生成部３２は、指定ノードＮｄｍを、所定エリアＡ１に対応するマップＭ１における任意の位置に生成する。ここでは、ノード生成部３２は、指定ノードＮｄｍを少なくとも２つ（一対）生成する。言い換えれば、一対の指定ノードＮｄｍは、マップＭ１における任意の位置に生成される。「ノード」は、上述したように、移動体制御システム１による移動体２の制御が可能な制御点である。
【００６７】
パス生成部３３は、パスＰｍを生成する。パス生成部３３は、パスＰｍを、ノード生成部３２にて生成された一対の指定ノードＮｄｍ間に生成する。本開示でいう「パス」は、所定エリアＡ１において移動体２を移動させる移動経路を規定する。すなわち、制御部４２は、所定エリアＡ１においてパスＰｍに対応する移動経路に沿って移動体２を移動させる。言い換えれば、パス生成部３３は、移動体２の移動経路を規定するパスＰｍを一対の指定ノードＮｄｍ間に生成する。
【００６８】
予約部３４は、予約処理を実行する。予約処理は、複数の移動体２のうちの一の移動体２である対象移動体２ｔ（図４Ａ参照）に対応付けて１以上のノードを占有状態とする処理である。本開示でいう「占有状態」は、対象移動体２ｔによって占有されている状態を意味し、所定エリアＡ１において占有状態にあるノードに対応する区域への対象移動体２ｔ以外の進入が制限される。本実施形態では、各移動体２の移動に関する動作は、制御部４２によって決定されるので、制御部４２は、複数の移動体２のうちの対象移動体２ｔ以外の移動体２の、所定エリアＡ１において占有状態のノードに対応する区域Ｚｍ（図４Ａ参照）への進入を制限する。区域Ｚｍの添え字「ｍ」には、指定ノードＮｄｍ等と同様に、自然数（１，２，３，…）が入る。
【００６９】
また、予約部３４は、予約処理において、対象移動体２ｔが位置する区域Ｚｍに対応するノードから数えて進行方向側に予約数分のノードを占有状態とする。そして、予約部３４は、対象移動体２ｔが位置する区域Ｚｍが変わる度に予約処理を実行する。本開示でいう「予約数」は、１台の対象移動体２ｔに対して同時に占有状態にされるノードの数を意味する。つまり、一例として、予約数が「３」であれば、予約処理において、対象移動体２ｔが位置する区域Ｚｍに対応するノードから数えて進行方向側に位置する３つ分のノードが占有状態となる。
【００７０】
仮想ノード生成部３５は、仮想ノードＮｖｍ（図７参照）を生成する。仮想ノードＮｖｍは、移動体２を制御可能な「ノード」の一種であるが、指定ノードＮｄｍとは別のノードである。つまり、仮想ノードＮｖｍと指定ノードＮｄｍとは区別可能である。仮想ノード生成部３５は、一対の指定ノードＮｄｍの間隔が上限値以上である場合、パスＰｍ上に、仮想ノードＮｖｍを少なくとも１つ生成する。言い換えれば、仮想ノード生成部３５は、パス生成部３３にて生成されたパスＰｍ上に、仮想ノードＮｖｍを生成する。
【００７１】
仮想ノード生成部３５は、パスＰｍ上における隣接するノード同士の間隔が、下限値以上かつ上限値未満となるように、仮想ノードＮｖｍの個数及び位置を決定する。すなわち、仮想ノード生成部３５にてパスＰｍ上に生成される仮想ノードＮｖｍの個数、及びパスＰｍ上での位置については、パスＰｍ上における隣接するノード同士の間隔を基に決定される。言い換えれば、仮想ノードＮｖｍの個数及び位置は、一対の指定ノードＮｄｍの間隔に応じて決まることになる。
【００７２】
例外ノード生成部３６は、例外ノードＮｅｍ（図９参照）を生成する。例外ノードＮｅｍは、移動体２を制御可能な「ノード」の一種であるが、指定ノードＮｄｍ及び仮想ノードＮｖｍとは別のノードである。つまり、例外ノードＮｅｍと、指定ノードＮｄｍ及び仮想ノードＮｖｍとは区別可能である。例外ノード生成部３６は、例外ノードＮｅｍを、マップＭ１に少なくとも１つ生成する。
【００７３】
ここで、例外ノードＮｅｍが下限値未満の間隔で複数生成された場合、隣接する複数の例外ノードＮｅｍ同士の間隔の合計が下限値以上となるように複数の例外ノードＮｅｍがグループ化される。本開示でいう「グループ化」とは、複数の例外ノードＮｅｍを１組として、一まとめに取り扱える状態とすることをいう。例えば、予約部３４がノードを占有状態とする場合には、グループ化された複数の例外ノードＮｅｍについては、予約部３４は、一斉に占有状態とする。
【００７４】
位置調整部３７は、一対の指定ノードＮｄｍの少なくとも一方の位置を調整する。本実施形態では、マップＭ１は互いに交差する第１軸Ａｘ（図５参照）及び第２軸Ａｙ（図５参照）を含んでいる。位置調整部３７は、一対の指定ノードＮｄｍがマップＭ１において第１軸Ａｘ又は第２軸Ａｙに平行に並ぶように、一対の指定ノードＮｄｍの少なくとも一方の位置を調整する。
【００７５】
表示制御部３８は、所定エリアＡ１に対応するマップＭ１を含む設定画面Ｄ１を表示させる。より詳細には、表示制御部３８は、第１通信部３１により、情報端末６との間で情報の送受信を行い、情報端末６の表示部６２に設定画面Ｄ１を表示させる。
【００７６】
第１記憶部３９は、例えば、書換可能な不揮発性の半導体メモリ等の非一時的記録媒体にて実現される。第１記憶部３９は、サーバ装置３内に組み込まれる構成に限らず、例えば、サーバ装置３がアクセス可能なクラウド（クラウドコンピューティング）等に存在してもよい。第１記憶部３９は、例えば、所定エリアＡ１のマップに関する地図情報、各移動体２の移動経路に関する経路情報、各移動体２に関する移動体情報等を記憶する。
【００７７】
サーバ装置３の各部の動作について詳しくは「（３）動作」の欄で説明する。
【００７８】
（２．５）情報端末
情報端末６は、ユーザの操作を受け付ける機能、及びユーザに情報を提示（表示）する機能を有する端末である。ここでいう「ユーザ」は、移動体制御システム１のユーザ、移動体システム１０のユーザ、及び設計支援システム１００のユーザを含む。
【００７９】
情報端末６は、上述したように、メモリ及びプロセッサを含むコンピュータシステムを主構成とする。本実施形態では、一例として、情報端末６は、パーソナルコンピュータ、スマートフォン又はタブレット端末等の端末であることとして説明する。情報端末６は、専用のアプリケーションソフトをインストールし、このアプリケーションソフトを起動することにより、以下に説明する機能を実現する。
【００８０】
情報端末６は、第３通信部６１と、表示部６２と、操作部６３と、を有している。
【００８１】
第３通信部６１は、ネットワークＮＴ１を介して間接的に、サーバ装置３と通信する。ここでは、情報端末６は、例えば、電波を媒体とする無線通信により、ルータ等を介してネットワークＮＴ１に接続される。情報端末６の通信方式は、例えば、Wi-Fi（登録商標）、Bluetooth（登録商標）、ZigBee（登録商標）又は免許を必要としない小電力無線（特定小電力無線）等の規格に準拠した、無線通信である。さらに、情報端末６は、屋外において、例えば、通信事業者が提供する携帯電話網（キャリア網）又は公衆無線ＬＡＮ（Local Area Network）を介してネットワークＮＴ１に接続されてもよい。携帯電話網には、例えば、３Ｇ（第３世代）回線、ＬＴＥ（Long Term Evolution）回線等がある。
【００８２】
表示部６２は、本実施形態では一例として、設定画面Ｄ１（図５参照）等の、ユーザに情報を提示するための画面を表示する。本開示でいう「画面」は、表示部６２に映し出される像（画像等）である。表示部６２は、例えば、液晶ディスプレイ、有機ＥＬ（Electro Luminescence）ディスプレイ等の画像表示装置により実現される。
【００８３】
操作部６３は、人（ユーザ）の操作を受け付ける機能を有している。本実施形態では、操作部６３は、例えば、マウス等のポインティングデバイス、キーボード、若しくはメカニカルなスイッチ、又はこれらの組み合わせにて実現される。また、情報端末６がタッチパネルディスプレイを搭載している場合には、タッチパネルディスプレイが表示部６２及び操作部６３として機能してもよい。この場合、情報端末６は、表示部６２に表示される各画面上でのボタン等のオブジェクトの操作（タップ、スワイプ、ドラッグ等）が操作部６３で検出されることをもって、ボタン等のオブジェクトが操作されたことと判断する。
【００８４】
（３）動作
以下、本実施形態に係る移動体制御システム１、移動体システム１０及び設計支援システム１００の動作について、図４Ａ〜図１７を参照して、詳細に説明する。図５、図６、図８及び図９等は、情報端末６の表示部６２に表示される設定画面Ｄ１を模式的に表す説明図である。
【００８５】
（３．１）基本動作
まず、移動体制御システム１及び移動体システム１０の基本動作について、図４Ａ〜図４Ｅを参照して説明する。
【００８６】
図４Ａ〜図４Ｅは、所定エリアＡ１を上方から見て、所定エリアＡ１内を移動体２が移動する様子を概念的に示す模式図である。図４Ａ〜図４Ｅでは、所定エリアＡ１に対応するマップＭ１上のノード（指定ノードＮｄｍ及び仮想ノードＮｖｍ）、各ノードに対応する区域Ｚｍ（Ｚ１〜Ｚ５）、及び移動経路Ｒ１０を図示している。各ノードに対応する区域Ｚｍ（Ｚ１〜Ｚ５）は、例えば、所定エリアＡ１において移動体２が旋回するのに十分な大きさの正方形状であることが好ましく、一例として、縦１８０ｃｍ、横１８０ｃｍの正方形状の領域である。ただし、これらのノード（指定ノードＮｄｍ及び仮想ノードＮｖｍ）を示す「点」、区域Ｚｍを示す「枠」、及び移動経路Ｒ１０（区分経路Ｒ１〜Ｒ４）を示す「矢印」は、説明のために図示しているに過ぎず、実体を有する訳ではない。
【００８７】
ここでは、所定エリアＡ１において、指定ノードＮｄ１に対応する地点から、指定ノードＮｄ２に対応する地点へ、移動体２を移動させる場合における、移動体制御システム１及び移動体システム１０の動作を例に説明する。この場合、移動体２は、指定ノードＮｄ１と指定ノードＮｄ２との間に生成されるパスＰ１（図６参照）に対応する移動経路Ｒ１０に沿って所定エリアＡ１を移動する。
【００８８】
この場合において、移動体制御システム１は、サーバ装置３にて、所定エリアＡ１内における移動体２の移動経路Ｒ１０を決定し、この移動経路Ｒ１０に基づいて移動体２を移動させるように移動体２を制御する。また、移動体制御システム１は、各移動体２に搭載されたクライアント端末４から、各移動体２の位置、方位及び移動経路Ｒ１０上の障害物の有無等を含む情報を定期的に受信し、受信した情報に基づき移動経路Ｒ１０の修正、及び移動体２の制御等を実施する。このとき、移動体制御システム１は、所定エリアＡ１に対応するマップＭ１（図５参照）に規定されたノード（指定ノードＮｄｍ、仮想ノードＮｖｍ及び例外ノードＮｅｍ）、及びパスＰｍに従って、移動体２を制御する。
【００８９】
ここでは、出発点となる指定ノードＮｄ１と目的点となる指定ノードＮｄ２との間には、他のノードが少なくとも１つ存在する。図４Ａ〜図４Ｅの例では、一対の指定ノードＮｄ１，Ｎｄ２間には、４つの仮想ノードＮｖ１〜Ｎｖ４が存在する。これら一対の指定ノードＮｄ１，Ｎｄ２及び４つの仮想ノードＮｖ１〜Ｎｖ４の各々は、移動体２の移動速度と進行方向との少なくとも一方を制御可能な制御点（ノード）を構成する。すなわち、これら複数のノード（指定ノードＮｄｍ及び仮想ノードＮｖｍ）の各々は、移動体２の発進、停止又は進行方向の変更のような、移動体２の動作の変化点となり得る。
【００９０】
ここで、一対の指定ノードＮｄ１，Ｎｄ２間のパスＰ１に対応する移動経路Ｒ１０は、４つの仮想ノードＮｖ１〜Ｎｖ４にて、複数の直線的な区分経路Ｒ１〜Ｒ５に分割される。複数（ここでは５つ）の区分経路Ｒ１〜Ｒ５の各々は、隣接するノード間を結ぶ直線状の経路である。そして、これら複数の区分経路Ｒ１〜Ｒ５の各々は、移動体制御システム１が移動体２を移動させるときの最小単位となる。言い換えれば、移動体制御システム１は、区分経路Ｒ１〜Ｒ５単位で、移動体２を移動させることができる。
【００９１】
クライアント端末４の制御部４２は、サーバ装置３から定期的（例えば１秒毎）に送信される指示情報に従って、複数の区分経路Ｒ１〜Ｒ５の各々に沿って、移動体２を移動させるための制御信号を生成する。具体的には、制御部４２は、指示情報と、移動体２の現在位置等の情報から、移動体２が移動すべき区分経路Ｒ１〜Ｒ５を決定する。さらに、制御部４２は、移動体２が次に走行すべき区分経路Ｒ１〜Ｒ５における始点及び終点の位置、走行速度、並びに移動体２の方位等を含む制御信号を生成し、移動体２に出力する。ここで、指示情報は、各区分経路Ｒ１〜Ｒ５で移動体２が移動（走行）すべき速度である移動速度の情報を含んでいてもよい。さらに、指示情報は、各区分経路Ｒ１〜Ｒ５の始点及び／又は終点、つまり各ノードでの移動体２の方位の情報、並びに、各区分経路Ｒ１〜Ｒ５に沿って移動中の移動体２の方位（姿勢）の情報を含んでもよい。
【００９２】
一方で、サーバ装置３は、各移動体２（クライアント端末４）から定期的（例えば１秒毎）に送信される検知部２２２の検知結果を、各移動体２の識別情報及び時刻等と対応付けて記憶する。これにより、サーバ装置３は、各移動体２の現在位置、現在方位及び現在状態等の情報を、移動体２ごとに、ほぼリアルタイムで取得し、管理できる。移動体２の現在位置は、マップＭ１上の座標位置（Ｘ，Ｙ）で示される。移動体２の現在方位は、方位角で示される。移動体２の現在状態には、走行状態、停止状態、待機中及び異常発生等の移動体２の状態等が含まれる。
【００９３】
本実施形態では、制御部４２は、サーバ装置３からの指示に従って、移動体２を制御するので、検知部２２２の検知結果についても、基本的にはサーバ装置３での演算に用いられる。ただし、検知部２２２の検知結果は、制御部４２での処理に用いられてもよい。この場合、制御部４２は、検知部２２２の検知結果から、例えば、移動体２の周囲における障害物の有無及びその位置等に関する障害物情報を抽出し、障害物情報に従って移動体２を制御する。一例として、制御部４２は、移動体２の移動経路、又は移動経路の近傍に障害物の存在を認めた場合に、移動体２を停止させる。その後、制御部４２は、検知部２２２により移動経路、又は移動経路の近傍の障害物が無くなったことをもって、移動体２の移動を再開する。また、制御部４２は、障害物情報を移動体２から受け取ると、障害物を回避できるように移動体２の走行速度の変更、又は移動経路の変更等を実行してもよい。
【００９４】
さらに、制御部４２は、指示情報で規定されている各区分経路Ｒ１〜Ｒ５又は移動経路Ｒ１０から、移動体２の現在位置が外れた場合には、移動体２を停止させる。そして、移動体２の現在位置が、各区分経路Ｒ１〜Ｒ５又は移動経路Ｒ１０から一定距離以内にあれば、制御部４２は、移動体２を各区分経路Ｒ１〜Ｒ５又は移動経路Ｒ１０上に復帰させるように制御する。
【００９５】
次に、移動体２を移動させるための具体的な処理について説明する。
【００９６】
まず、移動体制御システム１は、図４Ａに示すように、所定エリアＡ１内において指定ノードＮｄ１に対応する区域Ｚ１に位置する移動体２を対象移動体２ｔとして、対象移動体２ｔに対応付けて１以上のノードを占有状態とする予約処理を実行する。このとき、予約処理により、対象移動体２ｔが位置する区域Ｚ１に対応するノードから数えて進行方向側に予約数分のノードが、占有状態となる。ここで、予約数には、対象移動体２ｔが位置する区域Ｚ１に対応するノード（指定ノードＮｄ１）も含まれる。
【００９７】
ここでは一例として、予約数は「３」であって、対象移動体２ｔが位置する区域Ｚ１に対応するノードから進行方向側の３つ分のノード、つまり指定ノードＮｄ１及び仮想ノードＮｖ１，Ｎｖ２という３つのノードが、占有状態となる。そして、所定エリアＡ１において占有状態にあるノード（指定ノードＮｄ１及び仮想ノードＮｖ１，Ｎｖ２）に対応する区域Ｚ１，Ｚ２，Ｚ３への対象移動体２ｔ以外の進入が制限（禁止）される。図４Ａ〜図４Ｅでは、占有状態にあるノードに対応する区域Ｚｍには網掛（ドットハッチング）を付しており、占有状態にない、つまり非占有状態にあるノードに対応する区域Ｚｍには網掛を付していない。
【００９８】
次に、移動体制御システム１は、図４Ｂに示すように、移動体２（対象移動体２ｔ）に対して、占有状態のノードに対応する区域Ｚ１，Ｚ２，Ｚ３内での移動を指示する。つまり、サーバ装置３は、指定ノードＮｄ１に対応する区域Ｚ１から仮想ノードＮｖ２に対応する区域Ｚ３まで移動体２を移動させるべく、２つの区分経路Ｒ１，Ｒ２の移動を指示する内容の指示情報を出力する。この指示情報に従って、クライアント端末４の制御部４２は、２つの区分経路Ｒ１，Ｒ２の各々に沿って、移動体２を移動させるための制御信号を生成する。結果的に、移動体２は、区域Ｚ１から区域Ｚ３に向けて２つの区分経路Ｒ１，Ｒ２を移動する。
【００９９】
ここにおいて、移動体制御システム１は、対象移動体２ｔが位置する区域Ｚｍが変わる度に予約処理を実行する。つまり、図４Ｃに示すように、対象移動体２ｔが区域Ｚ１を離脱すると、対象移動体２ｔが位置する区域Ｚｍが変わるので、移動体制御システム１は、２回目の予約処理を実行する。
【０１００】
２回目の予約処理では、移動体制御システム１は、区域Ｚ１に対応する指定ノードＮｄ１について、占有状態を解除する。つまり、対象移動体２ｔが移動し終わった区域Ｚ１については、対象移動体２ｔに占有させる必要性がないため、この区域Ｚ１に対応する指定ノードＮｄ１の状態は占有状態から非占有状態に切り替えられる。さらに、２回目の予約処理では、移動体制御システム１は、区域Ｚ３に対応する仮想ノードＮｖ２から見て進行方向側に隣接するノード（仮想ノードＮｖ３）を、新たに占有状態とする。その結果、所定エリアＡ１において占有状態にあるノード（仮想ノードＮｖ１，Ｎｖ２，Ｎｖ３）に対応する区域Ｚ２，Ｚ３，Ｚ４への対象移動体２ｔ以外の進入が制限（禁止）される。
【０１０１】
次に、移動体制御システム１は、図４Ｃに示すように、移動体２（対象移動体２ｔ）に対して、占有状態のノードに対応する区域Ｚ２，Ｚ３，Ｚ４内での移動を指示する。結果的に、移動体２は、区域Ｚ２から区域Ｚ４に向けて２つの区分経路Ｒ２，Ｒ３を移動する。
【０１０２】
以降は同様に、移動体制御システム１は、対象移動体２ｔが位置する区域Ｚｍが変わる度に予約処理を実行し、占有状態のノードを継ぎ足しながら、移動体２を区分経路Ｒ１〜Ｒ５単位で移動させる。
【０１０３】
すなわち、図４Ｄに示すように、対象移動体２ｔが区域Ｚ２を離脱すると、対象移動体２ｔが位置する区域Ｚｍが変わるので、移動体制御システム１は、３回目の予約処理を実行する。
【０１０４】
３回目の予約処理では、移動体制御システム１は、区域Ｚ２に対応する仮想ノードＮｖ１について、占有状態を解除する。さらに、３回目の予約処理では、移動体制御システム１は、区域Ｚ４に対応する仮想ノードＮｖ３から見て進行方向側に隣接するノード（仮想ノードＮｖ４）を、新たに占有状態とする。その結果、所定エリアＡ１において占有状態にあるノード（仮想ノードＮｖ２，Ｎｖ３，Ｎｖ４）に対応する区域Ｚ３，Ｚ４，Ｚ５への対象移動体２ｔ以外の進入が制限（禁止）される。
【０１０５】
次に、移動体制御システム１は、図４Ｄに示すように、移動体２（対象移動体２ｔ）に対して、占有状態のノードに対応する区域Ｚ３，Ｚ４，Ｚ５内での移動を指示する。結果的に、移動体２は、区域Ｚ３から区域Ｚ５に向けて２つの区分経路Ｒ３，Ｒ４を移動する。
【０１０６】
その後、対象移動体２ｔが区域Ｚ３を離脱すると、対象移動体２ｔが位置する区域Ｚｍが変わるので、移動体制御システム１は、４回目の予約処理を実行する。さらに、図４Ｅに示すように、対象移動体２ｔが区域Ｚ４を離脱すると、対象移動体２ｔが位置する区域Ｚｍが変わるので、移動体制御システム１は、５回目の予約処理を実行する。
【０１０７】
５回目の予約処理では、移動体制御システム１は、区域Ｚ４に対応する仮想ノードＮｖ３について、占有状態を解除する。その結果、所定エリアＡ１において占有状態にあるノード（仮想ノードＮｖ４及び指定ノードＮｄ２）に対応する区域Ｚ５，Ｚ６への対象移動体２ｔ以外の進入が制限（禁止）される。
【０１０８】
次に、移動体制御システム１は、図４Ｅに示すように、移動体２（対象移動体２ｔ）に対して、占有状態のノードに対応する区域Ｚ５，Ｚ６内での移動を指示する。結果的に、移動体２は、区域Ｚ５から区域Ｚ６に向けて区分経路Ｒ５を移動する。
【０１０９】
このように、移動体制御システム１は、占有状態のノードを継ぎ足しながら移動体２を移動させ、最終的に、移動体２は、所定エリアＡ１において、指定ノードＮｄ１に対応する区域Ｚ１から、指定ノードＮｄ２に対応する区域Ｚ６に移動する。したがって、移動体制御システム１は、所定エリアＡ１において、一対の指定ノードＮｄ１，Ｎｄ２間に生成されたパスＰ１に対応する移動経路Ｒ１０に沿って移動体２を移動させることになる。
【０１１０】
（３．２）制御計画の設計
次に、移動体制御システム１にて移動体２を制御するための制御計画の設計について説明する。
【０１１１】
（３．２．１）マップ画面
サーバ装置３は、図５に示すように、所定エリアＡ１に対応するマップＭ１の情報を第１記憶部３９に記憶している。制御計画の設計は、このようなマップＭ１を含む設定画面Ｄ１上で行われる。
【０１１２】
マップＭ１は、所定エリアＡ１の平面図に相当し、所定エリアＡ１内における入口９０２、出口９０３、柱９０４、隔壁９０５及びベルトコンベア９０６等の情報と、移動体２の進入禁止エリア等の情報を含んでいる。本開示でいう「進入禁止エリア」は、移動体２の進入が制限されるエリアである。
【０１１３】
マップＭ１は、所定エリアＡ１の平面図と、地図データに重畳して表示されるグリッド線Ｇ１と、を含んでいる。グリッド線Ｇ１は、第１軸Ａｘ及び第２軸Ａｙの各々に平行に、かつ略一定の間隔で配置されている。言い換えれば、マップＭ１は、グリッド線Ｇ１によって、格子状に並ぶ複数のマス目に区分けされたグリッドマップを構成している。マス目は、例えば、所定エリアＡ１において移動体２の進行方向に対する移動体２の幅寸法に対応するような寸法の正方形状であることが好ましく、一例として、移動体２の幅に対応する縦６０ｃｍ、横６０ｃｍの正方形状に形成される。
【０１１４】
このマップＭ１における各位置は、例えば、マップＭ１上の特定位置に設定された原点を基準に、第１軸Ａｘ及び第２軸Ａｙの各々における相対位置により座標位置（Ｘ，Ｙ）で表される。つまり、マップＭ１上の各位置は、座標位置（Ｘ，Ｙ）にて一意に特定可能である。さらに、マップＭ１上での方位は「方位角」にて規定される。具体的には、図５の下方から上方に向かう方位、つまり第２軸Ａｙの矢印の示す方位が、方位角「０度」の方位と規定され、この方位から時計回りに方位角が増加するように、方位角が規定される。第１記憶部３９に記憶されているマップＭ１の情報は、随時更新可能である。
【０１１５】
サーバ装置３は、上述したようなマップＭ１を含む設定画面Ｄ１を、表示制御部３８にて、情報端末６の表示部６２に表示させる。すなわち、情報端末６の表示部６２には、例えば、図５に示すような設定画面Ｄ１が表示される。設定画面Ｄ１が表示された状態において、情報端末６の操作部６３を用いることにより、ユーザは、移動体２の移動経路等を設定可能である。つまり、ユーザは、設計支援システム１００を用いることにより、設定画面Ｄ１上で、所定エリアＡ１内を移動する移動体２を制御するための制御計画の設計が可能である。
【０１１６】
図６は、マップＭ１の一部を拡大表示したときの設定画面Ｄ１である。このような設定画面Ｄ１では、情報端末６の操作部６３を用いることにより、ユーザは、マップＭ１上に指定ノードＮｄ１を生成する操作が可能である。
【０１１７】
具体的には、ユーザは操作部６３を操作して、少なくとも設定画面Ｄ１におけるマップＭ１上の指定位置を指定する。このとき、操作部６３は、指定位置を指定するユーザの操作に応じた操作信号を出力する。ノード生成部３２は、この操作信号に従って、マップＭ１における指定位置に、移動体２を制御可能なノードである指定ノードＮｄ１を生成する。このとき、ユーザは、例えば、操作部６３としてのマウスを用いて、マップＭ１における任意の位置を指定位置として指定可能である。そのため、ノード生成部３２は、マップＭ１における任意の位置に、指定ノードＮｄｍを生成することができる。
【０１１８】
ここで、本実施形態に係る移動体制御システム１は、グリッド線Ｇ１に拘束されることなく、マップＭ１の任意の位置にノードを設定できる。つまり、本実施形態では、ノードを設定する際の目安又は入力支援として、設定画面Ｄ１において、マップＭ１がグリッド線Ｇ１を含んでいる。ただし、ノード生成部３２は、グリッド線Ｇ１の位置にはかかわらずに指定ノードＮｄｍを生成する。そのため、本実施形態では、グリッド線Ｇ１に拘束されることなく、マップＭ１における任意の位置にノードを設定することが可能である。
【０１１９】
同様の操作をユーザが繰り返し行うことで、マップＭ１上には、複数の指定ノードＮｄｍが生成される。図６の例では、同様の操作をユーザが４回行うことで、マップＭ１上に、４つの指定ノードＮｄ１〜Ｎｄ４が生成される。４つの指定ノードＮｄ１〜Ｎｄ４のうち、隣接する２つの指定ノードＮｄｍが、一対の指定ノードＮｄｍを構成する。つまり、指定ノードＮｄ１，Ｎｄ２は一対の指定ノードＮｄｍを構成し、同様に、指定ノードＮｄ２，Ｎｄ３、指定ノードＮｄ３，Ｎｄ４は、それぞれ一対の指定ノードＮｄｍを構成する。
【０１２０】
また、設定画面Ｄ１において、各指定ノードＮｄｍの周囲には、各指定ノードＮｄｍを囲む枠体Ｆｍが表示される。枠体Ｆｍの添え字「ｍ」には、自然数（１，２，３，…）が入る。図６の例では、４つの指定ノードＮｄ１〜Ｎｄ４に対して、それぞれ枠体Ｆ１〜Ｆ４が設定されている。ここで、各枠体Ｆｍは、所定エリアＡ１における区域Ｚｍに対応している。本実施形態では、各枠体Ｆｍは、例えば、所定エリアＡ１において移動体２が旋回するのに十分な大きさの正方形状であることが好ましく、一例として、所定エリアＡ１において縦１８０ｃｍ、横１８０ｃｍの正方形状の領域を規定する大きさである。各指定ノードＮｄｍは、各指定ノードＮｄｍを囲む枠体Ｆｍの中心に位置する。ここで、複数の枠体Ｆｍ同士の重複は制限（禁止）されている。例えば、指定ノードＮｄ１を囲む枠体Ｆ１の内側に、指定ノードＮｄ２を囲む枠体Ｆ２が重複して設定されることはない。これにより、隣接する一対の指定ノードＮｄｍ間の間隔に下限値Ｌが設定される。本実施形態では、下限値Ｌは、所定エリアＡ１における１８０ｃｍである。
【０１２１】
すなわち、隣接する一対の指定ノードＮｄｍ同士の間隔が下限値Ｌ未満となるような、指定ノードＮｄｍの配置が制限（禁止）される。このように、ユーザが、ノード（指定ノードＮｄｍ）を設定するための設定画面Ｄ１においては、原則、隣接するノードとの間隔が下限値Ｌ以上となるように、指定ノードＮｄｍを設定できる位置が制限される。ただし、後述する例外ノードＮｅｍであれば、隣接するノードとの間隔が下限値Ｌ未満となる位置にノード（例外ノードＮｅｍ）を設定することも可能である。
【０１２２】
ここにおいて、ユーザは、マップＭ１上に設定するノードの属性を選択可能である。ノードの属性には、少なくとも指定ノードＮｄｍ及び例外ノードＮｅｍを含む、ノードの種別が含まれている。一例として、ユーザは、操作部６３を操作して、設定画面Ｄ１にプルダウンメニューを表示させた状態で、プルダウンメニュー上でノードの属性を選択する。
【０１２３】
マップＭ１に少なくとも２つ（一対）の指定ノードＮｄｍが生成された状態において、設定画面Ｄ１では、情報端末６の操作部６３を用いることにより、ユーザは、マップＭ１上にパスＰｍを生成する操作が可能である。
【０１２４】
具体的には、ユーザは操作部６３を操作して、少なくとも設定画面Ｄ１におけるマップＭ１上の任意の指定ノードＮｄｍを選択する。このとき、操作部６３は、指定ノードＮｄｍを選択するユーザの操作に応じた操作信号を出力する。パス生成部３３は、この操作信号に従って、選択された指定ノードＮｄｍを始点とするパスＰｍを生成する。このとき、ユーザは、例えば、操作部６３としてのマウスを用いて、パスＰｍの始点となる指定ノードＮｄｍを選択した状態で、パスＰｍの終点となる指定ノードＮｄｍに向かってマウスをドラッグする。これにより、パスＰｍの始点及び終点となる一対の指定ノードＮｄｍが選択され、この一対の指定ノードＮｄｍ間にパスＰｍが生成される。
【０１２５】
図６の例では、一対の指定ノードＮｄ１，Ｎｄ２間にパスＰ１が生成され、一対の指定ノードＮｄ２，Ｎｄ３間にパスＰ２が生成され、一対の指定ノードＮｄ３，Ｎｄ４間にパスＰ３が生成されている。つまり、図６の例では、３つのパスＰ１〜Ｐ３が生成されている。
【０１２６】
ここにおいて、ユーザは、マップＭ１上に設定するパスＰｍの属性を選択可能である。パスＰｍの属性には、少なくとも双方向と片方向（単方向）とがある。双方向のパスＰｍは、双方向への移動体２の移動を許容する、つまり移動体２の往復を許容するパスである。単方向のパスＰｍは、片方向への移動体２の移動のみを許容する、つまり移動体２の往復を禁止するパスである。一例として、ユーザは、操作部６３を操作して、設定画面Ｄ１にプルダウンメニューを表示させた状態で、プルダウンメニュー上でパスＰｍの属性を選択する。パスＰｍの属性は、設定画面Ｄ１におけるパスＰｍ中の「矢印」にて表示される。つまり、図６の例では、３つのパスＰ１〜Ｐ３のうち、パスＰ１は双方向、パスＰ２，Ｐ３は片方向のパスである。
【０１２７】
ここで、パス生成部３３は、マップＭ１上における出発点のノードと目的点のノードとを最短経路で結ぶパスＰｍを探索する。さらに、パス生成部３３は、第１軸Ａｘ又は第２軸Ａｙに平行となるように、パスＰｍを生成する。つまり、パス生成部３３で生成されるパスＰｍは、第１軸Ａｘ又は第２軸Ａｙに平行に設定される。さらに、パス生成部３３は、移動体２のスムーズな移動が可能となる、つまり曲がり角が少ない移動経路を規定するように、パスＰｍを生成してもよい。
【０１２８】
（３．２．２）仮想ノード
本実施形態に係る移動体制御システム１及び設計支援システム１００は、一対の指定ノードＮｄｍが設定された場合において、一対の指定ノードＮｄｍの間隔に応じて、一対の指定ノードＮｄｍ間に１つ以上の仮想ノードＮｖｍを設定する機能を有している。
【０１２９】
つまり、仮想ノード生成部３５は、マップＭ１における一対の指定ノードＮｄｍ間に、一対の指定ノードＮｄｍとは別のノードである仮想ノードＮｖｍを、少なくとも１つ生成する。本開示でいう「仮想ノード」は、ノードの一種ではあるものの、指定ノードＮｄｍとは異なり設定画面Ｄ１には表示されず、一対の指定ノードＮｄｍ間に生成されたパスＰｍ上に自動的に設定される。
【０１３０】
具体的には、一対の指定ノードＮｄｍの間隔については、上限値が規定されており、一対の指定ノードＮｄｍの間隔が上限値未満となるように、一対の指定ノードＮｄｍ間には、適宜１つ以上の仮想ノードＮｖｍが設定される。本実施形態では、上限値は、隣接する一対の指定ノードＮｄｍ間の間隔について設定された下限値Ｌの２倍、つまり「２Ｌ」である。下限値Ｌが、所定エリアＡ１における１８０ｃｍであれば、上限値２Ｌは、所定エリアＡ１における３６０ｃｍである。
【０１３１】
これにより、移動体制御システム１は、適当な間隔で設定されるノード（指定ノードＮｄｍ及び仮想ノードＮｖｍ）ごとに移動体２を制御することが可能である。したがって、グリッドフリーであるが故に、過大な間隔を空けて一対の指定ノードＮｄｍが設定された場合であっても、移動体制御システム１は、適当な地点において、移動体２の停止又は進行方向の変更等の制御を行うことができる。
【０１３２】
また、パスＰｍ上における隣接するノード同士の間隔は、原則、下限値Ｌ以上かつ上限値２Ｌ未満の範囲内に制限されている。このような制限のもとで、一対の指定ノードＮｄｍ間の間隔が上限値２Ｌ以上である場合には、一対の指定ノードＮｄｍ間には、１つ以上の仮想ノードＮｖｍが適宜設定される。そのため、仮想ノード生成部３５は、パスＰｍ上における隣接するノード同士の間隔が、下限値Ｌ以上かつ上限値２Ｌ未満となるように、仮想ノードＮｖｍの個数及び位置を決定する。
【０１３３】
図７Ａ〜図７Ｄは、仮想ノードＮｖｍの生成方法を概念的に表す説明図である。ここでは、一対の指定ノードＮｄ１，Ｎｄ２間に仮想ノードＮｖｍが生成される場合を例示する。つまり、一対の指定ノードＮｄ１，Ｎｄ２の間隔、つまりパスＰｍの長さ（パス長Ｌｐ）が上限値２Ｌ以上であることを前提とする。
【０１３４】
この場合、仮想ノード生成部３５は、まずは図７Ａに示すように、一対の指定ノードＮｄ１，Ｎｄ２の間隔、つまりパス長Ｌｐを下限値Ｌで除算したときの商α（ただしαは自然数）及び剰余β（ただしβは自然数）を求める。商αは「９」であるため、一対の指定ノードＮｄ１，Ｎｄ２間には、図７Ａに示すように、下限値Ｌに相当する長さを持つ単位パスが９つ収まる。図７Ａでは、区間「１」〜区間「９」のそれぞれに単位パスが収まっており、区間「１０」に剰余βに相当する長さを持つ剰余パスが収まっている。
【０１３５】
次に、仮想ノード生成部３５は、図７Ｂに示すように、剰余βを商αにて案分する案分処理を実行する。案分処理により９等分された剰余パスは、図７Ｃに示すように、複数の区間「１」〜区間「９」に振り分けられる。ここで、案分処理にて案分される剰余パスの単位が規定されていてもよい。この場合には、剰余パスは、一例として、５等分され、５等分された剰余パスが複数の区間「１」〜区間「５」に振り分けられる。
【０１３６】
最後に、各単位パスに、案分された剰余パスが加算されることにより、図７Ｄに示すように、区間「１」〜区間「９」の各々における単位パスが延長される。結果的に、図７Ｄに示すように、一対の指定ノードＮｄ１，Ｎｄ２間が、区間「１´」〜区間「９´」に区分され、各区分点に仮想ノードＮｖｍが設定される。要するに、図７Ｄの例では、一対の指定ノードＮｄ１，Ｎｄ２間には、８つの仮想ノードＮｖ１〜Ｎｖ８が生成される。
【０１３７】
（３．２．３）位置調整機能
本実施形態に係る移動体制御システム１及び設計支援システム１００は、一対の指定ノードＮｄｍの少なくとも一方の位置を調整する機能を有している。
【０１３８】
本実施形態では、位置調整部３７は、パスＰｍを生成する際に、パスＰｍの始点及び終点となる一対の指定ノードＮｄｍの少なくとも一方の位置を調整する。具体的には、図８に示すように、パスＰ１の生成時において、パスＰ１の始点及び終点となる一対の指定ノードＮｄ１，Ｎｄ２が、第１軸Ａｘに平行に並ぶように、一対の指定ノードＮｄ１，Ｎｄ２の少なくとも一方の位置が調整される。図８では、ユーザが、例えば、操作部６３としてのマウスを用いて、カーソルＣ１を操作し、パスＰ１の始点となる指定ノードＮｄ１を選択した状態で、パスＰ１の終点となる指定ノードＮｄ２に向かってマウスをドラッグする様子を表している。
【０１３９】
この場合、指定ノードＮｄ２が、元々は、指定ノードＮｄ１と第１軸Ａｘに平行に並ぶ位置になくても、指定ノードＮｄ２は、パスＰ１の終点として選択された時点で、指定ノードＮｄ１と第１軸Ａｘに平行に並ぶ位置に補正される。つまり、指定ノードＮｄ２は、図８に示すように、下方に位置補正される。これに伴って、一対の指定ノードＮｄ１，Ｎｄ２間に生成されるパスＰ１も、第１軸Ａｘに平行に補正される。
【０１４０】
ただし、上述したような補正は、常に実行されるのではなく、一対の指定ノードＮｄ１，Ｎｄ２間の位置ずれが補正限界値以上あれば、補正は実行されない。ここで、補正限界値は、枠体Ｆｍの一辺の長さ（所定エリアＡ１における１８０ｃｍ）と同じ値である。例えば、指定ノードＮｄ１を通る第１軸Ａｘから指定ノードＮｄ２までの距離が補正限界値以上ある場合、第２軸Ａｙに沿った指定ノードＮｄ２の位置補正は実行されない。同様に、指定ノードＮｄ１を通る第２軸Ａｙから指定ノードＮｄ２までの距離が補正限界値以上ある場合、第１軸Ａｘに沿った指定ノードＮｄ２の位置補正は実行されない。そして、一対の指定ノードＮｄ１，Ｎｄ２間の位置ずれが補正限界値以上あって補正が実行されなかった場合には、一対の指定ノードＮｄ１，Ｎｄ２間にパスＰ１は生成されない。
【０１４１】
（３．２．４）例外ノード
本実施形態に係る移動体制御システム１及び設計支援システム１００は、例外ノードＮｅｍを生成する機能を有している。
【０１４２】
本実施形態では、例外ノード生成部３６は、図９に示すように、例外ノードＮｅｍを生成する。例外ノードＮｅｍは、上述したように、隣接するノードとの間隔が下限値Ｌ未満となる位置にも生成可能である。本実施形態において、例外ノードＮｅｍの場合の、隣接するノードとの最小間隔は、一例として、グリッド線Ｇ１の間隔（所定エリアＡ１における６０ｃｍ）と同値に規定される。本実施形態では、設定画面Ｄ１において、例外ノードＮｅｍについては、指定ノードＮｄｍのような枠体Ｆｍは表示されない。
【０１４３】
すなわち、図９に示すように、設定画面Ｄ１上に、３つの例外ノードＮｅ１〜Ｎｅ３を生成する場合において、各例外ノードＮｅ１〜Ｎｅ３における隣接するノードとの間隔については、下限値Ｌは適用されない。そのため、各例外ノードＮｅ１〜Ｎｅ３は、隣接するノードとの間隔が下限値Ｌ未満となる位置にも生成可能である。
【０１４４】
ここで、例外ノードＮｅｍが下限値Ｌ未満の間隔で複数生成された場合、隣接する複数の例外ノードＮｅｍ同士の間隔の合計が下限値Ｌ以上となるように、複数の例外ノードＮｅｍがグループ化される。図９の例では、３つの例外ノードＮｅ１〜Ｎｅ３は、グリッド線Ｇ１の間隔の１．５倍の間隔（所定エリアＡ１における９０ｃｍ）で配置されている。そのため、これら３つの例外ノードＮｅ１〜Ｎｅ３は、グループ化されている。したがって、例えば、予約部３４がノードを占有状態とする場合には、これら３つの例外ノードＮｅ１〜Ｎｅ３は、一斉に占有状態となる。
【０１４５】
（３．２．５）予約数の調整機能
次に、予約数の調整機能について、図１０Ａ〜図１０Ｅを参照して説明する。
【０１４６】
図１０Ａ〜図１０Ｅは、「（３．１）基本動作」の欄で説明した図４Ａ〜図４Ｅと同様に、所定エリアＡ１を上方から見て、所定エリアＡ１内を移動体２が移動する様子を概念的に示す模式図である。以下、「（３．１）基本動作」と重複する説明は適宜省略する。
【０１４７】
本実施形態では、通信端末５が、電波を媒体とする無線通信により所定エリアＡ１内の移動体２に搭載されている通信部（第２通信部４１）と通信している。そこで、予約部３４は、通信端末５における通信部（第２通信部４１）との無線通信の状況に応じて予約数を決定する。要するに、本実施形態では、予約処理において、１台の対象移動体２ｔに対して同時に占有状態にされるノードの数である予約数は、固定値ではなく、無線通信の状況によって変化する可変値である。
【０１４８】
ここでは、予約部３４は、無線通信における電波強度が小さいほど予約数を多くするように、無線通信の状況に応じて予約数を決定する。具体的には、予約部３４は、通信端末５と第２通信部４１との間の無線通信における電波強度を、通信端末５又は第２通信部４１における受信信号強度（ＲＳＳＩ：Received Signal Strength Indication）にて求めている。無線通信における電波強度が小さいほど、移動体２は、クライアント端末４（第２通信部４１）での通信端末５との無線通信が成立しにくい状況にあるので、このような場合には、予約部３４での予約数を多くする。
【０１４９】
本実施形態では、一例として、電波強度について閾値を設定している。予約部３４は、電波強度が閾値以上であれば無線通信の状況が「良好」と判断し、予約数を「２」とし、電波強度が閾値未満であれば無線通信の状況が「不良」と判断し、予約数を「３」とする。
【０１５０】
無線通信の状況は、例えば、ノードごとに予め測定され、マップＭ１に対応付けて第１記憶部３９に記憶されている。そのため、マップＭ１上に生成された複数のノードのうち、いずれのノードにおいて無線通信の状況が良好（電波強度が閾値以上）であるかは、サーバ装置３で既知である。ただし、無線通信の状況は、例えば、サーバ装置３がリアルタイムに取得してもよい。
【０１５１】
次に、予約数を調整するための具体的な処理について説明する。図１０Ａ〜図１０Ｅでは、複数のノードのうち仮想ノードＮｖ２のみが無線通信の状況が「不良」であって、仮想ノードＮｖ２のノードについては無線通信の状況が「良好」であると仮定する。
【０１５２】
まず、移動体制御システム１は、図１０Ａに示すように、所定エリアＡ１内において指定ノードＮｄ１に対応する区域Ｚ１に位置する移動体２を対象移動体２ｔとして、対象移動体２ｔに対応付けて１以上のノードを占有状態とする予約処理を実行する。このとき、予約処理により、対象移動体２ｔが位置する区域Ｚ１に対応するノードから数えて進行方向側に予約数分のノードが、占有状態となる。ここで、指定ノードＮｄ１及び仮想ノードＮｖ１は、いずれも無線通信の状況が「良好」である。そのため、このときの予約数は「２」である。
【０１５３】
したがって、対象移動体２ｔが位置する区域Ｚ１に対応するノードから進行方向側の２つ分のノード、つまり指定ノードＮｄ１及び仮想ノードＮｖ１という２つのノードが、占有状態となる。
【０１５４】
次に、移動体制御システム１は、図１０Ｂに示すように、移動体２（対象移動体２ｔ）に対して、占有状態のノードに対応する区域Ｚ１，Ｚ２内での移動を指示する。結果的に、移動体２は、区域Ｚ１から区域Ｚ２に向けて区分経路Ｒ１を移動する。
【０１５５】
ここにおいて、図１０Ｃに示すように、対象移動体２ｔが区域Ｚ１を離脱すると、対象移動体２ｔが位置する区域Ｚｍが変わるので、移動体制御システム１は、２回目の予約処理を実行する。
【０１５６】
２回目の予約処理では、移動体制御システム１は、区域Ｚ１に対応する指定ノードＮｄ１について、占有状態を解除する。さらに、２回目の予約処理では、移動体制御システム１は、区域Ｚ２に対応する仮想ノードＮｖ１から見て進行方向側に隣接するノード（仮想ノードＮｖ２）を、新たに占有状態とする。ここで、仮想ノードＮｖ２については、無線通信の状況が「不良」である。そのため、このときの予約数は「３」である。
【０１５７】
したがって、図１０Ｃに示すように、対象移動体２ｔが位置する区域Ｚ２に対応するノードから進行方向側の３つ分のノード、つまり仮想ノードＮｖ１，Ｎｖ２，Ｎｖ３という３つのノードが、占有状態となる。その結果、所定エリアＡ１において占有状態にあるノード（仮想ノードＮｖ１，Ｎｖ２，Ｎｖ３）に対応する区域Ｚ２，Ｚ３，Ｚ４への対象移動体２ｔ以外の進入が制限（禁止）される。
【０１５８】
次に、移動体制御システム１は、図１０Ｃに示すように、移動体２（対象移動体２ｔ）に対して、占有状態のノードに対応する区域Ｚ２，Ｚ３，Ｚ４内での移動を指示する。結果的に、移動体２は、区域Ｚ２から区域Ｚ４に向けて２つの区分経路Ｒ２，Ｒ３を移動する。
【０１５９】
その後、図１０Ｄに示すように、対象移動体２ｔが区域Ｚ２を離脱すると、対象移動体２ｔが位置する区域Ｚｍが変わるので、移動体制御システム１は、３回目の予約処理を実行する。
【０１６０】
３回目の予約処理では、移動体制御システム１は、区域Ｚ２に対応する仮想ノードＮｖ１について、占有状態を解除する。さらに、３回目の予約処理では、移動体制御システム１は、区域Ｚ４に対応する仮想ノードＮｖ３から見て進行方向側に隣接するノード（仮想ノードＮｖ４）を、新たに占有状態とする。その結果、所定エリアＡ１において占有状態にあるノード（仮想ノードＮｖ２，Ｎｖ３，Ｎｖ４）に対応する区域Ｚ３，Ｚ４，Ｚ５への対象移動体２ｔ以外の進入が制限（禁止）される。
【０１６１】
次に、移動体制御システム１は、図１０Ｄに示すように、移動体２（対象移動体２ｔ）に対して、占有状態のノードに対応する区域Ｚ３，Ｚ４，Ｚ５内での移動を指示する。結果的に、移動体２は、区域Ｚ３から区域Ｚ５に向けて２つの区分経路Ｒ３，Ｒ４を移動する。
【０１６２】
その後、対象移動体２ｔが区域Ｚ３を離脱すると、対象移動体２ｔが位置する区域Ｚｍが変わるので、移動体制御システム１は、４回目の予約処理を実行する。４回目の予約処理では、無線通信の状況が「不良」である仮想ノードＮｖ２については、占有状態ではない。そのため、このときの予約数は「２」である。
【０１６３】
さらに、図１０Ｅに示すように、対象移動体２ｔが区域Ｚ４を離脱すると、対象移動体２ｔが位置する区域Ｚｍが変わるので、移動体制御システム１は、５回目の予約処理を実行する。このときの予約数も「２」である。
【０１６４】
５回目の予約処理では、移動体制御システム１は、区域Ｚ４に対応する仮想ノードＮｖ３について、占有状態を解除する。さらに、５回目の予約処理では、移動体制御システム１は、区域Ｚ５に対応する仮想ノードＮｖ３から見て進行方向側に隣接するノード（指定ノードＮｄ２）を、新たに占有状態とする。その結果、所定エリアＡ１において占有状態にあるノード（仮想ノードＮｖ４及び指定ノードＮｄ２）に対応する区域Ｚ５，Ｚ６への対象移動体２ｔ以外の進入が制限（禁止）される。
【０１６５】
次に、移動体制御システム１は、図１０Ｅに示すように、移動体２（対象移動体２ｔ）に対して、占有状態のノードに対応する区域Ｚ５，Ｚ６内での移動を指示する。結果的に、移動体２は、区域Ｚ５から区域Ｚ６に向けて区分経路Ｒ５を移動する。
【０１６６】
（３．２．６）エリアテンプレート機能
次に、エリアテンプレート機能について、図１１〜図１３Ｂを参照して説明する。
【０１６７】
本実施形態では、図１１に示すように、制御計画の設計に際して、少なくとも１つのエリアテンプレートＴ１，Ｔ２を使用可能である。エリアテンプレートＴ１は、複数のノードＮ１１〜Ｎ１６の組み合わせを含み、エリアテンプレートＴ２は、複数のノードＮ２１〜Ｎ２５の組み合わせを含んでいる。さらに、エリアテンプレートＴ１，Ｔ２の各々は、ノード間をつなぐパスを含んでいる。
【０１６８】
ここで、エリアテンプレートＴ１，Ｔ２の各々は、各ノードの属性の一つとして各ノードの「制御方式」を含んでいる。本開示でいう「制御方式」は、各ノードにおける移動体２を制御の内容を意味し、例えば、停止、進行方向の変更（旋回を含む）、整列停止、待機、把持（搬送物９２の把持又は積載）待ち又は設置等である。一例として、エリアテンプレートＴ１の複数のノードＮ１１〜Ｎ１６のうち、ノードＮ１２，Ｎ１４，Ｎ１５の「制御方式」は、それぞれ「待機」、「把持待ち」、「設置」である。エリアテンプレートＴ２の複数のノードＮ２１〜Ｎ２５のうち、ノードＮ２３，Ｎ２４の「制御方式」は、それぞれ「整列停止」である。
【０１６９】
また、エリアテンプレートＴ１，Ｔ２の各々は、エリアテンプレートＴ１，Ｔ２における移動体２の進入口を規定する「入口ノード」、及び移動体２の退出口を規定する「出口ノード」を含んでいる。一例として、エリアテンプレートＴ１においては、複数のノードＮ１１〜Ｎ１６のうち、ノードＮ１１が「入口ノード」、ノードＮ１６が「出口ノード」である。この場合、移動体２は、ノードＮ１１からエリアテンプレートＴ１に進入し、ノードＮ１６にてエリアテンプレートＴ１から退出することになる。同様に、エリアテンプレートＴ２においては、複数のノードＮ２１〜Ｎ２５のうち、ノードＮ２１が「入口ノード」、ノードＮ２５が「出口ノード」である。この場合、移動体２は、ノードＮ２１からエリアテンプレートＴ２に進入し、ノードＮ２５にてエリアテンプレートＴ２から退出することになる。また、エリアテンプレートによっては、１つのノードが、「入口ノード」及び「出口ノード」として兼用されてもよい。
【０１７０】
ノード生成部３２は、複数のノードＮ１１〜Ｎ１６の組み合わせを含むエリアテンプレートＴ１が、設定画面Ｄ１におけるマップＭ１上の任意の領域に設定された場合に、複数のノードＮ１１〜Ｎ１６をマップＭ１における上記領域に生成する。同様に、ノード生成部３２は、複数のノードＮ２１〜Ｎ２５の組み合わせを含むエリアテンプレートＴ２が、設定画面Ｄ１におけるマップＭ１上の任意の領域に設定された場合に、複数のノードＮ２１〜Ｎ２５をマップＭ１における上記領域に生成する。つまり、本実施形態では、複数のノードＮ１１〜Ｎ１６（又はＮ２１〜Ｎ２５）を１セットにした、エリアテンプレートＴ１（又はＴ２）を使用することで、制御計画の設計の作業を簡略化できる。具体的には、エリアテンプレートＴ１（又はＴ２）の「入口ノード」及び「出口ノード」を、エリアテンプレートＴ１（又はＴ２）外のノードに接続することで、エリアテンプレートＴ１（又はＴ２）を、マップＭ１に組み込むことが可能である。このようなエリアテンプレートが、制御計画の設計前に、１ないし複数用意されていれば、ユーザは、任意のエリアテンプレートを選択して、マップＭ１に組み込むことで、ノードを１つずつ設定する場合に比べて、作業を簡略化できる。
【０１７１】
また、エリアテンプレートＴ１，Ｔ２の各々は、図１２Ａ及び図１２Ｂのように、エリアテンプレートＴ１，Ｔ２単位で回転移動させることが可能である。このとき、エリアテンプレートＴ１，Ｔ２の回転方向は時計回り及び反時計回りから選択可能であって、エリアテンプレートＴ１，Ｔ２の回転角度は９０度、１８０度及び２７０度から選択可能であることが好ましい。例えば、図１２Ａに示すように、エリアテンプレートＴ２がマップＭ１に組み込まれている状態で、エリアテンプレートＴ２を時計回りに９０度回転させる操作がなされたと仮定する。このとき、ユーザは、例えば、操作部６３としてのマウスを用いて、エリアテンプレートＴ２を選択した状態で、回転方向（時計回り）及び回転角度（９０度）を指定する。この場合、図１２Ｂに示すように、エリアテンプレートＴ２に含まれる複数のノードＮ２１〜Ｎ２５が、相互の位置関係を維持したまま、一括して時計回りに９０度回転する。このとき、設定画面Ｄ１には警告が表示された上で、エリアテンプレートＴ２のノードＮ２５と指定ノードＮｄ１とをつなぐパスＰ１、及びノードＮ２１と指定ノードＮｄ２とをつなぐパスＰ２は、自動的に消去される。
【０１７２】
また、エリアテンプレートＴ１，Ｔ２の各々は、図１３Ａ及び図１３Ｂのように、エリアテンプレートＴ１，Ｔ２単位で直進移動させることも可能である。例えば、図１３Ａに示すように、エリアテンプレートＴ１がマップＭ１に組み込まれている状態で、エリアテンプレートＴ１を左方に直進移動させる操作がなされたと仮定する。このとき、ユーザは、例えば、操作部６３としてのマウスを用いて、エリアテンプレートＴ１を選択した状態で、マウスを左方にドラッグする。この場合、図１３Ｂに示すように、エリアテンプレートＴ１に含まれる複数のノードＮ１１〜Ｎ１６が、相互の位置関係を維持したまま、一括して左方に直進移動する。このとき、エリアテンプレートＴ１のノードＮ１６と指定ノードＮｄ１とをつなぐパスＰ１、及びノードＮ１１と指定ノードＮｄ２とをつなぐパスＰ２は、自動的に延長される。
【０１７３】
このように、本実施形態では、エリアテンプレートに含まれる複数のノードは、相互の位置関係を維持した状態で設定画面Ｄ１におけるマップＭ１上を移動可能である。ここでいう「移動」には、図１２Ａ及び図１２Ｂに示すような回転移動と、図１３Ａ及び図１３Ｂのような直進移動と、の両方を含む。
【０１７４】
（３．２．７）その他の機能
本実施形態に係る移動体制御システム１及び設計支援システム１００は、制御計画の設計に関して以下のような機能を更に有している。
【０１７５】
１つ目の機能として、図１４Ａ及び図１４Ｂに示すように、パスＰｍにつながっている指定ノードＮｄｍを移動させた場合に、指定ノードＮｄｍの移動に伴ってパスＰｍが移動する。具体的には、ユーザは、操作部６３としてのマウスを用いて、パスＰｍにつながっている１つの指定ノードＮｄｍを選択した状態で、マウスをドラッグしてカーソルＣ１を移動させる。これにより、選択されている１つの指定ノードＮｄｍは、カーソルＣ１と共に移動し、更に、この指定ノードＮｄｍにつながっているパスＰｍも自動的に移動する。一例として、図１４Ａに示すように、指定ノードＮｄ１〜Ｎｄ４のうち、指定ノードＮｄ１を選択して左上方へ移動させた結果、図１４Ｂに示すように、指定ノードＮｄ１につながっているパスＰ１，Ｐ４も指定ノードＮｄ１と共に移動する。また、このとき、指定ノードＮｄ１にパスＰ１にて接続されている指定ノードＮｄ２、及び指定ノードＮｄ１にパスＰ４にて接続されている指定ノードＮｄ４についても、指定ノードＮｄ１と共に移動する。その結果、パスＰ２，Ｐ３も自動的に延長される。
【０１７６】
２つ目の機能として、図１５Ａ及び図１５Ｂに示すように、パスＰｍにつながっている指定ノードＮｄｍが削除された場合に、指定ノードＮｄｍの削除に伴ってパスＰｍも削除される。具体的には、ユーザは、操作部６３としてのマウスを用いて、パスＰｍにつながっている１つの指定ノードＮｄｍを選択した状態で、この指定ノードＮｄｍを削除する操作を行うと、この指定ノードＮｄｍにつながっているパスＰｍも自動的に削除される。一例として、図１５Ａに示すように、指定ノードＮｄ１〜Ｎｄ９のうち、指定ノードＮｄ９を削除した結果、図１５Ｂに示すように、指定ノードＮｄ９につながっているパスＰ１〜Ｐ４も指定ノードＮｄ９と共に削除される。
【０１７７】
３つ目の機能として、図１６Ａ及び図１６Ｂに示すように、指定ノードＮｄｍの生成時に、設定画面Ｄ１のマップＭ１上にガイド枠Ｆｇ１が表示される。具体的には、図１６Ａに示すように、ユーザは、指定ノードＮｄｍの生成時に、例えば、操作部６３としてのマウスを用いて、カーソルＣ１を操作し、カーソルＣ１の位置に応じてガイド枠Ｆｇ１が表示される。そして、ガイド枠Ｆｇ１が表示された状態で、ユーザがマウスをクリックすることにより、図１６Ｂに示すように、ガイド枠Ｆｇ１内に指定ノードＮｄ３が生成され、ガイド枠Ｆｇ１は枠体Ｆ３となる。
【０１７８】
ここにおいて、ガイド枠Ｆｇ１は、隣接するノードの位置に合わせて、マップＭ１上における位置が自動的に調整される。具体的には、隣接する指定ノードＮｄｍを囲む枠体Ｆｍの一辺と、ガイド枠Ｆｇ１の一辺とが、完全に重なる（一致する）ように、ガイド枠Ｆｇ１の位置が調整される。例えば、図１６Ａの状態において、指定ノードＮｄ１を囲む枠体Ｆ１の周辺領域Ｈ１内にガイド枠Ｆｇ１が表示される場合には、枠体Ｆ１の上辺、左辺又は下辺のいずれかにガイド枠Ｆｇ１の一辺が重なるように、ガイド枠Ｆｇ１が表示される。また、図１６Ａの状態において、指定ノードＮｄ２を囲む枠体Ｆ２の周辺領域Ｈ２内にガイド枠Ｆｇ１が表示される場合には、枠体Ｆ２の上辺、右辺又は下辺のいずれかにガイド枠Ｆｇ１の一辺が重なるように、ガイド枠Ｆｇ１が表示される。図１６Ａの例では、枠体Ｆ２の右辺にガイド枠Ｆｇ１の左辺が重なっている。
【０１７９】
（３．３）フローチャート
図１７は、上述した移動体制御システム１及び設計支援システム１００の動作を簡単にまとめたフローチャートである。言い換えれば、移動体制御システム１の動作に相当する移動体制御方法、及び設計支援システム１００の動作に相当する設計支援方法は、図１７に示すような流れで概略的に表される。
【０１８０】
すなわち、本実施形態に係る方法によれば、まずは、所定エリアＡ１に対応するマップＭ１を含む設定画面Ｄ１を表示させる（Ｓ１：表示制御処理）。本実施形態では、表示制御処理（Ｓ１）は、サーバ装置３のプロセッサにて実行され、設定画面Ｄ１は情報端末６の表示部６２に表示される。
【０１８１】
次に、本実施形態に係る方法によれば、少なくとも設定画面Ｄ１におけるマップＭ１上の一対の指定位置を指定するユーザの操作を受け付ける（Ｓ２：操作受付処理）。つまり、本実施形態では、操作受付処理（Ｓ２）は、情報端末６の操作部６３にて実行される。
【０１８２】
次に、本実施形態に係る方法によれば、操作受付処理で受け付けたユーザの操作に従って、マップＭ１における一対の指定位置に、それぞれ移動体２を制御可能なノードである一対の指定ノードＮｄｍを生成する（Ｓ３：ノード生成処理）。ここで、操作受付処理において、マップＭ１上の任意の位置を指定位置として指定できるので、一対の指定ノードＮｄｍは、マップＭ１における任意の位置に生成されることになる。本実施形態では、ノード生成処理（Ｓ３）は、サーバ装置３のプロセッサにて実行される。要するに、ユーザが情報端末６にて、マップＭ１の任意の位置を指定位置として指定する操作を行うことにより、サーバ装置３にて、マップＭ１上に一対の指定ノードＮｄｍが生成される。
【０１８３】
次に、本実施形態に係る方法では、ノード生成処理で生成された一対の指定ノードＮｄｍ間にパスＰｍを生成する（Ｓ４：パス生成処理）。本実施形態では、パス生成処理（Ｓ４）は、サーバ装置３のプロセッサにて実行される。要するに、ユーザが情報端末６にて、マップＭ１の一対の指定ノードＮｄｍ間にパスＰｍを生成するための操作を行うことにより、マップＭ１上にはパスＰｍが生成される。つまり、厳密には、ノード生成処理（Ｓ３）とパス生成処理（Ｓ４）との間には、少なくとも設定画面Ｄ１におけるマップＭ１上の一対の指定ノードＮｄｍ間にパスＰｍを生成するためのユーザの操作を受け付ける操作受付処理が存在する。
【０１８４】
ここで、本実施形態に係る方法では、一対の指定ノードＮｄｍの間隔、つまりパスＰｍの長さ（パス長Ｌｐ）が上限値２Ｌ以上であるか否かを判断する（Ｓ５）。パス長Ｌｐが上限値２Ｌ以上である場合（Ｓ５：Ｙｅｓ）、マップＭ１における一対の指定ノードＮｄｍ間に、一対の指定ノードＮｄｍとは別のノードである仮想ノードＮｖｍを、少なくとも１つ生成する仮想ノード生成処理（Ｓ７）を実行する。
【０１８５】
本実施形態では、仮想ノード生成処理（Ｓ７）に先立って、パス長Ｌｐを下限値Ｌで除算したときの商α（ただしαは自然数）及び剰余β（ただしβは自然数）を求める（Ｓ６）。このときの商αよりも「１」少ない数が、仮想ノードＮｖｍの個数となる。さらに、剰余βを、商αにて案分する案分処理を行うことで、各仮想ノードＮｖｍの位置を決定する。仮想ノード生成処理（Ｓ７）では、このようにして決定される仮想ノードＮｖｍの個数及び位置に従って、一対の指定ノードＮｄｍ間、つまりパスＰｍ上に、少なくとも１つの仮想ノードＮｖｍを生成する。
【０１８６】
一方、パス長Ｌｐが上限値２Ｌ未満である場合（Ｓ５：Ｎｏ）、処理Ｓ６，Ｓ７はスキップして、処理Ｓ８に移行する。
【０１８７】
その後、本実施形態に係る方法では、上述のようにして生成されたノード（指定ノードＮｄｍ及び仮想ノードＮｖｍ）、及びパスＰｍが反映されるように、マップＭ１を更新する（Ｓ８）。処理Ｓ２〜Ｓ８は、適宜繰り返し実行される。
【０１８８】
そして、本実施形態に係る方法では、最終的に更新されたマップＭ１に従って、所定エリアＡ１内を移動する移動体２を制御する（Ｓ９）。このとき、所定エリアＡ１においてパスＰｍに対応する移動経路Ｒ１０に沿って移動体２を移動させることになる。
【０１８９】
図１７は、本実施形態に係る移動体制御システム１及び設計支援システム１００の動作の一例を概略的に示しており、処理が適宜追加、変更又は省略されてもよいし、処理の順番が適宜変更されてもよい。
【０１９０】
（４）変形例
実施形態１は、本開示の様々な実施形態の一つに過ぎない。実施形態１は、本開示の目的を達成できれば、設計等に応じて種々の変更が可能である。
【０１９１】
実施形態１に係る移動体制御システム１と同様の機能は、移動体制御方法、コンピュータプログラム、又はコンピュータプログラムを記録した非一時的記録媒体等で具現化されてもよい。一態様に係る移動体制御方法は、所定エリアＡ１内を移動する移動体２を制御する移動体制御方法であって、ノード生成処理と、パス生成処理と、を有する。ノード生成処理は、所定エリアＡ１に対応するマップＭ１における任意の位置に、それぞれ移動体２を制御可能なノードである一対の指定ノードＮｄｍを生成する処理である（図１７の「Ｓ３」参照）。パス生成処理は、一対の指定ノードＮｄｍ間にパスＰｍを生成する処理である（図１７の「Ｓ４」参照）。この移動体制御方法は、所定エリアＡ１においてパスＰｍに対応する移動経路Ｒ１０に沿って移動体２を移動させる。一態様に係る（コンピュータ）プログラムは、上記の移動体制御方法をコンピュータシステムに実行させるためのプログラムである。
【０１９２】
また、実施形態１に係る設計支援システム１００と同様の機能は、設計支援方法、コンピュータプログラム、又はコンピュータプログラムを記録した非一時的記録媒体等で具現化されてもよい。一態様に係る設計支援方法は、所定エリアＡ１内を移動する移動体２を制御するための制御計画の設計を支援する設計支援方法であって、表示制御処理と、操作受付処理と、ノード生成処理と、仮想ノード生成処理と、を有する。表示制御処理は、所定エリアＡ１に対応するマップＭ１を含む設定画面Ｄ１を表示させる処理である（図１７の「Ｓ１」参照）。操作受付処理は、少なくとも設定画面Ｄ１におけるマップＭ１上の一対の指定位置を指定するユーザの操作を受け付ける処理である（図１７の「Ｓ２」参照）。ノード生成処理は、ユーザの操作に従って、マップＭ１における一対の指定位置に、それぞれ移動体２を制御可能なノードである一対の指定ノードＮｄｍを生成する処理である（図１７の「Ｓ３」参照）。仮想ノード生成処理は、マップＭ１における一対の指定ノードＮｄｍ間に、一対の指定ノードＮｄｍとは別のノードである仮想ノードＮｖｍを、少なくとも１つ生成する処理である（図１７の「Ｓ７」参照）。一態様に係る（コンピュータ）プログラムは、上記の設計支援方法をコンピュータシステムに実行させるためのプログラムである。
【０１９３】
以下、実施形態１の変形例を列挙する。以下に説明する変形例は、適宜組み合わせて適用可能である。
【０１９４】
本開示における移動体制御システム１及び設計支援システム１００は、コンピュータシステムを含んでいる。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、本開示における移動体制御システム１又は設計支援システム１００としての機能が実現される。プログラムは、コンピュータシステムのメモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能なメモリカード、光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。コンピュータシステムのプロセッサは、半導体集積回路（ＩＣ）又は大規模集積回路（ＬＳＩ）を含む１ないし複数の電子回路で構成される。ここでいうＩＣ又はＬＳＩ等の集積回路は、集積の度合いによって呼び方が異なっており、システムＬＳＩ、ＶＬＳＩ（Very Large Scale Integration）、又はＵＬＳＩ（Ultra Large Scale Integration）と呼ばれる集積回路を含む。さらに、ＬＳＩの製造後にプログラムされる、ＦＰＧＡ（Field-Programmable Gate Array）、又はＬＳＩ内部の接合関係の再構成若しくはＬＳＩ内部の回路区画の再構成が可能な論理デバイスについても、プロセッサとして採用することができる。複数の電子回路は、１つのチップに集約されていてもよいし、複数のチップに分散して設けられていてもよい。複数のチップは、１つの装置に集約されていてもよいし、複数の装置に分散して設けられていてもよい。
【０１９５】
また、移動体制御システム１又は設計支援システム１００における複数の構成要素（又は機能）が、１つの筐体内に集約されていることは移動体制御システム１又は設計支援システム１００に必須の構成ではない。移動体制御システム１又は設計支援システム１００の構成要素（又は機能）は、複数の筐体に分散して設けられていてもよい。さらに、移動体制御システム１又は設計支援システム１００の少なくとも一部の機能がクラウド（クラウドコンピューティング）等によって実現されてもよい。
【０１９６】
反対に、実施形態１において、複数の装置に分散されている移動体制御システム１又は設計支援システム１００の少なくとも一部の機能が、１つの筐体内に集約されていてもよい。例えば、サーバ装置３とクライアント端末４とに分散されている一部の機能が、１つの筐体内に集約されていてもよい。
【０１９７】
また、本開示にて、「略平行」、又は「略直交」のように「略」を伴った表現が、用いられる場合がある。例えば、「略平行」とは、実質的に「平行」であることを意味し、厳密に「平行」な状態だけでなく、数％程度の誤差を含む意味である。他の「略」を伴った表現についても同様である。
【０１９８】
また、本開示にて、２値の比較において、「以上」としているところは、２値が等しい場合、及び２値の一方が他方を超えている場合との両方を含む。ただし、これに限らず、ここでいう「以上」は、２値の一方が他方を超えている場合のみを含む「より大きい」と同義であってもよい。つまり、２値が等しい場合を含むか否かは、基準値等の設定次第で任意に変更できるので、「以上」か「より大きい」かに技術上の差異はない。同様に、「未満」においても「以下」と同義であってもよい。
【０１９９】
また、サーバ装置３は、所定エリアＡ１内に設置されていてもよい。さらに、通信端末５は、移動体制御システム１に必須の構成ではなく、適宜省略可能である。この場合に、サーバ装置３は、通信端末５を介さずに、移動体２と直接的に通信してもよい。
【０２００】
また、実施形態１では、予約部３４は、無線通信における電波強度が小さいほど予約数を多くするが、この例に限らず、予約部３４は、無線通信における電波強度が小さいほど予約数を少なくしてもよい。さらに、通信端末５における通信部（第２通信部４１）との無線通信の状況は、電波強度に限らず、例えば、通信端末５における通信部（第２通信部４１）との無線通信のエラー率又は変調方式等で判断することも可能である。
【０２０１】
（実施形態２）
本実施形態に係る移動体制御システム１は、仮想ノードＮｖｍを生成する機能が省略されている点で、実施形態１に係る移動体制御システム１と相違する。以下、実施形態１と同様の構成については、共通の符号を付して適宜説明を省略する。
【０２０２】
すなわち、本実施形態に係る移動体制御システム１では、仮想ノード生成部３５（図２参照）が省略されている。そのため、一対の指定ノードＮｄｍの間隔について、特に、上限値が設定されていなくてもよい。本実施形態に係る移動体制御システム１においても、ノード生成部３２は、マップＭ１における任意の位置に、指定ノードＮｄｍを生成することができる。
【０２０３】
実施形態２で説明した種々の構成は、実施形態１で説明した種々の構成（変形例を含む）と適宜組み合わせて採用可能である。
【０２０４】
（まとめ）
以上説明したように、第１の態様に係る移動体制御システム（１）は、制御部（４２）と、ノード生成部（３２）と、パス生成部（３３）と、を備える。制御部（４２）は、所定エリア（Ａ１）内を移動する移動体（２）を制御する。ノード生成部（３２）は、所定エリア（Ａ１）に対応するマップ（Ｍ１）における任意の位置に、それぞれ移動体（２）を制御可能なノードである一対の指定ノード（Ｎｄｍ）を生成する。パス生成部（３３）は、一対の指定ノード（Ｎｄｍ）間にパス（Ｐｍ）を生成する。制御部（４２）は、所定エリア（Ａ１）においてパス（Ｐｍ）に対応する移動経路（Ｒ１０）に沿って移動体（２）を移動させる。
【０２０５】
この態様によれば、グリッド線（Ｇ１）にかかわらず、マップ（Ｍ１）上の任意の位置に指定ノード（Ｎｄｍ）を設定することが可能である。すなわち、パス（Ｐｍ）を規定するためのグリッド線（Ｇ１）ありきでノードが設定されるのではなく、まずはノードが設定され、その後に、ノードに基づいてパス（Ｐｍ）が生成される。その結果、移動体制御システム（１）によれば、演算負荷の増加を抑制しつつも、制御の自由度の向上を図ることができる、という利点がある。
【０２０６】
第２の態様に係る移動体制御システム（１）は、第１の態様において、仮想ノード生成部（３５）を更に備える。仮想ノード生成部（３５）は、一対の指定ノード（Ｎｄｍ）の間隔が上限値（２Ｌ）以上である場合、パス（Ｐｍ）上に、一対の指定ノード（Ｎｄｍ）とは別のノードである仮想ノード（Ｎｖｍ）を、少なくとも１つ生成する。
【０２０７】
この態様によれば、パス（Ｐｍ）上に、少なくとも１つ仮想ノード（Ｎｖｍ）が生成されることで、パス（Ｐｍ）上において隣接するノード同士の間隔を上限値（２Ｌ）未満に抑えることができる。
【０２０８】
第３の態様に係る移動体制御システム（１）は、第２の態様において、仮想ノード生成部（３５）は、パス（Ｐｍ）上における隣接するノード同士の間隔が、下限値（Ｌ）以上かつ上限値（２Ｌ）未満となるように、仮想ノード（Ｎｖｍ）の個数及び位置を決定する。
【０２０９】
この態様によれば、パス（Ｐｍ）上において隣接するノード同士の間隔が適当になるように、パス（Ｐｍ）上には仮想ノード（Ｎｖｍ）が適当な個数及び位置で生成される。
【０２１０】
第４の態様に係る移動体制御システム（１）は、第１〜３のいずれかの態様において、予約部（３４）を更に備える。移動体（２）は複数ある。予約部（３４）は、複数の移動体（２）のうちの一の移動体（２）である対象移動体（２ｔ）に対応付けて１以上のノードを占有状態とする予約処理を実行する。制御部（４２）は、複数の移動体（２）のうちの対象移動体（２ｔ）以外の移動体（２）の、所定エリア（Ａ１）において占有状態のノードに対応する区域（Ｚｍ）への進入を制限する。
【０２１１】
この態様によれば、占有状態のノードに対応する区域（Ｚｍ）が対象移動体（２ｔ）に占有されることになるので、区域（Ｚｍ）での複数の移動体（２）同士の衝突を回避できる。
【０２１２】
第５の態様に係る移動体制御システム（１）では、第４の態様において、予約部（３４）は、予約処理において、対象移動体（２ｔ）が位置する区域（Ｚｍ）に対応するノードから数えて進行方向側に予約数分のノードを占有状態とする。予約部（３４）は、対象移動体（２ｔ）が位置する区域（Ｚｍ）が変わる度に予約処理を実行する。
【０２１３】
この態様によれば、必要最低限の予約数のノードを占有状態とすればよく、対象移動体（２ｔ）に占有される区域（Ｚｍ）の数を極力少なく抑えることができる。
【０２１４】
第６の態様に係る移動体制御システム（１）は、第５の態様において、通信端末（５）を更に備える。通信端末（５）は、電波を媒体とする無線通信により所定エリア（Ａ１）内の移動体（２）に搭載されている通信部（第２通信部４１）と通信する。予約部（３４）は、通信端末（５）における通信部（第２通信部４１）との無線通信の状況に応じて予約数を決定する。
【０２１５】
この態様によれば、予約数が固定値ではなく、無線通信の状況に応じて変化するので、対象移動体（２ｔ）に占有される区域（Ｚｍ）の数を柔軟に設定することができる。
【０２１６】
第７の態様に係る移動体制御システム（１）では、第６の態様において、予約部（３４）は、無線通信における電波強度が小さいほど予約数を多くするように、無線通信の状況に応じて予約数を決定する。
【０２１７】
この態様によれば、無線通信における電波強度が小さいほど、対象移動体（２ｔ）に占有される区域（Ｚｍ）の数が多くなるので、電波強度が小さい区域（Ｚｍ）において対象移動体（２ｔ）が停滞することを回避しやすい。
【０２１８】
第８の態様に係る移動体制御システム（１）では、第１〜７のいずれかの態様において、マップ（Ｍ１）はグリッド線（Ｇ１）を含む。ノード生成部（３２）は、グリッド線（Ｇ１）の位置にはかかわらずに指定ノード（Ｎｄｍ）を生成する。
【０２１９】
この態様によれば、グリッド線（Ｇ１）をノードを設定する際の目安又は入力支援として用いながらも、マップ（Ｍ１）上の任意の位置に指定ノード（Ｎｄｍ）を設定することが可能である。
【０２２０】
第９の態様に係る移動体システム（１０）は、第１〜８のいずれかの態様に係る移動体制御システム（１）と、移動体（２）と、を備える。
【０２２１】
この態様によれば、グリッド線（Ｇ１）にかかわらず、マップ（Ｍ１）上の任意の位置に指定ノード（Ｎｄｍ）を設定することが可能である。すなわち、パス（Ｐｍ）を規定するためのグリッド線（Ｇ１）ありきでノードが設定されるのではなく、まずはノードが設定され、その後に、ノードに基づいてパス（Ｐｍ）が生成される。その結果、移動体システム（１０）によれば、演算負荷の増加を抑制しつつも、制御の自由度の向上を図ることができる、という利点がある。
【０２２２】
第１０の態様に係る移動体制御方法は、所定エリア（Ａ１）内を移動する移動体（２）を制御する移動体制御方法であって、ノード生成処理と、パス生成処理と、を有する。ノード生成処理は、所定エリア（Ａ１）に対応するマップ（Ｍ１）における任意の位置に、それぞれ移動体（２）を制御可能なノードである一対の指定ノード（Ｎｄｍ）を生成する処理である。パス生成処理は、一対の指定ノード（Ｎｄｍ）間にパス（Ｐｍ）を生成する処理である。移動体制御方法では、所定エリア（Ａ１）においてパス（Ｐｍ）に対応する移動経路（Ｒ１０）に沿って移動体（２）を移動させる。
【０２２３】
この態様によれば、グリッド線（Ｇ１）にかかわらず、マップ（Ｍ１）上の任意の位置に指定ノード（Ｎｄｍ）を設定することが可能である。すなわち、パス（Ｐｍ）を規定するためのグリッド線（Ｇ１）ありきでノードが設定されるのではなく、まずはノードが設定され、その後に、ノードに基づいてパス（Ｐｍ）が生成される。その結果、移動体制御方法によれば、演算負荷の増加を抑制しつつも、制御の自由度の向上を図ることができる、という利点がある。
【０２２４】
第１１の態様に係るプログラムは、第１０の態様に係る移動体制御方法をコンピュータシステムに実行させるためのプログラムである。
【０２２５】
この態様によれば、グリッド線（Ｇ１）にかかわらず、マップ（Ｍ１）上の任意の位置に指定ノード（Ｎｄｍ）を設定することが可能である。すなわち、パス（Ｐｍ）を規定するためのグリッド線（Ｇ１）ありきでノードが設定されるのではなく、まずはノードが設定され、その後に、ノードに基づいてパス（Ｐｍ）が生成される。その結果、上記プログラムによれば、演算負荷の増加を抑制しつつも、制御の自由度の向上を図ることができる、という利点がある。
【０２２６】
上記態様に限らず、実施形態１及び実施形態２に係る移動体制御システム（１）の種々の構成（変形例を含む）は、移動体制御方法又はプログラムにて具現化可能である。
【０２２７】
第２〜８の態様に係る構成については、移動体制御システム（１）に必須の構成ではなく、適宜省略可能である。
【符号の説明】
【０２２８】
１  移動体制御システム
２  移動体
２ｔ  対象移動体
５  通信端末
１０  移動体システム
３２  ノード生成部
３３  パス生成部
３４  予約部
３５  仮想ノード生成部
４１  第２通信部（通信部）
４２  制御部
Ａ１  所定エリア
Ｇ１  グリッド線
Ｌ  下限値
２Ｌ  上限値
Ｍ１  マップ
Ｎｄｍ  指定ノード
Ｎｖｍ  仮想ノード
Ｐｍ  パス
Ｒ１０  移動経路
Ｚｍ  区域
【図１】
2020008962.tif 000003
【図２】
2020008962.tif 000004
【図３】
2020008962.tif 000005
【図４】
2020008962.tif 000006
【図５】
2020008962.tif 000007
【図６】
2020008962.tif 000008
【図７】
2020008962.tif 000009
【図８】
2020008962.tif 000010
【図９】
2020008962.tif 000011
【図１０】
2020008962.tif 000012
【図１１】
2020008962.tif 000013
【図１２】
2020008962.tif 000014
【図１３】
2020008962.tif 000015
【図１４】
2020008962.tif 000016
【図１５】
2020008962.tif 000017
【図１６】
2020008962.tif 000018
【図１７】
2020008962.tif 000019