特許第6790165号(P6790165)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 楽天株式会社の特許一覧

<>
  • 特許6790165-作業バッチ生成装置及び方法 図000002
  • 特許6790165-作業バッチ生成装置及び方法 図000003
  • 特許6790165-作業バッチ生成装置及び方法 図000004
  • 特許6790165-作業バッチ生成装置及び方法 図000005
  • 特許6790165-作業バッチ生成装置及び方法 図000006
  • 特許6790165-作業バッチ生成装置及び方法 図000007
  • 特許6790165-作業バッチ生成装置及び方法 図000008
  • 特許6790165-作業バッチ生成装置及び方法 図000009
  • 特許6790165-作業バッチ生成装置及び方法 図000010
  • 特許6790165-作業バッチ生成装置及び方法 図000011
  • 特許6790165-作業バッチ生成装置及び方法 図000012
  • 特許6790165-作業バッチ生成装置及び方法 図000013
  • 特許6790165-作業バッチ生成装置及び方法 図000014
  • 特許6790165-作業バッチ生成装置及び方法 図000015
  • 特許6790165-作業バッチ生成装置及び方法 図000016
  • 特許6790165-作業バッチ生成装置及び方法 図000017
  • 特許6790165-作業バッチ生成装置及び方法 図000018
  • 特許6790165-作業バッチ生成装置及び方法 図000019
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6790165
(24)【登録日】2020年11月6日
(45)【発行日】2020年11月25日
(54)【発明の名称】作業バッチ生成装置及び方法
(51)【国際特許分類】
   B65G 1/137 20060101AFI20201116BHJP
【FI】
   B65G1/137 F
