(57)【特許請求の範囲】
【請求項１】
プロセッサと、前記プロセッサに接続される記憶部と、を有する作業計画システムであって、
前記記憶部は、複数の出荷オーダと、出荷のために必要な作業の工程に関する作業ネットワーク情報と、作業に利用できる複数のリソースに関するリソース情報と、を保持し、
前記プロセッサは、
所定の条件及び前記作業ネットワーク情報に基づいて、前記複数の出荷オーダに対応する作業を複数のタスクに分類し、
前記リソース情報に基づいて、前記タスクごとに、前記工程への前記リソースの割り当てを含む工程計画を生成し、
生成した前記工程計画を出力することを特徴とする作業計画システム。
【請求項２】
請求項１に記載の作業計画システムであって、
前記所定の条件は、前記複数のタスク間で分散すべき前記出荷オーダの属性の指定であり、
前記プロセッサは、前記所定の条件として指定された属性を有する前記出荷オーダの比率が前記複数のタスク間で均等に近づくように、前記複数の出荷オーダに対応する作業を前記複数のタスクに分類することを特徴とする作業計画システム。
【請求項３】
請求項２に記載の作業計画システムであって、
前記複数のタスク間で分散すべき前記出荷オーダの属性は、出荷箱のサイズ及びギフト包装の有無の少なくともいずれかであることを特徴とする作業計画システム。
【請求項４】
請求項１に記載の作業計画システムであって、
前記プロセッサは、前記複数の出荷オーダに含まれる商品の品目の情報に基づいて、出荷される商品の品目の偏りが大きくなるように、前記複数の出荷オーダに対応する作業を前記複数のタスクに分類することを特徴とする作業計画システム。
【請求項５】
請求項１に記載の作業計画システムであって、
前記所定の条件は、前記出荷オーダごとの作業の優先度であり、
前記プロセッサは、異なる前記優先度が設定された前記出荷オーダに対応する作業が同一のタスクに分類されないように、前記複数の出荷オーダに対応する作業を複数のタスクに分類することを特徴とする作業計画システム。
【請求項６】
請求項５に記載の作業計画システムであって、
前記作業の優先度は、出荷時刻であり、
前記プロセッサは、前記タスクごとに、前記出荷時刻までに全ての工程の作業が終了するように前記工程計画を生成することを特徴とする作業計画システム。
【請求項７】
請求項５に記載の作業計画システムであって、
前記作業の優先度は、緊急の作業が必要であることを示す情報、又は、出荷を停止することを示す情報であることを特徴とする作業計画システム。
【請求項８】
請求項１に記載の作業計画システムであって、
前記作業ネットワーク情報は、出荷のために必要な作業の工程の順序を示す情報を含み、
前記リソース情報は、前記各工程における前記各リソースの生産性を示す情報を含み、
前記プロセッサは、前記タスクごとに、前記各工程に割り当てた前記リソースの数量と、前記生産性と、前記タスクに分類された出荷オーダの物量と、に基づいて、前記各工程の所要時間を計算し、
前記各工程が、前記作業ネットワーク情報に含まれる順序に従って開始され、前記各工程の所要時間が経過した後に終了するように前記工程計画を生成することを特徴とする作業計画システム。
【請求項９】
請求項８に記載の作業計画システムであって、
前記プロセッサは、前記タスクごとに、前記作業ネットワーク情報に含まれる順序に従って、先に開始された工程の全てが終了する前に次の工程を開始するように、前記工程計画を生成することを特徴とする作業計画システム。
【請求項１０】
請求項９に記載の作業計画システムであって、
前記プロセッサは、前記次の工程が開始したときに、前記先に開始された工程に割り当てた前記リソースの一部を、前記先に開始された工程から前記次の工程に移動させるように、前記工程計画を生成することを特徴とする作業計画システム。
【請求項１１】
請求項８に記載の作業計画システムであって、
前記リソース情報は、前記各リソースの単価を示す情報を含み、
前記プロセッサは、前記タスクごとに、前記各出荷オーダについて指定された出荷時刻までに全ての工程が終了し、かつ、所要コストが小さくなるように、前記工程計画を生成することを特徴とする作業計画システム。
【請求項１２】
請求項１に記載の作業計画システムであって、
前記プロセッサは、生成した前記工程計画に従って工程が開始された後、前記工程の実績と前記工程計画との間の乖離が所定の条件を満たした場合に、工程が開始されていない前記タスクについて、前記工程計画を再生成することを特徴とする作業計画システム。
【請求項１３】
請求項１に記載の作業計画システムであって、
前記プロセッサは、新たな前記出荷オーダが追加された場合に、前記所定の条件に基づいて、前記新たな出荷オーダを前記複数のタスクのいずれか又は新たなタスクに分類し、
工程が開始されていない前記出荷オーダについて、前記工程計画を再生成することを特徴とする作業計画システム。
【請求項１４】
請求項１に記載の作業計画システムであって、
前記プロセッサは、前記出荷オーダに基づいて、前記リソースに対する作業指示データを生成し、前記生成された作業計画における前記工程の開始時刻に基づいて決定したタイミングで、前記工程に割り当てられたリソースに対して前記作業指示データを出力することを特徴とする作業計画システム。
【請求項１５】
請求項１４に記載の作業計画システムであって、
前記複数のリソースは、前記工程において使用される機器を含み、
前記プロセッサは、前記作業指示データとして前記機器を制御するためのデータを生成することを特徴とする作業計画システム。
【請求項１６】
プロセッサと、前記プロセッサに接続される記憶部と、を有する計算機システムが実行する作業計画方法であって、
前記記憶部は、複数の出荷オーダと、出荷のために必要な作業の工程に関する作業ネットワーク情報と、作業に利用できる複数のリソースに関するリソース情報と、を保持し、
前記作業計画方法は、
前記プロセッサが、所定の条件及び前記作業ネットワーク情報に基づいて、前記複数の出荷オーダに対応する作業を複数のタスクに分類する手順と、
前記プロセッサが、前記リソース情報に基づいて、前記タスクごとに、前記工程への前記リソースの割り当てを含む工程計画を生成する手順と、
前記プロセッサが、生成した前記工程計画を出力する手順と、を含むことを特徴とする作業計画方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、倉庫等における作業を計画する技術に関する。
【背景技術】
【０００２】
従来の作業計画システムとして、例えば、特許文献１（特開２００２−１５４６１５号公報）に記載されたシステムが挙げられる。当該システムは、出荷オーダをデータベースに蓄積し、出荷アイテム、梱包単位（例えばケース又はピースなど）といった出荷作業要素ごとに分け、ピッキング、搬送、２次仕分の各作業時間の定量化解析を行い、出荷リードタイムが最小となる括りの組み合わせを求めることで、出荷オーダの括りを決定する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−１５４６１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載のシステムでは、出荷オーダの括りの作業着手順序は検討されておらず、作業管理者が順序を決定していた。このため、作業の遅延又は前倒しが発生したときにリソース（例えば作業者、作業に用いる機器又は設備等）の不足又は余剰が生じやすく、リソースの割り当てまで含めた全体最適化が図られていないという問題があった。
【課題を解決するための手段】
【０００５】
上記の課題の少なくとも一つを解決するため、本発明は、プロセッサと、前記プロセッサに接続される記憶部と、を有する作業計画システムであって、前記記憶部は、複数の出荷オーダと、出荷のために必要な作業の工程に関する作業ネットワーク情報と、作業に利用できる複数のリソースに関するリソース情報と、を保持し、前記プロセッサは、所定の条件及び前記作業ネットワーク情報に基づいて、前記複数の出荷オーダに対応する作業を複数のタスクに分類し、前記リソース情報に基づいて、前記タスクごとに、前記工程への前記リソースの割り当てを含む工程計画を生成し、生成した前記工程計画を出力することを特徴とする。
【発明の効果】
【０００６】
本発明の一態様によれば、出荷オーダに応じた作業を、リソースの割り当ても含めて全体最適化することができる。上記した以外の課題、構成及び効果は、以下の実施形態の説明によって明らかにされる。
【図面の簡単な説明】
【０００７】
【図１】本発明の実施例の作業計画システムの構成を示すブロック図である。
【図２】本発明の実施例のサーバ装置の構成を示すブロック図である。
【図３】本発明の実施例のクライアント装置の構成を示すブロック図である。
【図４】本発明の実施例の作業計画システムが実行する処理の概要の説明図である。
【図５】本発明の実施例の作業計画システムが保持する出荷オーダ情報の説明図である。
【図６】本発明の実施例の作業計画システムによるタスク生成の説明図である。
【図７】本発明の実施例の作業計画システムによって生成される工程計画の説明図である。
【図８】本発明の実施例の作業計画システムが実行する処理の詳細を示すシーケンス図である。
【発明を実施するための形態】
【０００８】
以下に、本発明に係る作業計画システムの実施例を図面に基づいて説明する。
【０００９】
図１は、本発明の実施例の作業計画システムの構成を示すブロック図である。
【００１０】
本実施例の作業計画システム１００は、倉庫内の作業を計画するシステムであり、サーバ装置１０１及びクライアント装置１０２からなる。サーバ装置１０１及びクライアント装置１０２は、ネットワーク１０４を介して、倉庫管理システム（Warehouse Management System、ＷＭＳ）１０３及び複数のリソース機器１０５と接続される。
【００１１】
倉庫管理システム１０３は、顧客からの出荷オーダの管理及び倉庫内の物品の在庫管理等を行う。倉庫管理システム１０３は、一般的な倉庫で運用されているものと同様のものであってよいため、詳細な説明は省略する。作業計画システム１００は、倉庫管理システム１０３から出荷オーダ等を取得して、作業計画を作成し、それに従って作業指示を各リソース機器１０５に送信する。作業計画システム１００に含まれるサーバ装置１０１及びクライアント装置１０２の構成については後述する。
【００１２】
各リソース機器１０５は、倉庫内の作業を実現するためのリソースに対応する。例えば倉庫内で人手による作業が行われる場合、その作業を行う作業員がリソースであり、それに対応するリソース機器１０５は、例えばその作業員が使用する端末装置（ハンディターミナル等の作業員端末）である。
【００１３】
あるいは、倉庫内の作業を行うためにマテリアルハンドリング機器等が使用される場合には、そのような機器がリソースであり、かつ、それ自体がリソース機器１０５に相当する。マテリアルハンドリング機器の例として、物品を搬送するコンベア、物品を格納した棚を搬送する無人搬送車（Automated Guided Vehicle、ＡＧＶ）、及び、棚から物品をピッキングするピッキングロボット等が挙げられる。
【００１４】
また、作業を行う作業場所（作業ステーション）及び作業台等をリソースとして扱ってもよく、その場合、作業ステーション及び作業台等に対応する機器（例えば作業員に情報を提示する端末等）があればそれらをリソース機器１０５としてもよい。
【００１５】
ネットワーク１０４は、作業計画システム１００と倉庫管理システム１０３との通信、作業計画システム１００と各リソース機器１０５との通信、及び、サーバ装置１０１とクライアント装置１０２との通信を可能にするものである限り、どのような種類のものであってもよい。また、それらの通信は、有線通信又は無線通信のいずれか又はそれらの組み合わせであってもよい。
【００１６】
図２は、本発明の実施例のサーバ装置１０１の構成を示すブロック図である。
【００１７】
本実施例のサーバ装置１０１は、プロセッサ２０１、メモリ２０２、記憶媒体２０３、入力装置２０４、出力装置２０５及び通信装置２０６を有する。
【００１８】
プロセッサ２０１は、メモリ２０２に格納されたプログラムに従って、サーバ装置１０１を制御する。
【００１９】
メモリ２０２は、例えば半導体メモリであり、プロセッサ２０１によって実行されるプログラム、プロセッサ２０１によって参照されるデータ、及びプロセッサ２０１が実行する処理の結果として取得されたデータ等を格納する。記憶媒体２０３に格納されたプログラム及びデータの少なくとも一部が、必要に応じてメモリ２０２にコピーされてもよいし、取得されたデータが必要に応じてメモリ２０２から記憶媒体２０３にコピーされてもよい。
【００２０】
図２の例では、メモリ２０２にリソース制御システム（ＲＣＳ）監視プログラム２０７及びタスク生成プログラム２０８が格納される。これらは、それぞれ、後述するリソース監視及びタスク生成を実現するためのプログラムである。これらのプログラムに従って実行される処理については後述する。
【００２１】
記憶媒体２０３は、例えばフラッシュメモリ又はハードディスクのような不揮発性の記憶媒体である。記憶媒体２０３に格納されるリソース制御システムデータベース（ＲＣＳ  ＤＢ）２０９については後述する。
【００２２】
入力装置２０４は、作業計画システム１００の操作者からの入力を受ける。具体的には、入力装置２０４は、例えばキーボード、ボタン又はポインティングデバイス等を含んでもよい。
【００２３】
出力装置２０５は、作業計画システム１００の操作者に情報を出力する。具体的には、出力装置２０５は、例えば画像表示装置等を含んでもよい。例えばメモリ２０２に格納されたプログラムに従う処理の結果として生成された情報の少なくとも一部が出力装置２０５を介して出力されてもよい。
【００２４】
通信装置２０６は、有線又は無線のネットワーク１０４を介して倉庫管理システム１０３、クライアント装置１０２及びリソース機器１０５とのデータのやり取りを可能とするための装置であり、例えばＬＡＮ（Local Area Network）アダプタ等を含んでもよい。例えば記憶媒体２０３に格納される情報の少なくとも一部が通信装置２０６を介して入力されてもよいし、メモリ２０２に格納されたプログラムに従う処理の結果として生成された情報の少なくとも一部が通信装置２０６を介して出力されてもよい。
【００２５】
図３は、本発明の実施例のクライアント装置１０２の構成を示すブロック図である。
【００２６】
本実施例のクライアント装置１０２は、プロセッサ３０１、メモリ３０２、記憶媒体３０３、入力装置３０４、出力装置３０５及び通信装置３０６を有する。
【００２７】
プロセッサ３０１は、メモリ３０２に格納されたプログラムに従って、クライアント装置１０２を制御する。
【００２８】
メモリ３０２は、例えば半導体メモリであり、プロセッサ３０１によって実行されるプログラム、プロセッサ３０１によって参照されるデータ、及びプロセッサ３０１が実行する処理の結果として取得されたデータ等を格納する。記憶媒体３０３に格納されたプログラム及びデータの少なくとも一部が、必要に応じてメモリ３０２にコピーされてもよいし、取得されたデータが必要に応じてメモリ３０２から記憶媒体３０３にコピーされてもよい。
【００２９】
図３の例では、メモリ３０２に工程計画生成プログラム３０７が格納される。これは、後述する工程計画の生成を実現するためのプログラムである。このプログラムに従って実行される処理については後述する。
【００３０】
記憶媒体３０３は、例えばフラッシュメモリ又はハードディスクのような不揮発性の記憶媒体である。図３の例では、記憶媒体３０３に物量・リソース情報３０８及び工程計画３０９が格納される。物量・リソース情報３０８は、工程計画生成プログラム３０７による工程計画の生成の基となるデータであり、例えば、作業対象である物量と倉庫内で利用可能なリソースの数量、及び、それぞれのリソースの生産性を示す情報を含む。工程計画３０９は、工程計画生成プログラム３０７によって生成されるデータである。これらの内容については後述する。
【００３１】
入力装置３０４は、作業計画システム１００の操作者からの入力を受ける。具体的には、入力装置３０４は、例えばキーボード、ボタン又はポインティングデバイス等を含んでもよい。
【００３２】
出力装置３０５は、作業計画システム１００の操作者に情報を出力する。具体的には、出力装置３０５は、例えば画像表示装置等を含んでもよい。例えばメモリ３０２に格納されたプログラムに従う処理の結果として生成された情報の少なくとも一部が出力装置３０５を介して出力されてもよい。
【００３３】
通信装置３０６は、有線又は無線のネットワーク１４０を介してサーバ装置１０１及びリソース機器１０５とのデータのやり取りを可能とするための装置であり、例えばＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）アダプタ等を含んでもよい。例えば記憶媒体３０３に格納される情報の少なくとも一部が通信装置３０６を介して入力されてもよいし、メモリ３０２に格納されたプログラムに従う処理の結果として生成された情報の少なくとも一部が通信装置３０６を介して出力されてもよい。
【００３４】
なお、図１から図３の例では、作業計画システム１００が一つのサーバ装置１０１と一つのクライアント装置１０２とによって構成される例を説明したが、作業計画システム１００は例えば一つのサーバ装置１０１と複数のクライアント装置１０２とによって構成されてもよいし、サーバ装置１０１とクライアント装置１０２とを統合した一つの計算機システムによって構成されてもよい。また、倉庫管理システム１０３も図２又は図３と同様の計算機システムによって実現することができる。
【００３５】
図４は、本発明の実施例の作業計画システム１００が実行する処理の概要の説明図である。
【００３６】
複数の顧客４０１からの複数の出荷オーダ４０３は、ＷＭＳ１０３の在庫管理システム又は販売管理システムを経て作業計画システム１００に入力される。ここで、一つの出荷オーダ４０３とは、一つの配送先に同じタイミングで配送される１以上の品目の商品のオーダの集合である。作業計画システム１００は、出荷オーダ４０３に応じた商品の出荷を行うための作業指示を含む指示情報４０４を生成する。出荷オーダ４０３から指示情報を生成する手順は、従来知られている方法によって実現できるため、その詳細な説明は省略する。
【００３７】
作業計画システム１００は、指示情報４０４に基づいてタスク生成４０５を行う。その結果、タスク情報４０６が生成される。このとき、タスク情報データベース４１０及び作業ネットワーク情報マスタ４１１が参照される。タスク情報データベース４１０及び作業ネットワーク情報マスタ４１１は、例えば、サーバ装置１０１のリソース制御システムデータベース２０９に含まれてもよい。
【００３８】
タスク生成４０５及び生成されるタスク情報４０６については後述する。ここでは、複数の出荷オーダ４０３を複数のタスクに分類する例を説明する。これによって、各出荷オーダ４０３に対応する指示情報４０４が、各出荷オーダ４０３に対応するタスクに分類される。生成されたタスク情報４０６は、タスク情報データベース４１０に格納される。
【００３９】
その後、作業計画システム１００は、タスク情報４０６に基づいて工程計画生成４０７を行う。その結果、工程計画４０８が生成される。工程計画生成４０７及び生成される工程計画４０８については後述する。
【００４０】
作業計画システム１００は、工程計画４０８及び指示情報４０４に基づいて、指示データ配信４０９を行う。具体的には、指示情報４０４に含まれる作業指示を、生成された工程計画４０８に従って、作業に対応するリソース機器１０５に、適切なタイミング（例えば工程計画４０８に従って作業が実行されるタイミング）で配信する。
【００４１】
図５は、本発明の実施例の作業計画システム１００が保持する出荷オーダ情報の説明図である。
【００４２】
例えば、作業計画システム１００は、顧客４０１からの出荷オーダ４０３に必要な項目を追加した出荷オーダ情報５００を生成してそれをタスク情報ＤＢ４１０に格納してもよい。図５に示す出荷オーダ情報５００は、複数の出荷オーダ５０１（例えば出荷オーダ１＿５０１−１、出荷オーダ２＿５０１−２、・・・出荷オーダｎ＿５０１−ｎ）を含む。これらのいずれにも共通する説明をする場合、これらを総称して単に出荷オーダ５０１と記載する。
【００４３】
なお、通常、一つの出荷オーダ４０３に対応する複数の出荷オーダ５０１が生成される。例えば、一つの出荷オーダ４０３に応じて出荷される商品が複数の出荷箱に分けて梱包される場合には、出荷箱ごとに出荷オーダ５０１が生成される。また、一つの出荷オーダ４０３に応じて商品を出荷するまでに複数の工程（例えばピッキング、検品、梱包等）の作業が行われる場合には、工程ごとに出荷オーダ５０１が生成される。
【００４４】
図５の例において、各出荷オーダ５０１は、項目として、出荷梱包キー５１１−１、出荷伝票番号５１１−２、タスク番号５１１−３、作業種別５１１−４、生産性５１１−５、前アクティビティ５１１−６、次アクティビティ５１１−７、出庫数５１１−８、個口情報５１１−９、出荷日５１１−１０、作業日５１１−１１、出荷先情報５１１−１２、運送業者情報５１１−１３、業者切離し時間５１１−１４、緊急フラグ５１１−１５、出荷止めフラグ５１１−１６、箱情報５１１−１７、ギフトフラグ５１１−１８、工程計画生成部作業開始時間５１１−１９、工程計画生成部作業終了時間５１１−２０及び商品情報５１１−２１を含む。
【００４５】
出荷梱包キー５１１−１は、当該出荷オーダ５０１に応じて出荷される商品を梱包する出荷箱毎に採番されるキー情報である。例えば、出荷梱包キー５１１−１の値（番号）を示すバーコードが印刷されたシールを出荷箱に貼付して出荷箱を識別してもよい。
【００４６】
出荷伝票番号５１１−２は、当該出荷オーダ５０１に対応する出荷オーダ４０３を識別する番号である。オーダが出荷（納品）単位と同一となる（すなわち、一つの出荷オーダ４０３に応じて出荷される商品は、同一の出荷先に同一のタイミングで出荷される）為、出荷伝票番号５１１−２は納品伝票番号として使用されてもよい。
【００４７】
なお、一つの出荷オーダ４０３に応じて出荷される商品が複数の出荷箱に分けて梱包される場合、出荷箱ごとに出荷オーダ５０１が生成され、それぞれの出荷オーダ５０１の出荷梱包キー５１１−１は互いに異なる値となり、出荷伝票番号５１１−２は同一の値となる。
【００４８】
タスク番号５１１−３は、タスク生成４０５の結果として付与されるタスクの固有番号である。後述するように、複数の出荷オーダ５０１を優先条件及び平滑化条件等に基づいて分類することによってタスクが生成される。
【００４９】
作業種別５１１−４は、当該出荷オーダ５０１に対応する作業の種別（例えば工程）を示す。例えば、ある出荷オーダ４０３に応じて商品を出荷するために、ピッキング、検品及び梱包の各工程の作業を行う必要がある場合、当該出荷オーダ４０３に対応する三つの出荷オーダ５０１が生成され、それぞれの作業種別５１１−４として、ピッキング、検品及び梱包を示す値が登録される。本実施例において、作業種別とは、工程、及び、後述するアクティビティと同義である。
【００５０】
生産性５１１−５は、工程毎の単位時間当たりの物量の消化能力を示す。ここで、物量はピース数、箱数又は伝票数等のいずれであってもよいが、本実施例では、箱を物量の単位としている。なお、実際の生産性は、商品の種類等、種々の条件によって変動しうる。例えば人が作業を行う工程の場合、作業員の熟練度及び疲労度等によっても変動しうる。そのような精密な生産性を使用してもよいが、本実施例の生産性５１１−５は、工程ごとに一律に適用される平均生産性である。これは、例えば過去の実績から計算されたものであってもよい。
【００５１】
前アクティビティ５１１−６は、当該出荷オーダ５０１に対応する工程（すなわち当該出荷オーダ５０１の作業種別５１１−４が示す工程）の前に実行される工程を示す。また、次アクティビティ５１１−７は、当該出荷オーダ５０１に対応する工程の次に実行される工程を示す。例えば、ピッキング、検品、梱包の順に作業を行う必要がある場合、検品に対応する出荷オーダ５０１の作業種別５１１−４は「検品」、前アクティビティ５１１−６は「ピッキング」、次アクティビティ５１１−７は「梱包」となる。
【００５２】
なお、このような工程作業の順序を示す情報は、作業ネットワーク情報マスタ４１１に含まれる。作業計画システム１００は、作業ネットワーク情報マスタ４１１を参照して、必要な工程に対応する出荷オーダ５０１を生成して、それぞれの前アクティビティ５１１−６及び次アクティビティ５１１−７の値を登録する。
【００５３】
出庫数５１１−８は、後述する商品情報５１１−２１における数量の合計値である。
【００５４】
個口情報５１１−９は、出荷オーダ４０３に応じて出荷される商品が梱包される箱に関する情報である。例えば、一つの出荷オーダ４０３に応じて出荷される全商品が一つの出荷箱にまとめて梱包される場合には、その出荷箱に対応する出荷オーダ５０１の個口情報５１１−９の値は「１／１」となる。一つの出荷オーダ４０３に応じて出荷される商品が二つの出荷箱に分けて梱包される場合には、それぞれの出荷箱に対応する出荷オーダ５０１の個口情報５１１−９の値は「１／２」及び「２／２」となる。
【００５５】
出荷日５１１−１０は、当該出荷オーダ５０１に含まれる商品が出荷される日を示す。
【００５６】
作業日５１１−１１は、当該出荷オーダ５０１に含まれる商品を出荷するための作業をする日であり、出荷日当日又はそれより前の日となる。
【００５７】
出荷先情報５１１−１２は、当該出荷オーダ５０１に応じて商品を届ける先（納品先）を示す。
【００５８】
運送業者情報５１１−１３は、商品の運送を請け負う業者を示す。
【００５９】
業者切離し時間５１１−１４は、運送業者が商品を引き取りに来る時間である。すなわち、業者切離し時間５１１−１４は、倉庫からの商品の出荷予定時刻と考えてもよい。
【００６０】
緊急フラグ５１１−１５は、他の出荷オーダ５０１より急いで出荷することを示すフラグである。
【００６１】
出荷止めフラグ５１１−１６は、倉庫内に作業指示が出されたものの、その後、取りやめになったことを示すフラグである。
【００６２】
箱情報５１１−１７は、出荷箱の大きさを示す情報である。具体的には、箱情報５１１−１７は、出荷箱のサイズ（縦、横、高さ）を示す情報であってもよいし、例えば「大」「中」「小」など、大きさを示す名称又は記号であってもよい。
【００６３】
ギフトフラグ５１１−１８は、ギフト用の包装、例えばのし添付又は化粧箱への梱包などといった特別な作業を指示する情報である。
【００６４】
工程計画生成部作業開始時間５１１−１９及び工程計画生成部作業終了時間５１１−２０は、それぞれ、工程計画生成４０７によって算出された、当該出荷オーダ５０１に対応する工程作業の開始時間及び終了時間を示す。
【００６５】
商品情報５１１−２１は、当該出荷オーダ５０１に含まれる商品（すなわち、出荷オーダ４０３に応じて出荷される商品のうち、当該出荷オーダ５０１に対応する出荷箱に梱包されて出荷される商品）に関する情報である。一つの出荷箱に複数品目（例えばｎ品目）の商品が梱包される場合、商品情報５１１−２１は複数品目（例えば１番目からｎ番目まで）の商品に関する情報を含む。具体的には、商品情報５１１−２１は、商品の品目を識別する商品コード、商品の名称を示す商品名、及び数量を含む。前述のように、一つの出荷オーダ５０１に含まれる全品目の数量の合計が、出庫数５１１−８として登録される。
【００６６】
図５に示す出荷オーダ５０１は、業者切離し時間５１１−１４、緊急フラグ５１１−１５及び出荷止めフラグ５１１−１６が優先条件であることを示す情報と、箱情報５１１−１７及びギフトフラグ５１１−１８が平滑化条件であることを示す情報とを含んでいる。これらの情報は、後述するタスク生成４０５において参照される。また、タスク生成４０５においては、後述するように商品情報５１１−２１も参照される。
【００６７】
図６は、本発明の実施例の作業計画システム１００によるタスク生成４０５の説明図である。
【００６８】
本実施例においてタスクとは、複数の出荷オーダ５０１の集合である。倉庫のリソースは、タスクごとに割り当てられる。タスク生成４０５は、複数の出荷オーダ５０１を複数のタスクに分類する処理である。このとき、同一の出荷箱に対応する複数の出荷オーダ５０１（例えば、ある出荷箱で出荷される商品のピッキング、検品及び梱包にそれぞれ対応する三つの出荷オーダ５０１）は必ず同一のタスクに分類される。
【００６９】
また、本実施例ではタスクグループが設定されてもよい。タスクグループとは、同一の優先条件が設定された出荷オーダ５０１からなる１以上のタスクの集合である。
【００７０】
作業計画システム１００は、処理の対象となる複数の出荷オーダ５０１（例えばある期間に蓄積された出荷オーダ４０３から生成された出荷オーダ５０１）を、それらに指定された優先条件及び平滑化条件（いずれも図５参照）に基づいて、タスクに分類する。
【００７１】
具体的には、作業計画システム１００は、優先条件の値が同一の出荷オーダ５０１を同一のタスクグループに分類する。優先条件は、出荷オーダ５０１に対応する工程作業の優先度に関する条件である。例えば、業者切離し時間５１１−１４が早い出荷オーダ５０１ほど早く作業を行う必要がある。また、緊急フラグ５１１−１５が緊急を示す値である出荷オーダ５０１の作業は他の出荷オーダ５０１の作業より優先して行う必要がある。また、出荷止めフラグ５１１−１６が出荷の取りやめを示す値である出荷オーダ５０１の作業は先送りして、他の出荷オーダ５０１の作業を優先して行うことが望ましい。
【００７２】
さらに、作業計画システム１００は、各タスクグループに分類された出荷オーダ５０１を、各タスクグループ内の複数のタスクに分類する。このとき、作業計画システム１００は、同一の平滑化条件が設定された出荷オーダ５０１が当該タスクグループ内の複数のタスクに平均的に分散されるように、分類する。
【００７３】
平滑化条件は、出荷オーダ５０１の属性のうち、タスク間で分散されるべき属性、すなわち、タスク間で平滑化（平準化）することで全体の作業効率が向上すると考えられる属性を示す。図５の例では、箱情報５１１−１７及びギフトフラグ５１１−１８が平滑化条件に該当する。
【００７４】
例えば、それぞれのタスクに割り当てられる作業場所に大きいサイズの出荷箱のための自動封緘機と小さいサイズの出荷箱のための自動封緘機とが１台ずつ設置されており、一方のタスクに大きいサイズの出荷箱の出荷オーダ５０１が集中し、もう一方のタスクには小さいサイズの出荷箱の出荷オーダ５０１が集中した場合、それぞれの作業場所において自動封緘機の作業に渋滞が発生して全体としての生産性が低下する場合がある。ギフト用の包装についても同様である。このため、同一の平滑化条件が設定された出荷オーダ５０１を複数のタスクに平均的に分散することによって、全体の作業効率が向上することが期待できる。
【００７５】
例えば、出荷箱のサイズが「大」である出荷オーダ５０１をいずれかのタスクに分類しようとするときに、対象の全ての出荷オーダ５０１における、サイズ「大」の出荷箱の出荷オーダ５０１の比率と、各タスクに既に分類されている出荷オーダ５０１における、サイズ「大」の出荷箱の出荷オーダ５０１の比率とを比較し、後者の方が小さいタスクを分類先として選択してもよい。これによって、例えば、タスクごとにそれぞれに含まれる出荷箱のサイズ「大」「中」「小」の出荷オーダ５０１の比率を計算した場合に、その比率がタスク間で均等に近づくように、それぞれの属性（例えば出荷箱サイズ「大」「中」「小」）をもった出荷オーダ５０１がタスク間に分散される。ギフト用の包装についても同様の方法で分散することができる。
【００７６】
図６の例では、優先条件として業者切離し時間５１１−１４（すなわち出荷時刻）が、平滑化条件として箱情報５１１−１７が、それぞれ参照されている。この例において、出荷時刻が１７：００である出荷オーダ１、２、３、５、６、８はタスクグループ（Ｇｒ）１に分類される。出荷時刻が１８：００である出荷オーダ４、７、９、１０はタスクグループ２に分類される。すなわち、異なる優先条件が設定された出荷オーダに対応する作業は同一のタスクに分類されない。
【００７７】
タスクグループ１に分類された出荷オーダのうち、大サイズの出荷箱に対応する出荷オーダ１、３、６は、タスクグループ１内のタスク１１、１２、１３に分散して分類される。一方、タスクグループ１に分類された出荷オーダのうち、小サイズの出荷箱に対応する出荷オーダ２、５、８も、同様に、タスクグループ１内のタスク１１、１２、１３に分散して分類される。
【００７８】
タスクグループ２に分類された出荷オーダのうち、大サイズの出荷箱に対応する出荷オーダ７、９は、タスクグループ２内のタスク２１、２２に分散して分類される。一方、タスクグループ２に分類された出荷オーダのうち、小サイズの出荷箱に対応する出荷オーダ４、１０も、同様に、タスクグループ１内のタスク２１、２２に分散して分類される。
【００７９】
これによって、いずれのタスクも、大サイズの出荷箱の出荷オーダと小サイズの出荷箱の出荷オーダを一つずつ含むこととなり、特定のリソースへの負荷の集中等による作業効率の低下が防止される。また、優先条件が同一の出荷オーダを同一のタスクグループにまとめることによって、適切なタイミングで出荷箱が完成する工程計画を生成することができる。
【００８０】
さらに、作業計画システム１００は、出荷オーダ５０１の商品情報５１１−２１を参照して、タスクに含まれる商品の品目の偏りが大きくなるように、出荷オーダ５０１をタスクに分類してもよい。例えば、ある出荷オーダ５０１を複数のタスクのいずれかに分類しようとするときに、それぞれのタスクに既に１以上の出荷オーダ５０１が分類されていれば、分類対象の出荷オーダ５０１の出荷箱と、それぞれのタスクに既に分類されている出荷オーダ５０１の出荷箱との間で、同一品目の商品の重複率を計算し、重複率が最も高いタスクに分類対象の出荷オーダ５０１を分類してもよい。
【００８１】
このとき、重複率は、例えば、（品目が重複する商品数）／（分類対象の出荷箱の商品数＋タスクに既に分類されている商品数＋１）によって計算してもよい。
【００８２】
前述のように、作業員、作業に使用する機器及び作業場所といったリソースはタスクごとに割り当てられるため、タスクに含まれる商品の品目に偏りがあると、例えばピッキングのために商品の棚を搬送する回数が削減されるなどによって、全体の作業効率が向上することが期待できる。
【００８３】
図７は、本発明の実施例の作業計画システム１００によって生成される工程計画の説明図である。
【００８４】
図４の工程計画生成４０７において、作業計画システム１００は、それぞれのタスクの工程計画を生成する。具体的には、それぞれのタスクに含まれる出荷オーダ５０１の生産性５１１−５と、商品情報５１１−２１から特定される物量と、それぞれのタスクに割り当てるリソース量と、に基づいて、各工程の所要時間を計算することができる。
【００８５】
作業計画システム１００は、タスクグループ内の全てのタスクの工程作業が、当該タスクグループの出荷時刻までに終了するように、工程計画を作成する。このとき、作業計画システム１００は、各工程が作業ネットワーク情報マスタ４１１に規定された順序で開始され、上記の方法で計算された所要時間の経過後に終了するように、工程計画を作成する。そのための具体的な方法は限定しないが、例えば、割り当てるリソース量を変更しながら、全ての工程作業が出荷時刻までに終了する工程計画が得られるまで、所要時間の計算を繰り返してもよい。
【００８６】
図７には、同一のタスクグループに属するタスク１からタスク４の４つのタスクの工程計画の例を、バーチャートによって示す。この例において、切り離し時間は１６時である。また、バーの上に表示された数字は、それぞれの工程作業に割り当てられた作業員の人数（すなわちリソース量）である。また、それぞれのタスクにおいて、ピッキング、検品及び梱包の作業が順次行われる。
【００８７】
この例では、１２時に、タスク１のピッキングが開始される。その時点で割り当てられる作業員の数は１３人である。その後、ピッキングがある程度進捗した時点で、１３人中の６人が、ピッキングが終了した商品の検品を開始する。その時点で、ピッキングを行う作業員の数は７人に減少する。さらにその後、検品がある程度進捗した時点で、ピッキングを行う７人のうち３人と、検品を行う６人のうち２人とが、検品が終了した商品の梱包を開始する。その後、全ての商品のピッキングが終了すると、ピッキングを行っていた作業員４人のうち２人は検品に、残りの２人は梱包に移動する。その後、全ての商品の検品が終了すると、検品を行っていた６人全員が梱包に移動する。その後、全ての商品の梱包が終了すると、タスク１の全ての作業が終了する。
【００８８】
この例では、タスク１に終始１３人の作業員が割り当てられている。このため、例えば１３人でピッキングを行い、全ての商品のピッキングが終了したら１３人で検品を開始する、といった工程計画を作成することも可能である。しかし、その場合、ピッキングが終了してまだ検品されていない商品の仮置きのために多くの空間を使用する必要がある。そこで、上記のように、前工程（例えばピッキング）がある程度進捗したところでリソースの一部を移動させて次工程（例えば検品）を開始することで、仮置きの空間を節約しながら作業を進捗させることができる。前工程がどの程度進捗した時点で次工程を開始するかを示すパラメータは、例えばあらかじめ物量・リソース情報３０８等に含まれていてもよいし、工程計画を作成するときに与えてもよい。
【００８９】
図７の例では、タスク１の工程作業が開始された後で、タスク２及びタスク３の工程作業が開始される。これらの工程作業も、タスク１と同様に、前工程がある程度進捗した時点で次工程が開始されるように計画される。
【００９０】
さらに、図７の例では、タスク１の全ての工程作業が終了したら、タスク１に割り当てられていた作業員が、タスク４の工程作業を開始する。タスク４の工程作業も、タスク１と同様に、前工程がある程度進捗した時点で次工程が開始されるように計画される。また、タスク２及びタスク３の工程作業が全て終了すると、それぞれに割り当てられていた作業員がタスク４に移動してタスク４の工程作業を行うように計画される。
【００９１】
図７の例では、タスク２及び３の工程作業は、タスク１より遅れて開始される。これによって、タスク２及び３に割り当てられる作業員の拘束時間が短くなり、コストが削減される。作業計画システム１００は、リソースの単価情報（例えば作業員の時給等）を参照して、全体のコストが最小になるように工程計画を生成してもよい。リソースの単価情報は、物量・リソース情報３０８に含まれてもよい。
【００９２】
作業計画システム１００は、生成した工程計画における各タスクの各工程の開始時間及び終了時間（それぞれ、図７の各工程のバーの始端及び終端の時刻）を、対応する出荷オーダ５０１の工程計画生成部作業開始時間５１１−１９及び工程計画生成部作業終了時間５１１−２０に登録する。
【００９３】
図８は、本発明の実施例の作業計画システム１００が実行する処理の詳細を示すシーケンス図である。
【００９４】
図８に示すリソース制御システム（ＲＣＳ）監視部８０１及びタスク生成部８０２は、それぞれ、サーバ装置１０１のプロセッサ２０１がメモリ２０２内のリソース制御システム監視プログラム２０７及びタスク生成プログラム２０８を実行することによって実現される機能ブロックである。したがって、以下の説明においてこれらの各部が実行する処理は、実際にはプロセッサ２０１がメモリ２０２内のプログラムに基づいて実行する。
【００９５】
同様に、工程計画生成部８０３は、クライアント装置１０２のプロセッサ３０１がメモリ３０２内の工程計画生成プログラム３０７を実行することによって実現される機能ブロックである。したがって、以下の説明において工程計画生成部８０３が実行する処理は、実際にはプロセッサ３０１がメモリ３０２内のプログラムに基づいて実行する。
【００９６】
リソース制御システムデータベース２０９は、作業指示及び作業実績の少なくとも一方が入力されると（ステップ８１１）、それらに基づいて格納されているデータを更新する（ステップ８１２）。例えば、サーバ装置１０１が倉庫管理システム１０３から出荷オーダ４０３を入力された場合に、それらをリソース制御システムデータベース２０９に追加する。また、サーバ装置１０１が倉庫管理システム１０３から作業実績として例えばどのタスクのどの工程作業までが終了したかといった情報を入力された場合、それに基づいてリソース制御システムデータベース２０９内の実績データを更新する。これによって、その時点で受けている出荷オーダ４０３に対応する作業のうちまだ実行されていないものがどれであるかを特定することが可能になる。
【００９７】
リソース制御システム監視部８０１は、リソース制御システムデータベース２０９を定期的に監視して（ステップ８１３）、データを取得する（ステップ８１４、８１５）。そして、リソース制御システム監視部８０１は、タスク生成部８０２にタスク生成を指示する（ステップ８１６）。例えば、リソース制御システム監視部８０１は、その時点で受けている出荷オーダ４０３に対応する作業のうち、まだいずれのタスクにも分類されていないものを対象とするタスク生成を指示してもよいし、まだ実行されていないものを対象とするタスク生成を指示してもよい。
【００９８】
タスク生成部８０２は、指示に従ってタスク生成を実行し（ステップ８１７）、生成したタスク情報をリソース制御システムデータベース２０９に格納する（ステップ８１８、８１９）。また、この時までに新たな作業実績が得られていれば、それに従ってリソース制御システムデータベース２０９内の実績データが更新される（ステップ８１９）。
【００９９】
上記のタスク生成の処理は、図４のタスク生成４０５に相当する。このとき、タスク生成部８０２は、タスク生成の対象となる出荷オーダ４０３について、新たなタスクを生成してもよいし、既に生成されているタスクに分類してもよい。例えば、タスク生成部８０２は、一度タスク生成を行った後、新たに取得された出荷オーダ４０３について新たにタスク生成を行う場合、新たに取得された出荷オーダ４０３に対応する作業を新たに生成したタスクに分類してもよいし、既に生成されているタスクに分類してもよい。上記のタスク生成によって、少なくとも図５のタスク番号５１１−３が決定し、その値がリソース制御システムデータベース２０９内の出荷オーダ５１１に登録される。
【０１００】
一方、倉庫作業の管理者８０４は、クライアント装置１０２の工程計画生成部８０３を起動する（ステップ８２０）。工程計画生成部８０３は、リソース制御システムデータベース２０９からタスク情報及び実績情報を取得し（ステップ８２１、８２２）、取得した情報から工程計画生成入力データを生成して（ステップ８２３）、工程計画を生成する（ステップ８２４）。
【０１０１】
このとき、工程計画生成部８０３は、リソース制御システムデータベース２０９から取得した情報に基づいて、まだ工程計画が生成されていないタスクを対象として工程計画を生成してもよい。あるいは、工程計画生成部８０３は、実績情報を参照して、まだ工程計画が生成されていないタスクだけでなく、工程計画が作成されたもののまだ実行されていないタスクも対象として工程計画を生成してもよい。後者の場合、生成された工程計画と実際の進捗との間に乖離が生じていても、残りの全ての作業を対象としてその時点で最適と考えられる工程計画を生成することで、乖離を吸収して、全体の作業効率を改善することができる。
【０１０２】
また、工程計画生成部８０３は、生成された工程計画と実際の進捗との間の乖離を監視し、例えば乖離の大きさが所定の基準を超えるなど、乖離が所定の条件を満たした場合に、工程計画が作成されたもののまだ実行されていないタスクも対象として工程計画を生成してもよい。
【０１０３】
ステップ８２４における処理は、図４の工程計画生成４０７として説明したものである。その後、工程計画生成部８０３は、生成した工程計画を描画する（ステップ８２５）。例えば、工程計画生成部８０３は、図７に示すようなバーチャートを描画して、それをクライアント装置１０２の出力装置３０５から出力してもよい。管理者８０４は、このようなバーチャートを参照して、生成された工程計画が適切かどうかを判断し、必要があれば工程計画を変更したり、条件を変更して再実行を指示したりすることができる。
【０１０４】
その後、工程計画生成部８０３は、生成した工程計画に従うスケジュールを登録する（ステップ８２６）。これによって、スケジュールデータがリソース制御システムデータベース２０９に送信され、格納される（ステップ８２７、８２８）。その結果、工程計画生成の対象となったタスクの工程計画生成部作業開始時間５１１−１９及び工程計画生成部作業終了時間５１１−２０（図５）に、生成された工程計画に従う値が登録される。また、この時までに新たな作業実績が得られていれば、それに従ってリソース制御システムデータベース２０９内の実績データが更新される（ステップ８２８）。
【０１０５】
その後、工程計画生成部８０３は、必要に応じて、生成した工程計画をリソース制御システムデータベース２０９から登録結果を取得することができる（ステップ８２９）。
【０１０６】
その後、リソース制御システム監視部８０１は、リソース制御システムデータベース２０９を定期的に監視して（ステップ８３０）、データを取得する（ステップ８３１、８３２）。そして、リソース制御システム監視部８０１は、生成された工程計画に基づいて決定した適切なタイミングで、各リソース機器１０５に作業を指示するための指示データを送信する（ステップ８３３）。
【０１０７】
具体的には、対象のリソースが作業員である場合、リソース制御システム監視部８０１は、例えば作業内容を記載したテキスト図面等を表示するためのデータを指示データとして送信してもよい。また、対象のリソースがピッキングロボットなどの機器である場合には、それらを制御するためのデータを指示データとして生成して送信してもよい。
【０１０８】
これによって、各リソースが適切なタイミングで制御され、倉庫内の作業が最適化される。
【０１０９】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明のより良い理解のために詳細に説明したのであり、必ずしも説明の全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることが可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１１０】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によってハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによってソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、不揮発性半導体メモリ、ハードディスクドライブ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶デバイス、または、ＩＣカード、ＳＤカード、ＤＶＤ等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
【０１１１】
また、制御線及び情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線及び情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１１２】
１００  作業計画システム
１０１  サーバ装置
１０２  クライアント装置
１０３  倉庫管理システム
１０４  ネットワーク
１０５  リソース機器
【図１】
0006876108.tif 000002
【図２】
0006876108.tif 000003
【図３】
0006876108.tif 000004
【図４】
0006876108.tif 000005
【図５】
0006876108.tif 000006
【図６】
0006876108.tif 000007
【図７】
0006876108.tif 000008
【図８】
0006876108.tif 000009