輸送コンテナヤードで使用される在庫追跡及び管理システムのための自動エラー訂正
【課題】コンテナ保管施設のコンテナ在庫追跡システムに関連付けられたコンテナ在庫データベース内のエラーを自動的に検出して訂正する。
【解決手段】在庫追跡システム内のプロセッサは、エラーを検出する方法を実施し、このエラー検出方法は、第1のデータ記録を取得し、第1の記録に関連するイベント(例えば、コンテナの集荷又は降荷、又は取り扱い機器の移動)を識別し、識別されたイベントに基づいてエラータイプリストを提供し、検査処理を通じてデータエラーが発生したか否かを判断する。エラーを訂正するために、本方法は、更に、エラー検出結果に基づいて検索基準を設定し、設定された基準を用いて在庫追跡データベースに照会し、照会結果に基づいてエラー候補を識別し、エラー候補を評価してエラー候補の中で1つ又は複数のマッチを識別し、識別された1つ又は複数のマッチと共にエラー検出結果を修正することによってエラーを訂正する。
【解決手段】在庫追跡システム内のプロセッサは、エラーを検出する方法を実施し、このエラー検出方法は、第1のデータ記録を取得し、第1の記録に関連するイベント(例えば、コンテナの集荷又は降荷、又は取り扱い機器の移動)を識別し、識別されたイベントに基づいてエラータイプリストを提供し、検査処理を通じてデータエラーが発生したか否かを判断する。エラーを訂正するために、本方法は、更に、エラー検出結果に基づいて検索基準を設定し、設定された基準を用いて在庫追跡データベースに照会し、照会結果に基づいてエラー候補を識別し、エラー候補を評価してエラー候補の中で1つ又は複数のマッチを識別し、識別された1つ又は複数のマッチと共にエラー検出結果を修正することによってエラーを訂正する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンテナ輸送ヤード内のコンテナのロケーションにおけるエラーの検出及び訂正に関する。より具体的には、本発明は、コンテナのロケーションを示す在庫追跡データベース及び/又はシステム内の在庫データエラーの検出及び訂正に関する。
【背景技術】
【0002】
過去10年にわたって、輸送コンテナの取扱量は劇的に増加した。取扱量におけるそのような増加は、実時間の注文可視性に対して悪影響を及ぼしている。取引のあらゆる相手先は、コンテナの輸送行程を通してロケーション情報へのアクセスを有することを必要とする。しかし、通常、コンテナは、港では荷受業者に対して不可視である。
【0003】
輸送コンテナに対する作業は、一般的に構外作業、構内作業、ヤード作業を含む。これらの作業は、ヤード事務員、輸送機器のオペレータ、及び昇降機器のオペレータによって実施される。輸送機器(又はヤード牽引車)は、コンテナを1つのロケーションから別のロケーションに移動することはできるが、コンテナを荷揚げして荷降ろしすることができないあらゆるタイプの取り扱い機器(HE)を指す。昇降機器は、コンテナを荷揚げして、地面の上、別のコンテナの上、又は輸送に向けて別のHEの上に荷降ろしすることができるあらゆるタイプのHEを指す。本明細書の便宜上、ヤード牽引車及びコンテナ取り扱い機器(CHE)という用語をそれぞれ輸送機器及び昇降機器を指す上に使用する。実施される作業の中では、全体の平均業務の中でヤード作業(輸送コンテナヤード内の作業)が最も時間を消費する。従来、ヤード作業中には、ヤード事務員は、集荷するのに正しいコンテナの検証するために、CHEオペレータに付き添わなければならない。コンテナが、あるべきロケーションに存在しない場合には、一般的なヤード事務員は、そのコンテナを探してヤードの方々を歩き回る。ヤード事務員がそのコンテナを見つけると、ヤード牽引車の運転手とコンテナを集荷してヤード牽引車の上に積載するCHEオペレータの両方に新しいロケーションに臨場するように無線連絡する必要がある。たとえ彼らが臨場したとしても、正しいコンテナは、他のコンテナに埋もれている可能性があり、これらの他のコンテナをCHEオペレータが取り除く必要があり、その間中、ヤード事務員及びヤード牽引車の運転手は待機している。ヤード牽引車が到着するまでにCHEオペレータが検証済みのロケーションでコンテナを自由に積載することができるとしたら、その方が効率的であると考えられる。
【0004】
コンテナターミナルでの取り扱い処理の効率を改善するために、ヤード内で実際に何が起こっているかを追跡してモニタする在庫追跡システムが開発されている。一般的に、そのような在庫追跡システムは、実時間測位技術(RFID、GPS、及び無線ビーコン等)と無線通信技術の両方を使用する。これらのシステムは、コンテナのロケーションの能動的追跡を可能にし(一般的にコンテナを移動するHEの様々な個体の移動及びロケーションを追跡することにより)、追跡情報を在庫追跡データベースに報告し、ターミナル運用システム(TOS)とインタフェースで接続し、HEがコンテナを集荷又は荷降ろしする度にコンテナのロケーションを更新する。これらの在庫追跡システムは、コンテナヤードの在庫の精度を改善し、それによって不明コンテナを低減し、TOS性能を最大化し、HEの効率を改善することを目的とする。
【0005】
理想的には、実時間測位システムが100%の測位精度を得ることができ、無線通信システムがゼロ損失及びゼロノイズを有する場合には、在庫追跡システムは、コンテナ在庫のロケーションにおいて100%の精度を実際に得ることができる。しかし、現実には、センサのバイアス及びノイズ、通信の損失及びエラー、並びに構成要素又はシステムの障害及び作業エラーに起因して在庫エラーが発生する。
【0006】
従来技術の在庫追跡システムは、エラー、並びにエラーのタイプを検出して報告するのにHEのオペレータに重く依存する。CHEオペレータは、集荷ロケーション(時に出荷ロケーションとも呼ぶ)、コンテナID、及び降荷ロケーション(すなわち、ターゲットロケーション)を有する任務を受けると、CHEを集荷ロケーションまで運転して指定されたコンテナを集荷し、次に、降荷ロケーションまで運転して降荷ロケーションにコンテナを荷置きする。従来技術の在庫追跡システムは、実際の集荷ロケーションを指定集荷ロケーションと、更に、実際の降荷ロケーションを指定降荷ロケーションと比較し、不一致があった場合は運転手に警告し、運転手は、作業中に間違えてしまわない限り、そのエラーを報告するはずである。代替的に、作業を実施しようとする際のエラーを報告するのは運転手次第である。
【0007】
例えば、指定集荷ロケーションにいかなるそのようなコンテナも存在せず、又は障害物によってCHEが集荷ロケーションに到着することができない場合には、CHEオペレータは、CHE内に設けられたユーザインタフェースを用いてエラーを報告する必要があり、次に、システムは、任務を取り消して次の任務に移ることになる。指定コンテナが実際には隣のロケーションにある場合、例えば、指定集荷ロケーションの下にあり、指定コンテナの上にコンテナが載っている場合は(一般的にコンテナは上下に積み重ねられる)、CHEオペレータは、指定集荷ロケーションとは異なる実際の集荷ロケーションにおいてコンテナを集荷する必要がある。システムは、実際の集荷ロケーションを任務内に指定された集荷ロケーションと比較して、これらのロケーションが異なる場合は警告を発するので、CHEオペレータは警告を受けることになり、警告信号を消去するためにはエラーを報告する必要がある。CHEオペレータがコンテナを降荷ロケーションに輸送し、降荷ロケーションが既に占有されていた場合には、CHEオペレータは、エラーを報告して、降荷ロケーションを再判断するようにシステムに要求する必要がある。一方、降荷ロケーション指示内に指定された降荷ロケーションの直下にいかなるコンテナも存在しなかった場合には、CHEオペレータは、指定降荷ロケーションよりも低いロケーションにコンテナを降荷しなければならなくなり、それによってシステムは、運転手に間違った作業を警告するようにトリガされることになる。この場合、CHEオペレータは、再度エラーを報告する必要がある。
【発明の概要】
【発明が解決しようとする課題】
【0008】
従来技術によって使用されるそのような従来のマニュアルな鈍重な手法は、いくつかの欠点を有する。第1に、システムは、集荷ロケーション及び降荷ロケーションに着目するのみであるから、検出されるエラーのタイプが限られる。第2に、システムは、間違った在庫記録を含む任務を割り当てた時にのみ在庫エラーを検出及び訂正することができ、その結果、在庫エラーは、検出されることなく伝播する可能性があり、隣の在庫のエラー報告をもたらす場合がある。第3に、この手法は、エラー検出及びエラー訂正においてCHEオペレータの入力を必要とし、それによってCHEオペレータに対する付加的な作業負荷がもたらされ、オペレータの作業が遅くなり、CHEとCHEオペレータの両方の時間に関して貴重なリソースが浪費される。第4に、人間は間違いを犯す可能性があり、この手法は、CHEオペレータの入力におけるエラーに脆弱である。その結果、CHEオペレータは、エラー訂正のために追加情報を入力する必要があり、又は追加職員が、報告されたロケーションに手動エラー訂正のために向かわなければならない。
【課題を解決するための手段】
【0009】
本発明の実施形態により、在庫データベースに報告されるか、又は既に在庫データベースに存在する在庫データを検査してその検証することにより、従来のシステムと比較してデータ品質を改善するコンテナ在庫データベース内のエラーを検出及び訂正するためのシステムを提供する。システムは、あらゆる不整合性又はデータ矛盾に対して、到着するデータ記録を在庫データベース内のデータ記録に対して調べることによって在庫データベース内のデータエラーを自動的に検出し、データ矛盾が検出される度にデータ記録を報告する。更に、システムは、コンテナと、周囲のコンテナセルロケーションに関連する作業とにおいて検出されたエラーを調べ、周囲のコンテナ及び関連作業に基づいてエラー候補を識別し、エラー候補を評価してエラー訂正のためのマッチ(又は複数のマッチ)を識別し、関連データ記録を修正してエラーを訂正することによって自動エラー訂正を実施する。従って、システムは、在庫データベース内でのデータエラーの伝播を実質的に軽減することができ、それによってデータエラーの発生が低減し、在庫データベースの品質が改善される。その後にHEオペレータは、作業中に有意に少ないエラーにしか遭遇しなくなり、これは、エラー報告に関連する付加的な作業負荷からオペレータを解放するのに役立ち、コンテナの正しいロケーションを検索するのに浪費される時間が低減する。
【0010】
システムは、コンテナ在庫追跡システム、在庫追跡システムと連係する在庫管理システム、オペレータからの入力を受け入れるための入力デバイス、及びデータ記録を生成するコンピュータプログラムのうちの1つから少なくとも1つの第1のデータ記録を最初に取得するエラー検出方法で在庫データにおけるエラー検出を実施する少なくとも1つの処理デバイスを含む。次に、本方法は、第1のデータ記録に基づいて所定のイベントの組の中でイベントを識別する。所定のイベントの組は、施設内のコンテナ在庫及びHEに関連する作業を表す。そのような作業の例は、コンテナ集荷作業、コンテナ降荷作業、及びHEが移動している場合の車両移動作業を含む。
【0011】
更に、エラー検出方法は、識別されたイベントに基づいてエラータイプリストを提供し、各エラータイプを検査するコンピュータプロセッサを使用する処理を通じてデータエラーが発生したか否かを判断する。検査段階の各々では、プロセッサは、エラータイプリストからエラータイプを選択し、選択したエラータイプと第1のデータ記録とに基づいて検索基準を判断し、判断した検索基準を用いてデータベースに照会し、データベースから照会結果を取得する。次に、データ矛盾を検出するために、照会結果は、第1のデータ記録と比較され、データ矛盾の検出を受けて、選択したエラータイプのデータエラーが検出されたことが報告される。すなわち、本方法は、オペレータの直接介入なしに自動的にデータエラーを検出する。
【0012】
一実施形態では、データエラーの検出を受けて、プロセッサは、照会結果内のデータ記録の中でデータ矛盾によって影響を受けているデータ記録を更に識別する。識別されたデータ記録を第2のデータ記録と呼び、これらの第2のデータ記録は、第1のデータ記録と共にエラーデータ記録と見なされる。また、プロセッサは、エラーデータ記録をコンテナ在庫追跡システムと、エラーデータ記録をオペレータに対して表示するための出力手段とのうちの少なくとも一方に報告する。従って、エラーデータ記録をエラー訂正に向けて更に分析することができる。
【0013】
データエラーの検出を受けて、プロセッサは、第1のデータ記録と1組の第2のデータ記録とを含むエラーデータ記録を最初に取得するエラー検出方法でエラーデータ記録におけるエラー訂正を更に実施する。エラーの検出は、第1のデータ記録と第2のデータ記録の組とが互いに矛盾していることを示すので、2つの一方が必ずエラーを含むはずである。訂正を加えるためには、プロセッサは、いずれを訂正する必要があるか、及び如何にそれを訂正するかを最初に判断する必要がある。
【0014】
一実施形態では、プロセッサは、次に、第1のデータ記録と、1つの第2の基準が第2のデータ記録の各々に対応する1組の第2の検索基準とに基づいて第1の検索基準を設定し、設定した検索基準を用いてコンテナ在庫データベースに照会し、第1のデータ記録に対応する第1の照会結果と第2のデータ記録の組に対応する第2の照会結果とを取得する。次に、第1の照会結果が分析及び評価され、第1のデータ記録に対して第1のマッチが識別され、第1のマッチは、第1の照会結果内のデータ記録であり、このマッチに基づいて第1のデータ記録を修正することによってエラーを除去することができる。同様に各第2のデータ記録に対する第2の照会結果が評価され、各第2のデータ記録に対する第2のマッチが識別される。次に、第1のマッチと第2のマッチの組とが比較され、第1のデータ記録又は第2のデータ記録の組を訂正すべきであるか否かが識別される。判断が第1のデータ記録を訂正するというものである場合には、プロセッサは、第1のマッチに基づいて第1のデータ記録を修正し、必要に応答してマッチも適宜修正する。判断が第2のデータ記録を訂正するというものである場合には、プロセッサは、第2のデータ記録の各々をそれに対応するマッチに基づいて修正し、必要に応答して対応するマッチも適宜修正する。最後に、プロセッサは、修正済みデータ記録を在庫追跡データベースに報告する。
【0015】
別の実施形態では、エラー訂正方法は、あらゆる単一のエラーデータ記録を訂正するのにも使用される。この実施形態では、処理は、コンテナに対してエラーであると判断され、訂正する必要がある第1のデータ記録を取得する。次に、プロセッサは、第1のデータ記録に基づいて、コンテナID、コンテナ特性、コンテナセルロケーション、及び継続時間という情報のうちの1つを指定する検索基準を設定する。その後に、プロセッサは、検索基準を用いて在庫追跡データベースに照会し、照会結果を取得し、照会結果を評価して第1のデータ記録に対するマッチを判断する。次に、プロセッサは、マッチに基づいて第1のデータ記録を修正し、必要に応答してマッチも適宜修正する。次に、修正済みデータ記録は、在庫追跡データベースに報告される。すなわち、第1のデータ記録内のエラーを訂正し終わる。
【0016】
エラー訂正方法は、プロセッサが、第1のデータ記録と第2のデータ記録のいずれを訂正するかを判断することができない場合、又はプロセッサが、どのように訂正を加えるかを判断することができない場合を処理する例外処理を進めることができる。そのようなケースは、(1)照会がいかなる結果ももたらさないか、又は不十分な結果しかもたらさない、(2)いかなる1つ又は複数の第1のマッチも識別されない、(3)第2のデータ記録のうちのいずれかに対していかなる1つ又は複数の第2のマッチも識別されない、(4)第1のマッチと第2のマッチの比較が、第1のデータ記録と第2のデータ記録のうちのいずれを訂正するかに関する判断を誘導することができないなどの例外規則のうちのいずれかが満たされる状態で発生する可能性があると考えられる。プロセッサは、例外規則が満たされる度に例外処理を実行する。
【0017】
1つの単純な実施形態では、例外処理は、第1のデータ記録及び第2のデータ記録(適用可能な場合)内のある一定のフィールドを修正して例外規則が満たされたことを示す段階を単純に含む。別の実施形態では、例外処理は、指示を準備してオペレータに出力し、オペレータから入力を受け入れてそれを検証し、オペレータによって要求された訂正を入力に従って判断することによってオペレータを意志判断に係わらせる。次に、プロセッサは、要求された訂正を加え、修正済みデータ記録を在庫追跡データベースに報告する。
【0018】
在庫データ内のエラーを自動的に検出して訂正することにより、自動エラー検出及びエラー訂正処理は、在庫追跡データベース内のデータエラーの発生及び伝播を防止するのに役立つ。その後に、在庫追跡データベースに基づいてTOSによって生成される任務は正確である可能性が高く、従って、HEオペレータ及びシステムの他のユーザは、任務を完了することに集中することができる。更に、自動エラー検出及び訂正処理は、エラーシミュレーション及び分析のためのシミュレーションツール及び再生ツールを含む分析ツールの使用を容易にする。
【0019】
本発明の実施形態の更なる詳細内容を添付図面を用いて説明する。
【図面の簡単な説明】
【0020】
【図1】従来技術の在庫追跡及び管理システムのブロック図である。
【図2】一般的な在庫追跡及び管理システムが装備された輸送コンテナ保管施設内のそのようなシステムの主要構成要素の物理的エンティティを示す簡易概略図である。
【図3】自動在庫エラー検出を使用する在庫追跡及び管理システムの第1の実施形態のブロック図である。
【図4】システムが報告モジュール、再生モジュール、シミュレーションモジュール、及びユーザインタフェースを更に含む自動在庫エラー検出を使用する在庫追跡及び管理システムの第2の実施形態に関するブロック図である。
【図5A】コンテナセルロケーションを例示的な「コンテナセル命名規則」を用いてラベル付けしたコンテナ輸送ヤード内のコンテナスタックの列の上面図である。
【図5B】コンテナセルロケーションを例示的な「コンテナセル命名規則」を用いてラベル付けしたコンテナ輸送ヤード内のコンテナスタックの列の端面図である。
【図6】エラー検出モジュール302の一実施形態に関わる処理を示す流れ図である。
【図7】車両移動イベント、コンテナ集荷イベント、及びコンテナ降荷イベントを含む発生したイベントのタイプに従った在庫エラーの検出を示し、車両移動イベントが発生する時に在庫エラーを検出する処理を更に含む流れ図である。
【図8A】車両移動違反及びそれに対応する在庫エラーの例を示す図である。
【図8B】車両移動違反及びそれに対応する在庫エラーの例を示す図である。
【図9】コンテナ集荷イベントが発生する時に在庫エラーを検出する処理を示す流れ図である。
【図10A】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図10B】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図11A】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図11B】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図11C】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図11D】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図12】コンテナ降荷イベントが発生する時に在庫エラーを検出する処理を示す流れ図である。
【図13A】コンテナ降荷イベントが発生する時の在庫エラーの例を示す図である。
【図13B】コンテナ降荷イベントが発生する時の在庫エラーの例を示す図である。
【図14】在庫エラー、特にコンテナ輸送ヤード内でのコンテナのロケーションにおけるエラーを検出するためのカメラを利用したエラー検出を使用する在庫追跡及び管理システムのブロック図である。
【図15】カメラからの画像に基づいて在庫エラーを検出する処理を示す流れ図である。
【図16】在庫追跡システムに関連付けられた在庫追跡データベース内のエラーを検出するために在庫追跡システムとインタフェースで接続するカメラを利用した在庫エラー検出システムに関するブロック図である。
【図17】自動在庫エラー検出及び訂正を使用する在庫追跡及び管理システムの第1の実施形態のブロック図である。
【図18】エラー訂正モジュール1702によって実行されるエラー訂正処理の一実施形態を示す流れ図である。
【図19A】図18のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供する図である。
【図19B】図18のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供する図である。
【図19C】図18のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供する図である。
【図19D】図18のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供する図である。
【図20】エラー訂正モジュール1702によって実行されるエラー訂正処理の別の実施形態を示す流れ図である。
【図21】信頼性指標の計算に使用される重み係数を判断する方法を示す図である。
【図22A】4つの作業が異なる時刻において実施され、最後の作業においてエラーが検出された例を示す図である。
【図22B】4つの作業が異なる時刻において実施され、最後の作業においてエラーが検出された例を示す図である。
【図22C】4つの作業が異なる時刻において実施され、最後の作業においてエラーが検出された例を示す図である。
【図22D】4つの作業が異なる時刻において実施され、最後の作業においてエラーが検出された例を示す図である。
【図23A】検出されたエラーの図である。
【図23B】4つのエラー候補の各々がエラー訂正のためのマッチになる4つの場合のうちの一図である。
【図23C】4つのエラー候補の各々がエラー訂正のためのマッチになる4つの場合のうちの1つの図である。
【図23D】4つのエラー候補の各々がエラー訂正のためのマッチになる4つの場合のうちの1つの図である。
【図23E】4つのエラー候補の各々がエラー訂正のためのマッチになる4つの場合のうちの1つの図である。
【図23F】信頼性指標における重み係数を計算するのに使用される情報を示す図である。
【図24】段階1820及び段階2024における訂正例外処理の一実施形態に関わる処理を示す流れ図である。
【発明を実施するための形態】
【0021】
図1は、本発明の実施形態に使用される構成要素を含む自動在庫追跡及び管理システムのブロック図を示している。在庫追跡及び管理システムは、移動されているコンテナを識別し、コンテナを追跡するために取り扱い機器(HE)の移動を追跡し、追跡情報を通信し、コンテナ保管ロケーション及びHEの移動の情報を格納する。
【0022】
システムは、IDリーダ102、測位システム104、他のセンサ106、通信ネットワーク108、アプリケーション/データベースインタフェース110、データベース管理システム112、及び在庫追跡データベース114を含む。IDリーダ102は、在庫項目及びHEの存在及び識別番号を検出するのに使用され、RFID(無線周波数ID)エキサイタ/スキャナ、バーコードスキャナ、OCR(光学文字認識)センサ(例えば、カメラ)、又はこの目的に使用されるあらゆる他のタイプのデバイスの形態にあるとすることができる。測位システム104は、一般的に在庫保管ロケーション内で在庫項目を集荷、移動、又は荷置きするHEの保管ロケーションを判断することによって在庫の保管ロケーションを特定及び/又は追跡する。測位システム104は、GPS(全地球測位システム)又はDGPS(差動GPS)、INS(慣性航法システム)、IMU(慣性測定ユニット)、RTLS(実時間位置システム)、PDS(ポジション検出システム)、及び在庫項目又はHEのロケーションを判断するのに使用することができる当業技術で公知の他のセンサ及びシステムのうちの1つ又はそれよりも多くを含むことができる。他のセンサ106は、ポジション追跡又は在庫作業の管理に対応する諸々のセンサを含む。他のセンサ106は、高さセンサ、移動RFIDエキサイタ/リーダ、速度センサ、光センサ、赤外線センサ、OCR(光学文字認識)センサ、バーコードスキャナ、機械スイッチ、電子スイッチ、及び音波センサのうちの1つ又はそれよりも多くを含むことができる。
【0023】
IDリーダ102、測位システム104、及び他のセンサ106からの情報は、通信ネットワーク108を通じてアプリケーション/データベースインタフェース110に伝達される。通信ネットワーク108は、無線通信ネットワーク、LAN(ローカルエリアネットワーク)、及び有線の専有通信ネットワークのうちの1つ又はそれよりも多くを含むことができる。アプリケーション/データベースインタフェース110は、データベース管理システム112と、在庫追跡データベース114に格納された情報へのアクセスを必要とし、及び/又は在庫追跡データベース114に情報を提供するあらゆるソフトウエアアプリケーション又はサービスとの間のソフトウエア対話機能を提供する。データベース管理システム112は、在庫追跡データベース114内のデータの編成、記憶、管理、及び取得を制御し、それに対して在庫追跡データベース114は、全ての在庫項目の記録及び在庫に関連する関連データを格納する。関連データは、在庫項目の在庫ID、説明事項、製品ID、製品名、物理的属性、在庫項目の保管ロケーション、在庫項目イベントの日時(在庫項目が保管ロケーション内に荷置きされた又はそこから集荷された時等)、在庫項目を移動した、集荷した、又は荷置きしたHEのタイプ及びID、HE及び測位システムが装備されたあらゆる他の車両の走行履歴、又は構内慣習によって定められた他の記述的特徴のうちの1つ又はそれよりも多くを含むことができる。
【0024】
図1に示している在庫追跡及び管理システムにおける個々のモジュールは、システム毎に異なるとすることができ、システムは、追加モジュール/構成要素を含むことができ、又は異なるモジュールの機能が、図示のものよりも少ないモジュールに組み合わされたより小型のものとすることができる。例えば、一部の在庫追跡システムは、在庫追跡データベース114とデータベース管理システム112とを1つの在庫追跡データベースシステムに組み合わせることができる。更に、特にインタフェースが比較的単純な場合に、アプリケーション/データベースインタフェース110を在庫追跡データベースシステム114内に組み込むことができる。アプリケーション/データベースインタフェース110、データベース管理システム112、及び在庫追跡データベース114には、コンピュータ、デジタル信号プロセッサ、FPGA、又はマイクロプロセッサのような1つ又はそれよりも多くの処理デバイスを設けることができる。1つ又はそれよりも多くのプロセッサ内に設けられた又はこれらのプロセッサに接続したメモリデバイス内に、1つ又はそれよりも多くのプロセッサに対する制御コード、並びに在庫データを格納することができる。
【0025】
任意的に、一部の在庫追跡及び管理システムは、多くの海港コンテナ保管ヤード内に使用される一般的なターミナルオペレーティングシステム(TOS)、内陸コンテナヤードターミナル、及び鉄道インターモーダルコンテナターミナルを含む在庫管理システム116及びそれと連係する外部データベース118を含むことができる。一般的にそのような在庫管理システム及び外部データベースは、在庫ID、保管ロケーション、コンテナの所有者、在庫されたコンテナ内部の商品の荷受業者、輸送情報、及び船積み情報に関連するデータを含むが、一般的にこれらの情報は、HE又はHEの移動履歴に関連する情報を含まない。
【0026】
図2は、輸送コンテナ保管施設内での従来の在庫追跡及び管理システムの主要構成要素の物理的エンティティを示す概略図である。CHE218は、輸送コンテナ保管施設内で輸送コンテナを荷揚げ、移動、及び荷置きするように設計された1台のHEである。そのような機器は、トップピック(又はトップリフト)、サイドピック(又はサイドリフト又はエンプティハンドラー)、ストラドルキャリア、リーチスタッカー、ゴムタイヤガントリー(RTG)、レールマウントガントリー(RMG)、キークレーン、及びジョッキートラック(UTR、タグ、又はヤードハスラーとも呼ばれる)を含む。図2に示しているCHE218は、トップピックである。この輸送コンテナ保管施設には、在庫追跡システムが装備され、全てのHEには、HEのロケーション及び移動、従って、これらのHEが移動する輸送コンテナのロケーション及び移動を正確に追跡するのに使用される測位システムが装備される。この例では、測位システムは、GPSシステム222及び慣性測定ユニット(IMU)224、並びにGPSシステム222、IMU224、及び他のセンサとインタフェースで接続し、これらからデータを収集するプロセッサベースのユニット(CPU)226から構成される。他のセンサは、CHE218が輸送コンテナ232を集荷又は荷降ろしする時に、このコンテナが位置する高さを測定する高さセンサ230を含むことができる。CHE218には、輸送コンテナ保管施設内の特定のロケーションに設けられた固定IDリーダ/タグ216によって検出される移動IDリーダ/タグ228を装備することができる。CHE218が固定IDリーダ/タグ216のある一定の近くまで移動すると、固定IDリーダ/タグ216は、移動IDリーダ/タグ228の存在、従って、CHE218の存在を検出し、そのような情報をアプリケーション/データベースインタフェース206に送信する。代替的に、CHE218が間近にある時に、移動IDリーダ/タグ228が、固定IDリーダ/タグ216を検出することができ、それによってCPU226にCHE218の測位を助ける付加的なロケーション関連情報を提供することができる。
【0027】
CPU226は、全てのこれらのセンサからデータを収集し、これらのデータをCHEが輸送コンテナ保管施設の方々に移動して輸送コンテナ232を集荷又は荷降ろしする際のCHE218のロケーションを計算するのに使用する。更に、CPU226は、ツイストロックセンサ(CHEのスプレッダバー上に設けられたツイストロック内に含まれるいくつかのスイッチ)から輸送コンテナ232の集荷又は降荷を示す情報(例えば、係合又は切り離し)を受け取る。従って、CPUは、CHE218が輸送コンテナ232を集荷又は荷降ろしするロケーションを判断することができる。更に、CHE218には、CPU226からの情報をアプリケーション/データベースインタフェース206、データベース管理システム208、在庫追跡データベース210、並びに任意的に在庫管理システム212及び外部データベース214に対して図1に示している構成要素と類似の無線通信ネットワーク202及びローカルエリアネットワーク(LAN)204を通じて通信する内蔵通信ユニット220が装備される。CPU226は、CHE218の運転手の行動を指示する指示及び運転手によって要求される情報のようなデータをこれらの他の構成要素から無線通信ネットワーク202を通じて受け取ることができる。更に、LAN204(有線又は無線)は、無線通信ネットワーク202と、アプリケーション/データベースインタフェース206と、データベース管理システム208と、在庫追跡データベース210との間の通信接続を与える。任意的に、LAN204は、在庫管理システム212及び外部データベース214の間のデータ又は情報の交換を容易にするために、これらの構成要素に接続することができる。図2ではこれらの構成要素(206、208、210、212、及び214)を別々の物理的エンティティとして示しているが、これらの一部又は全てを同じ処理デバイスに存在させることができることに注意されたい。
【0028】
図3は、本発明の実施形態に従って含められる自動在庫エラー検出構成要素を有する在庫追跡及び管理システムのブロック図を示している。図1に示している一般的な在庫追跡及び管理システムにおける構成要素に加えて、このシステムは、在庫データの妥当性を調べ、在庫追跡データベース114内のエラーを探索するエラー検出モジュール302を更に含む。自動エラー検出処理においては手動介入は必要ではないが、エラー検出モジュール302は、オペレータが望む場合には、オペレータがエラー検出処理に手動介入することを可能にすることができる。エラー検出モジュール302の詳細内容に対しては、図6から図13に関連して後に説明する。
【0029】
図4は、本発明による在庫追跡及び管理システムの構成要素の別の実施形態のブロック図である。この実施形態では、システムは、図1に示している構成要素に加えて図3のエラー検出モジュール302を含む。更に、システムは、報告モジュール402、再生モジュール404、シミュレーションモジュール406、及びユーザインタフェース408を含む。報告モジュール402は、ユーザに、特定の情報及び履歴データに関してシステムに照会する機能を与える。再生モジュール404は、ユーザが、特定の時間セグメント、特定の車両又は車両群、特定輸送コンテナ、又は他の選択基準を選択し、イベント履歴を視覚的に辿る目的でこの時間セグメントをグラフィカルユーザインタフェース(GUI)(ユーザインタフェース408の一部である)上で「再生」することを可能にし、それによって自動エラー検出からの結果の手動での評価及び検証を容易にすることができる。シミュレーションモジュール406は、ユーザが、可変データ要素をユーザインタフェース408を通じて「シミュレーション」モードで手動で入力することを可能にし、それによってユーザが、様々な作業シーケンスの効果をより明快に理解することが助けられることになり、ユーザが、エラーの発生の前の作業における試行錯誤によって検出エラーを手動で訂正することが可能になる。ユーザインタフェース408は、グラフィカルユーザインタフェース、並びにキーボード、プリンタ、マウス、又は他のローカル又はリモートの入力/出力デバイスを含むがこれらに限定されない1つ又はそれよりも多くの入力/出力デバイスとすることができる。
【0030】
図5A及び図5Bは、海港ターミナル、鉄道インターモーダルターミナル、又は内陸保管ターミナルうちのいずれかにおけるコンテナ保管施設の例示的なレイアウトを示している。保管施設(ターミナル)における保管ロケーションの3次元特徴を示すために、上面図(図5A)と端面図(図5B)とを含めている。各個々の矩形ブロックは、コンテナを存在させることができるコンテナ保管ロケーションを表す。コンテナ保管施設内での各コンテナ保管ロケーションを一意的に識別するために、通常はロケーション命名規則が使用される。図5A及び図5Bは、列、枠、間口、及び段のような用語を使用する一般的なロケーション命名規則を示している。この命名規則では、コンテナ保管施設内でのコンテナ保管ロケーションの地球上ポジションを一意的に識別するのに枠数値と間口数値とが使用される。各間口は、コンテナ1つ分の長さの幅を有し、各枠は、コンテナ1つ分の奥行きの幅を有する。一般的にいくつかの枠(図4に示している例では3つの枠)が互いにまとめられて列を形成し、列の間の距離は、HEが通過するのに十分な空間を与えるように列内の枠間の距離よりもかなり大きく保たれる。コンテナは、互いに上下に積み重ねることができ、コンテナ保管ロケーションの高さは、段数値によって表される。上面図(図5A)では、列101の最も右下のコンテナ保管ロケーションは、その地球上ポジションに対して(列101、間口21、枠A)で表される。端面図(図5B)では、高さを示しており、ロケーション(列101、間口21、枠A)の2段目の上のコンテナセルは(列101、間口21、枠A、段2)によって一意的に識別される。そのようなセル命名規則は、コンテナのみならず、多くの他のタイプの在庫に関する保管ロケーションの迅速で容易な識別を可能にする。他の命名規則を使用することができ、これらの命名規則は全て、3次元保管セルロケーションを表す上で保管施設にわたる均一性を反映する。
【0031】
一般的に命名規則は、直ちに測定することができない各コンテナ保管ロケーションの論理ポジションを識別し、例えば、GPSを利用した測位システムは、GPS受信機からの擬似距離(衛星とアンテナの間の距離)測定値に基づいて地球座標における経度、緯度、及び高度のポジションを与える。測位システムからのポジションと命名規則で表された論理ポジションとの関連付けを容易にするために、測位システムは、地球座標におけるポジション測定値を図5A及び図5Bに示している局所直交座標(x,y,z)に更に変換する。次に、直交座標ロケーション(すなわち、局所直交座標におけるポジション)をコンテナセルの論理ポジションに関連付ける上で換算表が一般的に使用される。例示的な換算表を直交座標ポジションがコンテナセルの中心の直交座標ポジションに対応する下記の表1に示している。代替的に、他のタイプの座標(極座標等)を使用することができ、選択された座標におけるセルロケーションに論理ポジションを関連付ける換算表が適宜使用される。
【0032】
(表1)
【0033】
図5A及び図5Bに示している局所座標(x,y,z)の場合には、列が有する同じ枠内にあるコンテナセルは、同じx座標値を共有し、同じ間口内にあるコンテナセルは、同じy座標値を共有し、同じ段内にあるコンテナセルは、同じz座標値を共有することに注意されたい。エラー検出モジュール302における処理を説明するのを補うために、図5A及び図5Bと共に上述のコンテナ保管施設及び命名規則を使用する。しかし、エラー検出モジュール302は、他の命名規則を用いて処理することができる。
【0034】
図6は、エラー検出モジュール302の基本的な作動を示す流れ図である。処理は、段階602において新規データが処理に利用可能であるか否かを調べる段階で始まる。一実施形態では、新規データは在庫追跡システムによって提供され、例えば、アプリケーション/データベースインタフェース110が、IDリーダ102、測位システム104、及び他のセンサ106から通信ネットワーク108を通じて受信した情報、並びに在庫管理システム116からの情報に基づいて生成することができる。別の実施形態では、新しいデータは、オペレータにより、キーボード、マウス、タッチスクリーンなどを含む入力手段を通じて入力されたデータ記録とすることができる。新規データは、データ記録を生成するあらゆるコンピュータプログラム、例えば、在庫追跡データベース114にデータを要求し、そこからデータを取得するあらゆるアプリケーション又はサービスが提供することができる。そのようなアプリケーションの例は、妥当性検査プログラム、シミュレーションツール、再生ツールなどを含む。
【0035】
この新規データは、HEのポジション、コンテナ在庫のポジション、又はコンテナセルロケーションのいずれかとすることができるロケーション関連情報を含む少なくとも1つのデータフィールドを含む。新規データは、新規データに関連付けられたイベントを識別するためのセンサ情報も含まなければならないか、又はイベントを指定するデータフィールドを直接含まなければならない。更に、新規データは、このデータに関連付けられたタイムスタンプ、このデータが関係するHEのID及びタイプ、HEの移動情報(例えば、速度)、HEによって作業中のコンテナのID及びタイプ、作業のタイプ、このデータの信頼性レベルなどの情報のうちの一部を含むデータフィールドを含むことができる。例えば、新規データは、コンテナAというIDを有するコンテナがあるコンテナセルロケーション(例えば、列101、間口21、枠A、段2)において集荷されたことを示すことができる。
【0036】
いかなる新規データも利用可能ではない場合には、エラー検出モジュール302は、処理を抜けて次の処理サイクルが処理に再度入るまで待機し、処理は、段階602で新規データの入取得能性を検査する段階で再開することになる。新規データが利用可能である場合には、段階604においてエラー検出モジュールは新規データを読み取る。段階606では、次に、データ矛盾/エラーを検出するために、エラー検出モジュールは、段階604において受け取った新規データを在庫追跡データベースに要求した対応する在庫データと共にデータの整合性に対して調べる。段階606に関わる詳細なデータ矛盾検出処理に対しては、図7から図13に関連して後に説明する。
【0037】
段階606の出力は、データ矛盾/エラーが検出されたか否かを示す少なくとも1つの変数を含み、そのような変数は、段階608においてその後の処理を判断するのに使用される。エラーが検出された場合には、エラー検出モジュール302は段階610に続き、エラーをアプリケーション/データベースインタフェース110に報告し戻し、アプリケーション/データベースインタフェース110は、このエラーを更にユーザに報告することができる(例えば、ユーザインタフェース408を通じて)。他の実施形態では、エラー検出モジュールは、エラーを在庫追跡システムと連係する在庫管理システムに報告するか又はエラーデータ記録をオペレータに表示するための出力手段に報告するか又はエラーデータ記録を受け取るように構成されたコンピュータプログラムに報告する。エラー検出モジュールは、オペレータにエラーを手動で訂正するように要求することができ、又は利用可能な場合は自動エラー訂正処理を開始することができる。エラーを報告した後に又はいかなるエラーも検出されなかった場合には、エラー検出モジュールは、段階612に続き、追跡データベース114に(更新した)在庫データを書き込む/このデータベースをこのデータで更新する。一実施形態では、更にエラー検出モジュールは、在庫追跡データベース114内に表を作成し、データエラーの検出時にこの表に対するエラーデータ記録を作成し、すなわち、オペレータ又はコンピュータプログラムによる容易なアクセスに向けてエラーデータ記録がこれらの表内に収集される。代替的に、エラー検出モジュール302は、データ矛盾検出処理(段階606)中に生成される付加的な結果を記録するログデータを作成して、そのようなログデータを在庫追跡データベース114内に書き込むことができる。その後にエラー検出モジュール302は、処理を抜けて次の処理サイクルが処理を繰り返すまで待機する。
【0038】
図7は、段階606に関わるデータ矛盾検出処理の一実施形態を示す流れ図であり、エラー検出モジュール302は、新規在庫データを在庫追跡データベース114からの対応する在庫データと比較してデータ矛盾を検出し、データ矛盾の検出を受けて、データ矛盾のタイプ及びデータ矛盾をもたらしたコンテナを更に識別し、信頼性レベルを計算し、関連コンテナを指標付けし、これらのコンテナに属性を再度割り当てる。
【0039】
この実施形態では、新規データに関連付けられたイベントに基づいてデータ矛盾を検出する異なる検出手順が使用される。データ矛盾検出処理は、最初に新規データに基づいてイベントの所定の組からこのイベントを識別する。イベントの所定の組は、在庫及びHEに関連する作業を表す。作業は、コンテナ在庫が集荷される場合のコンテナ集荷作業、コンテナ在庫が荷降ろしされる場合のコンテナ降荷作業、及びHEが移動している場合の車両移動作業を含むことができる。それに応じて、イベントの所定の組は、車両移動イベント(すなわち、HEが、0.1m/sのような事前設定閾値よりも大きい速度で移動している)、コンテナ集荷イベント(すなわち、HEが、コンテナをちょうど集荷し終わった)、及びコンテナ降荷イベント(すなわち、HEが、コンテナをちょうど降荷し終わった)を含む。
【0040】
図7では、データ矛盾検出処理は、最初に702、704、及び706においてどのタイプの所定のイベントが発生したかを識別する。一実施形態では、新規在庫データは、関係するイベントを直接指定するフィールド(例えば、「イベント」フィールド)を含み、例えば、値「0」は車両移動イベントを示し、値「1」はコンテナ集荷イベントを示し、値「2」はコンテナ降荷イベントを示し、以降同様に続く。相応に、「イベント」フィールド内の値は、段階702において調べられ、値が0に等しい場合には、車両移動イベントが検出される。値が0ではなかった場合には、処理は段階704に続き、コンテナ集荷イベントが発生したか否かを判断する。「イベント」フィールド内の値が1に等しい場合には、コンテナ集荷イベントが検出され、他の場合には、処理は段階706に続き、「イベント」フィールド内の値が2に等しいか否かを調べることにより、コンテナ降荷イベントが発生したか否かを判断する。
【0041】
在庫データフィールドに格納された「0」、「1」、又は「2」以外に、別の実施形態では、新規在庫データは、HEの速度を含むフィールドを含むことができる。速度が事前設定閾値よりも大きい場合には、車両移動イベントが検出され、他の場合は、新規在庫データは車両移動イベントを示さない。更に、新規在庫データは、集荷イベント又は降荷イベントを示すセンサ(例えば、ツイストロックセンサ)情報又は他の情報を含むフィールドからの出力を含むことができる。例えば、コンテナが集荷されている時には、HE上のツイストロックセンサは、「アンロック状態」から「ロック状態」に変化し、コンテナが降荷されている時には、ツイストロックセンサは、「ロック状態」から「アンロック状態」に変化する。従って、この実施形態では、新規在庫データは、ツイストロックステータスの変化の情報を含み、処理は、段階704及び706においてこの情報を調べて、関係するイベント(集荷イベント又は降荷イベント)を識別する。
【0042】
段階704においてコンテナ集荷イベントが検出された場合には、処理は、図9の902から920までの段階に続く。そうではなく段階706においてコンテナ降荷イベントが検出された場合には、処理は、図12の1202から1220までの段階に続く。これらのイベントのうちのいずれも検出されなかった場合には、このデータ矛盾検出処理(ブロック606における処理に対応する)は、段階706の後にいかなるエラーも報告せずに終了する。
【0043】
段階702において車両移動イベントが検出された場合には、処理は、データ矛盾検出のための708から714までの段階に続く。708から714までの段階は、段階702において車両移動イベントが検出された場合のデータ矛盾検出処理を示している。処理を説明するのを補うために、図8A及び図8Bに車両移動イベントの2つの例を提供しており、これらに対しては708から714までの段階の説明の後で説明する。識別されたイベントに従って、次に、データ矛盾検出は、可能なエラータイプのリストを提供し、エラー検査処理を用いてリスト内のこれらのエラータイプをくまなく調べ、指定されたエラータイプのエラーが発生したか否かを判断する。一実施形態では、車両移動イベントに対応する可能なエラータイプのリストは、HEが、在庫データベースによるとコンテナによって既に占有されているロケーションにおいて移動していることを意味することができる移動違反を含む。移動違反は、エラータイプリスト内で車両移動イベントにおける唯一のエラータイプであるから、エラー検査処理(段階708の)は、移動違反が発生したか否かを判断することのみが必要である。
【0044】
段階708に対して、データ矛盾検出処理は、移動違反を検出するために以下の手順を使用する。
【0045】
(1)データ矛盾検出処理は、最初にエラータイプ(この場合、移動違反)及び新規データに基づいて検索基準を判断し、より具体的には、処理は、上述のロケーション−ポジション関連付け(表1及び図5A及び図5Bのロケーション命名規則を参照されたい)に基づいて、新規データ内のロケーション(HEの寸法を考慮した)に対応するコンテナセルロケーション(すなわち、列、間口、及び枠の数値)を識別する。
【0046】
(2)いかなるコンテナセルロケーションも識別されなかった場合には、このポジションはコンテナセルロケーションではなく(例えば、HEは2つの列の間の通路に沿って移動している)、データ矛盾検出処理は、いかなる移動違反も発生しなかったと判断する。
【0047】
(3)コンテナセルロケーションが識別された場合には、これらのセルロケーションは検索基準を構成し、次に、処理は、識別されたセルロケーションに対応する在庫データに関して在庫データベースに照会する。照会結果(すなわち、在庫データ記録)が、存在するはずがないコンテナが存在すること、又は識別された単一のセルロケーションに複数のコンテナが存在することを示す場合には、データ矛盾検出処理は、移動違反エラーが発生したと結論付けて、これを報告する。他の場合には、データ矛盾検出処理は、いかなる移動違反も発生しなかったことを報告する。
【0048】
段階708の後に、処理は、608から612までの段階に直接戻ることができ、段階708における検出に依存してエラー又はエラーの不在を報告する。代替的に、段階708において移動違反が検出された場合には、更に処理は、図7に710から714までの段階に示しているように、検出エラーによって影響を受けたエラーデータ記録を識別して修正することができる。
【0049】
段階710において、データ矛盾検出処理は、照会結果内のデータ記録を読取り、これらのデータ記録の中でこれらのセルロケーションが占有されていることを示すデータ記録を識別して、これらのデータ記録をエラー在庫データ記録と判断する。HEは、実際には占有されたセルロケーションを通って移動することはできないので、移動違反は、新規在庫データ内のポジションデータが間違いである(すなわち、HEは、新規在庫データ内に報告されたポジションには実際に存在しない)か、又はセルロケーションが占有されていることを示す対応する在庫データがエラーを有する(すなわち、実際にはそのロケーションにはいかなるコンテナも存在しない)かのいずれかを示している。図7に図示の実施形態では、データ矛盾検出処理は、新規在庫データ内のポジションデータを常に信用する。従って、セルロケーションが占有されていることを示す在庫データは、常にエラーを有すると見なされる。
【0050】
段階712において、データ矛盾検出処理は、エラー在庫データ記録の各々を更に修正し、エラーが発生したことを示している。一実施形態では、修正は、エラー在庫データ記録内の属性フィールド(説明の目的で「コンテナタイプ」と呼ぶ)を例えばコンテナが在庫追跡データベース114内の「虚影」であり、実際にはセルロケーションを占有していないことを示す「虚影コンテナ」に変更する段階を含む。また、データ矛盾検出処理は、例えば、新規データに、対応する移動イベントが移動違反をもたらすことを示すエラーフラグを追加することによって新規データも修正し、それによって処理は、新規データも同じくエラーデータ記録であると見なす。そのような修正は、これらのコンテナ及びそれに対応するデータ記録をいかなるエラーも見つかっていない「正常」コンテナ及びその記録から区別することにより、その後のエラー訂正処理を容易にする(手動又は自動のいずれにしても)。その後のエラー訂正処理が、これらのコンテナが指定されたロケーションに実際に存在し、新規データが実際にはエラーを有すると判断した場合には、エラー訂正処理は、「コンテナタイプ」データフィールド内で「虚影コンテナ」を削除するか又はこれを「正常」属性で置き換えることができる。
【0051】
更に修正は、エラーデータ記録内のコンテナが実際にはどの程度の信頼性レベルで虚影コンテナであるかを示す信頼性レベルConferrを計算する段階を含むことができる。通常そのような信頼性レベルは、新規在庫データ内に与えられるHEのポジションデータの信頼性であるConfposの関数としてConferr=f(Confpos)のように計算される。最も単純な実施形態では、信頼性レベルは、一実施形態におけるポジションデータの信頼性としてConferr=Confposのように設定される。代替的に、計算は、このコンテナの降荷イベントの信頼性レベルであるエラーデータ記録内の信頼性レベル(Confdrop)をConferr=f(Confpos,Confdrop)のように使用することができる。例えば、次式になる。
【0052】
段階712の後に、データ矛盾検出処理は、次に、段階714においてデータ矛盾をエラーとして報告し(例えば、エラーフラグを1に設定することにより)、修正したエラー在庫データ記録、エラータイプ(すなわち、虚影コンテナ)、及びイベントタイプ(すなわち、車両移動イベント)のような情報を段階714において更に出力することができる。その後にこれらの情報は、図6の段階610におけるその後のエラー報告処理に対して使用することができる。
【0053】
図7に示しているデータ矛盾検出処理を更に説明するために、車両移動イベントの2つの例を図8A及び図8Bに提供している。図8Aに示している第1の例では、HEは、HEに内蔵された測位システムに従って列101内にあるコンテナに近づいている。HEのステータスをアプリケーション/データベースインタフェース110に報告するために、通信ネットワーク108を通じてセンサ情報が定期的に送信される。そのようなセンサ情報は、HEのポジション、ポジションの信頼性、HEの速度、HEに関連するイベントなどを含むことができる。次に、アプリケーション/データベースインタフェース110は、データベース管理システム112を通じて在庫追跡データベース114内に書き込む必要があると見なす新規在庫データを生成する。その一方、アプリケーション/データベースインタフェース110は、生成した新規在庫データをエラー検出に向けてエラー検出モジュール320にも転送する(又はアプリケーション/データベースインタフェースは、新規在庫データを在庫追跡データベース114に書き込む前に、エラー検出モジュール302から検証通知を受け取るまで待機することができる)。第1の例に対応する時間インスタンスでは、新規在庫データは、HEのポジションを(x,y,z)として、速度をvxとして示し、vxは0.1m/sよりも大きく、コンテナが移動していることを示している。
【0054】
図6を用いて上述したように、HEの速度は閾値(例えば、0.1m/s)よりも大きいので、エラー検出モジュールは、段階702において新規在庫データが車両移動イベントを示していると判断する。次に、段階704において、エラー検出モジュールは、列101、間口24の隣のロケーションにおいてHEに関する移動違反が発生したか否かを判断する。そのために、データ矛盾検出処理は、最初に新規在庫データ内のロケーション(px,py,pz)に対応するセルロケーション(すなわち、列数値、間口数値、及び枠数値)を識別する。HEは、寸法を有する物理的エンティティであるのに対してロケーション(px,py,pz)は、一般的にHE上の点(例えば、HEに内蔵されたGPS受信機の装着ロケーション)に対応するので、通常、地球上ポジション(px,py)は、HEが占有する地球上区域を表す区域に変換される。一実施形態では、x座標及びy座標における上側及び下側の境界が使用され、地球上区域は、xb1及びyb1が下側境界であり、xb2及びyb2が上側境界である時に、([px−xb1,px+xb2],[py−yb1,py+yb2])によって表される。上側及び下側の境界は、HEのタイプ、HEにコンテナが積載されているか否か、及びコンテナの物理的寸法のようなファクタに依存して異なるとすることができる。次に、データ矛盾検出処理は、換算表(例えば、表1)内で次式を満たすいずれかの直交座標ロケーション(x,y,z)に関して直交座標ポジションを検索する。
px−xb1−(幅/2)≦x≦px+xb2+(幅/2)、かつ
py−yb1−(長さ/2)≦y≦py+yb2+(長さ/2)
ここで、幅、長さ、及び高さは、セルロケーションの幅、長さ、及び高さである。図8Aに示しているこの特定の例では、HEが列101、間口24内のあらゆるコンテナから分離しており、区域([px−xb1,px+xb2],[py−yb1,py+yb2])が妥当なセルロケーションに対応しないので、検索はいかなる結果ももたらされない。それに応じて、データ矛盾検出処理は、段階708においていかなる移動違反も発生していないと結論付け、いかなるエラーも報告することなく段階608に抜ける。その後に、処理は段階612に続き、データベースを更新する。
【0055】
HEが移動し続け、今度は図8Bに示している列101、間口24内のコンテナ区域内にあるポジションに存在すると仮定する。この時間インスタンスにおいて生成される新規在庫データ記録は、今度は新規ロケーション(px,py,pz)、及び同じく事前設定閾値よりも大きくHEが移動中であることを示す新規速度vxを含む。ここでもまた、エラー検出モジュール302は、段階702において車両移動イベントが発生したと判断する。次に、エラー検出モジュールは、移動違反が発生したか否かを判断する3段階手順を辿り、すなわち、(1)処理は、換算表(例えば、表1)内で対応するセルロケーションに関して直交座標ポジションを検索し、(2)次に、検索は、(列101、間口24、枠C、段1から段4)及び(列101、間口24、枠B、段1から段4)をもたらし、(3)次に、処理は、これらのセルロケーション(列101、間口24、枠C、段1から段4)及び(列101、間口24、枠B、段1から段4)に対応する在庫データに関して在庫追跡データベース114に照会する。
【0056】
在庫追跡データベース114が、指定されたセルロケーションにコンテナを示すいかなる記録も含まなかった場合には、照会は、いかなる結果も戻さないことになるか、又は一部の在庫追跡システムでは、照会は、ロケーションが非占有であることを示す記録を戻すことになる。次に、エラー検出モジュール302は、いかなる移動違反も発生していないと結論付け、いかなるエラーも報告せずに段階608に抜ける。在庫追跡データベース114が、指定されたセルロケーションに配置された2つのコンテナ、例えば、(列101、間口24、枠C、段1)にあるコンテナA及び(列101、間口24、枠B、段1)にあるコンテナBが存在することを示すデータ記録を有した場合には、照会は、対応する2つの在庫データ記録をもたらすことになる。照会結果に従ってエラー検出モジュール302は、そこにコンテナが存在し、従って、移動違反が発生したと結論付ける。次に、エラー検出モジュール302は、更に別の処理に向けて段階710において2つの在庫データ記録を読み取る。その後に段階712において、エラー検出モジュール302は、コンテナA及びBの各々を例えば「虚影コンテナ」としてマーク付けするように2つの在庫データ記録を変更し、新規在庫データ内に与えられたポジションの信頼性レベルに基づいてこれらのコンテナの信頼性レベルを更新する。次に、段階714において、エラーが(修正済みデータ記録と共に)報告され(例えば、エラーフラグを1に設定することにより)、エラー検出モジュールは、608から612までの段階に進む。
【0057】
図7を参照し直すと、段階704においてコンテナ集荷イベントが発生したと判断された場合には、データ矛盾検出処理は、コンテナ集荷イベントが発生する場合のエラーを検出する処理を示す図9の902から920までの段階に続く。データ矛盾検出処理は、最初にコンテナ集荷イベントに対応するエラータイプリストを提供する。図9に図示の実施形態では、エラータイプリストは、集荷に利用可能なコンテナの不在、接近不能な集荷ロケーション、及び接近不能な作業ロケーションという3つのエラータイプを含む。次に、データ矛盾検出処理は、検査処理を用いて3つのエラータイプのうちの1つのエラーが発生したか否かを調べる。
【0058】
段階902において、データ矛盾検出処理は、最初に新規在庫データによって指定されたロケーションにおいて集荷に利用可能なコンテナが存在したか否かを判断する。判断は、3つの部分段階において実施され、すなわち、(1)処理は、ポジションデータ(高さを含む)又は新規在庫データ内のセルロケーションに基づいて集荷ロケーションを識別することによって検索基準を判断し(この場合、この集荷ロケーションが検索基準を構成する)、(2)次に、処理は、判断した検索基準を用いて、識別した集荷ロケーションに対応する在庫データ記録に関して在庫追跡データベース114に照会し、(3)処理は、照会がいかなる結果も戻さなかったか又はロケーションが非占有であることを示す結果を戻した場合にいかなるコンテナも利用可能ではないと判断し、他の場合には、処理は、コンテナが利用可能であると判断する。
【0059】
段階902において、指定された集荷ロケーションにおいていかなるコンテナも集荷に利用可能ではないと判断された場合には、処理は、エラーをエラータイプと共に報告する段階908に直接進むことができ、次に、段階916における次のエラー検査段階に進み、HEが接近不能なロケーションで作業しているか否かを判断する。別の実施形態では、処理は、段階904及び906に続き、エラーデータ記録を識別して修正する。段階904において、データ矛盾検出処理は、集荷ロケーションの下のセルロケーションに対応する在庫データ記録に関しての在庫追跡データベース114の更に別の照会によって集荷ロケーションの下の非占有セルロケーションを識別する。
【0060】
新規データが正しい場合、新規データに対応するセルロケーションに加えてその下のセルロケーションが、集荷イベントの前に必ず占有されていたはずである。これらのコンテナの不在は、在庫追跡データベース114内又は新規データ内のいずれかにおけるエラーを示している。
【0061】
次に、段階906では、在庫追跡データベース114の完全性を高めるために、データ矛盾検出処理は、次に、段階904において識別したセルロケーションの占有を反映する在庫データ記録を作成する。更に、データ矛盾検出処理は、これらのコンテナを例えば「不可視コンテナ」としてマーク付けし、いかなるエラーも見つかっていない「正常」コンテナからこれらのコンテナを区別する。同じく段階906において、更にデータ矛盾検出処理は、これらの「不可視」コンテナに関する信頼性レベル(すなわち、「不可視コンテナ信頼性レベル」)を計算する。信頼性レベルの計算は、段階712に使用されるものと類似の計算式に従い、新規在庫データ内に与えられた信頼性レベルに基づいている。更に、新規データも間違いである可能性があるから、データ矛盾検出処理は、このデータもエラーを有するものとしてマーク付けする。一実施形態では、このマーク付けは、エラー、並びにエラータイプを示すエラーフラグを新規データに追加する段階を含む。
【0062】
次に、データ矛盾検出処理は段階908に進み、エラー、並びにエラータイプ、非占有セルロケーション、及び「不可視コンテナ」に対して新規作成在庫データ記録を報告する。その後に、処理は、段階916における次のエラー検査段階に進み、HEが接近不能なロケーションで作業中であるか否かを判断する。
【0063】
図10Aは、段階902から段階908において検出される可能性があるコンテナが集荷に利用可能ではなかった場合の例を示している。この例では、在庫追跡データベースが、特定のロケーションの段1に唯一のコンテナDが存在することを示しているのに対して、新規在庫データは、コンテナAがこの特定のロケーションの段4で集荷されたと報告する。相応に、エラー検出モジュール302が段階604において新規在庫データを読み取った後に、エラー検出モジュールは、図7に示している段階606におけるデータ矛盾検出処理に入る。段階702及び704を提供し、エラー検出モジュールは、コンテナ集荷イベントが発生したと判断し、次に、段階902においてコンテナが集荷に利用可能であったか否かを検査する。在庫追跡データベース内にはコンテナDしか存在しないので、このロケーションの段4に関する照会はいかなる結果も戻さず、それによっていかなるコンテナも集荷に利用可能ではなかったという結果がもたらされる。次に、段階904において、エラー検出モジュール302は、このロケーションの段1から段3に対して照会し、その結果は、このロケーションの段1にコンテナDがあることを示す1つの在庫データ記録のみを含むことになる。従って、在庫追跡データベースにより、このロケーションの段2、3、及び4は空であるが、新規データにより、段2、3、及び4は、占有されていたはずである。それに応じて、段階906において、エラー検出モジュール302は、段2、3、及び4それぞれのセルロケーションを有する3つの在庫データ記録を作成し、これらの記録の「コンテナタイプ」は、例えば、「不可視コンテナ」としてマーク付けされる。新規データによると段4におけるコンテナが集荷されているので、エラー検出モジュール302は、この集荷ロケーションに対応する新規作成データ記録を例えば過去においてのみ妥当であったことを示す「失効済み」と更にマーク付けする。代替的に、エラー検出モジュール302は、段2及び3におけるセルロケーションに関する在庫データ記録のみを作成することができる。更に、新規データも同様に潜在的に間違いである可能性があるから、このデータもデータ矛盾に起因して同様にマーク付けされる。一実施形態では、新規データは、検出されたエラーに対するエラーフラグを追加することによってマーク付けされる。
【0064】
更に、エラー検出モジュール302は、新規在庫データ内に与えられた集荷イベントの信頼性レベル又はこの信頼性レベルの関数を新規作成在庫データ記録の信頼性レベルとして割り当てることができる。その後に、データ矛盾検出処理は、段階908においてエラー、並びに新規作成データ記録を報告し、次に、次のエラー検査段階に進み、段階916においてHEが接近不能なロケーションで作業中であるか否かを判断する。
【0065】
図9を参照し直して段階910に進むと、902でコンテナが集荷に利用可能であった場合に、データ矛盾検出処理は、段階910において接近不能な集荷ロケーションというタイプのエラーが発生したか否かを判断する次のエラー検査段階に移る。すなわち、段階910において、データ矛盾検出処理は、コンテナが接近不能なロケーションで集荷されたか否かを判断する。新規在庫データが、コンテナBが段3から集荷されたことを示すが、在庫追跡データベースが、段4においてコンテナAがコンテナBの上に積み重ねられていることを示す図10Bにその例を示している。在庫追跡データベース内でのコンテナBの上のコンテナAの存在により、実際には、コンテナBは、最初にコンテナAが集荷されてしまっていない限り接近不能であったはずである。集荷されたコンテナが接近不能なロケーションにあったか否かを判断するために、データ矛盾検出処理は、最初に集荷ロケーションが最上段、すなわち、この例示的な保管施設では段4であるか否かを検査することによって検索基準を判断する。集荷ロケーションが最上段であった場合には、集荷ロケーションは接近可能であると見なされ、いかなる検索基準及びいかなる照会も必要ではなく、従って、処理は段階916に続く。他の場合には、集荷ロケーションの上方のセルロケーションが検索基準を構成し、データ矛盾検出処理は、この検索基準を更に用いて、集荷ロケーションの上方のセルロケーションに関連する在庫データ記録に関して在庫追跡データベース114に照会する。照会がいかなる結果も戻さなかったか又はいかなるコンテナも集荷ロケーションの上に存在しない結果を戻した場合には、データ矛盾検出処理は、集荷ロケーションが接近可能であると結論付けて、段階916における次のエラー検査段階に進む。図10Bに示している例では、集荷ロケーションが段3にあるから、照会は、この特定のロケーションの段4に関する。この例では、照会は、段4にコンテナAを示す在庫データ記録を戻すことになり、従って、段階910において、データ矛盾検出処理は、集荷ロケーションが接近可能ではなかったはずであると結論付け、接近不能な集荷ロケーションというタイプのエラーが発生したと結論付ける。次に、処理は、段階915においてエラーをエラータイプと共に報告する段階に進むことができる。代替的に、処理は、段階908に移る前に段階912及び段階914においてエラーデータ記録を識別して修正することができる。
【0066】
一実施形態における処理は、段階910から段階915においてデータを報告する段階に進むことができる。別の実施形態では、段階912において、処理は、更に別の処理に向けて照会からもたらされるデータ記録を読み取って段階914に進み、次に、この段階においてデータ矛盾検出処理は、例えば、在庫データ記録内のコンテナのタイプ又は特性を表すフィールド内でこれらのコンテナを「虚影コンテナ」としてマーク付けし、これらのコンテナが在庫追跡データベース内にしか存在しないことを示している。更に、段階914において、新規在庫データ内に与えられた信頼性レベルに基づいて「虚影コンテナ信頼性レベル」という名称の信頼性レベルも計算され、次に、この信頼性レベルは、これらの在庫データ記録に追加されるか、又はこれらの在庫データ記録内の元の信頼性レベルを置き換える。データ矛盾検出処理は、エラーを反映するために新規データもマーク付けし、このマーク付けは、エラー、並びにエラータイプを示すエラーフラグを新規データに追加する段階を含む。その後にデータ矛盾検出処理は、段階908においてエラータイプを含むエラーを報告し、更新した在庫データ記録を出力する。
【0067】
次に、データ矛盾検出処理は、段階916に進み、HE自体が接近不能なロケーションで作業中であるか否かを判断する。段階916における第3のエラータイプは、他の2つのエラータイプとは互いに排他的ではないので、この段階916は、前の2つのエラータイプ(すなわち、集荷に利用可能なコンテナの不在及び接近不能な集荷ロケーション)に関連する処理段階(段階902から908まで及び段階910から914まで)の後に発生する。
【0068】
図11A〜図11Dは、何故HEが接近不能なロケーションに存在する可能性があり、段階916〜920を必要とするかを示す状況を示している。図11A及び図11Bは、HEがコンテナAを正当に集荷することができる接近可能なロケーションで作業中のHEの2つの例を示している。一方、図11C及び図11Dは、トップピックであるHEが、コンテナE及びFの存在に起因して、図11Aに示しているようにリーチスタッカー(異なるタイプのHE)が到達することができるコンテナAに到達することができないことを示している。
【0069】
一実施形態では、HEが接近不能なロケーションで作業中であるか否かを識別するために、各タイプのHEに対してクリアランス区域が定められる。そのようなクリアランス区域は、HEコントローラの到達区域メモリ内で、集荷中のコンテナのロケーションを基準点とする矩形区域、円形区域、又は他の形状の区域によって表すことができる(HEの形状に依存して)。代替的に、クリアランス区域は、集荷中のコンテナのロケーションを基準とするセルロケーションによって直接表すことができる。このクリアランス区域内のセルロケーションは検索基準を構成し、データ矛盾検出処理は、この検索基準を用いて、クリアランス区域内のロケーションに対応する在庫データに関して在庫追跡データベース114に照会する。照会がいかなる記録ももたらされなかったか又はいかなるコンテナもクリアランス区域に存在しないことを示す記録をもたらされた場合には、段階916において、HEは接近不能なロケーションで作業していないと判断され、データ矛盾検出処理は、エラーを更に報告することなく段階608に抜ける。しかし、段階916における照会が、クリアランス区域内のセルロケーションにコンテナが存在することを示す結果をもたらされた場合には、データ矛盾検出処理は、HEが接近不能なロケーションで作業中であると結論付けて段階918に進み、更に別の処理に向けてこれらの記録を読み取って受け取り、すなわち、段階918では、接近不能性問題をもたらすあらゆるコンテナが識別される。段階918に進む代わりに、データ矛盾検出処理は、段階918及び920を省略して、エラーをエラータイプと共に報告する段階921に直接進むことができる。
【0070】
段階920において、次に、データ矛盾検出処理は、段階918で識別されたコンテナをこれらの在庫データ記録内でコンテナのタイプ又は特性を表すフィールド内で、これらのコンテナが在庫追跡データベース内にしか存在しないことを示す「虚影コンテナ」としてマーク付けする。更に、段階920では、新規在庫データ内に与えられた信頼性レベルに基づいて「虚影コンテナ信頼性レベル」という名称の信頼性レベルも計算され、次に、この信頼性レベルは、これらの在庫データ記録に追加されるか、又はこれらの在庫データ記録内の元の信頼性レベルを置き換える。その後に、段階921において、データ矛盾検出処理は、エラータイプを含むエラーを報告し、更新された在庫データ記録を出力し、608から612までの段階に抜ける。
【0071】
図7を参照し直すと、段階702から706までを通じてコンテナ降荷イベントが検出された場合には、処理は、図12の1202から1220までの段階に続く。この実施形態では、コンテナ降荷イベントに対応するエラータイプの組は、空中降荷ロケーション、占有済み降荷ロケーション、及び接近不能な作業ロケーションを含む。この場合、データ矛盾検出処理は、検査処理を用いてこれらの3つのエラータイプのうちのいずれかのデータエラーが発生したか否かを調べる。第1のエラー検査段階は、段階1202で始まり、この段階では、処理は、降荷ロケーションが空中であったか否かを判断する。このエラータイプは、直下に必要な物理的支持を与えるコンテナが存在することを在庫追跡データベースが反映していなかったセルロケーションにコンテナが降荷された又は荷置きされた場合を指す。このエラータイプに基づいて、データ矛盾処理は、最初に新規データ内で指定された降荷ロケーションの下のセルロケーションを含む検索基準を判断する。降荷ロケーションが段1であり、すなわち、直接に地面の上に収まるベース段である場合には、降荷ロケーションの下にはいかなるセルロケーションも存在せず、データ矛盾検出処理は、降荷ロケーションが空中ではないと直接結論付け、次のエラー検査段階に向けて段階1210に進む。他の場合には、検索基準は、降荷ロケーションの下の全てのセルロケーションを含み、データ矛盾検出処理は、この検索基準を用いて、これらのセルロケーションに関連するあらゆる在庫データ記録に関して在庫追跡データベース114に照会する。照会が、降荷ロケーションの下のセルロケーションのいずれかに対していかなる結果も戻さなかったか又は在庫追跡データベース114が、降荷ロケーションの下の指定ロケーションにコンテナを示すいかなるデータ記録も含まないことを示す結果を戻した場合には、データ矛盾検出処理は、降荷ロケーションが全く空中であり、エラーが発生したと結論付ける。一実施形態では、データ矛盾検出処理は、段階1204及び1206を省略して段階1208に進むことができ、エラーをエラータイプ(すなわち、空中降荷ロケーション)と共に報告する。代替的に、処理は、段階1208でエラーを報告する前に段階1204及び1206に進む。
【0072】
段階1204において、データ矛盾検出処理は、照会結果に基づいて降荷ロケーションの下の非占有セルロケーションを識別する。より具体的には、段階1204は、HEが定めた降荷ロケーションをデータベース記録と比較することによって降荷ロケーションの下の空のセルロケーションを識別する。新規在庫データが正確であり、従って、降荷ロケーションの下には実際にコンテナが必ず存在すると仮定すると、データ矛盾検出処理は、段階1206において、降荷ロケーションの下の非占有セルロケーションの各々に対して新規在庫データ記録を作成し、これらのロケーションの各々にコンテナを割り当てる。これらのコンテナは、以前には在庫追跡データベースに対して不可視であったので、例えば、それぞれのデータ記録内の「コンテナタイプ」フィールド内に「不可視コンテナ」としてマーク付けされる。更に、段階1206において、新規在庫データ内に与えられた信頼性レベルに基づいて「不可視コンテナ信頼性レベル」という名称の信頼性レベルも計算され、次に、この信頼性レベルは、新規作成データ記録の各々の中に含められる。次に、段階1208において、データ矛盾検出処理は、エラーをエラータイプと共に報告し、新規計算信頼性レベルを含む新規作成データ記録を出力する。その後に、データ矛盾検出処理は、段階1216において、HEが接近不能なロケーションで作業中であるか否かを判断する次の検査段階に進む。
【0073】
図13Aは、降荷ロケーションが空中である例を示している。左に示しているように、在庫追跡データベースは、コンテナDが段1にあり、コンテナDの上にはいかなるコンテナも位置しないことを示している。新規在庫データは、コンテナAが段4に降荷されたことを示している。この場合データ矛盾検出処理は、段4における降荷ロケーションの下には3つのセルロケーション(段1、段2、及び段3)が存在することを識別し、これらの3つのセルロケーションに対して在庫追跡データベースに照会する。照会は、段1におけるコンテナDを示す1つのデータ記録だけを戻し、従って、照会結果内には段2及び段3に関するいかなるデータ記録も出現しない。従って、段階1202において、データ矛盾検出処理は、降荷ロケーションが空中であると結論付け、段2及び段3における2つのセルロケーションが、段階1204における更に別の処理を必要とすることを識別する。それに応じて、段階1206において、データ矛盾検出処理は、1つが段2に対して、もう1つが段3に関する2つの新規データ記録を作成し、2つの新規作成データ記録において2つのコンテナに「不可視コンテナ」に設定された「コンテナタイプ」属性を割り当て、更に信頼性レベルを計算して2つのデータ記録内に含める。次に、データ矛盾検出処理はエラーを報告し、新規計算信頼性レベルを含む2つの新規作成データ記録を出力し、段階1216に抜けて、HEが接近不能なロケーションで作業中であるか否かを調べる。
【0074】
図12の段階1202を参照し直すと、降荷ロケーションが空中ではなかった場合には、処理は、次のエラー検査段階に向けて段階1210に続き、占有済み降荷ロケーションというエラータイプのエラーが発生したか否かを判断する。段階1210では、データ矛盾検出処理は、在庫追跡データベース114内で降荷ロケーションが別のコンテナにおって既に占有済みであるか否かを判断する。この判断を行うために、データ矛盾検出処理は、最初に新規データ内の降荷ロケーションに基づいて、降荷ロケーションを含み、かつ降荷ロケーションが最上段ではなかった場合には降荷ロケーションの上方のセルロケーションを含む検索基準を判断する。次に、データ矛盾検出処理は、この検索基準を用いて、検索基準内に指定されたこれらのセルロケーションに関連する在庫データ記録に関して在庫追跡データベースに照会する。照会が、いかなる結果ももたらさないか、又は降荷ロケーション又は降荷ロケーションの上方のロケーションにいかなるコンテナも示さない結果をもたらす場合には、データ矛盾検出処理は、降荷ロケーションが占有済みではないと結論付け、段階1216における次のエラー検査段階に進む。他の場合には、データ矛盾検出処理は、降荷ロケーションが既に占有済みであり、従って、このエラータイプのエラーが発生したと結論付ける。一実施形態では、データ矛盾検出処理は、段階1212及び1214を省略して段階1215に進んでエラーをエラータイプと共に報告し、別の実施形態では、段階1215でエラーを報告する前に段階1212及び1214に続く。
【0075】
段階1212において、データ矛盾検出処理は、更に別の処理に向けて照会結果内のデータ記録を読み取って取得する。従って、降荷イベントを示す新規在庫データが正しい場合、照会結果内のデータ記録は必ずエラーを有するはずであり、その逆も同様である。すなわち、新規在庫データと照会結果内のデータ記録の両方が間違いである可能性があり、従って、これらの両方がエラーデータ記録として取り扱われる。次に、データ矛盾検出処理は、段階1214において、照会結果から導出されたデータ記録の各々における「コンテナタイプ」属性を「虚影コンテナ」に修正する。更に、データ矛盾検出処理は、降荷イベントの信頼性レベルに基づいてデータ記録の各々に関する新規信頼性レベルを計算し、次に、この新規信頼性レベルは、対応するデータ記録に追加されるか、又は元来データ記録内にある信頼性レベルを置き換える。データ矛盾検出処理は、エラーを反映するために新規データをマーク付けし、新規データにエラーフラグを追加することができる。その後に、データ矛盾処理は、段階1215においてエラーを報告し、新規計算信頼性レベルを有する修正済みデータ記録を出力し、1216における次のエラー検査段階に進む。
【0076】
図13Bは、降荷ロケーションが既に占有済みである場合の例を示している。左に示しているように、在庫追跡データベースは、互いに積み重ねられた4つのコンテナが存在し、特定のロケーションの4つ全ての段を占有することを示している。新規在庫データは、別のコンテナがこの特定のロケーションの段4に荷置きされる降荷イベントが発生したことを示している。それに応じて、段階1202において、データ矛盾検出処理は、段4の下のセルロケーションが全て占有済みであるから、降荷ロケーションが空中ではないと判断する。次に、データ矛盾検出処理は、段階1210において降荷ロケーション(すなわち、この特定のロケーションの段4)におけるデータ記録に関して在庫追跡データベースに照会し、この照会は、コンテナAが既に降荷ロケーションにある(降荷イベントの前に)ことを示すデータ記録をもたらす。従って、データ矛盾検出処理は、降荷ロケーションが占有済みであったと結論付け、段階1212及び1214に進んでコンテナAを「虚影コンテナ」としてマーク付けし、その信頼性レベルを更新する。その後に、データ矛盾検出処理は、エラーを報告し、新規計算信頼性レベルを有する修正済みデータ記録を出力し、段階1216における次のエラー検査段階に進んでHEが接近不能なロケーションで作業中であるか否かを判断する。
【0077】
図12を参照し直すと、段階1210において降荷ロケーションが非占有であると判断されたか、又は段階1208又は1215においてエラーが発生した場合には、データ矛盾検出処理は、段階1216に進んでHEが接近不能なロケーションで作業中であるか否かを判断する。この判断及びその後の段階1218から1221は、段階916から921に関わる処理と同様であり、従って、これらに対しては、ここでは再述しない。
【0078】
図14は、在庫エラー、特に、コンテナ輸送ヤード内でのコンテナのロケーションにおけるエラーを検出するためのカメラを利用したエラー検出を使用する在庫追跡及び管理システムを示している。図3に示している構成要素に加えて、このシステムは、カメラ1402及び画像処理モジュール1404を更に含む。カメラ1402は、単レンズカメラ、2つ又はそれよりも多くのレンズを有するステレオカメラ、又は各々がステレオカメラとして機能する、単レンズカメラの組とすることができる。カメラ1402は、コンテナ輸送ヤード内の固定のロケーション(例えば、選択された照明柱)に設置することができる。各カメラ(又はカメラの各組)は、ヤードの指定の区域に向けて位置決めすることができ、固定角度で網羅することになる区域よりも広い区域を網羅するために、事前設定範囲で回転させることができる。これらのカメラ1402は、コンテナ輸送ヤードにわたって適正に分散されると、ヤード全体を走査することができ、通信ネットワーク108を通じてアプリケーション/データベースインタフェース110に画像を提供することができる。アプリケーション/データベースインタフェース110は、画像を画像処理モジュール1404に出力し、画像処理モジュール1404は、画像を処理してセルロケーションが占有済みであるか否かを判断し、それに従って在庫検証データを生成する。生成された在庫検証データは、次に、エラー検出モジュール302に送られ、エラー検出モジュール302は、エラー検出に向けて在庫検証データを在庫追跡データベース114内のデータ記録と比較する。アプリケーション/データベースインタフェース110は、オペレータがヤード内での作業及び行動をモニタするために、これらの画像をディスプレイ上に表示することができる。
【0079】
図15は、カメラ1402からの画像に基づいて在庫エラーを検出する処理を示す流れ図である。処理は、毎日特定の時刻に実施されるように設定することができ、いずれかの時刻にオペレータが開始することができ、又は更に実時間に実施することができる。段階1502において始まり、画像処理モジュール1404は、アプリケーション/データベースインタフェース110からカメラ画像を受け取り、コンテナの認識に向けて画像を処理する。例えば、コンテナを特定の寸法を有する立方体又は円柱(例えば、タンクコンテナでは)として処理することによってコンテナを認識するように、当業者に公知の様々な画像処理技術及びパターン認識技術を使用することができる。そのような技術を使用することにより、画像処理モジュール1404は、画像内のコンテナを認識するのみならず、画像内のその(相対)ロケーション(地面の上の高さを含む)も認識し、この場合、各ポジションは、コンテナの中心のポジションである。更に、画像処理モジュール1404は、認識したコンテナの属性を識別することができ、そのような属性は、コンテナの色、タイプ、出所、製造業者、更に、コンテナIDを含む。
【0080】
コンテナが画像内のその(相対)ポジションと共に認識された状態で、更に、画像処理モジュール1404は、段階1504においてコンテナ輸送ヤード内でのコンテナのロケーションを判断する。一実施形態では、画像処理モジュール1404は、画像を供給するカメラのロケーション、画像が撮影された時点でのカメラの走査角度、及び画像内でのコンテナの相対ポジションに基づいてコンテナのロケーションを判断する。より具体的には、各カメラは固定のロケーションにあるから、カメラのロケーション及び走査角度に基づいて、その視野(すなわち、画像内に捕捉される区域)を判断することができる。その結果、視野をコンテナ輸送ヤードに関連付けるロケーションプロフィールをいずれかを特定の走査角度にある各カメラに対して事前判断することができる。そのようなロケーションプロフィールは、一方の列が、輸送ヤード内のセルロケーション(例えば、列101、間口21、枠A、段1)を含み、他方の列が、画像内で対応するロケーション(例えば、px、py、及びpz)を含む2列の換算表によって表すことができる。更に、カメラの走査範囲で複数の(等しい間隔の)走査角度を選択することにより、カメラに対して複数のロケーションプロフィールを構成することができる。これらの走査角度の間隔は、いずれかの走査角度で撮影された画像を最も近い事前選択走査角度に対応するロケーションプロフィールを用いてコンテナ輸送ヤードに正しくマップすることができるように比較的小さいものでなければならない。いずれかの走査角度で撮影された画像をマップする前に、画像処理モジュール1404は、画像を回転させて、回転された画像が、最も近い事前選択走査角度で撮影された画像を近似するようにすることができる。その後に、画像処理モジュール1404は、ロケーションプロフィールに基づいてコンテナ輸送ヤード内でのコンテナのロケーションを判断する。
【0081】
別の実施形態では、画像処理モジュール1404は、画像内の目印を識別して、認識した各コンテナに対してコンテナ輸送ヤード内で対応するロケーションを判断する。目印は、地面の上の線マーカ、隣接の照明柱、及び視野内の建築物のような他の固定物を含むことができる。コンテナ輸送ヤード内でのこれらの目印のロケーションは、事前判断することができるので、輸送ヤード内で認識されたコンテナのロケーションを判断するのにこれらの目印を基準点として使用することができる。
【0082】
両方の段階1502及び1504までに、画像処理モジュールは、各画像内でコンテナを認識し終わり、輸送ヤード内でのそのロケーションを判断し終わっている。更に、コンテナ認識においてより高い精度を獲得するように認識結果の整合性を更に評価するために、画像処理モジュール1404は、1つのカメラによって撮影された複数の画像からのコンテナ認識結果、並びに複数のカメラによって撮影された画像からの認識結果を比較して相関付けることができる。
【0083】
その後に、段階1506において、画像処理モジュール1404は、コンテナ認識及び認識したコンテナのロケーションに基づいて在庫検証データを生成する。例えば、各カメラは、所定の指定区域を走査するか又は網羅するので、画像処理モジュール1404は、各カメラに対して在庫検証データに対する所定のテンプレートを有することができる。テンプレートは、1つの列が指定区域内での全てのセルロケーションを列記し、別の列が、対応するセルロケーションでコンテナが検出されるか否かを示すためのものである2列の表程度の単純なものとすることができる。画像処理モジュール1404は、段階1502におけるコンテナ認識及び段階1504におけるロケーション判断に基づいて第2の列を埋める。表は、認識された各コンテナの属性及び表の各行エントリに関するタイムスタンプのような他の情報に対する列を含むように拡張することができ、そのようなタイムスタンプは、対応する画像が撮影された時刻とすることができる。次に、画像処理モジュール1404は、段階1506においてこれらの表を在庫検証データとしてエラー検出モジュール302に報告する。任意的に、画像処理モジュール1404は、各カメラに関する表を単一の表に組み合わせて、この単一の表をエラー検出モジュール302に報告することができる。
【0084】
段階1508において、エラー検出モジュール1404は、画像処理モジュール1404からの在庫検証データを処理して在庫追跡データベース114内の在庫エラーを検出する。エラー検出モジュール302は、最初に在庫検証データ内のセルロケーションに対応するデータ記録に関して在庫追跡データベース114に照会し、次に、これらの2つの間のあらゆる不一致に関して照会結果を在庫検証データと比較する。在庫検証データによるとあるセルロケーションは占有されているが、照会結果が、このセルロケーションにいかなるコンテナも存在しないことを示す場合には、このロケーションにおけるコンテナは、欠損コンテナ又は在庫追跡データベース114に対して不可視のコンテナと見なされる。同様に、在庫検証データによるとあるセルロケーションは占有されていないが、照会結果が、そこにコンテナが存在することを示す場合には、コンテナは、在庫追跡データベース114内にのみ存在するもの又はデータベース内の「虚影」コンテナと見なされる。更に、エラー検出モジュール302は、エラー検出に向けて在庫検証データ内のコンテナ属性を照会結果内のコンテナ属性と更に比較することができる。例えば、在庫検証データに従って画像処理モジュール1404があるセルロケーションにおいて20フィートのコンテナを認識したが、照会結果が、このセルロケーションにあるコンテナが40フィートのコンテナであることを示す場合には、エラー検出モジュール302は、このセルロケーションにおいて属性の不一致を検出する。不一致の3つ全ての場合が、在庫追跡データベース114内のエラーを示している。
【0085】
段階1510では、エラー検出モジュール302は、エラー検出に従って在庫データを更に作成又は修正する。より具体的には、エラー検出モジュール302は、欠損コンテナが識別された各セルロケーションに対して在庫データ記録を作成し、更にこの新規作成データ記録内のコンテナ属性(例えば、「コンテナタイプ」フィールド)をマーク付けして(例えば、「不可視コンテナ」として)、コンテナが在庫追跡データベース114に対して不可視であったことを示す。「虚影」コンテナが識別されるセルロケーションでは、エラー検出モジュール302は、例えば、コンテナ特性を「虚影コンテナ」とマーク付けすることにより、照会結果内の対応するデータ記録をエラーを反映するように修正する。不整合属性を有するセルロケーションに対して、エラー検出モジュール302は、在庫検証データ内の属性(画像処理モジュールによって認識された属性)を追加するように照会結果内の対応するデータ記録を修正することができる。更に、エラー検出モジュール302は、画像処理モジュール1404に関連付けられた所定の信頼性レベルを用いて信頼性レベルをデータ記録に追加することができる。
【0086】
その後に、段階1512において、エラー検出モジュール302は、更新に向けて新規作成データ記録及び修正済みデータ記録を在庫追跡データベース114に報告する。
【0087】
別の実施形態では、HE又はモニタリング車両上に設けられたカメラを単独又は固定のロケーションに設けられたカメラとの併用いずれかに使用することができる。これらのカメラはモバイルであるから、画像処理モジュール1404は、目印を認識し、目印のロケーションを基準として使用することにより、認識したコンテナのロケーションを判断する。代替的に、画像処理モジュール1404は、コンテナのロケーションを判断するためにカメラを載置する車両のポジションを使用することができる。その後に、エラー検出モジュール302は、図15を用いて上述のように、エラーを検出して在庫データを作成又は修正する。
【0088】
図16は、在庫追跡システムに関連付けられた在庫追跡データベース内のエラーを検出するために在庫追跡システムとインタフェースで接続するカメラを利用した在庫エラー検出システムの実施形態を示している。カメラを利用した在庫エラー検出システムは、カメラ1402、個別の有線通信ネットワーク及び/又は無線通信ネットワーク1602、画像処理モジュール1404、並びにエラー検出モジュール302を含む。通信ネットワーク1602は、カメラによって生成された画像を画像処理モジュール1404に送信するために、カメラ1402を画像処理モジュール1404と直接接続し、従って、画像処理モジュール1404は、図14に示しているようにアプリケーション/データベースインタフェース110を通じて画像を受け取る必要がない。従って、カメラを利用した在庫エラー検出システムは、在庫追跡システムとインタフェースで接続する独立したシステムになり、このシステムは、一部の用途では好ましいとすることができる。画像処理モジュール1404及びエラー検出モジュール302内に関わる処理は図15に示す処理と同様であり、これに対しては図14の在庫追跡及びエラー検出システムと共に上述している。
【0089】
図17は、本発明の実施形態に従って含められた自動在庫エラー検出構成要素及び在庫エラー訂正構成要素を有する在庫追跡及び管理システムのブロック図を示している。図1に示している一般的な在庫追跡及び管理システム内の構成要素、並びに在庫データの妥当性を調べ、在庫追跡データベース114内のエラーを自動的に検出するエラー検出モジュール302に加えて、このシステムは、エラー検出モジュール302からエラー検出結果を受け取って検出エラーを訂正するエラー訂正モジュール1702を更に含む。エラー訂正モジュール1702の詳細内容に対しては、図18から図23に関連して後で説明する。エラー訂正処理では手動介入は必要ではないが、エラー訂正モジュール1702は、オペレータが望む場合には、オペレータがエラー訂正処理に手動で介入することを可能にすることができる。
【0090】
図18は、エラー訂正モジュール1702によって実行されるエラー訂正処理の一実施形態を示す流れ図である。図18では、最初に段階1802において、エラー訂正処理は、エラー検出モジュール302から新規エラーが報告されたか否かを検査する。図6を用いて上述のように、エラー検出モジュール302は、段階606においてデータ矛盾を検査してエラーを検出し、段階606の出力は、データ矛盾/エラーが検出されたか否かを示す少なくとも1つの変数(例えば、error_detected_flag)を含む。例えば、処理は、段階606において、ブール変数、例えば、error_detected_flagをエラーが検出された場合に1に設定するか又はいかなるエラーも検出されなかった場合に0に設定する。段階610において、エラー検出モジュールは、この変数を「不可視」コンテナに関するあらゆる新規作成データ記録、「虚影」コンテナに関するあらゆる訂正データ記録、並びに段階602において受け取った新規データ(いずれかのエラーが検出された場合のエラーの原因である)と共に出力することによってエラーを報告する。従って、エラーの検出を示す変数(例えば、error_detected_flag)の値を調べることにより、エラー訂正処理は、エラー検出モジュール302によっていずれかのエラーが報告されたか否かを判断することができる。
【0091】
報告されたいかなる新規エラーも存在しない場合には、エラー訂正処理は終了し、段階1802において次の処理サイクルが再開して、新規エラーが報告されたか否かを再度検査するまで待機する。報告されたエラーが存在する場合は(すなわち、エラー検出モジュールがエラーを検出する)、エラー訂正処理は段階1804に続き、エラー検出モジュール302からの対応するエラー検出結果を読み取る。段階610で上述したように、関連エラー検出結果は、「不可視」コンテナに関する新規作成データ記録、「虚影」コンテナに関するデータ記録、並びに段階602において受け取られた新規データを含む。
【0092】
その後に、段階1806において、エラー訂正処理は、段階1808におけるエラー候補の検索に使用されることになる検索基準を判断する。一般的にエラーは、コンテナポジションの推定(時に取り扱い機器のポジションを推定することによる)における不正確性に起因してもたらされ、従って、一般的に、検索基準は、エラー検出結果に関連するコンテナセルロケーションを取り囲むコンテナセルロケーションを含む。例えば、エラー検出モジュール302からのエラー検出結果が、コンテナセルロケーション(列111、間口24、枠B、段4)において在庫追跡データベース114に対して不可視のコンテナを含む場合には、検索基準は、直近のコンテナセルロケーション(列111、間口24、枠A、段4)、(列111、間口24、枠C、段4)、(列111、間口23、枠B、段4)、(列111、間口23、枠B、段4)、(列111、間口25、枠B、段4)、及び(列111、間口24、枠B、段3)を含むことができる。検索基準は、測位システムの精度に基づいて、(列111、間口22、枠B、段4)のような更に離れたコンテナセルロケーションまで拡張することができる。高精度の高さ測定を可能にするために付加的な高さセンサが使用される場合には、検索基準は、エラー検出結果内のセルロケーションと同じ段上に存在するコンテナセルロケーションのみを含むとすることができる。
【0093】
段階1808において、エラー訂正処理は、段階1806で判断された検索基準を用いて在庫追跡データベース114に照会し、次に、照会結果からエラー候補を判断する。一実施形態では、エラー候補は、以前に検出されたエラー又はエラーデータ記録しか含まず、段階1808の目的は、検索基準内に指定されたコンテナセルロケーションにいずれかの「不可視」コンテナ又は「虚影」コンテナが存在するか否かを明らかにすることである(例えば、照会結果内のコンテナ属性[例えば、「コンテナタイプ」フィールド]を調べることにより)。エラー検出モジュール302が、データエラーの検出時に在庫追跡データベース114内に表を作成して、これらの表内にエラーデータ記録を記録する(例えば、図6の段階612において)場合には、検索基準内に指定されたコンテナセルロケーションに(以前に検出された)エラーデータ記録が存在するか否かを明らかにするために、これらの表に対して照会を実施することができる。この実施形態の例に対して、図19を用いて後で説明する。別の実施形態では、エラー候補は、通常のデータ記録も含み、図20から図23と併せて例を以下に説明する。
【0094】
その後に、段階1810において、エラー訂正処理は、照会がいずれかのエラー候補をもたらすか否かを調べる。いかなるエラー候補も見つからなかった場合には、エラー訂正処理は段階1820に続き、訂正例外処理を実行する。この場合、訂正例外処理は、例外フラグを例外がエラー候補の不在に起因することを示す値に設定する。次に、段階1824では、この例外フラグを検出エラーに対応するデータ記録に追加することができる。代替的に、検出エラー及び例外フラグを記録するエラー訂正ログファイルを作成することができる。次に、在庫追跡データベース114が、適宜更新されることになる。一部の他の実施形態では、段階1810においていかなるエラー候補も見つからなかったと判断された場合には、エラー訂正処理は段階1806に戻ることができ、例えば、検出エラーに対応するコンテナセルロケーションから更に離れたコンテナセルロケーションを含めることによって検索基準を拡張し、段階1808において別の検索を実施する。エラー訂正処理は、(a)エラー候補が見つかるか、又は(b)所定の条件が満たされる(例えば、検索範囲に対する閾値に達する)まで段階1806から1810の間で反復することができる。エラー訂正処理は、(a)の場合は段階1812に続き、(b)の場合には、1820に続き、上述の例外処理を実行する。
【0095】
照会が1つ又はそれよりも多くのエラー候補をもたらした場合には、エラー訂正処理は、段階1810から段階1812に続き、各エラー候補を評価し、更にそれが現在検出されているエラーを補正するのに使用することができるマッチである可能性を評価する。評価は、各候補に対して信頼性/矛盾指標を計算する段階を含むことができる。エラー検出結果内の各エラーデータ記録に対して、エラー訂正処理は、データ記録自体の信頼性レベル、エラー候補の信頼性レベル、データ記録のポジションからエラー候補のコンテナセルロケーションまでの距離、及びエラー候補のロケーションからデータ記録のコンテナセルロケーションまでの距離に基づいて、データ記録に対応するエラー候補の信頼性指標を計算する。一実施形態では、信頼性指標は、Conferror candidate及びConfdata recordが、それぞれエラー候補の信頼性レベル及びデータ記録(エラー検出結果内の)の信頼性レベルであり、kが上述の2つの距離に基づく重み係数である時に、k×Conferror candidate×Confdata recordとして計算される。例えば、11がデータ記録のポジションからエラー候補のコンテナセルロケーションの中心までの距離であり、12がエラー候補のロケーションからデータ記録のコンテナセルロケーションの中心までの距離であり、Lが正規化を目的とする所定の数値である時に、k=L/(l1×l2)である。例えば、Lは、コンテナ幅1つ分の二乗として定めることができる。従って、これらの2つの距離が短い程、重み係数kは大きく、信頼性指標は高い。
【0096】
その後に、段階1814において、エラー検出結果内の各データ記録に対して、その対応するエラー候補の計算信頼性指標が分類され、最も高い信頼性指標(又は最も小さい矛盾指標)に対応するエラー候補が、このデータ記録に対する潜在的マッチとして選択される。エラー検出結果内のデータ記録のうちのいずれかに対して、最も高い信頼性指標をもたらすエラー候補の個数が1つよりも多い場合には、1つのデータ記録に対して複数の潜在的マッチが見つかり、エラー訂正処理は、これらの潜在的マッチのうちのどれをエラー訂正のためのマッチとすることができるかの判断を行うことができない。この場合、エラー訂正処理は、段階1816においてマッチを未確立と見なし、段階1820における訂正例外処理に進む。それに応じて、訂正例外処理は、例外フラグを複数の潜在的マッチが見つかったことを示す値に設定する。次に、エラー訂正処理は段階1824に進み、例外フラグでデータエラー記録を更新し、エラー訂正ログを更新する。
【0097】
段階1816を参照し直すと、エラー検出結果内のデータ記録の各々に対して1つの潜在的マッチしか見つからなかった場合には、エラー訂正処理は段階1818に続き、各データ記録に対して対応する最も高い信頼性指標が十分に高いか否かを一般的にこの指標を所定の閾値と比較することによって判断する。エラー検出結果内のデータ記録のいずれかにおいて、最も高い信頼性指標が依然として十分に高く(すなわち、所定の閾値よりも大きく)なかった場合には、エラー訂正処理は段階1820に移り、例外フラグを潜在的マッチが、十分に高い信頼性指標を提図示しないことを示す値に設定する。次に、エラー訂正処理は段階1824に進み、エラーデータ記録を例外フラグで更新し、エラー訂正ログを更新する。代替的に、エラー訂正処理は、訂正例外処理に向けて段階1820に直接移る代わりに、段階1806に戻ることができ、検索基準を拡張して段階1806から段階1818の反復を始める。エラー訂正処理は、(a)最も高い信頼性指標が十分に高いか又は(b)所定の条件が満たされる(例えば、検索範囲に対する閾値に達する)までこの反復を繰り返すことができる。(a)の場合には、エラー訂正処理は段階1822に続き、(b)の場合には、エラー訂正処理は段階1820に続き、上述の訂正例外処理を実行する。
【0098】
エラー検出結果内のデータ記録の全てに対して最も高い信頼性指標が十分に高い場合には、データ記録の各々に対する潜在的マッチは、現在検出されているエラーを訂正するための対応するデータ記録のマッチと見なされる。次に、エラー訂正処理は段階1822に続き、現在検出されているエラーのデータ記録の各々をその対応するマッチのデータ記録と融合することによって実際の訂正を実施する。上述の実施形態では、エラーを有するデータ記録(すなわち、「不可視」コンテナ又は「虚影」コンテナを含むデータ記録)のみをエラー候補とすることができ、従って、各対(データ記録とそのマッチとの)は、1つの「不可視」コンテナと1つの「虚影」コンテナとを含み、訂正は、「不可視」コンテナを「虚影」コンテナと融合する段階を含む。エラー訂正処理は、「不可視」コンテナをコピーすることによって複製データ記録を作成し、次に、この複製データ記録内のコンテナ情報及びコンテナセルロケーションを「虚影」コンテナのものに変更する。更に、エラー訂正処理は、複製データ記録が「虚影」コンテナではなく「正常」コンテナであることを示すために、複製データ記録のコンテナの「コンテナタイプ」属性を修正し、信頼性レベルを段階1814で識別した最も高い信頼性指標として更新する。次に、修正済み複製データ記録は訂正済みデータ記録になり、エラー訂正処理は、「不可視」コンテナ及び「虚影」コンテナに対応する2つのデータ記録を無効又は失効済みとしてマーク付けする。
【0099】
段階1824では、エラー訂正処理は、在庫追跡データベース114を訂正済みデータ記録で更新し、検出エラーが訂正されたことを反映するために、成功した訂正をエラー検出ログとエラー訂正ログの両方の内部に記録する。
【0100】
図19A〜図19Dは、図18のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供している。図19Aは、時刻t1におけるコンテナ降荷作業を示している。時刻t1の前には、在庫追跡データベースは、コンテナA1、A2、及びA3が、列111、間口24、枠Aの段1から段3をそれぞれ占有し、コンテナB1、B2、及びB3が、列111、間口24、枠Bの段1から段3をそれぞれ占有することを示す記録を有する。説明目的で、コンテナA1におけるようにコンテナと、ロケーションA1におけるようにコンテナセルロケーションの両方を説明するのにA1のようなラベル付けを使用する。時刻t1において、在庫追跡システムは、コンテナA4がコンテナA3のすぐ上のロケーションA4(列111、間口24、枠A、段4)に降荷されたことを検出する。この例でHE(取り扱い機器)が接近可能なロケーションで作業中である場合には、エラー検出処理は、図6、図7、及び図12に示している対応する段階を提供し、降荷ロケーション(ロケーションA4)が空中ではなく、降荷作業の前に占有されていなかったので、いかなるエラーも発生しなかったと判断する。それに応じて、エラー訂正処理は、段階1802においていかなるエラーも報告されなかったと判断し、直ちに抜けて次の処理サイクルに向けて待機する。
【0101】
その後に、時刻t2において、在庫追跡システムは、図19Bに示しているように、HEがロケーションB4(列111、間口24、枠B、段4)からコンテナを集荷したことを検出する。しかし、エラー検出処理は、図9の段階902でロケーションB4において集荷することができた、在庫追跡データベース114内に列記されたいかなるコンテナも存在しないことを識別する。集荷ロケーションの下の全てのコンテナセルロケーションを占有するコンテナ(B1、B2、及びB3)が存在するので、エラー検出処理は、段階904において集荷ロケーションが空であることを識別する。それに応じて、エラー検出処理は、段階906において、ロケーションB4にコンテナInv_B4を作成し、このコンテナが以前に在庫追跡データベース114に対して不可視であったことを示すために、このコンテナに属性(例えば、「不可視」コンテナ)を割り当て(例えば、「コンテナタイプ」フィールドを「不可視コンテナ」に設定することにより)、コンテナを集荷作業に関連付ける。
【0102】
同じく段階906において、エラー検出処理は、コンテナInv_B4を「不可視」コンテナと分類するのに十分に高い信頼性レベルが存在し、すなわち、在庫追跡データベース114は、対応するデータ記録を持たないにも関わらず、コンテナInv_B4がロケーションB4に存在することの信頼性レベルが存在すると判断する。〔0043〕で上述したように、この信頼性レベルConf(Inv_B4)は、通常は新規在庫データ内のポジションデータの信頼性の関数として計算される。最も単純な実施形態では、信頼性レベルは、ポジションデータの信頼性として設定されるか、又は計算は、コンテナInv_B4の集荷イベントの信頼性レベルを更に組み込むことができる。この例では、「不可視」コンテナとすべきコンテナB4に関する信頼性レベルであるConf(Inv_B4)が80%である(最低信頼性レベルが0であり、最高信頼性レベルが1である場合)と仮定する。次に、エラー検出処理は、段階908においてエラーをエラー訂正モジュール302に報告する。
【0103】
エラーが報告されたので、エラー訂正処理は、段階1802から段階1804に続き、この場合、コンテナInv_B4が「不可視」コンテナであることを示す新規作成データ記録と、集荷作業(コンテナInv_B4の作成をもたらす)の新規データとを含むエラー検出結果を受け取る。段階1806では、エラー検出結果に関連するコンテナセルロケーションであるロケーションB4を取り囲むコンテナセルロケーションを含めるように検索基準を判断することができる。一実施形態では、段階1808における検索の目的は、検索基準内で指定されたコンテナセルロケーション内に以前に識別されたエラーデータ記録(例えば、「不可視」コンテナ及び「虚影」コンテナを有する記録)を見つけることである。この例を単純にするために、近い枠及び間口内にいかなるコンテナも存在しなく、すなわち、列111内では間口24の枠A及び枠Bしか占有されていないと仮定する。周囲のコンテナセルロケーションにはいかなるエラーデータ記録も検出されていないので、いかなるエラー候補も見つからないことになり、エラー訂正処理は、例外処理に向けて段階1810から段階1820に続く。段階1820において、例外処理は、いかなるエラー候補も見つからなかったことを示す例外フラグをマーク付けし、段階1824において、エラー検出処理は、「不可視」コンテナB4に対応するデータ記録にこの例外フラグを追加し、及び/又は検出エラー及び例外フラグをエラー訂正ログファイル内に記録し、その後に、在庫追跡データベース114を適宜更新する。
【0104】
その後に、時刻t3において、在庫追跡システムは、ロケーションA3にあるコンテナA3が集荷されたばかりであることを検出する。ここでもまた、エラー検出処理は、図6、図7、及び図9の段階を通じてこの集荷作業を在庫追跡データベース114内に既存のデータ記録と比較する。在庫追跡データベース114は、コンテナA4が集荷ロケーション(ロケーションA3)の上のロケーションA4を占有することを示すので、段階910において、エラー検出処理は、集荷ロケーション(ロケーションA3)が、最初にコンテナA4を移動しないと接近不能なロケーションであったはずであると判断し、エラーが発生したことを示している。相応に段階912において、エラー検出処理は、集荷ロケーション(ロケーションA3)の上には1つの占有済みコンテナセルロケーション(すなわち、ロケーションA4)しか存在しないことを識別し、段階914において、コンテナA4に対応するデータ記録を修正し(例えば、「コンテナタイプ」フィールドの値を「虚影コンテナ」に変更することにより)、コンテナA4が、在庫追跡データベース114内にしか存在しない(すなわち、在庫追跡データベース内の虚影である)ことを示す。
【0105】
同じく段階914において、エラー検出処理は、コンテナA4が「虚影」コンテナであることの信頼性レベルを計算する。一実施形態では、Conf(A4)が、コンテナA4がロケーションA4に位置することの信頼性レベルである時に、信頼性レベルConf(Ghost_A4)は、(1−Conf(A4))に等しい。Conf(A4)は、時刻t1に測位システムからのポジションデータの信頼性レベル、並びに図19Aに示しているコンテナA4の降荷作業の信頼性レベルに基づいて識別されたものである。別の実施形態では、Conf(Ghost_A4)の特定は、Conf(Ghost_A4)=f(Conf(A4),Confpickup(A3))のようにコンテナA3の集荷作業の信頼性を更に組み込んでいる。例えば、コンテナA4が「虚影」ではないということは、(1)ロケーションA4におけるコンテナA4の降荷作業が真でなければならず、かつ(2)ロケーションA3におけるコンテナA3の集荷作業が偽でなければならないことを必要とするので、信頼性レベルConf(A4は虚影ではない)は、次式のように計算される。
Conf(A4は虚影ではない)=(Conf(A4)×(1−Confpickup(A3))
従って、次式が成り立つ。
Conf(Ghost_A4)=1−Conf(A4は虚影ではない)=1−Conf(A4)×(1−Confpickup(A3))
この例では、Conf(Ghost_A4)が70%であると仮定する。次に、エラー検出処理は、段階915においてエラーをエラー訂正モジュールに更に報告する。
【0106】
エラーが報告されたので、エラー訂正処理は、段階1802から段階1804に続き、この場合、コンテナA4がロケーションA4における「虚影」コンテナであることを示す新規作成データ記録を含むエラー検出結果を受け取る。段階1806では、ロケーションA4を取り囲むコンテナセルロケーションを含めるように検索基準を判断することができる。一実施形態では、段階1808における検索の目的は、検索基準内に指定されたコンテナセルロケーションで以前に識別されたエラーデータ記録(例えば、「不可視」コンテナ及び「虚影」コンテナを有する記録)を見つけることである。時刻t2(時刻t3よりも早い)においてコンテナInv_B4が「不可視」コンテナとして検出されたので、検索は、ロケーションB4に「不可視」コンテナInv_B4を示す1つのエラー候補をもたらすことになる。
【0107】
段階1812では、エラー候補(コンテナInv_B4)に関する信頼性指標をk×Conf(Inv_B4)×Conf(Ghost_A4)として計算することができ、ここで、kは、図18を用いて上述した重み付け関数である。この例は、kが1.5であるように計算されることを仮定し、従って、信頼性指標は1.5×80%×70%=84%である。
【0108】
1つのエラー候補だけが見つかったので、段階1812で計算されたそれに対応する信頼性指標は、段階1814において最も高い信頼性指標として取り扱われる。それに応じて、エラー訂正処理は、段階1816に進み、次に、1818に進む。この例では、最も高い信頼性指標が所定の閾値(例えば、0.6)よりも高いと仮定し、従って、エラー訂正処理は段階1822に続き、訂正を実施する。段階1822において、エラー訂正処理は、複製データ記録内のコンテナ情報及びコンテナセルロケーションをコンテナGhost_A4のもの及びロケーションA4にそれぞれ変更することにより、時刻t2におけるコンテナInv_B4の集荷作業に関する新しい修正済み複製データ記録を作成する。これを時刻t2においてロケーションB4におけるコンテナInv_B4ではなく実際にはロケーションA4におけるコンテナA4に発生した集荷作業を示す図19Dに例示している。従って、修正済み複製データ記録は、時刻t2における集荷作業が実際にはロケーションA4にあるコンテナA4に発生したことを示す正しいデータ記録になる。次に、エラー訂正処理は、コンテナInv_B4の集荷とコンテナGhost_A4の両方に対応するエラーデータ記録を無効とマーク付けする。段階1824では、正しいデータ記録及び修正済みデータ記録が在庫追跡データベース114に更新される。正しいデータ記録は、時刻t2においてコンテナA4が集荷されたことを示す新しい修正済み複製データ記録であり、修正済みデータ記録は、コンテナGhost_A4とコンテナInv_B4の両方が無効であることを示す無効なエラーデータ記録である。従って、t1におけるコンテナA4の降荷に対応するデータ記録及びt3におけるコンテナA3の集荷に対応するデータ記録は変更されないままに留まる、すなわち、在庫追跡データベース114内でエラーを伴わずに妥当のままに留まる。
【0109】
図20は、エラー訂正モジュール1702によって実行されるエラー訂正処理の別の実施形態を示す流れ図である。図20の実施形態は、エラー候補が、以前に検出されたエラー又はエラーデータ記録のみを含む図18に関連して説明した実施形態に基づいている。図20の実施形態は、エラー候補を新規収集の通常データ記録(すなわち、「不可視」コンテナ又は「虚影」コンテナというエラーデータ記録とは反対に、以前に検出されたエラーを含まないデータ記録)も含むように拡張する。更に、この実施形態は、より全体的な例外処理も含む。
【0110】
図20では、最初に段階2002において、エラー訂正処理は、エラー検出モジュールから新規エラーが報告されたか否かを検査する。いかなる新規エラーも存在しない場合には、エラー訂正処理は終了し、段階2002で次の処理サイクルが再度始まるのを待つ。エラー検出モジュール302によって新規エラーが報告された場合には、エラー訂正処理は、エラー検出モジュール302からエラー検出結果を読み取る。段階610で上述したように、エラー検出結果は、「不可視」コンテナに関する新規作成データ記録、虚影コンテナに関する修正済みデータ記録、並びに段階602で受け取られた新規データ(エラーの検出をもたらす)を含む。説明の目的で、新規データを第1のデータ記録とも呼び、エラー検出モジュールによって以前に作成又は修正された他のデータ記録を第2のデータ記録と呼ぶ。従って、エラー訂正処理は、段階2004において第1のデータ記録と第2のデータ記録の組とを取得する。
【0111】
例えば、第1のデータ記録及び第2のデータ記録を説明するために、図19Bに示している場合を考えると、第1のデータ記録はロケーションB4からのコンテナの集荷であり、第2のデータ記録は、不可視コンテナであるコンテナInv_B4が、集荷の前にロケーションB4に存在したことを示すようにエラー検出モジュールによって作成されたものである。図19Cに示している場合を考えると、第1のデータ記録は、ロケーションA3からのコンテナA3の集荷であり、第2のデータ記録は、コンテナA4が「虚影」コンテナであることを示す修正済みデータ記録(すなわち、エラー検出モジュールによって修正された)である。図19Cの時刻t3においてコンテナA3ではなくコンテナA2が集荷された場合には、1つがコンテナA3を「虚影」コンテナとして示し、もう1つがコンテナA4を「虚影」コンテナとして示す2つの第2のデータ記録が存在することになる。
【0112】
図20に関連して説明する実施形態では、第1のデータ記録(すなわち、段階602で受け取られる新規データ)は、それ自体が間違いである可能性があることを仮定する。従って、エラー検出モジュールによって検出されるエラーは、第1のデータ記録と第2のデータ記録の間に矛盾(すなわち、不整合)が存在することを示している。エラーを訂正するためには、エラー訂正処理は、最初に2つ(第1のデータ記録と第2のデータ記録の組)のうちのいずれがエラーによって損なわれており、訂正する必要があるかを識別する必要がある。
【0113】
ここで段階2006を参照すると、次に、エラー訂正処理は、段階2008においてエラー候補の検索に使用されることになる第1のデータ記録に対応する第1の検索基準と、1つの第2の検索基準が第2のデータ記録の各々に対応する第2の検索基準の組とを含む検索基準を設定する。各検索基準は、コンテナセルロケーション、継続時間、作業回数などうちの少なくとも1つを指定する。例えば、検索基準は、ある一定の範囲の隣接のコンテナセルロケーション、エラーが検出された時刻又はその付近の期間内に発生した作業、エラーに関連するコンテナIDに近いコンテナID、エラーに関連するコンテナ属性と類似のコンテナ属性などを含むことができる。隣接のコンテナセルロケーションは、範囲がコンテナ1つ分のサイズに設定された場合は直近のコンテナセルロケーションのみを含むことができ、又は範囲がコンテナ2つ分のサイズに設定された場合はいずれかの方向にセルロケーション2つ分の範囲にある全てのコンテナセルロケーションを含むことができる。一実施形態では、隣接のコンテナセルロケーションの範囲は、エラーに関連するポジションデータの信頼性レベルに基づいて判断され、一般的に信頼性レベルが高い程、範囲は短い。別の例として、検出されたエラーが時刻tnにおいて発生した場合には、検索基準は、エラー訂正処理が、時刻(tn−T)から時刻tnまでの期間の間に発生した作業、又は隣接のコンテナセルロケーションに発生した直近のN回の作業を検索することを必要とする場合がある。
【0114】
その後に、段階2008において、エラー訂正処理は、段階2006で判断された検索基準を用いて在庫追跡データベース114に照会し、在庫追跡データベース114からの照会結果内の全てのデータ記録を読み取る。第1の検索基準に対応する照会結果を第1の照会結果と呼び、第2の検索基準の各々に対応する照会結果を第2の照会結果と呼ぶ。次に、エラー訂正処理は段階2010に続き、いずれかの所定の例外規則が満たされるか否かを調べる。例外規則の例は、「不十分なデータ」例外、「適正結果の不在」例外、「制限区域」例外、及び類似の例外を含むことができる。「不十分なデータ」例外は、訂正に対して十分なデータを含まない照会結果を示し、(a)第1のデータ記録が集荷作業に関連するが、照会結果が、集荷ロケーションを取り囲む全てのセルロケーションが非占有であることを示す、(b)第1のデータ記録が降荷作業(又は移動違反)に関連するが、照会結果が、降荷ロケーション(又は移動ロケーション)を取り囲む全てのセルロケーションが占有されていることを示す、(c)第2のデータ記録が「不可視」コンテナを含むが、それに対応する照会結果が、この「不可視」コンテナを取り囲む全てのセルロケーションが非占有であることを示す、(d)第2のデータ記録が「虚影」コンテナを含むが、それに対応する照会結果が、この「虚影」コンテナを取り囲む全てのセルロケーションが占有されていることを示すという条件のうちのいずれかが満たされる場合に満たされる。「適正結果の不在」例外は、「虚影」コンテナ又は「不可視」コンテナのいずれもエラー候補の中に存在せず、全てのエラー候補が十分に高い信頼性レベルを有する場合に満たされる。「制限区域」例外は、所定の制限区域(一部の区域は、手動の検査又は訂正だけに制限される可能性がある)にあるコンテナセルロケーションをあらゆるエラー候補が占有する場合に満たされる。付加的な例外規則を段階2018、2020、及び2022を参照して後で説明する。
【0115】
訂正例外処理は、段階2024においてエラー検出結果内のデータ記録を訂正の例外が発生したことと共にその例外理由(すなわち、どの例外規則が満たされるか)を示すように修正する。訂正例外処理は、対応する情報をエラー訂正ログ及び/又はエラー検出ログに追加することができる。更に、訂正例外処理は、手動サポート機能が作動された場合に、オペレータからの手動サポートを組み込むことができる。そのような訂正例外処理に対しては、図24を参照して後で説明する。
【0116】
いかなる例外規則も満たされない場合には、エラー訂正処理は段階2012に続き、照会結果に基づいてエラー候補を判断する。一実施形態では、エラー候補は、エラー検出結果内の各データ記録に対して識別される。最初に、第1のエラー候補、すなわち、第1のデータ記録に対するエラー候補が、第1の照会結果に基づいて識別される。第1のデータ記録が、降荷作業又は移動イベントを示す場合には、第1のエラー候補は、周囲にある全ての非占有コンテナセルロケーション(第1のデータ記録と同じ段にある)を含み、第1のデータ記録が集荷作業を示す場合には、第1のエラー候補は、周囲にある全ての占有コンテナセルロケーション(第1のデータ記録と同じ段にある)を含む。次に、第2のデータ記録の各々に対する第2のエラー候補が識別される。第2のデータ記録が「不可視」コンテナに関連付けられた(すなわち、在庫追跡データベース114はあるロケーションにいかなるコンテナも示さないが、第1のデータ記録は、そのロケーションにコンテナがあるはずであることを示す)場合には、それに対応する第2のエラー候補は、周囲にある占有コンテナセルロケーション(「不可視」コンテナと同じ段にある)を含む。言い換えれば、この「不可視」コンテナは、実際にはその現在のロケーションを占有する可能性があるが、在庫追跡データベースは、ポジションデータのエラーに起因してそれを隣接のコンテナセルロケーションに間違って「配置」したものである。第2のデータ記録が「虚影」コンテナに関連付けられた(すなわち、第2のデータ記録が、あるロケーションにコンテナを示すが、第1のデータ記録が、そのロケーションにはコンテナがあるはずがないことを示す)場合には、それに対応するエラー候補は、周囲にある非占有コンテナセルロケーション(「虚影」コンテナと同じ段にある)を含む。言い換えれば、恐らくこの「虚影」コンテナは、そのデータ記録内で指定されたその現在のロケーションではなく隣接のコンテナセルロケーションを占有するはずである。また、第2のデータ記録が、第1のデータ記録と同じコンテナセルロケーションを共有するが、第2のデータ記録がこのセルロケーションにあるコンテナを示し、それに対して第1のデータ記録が、このセルロケーションに異なるコンテナを示す場合もある。これらのデータ記録の相違点は、これらのデータ記録のコンテナID、並びに長さ、タイプ、形状などのようなコンテナ特性におけるとすることができる。例えば、第2のデータ記録は、ロケーションAにおいて短いコンテナを示すが、第1のデータ記録は、ロケーションAにおいて長いコンテナを示している。そのような場合には、第2のデータ記録に対するエラー候補は、第1のデータ記録内で指定されたものと同じコンテナID又はコンテナ特性を共有する占有コンテナを有する周囲の占有コンテナセルロケーションを含む。別の単純な実施形態では、エラー候補は、図18を用いて上述のように、「不可視」コンテナ又は「虚影」コンテナのいずれかを含むエラーデータ記録のみを含むことができる。
【0117】
段階2014において、エラー訂正処理は、各エラー候補に対して、その候補をエラー検出モジュール302から報告されたエラーの発生源とすることができる可能性がどの程度であるかを評価する所定の計算式に基づいて信頼性指標(又は矛盾指標)を計算する。段階2012で上述したように、一実施形態では、エラー候補は、エラー検出結果内の各データ記録に対して識別され、相応に第1のデータ記録に対するエラー候補に対してかつ第2のデータ記録に対するエラー候補に対しては、信頼性レベルは異なって計算される。この実施形態では、Conffirst dataが、第1のデータ記録の信頼性レベルであり、kが、第1のデータ記録内に記録されたポジションデータ(すなわち、positionfirst data)と、一般的にセルの中心のポジションによって表されるエラー候補のコンテナセルロケーション(locationcandidate)とに基づく重み係数である時に、第1のデータ記録に対するエラー候補の信頼性指標は、k×(1−Conffirst data)と設定される。従って、重み係数は、次式のようにpositionfirst dataとlocationcandidateとの関数である。
k=f(positionfirst data,locationcandidate)
例えば、重み係数kは、d1が、第1のデータ記録のセル中心(locationfirst data)とエラー候補のセル中心(locationcandidate)との間の距離であり、d2が、第1のデータ記録のロケーション(positionfirst data)とエラー候補のセル中心(locationcandidate)との間の距離である時に、(d1/2)/d2として定めることができる。
【0118】
図21は、重み係数を計算することができる方法を示す例を示している。この図は、同じ段にある3つのコンテナセルロケーションであるロケーションA、ロケーションB、及びロケーションC、並びに測位システムによって提供されたコンテナBの報告ロケーション(図にPBと印している)の上面図を示している。第1のデータ記録が、測位システムからのポジションPBに基づくロケーションBにおける作業を示し、エラー訂正処理が、ロケーションA及びロケーションCをそのエラー候補として識別すると仮定する。従って、ロケーションAというエラー候補に対する重み係数は(a1/2)/a2であり、ロケーションCというエラー候補に対する重み係数は(a3/2)/a4である。この特定の例では、ポジションPBはCのセル中心よりもAのセル中心の近くに、セル中心a1とa3の間の距離が同じであるとすると、エラー候補Aに対する重み係数は、エラー候補Cに対する重み係数よりも大きい。言い換えれば、重み係数は、エラー候補のセル中心へのポジションデータの近接性を示す尺度である。その結果、エラー候補Aに関する信頼性レベル(a1/2/a2)×(1−Conf(B))は、エラー候補Cに関する信頼性レベル(a3/2/a4)×(1−Conf(B))よりも大きい(この場合、Conf(B)は、この例におけるConffirst dataである)。
【0119】
同様に、Conferror candidateが、エラー候補の信頼性レベルであり、kが、第1のデータ記録に対するエラー候補の信頼性レベルを計算するのに使用されるものと類似の重み係数である時に、第2のデータ記録に対するエラー候補の信頼性指標は、k×(1−Conferror candidate)である。例えば、d1が、エラー候補のセル中心から「不可視」(又は「虚影」)コンテナのセル中心までの距離であり、d2が、エラー候補のロケーションから「不可視」(又は「虚影」)コンテナのセル中心までの距離である時に、k=(d1/2)/d2である。従って、エラー候補の信頼性が低い程、かつエラー候補のロケーションが、対応する第2のデータ記録(例えば、「不可視」コンテナ又は「虚影」コンテナのいずれかを含むデータ記録)のセルロケーションに近い程、このエラー候補が「不可視」コンテナのセルロケーションにあり、又は「虚影」コンテナがエラー候補によって指定されたロケーションにあるという可能性が高い。
【0120】
図20に戻ると、段階2016において、エラー訂正処理は、第1のデータ記録及び第2のデータ記録に対する潜在的マッチを識別し、第1のデータ記録又は第2のデータ記録のいずれを訂正する必要があるかに関して判断を行う。エラー訂正処理は、この判断を以下の部分段階によって達成する。(1)第1のデータ記録の第1のエラー候補に対して、エラー訂正処理は、これらのエラー候補の信頼性指標を選別し、最も高い信頼性指標を第1の信頼性指標として選択し、それに対応する第1のエラー候補を第1のデータ記録に対する潜在的な(第1の)マッチとして識別する。(2)第2のエラー候補の各々に対して、エラー訂正処理は、その第2のエラー候補の信頼性指標を選別し、最も高い信頼性指標を有するエラー候補をその潜在的な(第2の)マッチとして選択する。エラー検出結果内に1つの第2のエラー候補しか存在しない場合には、その潜在的な(第2の)マッチの信頼性指標が、第2の信頼性指標と見なされる。エラー検出結果が複数の第2のエラー候補を含む場合には、所定の規則に基づいて潜在的な(第2の)マッチの信頼性指標を組み合わせることによって全体的な信頼性指標が識別され、次に、この全体的な信頼性指標は、第2の信頼性指標として機能する。所定の規則は、潜在的な(第2の)マッチの最も小さい信頼性指標、信頼性指標の平均値、又はその中間値を全体的な信頼性指標として選択することができる。全体的な信頼性指標は、潜在的な(第2の)マッチの信頼性指標の関数とすることができる。(3)次に、エラー訂正処理は、第1の信頼性指標と第2の信頼性指標とを比較して、第1のデータ記録又は第2のデータ記録の組のいずれを訂正する必要があるかを判断する。例えば、第1の信頼性指標が高い場合には、エラー訂正処理は、第1のデータ記録が間違っており、その対応する潜在的な(第1の)マッチを用いて訂正すべきであると結論付ける。他の場合には、エラー訂正処理は、第2のデータ記録を訂正する必要があると結論付ける。(4)次に、エラー訂正のためのマッチが、この判断に基づいて識別され、判断が第1のデータ記録を訂正するものであった場合には、潜在的な第1のマッチが識別された第1のマッチになり、他の場合には、潜在的な第2のマッチが第2のマッチとして識別される。
【0121】
段階2018において、エラー訂正処理は、識別されたマッチによって得られる高い方の信頼性レベルが十分に高いか、例えば、事前設定閾値よりも高いか否かを調べる。この信頼性レベルが十分に高くない場合には、エラー訂正処理は、検索が、エラー候補のより大きい組をもたらすことになるように、検索基準を拡張することができ、従って、エラー訂正処理は段階2020に続き、検索基準を拡張することができるか否か(例えば、検索基準が、事前設定された最大ロケーション範囲、最大継続時間、又はID範囲を既に満たしているか否か、又は超過しているか否か)を調べる。検索基準を拡張することができる場合には、エラー訂正処理は、段階2006に続き、検索基準を更新又は拡張して、段階2008から段階2018までの次の反復を続ける。検索基準を拡張することができない場合には、エラー訂正処理は、段階2024に続き、信頼性レベルが十分に高くないという例外理由によって訂正例外処理を実行する。
【0122】
段階2018において、最も高い信頼性レベル(段階2016で識別されたもの)が所定の閾値よりも高い場合には、エラー訂正処理は段階2022に続き、1つのデータ記録に対して識別された複数のマッチが存在するか否かを調べる。(すなわち、段階2022は、第1のデータ記録を訂正する必要がある場合に複数の第1のマッチが存在するか否か、又は第2のデータ記録を訂正する必要がある場合に第2のデータ記録のうちのいずれかに対して複数の第2のマッチが存在するか否かを調べる。)複数のマッチが存在する場合には、マッチに基づくエラー訂正は未確立であり、エラー訂正処理は段階2024に続き、未確立のエラー訂正という例外理由によって訂正例外処理を実行する。一部の実施形態では、エラー訂正に向けて複数のマッチから1つのマッチを選択するのにアービトレーションを使用することができると考えられ、この場合、エラー訂正処理は段階2024を省略し、段階2026に続く。
【0123】
段階2026において、エラー訂正処理は、エラー訂正に向けてデータ記録を準備し、この目的は、識別されたマッチに基づいて正しいデータ記録を生成し、間違ったデータ記録を失効させるか、又は削除することである。詳細な処理は、判断が、第1のデータ記録を訂正することであるか又は第2のデータ記録を訂正することであるかに依存する。
【0124】
段階2016で行われた判断が、第1のデータ記録を訂正することであった場合には、段階2026におけるエラー訂正処理は、第1のマッチに基づいて第1のデータを訂正し、エラー検出結果内に関わる「不可視」コンテナをこれらを失効済みとするか又は削除することによって無効にし、「虚影」コンテナの「コンテナタイプ」属性を「正常」コンテナに戻す。例えば、第1のデータ記録が、ロケーションBにおけるコンテナBの集荷作業を示し、ロケーションAにおけるコンテナAのエラー候補がマッチとして識別された場合には、エラー訂正処理は、第1のデータ記録(コンテナIDをコンテナBとして、セルロケーションをロケーションBとして有する)を複製データ記録にコピーし、次に、複製データ記録内のコンテナID及びコンテナセルロケーションをそれぞれコンテナB及びロケーションBからコンテナA及びロケーションAに変更する。複製データ記録内の信頼性レベルも信頼性指標で更新される。これらの変更により、この時点で複製データ記録は、集荷作業の訂正済みデータ記録である。その後に、エラー訂正処理は、元の第1のデータ記録(ロケーションBにおけるコンテナBの集荷作業を表す)をエラーを有するとマーク付けし(例えば、「データ特性」フィールドを「エラー」に設定することにより)、それを無効にする(例えば、現時刻をタイムスタンプとして「ステータス」フィールド内の値を「既存」から「失効済み」に変更することにより)。他の実施形態では、エラー訂正処理は、複製データ記録を作成して元の第1のデータ記録を無効にすることなく第1のデータを直接修正することができる。第2のデータ記録内の全ての「不可視」コンテナに関して、エラー訂正処理は、これらのコンテナを失効済みとマーク付けするか又は在庫追跡データベースにこれらのコンテナを削除する指令を提出することにより、これらのコンテナを修正する。第2のデータ記録内の全ての「虚影」コンテナに関して、エラー訂正処理は、現時刻をタイムスタンプとしてこれらのコンテナの「コンテナタイプ」属性を「正常」に変更し戻す、又はエラー訂正処理は、これらのコンテナを最初に複製して変更を行うことができ、次に、元のものを失効済み又は無効とマーク付けする。他の実施形態では、これらの第2のデータ記録がエラー検出モジュールによって修正されなかった場合には、上述の修正を不要とすることができる。
【0125】
判断が、第2のデータ記録を訂正するものであった場合には、エラー訂正処理は、段階2026において第1のデータ記録に対していかなる変更も行わず、代替的に、第2のデータ記録の各々において、その対応する第2のマッチに基づいて訂正を行う。第2のデータ記録が「不可視」コンテナに関連付けられた場合には、判断は、マッチに関連付けられたコンテナが、この「不可視」コンテナに関連付けられたロケーションに存在するはずであることを意味する。この場合、エラー訂正処理は、最初にマッチのデータ記録をコピーすることによって複製データ記録を作成し、次に、複製データ記録内のロケーションを「不可視」コンテナに関連付けられたロケーションに変更し、信頼性レベルをそれに対応する信頼性指標に更新する。次に、この複製データ記録は、エラー訂正処理によって生成された訂正済みデータ記録になる。その後にエラー訂正処理は、現時刻をタイムスタンプとしてマッチのデータ記録、並びにエラー検出処理によって作成された「不可視」コンテナのデータ記録をエラー及び無効とマーク付けする。
【0126】
同様に、第2のデータ記録が「虚影」コンテナに関連付けられた場合には、判断は、「虚影」コンテナが、実際にはマッチに関連付けられたロケーションに配置されることを意味する。従って、エラー訂正処理は、最初に「虚影」コンテナのデータ記録をコピーすることによって複製データ記録を作成し、次に、複製データ記録内のロケーション及び信頼性指標をそれぞれマッチに関連付けられたロケーション及び信頼性指標に変更する。更に、エラー訂正処理は、複製データ記録内のコンテナ特性をその「コンテナタイプ」属性を「虚影」コンテナから「正常」コンテナに変更することによって修正する。これらの修正により、この時点で複製データ記録は訂正済みデータ記録になり、更にエラー訂正処理は、「虚影」コンテナに関連付けられた元のデータ記録をエラー及び無効とマーク付けする。エラー検出結果内に複数の「虚影」コンテナが存在する場合には、エラー訂正処理は、上述の処理を「虚影」コンテナの各々に対して繰り返す。
【0127】
段階2028において、エラー訂正処理は、マッチ内のコンテナ又はコンテナセルロケーションに発生したその後の作業に関連するデータ記録を含むマッチに関連付けられた記録を検索して更新する。背景にある理由は、マッチ内のエラーが、これらのその後の作業を通じて伝播した可能性があるからである。一部の実施形態では、第1のデータ記録(すなわち、段階602で受け取られた新規データ)は、エラー検出モジュール302に実時間で入力され、従って、段階2028における処理は、判断が第2のデータ記録を訂正するものであった場合にのみ必要になる(第1のデータ記録内のエラーは、その時点では依然として伝播する機会を持たないことになるからである)。ここでの説明は、エラー検出モジュール302に第1のデータ記録が実時間で入力されることを仮定している。他の実施形態では、第1のデータ記録は、第1のデータ記録内の作業が発生した時よりもかなり後にエラー検出モジュール302に入力された履歴データとすることができ、これらの場合、判断が、第1のデータ記録を訂正するものであった場合であっても上述の処理は必要であり、当業者は、ここでの説明をこれらの場合に適合するように比較的容易に拡張することができる。
【0128】
それに応じて、段階2028において、エラー訂正処理は、第2のデータ記録の各々に関連するデータ記録を検索して更新する。第2のデータ記録が「不可視」コンテナに関連付けられた場合には、そのマッチは訂正の前に占有されており、従って、エラー訂正処理は、そのマッチ内のセルロケーションにおける直近の降荷作業の時刻と、「不可視」コンテナ(第2のデータ記録内に定められたもの)のセルロケーションにおける直近の集荷作業の時刻とを比較する。降荷作業が集荷作業よりも前に発生していた場合(この降荷ロケーションが実際には「不可視」コンテナのロケーションであることを示す)には、エラー訂正処理は、「不可視」コンテナのセルロケーションおいて降荷作業の時刻の後に発生したあらゆる作業に関して在庫追跡データベース114に照会する。照会結果内の各データ記録に対して、エラー訂正処理は、コンテナ情報(例えば、コンテナのID及び特性)をマッチ内のコンテナのものに修正する。降荷作業が集荷作業よりも後であった場合(集荷作業が実際にはマッチ内のセルロケーションにおいて発生したことを示す)には、エラー訂正処理は、集荷作業の時刻の後の「不可視」コンテナが係わるあらゆる作業に関して在庫追跡データベース114に照会する。照会結果内の各データ記録に対して、エラー訂正処理は、コンテナ情報をマッチ内のコンテナのものに修正する。
【0129】
第2のデータ記録が「虚影」コンテナに関連付けられた場合には、そのマッチは、訂正の前には非占有であり、従って、エラー訂正処理は、マッチ内に指定されたセルロケーションにおいて、「虚影」コンテナのセルロケーションにおける直近の降荷作業の後に発生したあらゆる作業に関して在庫追跡データベース114に照会する。照会結果内の各データ記録に対して、エラー訂正処理は、「コンテナタイプ」属性を「虚影」コンテナのものに修正し、同時にコンテナを「正常」コンテナとして(「虚影」コンテナではなく)維持する。
【0130】
段階2030において、エラー訂正処理は、エラー訂正処理によって生成された訂正済みデータ記録及びエラー訂正処理によって失効されたデータ記録(例えば、「不可視」コンテナ又は「虚影」コンテナを含むもの)を含む修正済みデータ記録で在庫追跡データベース114を更新する。更に、エラー訂正処理は、エラー検出ログ及びエラー訂正ログのような関連履歴ファイル、並びに在庫追跡データベース114内の「不可視」コンテナ又は「虚影」コンテナの表を更新することができる。
【0131】
図20において説明したエラー訂正処理が如何に機能するかを示すために、図22A〜図22D及び図23A〜図23Fに例を提供する。図22A〜図22Dは、異なる時刻において実施された4つの作業を示している。時刻t1における最初の作業の前には図22Aに示しているコンテナセルロケーションを占有する7つのコンテナA1、A2、B1、B2、B3、C1、及びC2が既に存在している。時刻t1では、コンテナC3が、信頼性レベルConft1(C3)でロケーションC3(列111、間口24、枠C、段3)というコンテナセルロケーションに降荷され、この信頼性レベルは、測位システムからのポジションデータの信頼性レベル、又はポジションデータの信頼性レベルと降荷イベントの信頼性レベルの両方に基づく組合せ信頼性レベルとすることができる。それに応じて、在庫追跡システムは、この作業を表す新規データ記録を作成し、この新規データ記録は、少なくともコンテナC3のID及び属性、コンテナセルロケーション((列111、間口24、枠C、段3)にあるロケーションC3)、作業タイプ(すなわち、降荷作業)、信頼性レベルConft1(C3)、及びそれに対応する時刻t1を含むことになる。HEが接近不能なロケーションで作業していないと仮定すると、降荷ロケーションが降荷作業の前には占有されておらず、降荷ロケーションが空中ではない(コンテナC1及びその下のC2の存在に起因して)ので、エラー検出モジュールは、いかなるエラーも検出しない。従って、新規データ記録は、いかなる修正又は訂正もなしに在庫追跡データベース114に追加されており、それに応じて在庫追跡データベース114は、t1を失効時刻としてコンテナC3に関連する以前のデータ記録を失効済みとマーク付けして、コンテナC3に関連する以前のロケーション及び作業がこの時点では無効であることを示している。
【0132】
同様に、図22Bに示しているように、時刻t2においてConft2(B3)という信頼性レベルでコンテナB3が集荷され、対応する新規データ記録が作成されており、いかなるエラーも検出されておらず、それに応じて在庫追跡データベース114が更新されている。図22Cに示しているように、時刻t3においてConft3(A3)という信頼性レベルでコンテナA3がロケーションA3(列111、間口24、枠A、段3)において降荷されており、ここでもまた、いかなるエラーも検出されておらず、それに対応する新規データ記録が、在庫追跡データベースに追加されている。図22Dに示しているように、時刻t4では、Conft4(B4)という信頼性レベルでコンテナB4がロケーションB4(列111、間口24、枠B、段4)に降荷されている。それに応じて、この作業に対して新規データ記録が作成され、その調査に向けてエラー検出モジュールに報告されている。降荷ロケーションの直下のロケーションB3(列111、間口24、枠B、段3)にはいかなるコンテナも存在していなかったので、エラー検出処理は、段階1202において降荷ロケーションが空中であると判断し、段階1204及び1206を通じてロケーションB3にコンテナInv_B3という「不可視」コンテナを作成する。エラー検出処理は、この「不可視」コンテナに関する信頼性レベルも計算する。一実施形態では、この信頼性レベルは、「不可視」コンテナの識別をもたらす作業又はイベントの信頼性レベルとして設定され、従って、図22Dに示している場合には、コンテナInv_B3の信頼性レベルはConft4(B4)に設定される。エラー検出処理は、最初に段階1215においてエラーを報告し、次に、段階610においてこのエラーをコンテナInv_B3に関する新規作成データ記録、コンテナB4の降荷作業に関するデータ記録(段階602において受け取った新規データであり、「不可視」コンテナInv_B3の検出をもたらすデータでもある)、及び更新済みのエラー検出履歴又はログと共にエラー訂正モジュール1702及び在庫追跡データベース114に報告する。
【0133】
エラー検出モジュール302から段階2002にエラーが報告されると、エラー訂正処理は、段階2004において、ロケーションB3におけるコンテナInv_B3に関する新規作成データ記録を第1のデータ記録とし、ロケーションB4におけるコンテナB4の降荷作業に関するデータ記録を第2のデータ記録として含むエラー検出結果を受け取って読み取る。各データ記録は、少なくともコンテナセルロケーション、エラー又は作業の時刻(すなわち、t4)、及び信頼性レベル(すなわち、「不可視」コンテナInv_B3に関するConft4(Inv_B3)及びコンテナB4に関するConft4(B4))を含む。段階2006において、エラー訂正処理は、エラー候補を判断するのに使用されることになる検索基準を判断する。検索基準は、エラー検出結果に関連するコンテナセルロケーション(すなわち、この例ではロケーションB3及びロケーションB4)までの距離範囲をそれに対応する信頼性レベル又は他の確率尺度、すなわち、この例ではConft4(Inv_B3)及びConft4(B4)に基づいて指定することができる。検索基準は、t4がエラーに関連する時刻である時に、検索をコンテナセルロケーションにおいて時刻(t4−T)から(t4)までの時間窓内に発生した作業又はイベントに限定するために継続時間Tを指定することができる。代替的に、検索基準は、指定コンテナセルロケーションに発生した作業又はイベントの回数を指定することができる。この例では、検索基準が、距離範囲を同じ段における(高さ測定値の信頼性レベルが十分に高いと仮定して)コンテナ1つ分のサイズと指定し、作業又はイベントの回数も1回と指定すると仮定し、従って、第1のデータ記録に基づいて、第1の検索基準は、第1のデータ記録内のコンテナセルロケーション(ロケーションB4)の直近の段3におけるコンテナセルロケーションを指定し、第2のデータ記録に基づいて、第2の検索基準は、第2のデータ記録内のコンテナセルロケーション(ロケーションB3)の直近の段4におけるコンテナセルロケーションを含むと判断される。更に、両方の検索基準は、検索をこれらの近いコンテナセルロケーションの各々で発生した直近の作業又はイベントに限定する。
【0134】
段階2008において、エラー訂正処理は、段階2006で判断された検索基準を用いて在庫追跡データベース114に照会することによってエラー候補を判断する。この例を単純化するために、いかなるコンテナも、近い間口(すなわち、間口23及び間口22)内のコンテナセルロケーションを占有しておらず、また、いかなる作業も、これらのコンテナセルロケーションにおいて発生しなかったと仮定する。従って、照会は、t1におけるコンテナC3の降荷作業、t2におけるコンテナB3の集荷作業、及びt3におけるコンテナA3の降荷作業に対応する3つのデータ記録を戻す。段階2008において、エラー訂正処理は、各々が、それに対応するコンテナID及び属性、作業タイプ、タイムスタンプ、及び信頼性レベルを含む照会結果内の3つのデータ記録を読み取る。
【0135】
段階2010において、エラー訂正処理は、いずれかの例外規則が満たされているか否かを調べる。照会結果は、第1のデータ記録内の降荷ロケーションを取り囲む非占有のロケーションを示し、「不可視」コンテナInv_B3を取り囲む占有済みのロケーションを示すので、「不十分なデータの例外」は満たされない。この例では、3つのデータ記録は、十分に高い信頼性を持たず、列111間口24におけるコンテナセルロケーションが制限区域内にないと仮定し、従って、「制限区域」例外も、「適正結果の不在」例外も満たされない。その結果、エラー訂正処理は、段階2012に続き、エラー候補を判断する。
【0136】
段階2012において、エラー訂正処理は、第1のデータ記録及び第2のデータ記録に対するエラー候補を判断する。第1のデータ記録(コンテナB4の降荷作業を示す)に対するエラー候補は、測位システム104によって報告された降荷ロケーションが間違いである場合のコンテナB4の別の降荷ロケーションを表す。従って、第1のデータ記録に対する第1のエラー候補は、同じ段上の非占有コンテナセルロケーションを含むはずである。第1の検索基準に対応する照会結果は、ロケーションA4及びロケーションC4の両方が非占有であることを示すので、この場合、第1のエラー候補は、図23B及び図23Cに示しているロケーションA4及びロケーションC4を含む。同様に第2のデータ記録(「不可視」コンテナInv_B3に関連する)に対する第2のエラー候補は、同じ段における占有済みコンテナセルロケーションである、図23D及び図23Eに示しているロケーションA3及びロケーションC3を含む。要約すると、2つの第1のエラー候補と2つの第2のエラー候補とが見つかり、検出エラーは、(1)図23Bに示しているように、コンテナB4は、実際にはロケーションA4に降荷された、(2)図23Cに示しているように、コンテナB4は、実際にはロケーションC4に降荷された、(3)図23Dに示しているように、現時点でロケーションA3に存在するコンテナは実際にはロケーションB3に存在し、すなわち、コンテナA3が「不可視」コンテナInv_B3である、(4)現時点でロケーションC3に存在するコンテナは実際にはロケーションB3に存在し、すなわち、コンテナC3が「不可視」コンテナInv_B3であるということのうちのいずれか1つによって解決することができる。
【0137】
その後に、段階2014では、4つのエラー候補の各々に対して信頼性指標が計算される。図18を用いた説明により、一実施形態では、Conffirst dataが第1のデータ記録の信頼性レベル(この例ではConft4(B4))であり、k=f(positionfirst data,locationcandidate)が重み係数である時に、第1のデータ記録(この例ではコンテナB4の降荷作業)に対する候補の信頼性指標は、k×(1−Conffirst data)と設定される。図22Fは、測位システムによって提供されたコンテナセルロケーションA4、B4、及びB3、並びにコンテナB4のロケーション(この図ではPB4と印している)の上面図を示している。計算式k=(d1/2)/d2を使用すると、エラー候補A4に対する重み係数は(a1/2)/a2であり、エラー候補C4に対する重み係数は(a3/2)/a4である。この特定の例では、ポジションPB4はC4のセル中心よりもA4のセル中心の近くに、セル中心の間の距離a1とa3とが同じであることすると、エラー候補A4に対する重み係数は、エラー候補C4に対する重み係数よりも大きい。その結果、エラー候補A4に対する信頼性レベル(a1/2/a2)×(1−Conft4(B4))は、エラー候補C4に対する信頼性レベル(a3/2/a4)×(1−Conft4(B4))よりも高い。
【0138】
同様に、Conferror candidateがエラー候補の信頼性レベルであり、kが重み係数である時に、「不可視」コンテナに対するエラー候補の信頼性指標は、k×(1−Conferror candidate)である。Conferror candidateは、2つのエラー候補それぞれついてConft3(A3)及びConft1(C3)である。
【0139】
段階2016において、エラー訂正処理は、信頼性指標を選別し、第1のデータ記録に対する第1のマッチ、及び第2のデータ記録に対する第2のマッチを判断する。第1のデータ記録、すなわち、コンテナB4の降荷作業に関連するデータ記録に対して、エラー訂正処理は、エラー候補A4に関する信頼性指標とエラー候補C4に関する信頼性指標とを比較し、高い方のものを第1の信頼性指標として選択する。「不可視」コンテナが1つしか存在しない(コンテナInv_B3)ので、エラー訂正処理は、A3に対する信頼性指標とC3に対する信頼性指標とを比較して高い方のものを第2の信頼性指標として選択する。次に、エラー訂正処理は、第1の信頼性指標と第2の信頼性指標とを比較して高い方のものを最も高い信頼性指標として選択する。エラー候補A4又はエラー候補C4のいずれかがこの最も高い信頼性指標を得た場合には、エラー訂正処理は、第1のデータ記録が間違っており、訂正する必要があると結論付け、他の場合には、第1のデータ記録は正しく、コンテナがロケーションB3を占有するはずである(すなわち、ロケーションA3にあるコンテナ又はロケーションC3にあるコンテナがロケーションB3を占有するはずである)と結論付ける。
【0140】
段階2018では、最も高い信頼性指標が事前設定閾値と比較される。この例では、最も高い信頼性指標が0.8であり、事前設定閾値が0.6であると仮定し、従って、エラー訂正処理は段階2022に続く。更に、最も高い信頼性指標を獲得するエラー候補が1つしか存在しないと仮定し、従って、エラー訂正処理は段階2026に続く。段階2026において、エラー訂正処理は、エラー訂正に向けてデータ記録を準備する。説明を完全にするために、4つのエラー候補の各々を4つの場合のうちの1つにおいて最も高い信頼性指標を獲得するエラー候補とすることができるこれらの4つの場合を提供する。
【0141】
ケース#1では、最も高い信頼性指標は、ロケーションA4のエラー候補によって獲得される。従って、エラー訂正処理は、第1のデータ記録(コンテナIDをコンテナB4として有する)を複製データ記録にコピーし、次に、複製データ記録内のコンテナセルロケーションをロケーションB4からロケーションA4に置き換え、信頼性レベルをConft4(B4)から(a1/2/a2)×(1−Conft4(B4))(これは0.8である)に更新する。図23Bは、コンテナB4をロケーションB4からロケーションA4に移動するこれらの変更の効果を示している。更に、エラー訂正処理は、在庫追跡システムによって直接生成されたデータ記録から新規作成データ記録を区別するために、この新規データ記録がエラー訂正処理によって生成されたことを示すようにこの新規データ記録を訂正済みデータ記録としてマーク付けする。ロケーションB4におけるコンテナB4の降荷作業を表す元の第1のデータ記録に対しては、エラー訂正処理は、このデータ記録をエラーを有するとマーク付けし(例えば、「データ特性」フィールドを「エラー」に設定することにより)、無効にする(例えば、現時刻をタイムスタンプとして「ステータス」フィールド内の値を「既存」から「失効済み」に変更することにより)。同様にエラー訂正処理は、コンテナInv_B3のデータ記録も無効とマーク付けする。一部の実施形態では、エラー訂正処理は、複製データ記録を作成することなく第1のデータ記録に対して直接修正を加えることができ、又は修正した第1のデータ記録を訂正済みデータ記録として報告することができる。
【0142】
ケース#2では、ロケーションC4のエラー候補が最も高い信頼性指標を獲得しており、従って、エラー訂正処理は、ケース#1と類似の処理を提供する。唯一の相違点は、訂正済みデータ記録が、そのロケーションとしてロケーションC4を有し、その信頼性指標として信頼性指標(a3/2/a4)×(1−Conft4(B4))(これは0.8である)を有する点である。図22Cは、コンテナB4をロケーションB4からロケーションC4に移動するこれらの変更の効果を示している。同様にエラー訂正処理は、元の第1のデータ記録をエラーを有する及び無効とマーク付けする。
【0143】
ケース#3では、ロケーションA3にあるコンテナA3のエラー候補が最も高い信頼性指標を獲得するので、このエラー候補を第2のマッチとして識別し、これは、A3の降荷作業が、ロケーションA3ではなくB3で発生した可能性が最も高いことを示している。従って、エラー訂正処理は、最初にこの第2のマッチ(すなわち、コンテナA3のデータ記録)をコピーすることによって複製データ記録を作成し、次に、複製データ記録内の降荷ロケーションをロケーションA3からロケーションB3に変更し、信頼性レベルをそれに対応する信頼性指標に更新する。図23Dは、コンテナA3をロケーションA3からロケーションB3に移動するこれらの変更の効果を示している。次に、この複製データ記録は、エラー訂正処理によって生成された訂正済みデータ記録になる。次に、エラー訂正処理は、元のマッチ(すなわち、コンテナA3のデータ記録)をエラーを有する及び無効としてマーク付けする。更に、エラー訂正処理は、失効時刻を現時刻として第2のデータ記録(すなわち、エラー検出処理によって作成された「不可視」コンテナであるコンテナInv_B3のデータ記録)を無効とマーク付けする。
【0144】
ケース#4では、ロケーションC3にあるコンテナC3のエラー候補が最も高い信頼性指標を獲得するので、この候補が第2のマッチとして識別される。コンテナC3の降荷作業は、時刻t2におけるコンテナB3の集荷作業の前の時刻t1に発生したので、C3の降荷ロケーションはロケーションB3であったはずがなく、これは、集荷作業が、コンテナB3ではなくコンテナC3に発生したはずであることを示している。従って、エラー訂正処理は、コンテナB3の複製データ記録を作成し、次に、複製データ記録内のコンテナのID及び特性をコンテナC3のものと置き換え、複製データ記録内のコンテナセルロケーションをロケーションC3に変更する。すなわち、複製データ記録は、時刻t2における集荷作業が実際にはロケーションC3にあるコンテナC3に発生したことを示す訂正済みデータ記録になる。その後に、エラー訂正処理は、第2のデータ記録(すなわち、コンテナInv_B3のデータ記録)を無効とマーク付けし、B3の降荷作業に対応するデータ記録を無効(又は失効済み)から妥当(又は既存)に変更する。すなわち、在庫追跡データベースは、そのままロケーションB3にコンテナB3を有することになる。図23Eは、これらの変更の効果を示している。
【0145】
段階2028において、エラー訂正処理は、関連データ記録に関して在庫追跡データベース114に照会し、訂正に従ってこれらのデータ記録を更新する。この例では、新規データ(すなわち、エラー訂正処理における第1のデータ記録)が、エラー検出モジュール302に実時間で報告されると仮定し、従って、ロケーションA4又はロケーションC4にはその時点では依然としていかなる作業も発生していなかったはずであるから、ケース#1及びケース#2ではいかなる照会も必要ではない。ケース#3とケース#4の両方において、マッチは、「不可視」コンテナに対するマッチである。ロケーションA3及びロケーションC3における直近の降荷作業の時刻は、それぞれt3及びt1であり、ロケーションB3における直近の集荷作業の時刻はt2であり、この時刻はt3よりも早いが、t1よりも後である。ケース#3では、A3の降荷は、実際にはロケーションB3で発生しており、従って、エラー訂正処理は、ロケーションB3において時刻t3の後に発生したあらゆる作業に関して在庫追跡データベースに照会する。照会は、いかなる結果も戻すことにはならず、エラー訂正処理は段階2030に続く。ケース#4では、C3の降荷はB3の集荷よりも早く、従って、時刻t2における集荷は、実際にはロケーションC3にあるコンテナC3に発生した。次に、エラー訂正処理は、時刻t2における集荷作業の後にコンテナB3に発生した全ての作業に関して在庫追跡データベースに照会する。これらの作業は、コンテナB3ではなく実際にはコンテナC3に発生しており、従って、照会結果内の各データ記録に対して、エラー訂正処理は、コンテナ情報をコンテナB3のものからコンテナC3のものに変更する。そうすることにより、エラー訂正処理は、在庫追跡データベース114内で既に伝播していたエラーも訂正する。
【0146】
段階2030において、エラー訂正処理は、訂正済みデータ記録、並びに更新済みデータ記録を在庫追跡データベースに書き込むことによってエラー訂正を完了する。代替的に、エラー訂正処理は、訂正が新規エラーを作り出さないことを保証するために、これらのデータ記録を在庫追跡データベースに更新する前に訂正結果をエラー検出モジュール302に報告することができる。エラー検出モジュール302が、エラー訂正結果内にエラーを検出した場合には、エラー訂正処理は、例外フラグを「間違った訂正」と設定して訂正例外処理に続けることができる。
【0147】
図24は、段階1820及び段階2024における訂正例外処理の一実施形態に関わる処理を示す流れ図である。この実施形態は、オペレータが、設定において手動サポートを実質的にすることを選択した場合に、オペレータが訂正処理に係わることを可能にする。図24に示しているように、訂正例外処理は、段階2402において手動サポートが実質的にされた又は起動されたか否かを検査することで始まる。手動サポートが無効にさていれるか又は停止されている場合には、訂正例外処理は段階2404に続き、エラー訂正結果内のデータ記録を訂正例外が発生したことを示すように修正する。例えば、訂正例外処理は、対応する例外規則を表すために、これらのデータ記録に、以前の段階(例えば、図18の段階1810、1816、及び1818、並びに図20の段階2010、2020、及び2022)において設定された値を有する例外フラグを追加することができる。訂正例外処理は、例外規則及びタイムスタンプをエラー訂正ログに書き込むことができる。(上述のように、例外規則は、「十分なデータの不在」、「適正結果の不在」、「未確立のマッチ又は対処法」、「低い信頼性指標」などを含むことができる。)
【0148】
手動サポートが有効であるか又は起動されている場合には、訂正例外処理は、2406から2414までの段階に続き、エラーを訂正するようにオペレータを訂正例外処理に携わらせる。段階2406において、例外訂正処理は、オペレータの手動訂正又は検証に向けて、対応する例外規則(すなわち、既存の例外に対する理由)、エラー訂正結果内の全てのデータ記録、並びに照会結果内のデータ記録を含むことができる指示を準備する。例外が、未確立のマッチ又は対処法に起因する場合には、指示は、最も高い信頼性指標を獲得する全ての潜在的マッチを含むことにもなり、例外が低い信頼性指標に起因する場合には、指示は、最も高い信頼性指標を獲得するマッチを含むことになる。これらの指示の目的は、検出されたエラーに関連する十分な情報をオペレータに提供し、オペレータの手動エラー訂正を容易にすることである。
【0149】
段階2408において、訂正例外処理は、これらの手動訂正指示を例えばディスプレイを通じてオペレータに対して出力する。これらのデータ記録の内容を示すという指示に基づいて、グラフィック表示又は概略図面(図22A〜図22D及び図23A〜図23Eにあるもの等)を生成することができ、第1のデータ記録、第2のデータ記録内の「不可視」コンテナ及び「虚影」コンテナ、並びにエラー候補及びマッチを示す上で異なる色又はパターン規則を使用することができる。対応するエラー候補以外に各エラー候補に対応する信頼性指標を表示することができ、又はオペレータの要求を受けて表示することができる。次に、訂正例外処理は、オペレータの入力を待つ。
【0150】
情報が示されると、次に、オペレータは、情報を手動で調べ、オペレータに対して利用可能な他のリソースを組み込むことによってエラーを如何に訂正するかを判断する。そのようなリソースは、カメラ1402、画像処理モジュール1404、及び通信ネットワーク1602を含む図14及び図16に示しているようなカメラを利用したモニタリングシステムによって提供されるコンテナ輸送ヤードの画像(又は情報)を含むことができる。オペレータは、関連情報に関してコンテナ輸送ヤード内の輸送ヤード事務員及び/又は取り扱い機器オペレータと連絡を取ることができる。手動訂正を入力するために、オペレータは、ディスプレイ内のデータ記録のうちのいずれかを選択して、コンテナセルロケーション、コンテナID及び特性、並びに類似のものに関する訂正情報を手動で入力することができる。また、訂正例外処理は、オペレータが、1つのセルロケーションから別のセルロケーションにコンテナをドラッグするか又はセルロケーションにおいてコンテナを削除又は追加することを可能にすることができる。
【0151】
段階2410において、例外訂正処理は、いずれかの入力がオペレータによって入力されたか否かをカーソル移動又はキーボードからの入力をモニタすることによって調べる。例外訂正処理は、(1)入力が第1のデータ記録に対するマッチ、又は第2のデータ記録の各々に対するマッチのいずれを与えるか、又は(2)入力が第1のデータ記録、又は第2のデータ記録の各々のいずれを訂正するかを調べることにより、入力が妥当で完全なものであるか否かも検査する。入力が妥当で完全なものではなかった場合には、例外訂正処理は、段階2412で判断される十分に長い期間の間待機し終わるまで(例えば、指示の表示からの待機時間が、所定の閾値よりも長いか否か)オペレータからの入力を待ち、受け取り続ける。一部の実施形態では、例外訂正処理は、オペレータからの入力を第1及び第2のデータ記録、並びにエラー候補に関する既存の情報と組み合わせることができ、それによって可能な訂正の対処法を生成し、オペレータが選択及び/又は検証するようにこれらの対処法を出力する。従って、例外訂正処理は、入力が完全であることを必要としなくてもよい。
【0152】
訂正例外処理は、オペレータから妥当な入力を受け取ることなく十分に長い期間にわたって待機し終わると、段階2412から段階2404に続き、例外規則を書き込み、エラー検出結果内のデータ記録を修正する。代替的に、所定の時間閾値内で妥当なオペレータ入力が受け取られた場合には、訂正例外処理は、段階2410から段階2414に続き、オペレータの入力に基づいて識別されたマッチ、並びにオペレータが特定の訂正が行われた場合はそれらの訂正をエラー訂正処理に出力し戻す。その後に、訂正例外処理は、エラー訂正処理の図18の段階1824又は図20の段階2026に抜ける。次に、エラー訂正処理は、マッチ又は訂正が自動エラー訂正によって識別された場合と同じ手法で、オペレータによって選択されたマッチに基づいて必要な訂正を加えるか、又はオペレータによって加えられた訂正の検証する。
【0153】
図18及び図20のエラー訂正処理の実施形態を少なくとも2つのデータ記録(すなわち、第1のデータ記録と第2のデータ記録の両方を含むエラー検出結果)を入力として用いて説明したが、これらの実施形態は、1つのデータ記録しかエラー訂正処理に入力されない場合に適用することができる。そのような場合には、この1つのデータ記録が間違っており、訂正する必要があると仮定される。更に、この単一の記録では、エラー訂正処理をエラー検出モジュール302のエラー検出処理とは独立して使用することができる。以下の説明は、図20に示している流れ図を辿ってそのような単一記録実施形態を提供する。
【0154】
段階2002において、エラー訂正処理は、エラーが報告されたか否か(エラー検出モジュール又はユーザインタフェースのような他のモジュールのいずれかから)を調べ、報告があった場合には、エラー訂正処理は段階2004に続き、エラーデータ記録(第1のデータ記録、又はユーザインタフェースのような他のモジュールから入力されたデータ記録のみを含むエラー検出結果とすることができる)を受け取る。第1のデータ記録は、コンテナID、コンテナ特性、ポジション、及びコンテナセルロケーションという情報のうちの少なくとも1つを含み、これらの情報のうちのいずれかにおいて少なくとも1つのエラーを有することが、エラーを検出するためのプロセッサ、又は在庫追跡システムのオペレータのいずれかによって判断済みである。
【0155】
段階2006において、エラー訂正処理は、第1のデータ記録に基づいて、コンテナID、コンテナ特性、コンテナセルロケーション、継続時間、及び作業又はイベントの回数を指定する検索基準を設定する。次に、エラー訂正処理は、検索基準を用いて在庫追跡データベース114に照会し、照会結果を取得する。段階2010において、エラー訂正は、いずれかの例外規則が満たされるか否かを調べ、この規則が満たされる場合には、エラー訂正処理は段階2024に続き、訂正例外処理を実行する。例外規則、調査、及び訂正例外処理は、上述したものと同様である。
【0156】
いかなる例外規則も満たされない場合には、エラー訂正処理は、2012から2022までの段階に続き、照会結果を評価して、第1のデータ記録に対するマッチを判断する。マッチは、照会結果内のデータ記録であり、マッチに基づいて第1のデータ記録を修正することにより、第1のデータ記録内のエラーを訂正することができる。図20に図示の実施形態では、エラー訂正処理は、段階2012において第1のデータ記録に対するエラー候補を識別し、段階2014においてエラー候補の各々に対する確率尺度、例えば、矛盾指標又は信頼性指標を計算し、段階2016において矛盾指標を選別し、かつ最も高い信頼性指標に関してこの最も高い信頼性指標に対応するエラー候補を潜在的マッチとして識別することによってマッチを判断する。
【0157】
段階2018において、エラー訂正処理は、最も高い信頼性指標が十分に高い(例えば、事前設定閾値よりも大きい)か否かを調べ、比較結果に依存して段階2020又は段階2022に続く。最も高い信頼性指標が十分に高い場合には、潜在的マッチは、マッチとして識別される。1つのマッチしか存在しなかった(段階2022において判断される)場合には、エラー訂正処理は、段階2026においてこのマッチに基づいて第1のデータ記録を修正してエラーを訂正する。上述のように、段階2028において、エラー訂正処理は、第1のデータ記録又はマッチに関連付けられたデータ記録を検索して更新する。段階2030において、エラー訂正処理は、訂正済みデータ記録で在庫追跡データベース114を更新し、関連の履歴ログ又はエラー訂正ログに適宜書込みを行う。
【0158】
本発明を詳細事項を用いて上述したが、この説明は、本発明を如何に作成し、使用するかを当業者に教示するためのものに過ぎない。「不可視」コンテナ及び「虚影」コンテナのような特定の用語は、説明目的に用いたものであり、ある一定のセルロケーションに存在する可能性がある(又は可能性がない)にも関わらず、在庫追跡データベースが、これらのセルロケーションにこれらのコンテナが存在しない(又は存在する)ことを示すコンテナを表す上で他の用語又は値を使用することができると考えられる。多くの付加的な修正は、以下に続く特許請求の範囲によって定められる本発明の範囲に収まるであろう。
【符号の説明】
【0159】
23、24 間口
101 列
A、B、C 枠
【技術分野】
【0001】
本発明は、コンテナ輸送ヤード内のコンテナのロケーションにおけるエラーの検出及び訂正に関する。より具体的には、本発明は、コンテナのロケーションを示す在庫追跡データベース及び/又はシステム内の在庫データエラーの検出及び訂正に関する。
【背景技術】
【0002】
過去10年にわたって、輸送コンテナの取扱量は劇的に増加した。取扱量におけるそのような増加は、実時間の注文可視性に対して悪影響を及ぼしている。取引のあらゆる相手先は、コンテナの輸送行程を通してロケーション情報へのアクセスを有することを必要とする。しかし、通常、コンテナは、港では荷受業者に対して不可視である。
【0003】
輸送コンテナに対する作業は、一般的に構外作業、構内作業、ヤード作業を含む。これらの作業は、ヤード事務員、輸送機器のオペレータ、及び昇降機器のオペレータによって実施される。輸送機器(又はヤード牽引車)は、コンテナを1つのロケーションから別のロケーションに移動することはできるが、コンテナを荷揚げして荷降ろしすることができないあらゆるタイプの取り扱い機器(HE)を指す。昇降機器は、コンテナを荷揚げして、地面の上、別のコンテナの上、又は輸送に向けて別のHEの上に荷降ろしすることができるあらゆるタイプのHEを指す。本明細書の便宜上、ヤード牽引車及びコンテナ取り扱い機器(CHE)という用語をそれぞれ輸送機器及び昇降機器を指す上に使用する。実施される作業の中では、全体の平均業務の中でヤード作業(輸送コンテナヤード内の作業)が最も時間を消費する。従来、ヤード作業中には、ヤード事務員は、集荷するのに正しいコンテナの検証するために、CHEオペレータに付き添わなければならない。コンテナが、あるべきロケーションに存在しない場合には、一般的なヤード事務員は、そのコンテナを探してヤードの方々を歩き回る。ヤード事務員がそのコンテナを見つけると、ヤード牽引車の運転手とコンテナを集荷してヤード牽引車の上に積載するCHEオペレータの両方に新しいロケーションに臨場するように無線連絡する必要がある。たとえ彼らが臨場したとしても、正しいコンテナは、他のコンテナに埋もれている可能性があり、これらの他のコンテナをCHEオペレータが取り除く必要があり、その間中、ヤード事務員及びヤード牽引車の運転手は待機している。ヤード牽引車が到着するまでにCHEオペレータが検証済みのロケーションでコンテナを自由に積載することができるとしたら、その方が効率的であると考えられる。
【0004】
コンテナターミナルでの取り扱い処理の効率を改善するために、ヤード内で実際に何が起こっているかを追跡してモニタする在庫追跡システムが開発されている。一般的に、そのような在庫追跡システムは、実時間測位技術(RFID、GPS、及び無線ビーコン等)と無線通信技術の両方を使用する。これらのシステムは、コンテナのロケーションの能動的追跡を可能にし(一般的にコンテナを移動するHEの様々な個体の移動及びロケーションを追跡することにより)、追跡情報を在庫追跡データベースに報告し、ターミナル運用システム(TOS)とインタフェースで接続し、HEがコンテナを集荷又は荷降ろしする度にコンテナのロケーションを更新する。これらの在庫追跡システムは、コンテナヤードの在庫の精度を改善し、それによって不明コンテナを低減し、TOS性能を最大化し、HEの効率を改善することを目的とする。
【0005】
理想的には、実時間測位システムが100%の測位精度を得ることができ、無線通信システムがゼロ損失及びゼロノイズを有する場合には、在庫追跡システムは、コンテナ在庫のロケーションにおいて100%の精度を実際に得ることができる。しかし、現実には、センサのバイアス及びノイズ、通信の損失及びエラー、並びに構成要素又はシステムの障害及び作業エラーに起因して在庫エラーが発生する。
【0006】
従来技術の在庫追跡システムは、エラー、並びにエラーのタイプを検出して報告するのにHEのオペレータに重く依存する。CHEオペレータは、集荷ロケーション(時に出荷ロケーションとも呼ぶ)、コンテナID、及び降荷ロケーション(すなわち、ターゲットロケーション)を有する任務を受けると、CHEを集荷ロケーションまで運転して指定されたコンテナを集荷し、次に、降荷ロケーションまで運転して降荷ロケーションにコンテナを荷置きする。従来技術の在庫追跡システムは、実際の集荷ロケーションを指定集荷ロケーションと、更に、実際の降荷ロケーションを指定降荷ロケーションと比較し、不一致があった場合は運転手に警告し、運転手は、作業中に間違えてしまわない限り、そのエラーを報告するはずである。代替的に、作業を実施しようとする際のエラーを報告するのは運転手次第である。
【0007】
例えば、指定集荷ロケーションにいかなるそのようなコンテナも存在せず、又は障害物によってCHEが集荷ロケーションに到着することができない場合には、CHEオペレータは、CHE内に設けられたユーザインタフェースを用いてエラーを報告する必要があり、次に、システムは、任務を取り消して次の任務に移ることになる。指定コンテナが実際には隣のロケーションにある場合、例えば、指定集荷ロケーションの下にあり、指定コンテナの上にコンテナが載っている場合は(一般的にコンテナは上下に積み重ねられる)、CHEオペレータは、指定集荷ロケーションとは異なる実際の集荷ロケーションにおいてコンテナを集荷する必要がある。システムは、実際の集荷ロケーションを任務内に指定された集荷ロケーションと比較して、これらのロケーションが異なる場合は警告を発するので、CHEオペレータは警告を受けることになり、警告信号を消去するためにはエラーを報告する必要がある。CHEオペレータがコンテナを降荷ロケーションに輸送し、降荷ロケーションが既に占有されていた場合には、CHEオペレータは、エラーを報告して、降荷ロケーションを再判断するようにシステムに要求する必要がある。一方、降荷ロケーション指示内に指定された降荷ロケーションの直下にいかなるコンテナも存在しなかった場合には、CHEオペレータは、指定降荷ロケーションよりも低いロケーションにコンテナを降荷しなければならなくなり、それによってシステムは、運転手に間違った作業を警告するようにトリガされることになる。この場合、CHEオペレータは、再度エラーを報告する必要がある。
【発明の概要】
【発明が解決しようとする課題】
【0008】
従来技術によって使用されるそのような従来のマニュアルな鈍重な手法は、いくつかの欠点を有する。第1に、システムは、集荷ロケーション及び降荷ロケーションに着目するのみであるから、検出されるエラーのタイプが限られる。第2に、システムは、間違った在庫記録を含む任務を割り当てた時にのみ在庫エラーを検出及び訂正することができ、その結果、在庫エラーは、検出されることなく伝播する可能性があり、隣の在庫のエラー報告をもたらす場合がある。第3に、この手法は、エラー検出及びエラー訂正においてCHEオペレータの入力を必要とし、それによってCHEオペレータに対する付加的な作業負荷がもたらされ、オペレータの作業が遅くなり、CHEとCHEオペレータの両方の時間に関して貴重なリソースが浪費される。第4に、人間は間違いを犯す可能性があり、この手法は、CHEオペレータの入力におけるエラーに脆弱である。その結果、CHEオペレータは、エラー訂正のために追加情報を入力する必要があり、又は追加職員が、報告されたロケーションに手動エラー訂正のために向かわなければならない。
【課題を解決するための手段】
【0009】
本発明の実施形態により、在庫データベースに報告されるか、又は既に在庫データベースに存在する在庫データを検査してその検証することにより、従来のシステムと比較してデータ品質を改善するコンテナ在庫データベース内のエラーを検出及び訂正するためのシステムを提供する。システムは、あらゆる不整合性又はデータ矛盾に対して、到着するデータ記録を在庫データベース内のデータ記録に対して調べることによって在庫データベース内のデータエラーを自動的に検出し、データ矛盾が検出される度にデータ記録を報告する。更に、システムは、コンテナと、周囲のコンテナセルロケーションに関連する作業とにおいて検出されたエラーを調べ、周囲のコンテナ及び関連作業に基づいてエラー候補を識別し、エラー候補を評価してエラー訂正のためのマッチ(又は複数のマッチ)を識別し、関連データ記録を修正してエラーを訂正することによって自動エラー訂正を実施する。従って、システムは、在庫データベース内でのデータエラーの伝播を実質的に軽減することができ、それによってデータエラーの発生が低減し、在庫データベースの品質が改善される。その後にHEオペレータは、作業中に有意に少ないエラーにしか遭遇しなくなり、これは、エラー報告に関連する付加的な作業負荷からオペレータを解放するのに役立ち、コンテナの正しいロケーションを検索するのに浪費される時間が低減する。
【0010】
システムは、コンテナ在庫追跡システム、在庫追跡システムと連係する在庫管理システム、オペレータからの入力を受け入れるための入力デバイス、及びデータ記録を生成するコンピュータプログラムのうちの1つから少なくとも1つの第1のデータ記録を最初に取得するエラー検出方法で在庫データにおけるエラー検出を実施する少なくとも1つの処理デバイスを含む。次に、本方法は、第1のデータ記録に基づいて所定のイベントの組の中でイベントを識別する。所定のイベントの組は、施設内のコンテナ在庫及びHEに関連する作業を表す。そのような作業の例は、コンテナ集荷作業、コンテナ降荷作業、及びHEが移動している場合の車両移動作業を含む。
【0011】
更に、エラー検出方法は、識別されたイベントに基づいてエラータイプリストを提供し、各エラータイプを検査するコンピュータプロセッサを使用する処理を通じてデータエラーが発生したか否かを判断する。検査段階の各々では、プロセッサは、エラータイプリストからエラータイプを選択し、選択したエラータイプと第1のデータ記録とに基づいて検索基準を判断し、判断した検索基準を用いてデータベースに照会し、データベースから照会結果を取得する。次に、データ矛盾を検出するために、照会結果は、第1のデータ記録と比較され、データ矛盾の検出を受けて、選択したエラータイプのデータエラーが検出されたことが報告される。すなわち、本方法は、オペレータの直接介入なしに自動的にデータエラーを検出する。
【0012】
一実施形態では、データエラーの検出を受けて、プロセッサは、照会結果内のデータ記録の中でデータ矛盾によって影響を受けているデータ記録を更に識別する。識別されたデータ記録を第2のデータ記録と呼び、これらの第2のデータ記録は、第1のデータ記録と共にエラーデータ記録と見なされる。また、プロセッサは、エラーデータ記録をコンテナ在庫追跡システムと、エラーデータ記録をオペレータに対して表示するための出力手段とのうちの少なくとも一方に報告する。従って、エラーデータ記録をエラー訂正に向けて更に分析することができる。
【0013】
データエラーの検出を受けて、プロセッサは、第1のデータ記録と1組の第2のデータ記録とを含むエラーデータ記録を最初に取得するエラー検出方法でエラーデータ記録におけるエラー訂正を更に実施する。エラーの検出は、第1のデータ記録と第2のデータ記録の組とが互いに矛盾していることを示すので、2つの一方が必ずエラーを含むはずである。訂正を加えるためには、プロセッサは、いずれを訂正する必要があるか、及び如何にそれを訂正するかを最初に判断する必要がある。
【0014】
一実施形態では、プロセッサは、次に、第1のデータ記録と、1つの第2の基準が第2のデータ記録の各々に対応する1組の第2の検索基準とに基づいて第1の検索基準を設定し、設定した検索基準を用いてコンテナ在庫データベースに照会し、第1のデータ記録に対応する第1の照会結果と第2のデータ記録の組に対応する第2の照会結果とを取得する。次に、第1の照会結果が分析及び評価され、第1のデータ記録に対して第1のマッチが識別され、第1のマッチは、第1の照会結果内のデータ記録であり、このマッチに基づいて第1のデータ記録を修正することによってエラーを除去することができる。同様に各第2のデータ記録に対する第2の照会結果が評価され、各第2のデータ記録に対する第2のマッチが識別される。次に、第1のマッチと第2のマッチの組とが比較され、第1のデータ記録又は第2のデータ記録の組を訂正すべきであるか否かが識別される。判断が第1のデータ記録を訂正するというものである場合には、プロセッサは、第1のマッチに基づいて第1のデータ記録を修正し、必要に応答してマッチも適宜修正する。判断が第2のデータ記録を訂正するというものである場合には、プロセッサは、第2のデータ記録の各々をそれに対応するマッチに基づいて修正し、必要に応答して対応するマッチも適宜修正する。最後に、プロセッサは、修正済みデータ記録を在庫追跡データベースに報告する。
【0015】
別の実施形態では、エラー訂正方法は、あらゆる単一のエラーデータ記録を訂正するのにも使用される。この実施形態では、処理は、コンテナに対してエラーであると判断され、訂正する必要がある第1のデータ記録を取得する。次に、プロセッサは、第1のデータ記録に基づいて、コンテナID、コンテナ特性、コンテナセルロケーション、及び継続時間という情報のうちの1つを指定する検索基準を設定する。その後に、プロセッサは、検索基準を用いて在庫追跡データベースに照会し、照会結果を取得し、照会結果を評価して第1のデータ記録に対するマッチを判断する。次に、プロセッサは、マッチに基づいて第1のデータ記録を修正し、必要に応答してマッチも適宜修正する。次に、修正済みデータ記録は、在庫追跡データベースに報告される。すなわち、第1のデータ記録内のエラーを訂正し終わる。
【0016】
エラー訂正方法は、プロセッサが、第1のデータ記録と第2のデータ記録のいずれを訂正するかを判断することができない場合、又はプロセッサが、どのように訂正を加えるかを判断することができない場合を処理する例外処理を進めることができる。そのようなケースは、(1)照会がいかなる結果ももたらさないか、又は不十分な結果しかもたらさない、(2)いかなる1つ又は複数の第1のマッチも識別されない、(3)第2のデータ記録のうちのいずれかに対していかなる1つ又は複数の第2のマッチも識別されない、(4)第1のマッチと第2のマッチの比較が、第1のデータ記録と第2のデータ記録のうちのいずれを訂正するかに関する判断を誘導することができないなどの例外規則のうちのいずれかが満たされる状態で発生する可能性があると考えられる。プロセッサは、例外規則が満たされる度に例外処理を実行する。
【0017】
1つの単純な実施形態では、例外処理は、第1のデータ記録及び第2のデータ記録(適用可能な場合)内のある一定のフィールドを修正して例外規則が満たされたことを示す段階を単純に含む。別の実施形態では、例外処理は、指示を準備してオペレータに出力し、オペレータから入力を受け入れてそれを検証し、オペレータによって要求された訂正を入力に従って判断することによってオペレータを意志判断に係わらせる。次に、プロセッサは、要求された訂正を加え、修正済みデータ記録を在庫追跡データベースに報告する。
【0018】
在庫データ内のエラーを自動的に検出して訂正することにより、自動エラー検出及びエラー訂正処理は、在庫追跡データベース内のデータエラーの発生及び伝播を防止するのに役立つ。その後に、在庫追跡データベースに基づいてTOSによって生成される任務は正確である可能性が高く、従って、HEオペレータ及びシステムの他のユーザは、任務を完了することに集中することができる。更に、自動エラー検出及び訂正処理は、エラーシミュレーション及び分析のためのシミュレーションツール及び再生ツールを含む分析ツールの使用を容易にする。
【0019】
本発明の実施形態の更なる詳細内容を添付図面を用いて説明する。
【図面の簡単な説明】
【0020】
【図1】従来技術の在庫追跡及び管理システムのブロック図である。
【図2】一般的な在庫追跡及び管理システムが装備された輸送コンテナ保管施設内のそのようなシステムの主要構成要素の物理的エンティティを示す簡易概略図である。
【図3】自動在庫エラー検出を使用する在庫追跡及び管理システムの第1の実施形態のブロック図である。
【図4】システムが報告モジュール、再生モジュール、シミュレーションモジュール、及びユーザインタフェースを更に含む自動在庫エラー検出を使用する在庫追跡及び管理システムの第2の実施形態に関するブロック図である。
【図5A】コンテナセルロケーションを例示的な「コンテナセル命名規則」を用いてラベル付けしたコンテナ輸送ヤード内のコンテナスタックの列の上面図である。
【図5B】コンテナセルロケーションを例示的な「コンテナセル命名規則」を用いてラベル付けしたコンテナ輸送ヤード内のコンテナスタックの列の端面図である。
【図6】エラー検出モジュール302の一実施形態に関わる処理を示す流れ図である。
【図7】車両移動イベント、コンテナ集荷イベント、及びコンテナ降荷イベントを含む発生したイベントのタイプに従った在庫エラーの検出を示し、車両移動イベントが発生する時に在庫エラーを検出する処理を更に含む流れ図である。
【図8A】車両移動違反及びそれに対応する在庫エラーの例を示す図である。
【図8B】車両移動違反及びそれに対応する在庫エラーの例を示す図である。
【図9】コンテナ集荷イベントが発生する時に在庫エラーを検出する処理を示す流れ図である。
【図10A】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図10B】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図11A】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図11B】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図11C】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図11D】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図12】コンテナ降荷イベントが発生する時に在庫エラーを検出する処理を示す流れ図である。
【図13A】コンテナ降荷イベントが発生する時の在庫エラーの例を示す図である。
【図13B】コンテナ降荷イベントが発生する時の在庫エラーの例を示す図である。
【図14】在庫エラー、特にコンテナ輸送ヤード内でのコンテナのロケーションにおけるエラーを検出するためのカメラを利用したエラー検出を使用する在庫追跡及び管理システムのブロック図である。
【図15】カメラからの画像に基づいて在庫エラーを検出する処理を示す流れ図である。
【図16】在庫追跡システムに関連付けられた在庫追跡データベース内のエラーを検出するために在庫追跡システムとインタフェースで接続するカメラを利用した在庫エラー検出システムに関するブロック図である。
【図17】自動在庫エラー検出及び訂正を使用する在庫追跡及び管理システムの第1の実施形態のブロック図である。
【図18】エラー訂正モジュール1702によって実行されるエラー訂正処理の一実施形態を示す流れ図である。
【図19A】図18のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供する図である。
【図19B】図18のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供する図である。
【図19C】図18のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供する図である。
【図19D】図18のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供する図である。
【図20】エラー訂正モジュール1702によって実行されるエラー訂正処理の別の実施形態を示す流れ図である。
【図21】信頼性指標の計算に使用される重み係数を判断する方法を示す図である。
【図22A】4つの作業が異なる時刻において実施され、最後の作業においてエラーが検出された例を示す図である。
【図22B】4つの作業が異なる時刻において実施され、最後の作業においてエラーが検出された例を示す図である。
【図22C】4つの作業が異なる時刻において実施され、最後の作業においてエラーが検出された例を示す図である。
【図22D】4つの作業が異なる時刻において実施され、最後の作業においてエラーが検出された例を示す図である。
【図23A】検出されたエラーの図である。
【図23B】4つのエラー候補の各々がエラー訂正のためのマッチになる4つの場合のうちの一図である。
【図23C】4つのエラー候補の各々がエラー訂正のためのマッチになる4つの場合のうちの1つの図である。
【図23D】4つのエラー候補の各々がエラー訂正のためのマッチになる4つの場合のうちの1つの図である。
【図23E】4つのエラー候補の各々がエラー訂正のためのマッチになる4つの場合のうちの1つの図である。
【図23F】信頼性指標における重み係数を計算するのに使用される情報を示す図である。
【図24】段階1820及び段階2024における訂正例外処理の一実施形態に関わる処理を示す流れ図である。
【発明を実施するための形態】
【0021】
図1は、本発明の実施形態に使用される構成要素を含む自動在庫追跡及び管理システムのブロック図を示している。在庫追跡及び管理システムは、移動されているコンテナを識別し、コンテナを追跡するために取り扱い機器(HE)の移動を追跡し、追跡情報を通信し、コンテナ保管ロケーション及びHEの移動の情報を格納する。
【0022】
システムは、IDリーダ102、測位システム104、他のセンサ106、通信ネットワーク108、アプリケーション/データベースインタフェース110、データベース管理システム112、及び在庫追跡データベース114を含む。IDリーダ102は、在庫項目及びHEの存在及び識別番号を検出するのに使用され、RFID(無線周波数ID)エキサイタ/スキャナ、バーコードスキャナ、OCR(光学文字認識)センサ(例えば、カメラ)、又はこの目的に使用されるあらゆる他のタイプのデバイスの形態にあるとすることができる。測位システム104は、一般的に在庫保管ロケーション内で在庫項目を集荷、移動、又は荷置きするHEの保管ロケーションを判断することによって在庫の保管ロケーションを特定及び/又は追跡する。測位システム104は、GPS(全地球測位システム)又はDGPS(差動GPS)、INS(慣性航法システム)、IMU(慣性測定ユニット)、RTLS(実時間位置システム)、PDS(ポジション検出システム)、及び在庫項目又はHEのロケーションを判断するのに使用することができる当業技術で公知の他のセンサ及びシステムのうちの1つ又はそれよりも多くを含むことができる。他のセンサ106は、ポジション追跡又は在庫作業の管理に対応する諸々のセンサを含む。他のセンサ106は、高さセンサ、移動RFIDエキサイタ/リーダ、速度センサ、光センサ、赤外線センサ、OCR(光学文字認識)センサ、バーコードスキャナ、機械スイッチ、電子スイッチ、及び音波センサのうちの1つ又はそれよりも多くを含むことができる。
【0023】
IDリーダ102、測位システム104、及び他のセンサ106からの情報は、通信ネットワーク108を通じてアプリケーション/データベースインタフェース110に伝達される。通信ネットワーク108は、無線通信ネットワーク、LAN(ローカルエリアネットワーク)、及び有線の専有通信ネットワークのうちの1つ又はそれよりも多くを含むことができる。アプリケーション/データベースインタフェース110は、データベース管理システム112と、在庫追跡データベース114に格納された情報へのアクセスを必要とし、及び/又は在庫追跡データベース114に情報を提供するあらゆるソフトウエアアプリケーション又はサービスとの間のソフトウエア対話機能を提供する。データベース管理システム112は、在庫追跡データベース114内のデータの編成、記憶、管理、及び取得を制御し、それに対して在庫追跡データベース114は、全ての在庫項目の記録及び在庫に関連する関連データを格納する。関連データは、在庫項目の在庫ID、説明事項、製品ID、製品名、物理的属性、在庫項目の保管ロケーション、在庫項目イベントの日時(在庫項目が保管ロケーション内に荷置きされた又はそこから集荷された時等)、在庫項目を移動した、集荷した、又は荷置きしたHEのタイプ及びID、HE及び測位システムが装備されたあらゆる他の車両の走行履歴、又は構内慣習によって定められた他の記述的特徴のうちの1つ又はそれよりも多くを含むことができる。
【0024】
図1に示している在庫追跡及び管理システムにおける個々のモジュールは、システム毎に異なるとすることができ、システムは、追加モジュール/構成要素を含むことができ、又は異なるモジュールの機能が、図示のものよりも少ないモジュールに組み合わされたより小型のものとすることができる。例えば、一部の在庫追跡システムは、在庫追跡データベース114とデータベース管理システム112とを1つの在庫追跡データベースシステムに組み合わせることができる。更に、特にインタフェースが比較的単純な場合に、アプリケーション/データベースインタフェース110を在庫追跡データベースシステム114内に組み込むことができる。アプリケーション/データベースインタフェース110、データベース管理システム112、及び在庫追跡データベース114には、コンピュータ、デジタル信号プロセッサ、FPGA、又はマイクロプロセッサのような1つ又はそれよりも多くの処理デバイスを設けることができる。1つ又はそれよりも多くのプロセッサ内に設けられた又はこれらのプロセッサに接続したメモリデバイス内に、1つ又はそれよりも多くのプロセッサに対する制御コード、並びに在庫データを格納することができる。
【0025】
任意的に、一部の在庫追跡及び管理システムは、多くの海港コンテナ保管ヤード内に使用される一般的なターミナルオペレーティングシステム(TOS)、内陸コンテナヤードターミナル、及び鉄道インターモーダルコンテナターミナルを含む在庫管理システム116及びそれと連係する外部データベース118を含むことができる。一般的にそのような在庫管理システム及び外部データベースは、在庫ID、保管ロケーション、コンテナの所有者、在庫されたコンテナ内部の商品の荷受業者、輸送情報、及び船積み情報に関連するデータを含むが、一般的にこれらの情報は、HE又はHEの移動履歴に関連する情報を含まない。
【0026】
図2は、輸送コンテナ保管施設内での従来の在庫追跡及び管理システムの主要構成要素の物理的エンティティを示す概略図である。CHE218は、輸送コンテナ保管施設内で輸送コンテナを荷揚げ、移動、及び荷置きするように設計された1台のHEである。そのような機器は、トップピック(又はトップリフト)、サイドピック(又はサイドリフト又はエンプティハンドラー)、ストラドルキャリア、リーチスタッカー、ゴムタイヤガントリー(RTG)、レールマウントガントリー(RMG)、キークレーン、及びジョッキートラック(UTR、タグ、又はヤードハスラーとも呼ばれる)を含む。図2に示しているCHE218は、トップピックである。この輸送コンテナ保管施設には、在庫追跡システムが装備され、全てのHEには、HEのロケーション及び移動、従って、これらのHEが移動する輸送コンテナのロケーション及び移動を正確に追跡するのに使用される測位システムが装備される。この例では、測位システムは、GPSシステム222及び慣性測定ユニット(IMU)224、並びにGPSシステム222、IMU224、及び他のセンサとインタフェースで接続し、これらからデータを収集するプロセッサベースのユニット(CPU)226から構成される。他のセンサは、CHE218が輸送コンテナ232を集荷又は荷降ろしする時に、このコンテナが位置する高さを測定する高さセンサ230を含むことができる。CHE218には、輸送コンテナ保管施設内の特定のロケーションに設けられた固定IDリーダ/タグ216によって検出される移動IDリーダ/タグ228を装備することができる。CHE218が固定IDリーダ/タグ216のある一定の近くまで移動すると、固定IDリーダ/タグ216は、移動IDリーダ/タグ228の存在、従って、CHE218の存在を検出し、そのような情報をアプリケーション/データベースインタフェース206に送信する。代替的に、CHE218が間近にある時に、移動IDリーダ/タグ228が、固定IDリーダ/タグ216を検出することができ、それによってCPU226にCHE218の測位を助ける付加的なロケーション関連情報を提供することができる。
【0027】
CPU226は、全てのこれらのセンサからデータを収集し、これらのデータをCHEが輸送コンテナ保管施設の方々に移動して輸送コンテナ232を集荷又は荷降ろしする際のCHE218のロケーションを計算するのに使用する。更に、CPU226は、ツイストロックセンサ(CHEのスプレッダバー上に設けられたツイストロック内に含まれるいくつかのスイッチ)から輸送コンテナ232の集荷又は降荷を示す情報(例えば、係合又は切り離し)を受け取る。従って、CPUは、CHE218が輸送コンテナ232を集荷又は荷降ろしするロケーションを判断することができる。更に、CHE218には、CPU226からの情報をアプリケーション/データベースインタフェース206、データベース管理システム208、在庫追跡データベース210、並びに任意的に在庫管理システム212及び外部データベース214に対して図1に示している構成要素と類似の無線通信ネットワーク202及びローカルエリアネットワーク(LAN)204を通じて通信する内蔵通信ユニット220が装備される。CPU226は、CHE218の運転手の行動を指示する指示及び運転手によって要求される情報のようなデータをこれらの他の構成要素から無線通信ネットワーク202を通じて受け取ることができる。更に、LAN204(有線又は無線)は、無線通信ネットワーク202と、アプリケーション/データベースインタフェース206と、データベース管理システム208と、在庫追跡データベース210との間の通信接続を与える。任意的に、LAN204は、在庫管理システム212及び外部データベース214の間のデータ又は情報の交換を容易にするために、これらの構成要素に接続することができる。図2ではこれらの構成要素(206、208、210、212、及び214)を別々の物理的エンティティとして示しているが、これらの一部又は全てを同じ処理デバイスに存在させることができることに注意されたい。
【0028】
図3は、本発明の実施形態に従って含められる自動在庫エラー検出構成要素を有する在庫追跡及び管理システムのブロック図を示している。図1に示している一般的な在庫追跡及び管理システムにおける構成要素に加えて、このシステムは、在庫データの妥当性を調べ、在庫追跡データベース114内のエラーを探索するエラー検出モジュール302を更に含む。自動エラー検出処理においては手動介入は必要ではないが、エラー検出モジュール302は、オペレータが望む場合には、オペレータがエラー検出処理に手動介入することを可能にすることができる。エラー検出モジュール302の詳細内容に対しては、図6から図13に関連して後に説明する。
【0029】
図4は、本発明による在庫追跡及び管理システムの構成要素の別の実施形態のブロック図である。この実施形態では、システムは、図1に示している構成要素に加えて図3のエラー検出モジュール302を含む。更に、システムは、報告モジュール402、再生モジュール404、シミュレーションモジュール406、及びユーザインタフェース408を含む。報告モジュール402は、ユーザに、特定の情報及び履歴データに関してシステムに照会する機能を与える。再生モジュール404は、ユーザが、特定の時間セグメント、特定の車両又は車両群、特定輸送コンテナ、又は他の選択基準を選択し、イベント履歴を視覚的に辿る目的でこの時間セグメントをグラフィカルユーザインタフェース(GUI)(ユーザインタフェース408の一部である)上で「再生」することを可能にし、それによって自動エラー検出からの結果の手動での評価及び検証を容易にすることができる。シミュレーションモジュール406は、ユーザが、可変データ要素をユーザインタフェース408を通じて「シミュレーション」モードで手動で入力することを可能にし、それによってユーザが、様々な作業シーケンスの効果をより明快に理解することが助けられることになり、ユーザが、エラーの発生の前の作業における試行錯誤によって検出エラーを手動で訂正することが可能になる。ユーザインタフェース408は、グラフィカルユーザインタフェース、並びにキーボード、プリンタ、マウス、又は他のローカル又はリモートの入力/出力デバイスを含むがこれらに限定されない1つ又はそれよりも多くの入力/出力デバイスとすることができる。
【0030】
図5A及び図5Bは、海港ターミナル、鉄道インターモーダルターミナル、又は内陸保管ターミナルうちのいずれかにおけるコンテナ保管施設の例示的なレイアウトを示している。保管施設(ターミナル)における保管ロケーションの3次元特徴を示すために、上面図(図5A)と端面図(図5B)とを含めている。各個々の矩形ブロックは、コンテナを存在させることができるコンテナ保管ロケーションを表す。コンテナ保管施設内での各コンテナ保管ロケーションを一意的に識別するために、通常はロケーション命名規則が使用される。図5A及び図5Bは、列、枠、間口、及び段のような用語を使用する一般的なロケーション命名規則を示している。この命名規則では、コンテナ保管施設内でのコンテナ保管ロケーションの地球上ポジションを一意的に識別するのに枠数値と間口数値とが使用される。各間口は、コンテナ1つ分の長さの幅を有し、各枠は、コンテナ1つ分の奥行きの幅を有する。一般的にいくつかの枠(図4に示している例では3つの枠)が互いにまとめられて列を形成し、列の間の距離は、HEが通過するのに十分な空間を与えるように列内の枠間の距離よりもかなり大きく保たれる。コンテナは、互いに上下に積み重ねることができ、コンテナ保管ロケーションの高さは、段数値によって表される。上面図(図5A)では、列101の最も右下のコンテナ保管ロケーションは、その地球上ポジションに対して(列101、間口21、枠A)で表される。端面図(図5B)では、高さを示しており、ロケーション(列101、間口21、枠A)の2段目の上のコンテナセルは(列101、間口21、枠A、段2)によって一意的に識別される。そのようなセル命名規則は、コンテナのみならず、多くの他のタイプの在庫に関する保管ロケーションの迅速で容易な識別を可能にする。他の命名規則を使用することができ、これらの命名規則は全て、3次元保管セルロケーションを表す上で保管施設にわたる均一性を反映する。
【0031】
一般的に命名規則は、直ちに測定することができない各コンテナ保管ロケーションの論理ポジションを識別し、例えば、GPSを利用した測位システムは、GPS受信機からの擬似距離(衛星とアンテナの間の距離)測定値に基づいて地球座標における経度、緯度、及び高度のポジションを与える。測位システムからのポジションと命名規則で表された論理ポジションとの関連付けを容易にするために、測位システムは、地球座標におけるポジション測定値を図5A及び図5Bに示している局所直交座標(x,y,z)に更に変換する。次に、直交座標ロケーション(すなわち、局所直交座標におけるポジション)をコンテナセルの論理ポジションに関連付ける上で換算表が一般的に使用される。例示的な換算表を直交座標ポジションがコンテナセルの中心の直交座標ポジションに対応する下記の表1に示している。代替的に、他のタイプの座標(極座標等)を使用することができ、選択された座標におけるセルロケーションに論理ポジションを関連付ける換算表が適宜使用される。
【0032】
(表1)
【0033】
図5A及び図5Bに示している局所座標(x,y,z)の場合には、列が有する同じ枠内にあるコンテナセルは、同じx座標値を共有し、同じ間口内にあるコンテナセルは、同じy座標値を共有し、同じ段内にあるコンテナセルは、同じz座標値を共有することに注意されたい。エラー検出モジュール302における処理を説明するのを補うために、図5A及び図5Bと共に上述のコンテナ保管施設及び命名規則を使用する。しかし、エラー検出モジュール302は、他の命名規則を用いて処理することができる。
【0034】
図6は、エラー検出モジュール302の基本的な作動を示す流れ図である。処理は、段階602において新規データが処理に利用可能であるか否かを調べる段階で始まる。一実施形態では、新規データは在庫追跡システムによって提供され、例えば、アプリケーション/データベースインタフェース110が、IDリーダ102、測位システム104、及び他のセンサ106から通信ネットワーク108を通じて受信した情報、並びに在庫管理システム116からの情報に基づいて生成することができる。別の実施形態では、新しいデータは、オペレータにより、キーボード、マウス、タッチスクリーンなどを含む入力手段を通じて入力されたデータ記録とすることができる。新規データは、データ記録を生成するあらゆるコンピュータプログラム、例えば、在庫追跡データベース114にデータを要求し、そこからデータを取得するあらゆるアプリケーション又はサービスが提供することができる。そのようなアプリケーションの例は、妥当性検査プログラム、シミュレーションツール、再生ツールなどを含む。
【0035】
この新規データは、HEのポジション、コンテナ在庫のポジション、又はコンテナセルロケーションのいずれかとすることができるロケーション関連情報を含む少なくとも1つのデータフィールドを含む。新規データは、新規データに関連付けられたイベントを識別するためのセンサ情報も含まなければならないか、又はイベントを指定するデータフィールドを直接含まなければならない。更に、新規データは、このデータに関連付けられたタイムスタンプ、このデータが関係するHEのID及びタイプ、HEの移動情報(例えば、速度)、HEによって作業中のコンテナのID及びタイプ、作業のタイプ、このデータの信頼性レベルなどの情報のうちの一部を含むデータフィールドを含むことができる。例えば、新規データは、コンテナAというIDを有するコンテナがあるコンテナセルロケーション(例えば、列101、間口21、枠A、段2)において集荷されたことを示すことができる。
【0036】
いかなる新規データも利用可能ではない場合には、エラー検出モジュール302は、処理を抜けて次の処理サイクルが処理に再度入るまで待機し、処理は、段階602で新規データの入取得能性を検査する段階で再開することになる。新規データが利用可能である場合には、段階604においてエラー検出モジュールは新規データを読み取る。段階606では、次に、データ矛盾/エラーを検出するために、エラー検出モジュールは、段階604において受け取った新規データを在庫追跡データベースに要求した対応する在庫データと共にデータの整合性に対して調べる。段階606に関わる詳細なデータ矛盾検出処理に対しては、図7から図13に関連して後に説明する。
【0037】
段階606の出力は、データ矛盾/エラーが検出されたか否かを示す少なくとも1つの変数を含み、そのような変数は、段階608においてその後の処理を判断するのに使用される。エラーが検出された場合には、エラー検出モジュール302は段階610に続き、エラーをアプリケーション/データベースインタフェース110に報告し戻し、アプリケーション/データベースインタフェース110は、このエラーを更にユーザに報告することができる(例えば、ユーザインタフェース408を通じて)。他の実施形態では、エラー検出モジュールは、エラーを在庫追跡システムと連係する在庫管理システムに報告するか又はエラーデータ記録をオペレータに表示するための出力手段に報告するか又はエラーデータ記録を受け取るように構成されたコンピュータプログラムに報告する。エラー検出モジュールは、オペレータにエラーを手動で訂正するように要求することができ、又は利用可能な場合は自動エラー訂正処理を開始することができる。エラーを報告した後に又はいかなるエラーも検出されなかった場合には、エラー検出モジュールは、段階612に続き、追跡データベース114に(更新した)在庫データを書き込む/このデータベースをこのデータで更新する。一実施形態では、更にエラー検出モジュールは、在庫追跡データベース114内に表を作成し、データエラーの検出時にこの表に対するエラーデータ記録を作成し、すなわち、オペレータ又はコンピュータプログラムによる容易なアクセスに向けてエラーデータ記録がこれらの表内に収集される。代替的に、エラー検出モジュール302は、データ矛盾検出処理(段階606)中に生成される付加的な結果を記録するログデータを作成して、そのようなログデータを在庫追跡データベース114内に書き込むことができる。その後にエラー検出モジュール302は、処理を抜けて次の処理サイクルが処理を繰り返すまで待機する。
【0038】
図7は、段階606に関わるデータ矛盾検出処理の一実施形態を示す流れ図であり、エラー検出モジュール302は、新規在庫データを在庫追跡データベース114からの対応する在庫データと比較してデータ矛盾を検出し、データ矛盾の検出を受けて、データ矛盾のタイプ及びデータ矛盾をもたらしたコンテナを更に識別し、信頼性レベルを計算し、関連コンテナを指標付けし、これらのコンテナに属性を再度割り当てる。
【0039】
この実施形態では、新規データに関連付けられたイベントに基づいてデータ矛盾を検出する異なる検出手順が使用される。データ矛盾検出処理は、最初に新規データに基づいてイベントの所定の組からこのイベントを識別する。イベントの所定の組は、在庫及びHEに関連する作業を表す。作業は、コンテナ在庫が集荷される場合のコンテナ集荷作業、コンテナ在庫が荷降ろしされる場合のコンテナ降荷作業、及びHEが移動している場合の車両移動作業を含むことができる。それに応じて、イベントの所定の組は、車両移動イベント(すなわち、HEが、0.1m/sのような事前設定閾値よりも大きい速度で移動している)、コンテナ集荷イベント(すなわち、HEが、コンテナをちょうど集荷し終わった)、及びコンテナ降荷イベント(すなわち、HEが、コンテナをちょうど降荷し終わった)を含む。
【0040】
図7では、データ矛盾検出処理は、最初に702、704、及び706においてどのタイプの所定のイベントが発生したかを識別する。一実施形態では、新規在庫データは、関係するイベントを直接指定するフィールド(例えば、「イベント」フィールド)を含み、例えば、値「0」は車両移動イベントを示し、値「1」はコンテナ集荷イベントを示し、値「2」はコンテナ降荷イベントを示し、以降同様に続く。相応に、「イベント」フィールド内の値は、段階702において調べられ、値が0に等しい場合には、車両移動イベントが検出される。値が0ではなかった場合には、処理は段階704に続き、コンテナ集荷イベントが発生したか否かを判断する。「イベント」フィールド内の値が1に等しい場合には、コンテナ集荷イベントが検出され、他の場合には、処理は段階706に続き、「イベント」フィールド内の値が2に等しいか否かを調べることにより、コンテナ降荷イベントが発生したか否かを判断する。
【0041】
在庫データフィールドに格納された「0」、「1」、又は「2」以外に、別の実施形態では、新規在庫データは、HEの速度を含むフィールドを含むことができる。速度が事前設定閾値よりも大きい場合には、車両移動イベントが検出され、他の場合は、新規在庫データは車両移動イベントを示さない。更に、新規在庫データは、集荷イベント又は降荷イベントを示すセンサ(例えば、ツイストロックセンサ)情報又は他の情報を含むフィールドからの出力を含むことができる。例えば、コンテナが集荷されている時には、HE上のツイストロックセンサは、「アンロック状態」から「ロック状態」に変化し、コンテナが降荷されている時には、ツイストロックセンサは、「ロック状態」から「アンロック状態」に変化する。従って、この実施形態では、新規在庫データは、ツイストロックステータスの変化の情報を含み、処理は、段階704及び706においてこの情報を調べて、関係するイベント(集荷イベント又は降荷イベント)を識別する。
【0042】
段階704においてコンテナ集荷イベントが検出された場合には、処理は、図9の902から920までの段階に続く。そうではなく段階706においてコンテナ降荷イベントが検出された場合には、処理は、図12の1202から1220までの段階に続く。これらのイベントのうちのいずれも検出されなかった場合には、このデータ矛盾検出処理(ブロック606における処理に対応する)は、段階706の後にいかなるエラーも報告せずに終了する。
【0043】
段階702において車両移動イベントが検出された場合には、処理は、データ矛盾検出のための708から714までの段階に続く。708から714までの段階は、段階702において車両移動イベントが検出された場合のデータ矛盾検出処理を示している。処理を説明するのを補うために、図8A及び図8Bに車両移動イベントの2つの例を提供しており、これらに対しては708から714までの段階の説明の後で説明する。識別されたイベントに従って、次に、データ矛盾検出は、可能なエラータイプのリストを提供し、エラー検査処理を用いてリスト内のこれらのエラータイプをくまなく調べ、指定されたエラータイプのエラーが発生したか否かを判断する。一実施形態では、車両移動イベントに対応する可能なエラータイプのリストは、HEが、在庫データベースによるとコンテナによって既に占有されているロケーションにおいて移動していることを意味することができる移動違反を含む。移動違反は、エラータイプリスト内で車両移動イベントにおける唯一のエラータイプであるから、エラー検査処理(段階708の)は、移動違反が発生したか否かを判断することのみが必要である。
【0044】
段階708に対して、データ矛盾検出処理は、移動違反を検出するために以下の手順を使用する。
【0045】
(1)データ矛盾検出処理は、最初にエラータイプ(この場合、移動違反)及び新規データに基づいて検索基準を判断し、より具体的には、処理は、上述のロケーション−ポジション関連付け(表1及び図5A及び図5Bのロケーション命名規則を参照されたい)に基づいて、新規データ内のロケーション(HEの寸法を考慮した)に対応するコンテナセルロケーション(すなわち、列、間口、及び枠の数値)を識別する。
【0046】
(2)いかなるコンテナセルロケーションも識別されなかった場合には、このポジションはコンテナセルロケーションではなく(例えば、HEは2つの列の間の通路に沿って移動している)、データ矛盾検出処理は、いかなる移動違反も発生しなかったと判断する。
【0047】
(3)コンテナセルロケーションが識別された場合には、これらのセルロケーションは検索基準を構成し、次に、処理は、識別されたセルロケーションに対応する在庫データに関して在庫データベースに照会する。照会結果(すなわち、在庫データ記録)が、存在するはずがないコンテナが存在すること、又は識別された単一のセルロケーションに複数のコンテナが存在することを示す場合には、データ矛盾検出処理は、移動違反エラーが発生したと結論付けて、これを報告する。他の場合には、データ矛盾検出処理は、いかなる移動違反も発生しなかったことを報告する。
【0048】
段階708の後に、処理は、608から612までの段階に直接戻ることができ、段階708における検出に依存してエラー又はエラーの不在を報告する。代替的に、段階708において移動違反が検出された場合には、更に処理は、図7に710から714までの段階に示しているように、検出エラーによって影響を受けたエラーデータ記録を識別して修正することができる。
【0049】
段階710において、データ矛盾検出処理は、照会結果内のデータ記録を読取り、これらのデータ記録の中でこれらのセルロケーションが占有されていることを示すデータ記録を識別して、これらのデータ記録をエラー在庫データ記録と判断する。HEは、実際には占有されたセルロケーションを通って移動することはできないので、移動違反は、新規在庫データ内のポジションデータが間違いである(すなわち、HEは、新規在庫データ内に報告されたポジションには実際に存在しない)か、又はセルロケーションが占有されていることを示す対応する在庫データがエラーを有する(すなわち、実際にはそのロケーションにはいかなるコンテナも存在しない)かのいずれかを示している。図7に図示の実施形態では、データ矛盾検出処理は、新規在庫データ内のポジションデータを常に信用する。従って、セルロケーションが占有されていることを示す在庫データは、常にエラーを有すると見なされる。
【0050】
段階712において、データ矛盾検出処理は、エラー在庫データ記録の各々を更に修正し、エラーが発生したことを示している。一実施形態では、修正は、エラー在庫データ記録内の属性フィールド(説明の目的で「コンテナタイプ」と呼ぶ)を例えばコンテナが在庫追跡データベース114内の「虚影」であり、実際にはセルロケーションを占有していないことを示す「虚影コンテナ」に変更する段階を含む。また、データ矛盾検出処理は、例えば、新規データに、対応する移動イベントが移動違反をもたらすことを示すエラーフラグを追加することによって新規データも修正し、それによって処理は、新規データも同じくエラーデータ記録であると見なす。そのような修正は、これらのコンテナ及びそれに対応するデータ記録をいかなるエラーも見つかっていない「正常」コンテナ及びその記録から区別することにより、その後のエラー訂正処理を容易にする(手動又は自動のいずれにしても)。その後のエラー訂正処理が、これらのコンテナが指定されたロケーションに実際に存在し、新規データが実際にはエラーを有すると判断した場合には、エラー訂正処理は、「コンテナタイプ」データフィールド内で「虚影コンテナ」を削除するか又はこれを「正常」属性で置き換えることができる。
【0051】
更に修正は、エラーデータ記録内のコンテナが実際にはどの程度の信頼性レベルで虚影コンテナであるかを示す信頼性レベルConferrを計算する段階を含むことができる。通常そのような信頼性レベルは、新規在庫データ内に与えられるHEのポジションデータの信頼性であるConfposの関数としてConferr=f(Confpos)のように計算される。最も単純な実施形態では、信頼性レベルは、一実施形態におけるポジションデータの信頼性としてConferr=Confposのように設定される。代替的に、計算は、このコンテナの降荷イベントの信頼性レベルであるエラーデータ記録内の信頼性レベル(Confdrop)をConferr=f(Confpos,Confdrop)のように使用することができる。例えば、次式になる。
【0052】
段階712の後に、データ矛盾検出処理は、次に、段階714においてデータ矛盾をエラーとして報告し(例えば、エラーフラグを1に設定することにより)、修正したエラー在庫データ記録、エラータイプ(すなわち、虚影コンテナ)、及びイベントタイプ(すなわち、車両移動イベント)のような情報を段階714において更に出力することができる。その後にこれらの情報は、図6の段階610におけるその後のエラー報告処理に対して使用することができる。
【0053】
図7に示しているデータ矛盾検出処理を更に説明するために、車両移動イベントの2つの例を図8A及び図8Bに提供している。図8Aに示している第1の例では、HEは、HEに内蔵された測位システムに従って列101内にあるコンテナに近づいている。HEのステータスをアプリケーション/データベースインタフェース110に報告するために、通信ネットワーク108を通じてセンサ情報が定期的に送信される。そのようなセンサ情報は、HEのポジション、ポジションの信頼性、HEの速度、HEに関連するイベントなどを含むことができる。次に、アプリケーション/データベースインタフェース110は、データベース管理システム112を通じて在庫追跡データベース114内に書き込む必要があると見なす新規在庫データを生成する。その一方、アプリケーション/データベースインタフェース110は、生成した新規在庫データをエラー検出に向けてエラー検出モジュール320にも転送する(又はアプリケーション/データベースインタフェースは、新規在庫データを在庫追跡データベース114に書き込む前に、エラー検出モジュール302から検証通知を受け取るまで待機することができる)。第1の例に対応する時間インスタンスでは、新規在庫データは、HEのポジションを(x,y,z)として、速度をvxとして示し、vxは0.1m/sよりも大きく、コンテナが移動していることを示している。
【0054】
図6を用いて上述したように、HEの速度は閾値(例えば、0.1m/s)よりも大きいので、エラー検出モジュールは、段階702において新規在庫データが車両移動イベントを示していると判断する。次に、段階704において、エラー検出モジュールは、列101、間口24の隣のロケーションにおいてHEに関する移動違反が発生したか否かを判断する。そのために、データ矛盾検出処理は、最初に新規在庫データ内のロケーション(px,py,pz)に対応するセルロケーション(すなわち、列数値、間口数値、及び枠数値)を識別する。HEは、寸法を有する物理的エンティティであるのに対してロケーション(px,py,pz)は、一般的にHE上の点(例えば、HEに内蔵されたGPS受信機の装着ロケーション)に対応するので、通常、地球上ポジション(px,py)は、HEが占有する地球上区域を表す区域に変換される。一実施形態では、x座標及びy座標における上側及び下側の境界が使用され、地球上区域は、xb1及びyb1が下側境界であり、xb2及びyb2が上側境界である時に、([px−xb1,px+xb2],[py−yb1,py+yb2])によって表される。上側及び下側の境界は、HEのタイプ、HEにコンテナが積載されているか否か、及びコンテナの物理的寸法のようなファクタに依存して異なるとすることができる。次に、データ矛盾検出処理は、換算表(例えば、表1)内で次式を満たすいずれかの直交座標ロケーション(x,y,z)に関して直交座標ポジションを検索する。
px−xb1−(幅/2)≦x≦px+xb2+(幅/2)、かつ
py−yb1−(長さ/2)≦y≦py+yb2+(長さ/2)
ここで、幅、長さ、及び高さは、セルロケーションの幅、長さ、及び高さである。図8Aに示しているこの特定の例では、HEが列101、間口24内のあらゆるコンテナから分離しており、区域([px−xb1,px+xb2],[py−yb1,py+yb2])が妥当なセルロケーションに対応しないので、検索はいかなる結果ももたらされない。それに応じて、データ矛盾検出処理は、段階708においていかなる移動違反も発生していないと結論付け、いかなるエラーも報告することなく段階608に抜ける。その後に、処理は段階612に続き、データベースを更新する。
【0055】
HEが移動し続け、今度は図8Bに示している列101、間口24内のコンテナ区域内にあるポジションに存在すると仮定する。この時間インスタンスにおいて生成される新規在庫データ記録は、今度は新規ロケーション(px,py,pz)、及び同じく事前設定閾値よりも大きくHEが移動中であることを示す新規速度vxを含む。ここでもまた、エラー検出モジュール302は、段階702において車両移動イベントが発生したと判断する。次に、エラー検出モジュールは、移動違反が発生したか否かを判断する3段階手順を辿り、すなわち、(1)処理は、換算表(例えば、表1)内で対応するセルロケーションに関して直交座標ポジションを検索し、(2)次に、検索は、(列101、間口24、枠C、段1から段4)及び(列101、間口24、枠B、段1から段4)をもたらし、(3)次に、処理は、これらのセルロケーション(列101、間口24、枠C、段1から段4)及び(列101、間口24、枠B、段1から段4)に対応する在庫データに関して在庫追跡データベース114に照会する。
【0056】
在庫追跡データベース114が、指定されたセルロケーションにコンテナを示すいかなる記録も含まなかった場合には、照会は、いかなる結果も戻さないことになるか、又は一部の在庫追跡システムでは、照会は、ロケーションが非占有であることを示す記録を戻すことになる。次に、エラー検出モジュール302は、いかなる移動違反も発生していないと結論付け、いかなるエラーも報告せずに段階608に抜ける。在庫追跡データベース114が、指定されたセルロケーションに配置された2つのコンテナ、例えば、(列101、間口24、枠C、段1)にあるコンテナA及び(列101、間口24、枠B、段1)にあるコンテナBが存在することを示すデータ記録を有した場合には、照会は、対応する2つの在庫データ記録をもたらすことになる。照会結果に従ってエラー検出モジュール302は、そこにコンテナが存在し、従って、移動違反が発生したと結論付ける。次に、エラー検出モジュール302は、更に別の処理に向けて段階710において2つの在庫データ記録を読み取る。その後に段階712において、エラー検出モジュール302は、コンテナA及びBの各々を例えば「虚影コンテナ」としてマーク付けするように2つの在庫データ記録を変更し、新規在庫データ内に与えられたポジションの信頼性レベルに基づいてこれらのコンテナの信頼性レベルを更新する。次に、段階714において、エラーが(修正済みデータ記録と共に)報告され(例えば、エラーフラグを1に設定することにより)、エラー検出モジュールは、608から612までの段階に進む。
【0057】
図7を参照し直すと、段階704においてコンテナ集荷イベントが発生したと判断された場合には、データ矛盾検出処理は、コンテナ集荷イベントが発生する場合のエラーを検出する処理を示す図9の902から920までの段階に続く。データ矛盾検出処理は、最初にコンテナ集荷イベントに対応するエラータイプリストを提供する。図9に図示の実施形態では、エラータイプリストは、集荷に利用可能なコンテナの不在、接近不能な集荷ロケーション、及び接近不能な作業ロケーションという3つのエラータイプを含む。次に、データ矛盾検出処理は、検査処理を用いて3つのエラータイプのうちの1つのエラーが発生したか否かを調べる。
【0058】
段階902において、データ矛盾検出処理は、最初に新規在庫データによって指定されたロケーションにおいて集荷に利用可能なコンテナが存在したか否かを判断する。判断は、3つの部分段階において実施され、すなわち、(1)処理は、ポジションデータ(高さを含む)又は新規在庫データ内のセルロケーションに基づいて集荷ロケーションを識別することによって検索基準を判断し(この場合、この集荷ロケーションが検索基準を構成する)、(2)次に、処理は、判断した検索基準を用いて、識別した集荷ロケーションに対応する在庫データ記録に関して在庫追跡データベース114に照会し、(3)処理は、照会がいかなる結果も戻さなかったか又はロケーションが非占有であることを示す結果を戻した場合にいかなるコンテナも利用可能ではないと判断し、他の場合には、処理は、コンテナが利用可能であると判断する。
【0059】
段階902において、指定された集荷ロケーションにおいていかなるコンテナも集荷に利用可能ではないと判断された場合には、処理は、エラーをエラータイプと共に報告する段階908に直接進むことができ、次に、段階916における次のエラー検査段階に進み、HEが接近不能なロケーションで作業しているか否かを判断する。別の実施形態では、処理は、段階904及び906に続き、エラーデータ記録を識別して修正する。段階904において、データ矛盾検出処理は、集荷ロケーションの下のセルロケーションに対応する在庫データ記録に関しての在庫追跡データベース114の更に別の照会によって集荷ロケーションの下の非占有セルロケーションを識別する。
【0060】
新規データが正しい場合、新規データに対応するセルロケーションに加えてその下のセルロケーションが、集荷イベントの前に必ず占有されていたはずである。これらのコンテナの不在は、在庫追跡データベース114内又は新規データ内のいずれかにおけるエラーを示している。
【0061】
次に、段階906では、在庫追跡データベース114の完全性を高めるために、データ矛盾検出処理は、次に、段階904において識別したセルロケーションの占有を反映する在庫データ記録を作成する。更に、データ矛盾検出処理は、これらのコンテナを例えば「不可視コンテナ」としてマーク付けし、いかなるエラーも見つかっていない「正常」コンテナからこれらのコンテナを区別する。同じく段階906において、更にデータ矛盾検出処理は、これらの「不可視」コンテナに関する信頼性レベル(すなわち、「不可視コンテナ信頼性レベル」)を計算する。信頼性レベルの計算は、段階712に使用されるものと類似の計算式に従い、新規在庫データ内に与えられた信頼性レベルに基づいている。更に、新規データも間違いである可能性があるから、データ矛盾検出処理は、このデータもエラーを有するものとしてマーク付けする。一実施形態では、このマーク付けは、エラー、並びにエラータイプを示すエラーフラグを新規データに追加する段階を含む。
【0062】
次に、データ矛盾検出処理は段階908に進み、エラー、並びにエラータイプ、非占有セルロケーション、及び「不可視コンテナ」に対して新規作成在庫データ記録を報告する。その後に、処理は、段階916における次のエラー検査段階に進み、HEが接近不能なロケーションで作業中であるか否かを判断する。
【0063】
図10Aは、段階902から段階908において検出される可能性があるコンテナが集荷に利用可能ではなかった場合の例を示している。この例では、在庫追跡データベースが、特定のロケーションの段1に唯一のコンテナDが存在することを示しているのに対して、新規在庫データは、コンテナAがこの特定のロケーションの段4で集荷されたと報告する。相応に、エラー検出モジュール302が段階604において新規在庫データを読み取った後に、エラー検出モジュールは、図7に示している段階606におけるデータ矛盾検出処理に入る。段階702及び704を提供し、エラー検出モジュールは、コンテナ集荷イベントが発生したと判断し、次に、段階902においてコンテナが集荷に利用可能であったか否かを検査する。在庫追跡データベース内にはコンテナDしか存在しないので、このロケーションの段4に関する照会はいかなる結果も戻さず、それによっていかなるコンテナも集荷に利用可能ではなかったという結果がもたらされる。次に、段階904において、エラー検出モジュール302は、このロケーションの段1から段3に対して照会し、その結果は、このロケーションの段1にコンテナDがあることを示す1つの在庫データ記録のみを含むことになる。従って、在庫追跡データベースにより、このロケーションの段2、3、及び4は空であるが、新規データにより、段2、3、及び4は、占有されていたはずである。それに応じて、段階906において、エラー検出モジュール302は、段2、3、及び4それぞれのセルロケーションを有する3つの在庫データ記録を作成し、これらの記録の「コンテナタイプ」は、例えば、「不可視コンテナ」としてマーク付けされる。新規データによると段4におけるコンテナが集荷されているので、エラー検出モジュール302は、この集荷ロケーションに対応する新規作成データ記録を例えば過去においてのみ妥当であったことを示す「失効済み」と更にマーク付けする。代替的に、エラー検出モジュール302は、段2及び3におけるセルロケーションに関する在庫データ記録のみを作成することができる。更に、新規データも同様に潜在的に間違いである可能性があるから、このデータもデータ矛盾に起因して同様にマーク付けされる。一実施形態では、新規データは、検出されたエラーに対するエラーフラグを追加することによってマーク付けされる。
【0064】
更に、エラー検出モジュール302は、新規在庫データ内に与えられた集荷イベントの信頼性レベル又はこの信頼性レベルの関数を新規作成在庫データ記録の信頼性レベルとして割り当てることができる。その後に、データ矛盾検出処理は、段階908においてエラー、並びに新規作成データ記録を報告し、次に、次のエラー検査段階に進み、段階916においてHEが接近不能なロケーションで作業中であるか否かを判断する。
【0065】
図9を参照し直して段階910に進むと、902でコンテナが集荷に利用可能であった場合に、データ矛盾検出処理は、段階910において接近不能な集荷ロケーションというタイプのエラーが発生したか否かを判断する次のエラー検査段階に移る。すなわち、段階910において、データ矛盾検出処理は、コンテナが接近不能なロケーションで集荷されたか否かを判断する。新規在庫データが、コンテナBが段3から集荷されたことを示すが、在庫追跡データベースが、段4においてコンテナAがコンテナBの上に積み重ねられていることを示す図10Bにその例を示している。在庫追跡データベース内でのコンテナBの上のコンテナAの存在により、実際には、コンテナBは、最初にコンテナAが集荷されてしまっていない限り接近不能であったはずである。集荷されたコンテナが接近不能なロケーションにあったか否かを判断するために、データ矛盾検出処理は、最初に集荷ロケーションが最上段、すなわち、この例示的な保管施設では段4であるか否かを検査することによって検索基準を判断する。集荷ロケーションが最上段であった場合には、集荷ロケーションは接近可能であると見なされ、いかなる検索基準及びいかなる照会も必要ではなく、従って、処理は段階916に続く。他の場合には、集荷ロケーションの上方のセルロケーションが検索基準を構成し、データ矛盾検出処理は、この検索基準を更に用いて、集荷ロケーションの上方のセルロケーションに関連する在庫データ記録に関して在庫追跡データベース114に照会する。照会がいかなる結果も戻さなかったか又はいかなるコンテナも集荷ロケーションの上に存在しない結果を戻した場合には、データ矛盾検出処理は、集荷ロケーションが接近可能であると結論付けて、段階916における次のエラー検査段階に進む。図10Bに示している例では、集荷ロケーションが段3にあるから、照会は、この特定のロケーションの段4に関する。この例では、照会は、段4にコンテナAを示す在庫データ記録を戻すことになり、従って、段階910において、データ矛盾検出処理は、集荷ロケーションが接近可能ではなかったはずであると結論付け、接近不能な集荷ロケーションというタイプのエラーが発生したと結論付ける。次に、処理は、段階915においてエラーをエラータイプと共に報告する段階に進むことができる。代替的に、処理は、段階908に移る前に段階912及び段階914においてエラーデータ記録を識別して修正することができる。
【0066】
一実施形態における処理は、段階910から段階915においてデータを報告する段階に進むことができる。別の実施形態では、段階912において、処理は、更に別の処理に向けて照会からもたらされるデータ記録を読み取って段階914に進み、次に、この段階においてデータ矛盾検出処理は、例えば、在庫データ記録内のコンテナのタイプ又は特性を表すフィールド内でこれらのコンテナを「虚影コンテナ」としてマーク付けし、これらのコンテナが在庫追跡データベース内にしか存在しないことを示している。更に、段階914において、新規在庫データ内に与えられた信頼性レベルに基づいて「虚影コンテナ信頼性レベル」という名称の信頼性レベルも計算され、次に、この信頼性レベルは、これらの在庫データ記録に追加されるか、又はこれらの在庫データ記録内の元の信頼性レベルを置き換える。データ矛盾検出処理は、エラーを反映するために新規データもマーク付けし、このマーク付けは、エラー、並びにエラータイプを示すエラーフラグを新規データに追加する段階を含む。その後にデータ矛盾検出処理は、段階908においてエラータイプを含むエラーを報告し、更新した在庫データ記録を出力する。
【0067】
次に、データ矛盾検出処理は、段階916に進み、HE自体が接近不能なロケーションで作業中であるか否かを判断する。段階916における第3のエラータイプは、他の2つのエラータイプとは互いに排他的ではないので、この段階916は、前の2つのエラータイプ(すなわち、集荷に利用可能なコンテナの不在及び接近不能な集荷ロケーション)に関連する処理段階(段階902から908まで及び段階910から914まで)の後に発生する。
【0068】
図11A〜図11Dは、何故HEが接近不能なロケーションに存在する可能性があり、段階916〜920を必要とするかを示す状況を示している。図11A及び図11Bは、HEがコンテナAを正当に集荷することができる接近可能なロケーションで作業中のHEの2つの例を示している。一方、図11C及び図11Dは、トップピックであるHEが、コンテナE及びFの存在に起因して、図11Aに示しているようにリーチスタッカー(異なるタイプのHE)が到達することができるコンテナAに到達することができないことを示している。
【0069】
一実施形態では、HEが接近不能なロケーションで作業中であるか否かを識別するために、各タイプのHEに対してクリアランス区域が定められる。そのようなクリアランス区域は、HEコントローラの到達区域メモリ内で、集荷中のコンテナのロケーションを基準点とする矩形区域、円形区域、又は他の形状の区域によって表すことができる(HEの形状に依存して)。代替的に、クリアランス区域は、集荷中のコンテナのロケーションを基準とするセルロケーションによって直接表すことができる。このクリアランス区域内のセルロケーションは検索基準を構成し、データ矛盾検出処理は、この検索基準を用いて、クリアランス区域内のロケーションに対応する在庫データに関して在庫追跡データベース114に照会する。照会がいかなる記録ももたらされなかったか又はいかなるコンテナもクリアランス区域に存在しないことを示す記録をもたらされた場合には、段階916において、HEは接近不能なロケーションで作業していないと判断され、データ矛盾検出処理は、エラーを更に報告することなく段階608に抜ける。しかし、段階916における照会が、クリアランス区域内のセルロケーションにコンテナが存在することを示す結果をもたらされた場合には、データ矛盾検出処理は、HEが接近不能なロケーションで作業中であると結論付けて段階918に進み、更に別の処理に向けてこれらの記録を読み取って受け取り、すなわち、段階918では、接近不能性問題をもたらすあらゆるコンテナが識別される。段階918に進む代わりに、データ矛盾検出処理は、段階918及び920を省略して、エラーをエラータイプと共に報告する段階921に直接進むことができる。
【0070】
段階920において、次に、データ矛盾検出処理は、段階918で識別されたコンテナをこれらの在庫データ記録内でコンテナのタイプ又は特性を表すフィールド内で、これらのコンテナが在庫追跡データベース内にしか存在しないことを示す「虚影コンテナ」としてマーク付けする。更に、段階920では、新規在庫データ内に与えられた信頼性レベルに基づいて「虚影コンテナ信頼性レベル」という名称の信頼性レベルも計算され、次に、この信頼性レベルは、これらの在庫データ記録に追加されるか、又はこれらの在庫データ記録内の元の信頼性レベルを置き換える。その後に、段階921において、データ矛盾検出処理は、エラータイプを含むエラーを報告し、更新された在庫データ記録を出力し、608から612までの段階に抜ける。
【0071】
図7を参照し直すと、段階702から706までを通じてコンテナ降荷イベントが検出された場合には、処理は、図12の1202から1220までの段階に続く。この実施形態では、コンテナ降荷イベントに対応するエラータイプの組は、空中降荷ロケーション、占有済み降荷ロケーション、及び接近不能な作業ロケーションを含む。この場合、データ矛盾検出処理は、検査処理を用いてこれらの3つのエラータイプのうちのいずれかのデータエラーが発生したか否かを調べる。第1のエラー検査段階は、段階1202で始まり、この段階では、処理は、降荷ロケーションが空中であったか否かを判断する。このエラータイプは、直下に必要な物理的支持を与えるコンテナが存在することを在庫追跡データベースが反映していなかったセルロケーションにコンテナが降荷された又は荷置きされた場合を指す。このエラータイプに基づいて、データ矛盾処理は、最初に新規データ内で指定された降荷ロケーションの下のセルロケーションを含む検索基準を判断する。降荷ロケーションが段1であり、すなわち、直接に地面の上に収まるベース段である場合には、降荷ロケーションの下にはいかなるセルロケーションも存在せず、データ矛盾検出処理は、降荷ロケーションが空中ではないと直接結論付け、次のエラー検査段階に向けて段階1210に進む。他の場合には、検索基準は、降荷ロケーションの下の全てのセルロケーションを含み、データ矛盾検出処理は、この検索基準を用いて、これらのセルロケーションに関連するあらゆる在庫データ記録に関して在庫追跡データベース114に照会する。照会が、降荷ロケーションの下のセルロケーションのいずれかに対していかなる結果も戻さなかったか又は在庫追跡データベース114が、降荷ロケーションの下の指定ロケーションにコンテナを示すいかなるデータ記録も含まないことを示す結果を戻した場合には、データ矛盾検出処理は、降荷ロケーションが全く空中であり、エラーが発生したと結論付ける。一実施形態では、データ矛盾検出処理は、段階1204及び1206を省略して段階1208に進むことができ、エラーをエラータイプ(すなわち、空中降荷ロケーション)と共に報告する。代替的に、処理は、段階1208でエラーを報告する前に段階1204及び1206に進む。
【0072】
段階1204において、データ矛盾検出処理は、照会結果に基づいて降荷ロケーションの下の非占有セルロケーションを識別する。より具体的には、段階1204は、HEが定めた降荷ロケーションをデータベース記録と比較することによって降荷ロケーションの下の空のセルロケーションを識別する。新規在庫データが正確であり、従って、降荷ロケーションの下には実際にコンテナが必ず存在すると仮定すると、データ矛盾検出処理は、段階1206において、降荷ロケーションの下の非占有セルロケーションの各々に対して新規在庫データ記録を作成し、これらのロケーションの各々にコンテナを割り当てる。これらのコンテナは、以前には在庫追跡データベースに対して不可視であったので、例えば、それぞれのデータ記録内の「コンテナタイプ」フィールド内に「不可視コンテナ」としてマーク付けされる。更に、段階1206において、新規在庫データ内に与えられた信頼性レベルに基づいて「不可視コンテナ信頼性レベル」という名称の信頼性レベルも計算され、次に、この信頼性レベルは、新規作成データ記録の各々の中に含められる。次に、段階1208において、データ矛盾検出処理は、エラーをエラータイプと共に報告し、新規計算信頼性レベルを含む新規作成データ記録を出力する。その後に、データ矛盾検出処理は、段階1216において、HEが接近不能なロケーションで作業中であるか否かを判断する次の検査段階に進む。
【0073】
図13Aは、降荷ロケーションが空中である例を示している。左に示しているように、在庫追跡データベースは、コンテナDが段1にあり、コンテナDの上にはいかなるコンテナも位置しないことを示している。新規在庫データは、コンテナAが段4に降荷されたことを示している。この場合データ矛盾検出処理は、段4における降荷ロケーションの下には3つのセルロケーション(段1、段2、及び段3)が存在することを識別し、これらの3つのセルロケーションに対して在庫追跡データベースに照会する。照会は、段1におけるコンテナDを示す1つのデータ記録だけを戻し、従って、照会結果内には段2及び段3に関するいかなるデータ記録も出現しない。従って、段階1202において、データ矛盾検出処理は、降荷ロケーションが空中であると結論付け、段2及び段3における2つのセルロケーションが、段階1204における更に別の処理を必要とすることを識別する。それに応じて、段階1206において、データ矛盾検出処理は、1つが段2に対して、もう1つが段3に関する2つの新規データ記録を作成し、2つの新規作成データ記録において2つのコンテナに「不可視コンテナ」に設定された「コンテナタイプ」属性を割り当て、更に信頼性レベルを計算して2つのデータ記録内に含める。次に、データ矛盾検出処理はエラーを報告し、新規計算信頼性レベルを含む2つの新規作成データ記録を出力し、段階1216に抜けて、HEが接近不能なロケーションで作業中であるか否かを調べる。
【0074】
図12の段階1202を参照し直すと、降荷ロケーションが空中ではなかった場合には、処理は、次のエラー検査段階に向けて段階1210に続き、占有済み降荷ロケーションというエラータイプのエラーが発生したか否かを判断する。段階1210では、データ矛盾検出処理は、在庫追跡データベース114内で降荷ロケーションが別のコンテナにおって既に占有済みであるか否かを判断する。この判断を行うために、データ矛盾検出処理は、最初に新規データ内の降荷ロケーションに基づいて、降荷ロケーションを含み、かつ降荷ロケーションが最上段ではなかった場合には降荷ロケーションの上方のセルロケーションを含む検索基準を判断する。次に、データ矛盾検出処理は、この検索基準を用いて、検索基準内に指定されたこれらのセルロケーションに関連する在庫データ記録に関して在庫追跡データベースに照会する。照会が、いかなる結果ももたらさないか、又は降荷ロケーション又は降荷ロケーションの上方のロケーションにいかなるコンテナも示さない結果をもたらす場合には、データ矛盾検出処理は、降荷ロケーションが占有済みではないと結論付け、段階1216における次のエラー検査段階に進む。他の場合には、データ矛盾検出処理は、降荷ロケーションが既に占有済みであり、従って、このエラータイプのエラーが発生したと結論付ける。一実施形態では、データ矛盾検出処理は、段階1212及び1214を省略して段階1215に進んでエラーをエラータイプと共に報告し、別の実施形態では、段階1215でエラーを報告する前に段階1212及び1214に続く。
【0075】
段階1212において、データ矛盾検出処理は、更に別の処理に向けて照会結果内のデータ記録を読み取って取得する。従って、降荷イベントを示す新規在庫データが正しい場合、照会結果内のデータ記録は必ずエラーを有するはずであり、その逆も同様である。すなわち、新規在庫データと照会結果内のデータ記録の両方が間違いである可能性があり、従って、これらの両方がエラーデータ記録として取り扱われる。次に、データ矛盾検出処理は、段階1214において、照会結果から導出されたデータ記録の各々における「コンテナタイプ」属性を「虚影コンテナ」に修正する。更に、データ矛盾検出処理は、降荷イベントの信頼性レベルに基づいてデータ記録の各々に関する新規信頼性レベルを計算し、次に、この新規信頼性レベルは、対応するデータ記録に追加されるか、又は元来データ記録内にある信頼性レベルを置き換える。データ矛盾検出処理は、エラーを反映するために新規データをマーク付けし、新規データにエラーフラグを追加することができる。その後に、データ矛盾処理は、段階1215においてエラーを報告し、新規計算信頼性レベルを有する修正済みデータ記録を出力し、1216における次のエラー検査段階に進む。
【0076】
図13Bは、降荷ロケーションが既に占有済みである場合の例を示している。左に示しているように、在庫追跡データベースは、互いに積み重ねられた4つのコンテナが存在し、特定のロケーションの4つ全ての段を占有することを示している。新規在庫データは、別のコンテナがこの特定のロケーションの段4に荷置きされる降荷イベントが発生したことを示している。それに応じて、段階1202において、データ矛盾検出処理は、段4の下のセルロケーションが全て占有済みであるから、降荷ロケーションが空中ではないと判断する。次に、データ矛盾検出処理は、段階1210において降荷ロケーション(すなわち、この特定のロケーションの段4)におけるデータ記録に関して在庫追跡データベースに照会し、この照会は、コンテナAが既に降荷ロケーションにある(降荷イベントの前に)ことを示すデータ記録をもたらす。従って、データ矛盾検出処理は、降荷ロケーションが占有済みであったと結論付け、段階1212及び1214に進んでコンテナAを「虚影コンテナ」としてマーク付けし、その信頼性レベルを更新する。その後に、データ矛盾検出処理は、エラーを報告し、新規計算信頼性レベルを有する修正済みデータ記録を出力し、段階1216における次のエラー検査段階に進んでHEが接近不能なロケーションで作業中であるか否かを判断する。
【0077】
図12を参照し直すと、段階1210において降荷ロケーションが非占有であると判断されたか、又は段階1208又は1215においてエラーが発生した場合には、データ矛盾検出処理は、段階1216に進んでHEが接近不能なロケーションで作業中であるか否かを判断する。この判断及びその後の段階1218から1221は、段階916から921に関わる処理と同様であり、従って、これらに対しては、ここでは再述しない。
【0078】
図14は、在庫エラー、特に、コンテナ輸送ヤード内でのコンテナのロケーションにおけるエラーを検出するためのカメラを利用したエラー検出を使用する在庫追跡及び管理システムを示している。図3に示している構成要素に加えて、このシステムは、カメラ1402及び画像処理モジュール1404を更に含む。カメラ1402は、単レンズカメラ、2つ又はそれよりも多くのレンズを有するステレオカメラ、又は各々がステレオカメラとして機能する、単レンズカメラの組とすることができる。カメラ1402は、コンテナ輸送ヤード内の固定のロケーション(例えば、選択された照明柱)に設置することができる。各カメラ(又はカメラの各組)は、ヤードの指定の区域に向けて位置決めすることができ、固定角度で網羅することになる区域よりも広い区域を網羅するために、事前設定範囲で回転させることができる。これらのカメラ1402は、コンテナ輸送ヤードにわたって適正に分散されると、ヤード全体を走査することができ、通信ネットワーク108を通じてアプリケーション/データベースインタフェース110に画像を提供することができる。アプリケーション/データベースインタフェース110は、画像を画像処理モジュール1404に出力し、画像処理モジュール1404は、画像を処理してセルロケーションが占有済みであるか否かを判断し、それに従って在庫検証データを生成する。生成された在庫検証データは、次に、エラー検出モジュール302に送られ、エラー検出モジュール302は、エラー検出に向けて在庫検証データを在庫追跡データベース114内のデータ記録と比較する。アプリケーション/データベースインタフェース110は、オペレータがヤード内での作業及び行動をモニタするために、これらの画像をディスプレイ上に表示することができる。
【0079】
図15は、カメラ1402からの画像に基づいて在庫エラーを検出する処理を示す流れ図である。処理は、毎日特定の時刻に実施されるように設定することができ、いずれかの時刻にオペレータが開始することができ、又は更に実時間に実施することができる。段階1502において始まり、画像処理モジュール1404は、アプリケーション/データベースインタフェース110からカメラ画像を受け取り、コンテナの認識に向けて画像を処理する。例えば、コンテナを特定の寸法を有する立方体又は円柱(例えば、タンクコンテナでは)として処理することによってコンテナを認識するように、当業者に公知の様々な画像処理技術及びパターン認識技術を使用することができる。そのような技術を使用することにより、画像処理モジュール1404は、画像内のコンテナを認識するのみならず、画像内のその(相対)ロケーション(地面の上の高さを含む)も認識し、この場合、各ポジションは、コンテナの中心のポジションである。更に、画像処理モジュール1404は、認識したコンテナの属性を識別することができ、そのような属性は、コンテナの色、タイプ、出所、製造業者、更に、コンテナIDを含む。
【0080】
コンテナが画像内のその(相対)ポジションと共に認識された状態で、更に、画像処理モジュール1404は、段階1504においてコンテナ輸送ヤード内でのコンテナのロケーションを判断する。一実施形態では、画像処理モジュール1404は、画像を供給するカメラのロケーション、画像が撮影された時点でのカメラの走査角度、及び画像内でのコンテナの相対ポジションに基づいてコンテナのロケーションを判断する。より具体的には、各カメラは固定のロケーションにあるから、カメラのロケーション及び走査角度に基づいて、その視野(すなわち、画像内に捕捉される区域)を判断することができる。その結果、視野をコンテナ輸送ヤードに関連付けるロケーションプロフィールをいずれかを特定の走査角度にある各カメラに対して事前判断することができる。そのようなロケーションプロフィールは、一方の列が、輸送ヤード内のセルロケーション(例えば、列101、間口21、枠A、段1)を含み、他方の列が、画像内で対応するロケーション(例えば、px、py、及びpz)を含む2列の換算表によって表すことができる。更に、カメラの走査範囲で複数の(等しい間隔の)走査角度を選択することにより、カメラに対して複数のロケーションプロフィールを構成することができる。これらの走査角度の間隔は、いずれかの走査角度で撮影された画像を最も近い事前選択走査角度に対応するロケーションプロフィールを用いてコンテナ輸送ヤードに正しくマップすることができるように比較的小さいものでなければならない。いずれかの走査角度で撮影された画像をマップする前に、画像処理モジュール1404は、画像を回転させて、回転された画像が、最も近い事前選択走査角度で撮影された画像を近似するようにすることができる。その後に、画像処理モジュール1404は、ロケーションプロフィールに基づいてコンテナ輸送ヤード内でのコンテナのロケーションを判断する。
【0081】
別の実施形態では、画像処理モジュール1404は、画像内の目印を識別して、認識した各コンテナに対してコンテナ輸送ヤード内で対応するロケーションを判断する。目印は、地面の上の線マーカ、隣接の照明柱、及び視野内の建築物のような他の固定物を含むことができる。コンテナ輸送ヤード内でのこれらの目印のロケーションは、事前判断することができるので、輸送ヤード内で認識されたコンテナのロケーションを判断するのにこれらの目印を基準点として使用することができる。
【0082】
両方の段階1502及び1504までに、画像処理モジュールは、各画像内でコンテナを認識し終わり、輸送ヤード内でのそのロケーションを判断し終わっている。更に、コンテナ認識においてより高い精度を獲得するように認識結果の整合性を更に評価するために、画像処理モジュール1404は、1つのカメラによって撮影された複数の画像からのコンテナ認識結果、並びに複数のカメラによって撮影された画像からの認識結果を比較して相関付けることができる。
【0083】
その後に、段階1506において、画像処理モジュール1404は、コンテナ認識及び認識したコンテナのロケーションに基づいて在庫検証データを生成する。例えば、各カメラは、所定の指定区域を走査するか又は網羅するので、画像処理モジュール1404は、各カメラに対して在庫検証データに対する所定のテンプレートを有することができる。テンプレートは、1つの列が指定区域内での全てのセルロケーションを列記し、別の列が、対応するセルロケーションでコンテナが検出されるか否かを示すためのものである2列の表程度の単純なものとすることができる。画像処理モジュール1404は、段階1502におけるコンテナ認識及び段階1504におけるロケーション判断に基づいて第2の列を埋める。表は、認識された各コンテナの属性及び表の各行エントリに関するタイムスタンプのような他の情報に対する列を含むように拡張することができ、そのようなタイムスタンプは、対応する画像が撮影された時刻とすることができる。次に、画像処理モジュール1404は、段階1506においてこれらの表を在庫検証データとしてエラー検出モジュール302に報告する。任意的に、画像処理モジュール1404は、各カメラに関する表を単一の表に組み合わせて、この単一の表をエラー検出モジュール302に報告することができる。
【0084】
段階1508において、エラー検出モジュール1404は、画像処理モジュール1404からの在庫検証データを処理して在庫追跡データベース114内の在庫エラーを検出する。エラー検出モジュール302は、最初に在庫検証データ内のセルロケーションに対応するデータ記録に関して在庫追跡データベース114に照会し、次に、これらの2つの間のあらゆる不一致に関して照会結果を在庫検証データと比較する。在庫検証データによるとあるセルロケーションは占有されているが、照会結果が、このセルロケーションにいかなるコンテナも存在しないことを示す場合には、このロケーションにおけるコンテナは、欠損コンテナ又は在庫追跡データベース114に対して不可視のコンテナと見なされる。同様に、在庫検証データによるとあるセルロケーションは占有されていないが、照会結果が、そこにコンテナが存在することを示す場合には、コンテナは、在庫追跡データベース114内にのみ存在するもの又はデータベース内の「虚影」コンテナと見なされる。更に、エラー検出モジュール302は、エラー検出に向けて在庫検証データ内のコンテナ属性を照会結果内のコンテナ属性と更に比較することができる。例えば、在庫検証データに従って画像処理モジュール1404があるセルロケーションにおいて20フィートのコンテナを認識したが、照会結果が、このセルロケーションにあるコンテナが40フィートのコンテナであることを示す場合には、エラー検出モジュール302は、このセルロケーションにおいて属性の不一致を検出する。不一致の3つ全ての場合が、在庫追跡データベース114内のエラーを示している。
【0085】
段階1510では、エラー検出モジュール302は、エラー検出に従って在庫データを更に作成又は修正する。より具体的には、エラー検出モジュール302は、欠損コンテナが識別された各セルロケーションに対して在庫データ記録を作成し、更にこの新規作成データ記録内のコンテナ属性(例えば、「コンテナタイプ」フィールド)をマーク付けして(例えば、「不可視コンテナ」として)、コンテナが在庫追跡データベース114に対して不可視であったことを示す。「虚影」コンテナが識別されるセルロケーションでは、エラー検出モジュール302は、例えば、コンテナ特性を「虚影コンテナ」とマーク付けすることにより、照会結果内の対応するデータ記録をエラーを反映するように修正する。不整合属性を有するセルロケーションに対して、エラー検出モジュール302は、在庫検証データ内の属性(画像処理モジュールによって認識された属性)を追加するように照会結果内の対応するデータ記録を修正することができる。更に、エラー検出モジュール302は、画像処理モジュール1404に関連付けられた所定の信頼性レベルを用いて信頼性レベルをデータ記録に追加することができる。
【0086】
その後に、段階1512において、エラー検出モジュール302は、更新に向けて新規作成データ記録及び修正済みデータ記録を在庫追跡データベース114に報告する。
【0087】
別の実施形態では、HE又はモニタリング車両上に設けられたカメラを単独又は固定のロケーションに設けられたカメラとの併用いずれかに使用することができる。これらのカメラはモバイルであるから、画像処理モジュール1404は、目印を認識し、目印のロケーションを基準として使用することにより、認識したコンテナのロケーションを判断する。代替的に、画像処理モジュール1404は、コンテナのロケーションを判断するためにカメラを載置する車両のポジションを使用することができる。その後に、エラー検出モジュール302は、図15を用いて上述のように、エラーを検出して在庫データを作成又は修正する。
【0088】
図16は、在庫追跡システムに関連付けられた在庫追跡データベース内のエラーを検出するために在庫追跡システムとインタフェースで接続するカメラを利用した在庫エラー検出システムの実施形態を示している。カメラを利用した在庫エラー検出システムは、カメラ1402、個別の有線通信ネットワーク及び/又は無線通信ネットワーク1602、画像処理モジュール1404、並びにエラー検出モジュール302を含む。通信ネットワーク1602は、カメラによって生成された画像を画像処理モジュール1404に送信するために、カメラ1402を画像処理モジュール1404と直接接続し、従って、画像処理モジュール1404は、図14に示しているようにアプリケーション/データベースインタフェース110を通じて画像を受け取る必要がない。従って、カメラを利用した在庫エラー検出システムは、在庫追跡システムとインタフェースで接続する独立したシステムになり、このシステムは、一部の用途では好ましいとすることができる。画像処理モジュール1404及びエラー検出モジュール302内に関わる処理は図15に示す処理と同様であり、これに対しては図14の在庫追跡及びエラー検出システムと共に上述している。
【0089】
図17は、本発明の実施形態に従って含められた自動在庫エラー検出構成要素及び在庫エラー訂正構成要素を有する在庫追跡及び管理システムのブロック図を示している。図1に示している一般的な在庫追跡及び管理システム内の構成要素、並びに在庫データの妥当性を調べ、在庫追跡データベース114内のエラーを自動的に検出するエラー検出モジュール302に加えて、このシステムは、エラー検出モジュール302からエラー検出結果を受け取って検出エラーを訂正するエラー訂正モジュール1702を更に含む。エラー訂正モジュール1702の詳細内容に対しては、図18から図23に関連して後で説明する。エラー訂正処理では手動介入は必要ではないが、エラー訂正モジュール1702は、オペレータが望む場合には、オペレータがエラー訂正処理に手動で介入することを可能にすることができる。
【0090】
図18は、エラー訂正モジュール1702によって実行されるエラー訂正処理の一実施形態を示す流れ図である。図18では、最初に段階1802において、エラー訂正処理は、エラー検出モジュール302から新規エラーが報告されたか否かを検査する。図6を用いて上述のように、エラー検出モジュール302は、段階606においてデータ矛盾を検査してエラーを検出し、段階606の出力は、データ矛盾/エラーが検出されたか否かを示す少なくとも1つの変数(例えば、error_detected_flag)を含む。例えば、処理は、段階606において、ブール変数、例えば、error_detected_flagをエラーが検出された場合に1に設定するか又はいかなるエラーも検出されなかった場合に0に設定する。段階610において、エラー検出モジュールは、この変数を「不可視」コンテナに関するあらゆる新規作成データ記録、「虚影」コンテナに関するあらゆる訂正データ記録、並びに段階602において受け取った新規データ(いずれかのエラーが検出された場合のエラーの原因である)と共に出力することによってエラーを報告する。従って、エラーの検出を示す変数(例えば、error_detected_flag)の値を調べることにより、エラー訂正処理は、エラー検出モジュール302によっていずれかのエラーが報告されたか否かを判断することができる。
【0091】
報告されたいかなる新規エラーも存在しない場合には、エラー訂正処理は終了し、段階1802において次の処理サイクルが再開して、新規エラーが報告されたか否かを再度検査するまで待機する。報告されたエラーが存在する場合は(すなわち、エラー検出モジュールがエラーを検出する)、エラー訂正処理は段階1804に続き、エラー検出モジュール302からの対応するエラー検出結果を読み取る。段階610で上述したように、関連エラー検出結果は、「不可視」コンテナに関する新規作成データ記録、「虚影」コンテナに関するデータ記録、並びに段階602において受け取られた新規データを含む。
【0092】
その後に、段階1806において、エラー訂正処理は、段階1808におけるエラー候補の検索に使用されることになる検索基準を判断する。一般的にエラーは、コンテナポジションの推定(時に取り扱い機器のポジションを推定することによる)における不正確性に起因してもたらされ、従って、一般的に、検索基準は、エラー検出結果に関連するコンテナセルロケーションを取り囲むコンテナセルロケーションを含む。例えば、エラー検出モジュール302からのエラー検出結果が、コンテナセルロケーション(列111、間口24、枠B、段4)において在庫追跡データベース114に対して不可視のコンテナを含む場合には、検索基準は、直近のコンテナセルロケーション(列111、間口24、枠A、段4)、(列111、間口24、枠C、段4)、(列111、間口23、枠B、段4)、(列111、間口23、枠B、段4)、(列111、間口25、枠B、段4)、及び(列111、間口24、枠B、段3)を含むことができる。検索基準は、測位システムの精度に基づいて、(列111、間口22、枠B、段4)のような更に離れたコンテナセルロケーションまで拡張することができる。高精度の高さ測定を可能にするために付加的な高さセンサが使用される場合には、検索基準は、エラー検出結果内のセルロケーションと同じ段上に存在するコンテナセルロケーションのみを含むとすることができる。
【0093】
段階1808において、エラー訂正処理は、段階1806で判断された検索基準を用いて在庫追跡データベース114に照会し、次に、照会結果からエラー候補を判断する。一実施形態では、エラー候補は、以前に検出されたエラー又はエラーデータ記録しか含まず、段階1808の目的は、検索基準内に指定されたコンテナセルロケーションにいずれかの「不可視」コンテナ又は「虚影」コンテナが存在するか否かを明らかにすることである(例えば、照会結果内のコンテナ属性[例えば、「コンテナタイプ」フィールド]を調べることにより)。エラー検出モジュール302が、データエラーの検出時に在庫追跡データベース114内に表を作成して、これらの表内にエラーデータ記録を記録する(例えば、図6の段階612において)場合には、検索基準内に指定されたコンテナセルロケーションに(以前に検出された)エラーデータ記録が存在するか否かを明らかにするために、これらの表に対して照会を実施することができる。この実施形態の例に対して、図19を用いて後で説明する。別の実施形態では、エラー候補は、通常のデータ記録も含み、図20から図23と併せて例を以下に説明する。
【0094】
その後に、段階1810において、エラー訂正処理は、照会がいずれかのエラー候補をもたらすか否かを調べる。いかなるエラー候補も見つからなかった場合には、エラー訂正処理は段階1820に続き、訂正例外処理を実行する。この場合、訂正例外処理は、例外フラグを例外がエラー候補の不在に起因することを示す値に設定する。次に、段階1824では、この例外フラグを検出エラーに対応するデータ記録に追加することができる。代替的に、検出エラー及び例外フラグを記録するエラー訂正ログファイルを作成することができる。次に、在庫追跡データベース114が、適宜更新されることになる。一部の他の実施形態では、段階1810においていかなるエラー候補も見つからなかったと判断された場合には、エラー訂正処理は段階1806に戻ることができ、例えば、検出エラーに対応するコンテナセルロケーションから更に離れたコンテナセルロケーションを含めることによって検索基準を拡張し、段階1808において別の検索を実施する。エラー訂正処理は、(a)エラー候補が見つかるか、又は(b)所定の条件が満たされる(例えば、検索範囲に対する閾値に達する)まで段階1806から1810の間で反復することができる。エラー訂正処理は、(a)の場合は段階1812に続き、(b)の場合には、1820に続き、上述の例外処理を実行する。
【0095】
照会が1つ又はそれよりも多くのエラー候補をもたらした場合には、エラー訂正処理は、段階1810から段階1812に続き、各エラー候補を評価し、更にそれが現在検出されているエラーを補正するのに使用することができるマッチである可能性を評価する。評価は、各候補に対して信頼性/矛盾指標を計算する段階を含むことができる。エラー検出結果内の各エラーデータ記録に対して、エラー訂正処理は、データ記録自体の信頼性レベル、エラー候補の信頼性レベル、データ記録のポジションからエラー候補のコンテナセルロケーションまでの距離、及びエラー候補のロケーションからデータ記録のコンテナセルロケーションまでの距離に基づいて、データ記録に対応するエラー候補の信頼性指標を計算する。一実施形態では、信頼性指標は、Conferror candidate及びConfdata recordが、それぞれエラー候補の信頼性レベル及びデータ記録(エラー検出結果内の)の信頼性レベルであり、kが上述の2つの距離に基づく重み係数である時に、k×Conferror candidate×Confdata recordとして計算される。例えば、11がデータ記録のポジションからエラー候補のコンテナセルロケーションの中心までの距離であり、12がエラー候補のロケーションからデータ記録のコンテナセルロケーションの中心までの距離であり、Lが正規化を目的とする所定の数値である時に、k=L/(l1×l2)である。例えば、Lは、コンテナ幅1つ分の二乗として定めることができる。従って、これらの2つの距離が短い程、重み係数kは大きく、信頼性指標は高い。
【0096】
その後に、段階1814において、エラー検出結果内の各データ記録に対して、その対応するエラー候補の計算信頼性指標が分類され、最も高い信頼性指標(又は最も小さい矛盾指標)に対応するエラー候補が、このデータ記録に対する潜在的マッチとして選択される。エラー検出結果内のデータ記録のうちのいずれかに対して、最も高い信頼性指標をもたらすエラー候補の個数が1つよりも多い場合には、1つのデータ記録に対して複数の潜在的マッチが見つかり、エラー訂正処理は、これらの潜在的マッチのうちのどれをエラー訂正のためのマッチとすることができるかの判断を行うことができない。この場合、エラー訂正処理は、段階1816においてマッチを未確立と見なし、段階1820における訂正例外処理に進む。それに応じて、訂正例外処理は、例外フラグを複数の潜在的マッチが見つかったことを示す値に設定する。次に、エラー訂正処理は段階1824に進み、例外フラグでデータエラー記録を更新し、エラー訂正ログを更新する。
【0097】
段階1816を参照し直すと、エラー検出結果内のデータ記録の各々に対して1つの潜在的マッチしか見つからなかった場合には、エラー訂正処理は段階1818に続き、各データ記録に対して対応する最も高い信頼性指標が十分に高いか否かを一般的にこの指標を所定の閾値と比較することによって判断する。エラー検出結果内のデータ記録のいずれかにおいて、最も高い信頼性指標が依然として十分に高く(すなわち、所定の閾値よりも大きく)なかった場合には、エラー訂正処理は段階1820に移り、例外フラグを潜在的マッチが、十分に高い信頼性指標を提図示しないことを示す値に設定する。次に、エラー訂正処理は段階1824に進み、エラーデータ記録を例外フラグで更新し、エラー訂正ログを更新する。代替的に、エラー訂正処理は、訂正例外処理に向けて段階1820に直接移る代わりに、段階1806に戻ることができ、検索基準を拡張して段階1806から段階1818の反復を始める。エラー訂正処理は、(a)最も高い信頼性指標が十分に高いか又は(b)所定の条件が満たされる(例えば、検索範囲に対する閾値に達する)までこの反復を繰り返すことができる。(a)の場合には、エラー訂正処理は段階1822に続き、(b)の場合には、エラー訂正処理は段階1820に続き、上述の訂正例外処理を実行する。
【0098】
エラー検出結果内のデータ記録の全てに対して最も高い信頼性指標が十分に高い場合には、データ記録の各々に対する潜在的マッチは、現在検出されているエラーを訂正するための対応するデータ記録のマッチと見なされる。次に、エラー訂正処理は段階1822に続き、現在検出されているエラーのデータ記録の各々をその対応するマッチのデータ記録と融合することによって実際の訂正を実施する。上述の実施形態では、エラーを有するデータ記録(すなわち、「不可視」コンテナ又は「虚影」コンテナを含むデータ記録)のみをエラー候補とすることができ、従って、各対(データ記録とそのマッチとの)は、1つの「不可視」コンテナと1つの「虚影」コンテナとを含み、訂正は、「不可視」コンテナを「虚影」コンテナと融合する段階を含む。エラー訂正処理は、「不可視」コンテナをコピーすることによって複製データ記録を作成し、次に、この複製データ記録内のコンテナ情報及びコンテナセルロケーションを「虚影」コンテナのものに変更する。更に、エラー訂正処理は、複製データ記録が「虚影」コンテナではなく「正常」コンテナであることを示すために、複製データ記録のコンテナの「コンテナタイプ」属性を修正し、信頼性レベルを段階1814で識別した最も高い信頼性指標として更新する。次に、修正済み複製データ記録は訂正済みデータ記録になり、エラー訂正処理は、「不可視」コンテナ及び「虚影」コンテナに対応する2つのデータ記録を無効又は失効済みとしてマーク付けする。
【0099】
段階1824では、エラー訂正処理は、在庫追跡データベース114を訂正済みデータ記録で更新し、検出エラーが訂正されたことを反映するために、成功した訂正をエラー検出ログとエラー訂正ログの両方の内部に記録する。
【0100】
図19A〜図19Dは、図18のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供している。図19Aは、時刻t1におけるコンテナ降荷作業を示している。時刻t1の前には、在庫追跡データベースは、コンテナA1、A2、及びA3が、列111、間口24、枠Aの段1から段3をそれぞれ占有し、コンテナB1、B2、及びB3が、列111、間口24、枠Bの段1から段3をそれぞれ占有することを示す記録を有する。説明目的で、コンテナA1におけるようにコンテナと、ロケーションA1におけるようにコンテナセルロケーションの両方を説明するのにA1のようなラベル付けを使用する。時刻t1において、在庫追跡システムは、コンテナA4がコンテナA3のすぐ上のロケーションA4(列111、間口24、枠A、段4)に降荷されたことを検出する。この例でHE(取り扱い機器)が接近可能なロケーションで作業中である場合には、エラー検出処理は、図6、図7、及び図12に示している対応する段階を提供し、降荷ロケーション(ロケーションA4)が空中ではなく、降荷作業の前に占有されていなかったので、いかなるエラーも発生しなかったと判断する。それに応じて、エラー訂正処理は、段階1802においていかなるエラーも報告されなかったと判断し、直ちに抜けて次の処理サイクルに向けて待機する。
【0101】
その後に、時刻t2において、在庫追跡システムは、図19Bに示しているように、HEがロケーションB4(列111、間口24、枠B、段4)からコンテナを集荷したことを検出する。しかし、エラー検出処理は、図9の段階902でロケーションB4において集荷することができた、在庫追跡データベース114内に列記されたいかなるコンテナも存在しないことを識別する。集荷ロケーションの下の全てのコンテナセルロケーションを占有するコンテナ(B1、B2、及びB3)が存在するので、エラー検出処理は、段階904において集荷ロケーションが空であることを識別する。それに応じて、エラー検出処理は、段階906において、ロケーションB4にコンテナInv_B4を作成し、このコンテナが以前に在庫追跡データベース114に対して不可視であったことを示すために、このコンテナに属性(例えば、「不可視」コンテナ)を割り当て(例えば、「コンテナタイプ」フィールドを「不可視コンテナ」に設定することにより)、コンテナを集荷作業に関連付ける。
【0102】
同じく段階906において、エラー検出処理は、コンテナInv_B4を「不可視」コンテナと分類するのに十分に高い信頼性レベルが存在し、すなわち、在庫追跡データベース114は、対応するデータ記録を持たないにも関わらず、コンテナInv_B4がロケーションB4に存在することの信頼性レベルが存在すると判断する。〔0043〕で上述したように、この信頼性レベルConf(Inv_B4)は、通常は新規在庫データ内のポジションデータの信頼性の関数として計算される。最も単純な実施形態では、信頼性レベルは、ポジションデータの信頼性として設定されるか、又は計算は、コンテナInv_B4の集荷イベントの信頼性レベルを更に組み込むことができる。この例では、「不可視」コンテナとすべきコンテナB4に関する信頼性レベルであるConf(Inv_B4)が80%である(最低信頼性レベルが0であり、最高信頼性レベルが1である場合)と仮定する。次に、エラー検出処理は、段階908においてエラーをエラー訂正モジュール302に報告する。
【0103】
エラーが報告されたので、エラー訂正処理は、段階1802から段階1804に続き、この場合、コンテナInv_B4が「不可視」コンテナであることを示す新規作成データ記録と、集荷作業(コンテナInv_B4の作成をもたらす)の新規データとを含むエラー検出結果を受け取る。段階1806では、エラー検出結果に関連するコンテナセルロケーションであるロケーションB4を取り囲むコンテナセルロケーションを含めるように検索基準を判断することができる。一実施形態では、段階1808における検索の目的は、検索基準内で指定されたコンテナセルロケーション内に以前に識別されたエラーデータ記録(例えば、「不可視」コンテナ及び「虚影」コンテナを有する記録)を見つけることである。この例を単純にするために、近い枠及び間口内にいかなるコンテナも存在しなく、すなわち、列111内では間口24の枠A及び枠Bしか占有されていないと仮定する。周囲のコンテナセルロケーションにはいかなるエラーデータ記録も検出されていないので、いかなるエラー候補も見つからないことになり、エラー訂正処理は、例外処理に向けて段階1810から段階1820に続く。段階1820において、例外処理は、いかなるエラー候補も見つからなかったことを示す例外フラグをマーク付けし、段階1824において、エラー検出処理は、「不可視」コンテナB4に対応するデータ記録にこの例外フラグを追加し、及び/又は検出エラー及び例外フラグをエラー訂正ログファイル内に記録し、その後に、在庫追跡データベース114を適宜更新する。
【0104】
その後に、時刻t3において、在庫追跡システムは、ロケーションA3にあるコンテナA3が集荷されたばかりであることを検出する。ここでもまた、エラー検出処理は、図6、図7、及び図9の段階を通じてこの集荷作業を在庫追跡データベース114内に既存のデータ記録と比較する。在庫追跡データベース114は、コンテナA4が集荷ロケーション(ロケーションA3)の上のロケーションA4を占有することを示すので、段階910において、エラー検出処理は、集荷ロケーション(ロケーションA3)が、最初にコンテナA4を移動しないと接近不能なロケーションであったはずであると判断し、エラーが発生したことを示している。相応に段階912において、エラー検出処理は、集荷ロケーション(ロケーションA3)の上には1つの占有済みコンテナセルロケーション(すなわち、ロケーションA4)しか存在しないことを識別し、段階914において、コンテナA4に対応するデータ記録を修正し(例えば、「コンテナタイプ」フィールドの値を「虚影コンテナ」に変更することにより)、コンテナA4が、在庫追跡データベース114内にしか存在しない(すなわち、在庫追跡データベース内の虚影である)ことを示す。
【0105】
同じく段階914において、エラー検出処理は、コンテナA4が「虚影」コンテナであることの信頼性レベルを計算する。一実施形態では、Conf(A4)が、コンテナA4がロケーションA4に位置することの信頼性レベルである時に、信頼性レベルConf(Ghost_A4)は、(1−Conf(A4))に等しい。Conf(A4)は、時刻t1に測位システムからのポジションデータの信頼性レベル、並びに図19Aに示しているコンテナA4の降荷作業の信頼性レベルに基づいて識別されたものである。別の実施形態では、Conf(Ghost_A4)の特定は、Conf(Ghost_A4)=f(Conf(A4),Confpickup(A3))のようにコンテナA3の集荷作業の信頼性を更に組み込んでいる。例えば、コンテナA4が「虚影」ではないということは、(1)ロケーションA4におけるコンテナA4の降荷作業が真でなければならず、かつ(2)ロケーションA3におけるコンテナA3の集荷作業が偽でなければならないことを必要とするので、信頼性レベルConf(A4は虚影ではない)は、次式のように計算される。
Conf(A4は虚影ではない)=(Conf(A4)×(1−Confpickup(A3))
従って、次式が成り立つ。
Conf(Ghost_A4)=1−Conf(A4は虚影ではない)=1−Conf(A4)×(1−Confpickup(A3))
この例では、Conf(Ghost_A4)が70%であると仮定する。次に、エラー検出処理は、段階915においてエラーをエラー訂正モジュールに更に報告する。
【0106】
エラーが報告されたので、エラー訂正処理は、段階1802から段階1804に続き、この場合、コンテナA4がロケーションA4における「虚影」コンテナであることを示す新規作成データ記録を含むエラー検出結果を受け取る。段階1806では、ロケーションA4を取り囲むコンテナセルロケーションを含めるように検索基準を判断することができる。一実施形態では、段階1808における検索の目的は、検索基準内に指定されたコンテナセルロケーションで以前に識別されたエラーデータ記録(例えば、「不可視」コンテナ及び「虚影」コンテナを有する記録)を見つけることである。時刻t2(時刻t3よりも早い)においてコンテナInv_B4が「不可視」コンテナとして検出されたので、検索は、ロケーションB4に「不可視」コンテナInv_B4を示す1つのエラー候補をもたらすことになる。
【0107】
段階1812では、エラー候補(コンテナInv_B4)に関する信頼性指標をk×Conf(Inv_B4)×Conf(Ghost_A4)として計算することができ、ここで、kは、図18を用いて上述した重み付け関数である。この例は、kが1.5であるように計算されることを仮定し、従って、信頼性指標は1.5×80%×70%=84%である。
【0108】
1つのエラー候補だけが見つかったので、段階1812で計算されたそれに対応する信頼性指標は、段階1814において最も高い信頼性指標として取り扱われる。それに応じて、エラー訂正処理は、段階1816に進み、次に、1818に進む。この例では、最も高い信頼性指標が所定の閾値(例えば、0.6)よりも高いと仮定し、従って、エラー訂正処理は段階1822に続き、訂正を実施する。段階1822において、エラー訂正処理は、複製データ記録内のコンテナ情報及びコンテナセルロケーションをコンテナGhost_A4のもの及びロケーションA4にそれぞれ変更することにより、時刻t2におけるコンテナInv_B4の集荷作業に関する新しい修正済み複製データ記録を作成する。これを時刻t2においてロケーションB4におけるコンテナInv_B4ではなく実際にはロケーションA4におけるコンテナA4に発生した集荷作業を示す図19Dに例示している。従って、修正済み複製データ記録は、時刻t2における集荷作業が実際にはロケーションA4にあるコンテナA4に発生したことを示す正しいデータ記録になる。次に、エラー訂正処理は、コンテナInv_B4の集荷とコンテナGhost_A4の両方に対応するエラーデータ記録を無効とマーク付けする。段階1824では、正しいデータ記録及び修正済みデータ記録が在庫追跡データベース114に更新される。正しいデータ記録は、時刻t2においてコンテナA4が集荷されたことを示す新しい修正済み複製データ記録であり、修正済みデータ記録は、コンテナGhost_A4とコンテナInv_B4の両方が無効であることを示す無効なエラーデータ記録である。従って、t1におけるコンテナA4の降荷に対応するデータ記録及びt3におけるコンテナA3の集荷に対応するデータ記録は変更されないままに留まる、すなわち、在庫追跡データベース114内でエラーを伴わずに妥当のままに留まる。
【0109】
図20は、エラー訂正モジュール1702によって実行されるエラー訂正処理の別の実施形態を示す流れ図である。図20の実施形態は、エラー候補が、以前に検出されたエラー又はエラーデータ記録のみを含む図18に関連して説明した実施形態に基づいている。図20の実施形態は、エラー候補を新規収集の通常データ記録(すなわち、「不可視」コンテナ又は「虚影」コンテナというエラーデータ記録とは反対に、以前に検出されたエラーを含まないデータ記録)も含むように拡張する。更に、この実施形態は、より全体的な例外処理も含む。
【0110】
図20では、最初に段階2002において、エラー訂正処理は、エラー検出モジュールから新規エラーが報告されたか否かを検査する。いかなる新規エラーも存在しない場合には、エラー訂正処理は終了し、段階2002で次の処理サイクルが再度始まるのを待つ。エラー検出モジュール302によって新規エラーが報告された場合には、エラー訂正処理は、エラー検出モジュール302からエラー検出結果を読み取る。段階610で上述したように、エラー検出結果は、「不可視」コンテナに関する新規作成データ記録、虚影コンテナに関する修正済みデータ記録、並びに段階602で受け取られた新規データ(エラーの検出をもたらす)を含む。説明の目的で、新規データを第1のデータ記録とも呼び、エラー検出モジュールによって以前に作成又は修正された他のデータ記録を第2のデータ記録と呼ぶ。従って、エラー訂正処理は、段階2004において第1のデータ記録と第2のデータ記録の組とを取得する。
【0111】
例えば、第1のデータ記録及び第2のデータ記録を説明するために、図19Bに示している場合を考えると、第1のデータ記録はロケーションB4からのコンテナの集荷であり、第2のデータ記録は、不可視コンテナであるコンテナInv_B4が、集荷の前にロケーションB4に存在したことを示すようにエラー検出モジュールによって作成されたものである。図19Cに示している場合を考えると、第1のデータ記録は、ロケーションA3からのコンテナA3の集荷であり、第2のデータ記録は、コンテナA4が「虚影」コンテナであることを示す修正済みデータ記録(すなわち、エラー検出モジュールによって修正された)である。図19Cの時刻t3においてコンテナA3ではなくコンテナA2が集荷された場合には、1つがコンテナA3を「虚影」コンテナとして示し、もう1つがコンテナA4を「虚影」コンテナとして示す2つの第2のデータ記録が存在することになる。
【0112】
図20に関連して説明する実施形態では、第1のデータ記録(すなわち、段階602で受け取られる新規データ)は、それ自体が間違いである可能性があることを仮定する。従って、エラー検出モジュールによって検出されるエラーは、第1のデータ記録と第2のデータ記録の間に矛盾(すなわち、不整合)が存在することを示している。エラーを訂正するためには、エラー訂正処理は、最初に2つ(第1のデータ記録と第2のデータ記録の組)のうちのいずれがエラーによって損なわれており、訂正する必要があるかを識別する必要がある。
【0113】
ここで段階2006を参照すると、次に、エラー訂正処理は、段階2008においてエラー候補の検索に使用されることになる第1のデータ記録に対応する第1の検索基準と、1つの第2の検索基準が第2のデータ記録の各々に対応する第2の検索基準の組とを含む検索基準を設定する。各検索基準は、コンテナセルロケーション、継続時間、作業回数などうちの少なくとも1つを指定する。例えば、検索基準は、ある一定の範囲の隣接のコンテナセルロケーション、エラーが検出された時刻又はその付近の期間内に発生した作業、エラーに関連するコンテナIDに近いコンテナID、エラーに関連するコンテナ属性と類似のコンテナ属性などを含むことができる。隣接のコンテナセルロケーションは、範囲がコンテナ1つ分のサイズに設定された場合は直近のコンテナセルロケーションのみを含むことができ、又は範囲がコンテナ2つ分のサイズに設定された場合はいずれかの方向にセルロケーション2つ分の範囲にある全てのコンテナセルロケーションを含むことができる。一実施形態では、隣接のコンテナセルロケーションの範囲は、エラーに関連するポジションデータの信頼性レベルに基づいて判断され、一般的に信頼性レベルが高い程、範囲は短い。別の例として、検出されたエラーが時刻tnにおいて発生した場合には、検索基準は、エラー訂正処理が、時刻(tn−T)から時刻tnまでの期間の間に発生した作業、又は隣接のコンテナセルロケーションに発生した直近のN回の作業を検索することを必要とする場合がある。
【0114】
その後に、段階2008において、エラー訂正処理は、段階2006で判断された検索基準を用いて在庫追跡データベース114に照会し、在庫追跡データベース114からの照会結果内の全てのデータ記録を読み取る。第1の検索基準に対応する照会結果を第1の照会結果と呼び、第2の検索基準の各々に対応する照会結果を第2の照会結果と呼ぶ。次に、エラー訂正処理は段階2010に続き、いずれかの所定の例外規則が満たされるか否かを調べる。例外規則の例は、「不十分なデータ」例外、「適正結果の不在」例外、「制限区域」例外、及び類似の例外を含むことができる。「不十分なデータ」例外は、訂正に対して十分なデータを含まない照会結果を示し、(a)第1のデータ記録が集荷作業に関連するが、照会結果が、集荷ロケーションを取り囲む全てのセルロケーションが非占有であることを示す、(b)第1のデータ記録が降荷作業(又は移動違反)に関連するが、照会結果が、降荷ロケーション(又は移動ロケーション)を取り囲む全てのセルロケーションが占有されていることを示す、(c)第2のデータ記録が「不可視」コンテナを含むが、それに対応する照会結果が、この「不可視」コンテナを取り囲む全てのセルロケーションが非占有であることを示す、(d)第2のデータ記録が「虚影」コンテナを含むが、それに対応する照会結果が、この「虚影」コンテナを取り囲む全てのセルロケーションが占有されていることを示すという条件のうちのいずれかが満たされる場合に満たされる。「適正結果の不在」例外は、「虚影」コンテナ又は「不可視」コンテナのいずれもエラー候補の中に存在せず、全てのエラー候補が十分に高い信頼性レベルを有する場合に満たされる。「制限区域」例外は、所定の制限区域(一部の区域は、手動の検査又は訂正だけに制限される可能性がある)にあるコンテナセルロケーションをあらゆるエラー候補が占有する場合に満たされる。付加的な例外規則を段階2018、2020、及び2022を参照して後で説明する。
【0115】
訂正例外処理は、段階2024においてエラー検出結果内のデータ記録を訂正の例外が発生したことと共にその例外理由(すなわち、どの例外規則が満たされるか)を示すように修正する。訂正例外処理は、対応する情報をエラー訂正ログ及び/又はエラー検出ログに追加することができる。更に、訂正例外処理は、手動サポート機能が作動された場合に、オペレータからの手動サポートを組み込むことができる。そのような訂正例外処理に対しては、図24を参照して後で説明する。
【0116】
いかなる例外規則も満たされない場合には、エラー訂正処理は段階2012に続き、照会結果に基づいてエラー候補を判断する。一実施形態では、エラー候補は、エラー検出結果内の各データ記録に対して識別される。最初に、第1のエラー候補、すなわち、第1のデータ記録に対するエラー候補が、第1の照会結果に基づいて識別される。第1のデータ記録が、降荷作業又は移動イベントを示す場合には、第1のエラー候補は、周囲にある全ての非占有コンテナセルロケーション(第1のデータ記録と同じ段にある)を含み、第1のデータ記録が集荷作業を示す場合には、第1のエラー候補は、周囲にある全ての占有コンテナセルロケーション(第1のデータ記録と同じ段にある)を含む。次に、第2のデータ記録の各々に対する第2のエラー候補が識別される。第2のデータ記録が「不可視」コンテナに関連付けられた(すなわち、在庫追跡データベース114はあるロケーションにいかなるコンテナも示さないが、第1のデータ記録は、そのロケーションにコンテナがあるはずであることを示す)場合には、それに対応する第2のエラー候補は、周囲にある占有コンテナセルロケーション(「不可視」コンテナと同じ段にある)を含む。言い換えれば、この「不可視」コンテナは、実際にはその現在のロケーションを占有する可能性があるが、在庫追跡データベースは、ポジションデータのエラーに起因してそれを隣接のコンテナセルロケーションに間違って「配置」したものである。第2のデータ記録が「虚影」コンテナに関連付けられた(すなわち、第2のデータ記録が、あるロケーションにコンテナを示すが、第1のデータ記録が、そのロケーションにはコンテナがあるはずがないことを示す)場合には、それに対応するエラー候補は、周囲にある非占有コンテナセルロケーション(「虚影」コンテナと同じ段にある)を含む。言い換えれば、恐らくこの「虚影」コンテナは、そのデータ記録内で指定されたその現在のロケーションではなく隣接のコンテナセルロケーションを占有するはずである。また、第2のデータ記録が、第1のデータ記録と同じコンテナセルロケーションを共有するが、第2のデータ記録がこのセルロケーションにあるコンテナを示し、それに対して第1のデータ記録が、このセルロケーションに異なるコンテナを示す場合もある。これらのデータ記録の相違点は、これらのデータ記録のコンテナID、並びに長さ、タイプ、形状などのようなコンテナ特性におけるとすることができる。例えば、第2のデータ記録は、ロケーションAにおいて短いコンテナを示すが、第1のデータ記録は、ロケーションAにおいて長いコンテナを示している。そのような場合には、第2のデータ記録に対するエラー候補は、第1のデータ記録内で指定されたものと同じコンテナID又はコンテナ特性を共有する占有コンテナを有する周囲の占有コンテナセルロケーションを含む。別の単純な実施形態では、エラー候補は、図18を用いて上述のように、「不可視」コンテナ又は「虚影」コンテナのいずれかを含むエラーデータ記録のみを含むことができる。
【0117】
段階2014において、エラー訂正処理は、各エラー候補に対して、その候補をエラー検出モジュール302から報告されたエラーの発生源とすることができる可能性がどの程度であるかを評価する所定の計算式に基づいて信頼性指標(又は矛盾指標)を計算する。段階2012で上述したように、一実施形態では、エラー候補は、エラー検出結果内の各データ記録に対して識別され、相応に第1のデータ記録に対するエラー候補に対してかつ第2のデータ記録に対するエラー候補に対しては、信頼性レベルは異なって計算される。この実施形態では、Conffirst dataが、第1のデータ記録の信頼性レベルであり、kが、第1のデータ記録内に記録されたポジションデータ(すなわち、positionfirst data)と、一般的にセルの中心のポジションによって表されるエラー候補のコンテナセルロケーション(locationcandidate)とに基づく重み係数である時に、第1のデータ記録に対するエラー候補の信頼性指標は、k×(1−Conffirst data)と設定される。従って、重み係数は、次式のようにpositionfirst dataとlocationcandidateとの関数である。
k=f(positionfirst data,locationcandidate)
例えば、重み係数kは、d1が、第1のデータ記録のセル中心(locationfirst data)とエラー候補のセル中心(locationcandidate)との間の距離であり、d2が、第1のデータ記録のロケーション(positionfirst data)とエラー候補のセル中心(locationcandidate)との間の距離である時に、(d1/2)/d2として定めることができる。
【0118】
図21は、重み係数を計算することができる方法を示す例を示している。この図は、同じ段にある3つのコンテナセルロケーションであるロケーションA、ロケーションB、及びロケーションC、並びに測位システムによって提供されたコンテナBの報告ロケーション(図にPBと印している)の上面図を示している。第1のデータ記録が、測位システムからのポジションPBに基づくロケーションBにおける作業を示し、エラー訂正処理が、ロケーションA及びロケーションCをそのエラー候補として識別すると仮定する。従って、ロケーションAというエラー候補に対する重み係数は(a1/2)/a2であり、ロケーションCというエラー候補に対する重み係数は(a3/2)/a4である。この特定の例では、ポジションPBはCのセル中心よりもAのセル中心の近くに、セル中心a1とa3の間の距離が同じであるとすると、エラー候補Aに対する重み係数は、エラー候補Cに対する重み係数よりも大きい。言い換えれば、重み係数は、エラー候補のセル中心へのポジションデータの近接性を示す尺度である。その結果、エラー候補Aに関する信頼性レベル(a1/2/a2)×(1−Conf(B))は、エラー候補Cに関する信頼性レベル(a3/2/a4)×(1−Conf(B))よりも大きい(この場合、Conf(B)は、この例におけるConffirst dataである)。
【0119】
同様に、Conferror candidateが、エラー候補の信頼性レベルであり、kが、第1のデータ記録に対するエラー候補の信頼性レベルを計算するのに使用されるものと類似の重み係数である時に、第2のデータ記録に対するエラー候補の信頼性指標は、k×(1−Conferror candidate)である。例えば、d1が、エラー候補のセル中心から「不可視」(又は「虚影」)コンテナのセル中心までの距離であり、d2が、エラー候補のロケーションから「不可視」(又は「虚影」)コンテナのセル中心までの距離である時に、k=(d1/2)/d2である。従って、エラー候補の信頼性が低い程、かつエラー候補のロケーションが、対応する第2のデータ記録(例えば、「不可視」コンテナ又は「虚影」コンテナのいずれかを含むデータ記録)のセルロケーションに近い程、このエラー候補が「不可視」コンテナのセルロケーションにあり、又は「虚影」コンテナがエラー候補によって指定されたロケーションにあるという可能性が高い。
【0120】
図20に戻ると、段階2016において、エラー訂正処理は、第1のデータ記録及び第2のデータ記録に対する潜在的マッチを識別し、第1のデータ記録又は第2のデータ記録のいずれを訂正する必要があるかに関して判断を行う。エラー訂正処理は、この判断を以下の部分段階によって達成する。(1)第1のデータ記録の第1のエラー候補に対して、エラー訂正処理は、これらのエラー候補の信頼性指標を選別し、最も高い信頼性指標を第1の信頼性指標として選択し、それに対応する第1のエラー候補を第1のデータ記録に対する潜在的な(第1の)マッチとして識別する。(2)第2のエラー候補の各々に対して、エラー訂正処理は、その第2のエラー候補の信頼性指標を選別し、最も高い信頼性指標を有するエラー候補をその潜在的な(第2の)マッチとして選択する。エラー検出結果内に1つの第2のエラー候補しか存在しない場合には、その潜在的な(第2の)マッチの信頼性指標が、第2の信頼性指標と見なされる。エラー検出結果が複数の第2のエラー候補を含む場合には、所定の規則に基づいて潜在的な(第2の)マッチの信頼性指標を組み合わせることによって全体的な信頼性指標が識別され、次に、この全体的な信頼性指標は、第2の信頼性指標として機能する。所定の規則は、潜在的な(第2の)マッチの最も小さい信頼性指標、信頼性指標の平均値、又はその中間値を全体的な信頼性指標として選択することができる。全体的な信頼性指標は、潜在的な(第2の)マッチの信頼性指標の関数とすることができる。(3)次に、エラー訂正処理は、第1の信頼性指標と第2の信頼性指標とを比較して、第1のデータ記録又は第2のデータ記録の組のいずれを訂正する必要があるかを判断する。例えば、第1の信頼性指標が高い場合には、エラー訂正処理は、第1のデータ記録が間違っており、その対応する潜在的な(第1の)マッチを用いて訂正すべきであると結論付ける。他の場合には、エラー訂正処理は、第2のデータ記録を訂正する必要があると結論付ける。(4)次に、エラー訂正のためのマッチが、この判断に基づいて識別され、判断が第1のデータ記録を訂正するものであった場合には、潜在的な第1のマッチが識別された第1のマッチになり、他の場合には、潜在的な第2のマッチが第2のマッチとして識別される。
【0121】
段階2018において、エラー訂正処理は、識別されたマッチによって得られる高い方の信頼性レベルが十分に高いか、例えば、事前設定閾値よりも高いか否かを調べる。この信頼性レベルが十分に高くない場合には、エラー訂正処理は、検索が、エラー候補のより大きい組をもたらすことになるように、検索基準を拡張することができ、従って、エラー訂正処理は段階2020に続き、検索基準を拡張することができるか否か(例えば、検索基準が、事前設定された最大ロケーション範囲、最大継続時間、又はID範囲を既に満たしているか否か、又は超過しているか否か)を調べる。検索基準を拡張することができる場合には、エラー訂正処理は、段階2006に続き、検索基準を更新又は拡張して、段階2008から段階2018までの次の反復を続ける。検索基準を拡張することができない場合には、エラー訂正処理は、段階2024に続き、信頼性レベルが十分に高くないという例外理由によって訂正例外処理を実行する。
【0122】
段階2018において、最も高い信頼性レベル(段階2016で識別されたもの)が所定の閾値よりも高い場合には、エラー訂正処理は段階2022に続き、1つのデータ記録に対して識別された複数のマッチが存在するか否かを調べる。(すなわち、段階2022は、第1のデータ記録を訂正する必要がある場合に複数の第1のマッチが存在するか否か、又は第2のデータ記録を訂正する必要がある場合に第2のデータ記録のうちのいずれかに対して複数の第2のマッチが存在するか否かを調べる。)複数のマッチが存在する場合には、マッチに基づくエラー訂正は未確立であり、エラー訂正処理は段階2024に続き、未確立のエラー訂正という例外理由によって訂正例外処理を実行する。一部の実施形態では、エラー訂正に向けて複数のマッチから1つのマッチを選択するのにアービトレーションを使用することができると考えられ、この場合、エラー訂正処理は段階2024を省略し、段階2026に続く。
【0123】
段階2026において、エラー訂正処理は、エラー訂正に向けてデータ記録を準備し、この目的は、識別されたマッチに基づいて正しいデータ記録を生成し、間違ったデータ記録を失効させるか、又は削除することである。詳細な処理は、判断が、第1のデータ記録を訂正することであるか又は第2のデータ記録を訂正することであるかに依存する。
【0124】
段階2016で行われた判断が、第1のデータ記録を訂正することであった場合には、段階2026におけるエラー訂正処理は、第1のマッチに基づいて第1のデータを訂正し、エラー検出結果内に関わる「不可視」コンテナをこれらを失効済みとするか又は削除することによって無効にし、「虚影」コンテナの「コンテナタイプ」属性を「正常」コンテナに戻す。例えば、第1のデータ記録が、ロケーションBにおけるコンテナBの集荷作業を示し、ロケーションAにおけるコンテナAのエラー候補がマッチとして識別された場合には、エラー訂正処理は、第1のデータ記録(コンテナIDをコンテナBとして、セルロケーションをロケーションBとして有する)を複製データ記録にコピーし、次に、複製データ記録内のコンテナID及びコンテナセルロケーションをそれぞれコンテナB及びロケーションBからコンテナA及びロケーションAに変更する。複製データ記録内の信頼性レベルも信頼性指標で更新される。これらの変更により、この時点で複製データ記録は、集荷作業の訂正済みデータ記録である。その後に、エラー訂正処理は、元の第1のデータ記録(ロケーションBにおけるコンテナBの集荷作業を表す)をエラーを有するとマーク付けし(例えば、「データ特性」フィールドを「エラー」に設定することにより)、それを無効にする(例えば、現時刻をタイムスタンプとして「ステータス」フィールド内の値を「既存」から「失効済み」に変更することにより)。他の実施形態では、エラー訂正処理は、複製データ記録を作成して元の第1のデータ記録を無効にすることなく第1のデータを直接修正することができる。第2のデータ記録内の全ての「不可視」コンテナに関して、エラー訂正処理は、これらのコンテナを失効済みとマーク付けするか又は在庫追跡データベースにこれらのコンテナを削除する指令を提出することにより、これらのコンテナを修正する。第2のデータ記録内の全ての「虚影」コンテナに関して、エラー訂正処理は、現時刻をタイムスタンプとしてこれらのコンテナの「コンテナタイプ」属性を「正常」に変更し戻す、又はエラー訂正処理は、これらのコンテナを最初に複製して変更を行うことができ、次に、元のものを失効済み又は無効とマーク付けする。他の実施形態では、これらの第2のデータ記録がエラー検出モジュールによって修正されなかった場合には、上述の修正を不要とすることができる。
【0125】
判断が、第2のデータ記録を訂正するものであった場合には、エラー訂正処理は、段階2026において第1のデータ記録に対していかなる変更も行わず、代替的に、第2のデータ記録の各々において、その対応する第2のマッチに基づいて訂正を行う。第2のデータ記録が「不可視」コンテナに関連付けられた場合には、判断は、マッチに関連付けられたコンテナが、この「不可視」コンテナに関連付けられたロケーションに存在するはずであることを意味する。この場合、エラー訂正処理は、最初にマッチのデータ記録をコピーすることによって複製データ記録を作成し、次に、複製データ記録内のロケーションを「不可視」コンテナに関連付けられたロケーションに変更し、信頼性レベルをそれに対応する信頼性指標に更新する。次に、この複製データ記録は、エラー訂正処理によって生成された訂正済みデータ記録になる。その後にエラー訂正処理は、現時刻をタイムスタンプとしてマッチのデータ記録、並びにエラー検出処理によって作成された「不可視」コンテナのデータ記録をエラー及び無効とマーク付けする。
【0126】
同様に、第2のデータ記録が「虚影」コンテナに関連付けられた場合には、判断は、「虚影」コンテナが、実際にはマッチに関連付けられたロケーションに配置されることを意味する。従って、エラー訂正処理は、最初に「虚影」コンテナのデータ記録をコピーすることによって複製データ記録を作成し、次に、複製データ記録内のロケーション及び信頼性指標をそれぞれマッチに関連付けられたロケーション及び信頼性指標に変更する。更に、エラー訂正処理は、複製データ記録内のコンテナ特性をその「コンテナタイプ」属性を「虚影」コンテナから「正常」コンテナに変更することによって修正する。これらの修正により、この時点で複製データ記録は訂正済みデータ記録になり、更にエラー訂正処理は、「虚影」コンテナに関連付けられた元のデータ記録をエラー及び無効とマーク付けする。エラー検出結果内に複数の「虚影」コンテナが存在する場合には、エラー訂正処理は、上述の処理を「虚影」コンテナの各々に対して繰り返す。
【0127】
段階2028において、エラー訂正処理は、マッチ内のコンテナ又はコンテナセルロケーションに発生したその後の作業に関連するデータ記録を含むマッチに関連付けられた記録を検索して更新する。背景にある理由は、マッチ内のエラーが、これらのその後の作業を通じて伝播した可能性があるからである。一部の実施形態では、第1のデータ記録(すなわち、段階602で受け取られた新規データ)は、エラー検出モジュール302に実時間で入力され、従って、段階2028における処理は、判断が第2のデータ記録を訂正するものであった場合にのみ必要になる(第1のデータ記録内のエラーは、その時点では依然として伝播する機会を持たないことになるからである)。ここでの説明は、エラー検出モジュール302に第1のデータ記録が実時間で入力されることを仮定している。他の実施形態では、第1のデータ記録は、第1のデータ記録内の作業が発生した時よりもかなり後にエラー検出モジュール302に入力された履歴データとすることができ、これらの場合、判断が、第1のデータ記録を訂正するものであった場合であっても上述の処理は必要であり、当業者は、ここでの説明をこれらの場合に適合するように比較的容易に拡張することができる。
【0128】
それに応じて、段階2028において、エラー訂正処理は、第2のデータ記録の各々に関連するデータ記録を検索して更新する。第2のデータ記録が「不可視」コンテナに関連付けられた場合には、そのマッチは訂正の前に占有されており、従って、エラー訂正処理は、そのマッチ内のセルロケーションにおける直近の降荷作業の時刻と、「不可視」コンテナ(第2のデータ記録内に定められたもの)のセルロケーションにおける直近の集荷作業の時刻とを比較する。降荷作業が集荷作業よりも前に発生していた場合(この降荷ロケーションが実際には「不可視」コンテナのロケーションであることを示す)には、エラー訂正処理は、「不可視」コンテナのセルロケーションおいて降荷作業の時刻の後に発生したあらゆる作業に関して在庫追跡データベース114に照会する。照会結果内の各データ記録に対して、エラー訂正処理は、コンテナ情報(例えば、コンテナのID及び特性)をマッチ内のコンテナのものに修正する。降荷作業が集荷作業よりも後であった場合(集荷作業が実際にはマッチ内のセルロケーションにおいて発生したことを示す)には、エラー訂正処理は、集荷作業の時刻の後の「不可視」コンテナが係わるあらゆる作業に関して在庫追跡データベース114に照会する。照会結果内の各データ記録に対して、エラー訂正処理は、コンテナ情報をマッチ内のコンテナのものに修正する。
【0129】
第2のデータ記録が「虚影」コンテナに関連付けられた場合には、そのマッチは、訂正の前には非占有であり、従って、エラー訂正処理は、マッチ内に指定されたセルロケーションにおいて、「虚影」コンテナのセルロケーションにおける直近の降荷作業の後に発生したあらゆる作業に関して在庫追跡データベース114に照会する。照会結果内の各データ記録に対して、エラー訂正処理は、「コンテナタイプ」属性を「虚影」コンテナのものに修正し、同時にコンテナを「正常」コンテナとして(「虚影」コンテナではなく)維持する。
【0130】
段階2030において、エラー訂正処理は、エラー訂正処理によって生成された訂正済みデータ記録及びエラー訂正処理によって失効されたデータ記録(例えば、「不可視」コンテナ又は「虚影」コンテナを含むもの)を含む修正済みデータ記録で在庫追跡データベース114を更新する。更に、エラー訂正処理は、エラー検出ログ及びエラー訂正ログのような関連履歴ファイル、並びに在庫追跡データベース114内の「不可視」コンテナ又は「虚影」コンテナの表を更新することができる。
【0131】
図20において説明したエラー訂正処理が如何に機能するかを示すために、図22A〜図22D及び図23A〜図23Fに例を提供する。図22A〜図22Dは、異なる時刻において実施された4つの作業を示している。時刻t1における最初の作業の前には図22Aに示しているコンテナセルロケーションを占有する7つのコンテナA1、A2、B1、B2、B3、C1、及びC2が既に存在している。時刻t1では、コンテナC3が、信頼性レベルConft1(C3)でロケーションC3(列111、間口24、枠C、段3)というコンテナセルロケーションに降荷され、この信頼性レベルは、測位システムからのポジションデータの信頼性レベル、又はポジションデータの信頼性レベルと降荷イベントの信頼性レベルの両方に基づく組合せ信頼性レベルとすることができる。それに応じて、在庫追跡システムは、この作業を表す新規データ記録を作成し、この新規データ記録は、少なくともコンテナC3のID及び属性、コンテナセルロケーション((列111、間口24、枠C、段3)にあるロケーションC3)、作業タイプ(すなわち、降荷作業)、信頼性レベルConft1(C3)、及びそれに対応する時刻t1を含むことになる。HEが接近不能なロケーションで作業していないと仮定すると、降荷ロケーションが降荷作業の前には占有されておらず、降荷ロケーションが空中ではない(コンテナC1及びその下のC2の存在に起因して)ので、エラー検出モジュールは、いかなるエラーも検出しない。従って、新規データ記録は、いかなる修正又は訂正もなしに在庫追跡データベース114に追加されており、それに応じて在庫追跡データベース114は、t1を失効時刻としてコンテナC3に関連する以前のデータ記録を失効済みとマーク付けして、コンテナC3に関連する以前のロケーション及び作業がこの時点では無効であることを示している。
【0132】
同様に、図22Bに示しているように、時刻t2においてConft2(B3)という信頼性レベルでコンテナB3が集荷され、対応する新規データ記録が作成されており、いかなるエラーも検出されておらず、それに応じて在庫追跡データベース114が更新されている。図22Cに示しているように、時刻t3においてConft3(A3)という信頼性レベルでコンテナA3がロケーションA3(列111、間口24、枠A、段3)において降荷されており、ここでもまた、いかなるエラーも検出されておらず、それに対応する新規データ記録が、在庫追跡データベースに追加されている。図22Dに示しているように、時刻t4では、Conft4(B4)という信頼性レベルでコンテナB4がロケーションB4(列111、間口24、枠B、段4)に降荷されている。それに応じて、この作業に対して新規データ記録が作成され、その調査に向けてエラー検出モジュールに報告されている。降荷ロケーションの直下のロケーションB3(列111、間口24、枠B、段3)にはいかなるコンテナも存在していなかったので、エラー検出処理は、段階1202において降荷ロケーションが空中であると判断し、段階1204及び1206を通じてロケーションB3にコンテナInv_B3という「不可視」コンテナを作成する。エラー検出処理は、この「不可視」コンテナに関する信頼性レベルも計算する。一実施形態では、この信頼性レベルは、「不可視」コンテナの識別をもたらす作業又はイベントの信頼性レベルとして設定され、従って、図22Dに示している場合には、コンテナInv_B3の信頼性レベルはConft4(B4)に設定される。エラー検出処理は、最初に段階1215においてエラーを報告し、次に、段階610においてこのエラーをコンテナInv_B3に関する新規作成データ記録、コンテナB4の降荷作業に関するデータ記録(段階602において受け取った新規データであり、「不可視」コンテナInv_B3の検出をもたらすデータでもある)、及び更新済みのエラー検出履歴又はログと共にエラー訂正モジュール1702及び在庫追跡データベース114に報告する。
【0133】
エラー検出モジュール302から段階2002にエラーが報告されると、エラー訂正処理は、段階2004において、ロケーションB3におけるコンテナInv_B3に関する新規作成データ記録を第1のデータ記録とし、ロケーションB4におけるコンテナB4の降荷作業に関するデータ記録を第2のデータ記録として含むエラー検出結果を受け取って読み取る。各データ記録は、少なくともコンテナセルロケーション、エラー又は作業の時刻(すなわち、t4)、及び信頼性レベル(すなわち、「不可視」コンテナInv_B3に関するConft4(Inv_B3)及びコンテナB4に関するConft4(B4))を含む。段階2006において、エラー訂正処理は、エラー候補を判断するのに使用されることになる検索基準を判断する。検索基準は、エラー検出結果に関連するコンテナセルロケーション(すなわち、この例ではロケーションB3及びロケーションB4)までの距離範囲をそれに対応する信頼性レベル又は他の確率尺度、すなわち、この例ではConft4(Inv_B3)及びConft4(B4)に基づいて指定することができる。検索基準は、t4がエラーに関連する時刻である時に、検索をコンテナセルロケーションにおいて時刻(t4−T)から(t4)までの時間窓内に発生した作業又はイベントに限定するために継続時間Tを指定することができる。代替的に、検索基準は、指定コンテナセルロケーションに発生した作業又はイベントの回数を指定することができる。この例では、検索基準が、距離範囲を同じ段における(高さ測定値の信頼性レベルが十分に高いと仮定して)コンテナ1つ分のサイズと指定し、作業又はイベントの回数も1回と指定すると仮定し、従って、第1のデータ記録に基づいて、第1の検索基準は、第1のデータ記録内のコンテナセルロケーション(ロケーションB4)の直近の段3におけるコンテナセルロケーションを指定し、第2のデータ記録に基づいて、第2の検索基準は、第2のデータ記録内のコンテナセルロケーション(ロケーションB3)の直近の段4におけるコンテナセルロケーションを含むと判断される。更に、両方の検索基準は、検索をこれらの近いコンテナセルロケーションの各々で発生した直近の作業又はイベントに限定する。
【0134】
段階2008において、エラー訂正処理は、段階2006で判断された検索基準を用いて在庫追跡データベース114に照会することによってエラー候補を判断する。この例を単純化するために、いかなるコンテナも、近い間口(すなわち、間口23及び間口22)内のコンテナセルロケーションを占有しておらず、また、いかなる作業も、これらのコンテナセルロケーションにおいて発生しなかったと仮定する。従って、照会は、t1におけるコンテナC3の降荷作業、t2におけるコンテナB3の集荷作業、及びt3におけるコンテナA3の降荷作業に対応する3つのデータ記録を戻す。段階2008において、エラー訂正処理は、各々が、それに対応するコンテナID及び属性、作業タイプ、タイムスタンプ、及び信頼性レベルを含む照会結果内の3つのデータ記録を読み取る。
【0135】
段階2010において、エラー訂正処理は、いずれかの例外規則が満たされているか否かを調べる。照会結果は、第1のデータ記録内の降荷ロケーションを取り囲む非占有のロケーションを示し、「不可視」コンテナInv_B3を取り囲む占有済みのロケーションを示すので、「不十分なデータの例外」は満たされない。この例では、3つのデータ記録は、十分に高い信頼性を持たず、列111間口24におけるコンテナセルロケーションが制限区域内にないと仮定し、従って、「制限区域」例外も、「適正結果の不在」例外も満たされない。その結果、エラー訂正処理は、段階2012に続き、エラー候補を判断する。
【0136】
段階2012において、エラー訂正処理は、第1のデータ記録及び第2のデータ記録に対するエラー候補を判断する。第1のデータ記録(コンテナB4の降荷作業を示す)に対するエラー候補は、測位システム104によって報告された降荷ロケーションが間違いである場合のコンテナB4の別の降荷ロケーションを表す。従って、第1のデータ記録に対する第1のエラー候補は、同じ段上の非占有コンテナセルロケーションを含むはずである。第1の検索基準に対応する照会結果は、ロケーションA4及びロケーションC4の両方が非占有であることを示すので、この場合、第1のエラー候補は、図23B及び図23Cに示しているロケーションA4及びロケーションC4を含む。同様に第2のデータ記録(「不可視」コンテナInv_B3に関連する)に対する第2のエラー候補は、同じ段における占有済みコンテナセルロケーションである、図23D及び図23Eに示しているロケーションA3及びロケーションC3を含む。要約すると、2つの第1のエラー候補と2つの第2のエラー候補とが見つかり、検出エラーは、(1)図23Bに示しているように、コンテナB4は、実際にはロケーションA4に降荷された、(2)図23Cに示しているように、コンテナB4は、実際にはロケーションC4に降荷された、(3)図23Dに示しているように、現時点でロケーションA3に存在するコンテナは実際にはロケーションB3に存在し、すなわち、コンテナA3が「不可視」コンテナInv_B3である、(4)現時点でロケーションC3に存在するコンテナは実際にはロケーションB3に存在し、すなわち、コンテナC3が「不可視」コンテナInv_B3であるということのうちのいずれか1つによって解決することができる。
【0137】
その後に、段階2014では、4つのエラー候補の各々に対して信頼性指標が計算される。図18を用いた説明により、一実施形態では、Conffirst dataが第1のデータ記録の信頼性レベル(この例ではConft4(B4))であり、k=f(positionfirst data,locationcandidate)が重み係数である時に、第1のデータ記録(この例ではコンテナB4の降荷作業)に対する候補の信頼性指標は、k×(1−Conffirst data)と設定される。図22Fは、測位システムによって提供されたコンテナセルロケーションA4、B4、及びB3、並びにコンテナB4のロケーション(この図ではPB4と印している)の上面図を示している。計算式k=(d1/2)/d2を使用すると、エラー候補A4に対する重み係数は(a1/2)/a2であり、エラー候補C4に対する重み係数は(a3/2)/a4である。この特定の例では、ポジションPB4はC4のセル中心よりもA4のセル中心の近くに、セル中心の間の距離a1とa3とが同じであることすると、エラー候補A4に対する重み係数は、エラー候補C4に対する重み係数よりも大きい。その結果、エラー候補A4に対する信頼性レベル(a1/2/a2)×(1−Conft4(B4))は、エラー候補C4に対する信頼性レベル(a3/2/a4)×(1−Conft4(B4))よりも高い。
【0138】
同様に、Conferror candidateがエラー候補の信頼性レベルであり、kが重み係数である時に、「不可視」コンテナに対するエラー候補の信頼性指標は、k×(1−Conferror candidate)である。Conferror candidateは、2つのエラー候補それぞれついてConft3(A3)及びConft1(C3)である。
【0139】
段階2016において、エラー訂正処理は、信頼性指標を選別し、第1のデータ記録に対する第1のマッチ、及び第2のデータ記録に対する第2のマッチを判断する。第1のデータ記録、すなわち、コンテナB4の降荷作業に関連するデータ記録に対して、エラー訂正処理は、エラー候補A4に関する信頼性指標とエラー候補C4に関する信頼性指標とを比較し、高い方のものを第1の信頼性指標として選択する。「不可視」コンテナが1つしか存在しない(コンテナInv_B3)ので、エラー訂正処理は、A3に対する信頼性指標とC3に対する信頼性指標とを比較して高い方のものを第2の信頼性指標として選択する。次に、エラー訂正処理は、第1の信頼性指標と第2の信頼性指標とを比較して高い方のものを最も高い信頼性指標として選択する。エラー候補A4又はエラー候補C4のいずれかがこの最も高い信頼性指標を得た場合には、エラー訂正処理は、第1のデータ記録が間違っており、訂正する必要があると結論付け、他の場合には、第1のデータ記録は正しく、コンテナがロケーションB3を占有するはずである(すなわち、ロケーションA3にあるコンテナ又はロケーションC3にあるコンテナがロケーションB3を占有するはずである)と結論付ける。
【0140】
段階2018では、最も高い信頼性指標が事前設定閾値と比較される。この例では、最も高い信頼性指標が0.8であり、事前設定閾値が0.6であると仮定し、従って、エラー訂正処理は段階2022に続く。更に、最も高い信頼性指標を獲得するエラー候補が1つしか存在しないと仮定し、従って、エラー訂正処理は段階2026に続く。段階2026において、エラー訂正処理は、エラー訂正に向けてデータ記録を準備する。説明を完全にするために、4つのエラー候補の各々を4つの場合のうちの1つにおいて最も高い信頼性指標を獲得するエラー候補とすることができるこれらの4つの場合を提供する。
【0141】
ケース#1では、最も高い信頼性指標は、ロケーションA4のエラー候補によって獲得される。従って、エラー訂正処理は、第1のデータ記録(コンテナIDをコンテナB4として有する)を複製データ記録にコピーし、次に、複製データ記録内のコンテナセルロケーションをロケーションB4からロケーションA4に置き換え、信頼性レベルをConft4(B4)から(a1/2/a2)×(1−Conft4(B4))(これは0.8である)に更新する。図23Bは、コンテナB4をロケーションB4からロケーションA4に移動するこれらの変更の効果を示している。更に、エラー訂正処理は、在庫追跡システムによって直接生成されたデータ記録から新規作成データ記録を区別するために、この新規データ記録がエラー訂正処理によって生成されたことを示すようにこの新規データ記録を訂正済みデータ記録としてマーク付けする。ロケーションB4におけるコンテナB4の降荷作業を表す元の第1のデータ記録に対しては、エラー訂正処理は、このデータ記録をエラーを有するとマーク付けし(例えば、「データ特性」フィールドを「エラー」に設定することにより)、無効にする(例えば、現時刻をタイムスタンプとして「ステータス」フィールド内の値を「既存」から「失効済み」に変更することにより)。同様にエラー訂正処理は、コンテナInv_B3のデータ記録も無効とマーク付けする。一部の実施形態では、エラー訂正処理は、複製データ記録を作成することなく第1のデータ記録に対して直接修正を加えることができ、又は修正した第1のデータ記録を訂正済みデータ記録として報告することができる。
【0142】
ケース#2では、ロケーションC4のエラー候補が最も高い信頼性指標を獲得しており、従って、エラー訂正処理は、ケース#1と類似の処理を提供する。唯一の相違点は、訂正済みデータ記録が、そのロケーションとしてロケーションC4を有し、その信頼性指標として信頼性指標(a3/2/a4)×(1−Conft4(B4))(これは0.8である)を有する点である。図22Cは、コンテナB4をロケーションB4からロケーションC4に移動するこれらの変更の効果を示している。同様にエラー訂正処理は、元の第1のデータ記録をエラーを有する及び無効とマーク付けする。
【0143】
ケース#3では、ロケーションA3にあるコンテナA3のエラー候補が最も高い信頼性指標を獲得するので、このエラー候補を第2のマッチとして識別し、これは、A3の降荷作業が、ロケーションA3ではなくB3で発生した可能性が最も高いことを示している。従って、エラー訂正処理は、最初にこの第2のマッチ(すなわち、コンテナA3のデータ記録)をコピーすることによって複製データ記録を作成し、次に、複製データ記録内の降荷ロケーションをロケーションA3からロケーションB3に変更し、信頼性レベルをそれに対応する信頼性指標に更新する。図23Dは、コンテナA3をロケーションA3からロケーションB3に移動するこれらの変更の効果を示している。次に、この複製データ記録は、エラー訂正処理によって生成された訂正済みデータ記録になる。次に、エラー訂正処理は、元のマッチ(すなわち、コンテナA3のデータ記録)をエラーを有する及び無効としてマーク付けする。更に、エラー訂正処理は、失効時刻を現時刻として第2のデータ記録(すなわち、エラー検出処理によって作成された「不可視」コンテナであるコンテナInv_B3のデータ記録)を無効とマーク付けする。
【0144】
ケース#4では、ロケーションC3にあるコンテナC3のエラー候補が最も高い信頼性指標を獲得するので、この候補が第2のマッチとして識別される。コンテナC3の降荷作業は、時刻t2におけるコンテナB3の集荷作業の前の時刻t1に発生したので、C3の降荷ロケーションはロケーションB3であったはずがなく、これは、集荷作業が、コンテナB3ではなくコンテナC3に発生したはずであることを示している。従って、エラー訂正処理は、コンテナB3の複製データ記録を作成し、次に、複製データ記録内のコンテナのID及び特性をコンテナC3のものと置き換え、複製データ記録内のコンテナセルロケーションをロケーションC3に変更する。すなわち、複製データ記録は、時刻t2における集荷作業が実際にはロケーションC3にあるコンテナC3に発生したことを示す訂正済みデータ記録になる。その後に、エラー訂正処理は、第2のデータ記録(すなわち、コンテナInv_B3のデータ記録)を無効とマーク付けし、B3の降荷作業に対応するデータ記録を無効(又は失効済み)から妥当(又は既存)に変更する。すなわち、在庫追跡データベースは、そのままロケーションB3にコンテナB3を有することになる。図23Eは、これらの変更の効果を示している。
【0145】
段階2028において、エラー訂正処理は、関連データ記録に関して在庫追跡データベース114に照会し、訂正に従ってこれらのデータ記録を更新する。この例では、新規データ(すなわち、エラー訂正処理における第1のデータ記録)が、エラー検出モジュール302に実時間で報告されると仮定し、従って、ロケーションA4又はロケーションC4にはその時点では依然としていかなる作業も発生していなかったはずであるから、ケース#1及びケース#2ではいかなる照会も必要ではない。ケース#3とケース#4の両方において、マッチは、「不可視」コンテナに対するマッチである。ロケーションA3及びロケーションC3における直近の降荷作業の時刻は、それぞれt3及びt1であり、ロケーションB3における直近の集荷作業の時刻はt2であり、この時刻はt3よりも早いが、t1よりも後である。ケース#3では、A3の降荷は、実際にはロケーションB3で発生しており、従って、エラー訂正処理は、ロケーションB3において時刻t3の後に発生したあらゆる作業に関して在庫追跡データベースに照会する。照会は、いかなる結果も戻すことにはならず、エラー訂正処理は段階2030に続く。ケース#4では、C3の降荷はB3の集荷よりも早く、従って、時刻t2における集荷は、実際にはロケーションC3にあるコンテナC3に発生した。次に、エラー訂正処理は、時刻t2における集荷作業の後にコンテナB3に発生した全ての作業に関して在庫追跡データベースに照会する。これらの作業は、コンテナB3ではなく実際にはコンテナC3に発生しており、従って、照会結果内の各データ記録に対して、エラー訂正処理は、コンテナ情報をコンテナB3のものからコンテナC3のものに変更する。そうすることにより、エラー訂正処理は、在庫追跡データベース114内で既に伝播していたエラーも訂正する。
【0146】
段階2030において、エラー訂正処理は、訂正済みデータ記録、並びに更新済みデータ記録を在庫追跡データベースに書き込むことによってエラー訂正を完了する。代替的に、エラー訂正処理は、訂正が新規エラーを作り出さないことを保証するために、これらのデータ記録を在庫追跡データベースに更新する前に訂正結果をエラー検出モジュール302に報告することができる。エラー検出モジュール302が、エラー訂正結果内にエラーを検出した場合には、エラー訂正処理は、例外フラグを「間違った訂正」と設定して訂正例外処理に続けることができる。
【0147】
図24は、段階1820及び段階2024における訂正例外処理の一実施形態に関わる処理を示す流れ図である。この実施形態は、オペレータが、設定において手動サポートを実質的にすることを選択した場合に、オペレータが訂正処理に係わることを可能にする。図24に示しているように、訂正例外処理は、段階2402において手動サポートが実質的にされた又は起動されたか否かを検査することで始まる。手動サポートが無効にさていれるか又は停止されている場合には、訂正例外処理は段階2404に続き、エラー訂正結果内のデータ記録を訂正例外が発生したことを示すように修正する。例えば、訂正例外処理は、対応する例外規則を表すために、これらのデータ記録に、以前の段階(例えば、図18の段階1810、1816、及び1818、並びに図20の段階2010、2020、及び2022)において設定された値を有する例外フラグを追加することができる。訂正例外処理は、例外規則及びタイムスタンプをエラー訂正ログに書き込むことができる。(上述のように、例外規則は、「十分なデータの不在」、「適正結果の不在」、「未確立のマッチ又は対処法」、「低い信頼性指標」などを含むことができる。)
【0148】
手動サポートが有効であるか又は起動されている場合には、訂正例外処理は、2406から2414までの段階に続き、エラーを訂正するようにオペレータを訂正例外処理に携わらせる。段階2406において、例外訂正処理は、オペレータの手動訂正又は検証に向けて、対応する例外規則(すなわち、既存の例外に対する理由)、エラー訂正結果内の全てのデータ記録、並びに照会結果内のデータ記録を含むことができる指示を準備する。例外が、未確立のマッチ又は対処法に起因する場合には、指示は、最も高い信頼性指標を獲得する全ての潜在的マッチを含むことにもなり、例外が低い信頼性指標に起因する場合には、指示は、最も高い信頼性指標を獲得するマッチを含むことになる。これらの指示の目的は、検出されたエラーに関連する十分な情報をオペレータに提供し、オペレータの手動エラー訂正を容易にすることである。
【0149】
段階2408において、訂正例外処理は、これらの手動訂正指示を例えばディスプレイを通じてオペレータに対して出力する。これらのデータ記録の内容を示すという指示に基づいて、グラフィック表示又は概略図面(図22A〜図22D及び図23A〜図23Eにあるもの等)を生成することができ、第1のデータ記録、第2のデータ記録内の「不可視」コンテナ及び「虚影」コンテナ、並びにエラー候補及びマッチを示す上で異なる色又はパターン規則を使用することができる。対応するエラー候補以外に各エラー候補に対応する信頼性指標を表示することができ、又はオペレータの要求を受けて表示することができる。次に、訂正例外処理は、オペレータの入力を待つ。
【0150】
情報が示されると、次に、オペレータは、情報を手動で調べ、オペレータに対して利用可能な他のリソースを組み込むことによってエラーを如何に訂正するかを判断する。そのようなリソースは、カメラ1402、画像処理モジュール1404、及び通信ネットワーク1602を含む図14及び図16に示しているようなカメラを利用したモニタリングシステムによって提供されるコンテナ輸送ヤードの画像(又は情報)を含むことができる。オペレータは、関連情報に関してコンテナ輸送ヤード内の輸送ヤード事務員及び/又は取り扱い機器オペレータと連絡を取ることができる。手動訂正を入力するために、オペレータは、ディスプレイ内のデータ記録のうちのいずれかを選択して、コンテナセルロケーション、コンテナID及び特性、並びに類似のものに関する訂正情報を手動で入力することができる。また、訂正例外処理は、オペレータが、1つのセルロケーションから別のセルロケーションにコンテナをドラッグするか又はセルロケーションにおいてコンテナを削除又は追加することを可能にすることができる。
【0151】
段階2410において、例外訂正処理は、いずれかの入力がオペレータによって入力されたか否かをカーソル移動又はキーボードからの入力をモニタすることによって調べる。例外訂正処理は、(1)入力が第1のデータ記録に対するマッチ、又は第2のデータ記録の各々に対するマッチのいずれを与えるか、又は(2)入力が第1のデータ記録、又は第2のデータ記録の各々のいずれを訂正するかを調べることにより、入力が妥当で完全なものであるか否かも検査する。入力が妥当で完全なものではなかった場合には、例外訂正処理は、段階2412で判断される十分に長い期間の間待機し終わるまで(例えば、指示の表示からの待機時間が、所定の閾値よりも長いか否か)オペレータからの入力を待ち、受け取り続ける。一部の実施形態では、例外訂正処理は、オペレータからの入力を第1及び第2のデータ記録、並びにエラー候補に関する既存の情報と組み合わせることができ、それによって可能な訂正の対処法を生成し、オペレータが選択及び/又は検証するようにこれらの対処法を出力する。従って、例外訂正処理は、入力が完全であることを必要としなくてもよい。
【0152】
訂正例外処理は、オペレータから妥当な入力を受け取ることなく十分に長い期間にわたって待機し終わると、段階2412から段階2404に続き、例外規則を書き込み、エラー検出結果内のデータ記録を修正する。代替的に、所定の時間閾値内で妥当なオペレータ入力が受け取られた場合には、訂正例外処理は、段階2410から段階2414に続き、オペレータの入力に基づいて識別されたマッチ、並びにオペレータが特定の訂正が行われた場合はそれらの訂正をエラー訂正処理に出力し戻す。その後に、訂正例外処理は、エラー訂正処理の図18の段階1824又は図20の段階2026に抜ける。次に、エラー訂正処理は、マッチ又は訂正が自動エラー訂正によって識別された場合と同じ手法で、オペレータによって選択されたマッチに基づいて必要な訂正を加えるか、又はオペレータによって加えられた訂正の検証する。
【0153】
図18及び図20のエラー訂正処理の実施形態を少なくとも2つのデータ記録(すなわち、第1のデータ記録と第2のデータ記録の両方を含むエラー検出結果)を入力として用いて説明したが、これらの実施形態は、1つのデータ記録しかエラー訂正処理に入力されない場合に適用することができる。そのような場合には、この1つのデータ記録が間違っており、訂正する必要があると仮定される。更に、この単一の記録では、エラー訂正処理をエラー検出モジュール302のエラー検出処理とは独立して使用することができる。以下の説明は、図20に示している流れ図を辿ってそのような単一記録実施形態を提供する。
【0154】
段階2002において、エラー訂正処理は、エラーが報告されたか否か(エラー検出モジュール又はユーザインタフェースのような他のモジュールのいずれかから)を調べ、報告があった場合には、エラー訂正処理は段階2004に続き、エラーデータ記録(第1のデータ記録、又はユーザインタフェースのような他のモジュールから入力されたデータ記録のみを含むエラー検出結果とすることができる)を受け取る。第1のデータ記録は、コンテナID、コンテナ特性、ポジション、及びコンテナセルロケーションという情報のうちの少なくとも1つを含み、これらの情報のうちのいずれかにおいて少なくとも1つのエラーを有することが、エラーを検出するためのプロセッサ、又は在庫追跡システムのオペレータのいずれかによって判断済みである。
【0155】
段階2006において、エラー訂正処理は、第1のデータ記録に基づいて、コンテナID、コンテナ特性、コンテナセルロケーション、継続時間、及び作業又はイベントの回数を指定する検索基準を設定する。次に、エラー訂正処理は、検索基準を用いて在庫追跡データベース114に照会し、照会結果を取得する。段階2010において、エラー訂正は、いずれかの例外規則が満たされるか否かを調べ、この規則が満たされる場合には、エラー訂正処理は段階2024に続き、訂正例外処理を実行する。例外規則、調査、及び訂正例外処理は、上述したものと同様である。
【0156】
いかなる例外規則も満たされない場合には、エラー訂正処理は、2012から2022までの段階に続き、照会結果を評価して、第1のデータ記録に対するマッチを判断する。マッチは、照会結果内のデータ記録であり、マッチに基づいて第1のデータ記録を修正することにより、第1のデータ記録内のエラーを訂正することができる。図20に図示の実施形態では、エラー訂正処理は、段階2012において第1のデータ記録に対するエラー候補を識別し、段階2014においてエラー候補の各々に対する確率尺度、例えば、矛盾指標又は信頼性指標を計算し、段階2016において矛盾指標を選別し、かつ最も高い信頼性指標に関してこの最も高い信頼性指標に対応するエラー候補を潜在的マッチとして識別することによってマッチを判断する。
【0157】
段階2018において、エラー訂正処理は、最も高い信頼性指標が十分に高い(例えば、事前設定閾値よりも大きい)か否かを調べ、比較結果に依存して段階2020又は段階2022に続く。最も高い信頼性指標が十分に高い場合には、潜在的マッチは、マッチとして識別される。1つのマッチしか存在しなかった(段階2022において判断される)場合には、エラー訂正処理は、段階2026においてこのマッチに基づいて第1のデータ記録を修正してエラーを訂正する。上述のように、段階2028において、エラー訂正処理は、第1のデータ記録又はマッチに関連付けられたデータ記録を検索して更新する。段階2030において、エラー訂正処理は、訂正済みデータ記録で在庫追跡データベース114を更新し、関連の履歴ログ又はエラー訂正ログに適宜書込みを行う。
【0158】
本発明を詳細事項を用いて上述したが、この説明は、本発明を如何に作成し、使用するかを当業者に教示するためのものに過ぎない。「不可視」コンテナ及び「虚影」コンテナのような特定の用語は、説明目的に用いたものであり、ある一定のセルロケーションに存在する可能性がある(又は可能性がない)にも関わらず、在庫追跡データベースが、これらのセルロケーションにこれらのコンテナが存在しない(又は存在する)ことを示すコンテナを表す上で他の用語又は値を使用することができると考えられる。多くの付加的な修正は、以下に続く特許請求の範囲によって定められる本発明の範囲に収まるであろう。
【符号の説明】
【0159】
23、24 間口
101 列
A、B、C 枠
【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサによって可読であるメモリデバイスに設けられ、コンテナ保管施設のコンテナ在庫追跡システムに関連付けられたコンテナ在庫データベース内のエラーを訂正するために該少なくとも1つのプロセッサによって実施される方法であって、
第1のデータ記録と第2のデータ記録の組との間でデータ矛盾が検出されている第1のデータ記録と1組の第2のデータ記録とを取得する段階と、
前記第1のデータ記録と前記第2のデータ記録の組とに基づいて、該第1のデータ記録に対応する第1の検索基準と1つの第2の基準が該第2のデータ記録の各々に対応する1組の第2の検索基準とを含む検索基準を設定する段階と、
前記コンテナ在庫データベースに照会して、前記第1のデータ記録に対応する第1の照会結果と前記第2のデータ記録の組に対応する第2の照会結果とを取得する段階と、
前記第1の照会結果を評価して、該第1の照会結果内のデータ記録である前記第1のデータ記録に対する第1のマッチを判断する段階であって、該第1のマッチに基づいて該第1のデータ記録を修正することが前記データ矛盾を解決することができる前記第1のマッチを判断する段階と、
前記第2の照会結果を評価して、前記第2のデータ記録の各々に対して1つの第2のマッチを含む1組の第2のマッチを判断する段階であって、該第2のデータ記録の各々をその対応する第2のマッチに基づいて修正することが前記データ矛盾を解決することができる前記1組の第2のマッチを判断する段階と、
前記第1のマッチを前記第2のマッチの組と比較することにより、前記第1のデータ記録又は前記第2のデータ記録の組を訂正すべきであるか否かを判断する段階と、
前記判断に基づいて、以下のデータ記録、すなわち、前記第1のデータ記録、前記第1のマッチ、前記第2のデータ記録の組、及び前記第2のマッチの組のうちの少なくとも1つを修正する段階と、
前記修正済みデータ記録を前記コンテナ在庫データベースに報告する段階と、
を含むことを特徴とする方法。
【請求項2】
請求項1における前記データ矛盾は、前記第1のデータ記録を前記コンテナ在庫データベース内のデータ記録と比較して該データ矛盾を検出し、かつ前記第2のデータ記録の組を識別するエラー検出方法によって検出される不一致であり、
前記エラー検出方法は、
前記コンテナ在庫追跡システムと、該在庫追跡機構に関連付けられた在庫管理システムと、オペレータからのエントリを受け入れるための入力デバイスと、前記少なくとも1つのデータ記録を生成するように構成されたコンピュータプログラムとを含むデータソースのうちの少なくとも1つによって提供される前記第1のデータ記録を取得する段階と、
前記施設内の前記コンテナ在庫及びコンテナ取り扱い機器に関連付けられた前記第1のデータ記録に基づいて所定のイベントリストの間でイベントを識別する段階と、
前記識別されたイベントに基づいてエラータイプのリストを準備する段階と、
エラー検査処理を通じてデータ矛盾が発生したか否かを判断する段階であって、前記リスト内の複数の前記エラータイプに対して、該エラー検査処理が、
前記エラータイプリストからエラータイプを選択する段階、
前記選択されたエラータイプと前記第1のデータ記録とに基づいて検索基準を判断する段階、
前記判断された検索基準を用いて前記コンテナ在庫データベースに照会し、該コンテナ在庫データベースから照会結果を取得する段階、及び
前記第1のデータ記録を前記照会結果内のデータ記録と互いに比較して、該第1のデータ記録と該照会結果内の該データ記録の間のデータ矛盾を検出する段階、
を含む前記判断する段階と、
前記データ矛盾の前記検出を受けて、該データ矛盾によって影響を受けるデータ記録を前記第2のデータ記録として前記照会結果の間で識別する段階と、
を含む。
【請求項3】
前記第1のデータ記録は、取り扱い機器のポジション、コンテナのロケーション、及び前記コンテナ保管施設内のコンテナセルロケーションのうちの少なくとも1つを含み、
前記所定のイベントリストは、コンテナ集荷イベント、コンテナ降荷イベント、及び車両移動イベントを含む、
ことを特徴とする請求項2に記載のエラー検出方法。
【請求項4】
前記車両移動イベントの識別時に、前記エラータイプリストは、前記コンテナ在庫データベースに従ってコンテナで占有されているロケーションを横切る前記コンテナ取り扱い機器の移動を示す移動違反エラーを含み、
前記コンテナ集荷イベントの識別時に、前記エラータイプリストは、集荷に利用可能なコンテナの不在、接近不能な集荷ロケーション、及び接近不能な作業ロケーションを含み、
前記コンテナ降荷イベントの識別時に、前記エラータイプリストは、空中降荷ロケーション、占有済み降荷ロケーション、及び接近不能な作業ロケーションを含む、
ことを特徴とする請求項2に記載のエラー検出方法。
【請求項5】
前記検索基準の各々が、コンテナID、コンテナ特性、コンテナセルロケーション、及び継続時間のうちの少なくとも1つを指定し、
前記検索基準の各々が、その対応するデータ記録内に記録された情報に基づいて判断され、該情報は、コンテナセルロケーション及びコンテナに対するポジションのうちの少なくとも一方を含む、
ことを特徴とする請求項1に記載の方法。
【請求項6】
前記第1の照会結果及び前記第2の照会結果の前記評価は、
前記第1の照会結果に基づいて前記第1のデータ記録に対する第1のエラー候補と、前記第2の照会結果に基づいて前記第2のデータ記録の各々に対する第2のエラー候補とを判断する段階と、
前記第1のエラー候補を評価して前記第1のデータ記録に対する前記第1のマッチを判断する段階と、
前記第2のデータ記録の各々に対する前記第2のエラー候補を評価して前記第2のマッチの組を判断する段階と、
を更に含む、
ことを特徴とする請求項1に記載の方法。
【請求項7】
前記第1のデータ記録は、コンテナ集荷イベント、コンテナ降荷イベント、及び車両移動イベントのうちの1つであるイベントタイプを更に含み、
前記第1のエラー候補は、前記イベントタイプと前記第1の照会結果とに基づいて判断され、該第1のエラー候補は、該イベントタイプが前記コンテナ集荷イベントである場合には、該第1の照会結果内の占有済みセルロケーションを含み、かつ該第1のエラー候補は、該イベントタイプが、前記コンテナ降荷イベント及び前記車両移動イベントのうちの一方である場合には、該第1の照会結果内の未占有コンテナセルロケーションを含む、
ことを特徴とする請求項6に記載の方法。
【請求項8】
前記第2のデータ記録の各々が、3つのカテゴリのうちの1つに当て嵌まり、第2のデータ記録に対する前記第2のエラー候補は、該第2のデータ記録が該3つのカテゴリのうちのどれに当て嵌まるかに基づいて判断され、該3つのカテゴリは、
前記第2のデータ記録が、ある一定のロケーションにいかなるコンテナも示さないが、前記第1のデータ記録が、そのロケーションにコンテナが存在するはずであることを示す場合の第1のカテゴリと、
前記第2のデータ記録が、ある一定のロケーションにコンテナを示すが、前記第1のデータ記録が、そのロケーションにコンテナが存在すべきでないことを示す場合の第2のカテゴリと、
前記第2のデータ記録が、ある一定のロケーションに第1のコンテナを示すが、前記第1のデータ記録が、そのロケーションに第2のコンテナを示し、該第1のコンテナと該第2のコンテナが、コンテナID及びコンテナ特性のうちの少なくとも一方において異なる場合の第3のカテゴリと、
を含み、
前記第2のエラー候補は、
前記第2のデータ記録が前記第1のカテゴリに当て嵌まる場合に前記第2の照会結果内の占有済みコンテナセルロケーションと、
前記第2のデータ記録が前記第2のカテゴリに当て嵌まる場合に前記第2の照会結果内の未占有コンテナセルロケーションと、
前記第2のデータ記録が前記第3のカテゴリに当て嵌まる場合に、占有するコンテナが前記第2のコンテナのコンテナID及びコンテナ特性を共有する前記第2の照会結果内の占有済みコンテナセルロケーションと、
を含む、
ことを特徴とする請求項6に記載の方法。
【請求項9】
前記第1のエラー候補の前記評価は、該第1のエラー候補の各々に関する確率尺度をその対応する第1のエラー候補と前記第1のデータ記録とに基づいて計算する段階を含み、前記第1のマッチは、該第1のエラー候補の該確率尺度に基づいて判断され、
前記第2のデータ記録の各々に対する前記第2のエラー候補の前記評価は、該第2のエラー候補の各々の可能性の確率尺度を該第2のエラー候補とその対応する第2のデータ記録とに基づいて計算する段階を含み、該第2のデータ記録の各々に対する前記第2のマッチは、その対応する第2のエラー候補の該確率尺度に基づいて判断される、
ことを特徴とする請求項6に記載の方法。
【請求項10】
前記第1のエラー候補及び前記第2のエラー候補の各々に関する前記確率尺度は、それぞれの該エラー候補内に記録された情報とその対応するデータ記録内の情報とに基づいて判断され、該情報は、ポジションデータ、コンテナセルロケーション、及び信頼性レベルのうちの少なくとも1つを含み、
前記判断は、前記第1のマッチの前記確率尺度と前記第2のマッチの前記確率尺度に基づく合計確率尺度とを比較することによって行われる、
ことを特徴とする請求項9に記載の方法。
【請求項11】
前記判断が、前記第1のデータ記録を訂正するというものである場合に、前記修正は、該第1のデータ記録内の情報を前記第1のマッチ内の対応する情報で置き換える段階、該第1のマッチ内の情報を該第1のデータ記録内の対応する情報で置き換える段階、及び該第1のデータ記録内の情報及び該第1のマッチ内の情報を使用することによって新規データ記録を作成する段階のうちの少なくとも1つを含み、
前記判断が、前記第2のデータ記録を訂正するというものである場合に、前記修正は、該第2のデータ記録の各々に対して、該第2のデータ記録内の情報をその対応する第2のマッチ内の対応する情報で置き換える段階、その対応する第2のマッチ内の情報を該第2のデータ記録内の対応する情報で置き換える段階、及び該第2のデータ記録内の情報及びその対応する第2のマッチ内の情報を使用することによって新規データ記録を作成する段階のうちの少なくとも1つを含む、
ことを特徴とする請求項1に記載の方法。
【請求項12】
前記判断は、以下の状況、すなわち、前記第1の照会結果又は前記第2の照会結果のいずれかが空であること、前記第1のマッチを判断することができないこと、及び前記第2のマッチのうちのいずれも判断することができないことのうちの少なくとも1つに対する例外を更に含み、
方法が、前記修正の前に例外処理を更に含み、該例外処理は、指示を準備してオペレータに出力し、該オペレータからの入力を受け入れてそれを検証し、かつ行う必要がある訂正を該入力に基づいて判断し、
方法が、前記例外処理によって判断された前記訂正に基づいて、以下のデータ記録、すなわち、前記第1のデータ記録、前記第1のマッチ、前記第2のデータ記録の組、及び前記第2のマッチの組のうちの少なくとも1つを修正する、
ことを特徴とする請求項1に記載の方法。
【請求項13】
前記第1のデータ記録は、コンテナ集荷イベント、コンテナ降荷イベント、及び車両移動イベントのうちの1つであるイベントタイプを更に含み、
前記第1のエラー候補は、前記イベントタイプ及び前記第1の照会結果に基づいて判断され、該第1のエラー候補は、該イベントタイプが前記コンテナ集荷イベントの場合に該第1の照会結果内に占有済みコンテナセルロケーションを含み、該第1のエラー候補は、該イベントタイプが前記コンテナ降荷イベント及び前記車両移動イベントのうちの一方である場合に該第1の照会結果内に非占有コンテナセルロケーションを含み、
前記第2のデータ記録の各々が、3つのカテゴリのうちの1つに当て嵌まり、第2のデータ記録に対する前記第2のエラー候補は、該第2のデータ記録が該3つのカテゴリのうちのどれに当て嵌まるかに基づいて判断され、該3つのカテゴリは、
前記第2のデータ記録が、ある一定のロケーションにいかなるコンテナも示さないが、前記第1のデータ記録が、そのロケーションにコンテナが存在するはずであることを示す場合の第1のカテゴリと、
前記第2のデータ記録が、ある一定のロケーションにコンテナを示すが、前記第1のデータ記録が、そのロケーションにコンテナが存在すべきでないことを示す場合の第2のカテゴリと、
前記第2のデータ記録が、ある一定のロケーションに第1のコンテナを示すが、前記第1のデータ記録が、そのロケーションに第2のコンテナを示し、該第1のコンテナと該第2のコンテナが、コンテナID及びコンテナ特性のうちの少なくとも一方において異なる場合の第3のカテゴリと、
を含み、
前記第2のエラー候補は、
前記第2のデータ記録が前記第1のカテゴリに当て嵌まる場合に前記第2の照会結果内の占有済みコンテナセルロケーションと、
前記第2のデータ記録が前記第2のカテゴリに当て嵌まる場合に前記第2の照会結果内の未占有コンテナセルロケーションと、
前記第2のデータ記録が前記第3のカテゴリに当て嵌まる場合に、占有するコンテナが前記第2のコンテナのコンテナID及びコンテナ特性を共有する前記第2の照会結果内の占有済みコンテナセルロケーションと、
を含む、
ことを特徴とする請求項6に記載の方法。
【請求項14】
前記第1のエラー候補の前記評価は、該第1のエラー候補の各々に関する確率尺度をその対応する第1のエラー候補と前記第1のデータ記録とに基づいて計算する段階を含み、前記第1のマッチは、該第1のエラー候補の該確率尺度に基づいて判断され、
前記第2のデータ記録の各々に対する前記第2のエラー候補の前記評価は、該第2のエラー候補の各々の可能性の確率尺度を該第2のエラー候補とその対応する第2のデータ記録とに基づいて計算する段階を含み、該第2のデータ記録の各々に対する前記第2のマッチは、その対応する第2のエラー候補の該確率尺度に基づいて判断され、
前記第1のエラー候補及び前記第2のエラー候補の各々に関する前記確率尺度は、それぞれの該エラー候補内に記録された情報とその対応するデータ記録内の情報とに基づいて判断され、該情報は、ポジションデータ、コンテナセルロケーション、及び信頼性レベルのうちの少なくとも1つを含む、
ことを特徴とする請求項13に記載の方法。
【請求項15】
コンテナ在庫追跡及びエラー訂正システムであって、
コンテナ保管施設内のコンテナを追跡し、該コンテナとコンテナ取り扱い機器とに関連付けられた在庫データを提供し、かつ該在庫データを在庫追跡データベースに格納するコンテナ在庫追跡システムと、
プロセッサに設けられて、前記コンテナ在庫追跡システムから少なくとも1つの第1のデータ記録を取得し、該第1の在庫データに関連付けられたイベントを識別し、該識別されたイベントに基づいてエラータイプリストを提供し、該エラータイプのうちのいずれかのエラーが発生したか否かを判断し、かつ該エラーの検出時に該エラーに関連する第2のデータ記録を識別するエラー検出モジュールと、
前記プロセッサに設けられて、前記エラーの前記検出時に、前記第1のデータ記録及び前記第2のデータ記録を取得し、該第1のデータ記録及び該第2のデータ記録に基づいて検索基準を設定し、該検索基準を用いて前記在庫追跡データベースに照会し、照会結果を取得し、該照会結果から該第1のデータ記録に対する第1のマッチと該第2のデータ記録に対する第2のマッチとを判断し、該第1のマッチを該第2のマッチと比較することにより、該第1のデータ記録又は該第2のデータ記録を訂正する必要があるか否かに関する判断を行い、該判断に基づいて該第1のデータ記録及び該第2のデータ記録のうちの少なくとも一方を修正し、かつ該修正データ記録を該在庫追跡データベースに報告するエラー訂正モジュールと、
を含むことを特徴とするコンテナ在庫追跡及びエラー訂正システム。
【請求項1】
少なくとも1つのプロセッサによって可読であるメモリデバイスに設けられ、コンテナ保管施設のコンテナ在庫追跡システムに関連付けられたコンテナ在庫データベース内のエラーを訂正するために該少なくとも1つのプロセッサによって実施される方法であって、
第1のデータ記録と第2のデータ記録の組との間でデータ矛盾が検出されている第1のデータ記録と1組の第2のデータ記録とを取得する段階と、
前記第1のデータ記録と前記第2のデータ記録の組とに基づいて、該第1のデータ記録に対応する第1の検索基準と1つの第2の基準が該第2のデータ記録の各々に対応する1組の第2の検索基準とを含む検索基準を設定する段階と、
前記コンテナ在庫データベースに照会して、前記第1のデータ記録に対応する第1の照会結果と前記第2のデータ記録の組に対応する第2の照会結果とを取得する段階と、
前記第1の照会結果を評価して、該第1の照会結果内のデータ記録である前記第1のデータ記録に対する第1のマッチを判断する段階であって、該第1のマッチに基づいて該第1のデータ記録を修正することが前記データ矛盾を解決することができる前記第1のマッチを判断する段階と、
前記第2の照会結果を評価して、前記第2のデータ記録の各々に対して1つの第2のマッチを含む1組の第2のマッチを判断する段階であって、該第2のデータ記録の各々をその対応する第2のマッチに基づいて修正することが前記データ矛盾を解決することができる前記1組の第2のマッチを判断する段階と、
前記第1のマッチを前記第2のマッチの組と比較することにより、前記第1のデータ記録又は前記第2のデータ記録の組を訂正すべきであるか否かを判断する段階と、
前記判断に基づいて、以下のデータ記録、すなわち、前記第1のデータ記録、前記第1のマッチ、前記第2のデータ記録の組、及び前記第2のマッチの組のうちの少なくとも1つを修正する段階と、
前記修正済みデータ記録を前記コンテナ在庫データベースに報告する段階と、
を含むことを特徴とする方法。
【請求項2】
請求項1における前記データ矛盾は、前記第1のデータ記録を前記コンテナ在庫データベース内のデータ記録と比較して該データ矛盾を検出し、かつ前記第2のデータ記録の組を識別するエラー検出方法によって検出される不一致であり、
前記エラー検出方法は、
前記コンテナ在庫追跡システムと、該在庫追跡機構に関連付けられた在庫管理システムと、オペレータからのエントリを受け入れるための入力デバイスと、前記少なくとも1つのデータ記録を生成するように構成されたコンピュータプログラムとを含むデータソースのうちの少なくとも1つによって提供される前記第1のデータ記録を取得する段階と、
前記施設内の前記コンテナ在庫及びコンテナ取り扱い機器に関連付けられた前記第1のデータ記録に基づいて所定のイベントリストの間でイベントを識別する段階と、
前記識別されたイベントに基づいてエラータイプのリストを準備する段階と、
エラー検査処理を通じてデータ矛盾が発生したか否かを判断する段階であって、前記リスト内の複数の前記エラータイプに対して、該エラー検査処理が、
前記エラータイプリストからエラータイプを選択する段階、
前記選択されたエラータイプと前記第1のデータ記録とに基づいて検索基準を判断する段階、
前記判断された検索基準を用いて前記コンテナ在庫データベースに照会し、該コンテナ在庫データベースから照会結果を取得する段階、及び
前記第1のデータ記録を前記照会結果内のデータ記録と互いに比較して、該第1のデータ記録と該照会結果内の該データ記録の間のデータ矛盾を検出する段階、
を含む前記判断する段階と、
前記データ矛盾の前記検出を受けて、該データ矛盾によって影響を受けるデータ記録を前記第2のデータ記録として前記照会結果の間で識別する段階と、
を含む。
【請求項3】
前記第1のデータ記録は、取り扱い機器のポジション、コンテナのロケーション、及び前記コンテナ保管施設内のコンテナセルロケーションのうちの少なくとも1つを含み、
前記所定のイベントリストは、コンテナ集荷イベント、コンテナ降荷イベント、及び車両移動イベントを含む、
ことを特徴とする請求項2に記載のエラー検出方法。
【請求項4】
前記車両移動イベントの識別時に、前記エラータイプリストは、前記コンテナ在庫データベースに従ってコンテナで占有されているロケーションを横切る前記コンテナ取り扱い機器の移動を示す移動違反エラーを含み、
前記コンテナ集荷イベントの識別時に、前記エラータイプリストは、集荷に利用可能なコンテナの不在、接近不能な集荷ロケーション、及び接近不能な作業ロケーションを含み、
前記コンテナ降荷イベントの識別時に、前記エラータイプリストは、空中降荷ロケーション、占有済み降荷ロケーション、及び接近不能な作業ロケーションを含む、
ことを特徴とする請求項2に記載のエラー検出方法。
【請求項5】
前記検索基準の各々が、コンテナID、コンテナ特性、コンテナセルロケーション、及び継続時間のうちの少なくとも1つを指定し、
前記検索基準の各々が、その対応するデータ記録内に記録された情報に基づいて判断され、該情報は、コンテナセルロケーション及びコンテナに対するポジションのうちの少なくとも一方を含む、
ことを特徴とする請求項1に記載の方法。
【請求項6】
前記第1の照会結果及び前記第2の照会結果の前記評価は、
前記第1の照会結果に基づいて前記第1のデータ記録に対する第1のエラー候補と、前記第2の照会結果に基づいて前記第2のデータ記録の各々に対する第2のエラー候補とを判断する段階と、
前記第1のエラー候補を評価して前記第1のデータ記録に対する前記第1のマッチを判断する段階と、
前記第2のデータ記録の各々に対する前記第2のエラー候補を評価して前記第2のマッチの組を判断する段階と、
を更に含む、
ことを特徴とする請求項1に記載の方法。
【請求項7】
前記第1のデータ記録は、コンテナ集荷イベント、コンテナ降荷イベント、及び車両移動イベントのうちの1つであるイベントタイプを更に含み、
前記第1のエラー候補は、前記イベントタイプと前記第1の照会結果とに基づいて判断され、該第1のエラー候補は、該イベントタイプが前記コンテナ集荷イベントである場合には、該第1の照会結果内の占有済みセルロケーションを含み、かつ該第1のエラー候補は、該イベントタイプが、前記コンテナ降荷イベント及び前記車両移動イベントのうちの一方である場合には、該第1の照会結果内の未占有コンテナセルロケーションを含む、
ことを特徴とする請求項6に記載の方法。
【請求項8】
前記第2のデータ記録の各々が、3つのカテゴリのうちの1つに当て嵌まり、第2のデータ記録に対する前記第2のエラー候補は、該第2のデータ記録が該3つのカテゴリのうちのどれに当て嵌まるかに基づいて判断され、該3つのカテゴリは、
前記第2のデータ記録が、ある一定のロケーションにいかなるコンテナも示さないが、前記第1のデータ記録が、そのロケーションにコンテナが存在するはずであることを示す場合の第1のカテゴリと、
前記第2のデータ記録が、ある一定のロケーションにコンテナを示すが、前記第1のデータ記録が、そのロケーションにコンテナが存在すべきでないことを示す場合の第2のカテゴリと、
前記第2のデータ記録が、ある一定のロケーションに第1のコンテナを示すが、前記第1のデータ記録が、そのロケーションに第2のコンテナを示し、該第1のコンテナと該第2のコンテナが、コンテナID及びコンテナ特性のうちの少なくとも一方において異なる場合の第3のカテゴリと、
を含み、
前記第2のエラー候補は、
前記第2のデータ記録が前記第1のカテゴリに当て嵌まる場合に前記第2の照会結果内の占有済みコンテナセルロケーションと、
前記第2のデータ記録が前記第2のカテゴリに当て嵌まる場合に前記第2の照会結果内の未占有コンテナセルロケーションと、
前記第2のデータ記録が前記第3のカテゴリに当て嵌まる場合に、占有するコンテナが前記第2のコンテナのコンテナID及びコンテナ特性を共有する前記第2の照会結果内の占有済みコンテナセルロケーションと、
を含む、
ことを特徴とする請求項6に記載の方法。
【請求項9】
前記第1のエラー候補の前記評価は、該第1のエラー候補の各々に関する確率尺度をその対応する第1のエラー候補と前記第1のデータ記録とに基づいて計算する段階を含み、前記第1のマッチは、該第1のエラー候補の該確率尺度に基づいて判断され、
前記第2のデータ記録の各々に対する前記第2のエラー候補の前記評価は、該第2のエラー候補の各々の可能性の確率尺度を該第2のエラー候補とその対応する第2のデータ記録とに基づいて計算する段階を含み、該第2のデータ記録の各々に対する前記第2のマッチは、その対応する第2のエラー候補の該確率尺度に基づいて判断される、
ことを特徴とする請求項6に記載の方法。
【請求項10】
前記第1のエラー候補及び前記第2のエラー候補の各々に関する前記確率尺度は、それぞれの該エラー候補内に記録された情報とその対応するデータ記録内の情報とに基づいて判断され、該情報は、ポジションデータ、コンテナセルロケーション、及び信頼性レベルのうちの少なくとも1つを含み、
前記判断は、前記第1のマッチの前記確率尺度と前記第2のマッチの前記確率尺度に基づく合計確率尺度とを比較することによって行われる、
ことを特徴とする請求項9に記載の方法。
【請求項11】
前記判断が、前記第1のデータ記録を訂正するというものである場合に、前記修正は、該第1のデータ記録内の情報を前記第1のマッチ内の対応する情報で置き換える段階、該第1のマッチ内の情報を該第1のデータ記録内の対応する情報で置き換える段階、及び該第1のデータ記録内の情報及び該第1のマッチ内の情報を使用することによって新規データ記録を作成する段階のうちの少なくとも1つを含み、
前記判断が、前記第2のデータ記録を訂正するというものである場合に、前記修正は、該第2のデータ記録の各々に対して、該第2のデータ記録内の情報をその対応する第2のマッチ内の対応する情報で置き換える段階、その対応する第2のマッチ内の情報を該第2のデータ記録内の対応する情報で置き換える段階、及び該第2のデータ記録内の情報及びその対応する第2のマッチ内の情報を使用することによって新規データ記録を作成する段階のうちの少なくとも1つを含む、
ことを特徴とする請求項1に記載の方法。
【請求項12】
前記判断は、以下の状況、すなわち、前記第1の照会結果又は前記第2の照会結果のいずれかが空であること、前記第1のマッチを判断することができないこと、及び前記第2のマッチのうちのいずれも判断することができないことのうちの少なくとも1つに対する例外を更に含み、
方法が、前記修正の前に例外処理を更に含み、該例外処理は、指示を準備してオペレータに出力し、該オペレータからの入力を受け入れてそれを検証し、かつ行う必要がある訂正を該入力に基づいて判断し、
方法が、前記例外処理によって判断された前記訂正に基づいて、以下のデータ記録、すなわち、前記第1のデータ記録、前記第1のマッチ、前記第2のデータ記録の組、及び前記第2のマッチの組のうちの少なくとも1つを修正する、
ことを特徴とする請求項1に記載の方法。
【請求項13】
前記第1のデータ記録は、コンテナ集荷イベント、コンテナ降荷イベント、及び車両移動イベントのうちの1つであるイベントタイプを更に含み、
前記第1のエラー候補は、前記イベントタイプ及び前記第1の照会結果に基づいて判断され、該第1のエラー候補は、該イベントタイプが前記コンテナ集荷イベントの場合に該第1の照会結果内に占有済みコンテナセルロケーションを含み、該第1のエラー候補は、該イベントタイプが前記コンテナ降荷イベント及び前記車両移動イベントのうちの一方である場合に該第1の照会結果内に非占有コンテナセルロケーションを含み、
前記第2のデータ記録の各々が、3つのカテゴリのうちの1つに当て嵌まり、第2のデータ記録に対する前記第2のエラー候補は、該第2のデータ記録が該3つのカテゴリのうちのどれに当て嵌まるかに基づいて判断され、該3つのカテゴリは、
前記第2のデータ記録が、ある一定のロケーションにいかなるコンテナも示さないが、前記第1のデータ記録が、そのロケーションにコンテナが存在するはずであることを示す場合の第1のカテゴリと、
前記第2のデータ記録が、ある一定のロケーションにコンテナを示すが、前記第1のデータ記録が、そのロケーションにコンテナが存在すべきでないことを示す場合の第2のカテゴリと、
前記第2のデータ記録が、ある一定のロケーションに第1のコンテナを示すが、前記第1のデータ記録が、そのロケーションに第2のコンテナを示し、該第1のコンテナと該第2のコンテナが、コンテナID及びコンテナ特性のうちの少なくとも一方において異なる場合の第3のカテゴリと、
を含み、
前記第2のエラー候補は、
前記第2のデータ記録が前記第1のカテゴリに当て嵌まる場合に前記第2の照会結果内の占有済みコンテナセルロケーションと、
前記第2のデータ記録が前記第2のカテゴリに当て嵌まる場合に前記第2の照会結果内の未占有コンテナセルロケーションと、
前記第2のデータ記録が前記第3のカテゴリに当て嵌まる場合に、占有するコンテナが前記第2のコンテナのコンテナID及びコンテナ特性を共有する前記第2の照会結果内の占有済みコンテナセルロケーションと、
を含む、
ことを特徴とする請求項6に記載の方法。
【請求項14】
前記第1のエラー候補の前記評価は、該第1のエラー候補の各々に関する確率尺度をその対応する第1のエラー候補と前記第1のデータ記録とに基づいて計算する段階を含み、前記第1のマッチは、該第1のエラー候補の該確率尺度に基づいて判断され、
前記第2のデータ記録の各々に対する前記第2のエラー候補の前記評価は、該第2のエラー候補の各々の可能性の確率尺度を該第2のエラー候補とその対応する第2のデータ記録とに基づいて計算する段階を含み、該第2のデータ記録の各々に対する前記第2のマッチは、その対応する第2のエラー候補の該確率尺度に基づいて判断され、
前記第1のエラー候補及び前記第2のエラー候補の各々に関する前記確率尺度は、それぞれの該エラー候補内に記録された情報とその対応するデータ記録内の情報とに基づいて判断され、該情報は、ポジションデータ、コンテナセルロケーション、及び信頼性レベルのうちの少なくとも1つを含む、
ことを特徴とする請求項13に記載の方法。
【請求項15】
コンテナ在庫追跡及びエラー訂正システムであって、
コンテナ保管施設内のコンテナを追跡し、該コンテナとコンテナ取り扱い機器とに関連付けられた在庫データを提供し、かつ該在庫データを在庫追跡データベースに格納するコンテナ在庫追跡システムと、
プロセッサに設けられて、前記コンテナ在庫追跡システムから少なくとも1つの第1のデータ記録を取得し、該第1の在庫データに関連付けられたイベントを識別し、該識別されたイベントに基づいてエラータイプリストを提供し、該エラータイプのうちのいずれかのエラーが発生したか否かを判断し、かつ該エラーの検出時に該エラーに関連する第2のデータ記録を識別するエラー検出モジュールと、
前記プロセッサに設けられて、前記エラーの前記検出時に、前記第1のデータ記録及び前記第2のデータ記録を取得し、該第1のデータ記録及び該第2のデータ記録に基づいて検索基準を設定し、該検索基準を用いて前記在庫追跡データベースに照会し、照会結果を取得し、該照会結果から該第1のデータ記録に対する第1のマッチと該第2のデータ記録に対する第2のマッチとを判断し、該第1のマッチを該第2のマッチと比較することにより、該第1のデータ記録又は該第2のデータ記録を訂正する必要があるか否かに関する判断を行い、該判断に基づいて該第1のデータ記録及び該第2のデータ記録のうちの少なくとも一方を修正し、かつ該修正データ記録を該在庫追跡データベースに報告するエラー訂正モジュールと、
を含むことを特徴とするコンテナ在庫追跡及びエラー訂正システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10A】
【図10B】
【図11】
【図12】
【図13A】
【図13B】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19A】
【図19B】
【図19C】
【図19D】
【図20】
【図21】
【図22A】
【図22B】
【図22C】
【図22D】
【図23A】
【図23B】
【図23C】
【図23D】
【図23E】
【図23F】
【図24】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10A】
【図10B】
【図11】
【図12】
【図13A】
【図13B】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19A】
【図19B】
【図19C】
【図19D】
【図20】
【図21】
【図22A】
【図22B】
【図22C】
【図22D】
【図23A】
【図23B】
【図23C】
【図23D】
【図23E】
【図23F】
【図24】
【公表番号】特表2013−503800(P2013−503800A)
【公表日】平成25年2月4日(2013.2.4)
【国際特許分類】
【出願番号】特願2012−527980(P2012−527980)
【出願日】平成22年8月31日(2010.8.31)
【国際出願番号】PCT/US2010/047370
【国際公開番号】WO2011/028726
【国際公開日】平成23年3月10日(2011.3.10)
【出願人】(508006274)コンテナートラック インコーポレイテッド (3)
【Fターム(参考)】
【公表日】平成25年2月4日(2013.2.4)
【国際特許分類】
【出願日】平成22年8月31日(2010.8.31)
【国際出願番号】PCT/US2010/047370
【国際公開番号】WO2011/028726
【国際公開日】平成23年3月10日(2011.3.10)
【出願人】(508006274)コンテナートラック インコーポレイテッド (3)
【Fターム(参考)】
[ Back to top ]