(57)【要約】  番重内での配置を考慮した調理済み食品の仕分けを行う仕分け装置等を提供すること。  商品の寸法及び発注個数並びに番重の寸法に基づいて、商品を仕分ける仕分け装置において、前記番重毎に前記商品の積込み個数及び積込み位置を決定する決定部と、商品の種別により、前記番重毎に商品の順位付けを行う順位付け部と、前記番重の所定方向に沿って、各商品が順位順に並ぶように、前記決定部が決定した前記商品の積込み位置を変更する変更部とを備える。
2016140120.tif 000002
【特許請求の範囲】
【請求項１】
商品の寸法及び発注個数並びに番重の寸法に基づいて、商品を仕分ける仕分け装置において、
前記番重毎に前記商品の積込み個数及び積込み位置を決定する決定部と、
商品の種別により、前記番重毎に前記商品の順位付けを行う順位付け部と、
前記番重の所定方向に沿って、各商品が順位順に並ぶように、前記決定部が決定した前記商品の積込み位置を変更する変更部とを
備えることを特徴とする仕分け装置。
【請求項２】
前記決定部は、
前記商品毎に前記積込み個数、前記積込み位置を決定する単品決定部と、
該単品決定部が一の商品についての処理を終えた後に、前記番重に空きスペースがあるか否かを判定する判定部とを有し、
該判定部が、空きスペースがあると判定した場合に、前記単品決定部は前記空きスペースに積込む商品の積込み個数及び積込み位置を決定する
ことを特徴とする請求項１に記載の仕分け装置。
【請求項３】
前記単品決定部は、前記商品が積重ね可能である場合、積重ね段数が許容段数以下で、積み重ねた高さが前記番重の高さ寸法を超えないように、前記積重ね段数を決定する
ことを特徴とする請求項１または請求項２に記載の仕分け装置。
【請求項４】
前記単品決定部は、前記商品間及び前記商品と前記番重の周壁との間に所定寸法の隙間を確保するように、前記積込み数、積込み位置を決定する
ことを特徴とする請求項１から請求項３のいずれか一項に記載の仕分け装置。
【請求項５】
積込むべき商品の識別情報を取得する第１取得部と、
製造が完了し積込み可能な商品の識別情報を取得する第２取得部とを備え、
該第２取得部が取得した識別情報が、前記第１取得部が取得した識別情報に含まれる場合に、前記積込み可能な商品に関する、前記決定部、順位付け部及び変更部による処理を実行する
ことを特徴とする請求項１から請求項４のいずれか一項に記載の仕分け装置。
【請求項６】
前記第２取得部が取得した識別情報が、前記第１取得部が取得した全ての識別情報を含む場合に、前記積込み可能な商品に関する、前記決定部、順位付け部及び変更部による処理を実行する
ことを特徴とする請求項５に記載の仕分け装置。
【請求項７】
商品の寸法及び発注個数並びに番重の寸法に基づいて、商品を仕分けるコンピュータに、
前記番重毎に前記商品の積込み個数及び積込み位置を決定し、
商品の種別により、前記番重毎に商品の順位付けを行い、
前記番重の所定方向に沿って、各商品が順位順に並ぶように、前記決定部が決定した前記商品の積込み位置を変更する処理を
実行させることを特徴とするコンピュータプログラム。
【請求項８】
コンピュータが、商品の寸法及び発注個数並びに番重の寸法に基づいて、商品を仕分ける仕分け方法において、
前記番重毎に前記商品の積込み個数及び積込み位置を決定し、
商品の種別により、前記番重毎に商品の順位付けを行い、
前記番重の所定方向に沿って、各商品が順位順に並ぶように、前記決定部が決定した前記商品の積込み位置を変更する
ことを特徴とする仕分け方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、調理済み食品を配送先毎に仕分けを行う仕分け装置等に関する。
【背景技術】
【０００２】
食品工場で製造される弁当、おにぎり、サンドイッチなどの調理済み食品は、出荷先である店舗毎に仕分けされ、運搬容器（搬送コンテナ）に積込まれ配送される。調理済み食品の仕分けを効率的に行うために、運搬容器毎に投入すべき調理済み食品を指示する仕分け装置が提案されている（特許文献１）。なお、以下の説明においては、運搬容器を「番重」（ばんじゅう）と記す。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−２４２１２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、従来の仕分け装置では、複数種類の調理済み食品を番重毎に仕分ける場合に、各調理済み食品を番重内でどのように配置するかを考慮していない。番重内での配置を考慮しないで、複数の調理済み食品を仕分け、番重に積込んだ場合、配送時のトラックの振動や危険回避のための急ブレーキにより、番重内で移動した弁当がおにぎりを潰してしまうなどの不具合が発生する。【０００５】
本発明はかかる事情に鑑みてなされたものである。その目的は、番重内での配置を考慮した調理済み食品の仕分けを行う仕分け装置などを提供することである。
【課題を解決するための手段】
【０００６】
本明細書に開示する仕分け装置は、商品の寸法及び発注個数並びに番重の寸法に基づいて、商品を仕分ける仕分け装置において、前記番重毎に前記商品の積込み個数及び積込み位置を決定する決定部と、商品の種別により、前記番重毎に前記商品の順位付けを行う順位付け部と、前記番重の所定方向に沿って、各商品が順位順に並ぶように、前記決定部が決定した前記商品の積込み位置を変更する変更部とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明の一観点によれば、配送時の不具合の発生を抑制することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】食品システムの構成例を示すブロック図である。
【図２】仕分け装置のハードウェア構成例を示すブロック図である。
【図３】商品データベースのレコードレイアウトの例を示す説明図である。
【図４】受注情報データベースのレコードレイアウトの例を示す説明図である。
【図５】仕分け処理の手順の一例を示すフローチャートである。
【図６】仕分け処理の手順の一例を示すフローチャートである。
【図７】積込み数算出処理の手順の一例を示すフローチャートである。
【図８】積込み数算出処理の手順の一例を示すフローチャートである。
【図９】積込み判定処理の手順の一例を示すフローチャートである。
【図１０】積込み判定処理の手順の一例を示すフローチャートである。
【図１１】積込み判定処理の手順の一例を示すフローチャートである。
【図１２】積込み判定処理の手順の一例を示すフローチャートである。
【図１３】積込み判定処理の手順の一例を示すフローチャートである。
【図１４】積込み判定処理の手順の一例を示すフローチャートである。
【図１５】積込み判定処理の手順の一例を示すフローチャートである。
【図１６】積込み判定処理の途中結果の一例を示す説明図である。
【図１７Ａ】番重の余裕スペースの一例を示す説明図である。
【図１７Ｂ】番重の余裕スペースの一例を示す説明図である。
【図１８】商品を積込み途上の番重の例を示す説明図である。
【図１９】積込み数算出処理により求められた積込みレイアウトの一例を示す説明図    である。
【図２０】積込み領域データベースのレコードレイアウトの一例を示す説明図である    。
【図２１】積込み方法指示処理の手順を示すフローチャートである。
【図２２】積込み方法指示処理後の積込みレイアウトの一例を示す説明図である。
【図２３】積込み方法指示処理後の積込み領域データベースの一例を示す説明図であ    る。
【図２４】仕分け処理の手順の一例を示すフローチャートである。
【図２５】仕分け処理の手順の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、実施の形態を、図面を参照して説明する。本願に係る仕分け装置は、食品システムの構成要素の１つである。食品システムは、コンビニエンスストア（以下、コンビニと記す）、スーパーマーケット、百貨店等で販売される調理済み食品の製造及び配送を管理する情報システムである。ここで、調理済み食品（以下、商品と記す）には、弁当、おにぎり、サンドイッチなどや、シュークリーム、エクレアなどの菓子類も含むものとする。また、番重は、矩形状の底板と当該底板の周縁から略垂直に延びる側板（周壁）を含む、一面が開口された直方体状の箱体とする。
【００１０】
実施の形態１
図１は、食品システム１の構成例を示すブロック図である。食品システム１は、店舗ＰＯＳ（ｐｏｉｎｔ  ｏｆ  ｓａｌｅ  ｓｙｓｔｅｍ）装置２、受注管理システム３、食品製造システム４、仕分けシステム５及び配送便システム６を含む。店舗ＰＯＳ装置２と受注管理システム３とは、例えば専用回線で接続されている。また、受注管理システム３と食品製造システム４とも、例えば専用回線で接続されている。食品製造システム４、仕分けシステム５及び配送便システム６は、例えばＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネット、電話回線、衛星回線等により接続されている。
【００１１】
店舗ＰＯＳ装置２は、コンビニのＰＯＳに係るコンピュータである。図１では、店舗ＰＯＳ装置２は、例えば３台である。しかし、店舗ＰＯＳ装置２は、少なくともコンビニ店舗の数だけ存在する。店舗ＰＯＳ装置２は、客に販売するための商品の発注情報を受注管理システム３に送信する。
【００１２】
受注管理システム３は、店舗ＰＯＳ装置２からの発注情報、すなわち受注情報を管理するシステムである。受注管理システム３は、店舗ＰＯＳ装置２から受信した受注情報を食品製造システム４に送信する。
【００１３】
食品製造システム４は、コンビニに配送する商品を製造する製造作業及び製造装置を管理するシステムである。食品製造システム４は、受注管理システム３から商品の受注情報を受信する。
仕分けシステム５は、食品製造システム４が製造した商品を配送先の店舗毎に仕分ける仕分作業又は仕分け装置１０及び搬送装置２０を管理するシステムである。
配送便システム６は、店舗毎に仕分けられた商品を配送するトラック便を管理するシステムである。店舗毎に仕分けられた商品は、配送便システム６の指示に従い、トラック便により店舗に配送される。
食品製造システム４、仕分けシステム５及び配送便システム６は、互いに情報の送受信を行い、連携して店舗に配送する商品を管理している。
【００１４】
仕分けシステム５は、仕分け装置１０、搬送装置２０を含む。仕分け装置１０、搬送装置２０は、有線又は無線により互いに接続されている。
仕分け装置１０は、メインフレーム、ワークステーション等のコンピュータである。仕分け装置１０は、商品を店舗毎に仕分け、番重への積込み方を搬送装置２０に指示する。
搬送装置２０は、アームを有する自走走行ロボット、ピッキングロボット等である。搬送装置２０は、仕分け装置１０の指示に従い商品を店舗別の番重に積込む。
【００１５】
図２は、仕分け装置１０のハードウェア構成例を示すブロック図である。仕分け装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）（決定部、順位付け部、変更部、第１取得部、第２取得部、単品決定部、判定部）１１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３及びハードディスク１４を含む。また、仕分け装置１０は、ディスクドライブ１５、通信部１６、表示部１７及び操作部１８を含む。仕分け装置１０の各構成部は、バス１０ｂを介して接続されている。
【００１６】
ＣＰＵ１１は、仕分け装置１０の各構成部を制御する。ＣＰＵ１１は、ハードディスク１４に記憶されたプログラム（コンピュータプログラム）１０ＰをＲＡＭ１３に読み出し、当該プログラム１０Ｐを実行する。
【００１７】
ＲＯＭ１２は、不揮発性の半導体メモリ又は半導体メモリ以外の読み出し専用記憶媒体である。ＲＯＭ１２は、仕分け装置１０の起動時にＣＰＵ１１が実行するＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、ファームウェア等を記憶している。
【００１８】
ＲＡＭ１３は、主記憶装置である。ＲＡＭ１３は、ＣＰＵ１１による処理の過程で必要な作業変数、データ等を一時的に記憶する。なお、ＲＡＭ１３は、フラッシュメモリ、メモリカード等により代替されてもよい。
【００１９】
ハードディスク１４は、補助記憶装置である。ハードディスク１４は、ＣＰＵ１１が実行するプログラム１０Ｐを記憶している。ハードディスク１４は、仕分け装置１０の内部に取り付けられるものであっても、仕分け装置１０の外部に置かれるものであってもよい。なお、ハードディスク１４は、大容量の情報の記憶が可能なフラッシュメモリ、ＣＤ（Cｏｍｐａｃｔ  Ｄｉｓｃ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＢＤ（Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ、）等の光ディスク１０ｄで代替されてもよい。
【００２０】
ディスクドライブ１５は、外部の記憶媒体である光ディスク１０ｄから情報を読み出し、読み出した情報を光ディスク１０ｄに記録する記録装置である。
通信部１６は、モデム又はＬＡＮ（Local Area Network）カード等である。通信部１６は、受注管理システム３、食品製造システム４内の各構成部、仕分けシステム５及び配送便システム６と情報の送受信をする。仕分け装置１０は、通信部１６を介してインターネットにも接続されている。
【００２１】
表示部１７は、例えば液晶ディスプレイ、有機ＥＬ（Electro-Luminescence）ディスプレイ等の画面を有し、ＣＰＵ１１からの指示に従って、プログラム１０Ｐに係る様々な画面を表示する。
【００２２】
操作部１８は、ユーザが各種の入力を行うキーボード、マウス、表示部１７の画面に設けられたタッチパネル等の入力デバイスである。操作部１８は、ユーザによる操作に基づいて入力信号を生成する。生成された入力信号は、バス１０ｂを介してＣＰＵ１１に出力される。
【００２３】
なお、ＣＰＵ１１は、ディスクドライブ１５を介して、プログラム１０Ｐを光ディスク１０ｄから読み込んでもよい。ＣＰＵ１１は、通信部１６を介して、プログラム１０Ｐを外部の情報処理装置又は記憶装置から読み込んでもよい。さらに、プログラム１０Ｐを記憶したフラッシュメモリ等の半導体メモリ１０ｍが、仕分け装置１０内に実装されていてもよい。
【００２４】
次に仕分け装置１０が用いるデータベースについて説明する。図３は商品データベース１４１のレコードレイアウトの例を示す説明図である。商品データベース１４１は、例えばハードディスク１４に記憶されている。商品データベース１４１は、商品コード列、商品名列、カテゴリー列、縦列、横列、高さ列、隙間列、重量列、形状列、積み重ね可否列、段数列の各列を含む。商品コード列は商品を一意に特定するコード（識別情報）を記憶する。商品名列は商品名を記憶する。カテゴリー列は商品のカテゴリー（種別）を示す記号、数字などを記憶する。例えば、弁当などの容器に入っていてつぶれにくい商品のカテゴリーをＡとする。おにぎりなどの容器に入っていないが変形しにくい商品のカテゴリーをＢとする。シュークリームなど容器に入っておらずつぶれやすい商品のカテゴリーをＣとする。縦列は商品の縦の寸法値を記憶する。横列は商品の横の寸法値を記憶する。高さ列は商品の高さの寸法値を記憶する。隙間列は商品を番重に積込んだ際に、当該商品と隣の商品または番重の壁との間に設けるべき隙間の寸法値を記憶する。重量列は商品の重量を記憶する。形状列は商品の形状を示す記号、数字などを記憶する。例えば、商品が丸容器に入っていれば１、商品が長方形容器に入っていれば２、商品が丸おにぎりであれば３、商品が三角おにぎりであれば４、丸いお菓子であれば５、細長いお菓子であれば６とする。積み重ね可否列は商品を番重に積込む際に積み重ねても良いか否かを示す積み重ね可否フラグの値を記憶する。値１は積み重ねが可能であることを示す。値０は積み重ねができないことを示す。段数列は積み重ねが可能である場合に、積重ね可能な段数（許容段数）を記憶する。
【００２５】
図４は受注情報データベース１４２のレコードレイアウトの例を示す説明図である。受注情報データベース１４２は、例えばハードディスク１４に記憶されている。受注情報データベース１４２は店舗コード列、商品コード列、受注数量列を含む。店舗コード列は受注情報に対応付けられた店舗、すなわち発注をした店舗のコードを記憶する。商品コード列は受注した商品のコードを記憶する。受注数量列は受注した数量（発注個数）を記憶する。
【００２６】
なお、商品データベース１４１、受注情報データベース１４２は、ハードディスク１４に記憶されているとしたが、それに限らない。仕分け装置１０以外の受注管理システム３や食品製造システム４に記憶されていても良いし、その他の仕分け装置１０からアクセス可能なデータベース装置に記憶されていても良い。
【００２７】
次に仕分け装置１０が行う情報処理について説明する。図５及び図６は仕分け処理の手順の一例を示すフローチャートである。仕分け装置１０のＣＰＵ１１は受注情報データベース１４２から受注情報を読込む（ステップＳ１）。ＣＰＵ１１は読込んだ受注情報を店舗コード毎に分け、処理対象とする店舗を選択する（ステップＳ２）。ＣＰＵ１１は商品を積込む番重の寸法を変数に設定する。ＣＰＵ１１は、変数Ｇに番重の縦寸法の値を、変数Ｈに番重の横寸法の値を、変数Ｉに番重の高さ寸法の値を設定する（ステップＳ３）。寸法はいずれも商品の収納スペースを規定する番重の内寸法である。ＣＰＵ１１は、食品製造システム４により製造され、店舗毎の仕分けを待っている商品の１つを選択する（ステップＳ４）。ＣＰＵ１１は、選択した商品の情報を読込む（ステップＳ５）。ＣＰＵ１１は選択した商品が処理対象店舗から受注した商品であるか否かを判定する（ステップＳ６）。ＣＰＵ１１は、選択した商品が受注した商品ではないと判定した場合（ステップＳ６でＮＯ）、処理をステップＳ４に戻す。ＣＰＵ１１は、選択した商品が受注した商品であると判定した場合（ステップＳ６でＹＥＳ）、商品の寸法を変数に設定する。ＣＰＵ１１は、変数Ｃに商品の縦寸法の値を、変数Ｄに商品の横寸法の値を、変数Ｅに商品の高さ寸法の値を、変数Ｆに商品の隙間寸法の値を、それぞれ設定する（ステップＳ７）。
【００２８】
ＣＰＵ１１は選択した商品を積込む個数（積込み数）を算出する（ステップＳ８）。この積込み数算出処理については、後述する。ＣＰＵ１１は残数があるか否か判定する（ステップＳ９）。すなわち、受注数分の商品が積込み可能であるか否か判定する。ＣＰＵ１１は残数があると判定した場合（ステップＳ９でＹＥＳ）、番重を新たなものとし、番重の寸法を各変数に設定する（ステップＳ１０）。この処理は上述のステップＳ３と同様な処理である。ＣＰＵ１１は処理をステップＳ８に戻す。
【００２９】
ＣＰＵ１１は残数がないと判定した場合（ステップＳ９でＮＯ）、未処理の他の商品があるか否かを判定する（ステップＳ１１）。ＣＰＵ１１は他の商品があると判定した場合（ステップＳ１１でＹＥＳ）、番重に余裕があるか否かを判定する（ステップＳ１２）。ＣＰＵ１１は番重に余裕があると判定した場合（ステップＳ１２でＹＥＳ）、処理をステップＳ４に戻す。ＣＰＵ１１は番重に余裕がないと判定した場合（ステップＳ１２でＮＯ）、番重を新たなものとし、番重の寸法を各変数に設定する（ステップＳ１３）。この処理は上述のステップＳ３及びステップＳ１０と同様な処理である。ＣＰＵ１１は処理をステップＳ４に戻す。
【００３０】
ＣＰＵ１１は他の商品がないと判定した場合（ステップＳ１１でＮＯ）、積込み方法を搬送装置２０に指示する（ステップＳ１４）。ＣＰＵ１１は未処理の店舗又は処理が完了していない店舗があるか否かを判定する（ステップＳ１５）。ＣＰＵ１１は未処理の店舗又は処理が完了していない店舗があると判定した場合（ステップＳ１５でＹＥＳ）、処理をステップＳ２に戻す。ＣＰＵ１１は未処理の店舗及び処理が完了していない店舗がないと判定した場合（ステップＳ１５でＮＯ）、仕分け処理を終了する。
【００３１】
なお、ＣＰＵ１１がステップＳ４を実行したときに、処理対象店舗に対応付けられたいずれの商品も製造が完了していない場合、ＣＰＵ１１は処理をステップＳ２に戻し、他の店舗についての処理を行っても良い。
また、処理対象店舗に対応付けられた一部の商品について、仕分け処理をしたものの、残りの商品については製造が完了しておらず、積込みができない場合は、当該店舗についての処理を中断し、仕分け処理の完了していない他の店舗の処理を行っても良い。
【００３２】
次に積込み数算出処理について説明する。図７及び図８は積込み数算出処理の手順の一例を示すフローチャートである。ＣＰＵ１１は積込み判定処理を行う（ステップＳ２１）。図９から図１５は積込み判定処理の手順の一例を示すフローチャートである。ＣＰＵ１１は、番重の横方向に商品の横方向を合わせた場合に、横方向に何個積込み可能であるかを算出する。番重の横寸法はＨ、商品の横寸法はＤであり、隣接する商品間には寸法Ｆの隙間（所定寸法の隙間）を設けるので、ＣＰＵ１１は式（１）により、Ｎｃ１を求める（ステップＳ４１）。
【００３３】
Ｎｃ１＝Ｈ  ｄｉｖ  （Ｄ＋Ｆ）・・・（１）
【００３４】
ここで演算子ｄｉｖは、除算した商の整数部を求める演算子である。Ａ  ｄｉｖ  Ｂ＝Ｃは、ＡをＢで除算した場合の商の値がＣであることを示している。
【００３５】
ＣＰＵ１１はＮｃ１が０より大きいかを判定する（ステップＳ４２）。ＣＰＵ１１はＮｃ１が０より大きいと判定した場合（ステップＳ４２でＹＥＳ）、式（２）が成り立つか否かを判定する（ステップＳ４３）。
【００３６】
Ｈ  ｍｏｄ  （Ｄ＋Ｆ）≧Ｆ・・・（２）
【００３７】
ここで演算子ｍｏｄは、除算の剰余を求める演算子である。Ａ  ｍｏｄ  Ｂ＝Ｄは、ＡをＢで除算した余りがＤであることを示している。
【００３８】
式（１）では複数商品の並列方向一端の商品と番重の側板との隙間は考慮されているが、他端の商品と番重の側壁との隙間は考慮されていないので、式（２）により他方の隙間を設けられるか否かを判定している。
【００３９】
ＣＰＵ１１は、式（２）が成り立つ場合（ステップＳ４３でＹＥＳ）、すなわち隙間を確保できる場合、処理をステップＳ４５に進める。ＣＰＵ１１は、式（２）が成り立たない場合（ステップＳ４３でＮＯ）、すなわち隙間を確保できない場合は、横方向に積込む個数Ｎｃ１を減らす（ステップＳ４４）。
【００４０】
ＣＰＵ１１は同様に、番重の横方向に商品の横方向を合わせた場合に、縦方向に何個積込み可能であるかを算出する。番重の縦寸法はＧ、商品の縦寸法はＣであり、隣接する商品間には寸法Ｆの隙間を設けるので、ＣＰＵ１１は式（３）により、Ｎｒ１を求める（ステップＳ４５）。
【００４１】
Ｎｒ１＝Ｇ  ｄｉｖ  （Ｃ＋Ｆ）・・・（３）
【００４２】
ＣＰＵ１１はＮｒ１が０より大きいかを判定する（ステップＳ４６）。ＣＰＵ１１はＮｒ１が０より大きいと判定した場合（ステップＳ４６でＹＥＳ）、式（４）が成り立つか否かを判定する（ステップＳ４７）。
【００４３】
Ｇ  ｍｏｄ  （Ｃ＋Ｆ）≧Ｆ・・・（４）
【００４４】
式（３）では複数商品の並列方向一端の商品と番重の側板との隙間は考慮されているが、他端の商品と番重の側壁との隙間は考慮されていないので、式（４）により他方の隙間を設けられるか否かを判定している。
【００４５】
ＣＰＵ１１は、式（４）が成り立つ場合（ステップＳ４７でＹＥＳ）、すなわち隙間を確保できる場合、処理をステップＳ４９に進める。ＣＰＵ１１は、式（４）が成り立たな場合（ステップＳ４７でＮＯ）、すなわち隙間を確保できない場合は、縦方向に積込む個数Ｎｒ１を減らす（ステップＳ４８）。
【００４６】
ＣＰＵ１１は横方向に積込める個数Ｎｃ１と、縦方向に積込める個数Ｎｒ１とを乗算し、商品の積込める個数Ｎ１を算出する（ステップＳ４９）。ＣＰＵ１１はＮｃ１が０以下と判定した場合（ステップＳ４２でＮＯ）、またはＮｒ１が０以下と判定した場合（ステップＳ４６でＮＯ）、積込める個数Ｎ１を０に設定し（ステップＳ５０）、処理をステップＳ７０に移す。図１６は積込み判定処理の途中結果の一例を示す説明図である。図１６は商品を積込んだ番重の平面図を示している。図１６に示す例では、左下から右方向及び左方向に商品を積込んだ場合を示している。図１６の紙面上側部分、右側部分に余裕スペース（空きスペース）がある。次に、ＣＰＵ１１は余裕スペースに商品の向きを替えて積込むことを試みる。
【００４７】
ＣＰＵ１１は余裕スペースの縦方向の寸法Ｇ’、横方向の寸法Ｈ’を算出する（ステップＳ５１）。図１７Ａ及び１７Ｂは番重の余裕スペースの一例を示す説明図である。図１７Ａ及び１７Ｂは図１６と同様な平面図である。図１７Ａ及び１７Ｂの右上部分は２つの余裕スペースが重なる部分である。そのため、余裕スペースに商品の積込みを考える場合、重なる部分を図１７Ａに示すように縦長の余裕スペースに含めるときと、重なる部分を図１７Ｂに示すように横長の余裕スペースに含めるときとを検討する必要がある。前者の処理から説明する。
【００４８】
ＣＰＵ１１は縦寸法がＧ’、横寸法がＨ−Ｈ’の余裕スペースにおいて、横方向に積込める商品の個数Ｎｃ１１、縦方向に積込める商品の個数Ｎｒ１１を算出する（ステップＳ５２）。ＣＰＵ１１はＮｃ１１＝０またはＮｒ１１＝０であるか否かを判定する（ステップＳ５３）。ＣＰＵ１１はＮｃ１１＝０またはＮｒ１１＝０であると判定した場合（ステップＳ５３でＹＥＳ）、処理をステップＳ５６に移す。ＣＰＵ１１はＮｃ１１及びＮｒ１１が０でないと判定した場合（ステップＳ５３でＮＯ）、横方向の端に隙間が確保できるか否かを判定する（ステップＳ５４）。ＣＰＵ１１は隙間が確保できると判定した場合（ステップＳ５４でＹＥＳ）、処理をステップＳ５６に移す。ＣＰＵ１１は隙間が確保できないと判定した場合（ステップＳ５４でＮＯ）、個数Ｎｃ１１を減らす（ステップＳ５５）。
【００４９】
ＣＰＵ１１は縦寸法がＧ、横寸法がＨ’の余裕スペースにおいて、横方向に積込める商品の個数Ｎｃ１２、縦方向に積込める商品の個数Ｎｒ１２を算出する（ステップＳ５６）。ＣＰＵ１１はＮｃ１２＝０またはＮｒ１２＝０であるか否かを判定する（ステップＳ５７）。ＣＰＵ１１はＮｃ１２＝０またはＮｒ１２＝０であると判定した場合（ステップＳ５７でＹＥＳ）、処理をステップＳ６０に移す。ＣＰＵ１１はＮｃ１２及びＮｒ１２が０でないと判定した場合（ステップＳ５７でＮＯ）、縦方向の端に隙間が確保できるか否かを判定する（ステップＳ５８）。ＣＰＵ１１は隙間が確保できると判定した場合（ステップＳ５８でＹＥＳ）、処理をステップＳ６０に移す。ＣＰＵ１１は隙間が確保できないと判定した場合（ステップＳ５８でＮＯ）、個数Ｎｒ１２を減らす（ステップＳ５９）。ＣＰＵ１１は２つの余裕スペースに積込める商品の個数Ｎ１’を算出する（ステップＳ６０）。
【００５０】
つぎに、ＣＰＵ１１は、重なる部分を図１７Ｂに示すように横長の余裕スペースに含めるときの処理を行う。ＣＰＵ１１は縦寸法がＧ’、横寸法がＨの余裕スペースにおいて、横方向に積込める商品の個数Ｎｃ１３、縦方向に積込める商品の個数Ｎｒ１３を算出する（ステップＳ６１）。ＣＰＵ１１はＮｃ１３＝０またはＮｒ１３＝０であるか否かを判定する（ステップＳ６２）。ＣＰＵ１１はＮｃ１３＝０またはＮｒ１３＝０であると判定した場合（ステップＳ６２でＹＥＳ）、処理をステップＳ６５に移す。ＣＰＵ１１はＮｃ１３及びＮｒ１３が０でないと判定した場合（ステップＳ６２でＮＯ）、横方向の端に隙間が確保できるか否かを判定する（ステップＳ６３）。ＣＰＵ１１は隙間が確保できると判定した場合（ステップＳ６３でＹＥＳ）、処理をステップＳ６５に移す。ＣＰＵ１１は隙間が確保できないと判定した場合（ステップＳ６３でＮＯ）、個数Ｎｃ１３を減らす（ステップＳ６４）。
【００５１】
ＣＰＵ１１は縦寸法がＧ−Ｇ’、横寸法がＨ’の余裕スペースにおいて、横方向に積込める商品の個数Ｎｃ１４、縦方向に積込める商品の個数Ｎｒ１４を算出する（ステップＳ６５）。ＣＰＵ１１はＮｃ１４＝０またはＮｒ１４＝０であるか否かを判定する（ステップＳ６６）。ＣＰＵ１１はＮｃ１４＝０またはＮｒ１４＝０であると判定した場合（ステップＳ６６でＹＥＳ）、処理をステップＳ６９に移す。ＣＰＵ１１はＮｃ１４及びＮｒ１４が０でないと判定した場合（ステップＳ６６でＮＯ）、縦方向の端に隙間が確保できるか否かを判定する（ステップＳ６７）。ＣＰＵ１１は隙間が確保できると判定した場合（ステップＳ６７でＹＥＳ）、処理をステップＳ６９に移す。ＣＰＵ１１は隙間が確保できないと判定した場合（ステップＳ６７でＮＯ）、個数Ｎｒ１４を減らす（ステップＳ６８）。ＣＰＵ１１は２つの余裕スペースに積込める商品の個数Ｎ１’’を算出する（ステップＳ６９）。
【００５２】
続いて、ＣＰＵ１１は、番重の横方向に商品の縦方向を合わせた場合に、横方向に何個積込み可能であるかを算出する。番重の横寸法はＨ、商品の縦寸法はＣであり、隣接する商品間には寸法Ｆの隙間を設けるので、ＣＰＵ１１は式（５）により、Ｎｃ２を求める（ステップＳ７０）。
【００５３】
Ｎｃ２＝Ｈ  ｄｉｖ  （Ｃ＋Ｆ）・・・（５）
【００５４】
ＣＰＵ１１はＮｃ２が０より大きいかを判定する（ステップＳ７１）。ＣＰＵ１１はＮｃ２が０より大きいと判定した場合（ステップＳ７１でＹＥＳ）、式（６）が成り立つか否かを判定する（ステップＳ７２）。
【００５５】
Ｈ  ｍｏｄ  （Ｃ＋Ｆ）≧Ｆ・・・（６）
【００５６】
式（５）では複数商品の並列方向一端の商品と番重の側板との隙間は考慮されているが、他端の商品と番重の側壁との隙間は考慮されていないので、式（６）により他方の隙間を設けられるか否かを判定している。
【００５７】
ＣＰＵ１１は、式（６）が成り立つ場合（ステップＳ７２でＹＥＳ）、すなわち隙間を確保できる場合、処理をステップＳ７４に進める。ＣＰＵ１１は、式（６）が成り立たな場合（ステップＳ７２でＮＯ）、すなわち隙間を確保できない場合は、横方向に積込む個数Ｎｃ２を減らす（ステップＳ７３）。
【００５８】
ＣＰＵ１１は同様に、番重の横方向に商品の縦方向を合わせた場合に、縦方向に何個積込み可能であるかを算出する。番重の縦寸法はＧ、商品の横寸法はＤであり、隣接する商品間には寸法Ｆの隙間を設けるので、ＣＰＵ１１は式（７）により、Ｎｒ２を求める（ステップＳ７４）。
【００５９】
Ｎｒ２＝Ｇ  ｄｉｖ  （Ｄ＋Ｆ）・・・（７）
【００６０】
ＣＰＵ１１はＮｒ２が０より大きいかを判定する（ステップＳ７５）。ＣＰＵ１１はＮｒ２が０より大きいと判定した場合（ステップＳ７５でＹＥＳ）、式（８）が成り立つか否かを判定する（ステップＳ７６）。
【００６１】
Ｈ  ｍｏｄ  （Ｄ＋Ｆ）≧Ｆ・・・（８）
【００６２】
式（７）では複数商品の並列方向一端の商品と番重の側板との隙間は考慮されているが、他端の商品と番重の側壁との隙間は考慮されていないので、式（８）により他方の隙間を設けられるか否かを判定している。
【００６３】
ＣＰＵ１１は、式（８）が成り立つ場合（ステップＳ７６でＹＥＳ）、すなわち隙間を確保できる場合、処理をステップＳ７８に進める。ＣＰＵ１１は、式（８）が成り立たな場合（ステップＳ７６でＮＯ）、すなわち隙間を確保できない場合は、縦方向に積込む個数Ｎｒ２を減らす（ステップＳ７７）。
【００６４】
ＣＰＵ１１は横方向に積込める個数Ｎｃ２と、縦方向に積込める個数Ｎｒ２とを乗算し、商品の積込める個数Ｎ２を算出する（ステップＳ７８）。ＣＰＵ１１はＮｃ２が０以下と判定した場合（ステップＳ７１でＮＯ）、またはＮｒ２が０以下と判定した場合（ステップＳ７５でＮＯ）、積込める個数Ｎ２を０に設定し（ステップＳ８０）、処理をステップＳ９９に移す。
【００６５】
次に、図１６と同様に、左下から右方向及び左方向に商品を積込みと、図１６と同様に上側部分、右側部分に余裕スペースが残る。ＣＰＵ１１は余裕スペースに商品の向きを替えて積込みことを試みる。
【００６６】
ＣＰＵ１１は余裕スペースの縦方向の寸法Ｇ’’、横方向の寸法Ｈ’’を算出する（ステップＳ７９）。上述と同様に、余裕スペースに商品の積込みを考える場合において、重なる部分を図１７Ａに示すように縦長の余裕スペースに含めるときと、重なる部分を図１７Ｂに示すように横長の余裕スペースに含めるときとに分けて検討する。前者の処理から説明する。
【００６７】
ＣＰＵ１１は縦寸法がＧ’’、横寸法がＨ−Ｈ’’の余裕スペースにおいて、横方向に積込める商品の個数Ｎｃ２１、縦方向に積込める商品の個数Ｎｒ２１を算出する（ステップＳ８１）。ＣＰＵ１１はＮｃ２１＝０またはＮｒ２１＝０であるか否かを判定する（ステップＳ８２）。ＣＰＵ１１はＮｃ２１＝０またはＮｒ２１＝０であると判定した場合（ステップＳ８２でＹＥＳ）、処理をステップＳ８５に移す。ＣＰＵ１１はＮｃ２１及びＮｒ２１が０でないと判定した場合（ステップＳ８２でＮＯ）、横方向の端に隙間が確保できるか否かを判定する（ステップＳ８３）。ＣＰＵ１１は隙間が確保できると判定した場合（ステップＳ８３でＹＥＳ）、処理をステップＳ８５に移す。ＣＰＵ１１は隙間が確保できないと判定した場合（ステップＳ８３でＮＯ）、個数Ｎｃ２１を減らす（ステップＳ８４）。
【００６８】
ＣＰＵ１１は縦寸法がＧ、横寸法がＨ’’の余裕スペースにおいて、横方向に積込める商品の個数Ｎｃ２２、縦方向に積込める商品の個数Ｎｒ２２を算出する（ステップＳ８５）。ＣＰＵ１１はＮｃ２２＝０またはＮｒ２２＝０であるか否かを判定する（ステップＳ８６）。ＣＰＵ１１はＮｃ２２＝０またはＮｒ２２＝０であると判定した場合（ステップＳ８６でＹＥＳ）、処理をステップＳ８９に移す。ＣＰＵ１１はＮｃ２２及びＮｒ２２が０でないと判定した場合（ステップＳ８６でＮＯ）、縦方向の端に隙間が確保できるか否かを判定する（ステップＳ８７）。ＣＰＵ１１は隙間が確保できると判定した場合（ステップＳ８７でＹＥＳ）、処理をステップＳ８９に移す。ＣＰＵ１１は隙間が確保できないと判定した場合（ステップＳ８７でＮＯ）、個数Ｎｒ２２を減らす（ステップＳ８８）。ＣＰＵ１１は２つの余裕スペースに積込める商品の個数Ｎ２’を算出する（ステップＳ８９）。
【００６９】
つぎに、ＣＰＵ１１は、重なる部分を図１７Ｂと同様に横長の余裕スペースに含めるときの処理を行う。ＣＰＵ１１は縦寸法がＧ’’、横寸法がＨの余裕スペースにおいて、横方向に積込める商品の個数Ｎｃ２３、縦方向に積込める商品の個数Ｎｒ２３を算出する（ステップＳ９０）。ＣＰＵ１１はＮｃ２３＝０またはＮｒ２３＝０であるか否かを判定する（ステップＳ９１）。ＣＰＵ１１はＮｃ２３＝０またはＮｒ２３＝０であると判定した場合（ステップＳ９１でＹＥＳ）、処理をステップＳ９４に移す。ＣＰＵ１１はＮｃ２３及びＮｒ２３が０でないと判定した場合（ステップＳ９１でＮＯ）、横方向の端に隙間が確保できるか否かを判定する（ステップＳ９２）。ＣＰＵ１１は隙間が確保できると判定した場合（ステップＳ９２でＹＥＳ）、処理をステップＳ９４に移す。ＣＰＵ１１は隙間が確保できないと判定した場合（ステップＳ９２でＮＯ）、個数Ｎｃ２３を減らす（ステップＳ９３）。
【００７０】
ＣＰＵ１１は縦寸法がＧ−Ｇ’’、横寸法がＨ’’の余裕スペースにおいて、横方向に積込める商品の個数Ｎｃ２４、縦方向に積込める商品の個数Ｎｒ２４を算出する（ステップＳ９４）。ＣＰＵ１１はＮｃ２４＝０またはＮｒ２４＝０であるか否かを判定する（ステップＳ９５）。ＣＰＵ１１はＮｃ２４＝０またはＮｒ２４＝０であると判定した場合（ステップＳ９５でＹＥＳ）、処理をステップＳ９８に移す。ＣＰＵ１１はＮｃ２４及びＮｒ２４が０でないと判定した場合（ステップＳ９５でＮＯ）、縦方向の端に隙間が確保できるか否かを判定する（ステップＳ９６）。ＣＰＵ１１は隙間が確保できると判定した場合（ステップＳ９６でＹＥＳ）、処理をステップＳ９８に移す。ＣＰＵ１１は隙間が確保できないと判定した場合（ステップＳ９６でＮＯ）、個数Ｎｒ２４を減らす（ステップＳ９７）。ＣＰＵ１１は２つの余裕スペースに積込める商品の個数Ｎ２’’を算出する（ステップＳ９８）。
【００７１】
ＣＰＵ１１は、番重の横方向に商品の横方向を合わせた場合の商品を積込める個数Ｎ１が０であるか否かを判定する（ステップＳ９９）。ＣＰＵ１１は個数Ｎ１が０であると判定した場合（ステップＳ９９でＹＥＳ）、処理をステップＳ１０３に移す。ＣＰＵ１１は個数Ｎ１が０でないと判定した場合（ステップＳ９９でＮＯ）、２つのパターンで検討した余裕スペースに積込める商品の個数について、いずれのパターンでの個数が多くなるか判定する（ステップＳ１００）。ＣＰＵ１１は、一番目に検討したパターンでの個数Ｎ１’が、二番目に検討したパターンでの個数Ｎ１’’より大きいと判定した場合（ステップＳ１００でＹＥＳ）、商品を積込める個数Ｎ１にＮ１’を加算するともに、ｆｌａｇ１を１に設定する（ステップＳ１０１）。ＣＰＵ１１は、二番目に検討したパターンでの個数Ｎ１’’が、一番目に検討したパターンでの個数Ｎ１’以上であると判定した場合（ステップＳ１００でＮＯ）、商品を積込める個数Ｎ１にＮ１’’を加算するとともに、ｆｌａｇ１を２に設定する（ステップＳ１０２）。
【００７２】
ＣＰＵ１１は、番重の横方向に商品の縦方向を合わせた場合の商品を積込める個数Ｎ２が０であるか否かを判定する（ステップＳ１０３）。ＣＰＵ１１は個数Ｎ２が０であると判定した場合（ステップＳ１０３でＹＥＳ）、処理をステップＳ１０７に移す。ＣＰＵ１１は個数Ｎ２が０でないと判定した場合（ステップＳ１０３でＮＯ）、２つのパターンで検討した余裕スペースに積込める商品の個数について、いずれのパターンでの個数が多くなるか判定する（ステップＳ１０４）。ＣＰＵ１１は、一番目に検討したパターンでの個数Ｎ２’が、二番目に検討したパターンでの個数Ｎ２’’より大きいと判定した場合（ステップＳ１０４でＹＥＳ）、商品を積込める個数Ｎ２にＮ２’を加算するとともに、ｆｌａｇ２を１に設定する（ステップＳ１０５）。ＣＰＵ１１は、二番目に検討したパターンでの個数Ｎ２’’が、一番目に検討したパターンでの個数Ｎ２’以上であると判定した場合（ステップＳ１０４でＮＯ）、商品を積込める個数Ｎ２にＮ２’’を加算するとともに、ｆｌａｇ２を２に設定する（ステップＳ１０６）。
【００７３】
ＣＰＵ１１は、商品を積込める個数Ｎ１及びＮ２が０であるか否かを判定する（ステップＳ１０７）。ＣＰＵ１１は個数Ｎ１またはＮ２が０でないと判定した場合（ステップＳ１０７でＮＯ）、Ｎ１はＮ２より大きいか否かを判定する（ステップＳ１０８）。ＣＰＵ１１はＮ１がＮ２より大きいと判定した場合（ステップＳ１０８でＹＥＳ）、商品を積み決める個数の最大値Ｎとして、Ｎ１を設定するとともに、ｆｌａｇを１に設定する（ステップＳ１０９）。ＣＰＵ１１はＮ１がＮ２以下であると判定した場合（ステップＳ１０８でＮＯ）、商品を積込める個数の最大値Ｎとして、Ｎ２を設定するとともに、ｆｌａｇを２に設定する（ステップＳ１１０）。
【００７４】
ＣＰＵ１１は、ｆｌａｇの値並びにｆｌａｇ１及びｆｌａｇ２の値を元に、番重に商品がどのように積込めるかを示すレイアウト情報をＲＡＭ１３やハードディスク１４に設けた一時領域に記憶する。それとともに、番重の縦寸法を示す変数Ｇ、横寸法を示す変数Ｈのそれぞれに、商品が積込まれない余裕スペースの縦寸法の値、横寸法の値に更新する（ステップＳ１１１）。ＣＰＵ１１は積込み判定処理を終了し、呼び出し元に処理を戻す。これにより、ＣＰＵ１１は、余裕スペースを擬似的な番重として扱い、以降の処理において、他の商品が積込み可能か否かを判定する。
【００７５】
図１８は商品を積込み途上の番重の例を示す説明図である。図１８は番重の平面図である。縦寸法Ｇ−Ｇ’、横寸法Ｈ−Ｈ’の矩形領域に商品Ｐ１が、縦寸法Ｇ、横寸法Ｈ’の矩形領域に商品Ｐ２が積込まれている。縦寸法Ｇ’、横寸法Ｈ−Ｈ’の矩形領域は、商品が未だ積込みされていない余裕スペースとなっている。
【００７６】
ＣＰＵ１１は個数Ｎ１及びＮ２が０であると判定した場合（ステップＳ１０７でＹＥＳ）、商品を積込める個数Ｎを０に設定し（ステップＳ１１２）、呼び出し元に処理を戻す。
【００７７】
処理は図７のステップＳ２２に移る。ＣＰＵ１１は積込み判定処理の結果、商品が積込み可能か否か判定する（ステップＳ２２）。ＣＰＵ１１は商品を積込める個数Ｎが０であるか否かにより判定する。ＣＰＵ１１は積込み不可能、すなわち個数Ｎが０であると判定した場合（ステップＳ２２でＮＯ）、積込み数算出処理を終了し、処理を呼び出し元に戻す。
【００７８】
ＣＰＵ１１は積込み可能、すなわち個数Ｎが１以上であると判定した場合（ステップＳ２２でＹＥＳ）、選択した商品は積重ね可能か否か判定する（ステップＳ２３）。この判定は、商品情報に含まれる積み重ね可否フラグにより行う。ＣＰＵ１１は積重ねが可能である、すなわち積み重ね可否フラグが１であると判定した場合（ステップＳ２３でＹＥＳ）、段数を２に設定する（ステップＳ２４）。また、ＣＰＵ１１は、番重の高さ寸法を示す変数Ｉから商品の高さ寸法Ｅを減ずる。さらに、ＣＰＵ１１は、商品の残数から積込み可能数を減ずる。ＣＰＵ１１は、段数が積重ねの許容段数以下であるか否かを判定する（ステップＳ２５）。この判定は、商品情報に含まれる段数の値を用いる。ＣＰＵ１１は、段数が許容段数以下であると判定した場合（ステップＳ２５でＹＥＳ）、商品を更に一段積む余裕が番重にあるか否かを判定する。すなわち、ＣＰＵ１１は、Ｉ−Ｅの値が０以上であるか否かを判定する（ステップＳ２６）。ＣＰＵ１１は、商品を更に一段積む余裕が番重にある、Ｉ−Ｅの値が０以上であると判定した場合（ステップＳ２６でＹＥＳ）、残数が積込み可能数より大きいか否かを判定する（ステップＳ２７）。ＣＰＵ１１は、残数が積込み可能数より大きい場合（ステップＳ２７でＹＥＳ）、残数より積込み可能数を減ずる（ステップＳ２８）。ＣＰＵ１１は、Ｉの値からＥを減じ、段数を１増やす（ステップＳ２９）。ＣＰＵ１１は、処理をステップＳ２５に戻す。
【００７９】
ＣＰＵ１１は、段数が許容段数を越えている判定した場合（ステップＳ２５でＮＯ）、または、商品を更に一段積む余裕が、番重にはないと判定した場合（ステップＳ２６でＮＯ）、段数を１減らし（ステップＳ３２）、処理を呼び出し元に戻す。
【００８０】
ＣＰＵ１１は、残数が積込み可能数以下の場合（ステップＳ２７でＮＯ）、残数を０に設定する（ステップＳ３０）。ＣＰＵ１１は、ＩからＥを減ずる（ステップＳ３１）。ＣＰＵ１１は段数を１減らし（ステップＳ３２）、処理を呼び出し元に戻す。
【００８１】
ＣＰＵ１１は積重ねが可能ではない、すなわち積み重ね可否フラグが０であると判定した場合（ステップＳ２３でＮＯ）、残数が積込み可能数より大きいか否かを判定する（ステップＳ３３）。ＣＰＵ１１は、残数が積込み可能数より大きい場合（ステップＳ３３でＹＥＳ）、残数より積込み可能数を減じ（ステップＳ３４）、処理を呼び出し元に戻す。ＣＰＵ１１は、残数が積込み可能数以下である場合（ステップＳ３３でＮＯ）、残数を０に設定し（ステップＳ３５）、処理を呼び出し元に戻す。
【００８２】
次に、積込み方法指示処理について説明する。図１９は積込み数算出処理により求められた積込みレイアウトの一例を示す説明図である。図１９は番重の平面図である。紙面左下の番重の角を原点に上下方向がＹ軸、それに交差する横方向がＸ軸とする。図１９に示す例では、シュークリーム、ハンバーグ弁当、おにぎり・梅、幕の内弁当、おにぎり・鮭が積込むレイアウトが示されている。各商品が積込まれる領域は矩形であり、左下の点の座標値及び右上の点の座標値により規定する。また、番重は紙面左側がトラックの前側に向けられて、積載されるものとする。
【００８３】
図２０は積込み領域データベース１４３のレコードレイアウトの一例を示す説明図である。積込み領域データベース１４３は、店舗コード列、便名列、番重Ｎｏ列、商品コード列、商品名列、個数列、座標１列、座標２列の各列を含む。店舗コード列は積込み領域に対応する店舗のコードを記憶する。便名列には積込み領域に対応する配送便の便名を記憶する。番重Ｎｏ列は、店舗毎、便名毎に付与された番重の続き番号を記憶する。商品コード列は、商品に対応したコードを記憶する。商品名列は積込む商品の名称を記憶する。個数列には、積込み領域に積込む商品の個数（積込み個数）を記憶する。座標１列は、積込み領域を規定する左下座標の座標値を記憶する。座標２列は、積込み領域を規定する右上座標の座標値を記憶する。
【００８４】
図２１は積込み方法指示処理の手順を示すフローチャートである。仕分け装置１０のＣＰＵ１１は処理対象としている店舗、便に対応する番重のうち、１つの番重を選択する（ステップＳ１２１）。ＣＰＵ１１は選択した番重に対応する積込み領域データを、積込み領域データベース１４３より読込む（ステップＳ１２２）。ＣＰＵ１１は読込んだ各積込み領域を規定する点のＹ座標を参照して、グループ分けを行う（ステップＳ１２３）。Ｙ座標で分けるのは、トラックの減速により、番重に積込まれている商品は-Ｘ軸方向（前方向）に動き、前後方向に隣接する商品を圧迫するが、Ｙ軸方向に隣接する商品にほとんど影響を与えないからである。ここでは、Ｘ軸方向、すなわち、前後方向が所定方向に相当する。
【００８５】
ＣＰＵ１１は１つのグループを選択する（ステップＳ１２４）。ＣＰＵ１１は選択したグループ内の積込み領域をＸ座標でソートする（ステップＳ１２５）。ＣＰＵ１１はソート結果と各積込み領域のＸ座標とを元に、サブグループ分けを行う（ステップＳ１２６）。
【００８６】
ＣＰＵ１１は、グループ内の各積込み領域と対応付けられた商品のカテゴリーにより、ソートを行う（ステップＳ１２７）。当該ソートでは、つぶれにくいものから、つぶれやすいものの順になるように、ソートをする。実施の形態１では、カテゴリーＡ、Ｂ、Ｃの順となるようにソートする。ここでは、つぶれにくいものから、つぶれやすいものの順が、順位順に相当する。
【００８７】
サブグループでは、サブグループに含まれる商品のうち、比較する商品よりもつぶれやすい商品があれば、サブグループを前、比較する商品を後ろにする。また、サブグループに含まれる商品のうち、比較する商品よりもつぶれにくい商品があれば、比較する商品を前、サブグループを後ろにする。
【００８８】
ＣＰＵ１１はソートの結果に基づいて、積込み領域データベース１４３に記憶されている座標の更新を行う（ステップＳ１２８）。ＣＰＵ１１は未処理のグループがあるか否かを判定する（ステップＳ１２９）。ＣＰＵ１１は未処理のグループがあると判定した場合（ステップＳ１２９でＹＥＳ）、処理をステップＳ１２４へ戻す。ＣＰＵ１１は未処理のグループがないと判定した場合（ステップＳ１２９でＮＯ）、未処理の番重があるか否かを判定する（ステップＳ１３０）。ＣＰＵ１１は未処理の番重があると判定した場合（ステップＳ１３０でＹＥＳ）、処理をステップＳ１２１へ戻す。ＣＰＵ１１は未処理の番重がないと判定した場合（ステップＳ１３０でＮＯ）、積込み方法を出力し（ステップＳ１３１）、処理を呼び出し元に戻す。積込み方法の出力は、例えば、積込み領域データベース１４３の内容を搬送装置２０に送信することである。商品の番重の積込みを搬送装置２０ではなく、人が行う場合には、積込み領域データベース１４３に基づき、番重内での配置を画面表示等すれば良い。
【００８９】
次に、積込み方法指示処理の内容を図１９に示したレイアウトを例に説明する。図２２は積込み方法指示処理後の積込みレイアウトの一例を示す説明図である。図２３は積込み方法指示処理後の積込み領域データベース１４３の一例を示す説明図である。
【００９０】
ＣＰＵ１１は番重Ｎｏ１の番重を選択する（ステップＳ１２１）。ＣＰＵ１１は積込み領域データベース１４３より、選択した番重の積込み領域データを読込む（ステップＳ１２２）。読込まれるのは図２０に示した５レコードである。ＣＰＵ１１はＹ座標で、グループ分けをする（ステップＳ１２３）。図１９に示したレイアウトの場合、２つのグループに分けられる。一方のグループ（グループ１と記す）は、シュークリームの積込み領域Ａ１１（領域Ａ１１と記す）、ハンバーグ弁当の積込み領域Ａ１２（領域１２と記す）からなる。他方のグループ（グループ２と記す）は、おにぎり・梅の積込み領域Ａ２１（領域Ａ２１と記す）、おにぎり・鮭の積込み領域Ａ２２（領域Ａ２２と記す）、幕の内弁当の積込み領域Ａ２３（領域Ａ２３と記す）からなる。
【００９１】
ＣＰＵ１１はグループ１を選択する（ステップＳ１２４）。ＣＰＵ１１はグループ１の積込み領域をＸ座標でソートする（ステップＳ１２５）。領域Ａ１１、領域Ａ１２の順となる。ＣＰＵ１１はサブグループ分けを行う（ステップＳ１２６）が、サブグループとグループ１と同一となる。ＣＰＵ１１は領域Ａ１１、Ａ１２をカテゴリーでソートする（ステップＳ１２７）。領域Ａ１１はシュークリームが対応するから、カテゴリーはＣである。領域Ａ１２はハンバーグ弁当が対応するから、カテゴリーＡである。よって、ソートにより、領域Ａ１２、Ａ１１の順となる。ＣＰＵ１１は座標を更新する（ステップＳ１２８）。
【００９２】
グループ２が未処理であるので、ＣＰＵ１１はステップＳ１２９でＹＥＳと判定し、ステップＳ１２４でグループ２を選択する。ＣＰＵ１１はグループ２の領域をＸ座標でソートする（ステップＳ１２５）。その結果、おにぎり・梅の積込み領域Ａ２１（領域Ａ２１と記す）、幕の内弁当の積込み領域Ａ２３（領域Ａ２３と記す）、おにぎり・鮭の積込み領域Ａ２２（領域Ａ２２と記す）の順となる。ＣＰＵ１１は領域Ａ２１を１つのサブグループ、領域Ａ２２と領域Ａ２３をもう一つのサブグループに分ける（ステップＳ１２６）。
【００９３】
ＣＰＵ１１はカテゴリーによるソートをする（ステップＳ１２７）。領域Ａ２１はおにぎり・梅が対応するからカテゴリーはＢ、領域Ａ２２はおにぎり・鮭が対応するからカテゴリーはＢ、領域Ａ２３は幕の内弁当が対応するからカテゴリーはＡである。領域Ａ２１と領域Ａ２２は共にカテゴリーがＢであるから、入れ替えは不要であるが、領域Ａ２３はカテゴリーＡであるから、Ａ２１との入れ替えが必要である。そして、領域Ａ２２は領域Ａ２３と同じサブグループに属するから、領域Ａ２２も入れ替え対象となる。ソートの結果、領域Ａ２２、領域Ａ２３、領域Ａ２１の順となる。ＣＰＵ１１はソートの結果にしたがって、積込み領域データベース１４３を更新する（ステップＳ１２８）。未処理のグループがないので、ＣＰＵ１１はステップＳ１２９をＮＯと判定し、ステップＳ１３０以降の処理を行う。
【００９４】
積込み方法指示処理により、図１９に示したレイアウトは図２２に示したレイアウトとなる。シュークリームの積込み領域Ａ１１とハンバーグ弁当の積込み領域Ａ１２とは、位置が入れ替わっている。また、おにぎり・梅の積込み領域Ａ２１と、おにぎり・鮭の積込み領域Ａ２２及び幕の内弁当の積込み領域Ａ２３とは、位置が入れ替わっている。そして、図２０に示した積込み領域データベース１４３も更新され、図２３に示す座標に更新される。
【００９５】
実施の形態１の仕分け装置１０は、以下の効果を奏する。番重内において、つぶれにくい商品をトラックの前側となる位置に積込み、つぶれやすい商品をトラックの後側となる位置に積込むよう、搬送装置２０に指示する。それにより、トラックでの配送時に、トラックが危険回避の急ブレーキに起因する減速により、番重内で商品が移動したとしても、商品がつぶれてしまうという不具合の発生を抑制することが可能となる。
【００９６】
実施の形態２
実施の形態２では、店舗毎の番重に商品を積込む際、積込みすべき商品の全ての製造が完了していると想定する。実施の形態２における食品システム１の構成、仕分け装置１０のハードウェア構成は、実施の形態１と同様であるから、説明を省略する。また、仕分け装置１０で行われる処理は、一部を除いて、実施の形態１と同様であるから、以下の説明においては、主に異なる点を説明する。
【００９７】
図２４及び図２５は、仕分け処理の手順の一例を示すフローチャートである。図２４及び図２５において、図４及び図５に示した処理と同様な処理については、同一の符号を振っている。仕分け装置１０のＣＰＵ１１は、処理店舗の選択（ステップＳ２）後、選択した店舗に配送される商品をカテゴリー毎に分ける（ステップＳ１４１）。ＣＰＵ１１は新規番重を設定（ステップＳ３）後、処理する商品のカテゴリーを選択する（ステップＳ１４２）。ここで、カテゴリーの選択はＡ、Ｂ、Ｃの順で行う。すなわち、つぶれにくい商品から積込みようにする。ＣＰＵ１１は選択したカテゴリーの商品についての商品情報を商品データベース１４１より読込む（ステップＳ１４３）。ＣＰＵ１１は選択したカテゴリーに含まれる商品の１つを選択し（ステップＳ１４４）、ステップＳ７以降の処理を行う。
【００９８】
ＣＰＵ１１は選択した商品の処理が完了したら、選択したカテゴリーに含まれている商品で未処理の他の商品があるか否かを判定する（ステップＳ１４５）。ＣＰＵ１１は未処理の他の商品があると判定した場合（ステップＳ１４５でＹＥＳ）、ステップＳ１２以降の処理を行う。ＣＰＵ１１は未処理の他の商品がないと判定した場合（ステップＳ１４５でＮＯ）、未処理のカテゴリーがあるか否かを判定する（ステップＳ１４６）。ＣＰＵ１１は未処理のカテゴリーがあると判定した場合（ステップＳ１４６でＹＥＳ）、処理をステップＳ１４２に戻す。
【００９９】
ＣＰＵ１１は未処理のカテゴリーがないと判定した場合（ステップＳ１４６でＮＯ）、商品の重量に基づき、番重毎に積込み領域の再配置を行う（ステップＳ１４７）。この再配置の処理は、図２１に示した積込み方法指示処理と同様である。図２１のステップＳ１２７ではカテゴリーでソートしたが、再配置処理では、重量の降順にソートする。ＣＰＵ１１は積込み方法を出力する（図２１のステップＳ１３１と同様）。ＣＰＵ１１は未処理店舗があるか否かを判定する（ステップＳ１５）。ＣＰＵ１１は未処理店舗があると判定した場合（ステップＳ１５でＹＥＳ）、処理をステップＳ２に戻す。ＣＰＵ１１は未処理店舗がないと判定した場合（ステップＳ１５でＮＯ）、処理を終了する。
【０１００】
実施の形態２の仕分け装置１０は、以下の効果を奏する。番重に積込むべき商品が全て揃った後に、カテゴリー毎に分けて積込み位置を定める。それにより、番重内において、つぶれにくい商品をトラックの前側となる位置に確実に積込み、配送時に商品がつぶれてしまうという不具合の発生を抑制することが可能となる。また、同一カテゴリー内でも重量によりソートを行うので、配送時に商品がつぶれてしまうという不具合の発生を、より確実に抑制することが可能となる。
【０１０１】
上述の実施の形態１及び２においては、商品のカテゴリー数を３つにしたが、それに限られない。カテゴリー数は、２以上の任意の数で良い。また、商品のカテゴリーは、つぶれやすさの程度を観点に分けているが、それに限らない。商品の重量によりカテゴリー分けを行い、重い商品を前寄りに、軽い商品を後ろ寄りに配置するようにしても良い。このように、商品のカテゴリーは、番重内での商品の配置を決める場合に用いるものであれば、他の観点を採用することが可能である。
【０１０２】
さらに、上述においては、商品は調理済み食品としたが、それに限らない。番重などの運搬容器に複数種類の商品を混載し、配送を行う場合において、運搬容器内での商品の配置に考慮が必要となる場合にも適用可能である。
【０１０３】
また、上述においては、番重を直方体状の箱体であるとしたが、それに限らない。底板が楕円状や多角形状である番重でも良い。加えて、上述した、番重に積込み可能な商品数を求めるアルゴリズムは一例である。番重に積込み可能な商品数を求めることが可能な他のアルゴリズムも採用可能である。さらに、番重の形状に併せて適宜変更しても良い。
【０１０４】
各実施例で記載されている技術的特徴（構成要件）はお互いに組合せ可能であり、組み合わせすることにより、新しい技術的特徴を形成することができる。
今回開示された実施の形態はすべての点で例示であって、制限的なものでは無いと考えられるべきである。本発明の範囲は、上記した意味では無く、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１０５】
１      食品システム
２      店舗ＰＯＳ装置
３      受注管理システム
４      食品製造システム
５      仕分けシステム
６      配送便システム
１０    仕分け装置
１１    ＣＰＵ
１２    ＲＯＭ
１３    ＲＡＭ
１４    ハードディスク
１４１  商品データベース
１４２  受注情報データベース
１４３  積込み領域データベース
１５    ディスクドライブ
１６    通信部
１７    表示部
１８    操作部
１０Ｐ  プログラム（コンピュータプログラム）
１０ｄ  光ディスク
１０ｍ  半導体メモリ
２０    搬送装置
【図１】
2016140120.tif 000003
【図２】
2016140120.tif 000004
【図３】
2016140120.tif 000005
【図４】
2016140120.tif 000006
【図５】
2016140120.tif 000007
【図６】
2016140120.tif 000008
【図７】
2016140120.tif 000009
【図８】
2016140120.tif 000010
【図９】
2016140120.tif 000011
【図１０】
2016140120.tif 000012
【図１１】
2016140120.tif 000013
【図１２】
2016140120.tif 000014
【図１３】
2016140120.tif 000015
【図１４】
2016140120.tif 000016
【図１５】
2016140120.tif 000017
【図１６】
2016140120.tif 000018
【図１７Ａ】
2016140120.tif 000019
【図１７Ｂ】
2016140120.tif 000020
【図１８】
2016140120.tif 000021
【図１９】
2016140120.tif 000022
【図２０】
2016140120.tif 000023
【図２１】
2016140120.tif 000024
【図２２】
2016140120.tif 000025
【図２３】
2016140120.tif 000026
【図２４】
2016140120.tif 000027
【図２５】
2016140120.tif 000028
【国際調査報告】
2016140120.tif 000029
2016140120.tif 000030