(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024008060
(43)【公開日】2024-01-19
(54)【発明の名称】移動体割当装置
(51)【国際特許分類】
G06Q 50/10 20120101AFI20240112BHJP
B62B 3/00 20060101ALI20240112BHJP
B65G 1/00 20060101ALN20240112BHJP
【FI】
G06Q50/10
B62B3/00 B
B65G1/00 501C
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022109581
(22)【出願日】2022-07-07
(71)【出願人】
【識別番号】000000262
【氏名又は名称】株式会社ダイヘン
(74)【代理人】
【識別番号】100115749
【弁理士】
【氏名又は名称】谷川 英和
(74)【代理人】
【識別番号】100121223
【弁理士】
【氏名又は名称】森本 悟道
(72)【発明者】
【氏名】古川 直樹
【テーマコード(参考)】
3D050
3F022
5L049
【Fターム(参考)】
3D050AA01
3D050BB02
3D050DD01
3D050KK14
3F022CC03
3F022EE08
3F022EE09
3F022NN42
3F022NN43
5L049CC11
(57)【要約】
【課題】移動体が有する複数の走行手段に関する消耗度が所定の条件を満たすように、搬送対象物を協調搬送する複数の移動体に関する割り当てを行う移動体割当装置を提供する。
【解決手段】移動体割当装置1は、搬送対象物を協調搬送する複数の移動体ごとの情報である複数の移動体情報が記憶される記憶部12と、各移動体が有する複数の走行手段に関する消耗の程度を示す消耗度が所定の条件を満たすように、移動体情報を用いて、搬送対象物を協調搬送する複数の移動体に関する割り当てを行う割当部13と、割当部13による割り当て結果を出力する出力部14とを備える。このような構成により、例えば、移動体における複数の走行手段ごとの消耗度がより均等になるように移動体の位置や向きを割り当てることができるようになる。
【選択図】
図1
【特許請求の範囲】
【請求項1】
搬送対象物を協調搬送する複数の移動体ごとの情報である複数の移動体情報が記憶される記憶部と、
各移動体が有する複数の走行手段に関する消耗の程度を示す消耗度が所定の条件を満たすように、前記移動体情報を用いて、搬送対象物を協調搬送する複数の移動体に関する割り当てを行う割当部と、
前記割当部による割り当て結果を出力する出力部と、を備えた移動体割当装置。
【請求項2】
前記所定の条件は、複数の移動体ごとに消耗度がより均等になること、及び、各移動体における複数の走行手段ごとに消耗度がより均等になることの少なくとも一方である、請求項1記載の移動体割当装置。
【請求項3】
前記移動体情報は、走行手段ごとの消耗度を含んでおり、
前記割当部は、各移動体における複数の走行手段ごとに消耗度がより均等になるように、搬送対象物を協調搬送する複数の移動体の位置及び向きを割り当てる、請求項2記載の移動体割当装置。
【請求項4】
前記移動体情報は、移動体の消耗度を含んでおり、
前記割当部は、複数の移動体ごとに消耗度がより均等になるように、搬送対象物を協調搬送する複数の移動体を割り当てる、請求項2または請求項3記載の移動体割当装置。
【請求項5】
前記割当部は、搬送対象物を協調搬送する複数の移動体に関するランダムな割り当てを行う、請求項2記載の移動体割当装置。
【請求項6】
前記移動体情報は、移動体の消耗度を含んでおり、
前記所定の条件は、移動体ごとの消耗度のばらつきが大きいことである、請求項1記載の移動体割当装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、搬送対象物を協調搬送する複数の移動体に関する割り当てを行う移動体割当装置に関する。
【背景技術】
【0002】
従来、複数の移動体が協調して搬送対象物を搬送することが行われている(例えば、特許文献1参照)。そのように複数の移動体が協調することによって、1個の移動体では搬送できない大きな搬送対象物や重たい搬送対象物を搬送することができるようになる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
複数の移動体が協調して搬送対象物を搬送する場合には、通常、搬送対象物の重心は、各移動体の上にないことになり、その結果、車輪などの走行手段の消耗の程度を示す消耗度が偏ることがある。また、搬送対象物の協調搬送をどの移動体が行うのかに応じて、移動体間の消耗度の偏りも生じることになる。そして、例えば、消耗度の偏りがなくなるようにしたいという要望があった。
【0005】
本発明は、上記課題を解決するためになされたものであり、消耗度が所定の条件を満たすように、搬送対象物を協調搬送する複数の移動体に関する割り当てを行うことができる移動体割当装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明の一態様による移動体割当装置は、搬送対象物を協調搬送する複数の移動体ごとの情報である複数の移動体情報が記憶される記憶部と、各移動体が有する複数の走行手段に関する消耗の程度を示す消耗度が所定の条件を満たすように、移動体情報を用いて、搬送対象物を協調搬送する複数の移動体に関する割り当てを行う割当部と、割当部による割り当て結果を出力する出力部と、を備えたものである。
【発明の効果】
【0007】
本発明の一態様による移動体割当装置によれば、移動体が有する複数の走行手段に関する消耗度が所定の条件を満たすように、搬送対象物を協調搬送する複数の移動体に関する割り当てを行うことができる。その結果、例えば、複数の走行手段ごとに、または複数の移動体ごとに消耗度がより均等になるようにすることができる。
【図面の簡単な説明】
【0008】
【
図1】本発明の実施の形態による移動体割当装置の構成を示すブロック図
【
図2】同実施の形態による移動体割当装置の動作を示すフローチャート
【
図3】同実施の形態における移動体情報の一例を示す図
【
図4】同実施の形態における搬送対象物と複数の移動体とを示す平面図
【
図5】同実施の形態における移動体と搬送対象物の重心とを示す平面図
【発明を実施するための形態】
【0009】
以下、本発明による移動体割当装置について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。本実施の形態による移動体割当装置は、移動体が有する複数の走行手段に関する消耗度が所定の条件を満たすように、搬送対象物を協調搬送する複数の移動体に関する割り当てを行うものである。
【0010】
図1は、本実施の形態による移動体割当装置1の構成を示すブロック図である。本実施の形態による移動体割当装置1は、受付部11と、記憶部12と、割当部13と、出力部14とを備える。
【0011】
ここで、割り当ての対象となる移動体について説明する。移動体は、床面や道路などの走行面を走行手段によって走行する移動体である。また、上記のように、複数の移動体が協調して搬送対象物を搬送することになる。1個の搬送対象物を協調して搬送する移動体の個数は、2個以上であれば特に限定されず、例えば、2個、3個、4個などであってもよく、5個以上であってもよい。搬送対象物は、特に限定されないが、例えば、木材や鋼材などの長尺なものであってもよく、段ボール箱やコンテナなどであってもよく、搬送対象が載置されたパレットなどであってもよく、その他の搬送対象物であってもよい。
【0012】
複数の移動体が協調して搬送対象物を搬送する際には、搬送対象物は、複数の移動体の上面にまたがるように載置されてもよい。そのため、各移動体の上面は、床面などの走行面からの高さが等しいことが好適である。また、搬送対象物が載置される移動体の上面は、搬送対象物が滑りにくいようになっていることが好適である。そのため、例えば、ゴムシートなどの摩擦係数の高い高摩擦シートが移動体の上面に貼り付けられていてもよい。
【0013】
移動体は、例えば、自律的に移動するものであってもよく、または、操作者によって直接または遠隔で操作されるものであってもよい。本実施の形態では、前者の場合について主に説明する。なお、移動体が自律的に移動するとは、移動体がユーザ等から受け付ける操作指示に応じて移動するのではなく、自らの判断によって目的地に移動することであってもよい。その目的地は、例えば、手動で決められたものであってもよく、または、自動的に決定されたものであってもよい。また、その目的地までの移動は、例えば、移動経路に沿って行われてもよく、または、そうでなくてもよい。また、自らの判断によって目的地に移動するとは、例えば、進行方向、移動や停止などを移動体が自ら判断することによって、目的地まで移動することであってもよい。また、例えば、移動体が、障害物に衝突しないように移動することであってもよい。
【0014】
移動体は、例えば、全方向に移動できるものであってもよく、または、そうでなくてもよい。後者の場合には、移動体は、非ホロノミックな移動体であってもよい。本実施の形態では、各移動体が全方向に移動できるものである場合について主に説明する。全方向に移動できるとは、任意の方向に移動できることである。移動体は、例えば、複数の走行手段と、複数の走行手段を駆動する駆動手段(例えば、モータやエンジンなど)とを有していてもよい。走行手段は、走行面に接しており、駆動手段によって駆動されることによって、移動体を移動させることができるものであり、例えば、車輪や、全方向移動車輪、無限軌道などであってもよい。移動体が全方向に移動できるものである場合には、走行手段は、全方向移動車輪(例えば、オムニホイール、メカナムホイールなど)であってもよい。駆動手段は、例えば、複数の走行手段のすべてを駆動してもよく、または、そうでなくてもよい。走行手段が全方向移動車輪である場合には、通常、すべての走行手段が駆動されることになる。一方、移動体が非ホロノミックな移動体であり、走行手段が車輪である場合には、駆動手段は、例えば、すべての車輪のうち、駆動輪である車輪を駆動し、従動輪である車輪を駆動しなくてもよい。駆動輪は、例えば、2個であってもよい。また、移動体は、車輪等である走行手段の速度や回転数を取得できる機構、例えば、エンコーダ等を有していてもよい。
【0015】
1個の搬送対象物を複数の移動体によって搬送する際には、搬送対象物の重心が、移動体から外れることが多く、そのような場合には、移動体が有する複数の走行手段の消耗の程度が、それぞれ異なることになる。走行手段の消耗の程度を示す消耗度は、結果として走行手段の消耗の程度を知ることができる情報であれば特に限定されないが、例えば、消耗の程度が大きくなるほど、値が大きくなるものであってもよい。本実施の形態では、この場合について主に説明する。移動体の走行手段ごとの消耗度は、例えば、所定の算出方法を用いて取得されてもよく、または、消耗品(例えば、ゴムタイヤなど)の消耗の程度を測定することによって取得されてもよい。なお、消耗度の算出については後述する。消耗度の測定は、例えば、ゴムタイヤの溝の深さの測定などであってもよい。
【0016】
受付部11は、移動体情報を受け付けて記憶部12に蓄積する。また、受付部11は、移動体情報を更新するための情報を受け付け、それによって移動体情報を更新してもよい。移動体情報については後述する。受付部11は、例えば、入力デバイス(例えば、キーボードやマウス、タッチパネルなど)から入力された情報を受け付けてもよく、有線または無線の通信回線を介して送信された情報を受信してもよく、所定の記録媒体(例えば、光ディスクや磁気ディスク、半導体メモリなど)から読み出された情報を受け付けてもよい。なお、受付部11は、受け付けを行うためのデバイス(例えば、通信デバイスなど)を含んでもよく、または含まなくてもよい。また、受付部11は、ハードウェアによって実現されてもよく、または所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【0017】
記憶部12では、複数の移動体情報が記憶される。複数の移動体情報は、搬送対象物を協調搬送する複数の移動体ごとの情報である。1個の移動体情報が、1個の移動体に対応していてもよい。なお、1回の搬送対象の協調搬送で用いられる移動体の個数は通常、2個から4個程度であるが、記憶部12では、協調搬送に用いられる可能性のある移動体の移動体情報が記憶されていてもよい。移動体情報は特に限定されないが、例えば、移動体を識別する移動体識別子と、その移動体に関する消耗度とを有する情報であってもよい。移動体に関する消耗度は、例えば、移動体の走行手段ごとの消耗度を含んでいてもよく、その移動体の消耗度、すなわちその移動体自体の消耗度を含んでいてもよい。移動体の消耗度は、例えば、その移動体の走行手段ごとの消耗度の代表値に応じた値であってもよい。代表値は、例えば、平均値や中央値、最大値であってもよい。移動体情報に含まれる消耗度は、例えば、移動体の現時点までの消耗度、すなわち過去の消耗度であってもよく、今後の目的地までの移動に応じた消耗度、すなわち未来の消耗度を含んでいてもよい。現在位置から目的地までの移動に応じた消耗度は、例えば、予測された消耗度であってもよい。
【0018】
例えば、記憶部12では、
図3で示されるように、移動体識別子と、その移動体識別子で識別される移動体の各走行手段の消耗度と、その移動体自体の消耗度とを含む複数の移動体情報が記憶されていてもよい。また、移動体情報に含まれる消耗度は、例えば、各移動体の移動に応じて、受付部11によって更新されてもよい。例えば、受付部11は、各移動体の移動に応じた消耗度の増加分を受け付け、その増加分を移動体情報に含まれる各移動体に加算することによって消耗度を更新してもよい。また、例えば、受付部11は、各移動体に関する最新の消耗度を受け付け、記憶部12で記憶されている移動体情報に含まれる消耗度に上書きして蓄積してもよい。受付部11は、例えば、各移動体から消耗度の情報を受信してもよい。また、各移動体の走行手段の消耗品が交換された際には、受付部11は、その情報を受け付けて、記憶部12で記憶されている該当する走行手段の消耗度を0にリセットしてもよい。
【0019】
記憶部12は、不揮発性の記録媒体によって実現されることが好適であるが、揮発性の記録媒体によって実現されてもよい。記録媒体は、例えば、半導体メモリや磁気ディスク、光ディスクなどであってもよい。
【0020】
割当部13は、各移動体が有する複数の走行手段に関する消耗の程度を示す消耗度が所定の条件を満たすように、移動体情報を用いて、搬送対象物を協調搬送する複数の移動体に関する割り当てを行う。所定の条件は、例えば、複数の移動体ごとに消耗度がより均等になること、及び、各移動体における複数の走行手段ごとに消耗度がより均等になることの少なくとも一方であってもよい。移動体に関する割り当ては、例えば、移動体の割り当てであってもよく、移動体の位置及び向きの少なくとも一方の割り当てであってもよい。移動体の割り当ては、例えば、複数の移動体から、協調搬送を行う所定個数の移動体を決定することであってもよい。移動体の位置、向きの割り当ては、例えば、搬送対象物を協調搬送する移動体について、協調搬送時の搬送対象物に対する移動体の相対的な位置、協調搬送時の搬送対象物に対する移動体の相対的な向きを決定することであってもよい。例えば、移動体の割り当てによって、協調搬送を行う所定個数の移動体が決定されても、各移動体が搬送対象物のどの位置を支持するのか、また、各移動体がどの向きで協調搬送を行うのかを決定する必要がある。そのような決定が、移動体の位置や向きの割り当てであってもよい。
【0021】
割当部13は、移動体情報に走行手段ごと消耗度が含まれている場合に、各移動体における複数の走行手段ごとに消耗度がより均等になるように、搬送対象物を協調搬送する複数の移動体の位置及び向きを割り当ててもよい。このような割り当てが行われることによって、例えば、各移動体における複数の走行手段ごとの消耗度の偏りを解消することができる。消耗度がより均等になるように割り当てるとは、それと異なる割り当てを行った場合と比較して、消耗度がより均等になるように割り当てることであってもよい。搬送対象物を協調搬送する移動体の位置や向きの割り当ては、例えば、移動体ごとに、移動体の位置を示す情報(例えば、位置識別子など)や向きを示す情報(例えば、向き識別子)を取得することであってもよい。
【0022】
割当部13は、移動体情報に移動体の消耗度が含まれている場合に、複数の移動体ごとに消耗度がより均等になるように、搬送対象物を協調搬送する複数の移動体を割り当ててもよい。このような割り当てが行われることによって、例えば、複数の移動体ごとの消耗度の偏りを解消することができる。複数の移動体の割り当ては、例えば、その複数の移動体の移動体識別子を取得することであってもよい。なお、割当部13は、移動体の割り当てと、移動体の位置及び向きの割り当てとの両方を行ってもよい。この場合には、例えば、割り当てられた複数の移動体ごとに、移動体の位置を示す情報や向きを示す情報が取得されてもよい。すなわち、割り当て結果は、例えば、割り当てられた移動体の移動体識別子と、その移動体の位置識別子及び向き識別子とを対応付ける複数の情報であってもよい。このような割り当てが行われることによって、複数の移動体ごとに消耗度がより均等になると共に、各移動体における複数の走行手段ごとに消耗度がより均等になることになる。なお、具体的な割り当ての方法については、後述する。
【0023】
出力部14は、割当部13による割り当て結果を出力する。割り当て結果は、例えば、搬送対象物を協調搬送する複数の移動体をそれぞれ識別する複数の移動体識別子であってもよく、移動体識別子と、その移動体識別子で識別される移動体の位置や向きを示す情報とを対応付ける情報であってもよい。ここで、この出力は、例えば、表示デバイス(例えば、液晶ディスプレイや有機ELディスプレイなど)への表示でもよく、所定の機器への通信回線を介した送信でもよく、プリンタによる印刷でもよく、スピーカによる音声出力でもよく、記録媒体への蓄積でもよく、他の構成要素への引き渡しでもよい。なお、出力部14は、出力を行うデバイス(例えば、通信デバイスなど)を含んでもよく、または含まなくてもよい。また、出力部14は、ハードウェアによって実現されてもよく、または、それらのデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【0024】
出力部14によって出力された割り当て結果に基づいて、複数の移動体による協調搬送が行われてもよい。例えば、出力された割り当て結果に応じて、ユーザが、搬送対象物の協調搬送で用いる複数の移動体を選択し、その移動体を割り当て結果に応じた位置及び向きで配置して、搬送対象物の搬送を実現してもよい。また、例えば、出力された割り当て結果に応じて、割り当てられた複数の移動体が自律的に搬送対象物の配置場所にまで移動し、割り当てられた位置及び向きで停止し、その複数の移動体に搬送対象物が載置された後に、目的地までの協調搬送を実行してもよい。
【0025】
次に、割当部13による具体的な割り当ての処理について説明する。
まず、移動体情報に、複数の移動体ごと、及び各移動体の複数の走行手段ごとの過去の消耗度、すなわち各移動体の現在位置までの移動に応じた消耗度が含まれている場合には、割当部13は、搬送対象物の協調搬送を行う個数分の移動体を、移動体の消耗度の小さい順番に決定してもよい。より具体的には、移動体情報に含まれる複数の移動体ごとの消耗度の昇順となるように移動体識別子を並べ、消耗度が最小のものから協調搬送に必要な所定個数の移動体識別子が選択されてもよい。その選択の後に、消耗度の少ない移動体から順番に、搬送対象物における各移動体の搬送位置のうち、搬送対象物の重心の位置に近い順となるように各移動体の位置が決定されてもよい。また、その位置の決定後に、各移動体の複数の走行手段のうち、最も消耗度の小さい走行手段が搬送対象物の重心に近い側となるように、各移動体の向きが決定されてもよい。なお、移動体の割り当てを行わない場合には、割当部13は、例えば、搬送対象物を協調搬送する移動体が別の基準によって決められた後に、上記のように、各移動体の位置や向きの割り当てを行ってもよい。また、移動体の位置や向きの割り当てを行わない場合には、割当部13が、例えば、搬送対象物を協調搬送する複数の移動体の割り当てを行った後に、別の基準で各移動体の位置や向きが決定されてもよい。
【0026】
次に、移動体情報に、複数の移動体ごと、及び各移動体の複数の走行手段ごとの過去の消耗度と、未来の消耗度、すなわち現在位置から目的地までの移動に応じた消耗度とが含まれている場合について説明する。ここでは、
図4で示されるように、搬送対象物3が、2個の移動体10A,10Bによって搬送される場合について、具体的に説明する。なお、
図4は、搬送対象物3等の平面図である。この場合には、移動体の走行手段ごと、また移動体ごとに、移動体10Aの位置における4つの向きに配置された際の4つの未来の消耗度と、移動体10Bの位置における4つの向きに配置された際の4つの未来の消耗度とがそれぞれ取得され、受付部11で受け付けられて、各移動体の移動体情報に追加されているものとする。
【0027】
(1)移動体ごとの消耗度がより均等になり、走行手段ごとの消耗度もより均等になるようにする場合
この場合には、例えば、目的関数が次のように算出されてもよい。次の目的関数は、協調搬送を行う移動体の走行手段ごとの消耗度の分散の移動体ごとの和と、協調搬送を行う移動体の消耗度の分散とに応じたものである。目的関数は、次式のように、例えば、その和が大きくなるほど、目的関数の値が大きくなり、協調搬送を行う移動体の消耗度の分散が大きくなるほど、目的関数の値が大きくなるものであってもよい。なお、C1,C2は、重みに対応する正の実数の係数であり、例えば、経験的に決められてもよい。(1)の場合には、例えば、C1=C2に設定されてもよい。また、Kは、搬送対象物を協調搬送する移動体の個数であり、通常、2以上の整数である。
図4で示される場合には、K=2である。また、(M番目の移動体における複数の走行手段の消耗度の分散)は、M番目の移動体がある位置、及びある向きに割り当てられた際の複数の走行手段の消耗度の分散である。なお、Mは、割り当てられた移動体を識別するためのものであり、1からKまでの整数である。また、総和Σは、M=1からM=Kの各整数について取られるものとする。また、(複数の移動体の消耗度の分散)は、協調搬送を行うK個の移動体がそれぞれある位置、及びある向きに割り当てられた際の複数の移動体の消耗度の分散である。
目的関数=(C1/K)×Σ(M番目の移動体における複数の走行手段の消耗度の分散)+C2×(複数の移動体の消耗度の分散)
【0028】
割当部13は、目的関数を最適化することによって、移動体の割り当て、並びに移動体の位置及び向きの割り当てを行ってもよい。上記の目的関数の場合には、目的関数の最適化は、目的関数の最小化である。目的関数が最小となる場合に、移動体の消耗度がより均等になり、移動体における走行手段の消耗度もより均等になるからである。割当部13は、例えば、この目的関数をすべての割り当てのパターンについて算出してもよい。例えば、H個の移動体が割り当ての対象となっており、協調搬送を行う移動体の個数がK個であり、搬送対象物における移動体の各位置において4つの向きがある場合には、移動体を各位置及び向きに割り当てるパターンの総数は、「
HC
K×K!×4
K」となる。ここで、
HC
Kは、全移動体の個数であるH個から、協調搬送を行うK個の移動体を選択する組み合わせ数である。また、K!は、Kの階乗であり、K個の移動体を、協調搬送を行う各位置に割り当てる際のパターン数である。また、4
Kは、協調搬送を行うK個の移動体の向きに関するパターン数である。Hは、K以上の整数である。例えば、4個の移動体を
図4で示される搬送対象物3の協調搬送に割り当てる際には、移動体を各位置及び向きに割り当てるパターンの総数は「192」となる。したがって、割当部13は、パターンの総数に応じた目的関数の値をそれぞれ算出し、その算出結果から、最小の値に対応するパターンを選択し、そのパターンに対応する移動体の割り当て、及び移動体の位置及び向きの割り当てを行ってもよい。
【0029】
(2)移動体ごとの消耗度がより均等になることを優先する場合
この場合には、例えば、上記した目的関数において、C2>C1としてもよい。このようにすることで、複数の移動体の消耗度がより均等になることが優先されることになる。この場合にも、割当部13は、目的関数を最適化することによって、移動体の割り当て、並びに移動体の位置及び向きの割り当てを行ってもよい。目的関数の最適化は、(1)と同様に、目的関数の最小化であってもよい。また、割当部13は、例えば、C1=0とした目的関数を用いて移動体の割り当てを行い、その後に、C2=0とした目的関数を用いて移動体の位置及び向きの割り当てを行ってもよい。なお、C1=0とした目的関数を用いた場合にも、移動体の位置及び向きの割り当ては行われることになるが、C1=0とした目的関数を用いた際には、移動体の位置及び向きの割り当て結果は破棄し、移動体の割り当て結果のみを残してもよい。
【0030】
(3)移動体における走行手段ごとの消耗度がより均等になることを優先する場合
この場合には、例えば、上記した目的関数において、C1>C2としてもよい。このようにすることで、移動体における走行手段ごとの消耗度がより均等になることが優先されることになる。この場合にも、割当部13は、目的関数を最適化することによって、移動体の割り当て、並びに移動体の位置及び向きの割り当てを行ってもよい。目的関数の最適化は、(1)と同様に、目的関数の最小化であってもよい。なお、この場合に、例えば、C2=0として、最適化を行ってもよい。
【0031】
なお、上記のように、移動体の走行手段ごと、また移動体ごとに、複数の未来の消耗度が記憶部12に蓄積された場合には、その未来の消耗度のうち、割り当て結果に対応する消耗度のみを残し、それ以外の未来の消耗度は削除されてもよい。また、削除されなかった未来の消耗度は、それぞれ過去の消耗度、すなわち移動体の現在位置までの消耗度に加算されてもよく、または、現在位置(すなわち、出発地)から目的地までの移動の完了後に、出発地から目的地までの消耗度の実績値が算出され、その算出された消耗度が、出発地までの過去の消耗度に加算されてもよい。後者の場合には、累積された消耗度をより正確なものとすることができる。
【0032】
次に、移動体割当装置1の動作について
図2のフローチャートを用いて説明する。
(ステップS101)受付部11は、情報を受け付けたかどうか判断する。この情報は、例えば、移動体情報であってもよく、移動体情報を更新するための情報であってもよく、現在位置から目的地までの移動に応じた予測された消耗度であってもよい。そして、情報を受け付けた場合には、ステップS102に進み、そうでない場合には、ステップS103に進む。
【0033】
(ステップS102)受付部11は、受け付けた情報等を記憶部12に蓄積する。そして、ステップS101に戻る。なお、例えば、移動体情報が受け付けられた場合には、その移動体情報がそのまま記憶部12に蓄積されてもよい。また、例えば、移動体情報における消耗度の差分が受け付けられた場合には、その差分を、記憶部12で記憶されている消耗度に加算した結果が、上書きで記憶部12に蓄積されてもよい。また、例えば、予測された消耗度が受け付けられた場合には、その予測された消耗度が、移動体情報に追加されてもよい。
【0034】
(ステップS103)割当部13は、複数の移動体に関する割り当てを行うかどうか判断する。そして、複数の移動体に関する割り当てを行う場合には、ステップS104に進み、そうでない場合には、ステップS101に戻る。なお、割当部13は、例えば、搬送対象物の新たな協調搬送が行われる場合に、複数の移動体に関する割り当てを行うと判断してもよい。
【0035】
(ステップS104)割当部13は、記憶部12で記憶されている移動体情報を用いて、消耗度が所定の条件を満たすように、複数の移動体に関する割り当てを行う。この割り当ては、割り当て結果を示す情報の取得であってもよい。
【0036】
(ステップS105)出力部14は、ステップS104の割り当て結果を出力する。そして、ステップS101に戻る。
【0037】
なお、
図2のフローチャートにおける処理の順序は一例であり、同様の結果を得られるのであれば、各ステップの順序を変更してもよい。また、
図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【0038】
次に、消耗度の算出方法について説明する。例えば、
図4で示されるように、2個の移動体10A,10Bによって搬送対象物3を搬送する状況を考える。移動体10A,10Bを特に区別しない場合には、移動体10と呼ぶこともある。なお、
図4は、移動体10A,10B、及び搬送対象物3を示す平面図である。
図5は、移動体10と、搬送対象物3の重心C1との関係を示す平面図である。なお、
図5では、
図4で示される移動体10Aを基準とした搬送対象物3の重心C1の位置を示しているが、以下の説明は、搬送対象物3の重心C1が任意の位置に存在している場合であっても、また、3個以上の移動体で搬送対象物3が搬送される場合であっても成り立つものである。
図5で示されるxy直交座標系は、移動体10の重心C2を原点とする、移動体10のローカル座標系である。移動体10は、4個の走行手段であるオムニホイール21A~21Dを有している。また、各オムニホイール21A~21Dの代表点をそれぞれP1~P4としている。代表点は、例えば、重心であってもよい。また、代表点PNの座標を、それぞれ(x
N,y
N)とする。なお、Nは、1から4の任意の整数である。また、搬送対象物3の重心C1の座標を(x
C,y
C)とする。通常、搬送対象物3の形状や重量バランスは既知であるため、それらを用いて重心C1の位置を特定することができる。なお、搬送対象物3の重量バランスが未知である場合には、例えば、重量バランスが均等であるとして重心C1の位置が特定されてもよい。このような状況において、例えば、消耗度W
M,Nは次式によって算出されてもよい。また、消耗度W
M,1~W
M,4は、それぞれM番目の移動体の1番目から4番目の走行手段に対応する消耗度である。ここでは、オムニホイール21A~21Dを、それぞれ1番目~4番目の走行手段としている。また、Mは、1からKの整数であり、Kは、協調搬送を行う移動体10の個数である。
(A)x
N×x
C+y
N×y
C>0の場合
W
M,N=(α
N×a×(x
N×x
C+y
N×y
C)+β
N)×L+γ
N
(B)x
N×x
C+y
N×y
C≦0の場合
W
M,N=β
N×L+γ
N
【0039】
ここで、α
N、β
N、γ
Nは、それぞれN番目の走行手段の消耗度の算出に用いられる実数の係数であり、例えば、経験的に決められてもよい。α
Nは、物の搬送時における、単位距離当たり、単位重量当たりの消耗の程度を表す正の係数である。β
Nは、物の搬送時でない移動時における、単位距離当たりの消耗の程度を表す0以上の係数である。γ
Nは、走行距離に依存しない、搬送に応じた消耗の程度を表す0以上の定数である。なお、β
Nは、例えば、移動体10の自重等の影響によって移動時に消耗する単位距離当たりの消耗の程度を示す係数であってもよい。aは、搬送対象物3の重量であり、Lは、走行距離である。α
N、β
N、γ
Nは、例えば、走行手段ごとに異なる値であってもよく、または、すべての走行手段に共通した値であってもよい。例えば、
図5で示されるように、4個の走行手段が移動体10の重心C2に対して回転対称となるように配置されている際には、α
N、β
N、γ
Nは、それぞれ走行手段に依存しない値であってもよい。すなわち、α
N、β
N、γ
Nはそれぞれ、任意のNについて同じ値であってもよい。また、協調搬送を行う複数の移動体がそれぞれ異なる種類の移動体である場合には、これらの係数は、例えば、移動体ごとに異なる値であってもよい。また、例えば、任意の1から4までの整数Nについて、β
N=0であってもよく、γ
N=0であってもよい。すなわち、物を搬送していないときの走行手段の消耗については考慮しなくてもよく、走行距離に依存しない走行手段の消耗については考慮しなくてもよい。
【0040】
上式におけるxN×xC+yN×yCは、xy座標系の原点を始点とし、N番目の走行手段の代表点PNを終点とする第1のベクトルと、原点を始点とし、搬送対象物3の重心C1を終点とする第2のベクトルとの内積である。この内積は、第1のベクトルの長さと、第2のベクトルの長さと、第1及び第2のベクトルのなす角度の余弦との積であるため、重心間の距離に、所定の係数(すなわち、第1のベクトルの長さと、第1及び第2のベクトルのなす角度の余弦との積)を乗算した結果となる。したがって、この内積は、移動体10の重心C2から搬送対象物3の重心C1までの長さに応じた値と考えることができる。なお、この内積は、第1のベクトルの長さと、第2のベクトルを第1のベクトルの方向に射影したベクトルの長さとの積でもある。したがって、この内積は、移動体10の重心と走行手段とを結ぶ直線方向における、移動体10の重心から搬送対象物3の重心までの距離に応じた値、すなわち、その距離と、所定の係数(すなわち、第1のベクトルの長さ)を乗算した値と考えることもできる。なお、第1のベクトルの長さは、移動体10の重心から、走行手段までの長さである。このように、「a×(xN×xC+yN×yC)」の値は、搬送対象物3の重量と、移動体10の重心から搬送対象物3の重量までの距離とを用いて算出された値と考えることができる。したがって、消耗度は、例えば、移動体10の重心から、搬送対象物3の重心までの距離と、搬送対象物3の重量とを用いて算出された、走行手段に掛かる重量に応じた値と、走行距離Lとを用いて算出されてもよい。
【0041】
また、上式の「xN×xC+yN×yC」に代えて、「(xN×xC+yN×yC)/(xN
2+yN
2)1/2」が用いられてもよい。なお、(xN
2+yN
2)1/2は、第1のベクトルの長さである。例えば、第1のベクトルの長さが走行手段ごとに異なる場合には、上式の内積に代えて、内積を第1のベクトルの長さで除算した値が用いられることが好適である。一方、走行手段が全方向移動車輪である場合には、通常、第1のベクトルの長さはすべての走行手段で同じになるため、上式のように消耗度を算出してもよい。また、上式は消耗度を算出するための式の一例であり、他の式を用いて消耗度を算出してもよいことは言うまでもない。例えば、上式において、aは、搬送対象物3の重量を、搬送対象物3を搬送する移動体の個数Kで除算した値であってもよい。
【0042】
なお、上式において、内積が正の値である場合には、第2のベクトルを第1のベクトルの方向に射影したベクトルの終点は、原点を基準として、走行手段の代表点と同じ側に存在することになる。すなわち、その走行手段は、移動体10の重心を基準として、搬送対象物3の重心側に存在することになる。この場合(以下、「第1の場合」とする。)には、その走行手段に掛かる重量が大きくなり、それに応じて消耗の程度も大きくなる。一方、上式において、内積が0以下の値である場合には、第2のベクトルを第1のベクトルの方向に射影したベクトルの終点は、原点を基準として、走行手段の代表点と同じ側に存在しないことになる。すなわち、その走行手段は、移動体10の重心を基準として、搬送対象物3の重心側に存在しないことになる。この場合(以下、「第2の場合」とする。)には、その走行手段に掛かる重量が小さくなり、それに応じて消耗の程度も小さくなる。したがって、上式では、第1の場合には、走行手段に掛かる重量に応じた値を用いて消耗度が算出され、第2の場合には、走行手段に掛かる重量に応じた値を0として消耗度が算出されるようにしている。
【0043】
例えば、搬送対象物3の搬送が行われるごとに、上式を用いて消耗度WM,Nが算出されてもよい。そして、そのようにして算出された消耗度が、各移動体の走行手段ごとに加算されることによって、各移動体における各走行手段の最終的な消耗度、すなわち累積された消耗度が算出されてもよい。消耗度の算出は、例えば、移動体割当装置1が有する図示しない算出部によって行われてもよく、移動体割当装置1の外部の装置やサーバ等によって行われてもよい。一例として、受付部11が搬送ごとの消耗度WM,Nを受け付け、それを記憶部12で記憶されている累積された消耗度に加算することによって、移動体10の走行手段ごとの累積された消耗度が更新されてもよい。また、移動体10の消耗度WM,allが算出されてもよい。WM,allは、上記したように、N=1からN=NmaxまでのWM,Nの代表値であってもよい。代表値は、平均値や中央値、最大値などであってもよい。また、次式のようにWM,allが算出されてもよい。なお、δは、各走行手段の消耗度を移動体10の消耗度に変換するための係数であり、例えば、「1」であってもよく、代表値が平均値である場合には、1/Nmaxであってもよい。ここで、Nmaxは、Nの移動体10が有する走行手段の個数を示す整数である。また、次式の総和Σは、N=1からN=Nmaxの各整数について取られるものとする。この移動体10の消耗度は、例えば、記憶部12で記憶されている移動体10の複数の走行手段ごとの消耗度WM,Nが更新された後に、算出されてもよい。その算出は、例えば、図示しない算出部によって行われてもよく、または、割当部13等によって行われてもよい。
WM,all=δ×ΣWM,N
【0044】
また、ここでは、移動体10が4個の走行手段を有する場合について説明したが、上式は、例えば、移動体10が3個のオムニホイールを有する場合についても用いることができる。この場合には、Nは、1から3の任意の整数となる。また、上式は、移動体10の有する走行手段が3個、4個以外の場合、例えば、5個以上の場合にも用いることができる。
【0045】
次に、本実施の形態による移動体割当装置1の動作について、具体例を用いて説明する。この具体例において、移動体の総数は4個であり、各移動体が4個の走行手段であるオムニホイールを有しているものとする。そして、2個の移動体による搬送対象物の協調搬送を新たに行う際に、搬送対象を行う移動体、並びに移動体の位置及び向きを上記(1)のように割り当てる場合について説明する。なお、搬送対象物を協調搬送する移動体の各位置において、4つの向きがあるとする。
【0046】
この場合には、新たな協調搬送について、各移動体の複数の走行手段ごとに、8個の消耗度がそれぞれ算出され、それらが過去の消耗度にそれぞれ加算される。また、その走行手段ごとの加算後の消耗度を用いて、移動体ごとの消耗度も算出される。なお、本具体例では、上記したようにパターンの総数は「192」となる。したがって、消耗度の算出が完了すると、割当部13は、移動体に関する割り当てを行うと判断し(ステップS103)、192パターンのそれぞれについて、上記(1)の目的関数を算出する。そして、割当部13は、目的関数の値が最小であるパターンを特定し、そのパターンに対応する2個の移動体、並びにその2個の移動体の位置及び向きを特定する(ステップS104)。この特定した2個の移動体が、協調搬送に割り当てられた移動体であり、この2個の移動体の位置及び向きが、2個の移動体について割り当てられた位置及び向きとなる。したがって、割当部13は、協調搬送に割り当てた2個の移動体の移動体識別子と、その2個の移動体ごとの位置を識別する情報、及び向きを識別する情報とを割り当て結果として出力部14に渡す。その割り当て結果を受け取ると、出力部14は、その受け取った割り当て結果を出力する(ステップS105)。この出力は、例えば、移動体に搬送対象物を載置するステーションなどにおける表示であってもよい。そして、その表示に応じて、作業者が、割り当てられた2個の移動体を、割り当てられた位置及び向きとなるように配置し、その2個の移動体に搬送対象物を載置して、協調搬送を開始させてもよい。
【0047】
以上のように、本実施の形態による移動体割当装置1によれば、消耗度が複数の移動体ごとに、及び/または、各移動体における複数の走行手段ごとに均等になるように、搬送対象物を協調搬送する複数の移動体に関する割り当てを行うことができる。したがって、例えば、協調搬送を行う場合に、移動体間や、走行手段間の消耗度の偏りが生じることを回避することができる。通常、各移動体において、いずれかの走行手段の消耗度が閾値を超えた場合に、消耗度が閾値を超えた走行手段の消耗品が交換されることになる。したがって、移動体における複数の走行手段の消耗度がより均等になるように移動体に関する割り当てが行われることによって、消耗品の交換までの期間をより長くすることができる。また、通常、移動体は、総走行距離が閾値を超えた場合に、新たな移動体に交換されることになる。したがって、移動体の消耗度がより均等になるように移動体に関する割り当てが行われることによって、特定の移動体のみが協調搬送を行う事態を回避することができ、移動体の交換サイクルを全体として長くすることができる。
【0048】
なお、本実施の形態では、移動体情報に含まれる移動体の消耗度や、移動体の走行手段ごとの消耗度を用いて、複数の走行手段ごとに消耗度がより均等になるように移動体に関する割り当てを行ったり、複数の移動体ごとに消耗度がより均等になるように移動体に関する割り当てを行ったりする場合について説明したが、それ以外の割り当てを行ってもよい。例えば、割当部13は、搬送対象物を協調搬送する複数の移動体に関するランダムな割り当てを行ってもよい。この場合には、割当部13は、例えば、移動体を割り当てる際に、複数の移動体から協調搬送を行う移動体をランダムに割り当ててもよい。また、割当部13は、例えば、移動体の位置及び向きの少なくとも一方を割り当てる際に、その位置や向きをランダムに割り当ててもよい。このようにすることによって、結果として、複数の走行手段ごとに消耗度がより均等になったり、複数の移動体ごとに消耗度がより均等になったりすると考えられる。この場合には、記憶部12で記憶されている複数の移動体情報は、例えば、複数の移動体をそれぞれ識別する複数の移動体識別子であってもよい。そして、割当部13は、例えば、記憶部12で記憶されている複数の移動体識別子から、協調搬送を行う移動体の移動体識別子をランダムに選択してもよい。また、割当部13は、例えば、位置や向きを割り当てる移動体の移動体識別子について、位置や向きをランダムに選択してもよい。このように、ランダムな割り当てを行う場合には、各移動体の走行手段の消耗度を管理する必要がなくなるため、消耗度の管理のための処理が不要になるというメリットがある。なお、ランダムな割り当てを行う場合には、記憶部12で記憶されている移動体情報は更新されなくてもよい。そのため、例えば、移動体割当装置1は、受付部11を備えていなくてもよい。
【0049】
また、本実施の形態では、移動体に関する割り当ての際に用いられる所定の条件が、複数の移動体ごとに消耗度がより均等になること、及び、各移動体における複数の走行手段ごとに消耗度がより均等になることの少なくとも一方である場合について主に説明したが、それ以外の所定の条件が用いられてもよい。例えば、所定の条件は、移動体ごとの消耗度のばらつきが大きいことであってもよい。この場合には、移動体情報は、例えば、移動体の消耗度を含んでいてもよい。そして、割当部13は、例えば、複数の移動体ごとの消耗度のばらつきがより大きくなるように、搬送対象物を協調搬送する複数の移動体に関する割り当てを行ってもよい。その割り当ては、例えば、協調搬送を行う複数の移動体の割り当てであってもよい。この場合には、移動体の消耗度は、例えば、移動体が有する複数の走行手段ごとの消耗度の最大値であってもよい。また、複数の移動体ごとの消耗度のばらつきがより大きくなるように複数の移動体を割り当てるとは、例えば、複数の移動体の消耗度の分散がより大きくなるように移動体を割り当てることであってもよい。したがって、割当部13は、例えば、複数の移動体の消耗度の分散である目的関数を最適化するように、複数の移動体を割り当ててもよい。この場合の最適化は、目的関数の最大化である。すなわち、割当部13は、例えば、複数の移動体の消耗度の分散がより大きくなるように複数の移動体を割り当ててもよい。このようにすることで、例えば、移動体の消耗品を交換するタイミングが特定の時期に集中することを回避することができる。
【0050】
なお、所定の条件は、一例として、移動体ごとの消耗度のばらつきが大きいこと、及び、各移動体における複数の走行手段ごとに消耗度がより均等になることであってもよい。この場合には、各移動体における複数の走行手段については、消耗度が均等になるようにすることができると共に、複数の移動体については、移動体ごとの消耗度のばらつきが大きくなるようにすることができる。
【0051】
また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、または、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
【0052】
また、上記実施の形態において、移動体割当装置1に含まれる2以上の構成要素が通信デバイスや入力デバイス等を有する場合に、2以上の構成要素が物理的に単一のデバイスを有してもよく、または、別々のデバイスを有してもよい。
【0053】
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、または、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、記憶部や記録媒体にアクセスしながらプログラムを実行してもよい。また、そのプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。また、そのプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、または分散処理を行ってもよい。
【0054】
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【符号の説明】
【0055】
1 移動体割当装置、11 受付部、12 記憶部、13 割当部、14 出力部