(57)【要約】【課題】ピッキング作業で用いられるカート上のコンテナに物品を効率よく割り当てる。【解決手段】物品のピッキング作業を支援する情報処理システムであって、物品がピッキングされるコンテナを搭載するカートについて、ピッキング対象となる物品の管理情報と当該物品がピッキングされるコンテナの識別情報とが対応付けられた物品情報の入力を受け付ける入力部と、物品情報に含まれるコンテナにピッキングされる物品の重複度であるピッキング重複度を算出し、コンテナへの物品の割当案の第１の評価基準とする第１の算出部と、コンテナの識別情報とカートの識別情報とを変数としたときの変数間の相互作用の強度として設定した相互作用モデルと、ピッキング重複度とを用いて最適化計算を実行し、物品をコンテナに割り当てるための割当案を算出する第２の算出部と、を有する。【選択図】  図１
2022002995.tif 000002
【特許請求の範囲】
【請求項１】
物品のピッキング作業を支援する情報処理システムであって、
物品がピッキングされるコンテナを搭載するカートについて、ピッキング対象となる物品の管理情報と当該物品がピッキングされるコンテナの識別情報とが対応付けられた物品情報の入力を受け付ける入力部と、
前記物品情報に含まれるコンテナにピッキングされる物品の重複度であるピッキング重複度を算出し、前記コンテナへの物品の割当案の第１の評価基準とする第１の算出部と、
前記コンテナの識別情報と前記カートの識別情報とを変数としたときの変数間の相互作用の強度として設定した相互作用モデルと、前記ピッキング重複度とを用いて最適化計算を実行し、前記物品を前記コンテナに割り当てるための割当案を算出する第２の算出部と、
を有することを特徴とする情報処理システム。
【請求項２】
請求項１記載の情報処理システムであって、
前記第１の算出部は、複数の異なる評価ポリシを用いて、前記ピッキング重複度を算出し、
前記第２の算出部は、前記算出されたそれぞれの前記ピッキング重複度と、前記相互作用モデルとを用いて前記割当案を算出し、算出した前記割当案のなかから、前記第１の評価基準とは異なる第２の評価基準に基づいて、提示すべき割当案を決定する、
ことを特徴とする情報処理システム。
【請求項３】
請求項２記載の情報処理システムであって、
前記第１の算出部は、前記評価ポリシのうち、重複がない前記物品の数を最小化する評価ポリシを用いて、前記ピッキング重複度を算出する、
ことを特徴とする情報処理システム。
【請求項４】
請求項２記載の情報処理システムであって、
前記第１の算出部は、前記評価ポリシのうち、重複がある前記物品の数を最大化する評価ポリシを用いて、前記ピッキング重複度を算出する、
ことを特徴とする情報処理システム。
【請求項５】
請求項２記載の情報処理システムであって、
前記第１の算出部は、前記カートの移動距離と前記ピッキング重複度とにより定められる評価ポリシを用いて、新たなピッキング重複度を前記第１の評価基準とする、
ことを特徴とする情報処理システム。
【請求項６】
請求項２記載の情報処理システムであって、
前記第２の算出部は、前記物品の総重複数を前記第２の評価基準として、提示すべき割当案を決定する、
ことを特徴とする情報処理システム。
【請求項７】
請求項２記載の情報処理システムであって、
前記第２の算出部は、前記カートの総移動距離を前記第２の評価基準として、提示すべき割当案を決定する、
ことを特徴とする情報処理システム。
【請求項８】
請求項１記載の情報処理システムであって、
前記第２の算出部は、前記相互作用モデルを用いた最適化計算を、アニーリング型計算機により実行する、
ことを特徴とする情報処理システム。
【請求項９】
請求項１記載の情報処理システムであって、
前記第２の算出部は、前記相互作用モデルを用いた最適化計算を、ＣＰＵまたはＧＰＵを有した計算機にインストールされたソフトウェアにより実行する、
ことを特徴とする情報処理システム。
【請求項１０】
コンピュータを実行して、物品のピッキング作業を支援する情報処理システムで行われる情報処理方法であって、
入力部が、物品がピッキングされるコンテナを搭載するカートについて、ピッキング対象となる物品の管理情報と当該物品がピッキングされるコンテナの識別情報とが対応付けられた物品情報の入力を受け付け、
第１の算出部が、前記物品情報に含まれるコンテナにピッキングされる物品の重複度であるピッキング重複度を算出し、前記コンテナへの物品の割当案の第１の評価基準とし、
第２の算出部が、前記コンテナの識別情報と前記カートの識別情報とを変数としたときの変数間の相互作用の強度として設定した相互作用モデルと、前記ピッキング重複度とを用いて最適化計算を実行し、前記物品を前記コンテナに割り当てるための割当案を算出する、
ことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ピッキング作業を支援する情報処理システムおよび情報処理方法に関する。
【背景技術】
【０００２】
ネット通販市場の拡大に伴い、多品種少量のオーダーが増える中、倉庫内ピッキング業務の課題である人手不足の解消、生産性の向上が急務となっている。物流倉庫内のピッキング業務では、ピッキングするためのカートやＩｏＴ（Internet of Things）システムが活用されている。倉庫内ピッキングの工夫としてよく知られているのは、複数の出荷先間口の同時ピッキング（マルチピッキング）による効率化などが挙げられる。このような技術として、商品収集用のコンテナを有し、搬送経路に沿って移動する搬送装置を用いて、多数の商品を収容する複数の商品棚から所定の商品をピッキングする技術がある（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２６９８６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ピッキングカートによる作業効率向上を図るためには、ピッキング作業者の移動距離の短縮や、複数の出荷先間口の同時ピッキング（マルチピッキング）による効率化により性能向上を検討することが一般的である。特許文献１では、同一カート上のコンテナ内商品の重複度を上げることにより、マルチピッキングの効率向上とピッキング作業者の移動距離の短縮を行っている。しかし、当該文献では、一定のルールに基づいてカートに搭載されたコンテナの割当てを決定するため、積み荷となる物品が必ずしもカート上のコンテナに効率よく割当てられていなかった。
【０００５】
本発明の一側面は、ピッキング作業で用いられるカート上のコンテナに物品を効率よく割り当てることが可能な情報処理システムおよび情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様にかかる情報処理システムは、物品のピッキング作業を支援する情報処理システムであって、物品がピッキングされるコンテナを搭載するカートについて、ピッキング対象となる物品の管理情報と当該物品がピッキングされるコンテナの識別情報とが対応付けられた物品情報の入力を受け付ける入力部と、前記物品情報に含まれるコンテナにピッキングされる物品の重複度であるピッキング重複度を算出し、前記コンテナへの物品の割当案の第１の評価基準とする第１の算出部と、前記コンテナの識別情報と前記カートの識別情報とを変数としたときの変数間の相互作用の強度として設定した相互作用モデルと、前記ピッキング重複度とを用いて最適化計算を実行し、前記物品を前記コンテナに割り当てるための割当案を算出する第２の算出部と、を有することを特徴とする情報処理システムとして構成される。
【発明の効果】
【０００７】
本発明の一態様によれば、ピッキング作業で用いられるカート上のコンテナに物品を効率よく割り当てることができる。
【図面の簡単な説明】
【０００８】
【図１】本実施例におけるサーバ装置の機能構成例を示すブロック図である。
【図２】サーバ装置のコンピュータの概略図である。
【図３】本システムで行われる処理（割当案提示処理）の処理手順を示すフローチャートである。
【図４】物品リストの例を示す図である。
【図５】Ｓ２０２において、演算部がピッキング重複度を算出する場合の処理手順を示すフローチャートである。
【図６】演算部が、コンテナごとの物品の重複の有無および重複数をカウントした結果を示す重複数カウントテーブルの例を示す図である。
【図７】評価設定情報の例を示す図である。
【図８】最適な割当案の評価方法を定めた割当案評価情報の例を示す図である。
【図９】演算部が最終的に提示すべきと判断した割当案の例を示す図である。
【図１０】作業者が、当該割当案にしたがってピッキングする様子を示すイメージ図である。
【図１１】カートの移動パターンの例を示す図である。
【図１２】カートの移動パターンの他の例を示す図である。
【図１３】移動距離情報の例を示す図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照して本発明の実施形態を説明する。以下の記載および図面は、本発明を説明するための例示であって、説明の明確化のため、適宜、省略および簡略化がなされている。本発明は、他の種々の形態でも実施する事が可能である。特に限定しない限り、各構成要素は単数でも複数でも構わない。
【００１０】
図面において示す各構成要素の位置、大きさ、形状、範囲などは、発明の理解を容易にするため、実際の位置、大きさ、形状、範囲などを表していない場合がある。このため、本発明は、必ずしも、図面に開示された位置、大きさ、形状、範囲などに限定されない。
【００１１】
以下の説明では、「テーブル」、「リスト」等の表現にて各種情報を説明することがあるが、各種情報は、これら以外のデータ構造で表現されていてもよい。データ構造に依存しないことを示すために「ＸＸテーブル」、「ＸＸリスト」等を「ＸＸ情報」と呼ぶことがある。識別情報について説明する際に、「識別情報」、「識別子」、「名」、「ＩＤ」、「番号」等の表現を用いた場合、これらについてはお互いに置換が可能である。
【００１２】
同一あるいは同様な機能を有する構成要素が複数ある場合には、同一の符号に異なる添字を付して説明する場合がある。ただし、これらの複数の構成要素を区別する必要がない場合には、添字を省略して説明する場合がある。
【００１３】
また、以下の説明では、プログラムを実行して行う処理を説明する場合があるが、プログラムは、プロセッサ（例えばＣＰＵ（Central Processing Unit）、ＧＰＵ（Graphics Processing Unit））によって実行されることで、定められた処理を、適宜に記憶資源（例えばメモリ）および／またはインターフェースデバイス（例えば通信ポート）等を用いながら行うため、処理の主体がプロセッサとされてもよい。同様に、プログラムを実行して行う処理の主体が、プロセッサを有するコントローラ、装置、システム、計算機、ノードであってもよい。プログラムを実行して行う処理の主体は、演算部であれば良く、特定の処理を行う専用回路（例えばＦＰＧＡ（Field-Programmable Gate Array）やＡＳＩＣ（Application Specific Integrated Circuit））を含んでいてもよい。
【００１４】
プログラムは、プログラムソースから計算機のような装置にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバまたは計算機が読み取り可能な記憶メディアであってもよい。プログラムソースがプログラム配布サーバの場合、プログラム配布サーバはプロセッサと配布対象のプログラムを記憶する記憶資源を含み、プログラム配布サーバのプロセッサが配布対象のプログラムを他の計算機に配布してもよい。また、以下の説明において、２以上のプログラムが１つのプログラムとして実現されてもよいし、１つのプログラムが２以上のプログラムとして実現されてもよい。
【００１５】
以下に本実施の形態にかかる情報処理システムおよび情報処理方法を一般的なコンピュータであるサーバ装置に適用した場合について詳細に説明するが、この例に限らず、プログラムを実行して情報処理システムの機能を実現可能な様々な装置や機器に適用することができる。
【００１６】
図１は、本実施例におけるサーバ装置１の機能構成例を示すブロック図である。図１に示すように、サーバ装置１は、倉庫等の保管場所に保管されている商品や製品をはじめとする物品がピッキングされるコンテナ１０２を搭載可能なカート１００に、ネットワークＮを介して接続される。サーバ装置１は、ピッキング対象となる物品を、カート１００に搭載されるコンテナ１０２に効率よく適切に割り当てるための割当案を生成するサーバである。ネットワークＮは、有線、無線を問わず、従来から知られている一般的なネットワークを用いることができる。また、カート１００には、サーバ装置１から上記割当案を受信する受信部、当該受信部により受信された上記割当案を作業者に提示するため表示部、当該表示部に上記割当案を出力する制御部等を備えたコンピュータ１０１を有している。
【００１７】
サーバ装置１は、ピッキング対象となる物品のリストである物品リスト３１の入力を受け付ける入力部２と、本システムで用いられる各種データを記憶する記憶部３と、上記物品リストと所定の算式を用いて上記割当案を生成する演算部４とを有している。記憶部３に記憶される各種データとしては、例えば、上記物品リスト３１、コンテナ１０２にピッキングする物品の重複度や、物品をピッキングするためのカート１００の移動距離を用いて定められる、実運用に適した割当案を評価するための評価ポリシを定めた評価設定情報３２、重複度の定義をいくつか変えて最適化計算して得られた複数の割当案のなかで最も優れた効率のよい割当案を選択するための評価方法を定めた割当案評価情報３３が含まれる。
【００１８】
後述するように、演算部４は、記憶部３に記憶された相互作用モデル３５を読み出すとともに、物品リスト３１、評価設定情報３２を読み出す。演算部４は、読み出した物品リスト３１、評価設定情報３２に含まれる情報を、相互作用モデル３５で用いるパラメータである相互作用の強度３５１や変数情報３５２として設定し、所定の評価基準で、物品をカート１００に搭載されるコンテナ１０２に効率よく適切に割り当てるための割当案９１を生成する。図１では、相互作用モデル３５、相互作用の強度３５１、変数情報３５２が、記憶部３から読み出された状態を示している。
【００１９】
サーバ装置１は、例えば、図２（コンピュータの概略図）に示すような、ＣＰＵ２０１と、メモリ２０２と、ＨＤＤ(Hard Disk Drive)等の外部記憶装置２０３と、ＣＤ(Compact Disk)やＤＶＤ(Digital Versatile Disk)等の可搬性を有する記憶媒体２０８に対して情報を読み書きする読書装置２０７と、キーボードやマウス等の入力装置２０６と、ディスプレイ等の出力装置２０５と、通信ネットワークに接続するためのＮＩＣ(Network Interface Card)等の通信装置２０４と、これらを連結するシステムバス等の内部通信線(システムバスという)２０９と、を備えた一般的なコンピュータにより実現できる。
【００２０】
例えば、サーバ装置１の記憶部３に記憶されたデータは、ＣＰＵ２０１がメモリ２０２または外部記憶装置２０３から読み出して利用することにより実現可能である。また、サーバ装置１が有する入力部２、演算部４は、ＣＰＵ２０１が外部記憶装置２０３に記憶されている所定のプログラムをメモリ２０２にロードして実行することにより実現可能である。サーバ装置１は、ＣＰＵ２０１が入力装置２０６を動作させて問い合わせ入力部２の入力機能を実現してもよい。サーバ装置１は、ＣＰＵ２０１が出力装置２０５を動作させて記憶部３に記憶されたデータを出力してもよい。また、サーバ装置１は、ＣＰＵ２０１が通信装置２０４を動作させてカート１００に搭載されたコンピュータ１０１との間で通信してもよい。
【００２１】
上述した所定のプログラムは、読書装置２０７を介して記憶媒体２０８から、あるいは、通信装置２０４を介してネットワークから、外部記憶装置２０３に記憶(ダウンロード)され、それから、メモリ２０２上にロードされて、ＣＰＵ２０１により実行されるようにしてもよい。また、読書装置２０７を介して、記憶媒体２０８から、あるいは通信装置２０４を介してネットワークから、メモリ２０２上に直接ロードされ、ＣＰＵ２０１により実行されるようにしてもよい。
【００２２】
以下では、サーバ装置１の各部が、ハードウェアとしては一般的なコンピュータに設けられているが、これらの全部または一部が、クラウドのような１または複数のコンピュータに分散して設けられ、互いに通信することにより同様の機能を実現してもよい。サーバ装置１の各部の動作、保持するデータの例については、フローチャートを用いて説明する。
【００２３】
図２では、サーバ装置１のハードウェアの一例について説明したが、カート１００に搭載されるコンピュータ１０１についても同様の構成を有したコンピュータを用いることができる。
【００２４】
図３は、本システムで行われる処理（割当案提示処理）の処理手順を示すフローチャートである。割当案提示処理では、まず、入力部２は、物品リスト３１の入力を受け付け、記憶部３に格納する（Ｓ２０１）。例えば、入力部２は、ＵＳＢ等の記憶媒体に記憶された物品リスト３１を読み取ったり、あるいはキーボード等の入力装置から物品リスト３１に記載された情報の入力を受け付ける。
【００２５】
図４は、物品リスト３１の例を示す図である。図４では、ある１つのカート（カート１）についての物品リスト３１を例示しているが、割当案の送信対象となるカートが複数ある場合には、これらの他のカートについても同様のレイアウトで物品リスト３１が定められている。
【００２６】
図４に示すように、物品リスト３１は、コンテナ１０２を識別するためのコンテナＩＤと、当該コンテナに載せられる物品の物品名およびその数である物品数と、当該物品の配送日時および配送先と、当該物品が置かれている棚の名称と、当該棚が配置されている通路とが対応付けて記憶されている。図４では、例えば、カート１には、コンテナＩＤ「１」で識別されるコンテナに、物品の一例である商品ａ、商品ｂを、それぞれ３０個、１０個ずつピッキングする必要があることを示している。また、これらの商品は、２０１９年１月３１日にＡ店に配送するスケジュールであり、商品ａは、通路１に配置されている棚Ｓに置かれており、商品ｂは、通路３に配置されている棚Ｔに置かれていることを示している。さらに、当該カート１には、コンテナＩＤ「２」で識別されるコンテナに、上記商品ｂ、商品ｃ、商品ｅを、それぞれ１４個、２０個、１２個ずつピッキングする必要があることを示している。また、これらの商品は、２０１９年１月３１日にＢ店に配送するスケジュールであり、商品ｂは、上記棚Ｔに置かれており、商品ｃは、通路４に配置されている棚Ｕに置かれ、商品ｅは、通路５に配置されている棚Ｖに置かれていることを示している。
【００２７】
図３に戻り、Ｓ２０２では、演算部４は、第１の評価基準となる、コンテナ１０２の組合せごとの商品のピッキング重複度または／及びカート１００の移動距離を算出する。ピッキング重複度の算出方法に関しては、図５〜図７を用いて後述する。コンテナ１０２の組合せごとのピッキング重複度とは、例えば、カート１に搭載されているコンテナ１０２のそれぞれにピッキングされる物品が、コンテナ１０２同士でどの程度重複しているのかを示す指標である。また、カート１００の移動距離とは、そのようなピッキング重複度で物品をピッキングするときに算出されるカート１００の移動距離である。
【００２８】
Ｓ２０３では、演算部４は、Ｓ２０２で算出したピッキング重複度を係数とした目的関数を用いて最適化計算を実行し、ピッキング対象となる物品を、カート１００に搭載されるコンテナ１０２に効率よく適切に割り当てるための割当案を算出する。最適化計算は、例えば、演算部４が、ＣＭＯＳ(Complementary Metal-Oxide Semiconductor)アニーリングマシンなどのアニーリング型計算機や、ＣＰＵやＧＰＵ上にソフトウェア実装された最適化問題を解くためのソフトウェアを用いて実行することができる。後述するように、本実施例では、演算部４は、異なる割当案を複数生成することができる。
【００２９】
Ｓ２０４では、演算部４は、入力部２が、追加で割当案を生成する旨の指示を受け付けたか否かを判定する。演算部４は、入力部２が、追加で割当案を生成する旨の指示を受け付けたと判定した場合（Ｓ２０４；Ｙｅｓ）、Ｓ２０２に戻り、例えば、後述するように複数の評価ポリシのなかで既に計算に用いた評価ポリシとは異なる評価ポリシを用いて目的関数の重み算出を行い、以降の処理を繰り返す。一方、演算部４は、入力部２が、追加で割当案を生成する旨の指示を受け付けていないと判定した場合（Ｓ２０４；Ｎｏ）、さらに割当案を生成しないと判断し、次のステップに進む。
【００３０】
Ｓ２０５では、演算部４は、業務に応じて優先されるべき第２の評価基準により、算出された割当案の中からどの割当案が適切か評価し、適切であると評価した割当案を出力する。割当案の評価方法については、図８を用いて後述する。
【００３１】
Ｓ２０６では、演算部４は、Ｓ２０５で出力した割当案をカート１００に送信する。なお、演算部４は、評価対象となる割当案のうち、上記第２の評価基準を満たした割当案の有無を判定し、上記第２の評価基準を満たした割当案がないと判定した場合には、Ｓ２０２に戻り、既にピッキング重複度を算出したときとは異なる制約条件で、再度、ピッキング重複度または／及びカート１００の移動距離を算出し、以降の処理を繰り返せばよい。
【００３２】
＜割当案の算出＞
Ｓ２０２において、演算部４がカート１００などの搬送器にコンテナ１０２を割り当てる問題は、割当問題やマッチング問題といった、組合せ最適化問題として定式化することができる。しかし、割当問題やマッチング問題は、ＮＰ困難な問題に分類され、大域的最適解を全探索により見つけることは、問題規模が大きくなるにつれ劇的に計算時間が増大し、現実的な時間で解くことは困難となる。このような問題は、シミュレーテッド・アニーリングなどのヒューリスティックな手法などを用いて、高速に大域的最適解を近似的に求めることが有効である。
【００３３】
この場合、最適化すべき目的関数の定式化をできたとしても、実際の業務において何が重要な評価指標となるかは状況に応じてさまざまであり、その評価指標をどのように求めるかにより結果が大きく異なる。すなわち、目的関数を、以下に示す数１のような形で表現したとする。
【００３４】
【数１】
2022002995.tif 000003
【００３５】
ここでｘ＝｛ｘ＿１，ｘ＿２，…ｘ＿ｋ，…, ｘ＿Ｎ｝はＮ個の決定変数の集合であり、ｋはｘの集合元を指定するための添え字である。係数ωｋは、ｋごとに異なる値をもつ与えられた定数である。このとき、ωkをどのように与えるかは非常に重要であり、また、現実の問題にあてはめたとき、算出された解（割当案）が業務基準を満たすものが最適解になるような理にかなった定式になっている必要がある。本実施例では、最小化すべき目的関数の係数、すなわちコンテナ１０２の組合せごとの重みに、生産効率を向上させる指標を与える。これにより、高いピッキング効率と動線短縮を実現する、カート１００へのコンテナ１０２の割当てを算出できる情報処理システムを提案する。
【００３６】
また、この重みの値は、以下に示す数２のような、統計力学における磁性体モデルであるイジングモデルなどの、相互作用モデルの動作原理を応用したアニーリング型計算機などにも用いることができる。
【００３７】
【数２】
2022002995.tif 000004
【００３８】
このようなモデルによれば、高速で高精度な大域的最適解の近似解を求め、生産性の向上を図ることも可能である。この場合、数２の係数Ｊｉｊにあたる部分が、数１のωｋに対応する。アニーリング計算機の内部では、割当案の算出に関する制約条件を変数間の相互作用の強度として設定した相互作用モデルを演算することで、制約条件を満たす割当案を、相互作用モデルを用いて計算することができる。
【００３９】
アニーリング型計算機は、特定の最適化問題を解くために用いられる演算装置であり、本実施例ではハードウェアを想定している。アニーリング型計算機としては、例えば、従来から知られているように、ＣＭＯＳ集積回路や、ＦＰＧＡ上の論理回路として実装された構成を採用することができる。本実施例では、このような構成を想定して説明するが、相互作用モデルに置き換えられた最適化問題を解くことが可能であれば、他の種類の装置でも実現可能である。
【００４０】
具体的には、アニーリング方式において電子回路(デジタル回路など)で実装するハードウェアだけでなく、超伝導回路などで実装する方式でもよい。また、アニーリング方式以外にてイジングモデルを実現するハードウェアでもよい。例えばレーザーネットワーク方式（光パラメトリック発振）・量子ニューラルネットワークなどが知られている。また、一部の考え方が異なるものの、イジングモデルで行う計算をアダマールゲート、回転ゲート、制御ＮＯＴゲートといったゲートで置き換えた量子ゲート方式も、本実施例のアニーリングマシンとして採用することができる。
【００４１】
（実施例１）
＜＜目的関数の重みの算出方法＞＞
＜重複度の算出＞
第１の評価基準をピッキング重複度としたときに、その算出する方法を具体的に説明する。ここでは、商品リスト３１が図４に示したようなデータ構造を有している場合を想定する。すなわち、カート１００にコンテナ１０２を割り当てる際に考えられる自由度（１）物品の識別情報（例えば、商品の番号）、（２）コンテナの識別情報（例えば、コンテナの番号）、（３）搬送器の識別情報（例えば、カートの番号）のうち、商品は既にどのコンテナに入るか決められている場合を想定する。これにより、決定変数の自由度は、（２）、（３）のみとなる。つまり、（２）、（３）を制約条件として、決定変数の取り得る範囲を与えることができる。
【００４２】
また、カート１００に積載可能なコンテナ１０２の数をＲとすると、「Ｒ以下のコンテナの組」を、のべカート数分作る問題と考えることができる。以下ではＲ＝３の場合を例示しているが、本システムの適用環境に応じて適宜その値を変えて適用することができる。
【００４３】
図５は、Ｓ２０２において、演算部４がピッキング重複度を算出する場合の処理手順を示すフローチャートである。まず、演算部４は、Ｓ２０１で記憶部３に記憶された物品リスト３１を読み出して、割当案の送信対象とするカート１００に積載されるコンテナ１０２ごとに物品の重複の有無および重複数をカウントする（Ｓ４０１、Ｓ４０２）。本実施例では、コンテナ１からコンテナ３までの３つのコンテナのそれぞれにピッキングして載せられる物品の重複の有無、および重複数をカウントする。
【００４４】
図６は、演算部４が、コンテナごとの物品の重複の有無および重複数をカウントした結果を示す重複数カウントテーブル６１の例を示す図である。図６では、ある１つのカート（カート１）についての重複数カウントテーブル６１を例示しているが、カートが複数ある場合には他のカートについても同様のレイアウトで重複数カウントテーブル６１が出力される。
【００４５】
図６に示すように、重複数カウントテーブル６１は、割当案の送信対象とするカート１００に積載されるコンテナ１０２の識別情報であるコンテナＩＤと、当該コンテナにピッキングして載せられる物品を示す物品情報と、物品の重複の有無および重複数とが対応付けて記憶されている。図６では、例えば、コンテナ１に載せられる物品は物品ａ〜物品ｋまでの１０種類、コンテナ２に載せられる物品は物品ｂ、物品ｅ、物品ｇ、物品ｈの４種類、コンテナ３に載せられる物品は物品ｃ、物品ｅ、物品ｆ、物品ｇ、物品ｋの５種類であることを示している。また、これらのコンテナ間で重複せずにピッキングされる物品の種類の数（無重複数）は５であり、これらのコンテナ間で２つのコンテナに重複してピッキングされる物品の種類の数（二重複数）は４であり、これらのコンテナ間で３つのコンテナに重複してピッキングされる物品の種類の数（三重複数）は２であることを示している。さらに、演算部４は、上記二重複数および上記三重複数との和を総重複数として算出する。カート１００に積載可能なコンテナ１０２の数Ｒを一般化した場合は、上記二重複からＲ重複までの和を算出し、第２の評価基準（後述）として定義する。
【００４６】
図６では、演算部４は、物品の種類について重複の有無および重複数を算出した。しかし、同じ種類の物品でも異なる棚に置かれていたり、あるいは同じ種類の物品でも同じ棚の異なる位置に置かれている場合もあるため、図６における物品情報に替えて、棚番号や棚の段数など、物品の位置情報を用いてもよい。この場合、複数物品を移動せずにピッキングできるため、カート１００の移動距離の削減効果がある。
【００４７】
続いて、図５に戻り、演算部４は、評価設定情報３２の中から、ピッキング重複度の算出において適用する評価ポリシを読み出し、読み出した評価ポリシに対応付けて定められた、重複度や移動距離に対する評価値を示す設定値と重複数カウントテーブル６１のそれぞれの重複数とを乗じた値を、算出すべき新たな重複度とし、上記乗じた値が所定の閾値に満たない場合は、当該乗じた値を０とする（Ｓ４０３）。なお、カートの移動距離を評価ポリシとして用いる場合については、実施例２でさらに具体的に説明する。
【００４８】
図７は、評価設定情報３２の例を示す図である。図７に示すように、評価設定情報３２は、設定されている評価ポリシを識別するための設定ＩＤと、当該設定ＩＤにより識別される評価ポリシと、当該評価ポリシにより定められる設定値とが対応付けて記憶されている。図７では、例えば、設定ＩＤ「１」で識別される評価ポリシは、二重複を重視する評価ポリシであり、重複無しの場合（無重複数）については「０」ポイント、二重複の場合（二重複数）については「２」ポイント、三重複の場合（三重複数）については「１」ポイントとして、重複度が算出されることを示している。演算部４は、図５に示した物品の重複の有無および重複数に、それぞれの重複数に対応した設定値を図７に示した評価設定情報３２の設定値を乗じて、重複度を算出する。例えば、設定１の場合には、重複度は（５×０）＋（４×２）＋（２×１）＝１０と算出される。評価設定情報３２に記憶されている評価ポリシの中でどの評価ポリシを用いるかについては、本システムの適用環境に応じて、実運用に適した評価ポリシを定めることができる。
【００４９】
図６に戻り、演算部４は、割当案の送信対象とするカート１００に積載されるコンテナ１０２のすべてについて重複の組み合わせを確認したか否かを判定し（Ｓ４０４）、上記コンテナ１０２のすべてについて重複の組み合わせを確認していないと判定した場合（Ｓ４０４；Ｎｏ）、Ｓ４０１に戻り、残りのコンテナ１０２について、以降の処理を行い、重複の組み合わせを確認する。
【００５０】
一方、演算部４は、上記コンテナ１０２のすべてについて重複の組み合わせを確認したと判定した場合（Ｓ４０４；Ｙｅｓ）、Ｓ４０３で最終的に算出した重複度を目的関数の重みとして設定する（Ｓ４０５）。
【００５１】
上述した方法では、最適化問題の目的関数として、全てのコンテナについて物品の重複度の合計を最大化あるいは最小化することで、物品を同時に複数コンテナにピッキングを行うことができ、マルチピッキング効率向上とカートの移動距離短縮を実現できる。図５に示した処理が終了すると、図３に示したＳ２０３の処理に進み、演算部４は、Ｓ２０２で算出したピッキング重複度を係数とした目的関数を用いて最適化計算を実行し、割当案を算出することとなる。続いて、図３のＳ２０５における割当案の評価方法について説明する。
【００５２】
＜第２の評価基準での評価方法＞
Ｓ２０５では、演算部４は、重複度の定義をいくつか変えて最適化計算し、定義されたそれぞれの重複度について割当案を出力した後、どの割当て案が最も優れているか比較し、最適な割当案を選定する。
【００５３】
図８は、最適な割当案の評価方法を定めた割当案評価情報３３の例を示す図である。図８に示すように、割当案評価情報３３は、評価値を識別するための設定ＩＤと、当該設定ＩＤで識別される設定値とが対応付けて記憶されている。図８では、例えば、設定ＩＤ「１」で識別される設定値は、物品ＩＤの総重複数を重視し、当該重複数が最も多い割当案を最適な割当案とする設定であることを示している。また、設定ＩＤ「２」で識別される設定値は、棚番号の総重複数を重視し、当該重複数が最も多い割当案を最適な割当案とする設定であることを示している。さらに、設定ＩＤ「３」で識別される設定値は、棚ではなく物品自体の位置情報の重複数を重視し、当該重複数が最も多い割当案を最適な割当案とする設定であることを示している。さらに、設定ＩＤ「４」で識別される設定値は、割当案の送信対象とするカート１００の総移動距離を重視し、当該移動距離が最も少ない割当案を最適な割当案とする設定であることを示している。本実施例では、割当案の送信対象とするカート１００が１台である前提で説明しているが、割当案の送信対象とするカート１００が複数ある場合には全てのカート１００の総移動距離が最も最も少ない割当案を最適な割当案とすればよい。演算部４は、このようなそれぞれの評価方法で割当案を評価する。その後、演算部４は、それぞれの評価方法で割当案を評価した結果を出力し、出力された割当案の中でユーザの要求を満たす割当案を、提示すべき割当案と判断し、Ｓ２０６において、当該割当案をカート１００に送信することとなる。なお、設定ＩＤ「４」で示したカートの総移動距離を評価する場合については、実施例２でさらに具体的に説明する。上記ユーザの要求を満たす割当案は、ユーザ業務の性質や環境に応じて異なるため、当該ユーザにより、あらかじめ上記カートの総移動距離を含めるか否かを定めておけばよい。
【００５４】
図９は、演算部４が最終的に提示すべきと判断した割当案の例を示す図である。図９に示すように、提示される割当案９１は、割当案の送信対象となるカート１００を識別するためのカートＩＤと、当該カートに積載されているコンテナ１０２を識別するためのコンテナＩＤと、当該コンテナにピッキングする物品を識別するための物品ＩＤと、当該物品が置かれている棚を識別するための棚番号および当該棚が配置されている通路を識別するための通路番号とが対応付けて記憶されている。図９では、例えば、カート１の作業者は、まず、コンテナ１に載せる物品ａ、ｂを、それぞれ通路１にある棚Ｓ、通路３にある棚Ｔからピッキングした後、続いて、コンテナ５に載せる物品ａを、通路１にある棚Ｓからピッキングし、さらに、コンテナ６に載せる物品ｂ、ｃ、ｄを、それぞれ通路３にある棚Ｔ、通路４にある棚Ｕ、通路８にある棚Ｖからピッキングする手順が最適なピッキングの手順であることを示している。演算部４は、このような第２の評価基準で決定された割当案を出力し、各カートへ送信する。
【００５５】
図１０は、作業者が、当該割当案にしたがってピッキングする様子を示すイメージ図である。図１０に示すように、作業者Ｗは、図９に示した割当案に従って、まず、コンテナ１に物品ａ、ｂをピッキングし（手順（１））、次に、コンテナ５に物品ａをピッキングし（手順（２））、最後に、コンテナ６に物品ｂ、ｃ、ｄをピッキングする（手順（３））。このように、異なるコンテナに同じ物品を同時にピッキングすることで、物品のピッキング工数を削減することができる。
【００５６】
（実施例２）
＜ピッキング作業者の移動距離の短縮＞
ピッキング作業者の移動距離の短縮効果をさらに上げるためには、評価ポリシとして、カートの移動距離を最小とするための最適なカートの割り当てを行える目的関数の重みを算出することが望ましい。そこで、以下では、その場合の重みの算出方法を具体的に説明する。また、以下では、あらかじめ定められた移動パターンにしたがってカート１００が移動する場合を前提に説明するが、当移動パターンは、本システムが適用される環境に応じて適宜定めればよい。
【００５７】
図１１は、カートの移動パターンの例を示す図である。図１１に示すように、カート１００は、スタート位置から、棚Ｓと棚Ｖとの間の通路を方向１１０１に向かって進み、棚Ｔと棚Ｕとの間まで到達した場合に通路１を方向１１０２に向かって進む。さらに、棚Ｕと棚Ｔではない向かいの棚との間を方向１１０１とは逆の方向１１０３に向かって進み、棚Ｖと棚Ｓではない向かいの棚との間まで到達した場合に通路１と同じ方向１１０４に向かって進む。そして、最後に、方向１１０１、方向１１０３と同じ方向１１０５に向かって、ゴールまで進むことができる。図１１においては、各方向は一方通行に進むことを表している。このように、作業者がカート１００に送信された割当案を確認し、ピッキングされる物品が置かれた棚の間をコの字型に進んで物品をピッキングすることで、カートの移動距離を最短とすることができ、その結果、ピッキング作業者の移動距離を最小とすることができる。
【００５８】
また、他の例として、カート１００に送信された割当案に、当該カート１００に積載されるコンテナ１０２にピッキングする物品がない場合には、さらに、カートの移動距離を短縮することができる。
【００５９】
図１２は、カートの移動パターンの他の例を示す図である。図１２に示すように、カート１００は、スタート位置から、棚Ｓと棚Ｖとの間の通路を方向１２０１に向かって進み、棚Ｔと棚Ｕとの間まで到達した場合に通路１を方向１２０２に向かって進む。図１１の例では、その後、さらに、棚Ｕと棚Ｔではない向かいの棚との間を方向１１０１とは逆の方向１１０３に向かって進んだが、作業者が、カート１００に送信された割当案に、当該カート１００に積載されるコンテナ１０２にピッキングする物品がないことを確認した場合、上述した方向１１０３と同方向に進むのではなく、方向１２０２と同じ方向１２０３に向かって、ゴールまで進むことができる。このように、作業者がカート１００に送信された割当案を確認し、カート１００に送信された割当案に、当該カート１００に積載されるコンテナ１０２にピッキングする物品がない場合には、物品が置かれていない棚をショートカットする方向に進むことで、カートの移動距離をさらに短縮とすることができ、その結果、ピッキング作業者の移動距離をより一層最小とすることができる。
【００６０】
図１１や図１２に示した移動距離は、例えば、演算部４が、カート１００に送信される割当案と、図１３に示す移動距離情報１３０１とを用いて算出すればよい。移動距離情報１３０１は、図１に示した移動距離情報３４と同様の情報である。
【００６１】
図１３は、移動距離情報１３０１の例を示す図である。図１３に示すように、移動距離情報１３０１は、棚間の通路の起点となる位置（図１３では位置１）と、棚間の通路の終点となる位置（図１３では位置２）と、位置１と位置２との間の距離と、当該距離を棚の数に換算した棚スコアとが対応付けて記憶されている。図１３では、例えば、棚Ｓから棚Ｔまでの距離はＸＸメートルであり、当該距離を棚数に換算した場合には５棚分であることを示している。
【００６２】
すなわち、演算部４は、記憶部３に記憶されている図１３に示した移動距離情報１３０１を読み出し、読み出した移動距離情報１３０１に記憶されている距離や棚スコアと、図４に示した物品リスト３１、図６に示した重複数カウントテーブル６１から、割当案の送信対象とするカート１００の移動距離を算出する。そして、演算部４は、算出した移動距離を第１の評価基準に追加し、目的関数の重みとする。例えば、演算部４は、図５に示したＳ４０３において、評価設定情報３２の中から、移動距離を含む評価ポリシ（図７では、設定４）を読み出し、読み出した評価ポリシの移動距離に、上記算出した移動距離を設定する。そして、演算部４は、読み出した評価ポリシに設定されている設定値と重複数カウントテーブル６１のそれぞれの重複数とを乗じた値に、設定した上記移動距離とを加算した値を、算出すべき重複度とする。
【００６３】
さらに、演算部４は、図３に示したＳ２０５において、上記移動距離を含む第２の評価基準（図８では設定４）により割当案を評価し、割当案の送信対象とするカート１００の総移動距離（カート１００が複数ある場合にはそれぞれのカートの移動距離を合計した移動距離）が最も少ない割当案を最適な割当案とする。これにより、カートの移動距離を考慮することで、ピッキング作業者の移動距離の短縮効果をさらに向上させることができる。
【００６４】
このように、上記実施例で示した物品のピッキング作業を支援する情報処理システム（例えば、サーバ装置１）において、商品や製品等の物品がピッキングされるコンテナ１０２を搭載するカート１００について、ピッキング対象となる物品の管理情報（例えば、物品名、物品数）と当該物品がピッキングされるコンテナの識別情報（例えば、コンテナＩＤ）とが対応付けられた物品情報（例えば、物品リスト３１）の入力を受け付ける入力部２と、上記物品情報に含まれるコンテナにピッキングされる物品の重複度であるピッキング重複度を算出し、上記コンテナへの物品の割当案の第１の評価基準とする第１の算出部（例えば、演算部４）と、上記コンテナの識別情報と上記カートの識別情報とを変数としたときの変数間の相互作用の強度として設定した相互作用モデルと、上記ピッキング重複度とを用いて最適化計算を実行し、上記物品を上記コンテナに割り当てるための割当案（例えば、割当案９１）を算出する第２の算出部（例えば、演算部４）と、を有するので、ルールベース解法のアルゴリズムの解精度を超えつつ、大規模なデータを取り扱いが可能となる。また、適切な指標を用いて、大域的最適値に近い、カートへのコンテナ割当案を算出することができ、マルチピッキングの効率の向上により、作業時間の短縮を実現することができる。その結果、ピッキング作業の生産性を向上させることができる。
【００６５】
また、上記第１の算出部は、複数の異なる評価ポリシ（例えば、評価設定情報３２）を用いて、上記ピッキング重複度を算出し、上記第２の算出部は、上記算出されたそれぞれの上記ピッキング重複度と、上記相互作用モデルとを用いて上記割当案を算出し、算出した上記割当案のなかから、上記第１の評価基準とは異なる第２の評価基準に基づいて、提示すべき割当案を決定するので、複数の割当案の中から実運用に適した割当案を選択して作業者に提示することができる。
【００６６】
また、上記第１の算出部は、上記評価ポリシのうち、重複がない上記物品の数を最小化する評価ポリシ（例えば、図７に示した評価設定情報３２の設定３）を用いて、上記ピッキング重複度を算出したり、上記評価ポリシのうち、重複がある上記物品の数を最大化する評価ポリシ（例えば、図７に示した評価設定情報３２の設定１、設定２）を用いて、上記ピッキング重複度を算出するので、物品の重複の有無や重複数の多さあるいは少なさに応じた割当案を作業者に提示することができる。
【００６７】
また、上記第１の算出部は、上記カートの移動距離と上記ピッキング重複度とにより定められる評価ポリシを用いて、新たなピッキング重複度を上記第１の評価基準とするので、カートの移動距離を考慮した割当案を作業者に提示することができる。
【００６８】
また、上記第２の算出部は、上記物品の総重複数を上記第２の評価基準として、提示すべき割当案を決定するので、上記物品の総重複数が最も多い割当案を最適な割当案として作業者に提示することができる。
【００６９】
また、上記第２の算出部は、上記カートの総移動距離を上記第２の評価基準として、提示すべき割当案を決定するので、カートの総移動距離が最も少ない割当案を最適な割当案として作業者に提示することができる。
【符号の説明】
【００７０】
１              サーバ装置
２              入力部
３              記憶部
３１            物品リスト
３２            評価設定情報
３３            割当案評価情報
３４、１３０１  移動距離情報
３５            相互作用モデル
３５１          相互作用の強度
３５２          変数情報
４              演算部
６１            重複数カウントテーブル
９１            割当案
【図１】
2022002995.tif 000005
【図２】
2022002995.tif 000006
【図３】
2022002995.tif 000007
【図４】
2022002995.tif 000008
【図５】
2022002995.tif 000009
【図６】
2022002995.tif 000010
【図７】
2022002995.tif 000011
【図８】
2022002995.tif 000012
【図９】
2022002995.tif 000013
【図１０】
2022002995.tif 000014
【図１１】
2022002995.tif 000015
【図１２】
2022002995.tif 000016
【図１３】
2022002995.tif 000017