以下では、いくつかの例示的な実施形態のみが簡単に説明される。当業者が認識できるように、記載された実施形態は、本出願の精神又は範囲から逸脱することがない限り、様々な異なる方法で修正されてもよい。したがって、添付図面及び説明は、限定的ではなく、本質的に例示的であると考えられる。
以下、図1~図6を参照して、本出願の第1実施形態による倉庫システムの制御方法を説明する。本出願の実施形態に係る倉庫システムの制御方法は、倉庫システムに適用することができ、倉庫システムの貨物出庫タスクを実現することに用いられる。
図1は本出願の一実施形態による倉庫システムの制御方法を示すフローチャートである。
図1に示すように、該倉庫システムの制御方法は、以下を含むことができる。
ステップS101において、割当待ちタスクの貨物情報に基づいて、目標ステーションを決定する。
ステップS102において、各現在のビンの貨物情報と、割当待ちタスクの貨物情報とに基づいて候補ビンを決定し、各候補ビンから搬送コストの最も低い候補ビンを目標ビンとして選択する。
ステップS103において、目標ビンの位置情報に基づいて、目標ロボットを決定する。
ステップS104において、目標ビンを目標ステーションに搬送するように目標ロボットを制御する。
一例では、割当待ちタスクは複数のジョブリストを含むことができ、割当待ちタスクの貨物情報は、各ジョブリストに対応する目標貨物の種類及び数量であってもよい。目標ステーションは、作業者がジョブリストに対応する目標貨物を目標ビンから仕分けるために用いられる。なお、ステーションの数は複数であってもよく、そのうちの1つを、1つの割当待ちタスクの目標ステーションとして使用するができ、複数の割当待ちタスクの目標ステーションとして使用することもできる。ここで、目標ステーションは、割当効率値が最も高い候補ステーションである。
一例では、ビンは貨物を保管するために用いられ、現在のビンは格納ラックに置かれているビンであってもよい。各現在のビンの貨物情報に基づいて、割当待ちタスクの貨物情報と少なくとも部分的にマッチングしている現在のビンを候補ビンとして選択する。候補ビンの搬送コストは、候補ビンと目標ステーションとの距離と、候補ビン内に収容されている貨物が割当待ちタスクの目標貨物とマッチングしている貨物の数とに基づいて算出することができる。
候補ビンの搬送コストは、候補ビンと目標ステーションとの距離に比例し、すなわち、候補ビンと目標ステーションとの距離が小さいほど、候補ビンの搬送コストは低くなることを理解することができる。また、候補ビンの搬送コストは、候補ビンに収容されている貨物が割当待ちタスクの目標貨物とマッチングしている貨物の数に反比例関係にあり、すなわち、候補ビンに収容された貨物が割当待ちタスクの目標貨物とマッチングしている貨物の数が多いほど、候補ビンの搬送コストは低くなる。
一例では、目標ビンの位置情報は、目標ビンの位置する格納ラックの位置情報であってもよい。ロボットは、搬送ロボット(Automated Guided Vehicle、AGV)であってもよく、搬送ロボットは、ステーションと格納ラックとの間でビンを搬送するために所定のナビゲーションパスに沿って走行することができる。目標ロボットは、目標ビンの位置する格納ラックの位置情報に基づいて具体的に決定することができる。
目標ステーション、目標ビン、及び目標ロボットが決定された後、ビン搬送タスクが生成され、目標ロボットに送信されることによって、目標ロボットが目標ビンを所在している格納ラックから目標ステーションに搬送するように制御される。
本出願の実施形態では、倉庫システムのロボットは、第1ロボットと第2ロボットとを含み、第1目標ロボットと第2目標ロボットとに、ビン搬送タスクを同時に送信することができる。ここで、ビンの出庫タスクを達成するために、第1目標ロボットは、ラックの目標格納スペースから目標仮置きスペースまで目標ビンを搬送するために用いられ、第2目標ロボットは、目標仮置きスペースから目標ステーションまで目標ビンを搬送するために用いられる。
ここで、第1目標ロボットの選出及びタスクの割当は、本出願の第2実施形態による倉庫システムの制御方法に従って実現することができ、第2目標ロボットの選出及びタスクの割当は、本出願の第3実施形態による倉庫システムの制御方法に従って実現することができる。
本実施形態による倉庫システムの制御方法は、ビンの貨物情報と割当待ちタスクの貨物情報に基づいて、候補ビンを決定し、各候補ビンから搬送コストの最も低い候補ビンを候補ビンとして決定する。例えば、候補ビンと目標ステーションとの距離と、候補ビンが割当待ちタスクの貨物情報とマッチングしている貨物の数との2つの要因を組み合わせて、各候補ビンの搬送コストを算出し、その中から搬送コストの最も低い候補ビンを目標ビンとして選択することができる。これにより、複数の候補ビンから、格納ラックから目標ステーションまで搬送される搬送効率が最も高いビンを目標ビンとして選択することができ、目標ロボットが目標ビンを目標ステーションまで搬送するための搬送時間を削減したり、目標ロボットの搬送回数を削減したりすることができ、ひいては貨物出庫の効率を向上させることができる。
一実施形態では、図2に示すように、ステップS101は、以下のステップを含む。
ステップS201において、割当待ちタスクの占有すべき収納スペースの数と各ステーションの空き収納スペースの数とに基づいて、候補ステーションを決定する。
ステップS202において、候補ステーションに割当済みビンの貨物情報と、各ビンと候補ステーションとの距離と、候補ステーションにまだ割り当てていないビンの貨物情報と、割当待ちタスクの残りの貨物情報とに基づいて、各候補ステーションの割当効率値を算出する。
ステップS203において、割当効率値が最も大きい候補ステーションを目標ステーションとして決定する。
一例では、ステーションには、目標ビンから仕分けされた目標貨物を載置するための複数の収納スペースを有する仕分けラックが設けられる。占有すべき収納スペースの数は、割当待ちタスクの目標貨物の数及び種類に応じて決定することができ、具体的に、割当待ちタスクのジョブリストの数に応じて決定することができる。ここで、各ジョブリストに要する目標貨物は、1つの占有すべき収納スペースに対応する。すなわち、占有すべき収納スペースの数は、割当待ちタスクのジョブリストの数と等しい。空き収納スペースの数が占有収納スペースの数以上のステーションを候補ステーションとして選択することにより、候補ステーションの空き収納スペースに複数のジョブリストに対応する目標貨物を十分に載置することを確保する。
なお、候補ステーションに割当済みビンは、以前に候補ステーションに割り当てられたすべてのビンであると理解することができる。候補ステーションにまだ割り当てられていないビンは、当該候補ステーションに割り当てられていない現在の格納ラック上のすべてのビンであると理解することができる。
例示的に、候補ステーションに対応する各未割当ビンの効率値Eは、以下の式を満たす。
E=K/(1+h [*d]_0/d_0max )
ここで、Kは候補ステーションの第1貨物の数であり、Kは候補ステーションの第1貨物の数であり、d0は未割当ビンから候補ステーションまでの距離であり、d0maxは、未割当ビンから候補ステーションまでの距離の最大値であり、hは予め設定された値(例えば、h=0.1)である。
候補ステーションの平均効率値Wは、候補ステーションに対応する全ての未割当ビンの効率値Eの平均値を算出することにより求めることができる。選択可能に、候補ステーションの割当効率値Iは、以下の式を満たす。
I=(V+u*W_1)*(1+P)/C
ここで、Vは候補ステーションの第1貨物の数であり、W1は候補ステーションの平均効率値であり、Pは割当待ちタスクの優先度値と割当待ちタスク中の最大優先度値との比であり、Cは占有すべき収納スペースの数、uは予め設定された値である。
本実施形態に係る倉庫システムの制御方法は、各候補ステーションの第1貨物の数と第2貨物の数を算出し、第2貨物の数と候補ステーションと各ビンとの間の距離に基づいて候補ステーションの平均効率値を算出し、候補ステーションの平均効率値と第1貨物の数から候補ステーションの割当効率値を算出することにより、最終的に各候補ステーションから割当効率値が最も高い候補ステーションを目標ステーションとして選択する。これにより、候補ステーションの割当済みビン及び未割当ビンの貨物情報と割当待ちタスクの貨物情報とがマッチングしている貨物の数や、各ビンとステーションとの距離などの複数の要因を組み合わせて、各候補ステーションの分配効率値を総合的に求めることができる。そして、割当効率値を参照して、各候補ステーションから割当効率値の最も高い候補ステーションを割当待ちタスクの目標ステーションとして選択することにより、貨物の出庫効率を最大化する。
一実施形態では、ステップS102は、図3に示すように、以下のステップS301、S302、S303を含む。
ステップS301において、割当待ちタスクの貨物情報と、目標ステーションに割当済みビンの貨物情報とに基づいて、割当待ちタスクの残りの貨物情報を決定する。ここで、割当待ちタスクの残りの貨物情報は、割当待ちタスクにおける割当済みビンに満たされていない残りの貨物情報であると理解することができる。
ステップS302において、各現在のビンの貨物情報に基づいて、割当待ちタスクの残りの貨物情報を満たすビンを候補ビンとして決定する。そのうち、割当待ちタスクの貨物情報を満たすビンは、現在保管されている貨物のうち、少なくとも一部が割当待ちタスクの貨物情報とマッチングしているビンであってもよい。
ステップS303において、各候補ビンの搬送コストを算出し、搬送コストが最も低い候補ビンを目標ビンとして決定する。
一例では、候補ビンの搬送コストU1は次の式を満たす。
U_1=w_1 d_1/d_1max -w_2 s/s_max +w_3 n_1/n_1max +w_4 m_1/m_1max +w_5*f1
ここで、d1は、候補ビンから目標ステーションまでの距離であり、d1maxは、候補ビンから目標ステーションまでの距離の最大値であり、sは、割当待ちタスクの貨物情報を満たす候補ビンの貨物の数であり、smaxは、割当待ちタスクの貨物情報を満たす候補ビンの貨物の数の最大値であり、n1は、候補ビンが位置する通路の現在の出入庫タスクの数であり、n1maxは、各候補ビンが位置する通路の現在の出入庫タスクの数の最大値であり、m1は、候補ビンに割り当てられたステーションの数であり、m1maxは、候補ビンに割り当てられているステーションの最大値であり、w1、w2、w3、w4、w5は、予め設定された係数であり、f1として、候補ビンが格納スペースにある場合は1であり、そうでない場合は0である。
一実施形態では、図4に示すように、ロボットは、第1ロボットを含み、ステップS103は、以下のステップS401、S402を含む。
ステップS401において、目標ビンの位置情報に基づいて、目標ビンが対応する目標通路を決定する。
ステップS402において、目標通路内の各第1ロボットの位置に基づいて、目標ビンを格納スペースから仮置きスペースまで搬送する第1目標ロボットを決定する。
目標通路に既に存在する第1ロボットの位置情報に基づいて、目標ビンとの距離が最も近い第1ロボットを第1目標ロボットとして選択する。これにより、第1目標ロボットが目標通路に移動する移動距離を最小化することができ、目標通路への第1目標ロボットの移動効率を最大化することができる。
例示的に、目標ビンの位置情報は、目標ビンが位置している格納ラックの位置情報であってもよい。目標ビンの位置している格納ラックに隣接する通路は、目標通路である。ここで、通路は、隣接する2つの収納ラックにより画定されている。格納ラックは、それぞれ異なる階層に設定される格納スペースと仮置きスペースとを有し、仮置きスペースは格納ラックの最下層に位置することができる。第1目標ロボットを決定した後、第1目標ロボットを他の通路から目標通路の通路口に移動させるように、第1目標ロボットに移動指示を送信する。格納スペースに位置する目標ビンを仮置きスペースに搬送するように第1目標ロボットを制御するための第1ビン搬送タスクを、第1目標ロボットに送信する。
一実施形態では、図5に示すように、ロボットは第2ロボットを含み、ステップS103はさらに、ステップS501を含む。
ステップS501において、目標ビンの位置情報に基づいて、目標ビンとの距離が最も近い第2ロボットを、仮置きスペースから目標ステーションに目標ビンを搬送する第2目標ロボットとして決定する。
これにより、第2目標ロボットが目標ビンの位置する仮置きスペースに移動する移動距離を最小化することができ、第2目標ロボットの搬送効率を向上させることができる。
例示的に、第2目標ロボットを決定した後、目標通路に沿って格納ラックの仮置きスペースの下に移動して、仮置きスペースに位置する目標ビンを目標ステーションに搬送するように第2目標ロボットを制御するための第2ビン搬送タスクを、第2目標ロボットに送信する。
選択可能に、図6に示すように、ステップS103は、ステップS601、S602をさらに含む。
ステップS601において、第2目標ロボットを制御して、目標ステーションから目標ラックまで目標ビンを搬送する。
ステップS602において、格納ラックの空き仮置きスペースの下に停留するように第2目標ロボットを制御する。
例示的に、ステップS601において、目標ステーション内に仕分け作業を行った後、目標ビンに貨物が残っている場合、目標ビンを格納ラックの仮置きスペースに搬送するように第2目標ロボットを制御するためのビン返庫タスクを、第2目標ロボットに送信する。さらに、第1ロボットは、目標ビンを仮置きスペースから格納スペースに搬送する。
例示的に、ステップS602において、第2目標ロボットが目標ビンの搬送タスクを完了した後、新たなビン搬送タスクが割り当てられていない場合に、空き状態にある第2目標ロボットに対して目標ポーズポイントを割り当てる。
具体的に、現在の各通路から、空き仮置きスペースを持つ通路を候補通路として選択し、各候補通路の現在のタスクの数と、各候補通路と第2目標ロボットとの距離とに基づいて、各候補通路の停留コスト値を算出し、停留コスト値が最も低い候補通路を停留場通路として選択し、停留通路の空き状態にある仮置きスペースの下の停留場のうちの停留場を第2目標ロボットの目標停留場としてランダムに選択する。さらに、目標停留場に移動するように第2目標ロボットを制御する停留タスクを生成して第2目標ロボットに送信する。
一実施形態では、ステップS103は、目標ビンが複数の目標ステーションに対応する場合に、予め設定された配置順序に従って第2目標ロボットが各目標ステーションにアクセスする順序を決定することをさらに含む。ここで、予め設定された配置順序は、各目標ステーションへの到着予定ビンの数を小から大の順に配置するものである。
なお、複数の割当待ちタスクを同時に処理する必要があり、目標ビンが複数の目標ステーションに対応する場合、目標ビンが複数の目標ステーションにアクセスする順序を決定する必要がある。第2目標ロボットは、予め設定された配置順序に従って複数の目標ステーションに順次アクセスすることができる。また、予め設定された配置順序は、各目標ステーションの到着済みビンの数と到着予定ビンの数との合計に基づいて、各目標ステーションに小から大の順でアクセスするものであってもよい。
本発明の他の例では、予め設定された配置順序は、各目標ステーションに対応する割当待ちタスクの優先度値に基づいて決定されてもよく、すなわち、第2目標ロボットは、優先度値が高い目標ステーションに優先的にアクセスする。あるいは、予め設定された配置順序は、目標ビンが現在存在している位置と各目標ステーションとの距離を近から遠の順に配置するものであってもよく、すなわち、第2目標ロボットが各目標ステーションに近から遠の順でアクセスしてもよい。
以下、図22を参照して、本実施形態に係る倉庫システムの制御方法の具体例を説明する。
図22に示すように、割当待ちタスクであるジョブリストを受け取った後、ジョブリスト割当ステーションアルゴリズムに従って目標ステーションを決定し、具体的に、各候補ステーションの平均効率値と第2貨物の数とに基づいて各候補ステーションの割当効率値を算出し、割当効率値が最も低い候補ステーションを目標ステーションとして選択することができる。ここで、第2貨物の数は、候補ステーションの割当済みラックの残りの貨物情報とジョブリストの貨物情報とがマッチングしている貨物の数である。そして、ジョブリスト割当ビンアルゴリズムに従って目標ビンを決定し、具体的に、各現在のビンの貨物情報に基づいて、ジョブリストの貨物情報を満たすビンを候補ビンとして決定し、各候補ビンの搬送コストを算出し、搬送コストが最も低い候補ビンを目標ビンとして決定することができる。なお、すべての候補ビンの貨物情報がジョブリストの貨物情報を満たすことができない場合、すなわち、ジョブリストに要する在庫が不足しているため、目標ビンの割当に失敗した場合、ジョブリストをサスペンドし、バインドされている目標ステーションを解除する。
目標ビンの割当が成功し、目標ビンが複数の目標ステーションに同時に対応している場合、ビンが複数のステーションにアクセスするシーケンスアルゴリズムに基づいて、目標ロボットが各目標ステーションにアクセスする順序を決定し、ビン搬送タスクを生成して目標ロボットに送信する。そして、タスクの割当アルゴリズムに従って目標ロボットを決定し、該ステーションにおける、目標ロボットを少なく割り当てた作業点を選択して目標ロボットに割り当てる。
以下、図7~図10を参照して、本出願の第2実施形態における倉庫システムの制御方法を説明する。本実施形態に係る倉庫システムの制御方法は、割当待ちタスクを有する通路に第1ロボットを割り当て、第1ロボットに割当待ちタスクを割り当てる倉庫システムに適用することができる。
図7は、本出願の一実施形態における倉庫システムの制御方法を示すフローチャートである。
図7に示すように、制御方法は、以下のステップS701、S702、S703、S704を含む。
ステップS701において、空き状態にある第1ロボットをマッチング待ち第1ロボットとして選択する。
ステップS702において、目標ビンの位置情報に基づいて、目標ビンが位置する通路をマッチング待ち通路として選択する。
ステップS703において、マッチング待ち第1ロボットの各々に対し、マッチング待ち第1ロボットと各マッチング待ち通路との距離と、各マッチング待ち通路の割当待ちタスクの数とに基づいて、対応する目標通路と第1目標ロボットとを決定する。
ステップS704において、目標通路の割当待ちタスクを対応する第1目標ロボットに割り当てる。
例示的に、空き状態にある第1ロボットは、現在、タスクを実行していない第1ロボットを指し、具体的に、割当待ちタスクがない通路内の第1ロボットと、タスクを実行していない通路外の第1ロボットとを含むことができる。
例示的に、割当待ちタスクを有する通路は、現在の状態において、割当待ち出庫タスク及び/又は割当待ち入庫タスクを有する通路であってもよい。そのうち、出庫タスクとは、ビンをラックの格納スペースから仮置きスペースに搬送し、さらに仮置きスペースからステーションに搬送するタスクを指す。入庫タスクは、ステーションからラックの仮置きスペースに搬送し、さらに仮置きスペースから格納スペースに搬送するタスクであってもよい。
例示的に、マッチング待ち第1ロボットとマッチング待ち通路との間の距離は、マッチング待ち第1ロボットの現在位置とマッチング待ち通路のいずれかの通路口とのマンハッタン距離、すなわち、標準座標系におけるマッチング待ち第1ロボットの現在位置とマッチング待ち通路の通路口との座標差の絶対値の総和であってもよい。マッチング待ち通路の割当待ちタスクの数は、マッチング待ち通路の現在の割当待ち出庫タスクの数と割当待ち入庫タスクの数との合計であってもよい。ここで、マッチング待ち第1ロボットとマッチング待ち通路との距離は、マッチング待ち第1ロボットがマッチング待ち通路にマッチングするマッチング値に反比例する。すなわち、マッチング待ち第1ロボットとマッチング待ち通路との距離が小さいほど、マッチング待ち第1ロボットがマッチング待ち通路にマッチングするマッチング値が大きい。マッチング待ち通路の割当待ちタスクの数は、マッチング待ち第1ロボットがマッチング待ち通路にマッチングするマッチング値に正比例する。すなわち、マッチング待ち通路の割当待ちタスクの数が多いほど、マッチング待ち第1ロボットがマッチング待ち通路にマッチングするマッチング値が大きい。
一例では、マッチング待ち第1ロボットとマッチング待ち通路が完全マッチングにある最大重みマッチングは、KM(Kuhn-Munkres)アルゴリズムを用いて求められる。
具体的に、全てのマッチング待ち第1ロボットを頂点集合Xに加入し、全てのマッチング待ち通路を頂点集合Yに加入し、頂点集合Xのいずれかの頂点xiと頂点集合Yのいずれかの頂点yjを接続して辺(i、j)を形成し、マッチング待ち第1ロボットiとマッチング待ち通路jとのマッチング値を辺(i、j)の重み値とすることにより、全てのマッチング待ち第1ロボットとマッチング待ち通路との重み付き二部グラフを構築する。次に、重み付き二部図の完全マッチングにおける最大重みマッチングをKMアルゴリズムにより求める。すなわち、頂点集合X中のすべての頂点が、頂点集合Yから対応マッチングする頂点を有し、頂点集合Y中のすべての頂点が、頂点集合Xから対応マッチングする頂点を有し、かつ、すべての辺(i、j)の重み値の和が最も大きくなるように1つのマッチングを求める。
なお、KMアルゴリズムによって求められた完全マッチングにある最大重みマッチングは、マッチング待ち第1ロボットとマッチング待ち通路との最適なマッチングであり、各組の対応するマッチング済み第1ロボットと目標通路とのマッチング値の和が最大になる。これにより、マッチング待ち第1ロボットとマッチング待ち通路との最適なマッチング結果を迅速かつ正確に求め、全体として、各マッチング待ち第1ロボットと各マッチング待ち通路との高いマッチング値を保証することができる。さらに、割当待ちタスクを有する各通路における第1ロボットの合理的な分布を達し、出庫タスク及び入庫タスクの実行効率の向上が有利になる。
例示的に、マッチング待ち第1ロボットとマッチング待ち通路とをマッチングして、マッチング済み第1ロボットとそれに対応する目標通路とを得、マッチング済み第1ロボットを目標通路の通路口に移動させるように制御するための移動指示を、マッチング済み第1ロボットに送信する。
例示的に、対応するマッチング済み第1ロボットに目標通路の割当待ちタスクを割り当てることは、割当待ちタスクの優先度に従って、割当待ちタスクをマッチング済み第1ロボットに順次割り当てることができる。例えば、割当待ちタスクが複数であって、複数のタスクの優先度が異なる場合に、優先度が高い割当待ちタスクをマッチング済み第1ロボットに優先的に割り当て、その後、優先度が通常である割当待ちタスクをマッチング済み第1ロボットに割り当てる。
また、第1ロボットに対する各割当待ちタスクの割当値を算出し、複数の割当待ちタスクを割当値の大から小の順に第1ロボットに順次割り当てることができる。ここで、割当値は、マッチング済み第1ロボットと各割当待ちタスクに対応する目標ビンの位置との間の距離により算出することができる。
1つの具体例では、倉庫システムは、格納ラックと、ステーションと、第1ロボットと、第2ロボットとを含む。収納ラックは複数であり、間隔をおいて並設され、隣り合う2つの収納ラックの間に通路が画成されている。格納ラックは、格納スペースと仮置きスペースとを備え、格納スペースと仮置きスペースとは異なる階層に設定される。例えば、格納スペースは、上下方向に間隔をおいて配置された複数であってもよく、仮置きスペースは、複数の格納スペースの下に位置し、格納ラックの最下層に位置する。第1ロボットは、仮置きスペース上のビンを格納スペースに搬送する、又は格納スペース上のビンを仮置きスペースに搬送するために、通路に沿って移動することができる。ステーションは、作業者がビンに保管されている貨物を仕分けたり、ビンに貨物を入れたりするために用いられる。第2ロボットは、仮置きスペース上のビンをステーションに搬送する、又はステーションのビンを仮置きスペースに搬送するために、格納ラックとステーションとの間に移動することができる。なお、本出願の実施形態における第1ロボットは、第1ロボットであってもよい。
本実施形態に係る倉庫システムの制御方法は、マッチング待ち第1ロボットと各マッチング待ち通路との距離と各マッチング待ち通路の割当待ちタスクの数とに基づいて、マッチング待ち第1ロボットが各マッチング待ち通路にマッチングするマッチング値を算出し、マッチング値が最も高いマッチング待ち通路をマッチング待ち第1ロボットの目標通路として選択することにより、従来技術の倉庫システムにおける第1ロボットと通路とのマッチング度が悪いためにタスクの実行効率が悪いという技術的課題を解決する。本発明の実施形態に係る方法によれば、第1ロボットと通路との間の距離と通路の割当待ちタスクの数との2つの要素を統合してマッチングを行うことにより、第1ロボットと通路との最適なマッチング結果を迅速かつ正確に求めることができ、各通路における第1ロボットの分布が合理になり、第1ロボットによる出庫タスク及び入庫タスクの効率化に有利である。
一実施形態では、マッチング待ち通路は、第1マッチング待ち通路と第2マッチング待ち通路とを含む。
図8に示すように、ステップS702は、以下のステップS801、S802を含む。
ステップS801において、割当待ちタスクがありかつ第1ロボットが存在しない通路を第1マッチング待ち通路として選出する。
ステップS802において、第1マッチング待ち通路の数がマッチング待ち第1ロボットの数よりも少ない場合、割当待ちタスクがありかつ第1ロボットが存在する通路を第2マッチング待ち通路として選出する。
なお、第1マッチング待ち通路及び第2マッチング待ち通路を選出した後、第1マッチング待ち通路及び第2マッチング待ち通路を第1マッチング待ちロボットにともにマッチングしてもよい。
例示的に、第1マッチング待ち通路の数が第1マッチング待ちロボットの数よりも少ない場合、割当待ちタスクがありかつ第1ロボットが存在する通路を選出し、通路内の第1ロボットの数に対する、通路の割当待ちタスクの数の比率を算出し、第1マッチング待ち通路と第2マッチング待ち通路の数との和がマッチング待ち第1ロボットの数に等しい、又は割当待ちタスクがありかつ第1ロボットが存在する通路が全て選択されるまで、比率の大から小の順に第2マッチング待ち通路とする。
なお、第1マッチング待ち通路の数と第2マッチング待ち通路の数との和が第1マッチング待ちロボットの数に等しい場合、頂点集合Xと頂点集合Yの頂点数が同じであるため、KMアルゴリズムを用いて、マッチング待ち第1ロボットとマッチング待ち通路との完全マッチング結果を求めることができる。すなわち、頂点集合X中のいずれかの頂点が頂点集合Yから一意にマッチングされた頂点を有し、頂点集合Y中のすべての頂点が頂点集合Xから一意にマッチングされた頂点を有し、かつ、このマッチングにおけるすべての辺(i、j)の重み和が最大である。
1つの実施形態では、マッチング待ち第1ロボットがマッチング待ち通路にマッチングするマッチング値Wijは次の式を満たす。
W_2=-u_1 d_2/d_2max +u_2 m_2/m_2max +u_3 n_2/n_2max
ここで、d2は、マッチング待ち第1ロボットxiとマッチング待ち通路yjとの距離であり、d2maxは、各マッチング待ち第1ロボットと各マッチング待ち通路との距離の最大値であり、m2は、マッチング待ち通路yjの割当待ちタスクの数であり、m2maxは、各マッチング待ち通路の割当待ちタスクからの最大数であり、n2は、マッチング待ち通路yjの強制的な優先タスクの数であり、n2maxは、各マッチング待ち通路の強制的な優先タスクの数からの最大値であり、u1、u2、u3は予め設定された値である。例えば、u1は700、u2は1、u3は70000であってもよい。
なお、上記の式では、ある分数の分母がゼロである場合、その分数の算出結果はゼロとなる。
一例では、マッチング待ち第1ロボットxiとマッチング待ち通路yjとの距離d2は次のように算出できる。第1ロボットが位置する通路に対する第1ロボットの位置p0を取得し、第1ロボットが位置する通路の2つの通路口の位置p1、p2を取得し、マッチング待ち通路の2つの通路口の位置p3、p4を取得する。マッチング待ち第1ロボットxiとマッチング待ち通路yjとの距離d2は、以下の式を満たす。
d2=min(d01+d13、d01+d14、d02+d23、d02+d24)
ここで、d01は位置p0と位置p1の間のマンハッタン距離であり、d13は位置p1と位置p3の間のマンハッタン距離であり、d14は位置p1と位置p4の間のマンハッタン距離であり、d02は位置p0と位置p2の間のマンハッタン距離であり、d23は位置p2と位置p3の間のマンハッタン距離であり、d24は、位置p2と位置p4の間のマンハッタン距離である。
1つの実施形態では、マッチング待ち第1ロボットとマッチング待ち通路とをマッチングする前に、マッチング待ち通路の割当待ちタスクに強制的な優先タスクが存在し、かつ通路に第1ロボットが存在しない場合、強制的な優先タスクが存在するマッチング待ち通路に第1ロボットを優先的に割り当てる。例えば、通路に最も近い第1ロボットを選出して通路にマッチングする、又は、強制的な優先タスクがない通路の第1ロボットを選出して通路にマッチングすることができる。
一実施形態では、ステップS704は、図9に示すように、ステップS901、S902、S903、S904を含む。
ステップS901において、目標通路の割当可能なタスクの数を算出する。
ステップS902において、割当可能なタスクの数が0よりも大きい場合に、マッチング済み第1ロボットの数に基づいて、目標通路において対応数の作業領域を分割する。なお、マッチング済み第1ロボットの数は作業領域の数に等しく、各マッチング済み第1ロボットは各作業領域に1対1に対応する。
ステップS903において、割当済みタスクの数がタスクの上限閾値よりも少ないマッチング済み第1ロボットを割当待ち第1ロボットとして選出する。ここで、タスクの上限閾値とは、マッチング済み第1ロボットに割当可能なタスクの数の最大値を指す。
ステップS904において、割当待ち第1ロボットと各割当可能なタスクに対応する目標ビンとの距離と、割当待ち第1ロボットが各割当可能なタスクに対応する目標ビンに移動するために通過した作業領域の数とに基づいて、割当可能なタスクから目標タスクを決定し、対応する割当待ち第1ロボットに割り当てる。
例示的に、ステップS901において、割当可能なタスクの数は、割当可能な入庫タスクの数と割当可能な出庫タスクの数とを含む。ここで、割当可能な入庫タスクの数は、割当待ち入庫タスクの数と空き仮置きスペースの数に基づいて算出できる。割当可能な出庫タスクの数は、割当待ち出庫タスクの数と空き格納スペースから算出できる。
例示的に、ステップS902において、作業領域の数が複数である場合に、各作業領域に対応する格納スペースの数が等しく、マッチング済み第1ロボットが、対応する作業領域において出庫タスク又は入庫タスクを実行する。
例示的に、ステップS904において、割当待ち第1ロボットと、各割当可能なタスクに対応する目標ビンとの距離は、タスクを実行する前に割当待ち第1ロボットの位置と、割当可能な入庫タスクに対応する目標ビンが存在する仮置きスペースの位置との距離である、又は、タスクを実行する前に割当待ち第1ロボットの位置と、割当可能な出庫タスクに対応する目標ビンが存在する格納スペースの位置との距離であってもよい。割当待ち第1ロボットが、各割当可能なタスクに対応する目標ビンに移動するために通過した作業領域の数とは、割当待ち第1ロボットがこの割当可能なタスクを実行する過程において、現在の位置から目標ビンの位置に移動する過程に通過した作業領域の数である。
なお、割当待ち第1ロボットと割当可能なタスクに対応する目標ビンとの距離は、割当待ち第1ロボットに割当可能なタスクを割り当てる割当値に反比例する。すなわち、割当待ち第1ロボットと割当可能なタスクに対応する目標ビンとの距離が小さいほど、割当待ち第1ロボットへの割当可能なタスクの割当値が大きい。割当待ち第1ロボットが各割当可能なタスクに対応する目標ビンに移動するために通過した作業領域の数は、割当待ち第1ロボットに割当可能なタスクを割り当てる割当値に反比例する。すなわち、第1被割当ロボットが各割当可能なタスクに対応する目標ビンに移動するために通過した作業領域の数が少ないほど、この割当可能なタスクを割当待ち第1ロボットに割り当てる割当値が大きい。
選択可能に、割当可能なタスクが割当待ち第1ロボットに割り当てる割当値Uijは、以下の式を満たす。
U_2=-e_1*f_2-e_2*g/g_max
ここで、f2は、割当待ち第1ロボットaiが割当可能なタスクを実行するために通過した作業領域の数であり、gは、割当待ち第1ロボットaiが割当可能なタスクを実行するために移動する距離であり、gmaxは、各割当待ち第1ロボットaiが割当可能なタスクを実行するために移動する距離の最大値であり、e1、e2は予め設定された値であり、例えば、e1は700、e2は1であってもよい。
なお、上記の式では、ある分数の分母がゼロである場合、その分数の算出結果はゼロとなる。
また、割当可能なタスクに対応する目標ビンの存在する作業領域が目標通路の端部に位置し、かつ、割当待ち第1ロボットが目標ビンの存在する作業領域に位置しない場合に、割当待ち第1ロボットに対する割当可能なタスクの割当値は、0に近づける。
一例では、KMアルゴリズムを使用して、割当待ち第1ロボットと割当待ちタスクが完全マッチングにある最大重みマッチングを求めることができる。
具体的に、全ての割当待ち第1ロボットを頂点集合Pに加入し、全ての割当待ちタスクを頂点集合Qに加入し、頂点集合Pのいずれかの頂点piと頂点集合Qのいずれかの頂点qjを接続して辺(i、j)を形成し、割当待ち第1ロボットiと割当待ちタスクjとの割当値を辺(i、j)の重み値とすることにより、全ての割当待ち第1ロボットと割当待ちタスクとの重み付き二部グラフを構築する。次に、重み付き二部図の完全マッチングにおける最大重みマッチングをKMアルゴリズムにより求める。すなわち、頂点集合P中のすべての頂点が、頂点集合Qから対応マッチングする頂点を有し、頂点集合Q中のすべての頂点が、頂点集合Pから対応マッチングする頂点を有し、かつ、すべての辺(i、j)の重み値の和が最も大きくなるように1つのマッチングを求める。
なお、KMアルゴリズムによって求められた完全マッチングにある最大重みマッチングは、割当待ち第1ロボットと割当待ちタスクとの最適な割当方法であり、各組の対応する割当待ち第1ロボットと割当待ちタスクとの割当値の和が最大になる。これにより、割当待ち第1ロボットと割当待ちタスクとの最適な割当結果を迅速かつ正確に求め、全体として、各割当待ち第1ロボットと各割当待ちタスクが最も高い割当値を有することを保証することができ、さらに、第1ロボットが通路内で出庫タスクや入庫タスクを実行する際の実行効率を向上させることができる。
選択可能に、図10に示すように、ステップS901は、ステップS1001、S1002、S1003を含む。
ステップS1001において、目標通路の割当待ち出庫タスクの数及び空き仮置きスペースの数のうちの最小値と、目標通路の割当待ち入庫タスクの数及び空き格納スペースの数のうちの最小値とを加算して第1参照値を求める。
ステップS1002において、マッチング済み第1ロボットの数にタスクの上限閾値を乗算し、すべてのマッチング済み第1ロボットの割当済みタスクの総数を減算して第2参照値を求める。ここで、タスクの上限閾値は、単一のマッチング済み第1ロボットに割当可能なタスクの数の最大値である。
ステップS1003において、第1参照値と第2参照値のうちのうちの最小値を目標通路の割当可能なタスクの数として選出する。
一例では、割当可能なタスクの数に基づいて、割当可能な出庫タスクの数と割当可能な入庫タスクの数を算出ことができる。具体的に、
割当可能なタスクの数が0を超え、目標通路の出庫ビンの数が空き仮置きスペースの数と予め設定された値v1との積を超えている場合、割当可能な入庫タスクの数を算出し、ここで、割当可能な入庫タスクの数は、割当可能なタスクの数、仮置きスペースにある入庫ビンの数、及び空き格納スペースの数のうちの最小値であり、v1は0.5であること、
割当可能な出庫タスクの数を算出し、ここで、割当可能な出庫タスクの数は、割当可能なタスクの数と割当可能な入庫タスクの数との差、割当待ち出庫タスクの数、空き仮置きスペースの数、及び比較値のうちの最小値であり、比較値C0は、以下の式を満たすことと、を含む。
C0=max(0、j*v2-k)
ここで、jは空き仮置きスペースの数であり、kは出庫ビンの数であり、予め設定された値v2は0.8であってもよい。
さらに、割当可能なタスクの数に基づいて、割当可能な出庫タスクの数と割当可能な入庫タスクの数を算出することは、割当可能なタスクの数が0より大きく、目標通路の出庫ビンの数が空き仮置きスペースの数と予め設定された値v1との積以下である場合、割当可能な出庫タスクの数を算出し、ここで、割当可能な出庫タスクの数は、割当可能なタスクの数、割当待ち出庫タスクの数、空き仮置きスペースの数及び比較値のうちの最小値であり、比較値C0は以下の式を満たすことと、割当可能な入庫タスクの数を算出し、ここで、割当可能な入庫タスクの数は、割当可能なタスクの数と割当可能な出庫タスクの数との差、仮置きスペースにある入庫ビンの数、及び空き格納スペースの数のうちの最小値を取ることと、をさらに含む。
C0=max(0、j*v2-k)
ここで、jは空き仮置きスペースの数であり、kは出庫ビンの数であり、予め設定された値v2は0.8であってもよい。
以下、図11~図17を参照して、本出願の第3実施形態における倉庫システムの制御方法を説明する。本実施形態に係る倉庫システムの制御方法は、割当待ちタスクを有する通路に第2ロボットを割り当て、第2ロボットに割当待ちタスクを割り当てる倉庫システムに適用することができる。
図11は、本出願の一実施形態による倉庫システムの制御方法を示すフローチャートである。図11に示すように、方法は、以下のステップS1101、S1102、S1103、S1104を含む。
ステップS1101において、各初期倉庫エリアの割当待ちタスクの数と現在の第2ロボットの数とに基づいて、複数の初期倉庫エリアから移入倉庫エリアと移出倉庫エリアとを決定する。
ステップS1102において、各移出倉庫エリアにおける移出第2ロボットを決定する。
ステップS1103において、各移出第2ロボットから各移入倉庫エリアにおける移入第2ロボットを決定し、移入第2ロボットを移出倉庫エリアから対応する移入倉庫エリアに配置する。
ステップS1104において、各マッチング待ち倉庫エリアに対し、マッチング待ち倉庫エリアにおける空き第2ロボットから、マッチング待ち倉庫エリアにおける各目標ビンの対応する第2目標ロボットを決定する。ここで、第2目標ロボットは、対応する割当待ちタスクを実行するために用いられ、すなわち、目標ビンを格納スペースから目標ステーションに搬送するために用いられる。
例示的に、倉庫システムは、複数の倉庫倉庫エリアを含み、各倉庫倉庫エリアは、格納ラック及びステーションを備え、第2ロボットは、各倉庫エリアに割り当てられ、各倉庫エリアに対応するタスクを実行する。初期倉庫エリアとは、第2ロボットが配置されない前の各倉庫エリアを指す。
初期倉庫エリアの割当待ちタスクとは、初期倉庫エリアの第2ロボットが割り当てられていないタスクを指す。初期倉庫エリアにおける現在の第2ロボットの数は、初期倉庫エリア内に位置する第2ロボットの数であり、初期倉庫エリア内に位置するタスクを実行している第2ロボットと空き状態にある第2ロボットとを含む。移入倉庫エリアとは、第2ロボットを移入する必要がある初期倉庫エリアを指し、移出倉庫エリアとは、第2ロボットを移出する必要がある初期倉庫エリアを指す。
例示的に、全ての初期倉庫エリアの割当待ちタスクの数の総和に対する初期倉庫エリアの割当待ちタスクの数の比率と全ての初期倉庫エリアにおける第2ロボットの総数との積を算出し、算出された積と初期倉庫エリアにおける現在の第2ロボットの数とを比較することにより、初期倉庫エリアに対して第2ロボットの移入又は移出が必要であるか否かを判断し、初期倉庫エリアが移入倉庫エリアであるか、移出倉庫エリアであるかを判断する。
具体例では、各初期倉庫エリアは、格納ラック、ステーション、第1ロボット、及び第2ロボットを含む。収納ラックは複数で間隔をおいて並設され、隣り合う2つの収納ラックの間に通路が画成されている。格納ラックは、格納スペースと仮置きスペースとを備え、格納スペースと仮置きスペースとは異なる階層に設定される。例えば、格納スペースは、上下方向に間隔をおいて配置された複数であってもよく、仮置きスペースは、複数の格納スペースの下に位置し、格納ラックの最下層に位置する。第1ロボットは、仮置きスペース上のビンを格納スペースに搬送する、又は格納スペース上のビンを仮置きスペースに搬送するために、通路に沿って移動することができる。ステーションは、作業者がビン内に保管されている貨物を仕分けたり、ビンに貨物を入れたりするために用いられる。第2ロボットは、仮置きスペース上のビンをステーションに搬送する、又はステーションのビンを仮置きスペースに搬送するために、格納ラックとステーションとの間に移動することができる。
例示的に、各移出倉庫エリアにおける移出第2ロボットは、移出倉庫エリアにおける空き状態にある第2ロボットから決定される、又は移出倉庫エリアにおける空き状態にある第2ロボット、及びビンの復位タスクの実行中でありかつタスクの終点との距離が予め設定された距離閾値以下である第2ロボットから決定されることができる。ここで、空き状態にある第2ロボットとは、現在タスクが割り当てられていない第2ロボットを指し、ビンの復位タスクとは、第2ロボットがビンをある格納ラックから別の格納ラックに搬送することを指す。
例示的に、各移出第2ロボットから各移入倉庫エリアにおける移入第2ロボットを決定することは、各移入倉庫エリアに対し、全ての移出第2ロボットから当該移入倉庫エリアとの距離が最も近い移出第2ロボットを当該移入倉庫エリアの移入第2ロボットとして選出し、当該呼出第2ロボットを現在位置する移出倉庫エリアから割り当てられた移入倉庫エリアに移動させるように制御するための移動指令を、当該移入第2ロボットに送信する。
本実施形態に係る倉庫システムの制御方法は、各初期倉庫エリアの割当待ちタスクの数と現在の第2ロボットの数によって、各初期倉庫エリアから移入倉庫エリアと移出倉庫エリアを決定し、移出倉庫エリアの移出第2ロボットを決定し、移出第2ロボットから移入倉庫エリアの移入第2ロボットを決定する。そして、各移入倉庫エリアについて、移入倉庫エリアの移入第2ロボットから移入倉庫エリアの各ステーションにおける第2目標ロボットを決定し、各第2目標ロボットにステーションの割当待ちタスクをマッチングする。これにより、各初期倉庫エリアの実情に応じて、各初期倉庫エリアの第2ロボットの数を配分することで、各初期倉庫エリアにおける第2ロボットの分布数が合理になり、各初期倉庫エリアのタスクの割当が均衡になり、さらに倉庫システム全体の作業効率を向上させることができるとともに、関連技術における倉庫システムの各倉庫エリアにおける第2ロボットの分布の不合理による作業効率低下という技術的問題を解決することができる。
一実施形態では、ステップS1101は、図12に示すように、ステップS1201、S1202を含む。
ステップS1201において、初期倉庫エリアにおける現在の第2ロボットの数が初期倉庫エリアにおける第2ロボットの割当数よりも少ない場合、初期倉庫エリアを移入倉庫エリアとして決定する。
ステップS1202において、初期倉庫エリアにおける現在の第2ロボットの数が初期倉庫エリアにおける第2ロボットの割当数よりも多い場合、初期倉庫エリアを移入倉庫エリアとして決定する。
ここで、初期倉庫エリアにおける第2ロボットの割当数は、初期倉庫エリアの未完了タスクの数と倉庫システムの未完了タスクの数の合計との割合と、倉庫システムにおける第2ロボットの総数との積である。すなわち、初期倉庫エリアにおける第2ロボットの割当数は、倉庫システムの全ての未完了タスクの数に対する初期倉庫エリアの未完了タスクの数の割合と、倉庫システムにおける第2ロボットの総数との積である。
なお、初期倉庫エリアにおける現在の第2ロボットの数が初期倉庫エリアにおける第2ロボットの割当数に等しい場合、初期倉庫エリアにとっては第2ロボットを移入又は移出する必要がない。すなわち、初期倉庫エリアは、移入倉庫エリアでない、移出倉庫エリアでもない。
一実施形態では、ステップS1102は、図13に示すように、ステップS1301、S1302を含む。
ステップS1301において、移出倉庫エリアの現在の第2ロボットの数、第2ロボットの数の下限値、第2ロボットの割当数及び空き第2ロボットの数に基づいて、移出倉庫エリアの第2ロボットの移出数を算出する。
ステップS1302において、移出倉庫エリアの第2ロボットの移出数に基づいて、移出倉庫エリアの移出第2ロボットを決定する。
例示的に、移出倉庫エリアについて、第2ロボットの割当数が移出倉庫エリアの第2ロボットの数の下限値以上である場合に、現在の第2ロボットの数と第2ロボットの割当数との差値を算出し、該差値と空き第2ロボットの数とのうちの最小値を移出倉庫エリアの第2ロボットの移出数とする。第2ロボットの割当数が該移出倉庫エリアの第2ロボットの数の下限値よりも小さい場合に、現在の第2ロボットの数と第2ロボットの数の下限値との差値を算出し、該差値と空き第2ロボットの数とのうちの最小値を移出倉庫エリアの第2ロボットの移出数とする。ここで、第2ロボットの数の下限値は、移出倉庫エリアに予め設定された収容可能な第2ロボットの数のうちの最小値であってもよい。空き状態の第2ロボットの数は、移出倉庫エリアの現在タスクが割り当てられていない移出第2ロボットの数と、ビンの復位タスクが実行されており、タスクの終点からの距離が予め設定された距離閾値以下である第2ロボットの数との合計であってもよい。
移出倉庫エリアの第2ロボットの移出数U3は、以下の式を満たすことができる。
U3=max(k、max(0,k1)-max(k2、kmin))
ここで、kは、移出倉庫エリアの空き第2ロボットの数であり、k1は、移出倉庫エリアの現在の第2ロボットの数、k2は、移出倉庫エリアの第2ロボットの割当数、kminは、移出倉庫エリアの第2ロボットの数の下限値である。
例示的に、移出倉庫エリアの第2ロボットの移出数を得た後、移出倉庫エリアから対応する数の空き第2ロボットを選択して、移出第2ロボットとして決定する。
一実施形態では、ステップS1103は、図14に示すように、ステップS1401、S1402、S1403、S1404を含む。
ステップS1401において、移入倉庫エリアの第2ロボットの割当数、現在の第2ロボットの数及び第2ロボットの数の上限値に基づいて、移入倉庫エリアの第2ロボットの移入数を算出する。
ステップS1402において、各移入倉庫エリアの第2ロボットの移入数の総和に対する移入倉庫エリアの第2ロボットの移入数の比と、各移出倉庫エリアの第2ロボットの移出数の総和との積を参照値とする。
ステップS1403において、参照値と移入倉庫エリアの第2ロボットの移入数とのうちの最小値を、移入倉庫エリアの第2ロボットの実需要数として決定する。
ステップS1404において、各移出倉庫エリアにおける移出第2ロボットから、移入第2ロボットの実需要数に応じて移入倉庫エリアとの距離が最も近い移出第2ロボットを移入倉庫エリアの移入第2ロボットとして選択する。
例示的に、ステップS1401では、移入倉庫エリア毎に、第2ロボットの割当数が移入倉庫エリアの第2ロボットの数の上限値以下である場合に、第2ロボットの割当数と現在の第2ロボットの数との差値を算出し、差値が0より大きい場合に、この差値を移入倉庫エリアの第2ロボットの移入数とする。第2ロボットの割当数が該移入倉庫エリアの第2ロボットの割当数の上限値よりも大きい場合に、第2ロボットの割当数の上限値と現在の第2ロボットの割当数との差値を算出し、差値が0より大きい場合に、差値を移入倉庫エリアの第2ロボットの移入数とする。ここで、第2ロボットの数の上限値は、移入倉庫エリアに予め設定された収容可能な第2ロボットの数の最大値であってもよい。
移入倉庫エリアの第2ロボットの移入数U4は、以下の式を満たすことができる。
U4=max(0,min(p2、pmax)-p1)
ここで、p1は、移入倉庫エリアの現在の第2ロボットの数であり、p2は、移入倉庫エリアの第2ロボットの割当数であり、pmaxは、移入倉庫エリアの第2ロボットの数の上限値である。
例示的に、ステップS1404において、移入倉庫エリアとの距離が最も近い移出第2ロボットは、移出第2ロボットにおけるタスクが割り当てられていなく、現在位置と移入倉庫エリアとの距離が最も近い移出第2ロボット、及び移出第2ロボットにおけるビンの復位タスクを実行しておりかつタスクの終点位置と移入倉庫エリアとの距離が最も近い移出第2ロボットを指す。移入倉庫エリアの移入第2ロボットを決定した後、目標移入倉庫エリアに移動するように制御するための移動指令を移入第2ロボットに送信する。
一実施形態では、図15に示すように、初期倉庫エリアは、複数のステーションを含み、当該方法は、以下のステップをさらに含む。
ステップS1501において、マッチング待ち倉庫エリアの割当待ちタスクのタイプ及び割当待ちタスクの数に基づいて、マッチング待ち倉庫エリアの空き第2ロボットから、各ステーションに対応する第2目標ロボットを決定する。
ステップS1502において、ステーションの割当待ちタスクを、ステーションに対応する第2目標ロボットにマッチングする。
なお、マッチング待ち倉庫エリアには、第2ロボットの呼び出しを完了した後の各移入倉庫エリア及び各移出倉庫エリアが含まれ、マッチング待ち倉庫エリアには、第2ロボットの呼び出しを行う必要のない初期倉庫エリアも含まれる。
例示的に、割当待ちタスクのタイプは、出庫タスク、入庫タスク、及び棚卸タスクがある。ここで、出庫タスクは、格納ラックのビンをステーションに搬送するタスクである。入庫タスクは、ステーションのビンを格納ラックに搬送するタスクである。棚卸タスクは、格納ラックのビンをステーションに搬送して従業員が棚卸を行い、棚卸後のビンを格納ラックに戻すことである。さらに、ステーションの種類は、割当待ちタスクのタイプに対応設定され、言い換えれば、割当待ちタスクのタイプごとに1つ又は複数のステーションが対応されている。例えば、出庫タスクは、少なくとも1つの出庫ステーションに対応し、入庫タスクは、少なくとも1つの入庫ステーションに対応し、棚卸タスクは、少なくとも1つの棚卸ステーションに対応している。移入倉庫エリアの各割当待ちタスクのタイプに対し、移入倉庫エリアの各割当待ちタスクのタイプに対応する割当待ちタスクの数に応じて、割当待ちタスクのタイプ毎に割当が必要な空き第2ロボットの数を決定した後、対応数に応じた空き第2ロボットを第2目標ロボットとして割当待ちタスクのタイプに対応するステーションに割り当て、ステーションに対応する割当待ちタスクをステーションにおける第2目標ロボットにマッチングする。
なお、マッチング待ち倉庫エリアが第2ロボットの一部を移出した後の移出倉庫エリアである場合に、マッチング待ち倉庫エリアの空き第2ロボットは、この移出倉庫エリアの残りの空き第2ロボットであってもよい。マッチング待ち倉庫エリアが第2ロボットの一部を移入した後の移入倉庫エリアである場合に、マッチング待ち倉庫エリアの空き第2ロボットは、移入倉庫エリアにおける第2ロボットの移入前の空き第2ロボット、及びその後に移入した第2ロボットであってもよい。
具体例では、各割当待ちタスクのタイプに対応する割当待ちタスクの数の合計に対する割当待ちタスクのタイプに対応する割当待ちタスクの数の割合と、マッチング待ち倉庫エリアの空き第2ロボットの数との積を算出することにより、各割当待ちタスクのタイプに割り当てる必要のある空き第2ロボットの数を求めることができる。
一実施形態では、ステップS1501は、図16に示すように、ステップS1601、S1602、S1603、S1604を含む。
ステップS1601において、各割当待ちタスクのタイプについて、各割当待ちタスクの数の合計に対する割当待ちタスクの数の比率、割当待ちタスクのタイプの固定重み、及び割当待ちタスクのタイプの初期変動重みに基づいて、割当待ちタスクのタイプの第1変動重みを算出する。
ステップS1602において、マッチング待ち倉庫エリアの空き第2ロボットのうちの1つを第2目標ロボットとして、第1変動重みが最も高い割当待ちタスクのタイプに対応するステーションに割り当てる。
ステップS1603において、各割当待ちタスクのタイプについて、各割当待ちタスクの数の合計に対する割当待ちタスクの数の比率、割当待ちタスクのタイプの固定重み、及び割当待ちタスクのタイプの第1変動重みに基づいて、割当待ちタスクのタイプの第2変動重みを算出する。
ステップS1604において、空き第2ロボットの割当待ちの数及び割当待ちタスクの数の両者とも0より大きい場合に、第1変動重みの算出ステップ、第2目標ロボットの割当ステップ及び第2変動重みの算出ステップを循環させ、割当待ちタスクのタイプの第2変動重みを割当待ちタスクのタイプの初期変動重みとする。
特定の例では、ステップS1601、ステップS1602、ステップS1603、及びステップS1604は、平滑化重み付けラウンドロビンアルゴリズムによって実現されてもよい。
例示的に、ステップS1601において、各割当待ちタスクの数の合計に対する割当待ちタスクの数の割合と、割当待ちタスクのタイプの固定重みとの積を算出し、該積と割当待ちタスクのタイプの初期変動重みとの和を算出して、割当待ちタスクのタイプの第1変動重みを求めてもよい。ここで、割当待ちタスクのタイプの初期変動重みは0にすることができる。
例示的に、ステップS1602において、第1変動重みが最も高い割当待ちタスクのタイプを選択し、この割当待ちタスクのタイプに対応するステーションに割り当てられた第2目標ロボットの数に1が加算される。
例示的に、ステップS1603において、各割当待ちタスクの数の合計に対する割当待ちタスクの数の比率と、割当待ちタスクのタイプの固定重みとの積を算出した後、割当待ちタスクのタイプの第1変動重みと当該積との差値を算出して、割当待ちタスクのタイプの第2変動重みを求めてもよい。
例示的に、ステップS1604において、空き第2ロボットの割当待ちの数が0より大きい場合、ステップS1601、ステップS1602、及びステップS1603を循環させ、第2変動重みを後続のステップS1601における初期変動重みとする。空き第2ロボットの割当待ちの数が0である場合、すなわち、全ての空き第2ロボットの各割当待ちタスクのタイプに割り当てられる数を決定した後、ステップS1601、ステップS1602、ステップS1603を停止する。
一実施形態では、ステップS1502は、図17に示すように、ステップS1701、S1702、S1703をさらに含む。
ステップS1701において、ステーションの割当待ちタスクの優先度及び割当待ちタスクに対応する目標ビンとステーションとの間の距離に基づいて、各割当待ちタスクの割当値を算出する。
ステップS1702において、ステーションにおける第2目標ロボットの数に応じて、割当待ちタスクから、割当値が最も高い対応数の割当待ちタスクを目標タスクとして抽出する。
ステップS1703において、各第2目標ロボットに対し、第2目標ロボットと各目標タスクに対応する目標ビンとの間の距離に基づいて、各目標タスクにマッチングする第2目標ロボットのマッチング値を算出し、マッチング値が最も高い目標タスクを選出して第2目標ロボットにマッチングする。
例示的に、ステップS1701において、当該ステーションの各割当待ちタスクに対応するビンの優先度のうちの最大値に対する割当待ちタスクに対応するビンの優先度の比率を算出して、割当待ちタスクの優先度の比率値を求めることができる。ステーションの各割当待ちタスクに対応するビンとステーションとの距離のうちの最大値に対する割当待ちタスクに対応するビンとステーションとの距離の比率を算出して、割当待ちタスクの距離の比率値を求めることができる。そして、割当待ちタスクの優先度の比率値と割当待ちタスクの距離の比率値との差を算出して、割当待ちタスクの割当値を求める。
例示的に、ステップS1703において、KM(Kuhn-Munkres)アルゴリズムを用いて、完全マッチングにおける目標タスクと第2目標ロボットとの最大重みマッチングを求めることができる。
具体的に、全ての第2目標ロボットを頂点集合Xに加入し、全ての目標タスクを頂点集合Yに加入し、頂点集合X中のいずれかの頂点xiと頂点集合Yのいずれかの頂点yjとの間に辺(i、j)が形成され、第2目標ロボットiと目標タスクjとのマッチング値を辺i、j)の重み値とすることにより、全ての第2目標ロボットと全ての目標タスクとの重み付き二部グラフを構築する。次に、重み付き二部図の完全マッチングにおける最大重みマッチングをKMアルゴリズムにより求める。すなわち、頂点集合X中のすべての頂点が、頂点集合Yから対応マッチングする頂点を有し、頂点集合Y中のすべての頂点が、頂点集合Xから対応マッチングする頂点を有し、このマッチングにおいてすべての辺(i、j)の重み値の和が最も大きくなるようなマッチングを求める。
ここで、第2目標ロボットiと目標タスクjとのマッチング値は、目標タスクjに対応する目標ビンとステーションとの距離の逆数であってもよい。
なお、KMアルゴリズムによって求められた完全マッチングにおける頂点集合Xと頂点集合Yの最大重みマッチングは、第2目標ロボットと目標タスクとの最適なマッチング結果であり、各組の対応する第2目標ロボットと目標タスクとの間のマッチング値の和が最大になる。これにより、第2目標ロボットと目標タスクとの最適なマッチング結果を迅速かつ正確に求め、全体として、各第2目標ロボットと各目標タスクとの高いマッチング値を保証し、第2目標ロボットに高効率の目標タスクを優先的に実行させ、ステーションの割当待ちタスクの実行効率を向上させることができる。
図18を参照して、本出願の第4実施形態に係る倉庫システムの制御装置1800について説明する。
図18に示すように、該倉庫システムの制御装置1800は、以下のモジュールを含む。
目標ステーション決定モジュール1801は、割当待ちタスクの貨物情報に基づいて目標ステーションを決定する。
目標ビン決定モジュール1802は、各現ビンの貨物情報と割当待ちタスクの貨物情報とに基づいて候補ビンを決定し、各候補ビンから搬送コストの最も低い候補ビンを目標ビンとして選択する。
目標ロボット決定モジュール1803は、目標ビンの位置情報に基づいて目標ロボットを決定する。
目標ロボット制御モジュール1804は、目標ロボットを制御して目標ビンを目標ステーションに搬送する。
一実施形態では、目標ステーション決定モジュール1801は、以下のサブモジュールを含む。
候補ステーション決定サブモジュールは、割当待ちタスクの占有すべき収納スペースの数と各ステーションの空き収納スペースの数とに基づいて、候補ステーションを決定する。
割当効率値算出サブモジュールは、候補ステーションに割当済みビンの貨物情報、各ビンと候補ステーションとの距離、候補ステーションに割り当てられていないビンの貨物情報及び割当待ちタスクの残りの貨物情報に基づいて、各候補ステーションの割当効率値を算出する。
目標ステーション決定サブモジュールは、割当効率値が最大の候補ステーションを目標ステーションとして決定する。
一実施形態では、目標ビン決定モジュール1802は、以下のサブモジュールを含む。
残り貨物情報決定サブモジュールは、割当待ちタスクの貨物情報と目標ステーションの割当済みビンの貨物情報とに基づいて、割当待ちタスクの残りの貨物情報を決定する。
候補ビン決定サブモジュールは、各現在のビンの貨物情報に基づいて、割当待ちタスクの残りの貨物情報を満たすビンを候補ビンとして決定する。
目標ビン決定サブモジュールは、各候補ビンの搬送コストを算出し、搬送コストの最も低い候補ビンを目標ビンとして決定する。
一実施形態では、ロボットは、第1ロボットを含み、目標ロボット決定モジュール1803は、以下のサブモジュールを含む。
目標通路決定サブモジュールは、目標ビンの位置情報に基づいて、目標ビンに対応する目標通路を決定する。
第1目標ロボット決定サブモジュールは、目標通路における各第1ロボットの位置に基づいて、目標ビンを格納スペースから仮置きスペースまで搬送するための第1目標ロボットを決定する。
一実施形態では、ロボットは、第2ロボットを含み、目標ロボット決定モジュール1803は、第2目標ロボット決定サブモジュールをさらに含む。
第2目標ロボット決定サブモジュールは、目標ビンの位置情報に基づいて、目標ビンとの距離が最も近い第2ロボットを、目標ビンを仮置きスペースから目標ステーションに搬送するための第2目標ロボットとして決定する。
一実施形態では、目標ロボット制御モジュール1804は、
第2目標ロボットを制御して、目標ビンを目標ステーションから目標ラックまで搬送することと、
第2目標ロボットを制御して、格納ラックの空き仮置きスペースの下に停留することと、にさらに用いられる。
本出願の第4実施形態の倉庫システムの制御装置1800における各モジュールの機能は、上述した第1実施形態の制御方法に対応する説明を参照することができ、ここでは省略する。
図19を参照して、本出願の第5実施形態に係る倉庫システムの制御装置1900について説明する。
図19に示すように、該倉庫システムの制御装置1900は、以下のモジュールを含む。
マッチング待ち第1ロボット決定モジュール1901は、空き状態にある第1ロボットをマッチング待ち第1ロボットとして選出する。
マッチング待ち通路決定モジュール1902は、目標ビンの位置情報に基づいて、目標ビンが位置する通路をマッチング待ち通路として選出する。
目標通路及び第1目標ロボット決定モジュール1903は、マッチング待ち第1ロボット毎に、マッチング待ち第1ロボットと各マッチング待ち通路との間の距離と、各マッチング待ち通路の割当待ちタスクの数とに基づいて、対応する目標通路及び第1目標ロボットを決定する。
タスク割当モジュール1904は、目標通路の割当待ちタスクを、対応する第1目標ロボットに割り当てる。
一実施形態では、マッチング待ち通路決定モジュール1902は、以下のサブモジュールを含む。
第1マッチング待ち通路決定サブモジュールは、割当待ちタスクを有する通路であって、第1ロボットが存在しない通路を第1マッチング待ち通路として選出し、第1マッチング待ち通路の数が第1マッチング待ちロボットの数よりも少ない場合に、割当待ちタスクを有する通路であって、第1ロボットが存在する通路を第2マッチング待ち通路として選択することに用いられる。
一実施形態では、タスクの割当モジュール1904は、以下のサブモジュールを含む。
割当可能なタスク数算出サブモジュールは、目標通路の割当可能なタスクの数を算出する。
作業領域分割サブモジュールは、割当可能なタスクの数が0より大きい場合に、第1目標ロボットの数に応じて、目標通路において対応数の作業領域を分割する。
割当待ち第1ロボット決定サブモジュールは、割当済みタスクの数がタスクの上限閾値よりも少ない第1目標ロボットを割当待ち第1ロボットとして選出する。
目標タスク割当サブモジュールは、割当待ち第1ロボットと各割当可能なタスクに対応する目標ビンとの間の距離と、割当待ち第1ロボットが各割当可能なタスクに対応する目標ビンに移動するために通過した作業領域の数とに基づいて、目標の割当待ちタスクから目標タスクを決定し、対応する割当待ち第1ロボットに割り当てる。
一実施形態では、割当可能なタスク数算出サブモジュールは、以下のユニットを含む。
第1参照値算出ユニットは、目標通路の割当待ち出庫タスクの数及び空き仮置きスペースの数のうちの最小値と、目標通路の割当待ち入庫タスクの数及び空き格納スペースの数のうちの最小値とを加算して第1参照値を求める。
第2参照値算出ユニットは、マッチング済み第1ロボットの数にタスクの上限閾値を乗算して、全てのマッチング済み第1ロボットの割当済みタスクの総数を減算することにより第2参照値を算出する。
割当可能なタスク数決定ユニットは、第1参照値及び第2参照値のうちの最小値を目標通路の割当可能なタスクの数として選出する。
本出願の第5実施形態の倉庫システムの制御装置1900の各モジュールの機能は、上述した第2実施形態の制御方法に対応する説明を参照することができ、ここでは省略する。
図20を参照して、本出願の第6実施形態に係る倉庫システムの制御装置2000について説明する。
図20に示すように、該倉庫システムの制御装置2000は、以下のモジュールを含む。
移入倉庫エリア及び移出倉庫エリア決定モジュール2001は、各初期倉庫エリアの割当待ちタスクの数及び現在の第2ロボットの数に基づいて、各初期倉庫エリアから移入倉庫エリア及び移出倉庫エリアを決定する。
移出第2ロボット決定モジュール2002は、各移出倉庫エリアにおける移出第2ロボットを決定する。
移入第2ロボット決定モジュール2003は、各移出第2ロボットから各移入倉庫エリアにおける移入第2ロボットを決定し、移入第2ロボットを移出倉庫エリアから対応する移入倉庫エリアに移動する。
第2目標ロボット決定モジュール2004は、マッチング待ち倉庫エリア毎に、マッチング待ち倉庫エリアの空き第2ロボットから、マッチング待ち倉庫エリア内の各目標ビンに対応する第2目標ロボットを決定する。
一実施形態では、移入倉庫エリア及び移出倉庫エリア決定モジュール2001は、以下のサブモジュールを含む。
移入倉庫エリア決定サブモジュールは、初期倉庫エリアの現在の第2ロボットの数が初期倉庫エリアの第2ロボットの割当数よりも少ない場合に、初期倉庫エリアを移入倉庫エリアとして決定する。
移出倉庫エリア決定サブモジュールは、初期倉庫エリアにおける現在の第2ロボットの数が初期倉庫エリアにおける第2ロボットの割当数よりも大きい場合に、初期倉庫エリアを移出倉庫エリアとして決定する。
ここで、初期倉庫エリアにおける第2ロボットの割当数は、初期倉庫システムの未完了タスクの数の合計に対する初期倉庫エリアの未完了タスクの数の比率と、倉庫システムにおける第2ロボットの総数との積である。
一実施形態では、移出第2ロボット決定モジュール2002は、以下のサブモジュールを含む。
第2ロボット移出数算出サブモジュールは、移出倉庫エリアの現在の第2ロボットの数、第2ロボットの数の下限値、第2ロボットの割当数及び空き第2ロボットの数に基づいて、移出倉庫エリアの第2ロボットの移出数を算出する。
移出第2ロボット決定サブモジュールは、移出倉庫エリアの第2ロボットの移出数に基づいて、移出倉庫エリアの移出第2ロボットを決定する。
一実施形態では、移入第2ロボット決定モジュール2003は、以下のサブモジュールを含む。
第2ロボット移入数算出サブモジュールは、移入倉庫エリアの第2ロボットの割当数、現在の第2ロボットの数及び第2ロボットの数の上限値に基づいて、移入倉庫エリアの第2ロボットの移入数を算出する。
参照値算出サブモジュールは、各移入倉庫エリアにおける第2ロボットの移入数の総和に対する移入倉庫エリアにおける第2ロボットの移入数の比率と、各移出倉庫エリアにおける第2ロボットの移入数の総和との積を参照値とする。
第2ロボット実需要数決定サブモジュールは、参照値と、移入倉庫エリアの第2ロボットの移入数とのうちの最小値を、移入倉庫エリアの第2ロボットの実需要数として決定する。
移入第2ロボット決定サブモジュールは、各移出倉庫エリアの移出第2ロボットから、移入倉庫エリアの第2ロボットの実需要数に基づいて、移入倉庫エリアとの距離が最も近い移出第2ロボットを移入倉庫エリアの移入第2ロボットとして選択する。
一実施形態では、第2目標ロボット決定モジュール2004は、以下のサブモジュールを含む。
第2目標ロボット決定サブモジュールは、マッチング待ち倉庫エリアの割当待ちタスクのタイプ及び割当待ちタスクの数に基づいて、マッチング待ち倉庫エリアの空き第2ロボットから、各ステーションに対応する第2目標ロボットを決定する。
タスクマッチングサブモジュールは、ステーションの割当待ちタスクを、ステーションに対応する第2目標ロボットにマッチングする。
一実施形態では、第2目標ロボット決定サブモジュールは、以下のユニットを含む。
第1変動重み算出ユニットは、各割当待ちタスクのタイプに対し、各割当待ちタスクの数の総和に対する割当待ちタスクの数の比率と、割当待ちタスクのタイプの固定重みと、割当待ちタスクのタイプの初期変動重みとに基づいて、割当待ちタスクのタイプの第1変動重みを算出する。
第2目標ロボット割当ユニットは、マッチング待ち倉庫エリアの空き第2ロボットのうちの1つを第2目標ロボットとして、、第1変動重みが最も高い割当待ちタスクのタイプに対応するステーションに割り当てる。
第2変動重み算出ユニットは、各割当待ちタスクのタイプに対し、各割当待ちタスクの数の総和に対する割当待ちタスクの数の比率と、割当待ちタスクのタイプの固定重みと、割当待ちタスクのタイプの第1変動重みとに基づいて、割当待ちタスクのタイプの第2変動重みを算出する。
循環ユニットは、空き第2ロボットの割当待ちの数と割当待ちタスクの数の両者とも0より大きい場合に、第1変動重みの算出ステップ、第2目標ロボットの割当ステップ、第2変動重みの算出ステップを循環させ、割当待ちタスクのタイプの第2変動重みを割当待ちタスクのタイプの初期変動重みとする。
一実施形態では、タスクマッチングサブモジュールは、以下のユニットを含む。
割当値算出ユニットは、ステーションの割当待ちタスクの優先度及び割当待ちタスクに対応する目標ビンとステーションとの間の距離に基づいて、各割当待ちタスクの割当値を算出する。
目標タスク決定ユニットは、ステーションにおける第2目標ロボットの数に応じて、割当待ちタスクから、割当値が最も高い対応数の割当待ちタスクを、目標タスクとして抽出する。
目標タスクマッチングユニットは、各第2目標ロボットに対し、第2目標ロボットと各目標タスクに対応する目標ビンとの間の距離に基づいて、第2目標ロボットが各目標タスクにマッチングするマッチング値を算出し、マッチング値が最も高い目標タスクを選出して第2目標ロボットにマッチングする。
本出願の第6実施形態の倉庫システムの制御装置2000の各モジュールの機能は、上述した第3実施形態の制御方法に対応する説明を参照することができ、ここでは省略する。
図21本出願の一実施形態による電子設備の構成のブロック図である。図21に示すように、電子設備は、メモリ2101と、プロセッサ2102とを含み、メモリ2101は、プロセッサ2102上で実行可能な命令を格納する。上記のいずれかの実施形態における倉庫システムの制御方法は、プロセッサ2102が命令を実行することにより実現される。メモリ2101及びプロセッサ2102の数は、1つ又は複数であってもよい。電子設備は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、大型コンピュータ、および他の適切なコンピュータのような様々な形態のデジタルコンピュータを表すことができる。また、電子設備はパーソナルデジタル処理、携帯電話、スマートフォン、装着可能設備、およびその他の類似のコンピューティングデバイスなどの様々な形態のモバイルデバイスを表すことができる。ここで示した構成要素、それらの接続と関係、およびそれらの機能は例示的なものに過ぎず、本明細書で説明されたものおよび/または要求される本明細書の実施を制限することは意図されない。
電子設備は、外部設備と通信してデータを伝送するための通信インターフェース2103をさらに含むことができる。各設備は、異なるバスを利用して互いに接続し、共通のマザーボードに取り付けられてもよいし、必要に応じて他の方法で取り付けられてもよい。プロセッサ2102は、電子設備内で実行される命令を処理してもよく、また、外部入出力設備(例えば、インターフェースに接続された表示設備)にグラフィックユーザインターフェース(Graphical User Interface,GUI)を表示するための、メモリまたはメモリ上に記憶されたグラフィカル情報の命令を含む。他の実施形態では、必要に応じて、複数のプロセッサおよび/または複数のバスを複数のメモリおよび複数のメモリとともに使用することができる。同様に、複数の電子設備を接続してもよく、各設備は、部分的に必要な動作(例えば、サーバアレイ、ブレードサーバのセット、またはマルチプロセッサシステムとして)を提供する。図7においてプロセッサ701を例とする。該バスは、アドレスバス、データバス、制御バスなどに分けることができる。図21では、表示を容易にするために、太線のみで示されているが、バスが1本のみであることやバスの種類が1つであると意図されない。
選択可能に、特定の実施において、メモリ2101、プロセッサ2102、及び通信インターフェース2103が1つのチップ上に集積されている場合、メモリ2101、プロセッサ2102、及び通信インターフェース2103は、内部インターフェースを介して相互に通信することができる。
なお、上述のプロセッサは、中央プロセッサ(Central Processing Unit、CPU)であってもよく、他の汎用プロセッサ、デジタル信号プロセッサ(Digital Signal Processing、DSP)、特定用途向け集積回路(Application Specific Integrated Circuit、ASIC)、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array、FPGA)又は他のプログラマブル論理デバイス、ディスクリートゲート又はトランジスタ論理デバイス、ディスクリートハードウェアコンポーネントなどであってもよい。汎用プロセッサは、マイクロプロセッサであってもよいし、従来の任意のプロセッサなどであってもよい。特に、プロセッサは、ARM(Advanced RISC Machines)アーキテクチャをサポートするプロセッサであってもよい。
本出願の実施形態は、プロセッサによって実行されると、本出願のいずれかの実施形態において提供される方法を実現するコンピュータ命令を格納する、上記メモリ2101のようなコンピュータ可読記憶媒体を提供する。
選択可能に、メモリ2101は、オペレーティングシステムや少なくとも1つの機能に必要なアプリケーションを記憶することができるプログラムの記憶領域と、音声合成方法に係る電子設備の使用によって生成されたデータなどを記憶することができるデータの記憶領域と、を含むことができる。さらに、メモリ2101は、高速ランダムアクセスメモリを含んでもよく、非一過性の固体記憶装置を含んでもよい。例えば、少なくとも1つの磁気ディスク記憶装置、フラッシュメモリ装置、または他の非一過性の固体記憶装置を含むことができる。いくつかの実施形態では、メモリ2101はオプションとして、プロセッサ2102に対して遠隔的に設定されたメモリを含み、これらの遠隔メモリは、ネットワークを介して音声合成方法に係る電子設備に接続されてもよい。上記のネットワークの例は、インターネット、企業内ネットワーク、ローカルネットワーク、モバイル通信ネットワークおよびその組み合わせを含むが、これらに限定されない。
本明細書において、「1つの実施形態」、「幾つかの実施形態」、「例」、「具体例」或いは「一部の例」などの用語とは、当該実施形態或いは例で説明された具体的特徴、構成、材料或いは特点を結合して、本発明の少なくとも1つの実施形態或いは実施形態に含まれることを意味する。また、説明された具体的特徴、構成、材料或いは特点は、いずれか1つ或いは複数の実施形態または例において適切に結合することが可能である。また、矛盾しない限り、当業者は、本明細書の異なる実施形態または例、および、異なる実施形態または例における特徴を結合したり、組み合わせたりすることができる。
また、用語「第1」、「第2」とは比較的重要性を示している又は暗示しているわけではなく、単に説明のためのものであり、示される技術的特徴の数を暗示するわけでもない。そのため、「第1」、「第2」で限定される特徴は、少なくとも1つの当該特徴を明示又は暗示的に含むことが可能である。本出願の記載の中において、「複数」の意味とは、明確的に限定される以外に、2つ又は2つ以上を意味する。
フローチャート又はその他の方式で説明された、いかなるプロセス又は方法に対する説明は、特定な論理的機能又はプロセスのステップを実現するためのコマンドのコードを実行可能な1つ又はそれ以上のモジュール、断片若しくはセグメントとして理解することが可能であり、さらに、本発明の好ましい実施形態の範囲はその他の実現を含み、示された、又は、記載の順番に従うことなく、係る機能に基づいてほぼ同時にまたは逆の順序に従って機能を実行することを含み、これは当業者が理解すべきことである。
フローチャートに示された、又はその他の方式で説明された論理及び/又はステップは、例えば、論理機能を実現させるための実行可能なコマンドのシーケンスリストとして見なされることが可能であり、コマンド実行システム、装置、又は設備(プロセッサのシステム、又はコマンド実行システム、装置、設備からコマンドを取得して実行することが可能なその他のシステムを含むコンピュータによるシステム)が使用できるように提供し、又はこれらのコマンドを組み合わせて使用するコマンド実行システム、装置、又は設備に使用されるために、いかなるコンピュータ可読媒体にも具体的に実現されることが可能である。
なお、本発明の各部分は、ハードウェア、ソフトウェア、ファームウェア又はこれらの組み合わせによって実現されることができる。上記実施形態において、複数のステップ又は方法は、メモリに記憶された、適当なコマンド実行システムによって実行されるソフトウェア又はファームウェアによって実施されることができる。上述実施形態における方法のステップの全部又は一部は、実行時に実施形態における方法のステップの1つ又はそれらの組み合わせを含むコンピュータ可読記憶媒体に記憶されているプログラムが関連するハードウェアを指示することにより実現されることができる。
また、本発明の各実施形態における各機能ユニットは、1つの処理モジュールに統合されてよく、別個の物理的な個体であってもよく、2つ又は3つ以上のユニットが1つのモジュールに統合されてもよい。上記の統合モジュールは、ハードウェアで実現されてもよく、ソフトウェア機能モジュールで実現されてもよい。上記の統合モジュールが、ソフトウェア機能モジュールで実現され、しかも独立した製品として販売又は使用される場合、コンピュータ可読な記憶媒体に記憶されてもよい。前記記憶媒体は読取専用メモリ、磁気ディスク又は光ディスク等であってもよい。
上記の記載は、単なる本発明の具体的な実施形態に過ぎず、本発明の保護範囲はそれに限定されることなく、当業者が本発明に開示されている範囲内において、容易に想到し得る変形又は置換は、全て本発明の範囲内に含まれるべきである。そのため、本発明の範囲は、記載されている特許請求の範囲に準じるべきである。