【請求項の数】11
【全頁数】15
(21)【出願番号】特願2019-78561(P2019-78561)
(22)【出願日】2019年4月17日
(65)【公開番号】特開2020-175978(P2020-175978A)
(43)【公開日】2020年10月29日
【審査請求日】2019年5月27日
【新規性喪失の例外の表示】特許法第30条第2項適用 (1)平成31年2月6日 東京工業大学 工学院 経営工学系 経営工学コース 修士論文発表会 (2)平成31年2月 東京工業大学修士論文「大規模な物流倉庫における商品のピッキング最適化アルゴリズムの研究」 (3)平成31年3月13日 日本オペレーションズ・リサーチ学会2019年春季研究発表会アブストラクト集 (4)平成31年3月15日(開催期間 平成31年3月14日から平成31年3月15日) 日本オペレーションズ・リサーチ学会2019年春季研究発表会
(73)【特許権者】
【識別番号】399037405
【氏名又は名称】楽天株式会社
(74)【代理人】
【識別番号】110000154
【氏名又は名称】特許業務法人はるか国際特許事務所
(72)【発明者】
【氏名】桜田 亮太
(72)【発明者】
【氏名】平野 雄也
(72)【発明者】
【氏名】山本 知左
(72)【発明者】
【氏名】三橋 優
(72)【発明者】
【氏名】中田 和秀
(72)【発明者】
【氏名】福永 峻
【審査官】 土田 嘉一
(56)【参考文献】
【文献】 特開2011−037568(JP,A)
【文献】 特開2018−039592(JP,A)
【文献】 特開2002−154612(JP,A)
【文献】 特開2008−201569(JP,A)
【文献】 特開2010−269860(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B65G 1/137
B65G 61/00
G06Q 10/08
G06Q 50/28
(57)【特許請求の範囲】
【請求項1】
物流に関する1以上の位置情報をそれぞれ含む作業指示を複数取得する作業指示取得手段と、
前記複数の作業指示に基づいて、1以上の前記作業指示をそれぞれ含む複数の作業バッチを生成する作業バッチ生成手段と、
一の前記作業バッチにおける一の前記作業指示の減少をそれぞれ伴う複数の非交換操作を適用した前後での、前記複数の作業バッチのコストの変化量を計算する計算手段と、
前記コストの変化量に基づいて複数の前記非交換操作を選択する選択手段と、
前記選択手段により選択される前記非交換操作に対応する前記作業指示の交換操作を、前記選択手段により選択される前記非交換操作によって前記作業指示が減少する前記作業バッチの対に対して適用する交換手段と、
を含む作業バッチ生成装置。
【請求項2】
請求項1に記載の作業バッチ生成装置において、
前記複数の非交換操作は、一の前記作業バッチにおいて一の前記作業指示を減少させる第1の減少操作と、他の一の前記作業バッチにおいて他の一の前記作業指示を減少させる第2の減少操作と、を含み、
前記選択手段は、前記コストの変化量に応じた確率で前記第1の減少操作及び前記第2の減少操作を選択する第1選択手段を含む、作業バッチ生成装置。
【請求項3】
請求項2に記載の作業バッチ生成装置において、
前記交換操作は、選択される前記第1減少操作に係る前記作業指示と、選択される前記第2減少操作に係る前記作業指示と、を交換する第1交換操作を含む、作業バッチ生成装置。
【請求項4】
請求項3に記載の作業バッチ生成装置において、
前記交換手段は、前記第1交換操作を適用した前後での前記コストの変化量に応じて前記第1交換操作を実行する第1交換手段を含む、作業バッチ生成装置。
【請求項5】
請求項4に記載の作業バッチ生成装置において、
前記作業指示により指定される位置には事前に順位が付与されており、
前記第1交換手段は、前記順位に基づいて、前記複数の作業バッチのそれぞれに関して前記コストの変化量を計算する、作業バッチ生成装置。
【請求項6】
請求項5に記載の作業バッチ生成装置において、
前記複数の非交換操作は、一の前記作業バッチにおいて一の前記作業指示を減少させ、当該一の前記作業指示を他の一の前記作業バッチへの追加する順方向シフト操作を含み、
前記交換操作は、前記一の前記作業バッチに含まれる前記作業指示と、前記他の一の前記作業バッチに含まれる前記作業指示と、を交換する第2交換操作を含み、
前記交換手段は、前記第2交換操作を実行する第2交換手段を含む、作業バッチ生成装置。
【請求項7】
請求項6に記載の作業バッチ生成装置において、
前記第2交換手段は、前記他の一の前記作業バッチにおいて前記作業指示を減少させ、当該作業指示を前記一の前記作業バッチに追加する逆方向シフト操作の前後における前記コストの変化量に基づいて、前記他の一の前記作業バッチに含まれる前記作業指示を選択する、作業バッチ生成装置。
【請求項8】
請求項7に記載の作業バッチ生成装置において、
前記第2交換手段は、前記第2交換操作を適用した前後での前記コストの変化量に応じて、前記第2交換操作を実行する、作業バッチ生成装置。
【請求項9】
請求項8に記載の作業バッチ生成装置において、
前記第2交換手段は、前記複数の作業バッチのそれぞれに関して、該作業バッチに含まれる前記作業指示の実行順序を複数候補の中から選択する手段を含む、作業バッチ生成装置。
【請求項10】
請求項1に記載の作業バッチ生成装置において、
前記複数の非交換操作は、一の前記作業バッチにおいて一の前記作業指示を減少させ、当該一の前記作業指示を他の一の前記作業バッチへの追加する順方向シフト操作を含み、 前記交換操作は、前記一の前記作業バッチに含まれる前記作業指示と、前記他の一の前記作業バッチに含まれる前記作業指示と、を交換する第2交換操作を含み、
前記交換手段は、前記第2交換操作を実行する第2交換手段を含む、作業バッチ生成装置。
【請求項11】
作業指示取得手段が、1以上の作業項目をそれぞれ含む作業指示を複数取得するステップと、
作業バッチ生成手段が、前記複数の作業指示に基づいて、1以上の前記作業指示をそれぞれ含む複数の作業バッチを生成するステップと、
計算手段が、一の前記作業バッチにおける一の前記作業指示の減少をそれぞれ伴う複数の非交換操作を適用した前後での、前記複数の作業バッチのコストの変化量を計算するステップと、
選択手段が、前記コストの変化量に基づいて複数の前記非交換操作を選択するステップと、
交換手段が、選択される前記非交換操作に対応する前記作業指示の交換操作を、選択される前記非交換操作によって前記作業指示がそれぞれ減少する前記作業バッチの対に対して適用するステップと、
を含む作業バッチ生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は作業バッチ生成装置及び方法に関し、例えば物流分野における作業バッチの局所最適化に関する。
【背景技術】
【0002】
物流倉庫には多くの種類の商品が保管されており、商品の注文が発生すると、人手又はロボットにより注文された商品さピッキングされ、梱包などの後工程に渡される。注文のたびにこのような作業を発生させると作業効率が悪いことから、一定数の注文が蓄積されるのを待って、複数の作業者又は作業ロボットのそれぞれがピッキングすべき商品及びその保管位置からなる作業指示がリスト化された作業バッチを生成するのが合理的である。
【0003】
こうした作業バッチは、複数の商品を効率的にピッキングできるよう、作業者や作業ロボットの総移動距離が最小化されるなど、作業のコストがより良いものとなるように考慮して生成されることが望ましい。このような効率的な作業バッチのヒューリスティックな解は、例えば各種の階層クラスタリングのアルゴリズムにより求めることができる。また、各種の局所探索により作業バッチをさらに改善することもできる。
【0004】
従来の局所探索のアルゴリズムの一つとして焼きなまし法が知られている。このアルゴリズムでは、既に生成された作業バッチのそれぞれからランダムに作業指示を選択する。次に、すべての作業バッチの組み合わせにおいて、こうして選択された作業指示の交換を仮定し、当該交換による総移動距離などのコストの変化量を計算する。そして、コストが最も改善する交換を実際に実行する。
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、このように作業バッチ間で交換される作業指示の候補をランダムに選択すると、効率的に作業バッチの最適化を進めることができず、最適化のための処理時間が増えるという問題がある。
【0006】
以上の説明では物流倉庫からの出荷時に用いる作業バッチを例示したが、荷物の配達など、他の作業における作業バッチでも、同様の問題は生じる。
【0007】
本開示は上記課題に鑑みてなされたものであって、その目的は、作業バッチ間での作業指示の交換による局所探索を効率的に進めることができる作業バッチ生成装置及び方法を提供することにある。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本開示の一側面に係る作業バッチ生成装置は、物流に関する1以上の位置情報をそれぞれ含む作業指示を複数取得する作業指示取得手段と、前記複数の作業指示に基づいて、1以上の前記作業指示をそれぞれ含む複数の作業バッチを生成する作業バッチ生成手段と、一の前記作業バッチにおける一の前記作業指示の減少をそれぞれ伴う複数の非交換操作を適用した前後での、前記複数の作業バッチのコストの変化量を計算する計算手段と、前記コストの変化量に基づいて少なくとも一の前記非交換操作を選択する選択手段と、前記選択手段により選択される前記非交換操作に対応する前記作業指示の交換操作を前記複数の作業バッチに対して適用する交換手段と、を含む。
【0009】
また、本開示の他の側面に係る作業バッチ生成方法は、1以上の作業項目をそれぞれ含む作業指示を複数取得するステップと、前記複数の作業指示に基づいて、1以上の前記作業指示をそれぞれ含む複数の作業バッチを生成するステップと、一の前記作業バッチにおける一の前記作業指示の減少をそれぞれ伴う複数の非交換操作を適用した前後での、前記複数の作業バッチのコストの変化量を計算するステップと、前記コストの変化量に基づいて少なくとも一の前記非交換操作を選択するステップと、選択される前記非交換操作に対応する前記作業指示の交換操作を前記複数の作業バッチに対して適用するステップと、を含む。
【図面の簡単な説明】
【0010】
図1】物流倉庫の一例を示す平面図である。
図2】物流倉庫の通路を示す平面図である。
図3】作業バッチ生成装置のハードウェア構成図である。
図4】作業バッチ生成装置が受注システムから受信する注文データ群を模式的に示す図である。
図5】作業バッチ生成装置により生成される作業バッチを模式的に示す図である。
図6】作業バッチ生成装置における作業バッチ生成処理を示すフロー図である。
図7】初期バッチ群の生成処理を示すフロー図である。
図8】物流倉庫の各収納棚に付与されたピッキング順位を示す図である。
図9】2つの収納棚の間の移動経路及びその距離の計算方法を説明する図である。
図10】第1の局所探索処理を示すフロー図である。
図11】第1の局所探索処理における交換候補の選出処理の詳細を示すフロー図である。
図12】各注文に選択確率を設定する処理を説明する図である。
図13】第2の局所探索処理を示すフロー図である。
図14】第2の局所探索処理の一具体例を示す図である。
図15】第2の局所探索処理の一具体例を示す図である。
図16】複数の収納棚から順次商品をピッキングするための、より短い移動経路の決定方法を説明する図である。
図17】複数の収納棚から順次商品をピッキングするための、より短い移動経路の決定方法の具体例を示す図である。
図18】複数の収納棚から順次商品をピッキングするための、より短い移動経路の決定方法の具体例を示す図である。
【発明を実施するための形態】
【0011】
以下、本開示の実施形態について図面に基づき詳細に説明する。
【0012】
図1は、物流倉庫の一例を示す平面図である。以下では、同図に示される物流倉庫10に、本実施形態に係る作業バッチ生成装置100(図3参照)が使用される例について説明する。図1に示すように、物流倉庫10では、それぞれ多数の在庫商品を収容する収納ブロック11a〜23bがマトリックス状に整列配置されており、収納ブロック群の横には商品受渡しエリア30が設けられている。
【0013】
図2に示すように、収納ブロック11a〜13bは、図中上側の領域A1にマトリックス状に整列配置されており、収納ブロック21a〜23bは、図中下側の領域A2にマトリックス状に整列配置されている。すなわち、領域A1では、ブロック列C1に沿って収納ブロック11a,11bが配置され、その隣(図中左側)のブロック列C2に沿って収納ブロック12a,12bが配置されている。さらに、その隣(図中左側)のブロック列C3に沿って収納ブロック13a,13bが配置されている。同様に、領域A2では、ブロック列C1に沿って収納ブロック21a,21bが配置され、その隣(図中左側)のブロック列C2に沿って収納ブロック22a,22bが配置されている。さらに、その隣(図中左側)のブロック列C3に沿って収納ブロック23a,23bが配置されている。
【0014】
領域A1と領域A2の間にはメイン通路50が設けられており、メイン通路50には、該メイン通路50に直交する交差通路52が設けられている。すなわち、ブロック列C1〜C3の間、ブロック列C1の右側、及びブロック列C3の左側に交差通路52が設けられている。以下ではメイン通路50の延伸方向をX方向といい、交差通路52の延伸方向をY方向という。
【0015】
収納ブロック11a〜23bは、いずれも3×2個の商品棚を含んでいる。商品棚は3つずつ横に(Y方向に)並べられ、それらが互いに背中合わせにして配置されている。収納ブロック11a〜23bに含まれる商品棚は、いずれかの交差通路52に面しており、いずれかの交差通路52から商品をピッキングできる。
【0016】
領域A1では、収納ブロック11a,12a,13aと、収納ブロック11b,12b,13bの間にサブ通路51が設けられており、収納ブロック11a,12a,13aのメイン通路50とは反対側にもサブ通路51が設けられている。同様に領域A2では、収納ブロック21a,22a,23aと、収納ブロック21b,22b,23bの間にサブ通路51が設けられており、収納ブロック21a,22a,23aのメイン通路50とは反対側にもサブ通路51が設けられている。
【0017】
ピッキング作業者60(図1参照)は、商品受渡しエリア30から出発し、メイン通路50、サブ通路51及び交差通路52を移動して、例えば紙媒体で配布されたり、或いはタブレットなどの電子端末に表示されたりする作業バッチにより指示された商品を、指示された順序でピッキングしてカートに入れ、商品受渡しエリア30に持ち帰る。こうしてピッキングされた商品に対して、図示しない発送エリアにおいて梱包などの発送作業がさらに行われる。
【0018】
図3は、作業バッチ生成装置のハードウェア構成図である。作業バッチ生成装置100は、例えば物流倉庫10の隅に配置されており、所定数の注文データが蓄積されるたびに、それらをピッキング作業者60と同数の作業バッチに仕訳ける。作業バッチ生成装置100は、一般的なパーソナルコンピュータにより構成されてよく、CPUなどのプロセッサ101、RAMなどのメモリ102、ストレージ103、通信インタフェース104、ポインティングデバイスやキーボードなどの入力部105、LCDやOLEDなどのディスプレイ106及びプリンタ107を含んでよい。通信インタフェース104はLAN又はインターネットに接続されており、図示しない受注コンピュータと作業バッチ生成装置100との間でデータ通信が可能となっている。特に、作業バッチ生成装置100は商品に対する注文が発生するたびに受注コンピュータから注文データを受信する。ストレージ103はHDDやSSDであってよく、本開示に係る作業バッチ生成方法を実行するためのプログラムが特にインストールされている。また、上述のようにして受注コンピュータから受信される注文データが順次蓄積される。
【0019】
図4は、作業バッチ生成装置100が受注システムから受信する注文データ群を模式的に示す図である。各注文データOiは、1注文の内容を示しており、当該注文により顧客から発送要求された1又は複数の商品の情報を含む。各商品の情報は、例えば商品のID、商品の名称、商品の物流倉庫10における保管位置情報を含む。保管位置情報は、ここでは収納ブロックの識別情報、そこに含まれる収納棚の識別情報、当該収納棚の座標(物流倉庫10のフロアにおけるXY座標)が含まれてよい。
【0020】
図5は、作業バッチ生成装置100により生成される作業バッチ群を模式的に示す図である。作業バッチ生成装置100は、ピッキングの作業指示を含む注文データO1〜Onのそれぞれを、ピッキング作業者60と同数の作業バッチB1,B2,B3,…のいずれかに割り当てる。1注文データに複数の商品の情報が含まれる場合、それら複数の商品の情報が異なる作業バッチに割り当てられることはない。作業バッチB1,B2,B3,…は、各ピッキング作業者の移動距離の総和(コスト)ができるだけ短くなるようにして生成される。なお、各作業バッチに含まれる注文データの数は所定数以下に制限されてよい。或いは、各作業バッチに含まれる商品の数が所定数以下に制限されてよい。作業バッチB1,B2,B3,…には、その作業バッチに割り当てられた注文データに含まれる商品の情報が、商品をピッキングすべき順序で記述されている。
【0021】
こうして生成される作業バッチをピッキング作業者に電子データ形式で配布する場合、作業バッチ生成装置100は、作業バッチB1,B2,B3,…のデータを、通信インタフェース104を介して各ピッキング作業者が所持している電子端末に送信する。また、紙媒体で作業バッチを配布する場合には、作業バッチ生成装置100はプリンタ107により作業バッチB1,B2,B3,…を印刷する。
【0022】
図6は、作業バッチ生成装置100における作業バッチ生成処理を示すフロー図である。同図に示す処理は、ストレージ103に格納されたプログラムをプロセッサ101が実行することにより、実現されるものである。同図に示すように、作業バッチ生成装置100はまず、ストレージ103に蓄積されている注文データO1〜Onを読み出す(S1)。次に、S1で読みだされた注文データO1〜Onに基づいてピッキング作業者60と同数の初期作業バッチを生成する(S2)。初期作業バッチは、例えばClarke及びWrightにより提案されたセービング法を利用して作成でき、ここでは作業バッチ群の近似解が得られる。次に、この初期作業バッチに対して、本開示に係る第1の局所探索処理が適用され、改良された作業バッチが得られる(S3)。こうして改良された作業バッチに対して、本開示に係る第2の局所探索処理がさらに適用され、さらに改良された作業バッチが得られる(S4)。その後、作業バッチ生成装置100はプリンタ107又は通信インタフェース104により作業バッチB1,B2,B3,…を出力する(S5)。
【0023】
図7は、図6のS1に示される初期バッチ群の生成処理の一例を示すフロー図である。同図に示すように、この処理では作業バッチ生成装置100は、まず注文データO1〜Onのそれぞれに1つの作業バッチを割り当てる(S21)。すなわち、この段階では注文データの数と作業バッチの数が等しい。次に、作業バッチのすべての組み合わせについて、それらを結合した場合におけるコスト削減量を計算する(S22)。コスト削減量は、結合前後におけるコストの差である。コストは、各作業バッチの実施に必要な個別コストの総和である。ここで個別コストは、作業バッチに割り当てられた注文データの全商品を物流倉庫10においてピッキングするのに必要な移動距離である。
【0024】
作業バッチ生成装置100は、次にコスト削減量に基づいて作業バッチの対を特定する(S23)。ここでは、結合することによりコストが最も削減される作業バッチの対を特定する。そして、特定された作業バッチの対に含まれる注文データの総数が事前に定められた上限数C未満かを調べる(S24)。注文データの総数が上限数C未満であれば、特定された作業バッチの対を結合し、これにより作業バッチの数を1つ減らす(S26)。一方、注文データの総数が上限数C以上であれば、S23で特定された作業バッチの対を結合対象から除外し(S25)、再びS23の処理を実行する。なお、S23においてコスト削減が可能なバッチ対が存在しない場合には、一部の作業バッチを再び複数の作業バッチに分解し、S22移行の処理を再度実行すればよい。こうして、作業バッチの数がMに達すれば処理を終了する(S27)。
【0025】
ここで、作業バッチのコスト計算について説明する。図8は、物流倉庫10の各収納棚に付与されたピッキング順位を示す図である。物流倉庫10には、同図に矢印で示されるように基本移動経路が設定されており、この基本移動経路にしたがって各収納棚にはピッキング順位が付与されている。具体的には、基本移動経路において、より上流の位置においてピッキングできる収納棚ほど上位のピッキング順位が付与されており、逆により下流の位置でないとピッキングできない収納棚ほど下位のピッキング順位が付与されている。図7のS22においては、このピッキング順位に従って、作業バッチの結合前後における、ピッキング順序を決定する。すなわち、作業バッチに含まれる商品が収納された収納棚のピッキング順位を調べ、ピッキング順位が上位の収納棚に収納された商品ほど先にピッキングするよう、作業バッチに含まれる全商品のピッキング順序を定める。次に、こうして定められたピッキング順序にて各商品をピッキングする際の移動距離を決定する。
【0026】
図9(a)に示すように、ピッキング作業者60がある時点で到達すべき収納棚(図中ハッチングで示す)が面している交差通路52と、メイン通路50又はサブ通路51との交点であるP2及びP3のY座標と、次の時点で到達すべき収納棚(図中網掛けで示す)が面している交差通路52と、メイン通路50又はサブ通路51との交点であるP1及びP4のY座標と、それぞれ等しい場合には、移動経路として図中のR1及びR2のように2通りが存在する。このような場合は両経路R1及びR2のうち短い方を選択し、その距離をコストとする。その他の場合は、図9(b)(c)に示すように、移動経路は1通りだけであり、単純にマンハッタン距離をコストとする。このように、図7のS22においては、収納棚のピッキング順位に従って、作業バッチに含まれる商品のピッキング順序を一意に定めるので、作業バッチのコスト(総移動距離)の計算量が比較的少ない。なお、メイン通路50、サブ通路51及び交差通路52に対して重みを適宜設定し、その単位距離あたりの移動コストを異ならせてもよい。
【0027】
次に図10は、第1の局所探索処理を示すフロー図である。この処理は、公知の焼きなまし法を改良したものである。この処理では、まず各作業バッチから交換候補となる注文を選出する(S31)。この選出は、図11に示される選出処理により行う。なお、従来技術では、S31において各作業バッチから交換候補となる注文をランダムに選択する。
【0028】
次に、すべての作業バッチの対について、それらの交換候補となる注文を交換させた前後におけるコストの差、すなわちコスト削減量を計算する(S32)。このコスト削減量の計算においても、図8及び図9で説明した方法によりコストの計算を行ってよい。そして、コスト削減量が最大となる交換操作(すなわち作業バッチの対)を特定する(S33)。
【0029】
こうして特定された交換操作のコスト削減量が正であれば(S34)、特定された交換操作を実際に実行する(S35)。また、S33で特定された交換操作のコスト削減量がゼロ又は負であったとしても、確率的に当該交換操作を実行する(S36)。
【0030】
その後、S31乃至S36の処理の反復回数が上限回数に達するまで(S37)、S31に戻って処理を繰り返す。なお、S36においては、現在までの反復回数が多ければ多いほど交換操作を実行する確率が低くなり、S33で特定される交換操作のコスト削減量が大きいほど確率が高くなるようにしてよい。
【0031】
図11は、図10のS31における交換候補の選出処理の詳細を示すフロー図である。同図に示すように、この処理ではまず、注目している作業バッチから各注文を取り除く減少操作を適用した場合のコスト削減量を計算する(S311)。なお、減少操作は、非交換操作の一例である。S311の計算においても、図8及び図9で説明した方法によりコストの計算を行ってよい。次に、S311で計算されるコスト削減量に基づいて各注文に確率を設定する(S312)。ここでは、減少操作を適用した場合のコスト削減量が大きいほど確率を高くする。なお、コスト削減量が零であったとしても、確率をゼロにしないようにしてよい。その後、乱数を発生させ、発生した乱数に基づいて、1の注文をS312で設定した確率で選択する(S313)。例えば、各注文に、該注文に設定された確率に比例する広さの数値範囲を割当て、発生した乱数が属する数値範囲が割当てられた注文を選択する。以上の処理は、すべての作業バッチに適用され、すべての作業バッチから交換候補となる注文が選出される。
【0032】
図12は、S312における確率設定の一例を示す図である。ある作業バッチに注文A〜Dが含まれるとして、注文A及びBについては、それらを作業バッチから取り除いたとしてもコスト削減しないものとする。一方、注文Cを作業バッチから取り除くと1000のコスト削減が可能であり、注文Dを作業バッチから取り除くと2000のコスト削減が可能であるとする。この場合、注文A及びB、すなわちコスト削減に寄与しない注文には全体として確率αを付与し(1>α>0)、注文C及びD、すなわちコスト削減に寄与する注文には全体として確率1−αを付与する。注文A及びBには確率αを等分して分配し、それぞれ確率α/2が付与される。注文C及びDについては、確率1−αを、それぞれのコスト削減量に比例するよう分配する。
【0033】
図11及び図12に示す処理によれば、ある作業バッチにおいて各注文を減少させる減少操作が適用され、減少操作の前後におけるコスト削減量が計算される。そして、計算されたコスト削減量に応じた確率で、いずれかの減少操作(注文)が選択される。この減少操作に対応する注文が交換候補となり、図10のS32乃至S36の処理により、候補となった注文が実際に交換される。すなわち、S313で選択された減少操作に対応する交換操作がそのコスト削減量に応じて実行される。このようにすれば、各作業バッチからランダムに交換候補を選出するのに比して、最終的なコスト削減につながりやすい(図10のS34においてYとなりやすい)交換候補を選出することができ、局所探索による改善スピードが向上する。
【0034】
次に図13は、第2の局所探索処理を示すフロー図である。同図に示す処理では、まずすべての注文について、他の作業バッチに移すシフト操作を適用した場合のコスト削減量を計算する。そして、コスト削減量が最大となるシフト先の作業バッチを特定する(S41)。図14は、S41の計算結果の一例を示している。同図に示すように、一例として、注文O4は作業バッチB1から作業バッチB3に移すと、コスト削減量が2000となり、他の作業バッチに移すよりも最もコスト削減量が大きい。このように、すべての注文について、最善のシフト先である作業バッチ、及びそのシフトによるコスト削減量を計算する。S41の計算においても、図8及び図9で説明した方法によりコストの計算を行ってよい。
【0035】
次に、S41の計算結果から、コスト削減量が正のシフト操作を、例えばコスト削減量が大きな順で選択する(S42)。図14の例では、7000がコスト削減量の最大値であり、注文O7を作業バッチB3から作業バッチB2に移動させるシフト操作が選択される。さらに、S41の計算結果から、S42で選択されたシフト操作によるシフト先である作業バッチから、S42で選択されたシフト操作によるシフト元である作業バッチへのシフト操作を、コスト削減量に基づいて選択する(S43)。ここで、S42で選択されたシフト操作によるコスト削減量と、S43で特定されるシフト操作によるコスト削減量と、の和が正になるようにする。和が0又は負になる場合には、S43においてそのようなシフト操作を選択しない。
【0036】
図15は、S41の計算結果のうち、シフト元が作業バッチB2のレコードのみを示している。シフト元が作業バッチB2である注文のうち、シフト先が作業バッチB3であるのは、注文O5、注文O6及び注文On−1である。上述のように、注文O7を作業バッチB3から作業バッチB2に移動せるシフト操作によるコスト削減量は7000であるので、上述の和が正となるのは注文O5及び注文O6であり、S43の処理では、このような注文が選択される。
【0037】
その後、S42で選択されるシフト操作により移動する注文と、S43で選択されるシフト操作により移動する各注文と、の交換操作によるコスト削減量を計算する(S44)。そして、コスト削減量が正であり、且つ最大となる交換操作となる交換操作を実際に実行する(S45)。
【0038】
S42において、コスト削減量が正であるシフト操作をすべて選択するまで(S46)、S42乃至S45の処理を繰り返す。また、S41の処理を上限回数Mだけ実行するよう、S41乃至S46の処理を繰り返す(S47)。
【0039】
以上の処理においても、非交換操作であるシフト操作を適用した前後におけるコスト削減量を計算し(S41)、計算されたコスト削減量に基づいてシフト操作を選択している(S42及びS43)。そして、選択されたシフト操作に対応する交換操作をそのコスト削減量に応じて実行している(S45)。この第2の局所探索処理によっても、最終的なコスト削減につながりやすい(図13のS44において大きなコスト削減量が算出されやすい)交換操作が選択的に実行されるので、局所探索による改善スピードを向上できる。
【0040】
また、第2の局所探索処理では、S44においてコスト削減量を計算する交換操作の数を少数に制限できる。そこで、S44においては、より厳密なコスト削減量の計算を実行することにしてよい。すなわち、S41等の計算では、作業バッチに含まれる商品のピッキング順序は、簡易的に、その商品が収納される収納棚のピッキング順位に基づいて一意に決定されていたが、複数候補の中から、コストに基づいて、よりコストの低い順序を決定してよい。
【0041】
図16は、複数の収納棚から順次商品をピッキングするための、より短い移動経路の決定方法を説明する図である。この方法では、ピッキング作業者は、領域A1でのピッキングをブロック列C1、C2及びC3の順に行い、次に領域A2でのピッキングをブロック列C3、C2及びC1の順に行うものとする。ただし、図16に示すように、ピッキング作業者は交差通路52を、メイン通路50に近づく向き(下向き)又は遠ざかる向き(上向き)に移動するものとする。
【0042】
図17は、複数の収納棚から順次商品をピッキングする移動経路の具体例を示す図である。図17において、地点1乃至地点12の収納棚にピッキング作業者が立寄る必要がある場合には、商品受渡しエリア30からスタートした後、ピッキング作業者には各交差通路52において2つの移動方向の選択肢がある。このため、ピッキング順序の選択肢は図18に示される有向グラフにより示されることになる。
【0043】
ここで、グラフの頂点を同図に示すv0からv15としたとき、グラフの枝eijは頂点viから頂点vjへの移動を示すものとする。枝eijのコストwijは、頂点viに対応する経路部分での最後のピッキング箇所から頂点vjに対応する経路部分での最初のピッキング箇所までの距離Laと、頂点vjに対応する経路部分での最初のピッキング箇所から頂点vjの最後のピッキング箇所までの距離Laと、の和として定められる。距離La及びLbは、図8及び図9で説明した方法により計算してよい。頂点v0からv15に至るコストwijの総和を最小化する枝eijを、例えば動的計画法により計算することで、よりコストの低いピッキング順序を決定することができる。
【0044】
以上説明した作業バッチ生成装置100によれば、一の作業バッチにおける一の注文の減少をそれぞれ伴う複数の非交換操作(注文の減少操作やシフト操作)を適用した前後でのコスト変化量を計算して、計算されたコスト変化量に基づいて非交換操作を選択する。そして、こうして選択される非交換操作に対応する交換操作を作業バッチ群に適用する。特定の非交換操作により削減されるコストが大きい場合には、その非交換操作に対応する交換操作もコスト削減効果が高いと期待でき、局所探索による作業バッチの改善スピードを向上できる。
【0045】
本発明の範囲は上記実施形態に限定されず、種々の変形が可能であり、そのような変形も本発明の範囲に含まれる。たとえば、以上の説明では物流倉庫10における商品のピッキングに本発明を適用する例を示したが、商品の配送についても同様に本発明を適用することができる。また、他の作業についても、そのコスト関数を適宜選択することにより、本発明を適用することができる。
【符号の説明】
【0046】
10 物流倉庫、11a〜23b 収納ブロック、30 商品受渡しエリア、60 ピッキング作業者、50 メイン通路、51 サブ通路、52 交差通路。

図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18