(57)【要約】【課題】コンテナ保管施設のコンテナ在庫追跡システムに関連付けられたコンテナ在庫データベース内のエラーを自動的に検出して訂正する。【解決手段】在庫追跡システム内のプロセッサは、エラーを検出する方法を実施し、このエラー検出方法は、第１のデータ記録を取得し、第１の記録に関連するイベント（例えば、コンテナの集荷又は降荷、又は取り扱い機器の移動）を識別し、識別されたイベントに基づいてエラータイプリストを提供し、検査処理を通じてデータエラーが発生したか否かを判断する。エラーを訂正するために、本方法は、更に、エラー検出結果に基づいて検索基準を設定し、設定された基準を用いて在庫追跡データベースに照会し、照会結果に基づいてエラー候補を識別し、エラー候補を評価してエラー候補の中で１つ又は複数のマッチを識別し、識別された１つ又は複数のマッチと共にエラー検出結果を修正することによってエラーを訂正する。【選択図】図８Ｂ
2013503800.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのプロセッサによって可読であるメモリデバイスに設けられ、コンテナ保管施設のコンテナ在庫追跡システムに関連付けられたコンテナ在庫データベース内のエラーを訂正するために該少なくとも１つのプロセッサによって実施される方法であって、
第１のデータ記録と第２のデータ記録の組との間でデータ矛盾が検出されている第１のデータ記録と１組の第２のデータ記録とを取得する段階と、
前記第１のデータ記録と前記第２のデータ記録の組とに基づいて、該第１のデータ記録に対応する第１の検索基準と１つの第２の基準が該第２のデータ記録の各々に対応する１組の第２の検索基準とを含む検索基準を設定する段階と、
前記コンテナ在庫データベースに照会して、前記第１のデータ記録に対応する第１の照会結果と前記第２のデータ記録の組に対応する第２の照会結果とを取得する段階と、
前記第１の照会結果を評価して、該第１の照会結果内のデータ記録である前記第１のデータ記録に対する第１のマッチを判断する段階であって、該第１のマッチに基づいて該第１のデータ記録を修正することが前記データ矛盾を解決することができる前記第１のマッチを判断する段階と、
前記第２の照会結果を評価して、前記第２のデータ記録の各々に対して１つの第２のマッチを含む１組の第２のマッチを判断する段階であって、該第２のデータ記録の各々をその対応する第２のマッチに基づいて修正することが前記データ矛盾を解決することができる前記１組の第２のマッチを判断する段階と、
前記第１のマッチを前記第２のマッチの組と比較することにより、前記第１のデータ記録又は前記第２のデータ記録の組を訂正すべきであるか否かを判断する段階と、
前記判断に基づいて、以下のデータ記録、すなわち、前記第１のデータ記録、前記第１のマッチ、前記第２のデータ記録の組、及び前記第２のマッチの組のうちの少なくとも１つを修正する段階と、
前記修正済みデータ記録を前記コンテナ在庫データベースに報告する段階と、
を含むことを特徴とする方法。
【請求項２】
請求項１における前記データ矛盾は、前記第１のデータ記録を前記コンテナ在庫データベース内のデータ記録と比較して該データ矛盾を検出し、かつ前記第２のデータ記録の組を識別するエラー検出方法によって検出される不一致であり、
前記エラー検出方法は、
前記コンテナ在庫追跡システムと、該在庫追跡機構に関連付けられた在庫管理システムと、オペレータからのエントリを受け入れるための入力デバイスと、前記少なくとも１つのデータ記録を生成するように構成されたコンピュータプログラムとを含むデータソースのうちの少なくとも１つによって提供される前記第１のデータ記録を取得する段階と、
前記施設内の前記コンテナ在庫及びコンテナ取り扱い機器に関連付けられた前記第１のデータ記録に基づいて所定のイベントリストの間でイベントを識別する段階と、
前記識別されたイベントに基づいてエラータイプのリストを準備する段階と、
エラー検査処理を通じてデータ矛盾が発生したか否かを判断する段階であって、前記リスト内の複数の前記エラータイプに対して、該エラー検査処理が、
前記エラータイプリストからエラータイプを選択する段階、
前記選択されたエラータイプと前記第１のデータ記録とに基づいて検索基準を判断する段階、
前記判断された検索基準を用いて前記コンテナ在庫データベースに照会し、該コンテナ在庫データベースから照会結果を取得する段階、及び
前記第１のデータ記録を前記照会結果内のデータ記録と互いに比較して、該第１のデータ記録と該照会結果内の該データ記録の間のデータ矛盾を検出する段階、
を含む前記判断する段階と、
前記データ矛盾の前記検出を受けて、該データ矛盾によって影響を受けるデータ記録を前記第２のデータ記録として前記照会結果の間で識別する段階と、
を含む。
【請求項３】
前記第１のデータ記録は、取り扱い機器のポジション、コンテナのロケーション、及び前記コンテナ保管施設内のコンテナセルロケーションのうちの少なくとも１つを含み、
前記所定のイベントリストは、コンテナ集荷イベント、コンテナ降荷イベント、及び車両移動イベントを含む、
ことを特徴とする請求項２に記載のエラー検出方法。
【請求項４】
前記車両移動イベントの識別時に、前記エラータイプリストは、前記コンテナ在庫データベースに従ってコンテナで占有されているロケーションを横切る前記コンテナ取り扱い機器の移動を示す移動違反エラーを含み、
前記コンテナ集荷イベントの識別時に、前記エラータイプリストは、集荷に利用可能なコンテナの不在、接近不能な集荷ロケーション、及び接近不能な作業ロケーションを含み、
前記コンテナ降荷イベントの識別時に、前記エラータイプリストは、空中降荷ロケーション、占有済み降荷ロケーション、及び接近不能な作業ロケーションを含む、
ことを特徴とする請求項２に記載のエラー検出方法。
【請求項５】
前記検索基準の各々が、コンテナＩＤ、コンテナ特性、コンテナセルロケーション、及び継続時間のうちの少なくとも１つを指定し、
前記検索基準の各々が、その対応するデータ記録内に記録された情報に基づいて判断され、該情報は、コンテナセルロケーション及びコンテナに対するポジションのうちの少なくとも一方を含む、
ことを特徴とする請求項１に記載の方法。
【請求項６】
前記第１の照会結果及び前記第２の照会結果の前記評価は、
前記第１の照会結果に基づいて前記第１のデータ記録に対する第１のエラー候補と、前記第２の照会結果に基づいて前記第２のデータ記録の各々に対する第２のエラー候補とを判断する段階と、
前記第１のエラー候補を評価して前記第１のデータ記録に対する前記第１のマッチを判断する段階と、
前記第２のデータ記録の各々に対する前記第２のエラー候補を評価して前記第２のマッチの組を判断する段階と、
を更に含む、
ことを特徴とする請求項１に記載の方法。
【請求項７】
前記第１のデータ記録は、コンテナ集荷イベント、コンテナ降荷イベント、及び車両移動イベントのうちの１つであるイベントタイプを更に含み、
前記第１のエラー候補は、前記イベントタイプと前記第１の照会結果とに基づいて判断され、該第１のエラー候補は、該イベントタイプが前記コンテナ集荷イベントである場合には、該第１の照会結果内の占有済みセルロケーションを含み、かつ該第１のエラー候補は、該イベントタイプが、前記コンテナ降荷イベント及び前記車両移動イベントのうちの一方である場合には、該第１の照会結果内の未占有コンテナセルロケーションを含む、
ことを特徴とする請求項６に記載の方法。
【請求項８】
前記第２のデータ記録の各々が、３つのカテゴリのうちの１つに当て嵌まり、第２のデータ記録に対する前記第２のエラー候補は、該第２のデータ記録が該３つのカテゴリのうちのどれに当て嵌まるかに基づいて判断され、該３つのカテゴリは、
前記第２のデータ記録が、ある一定のロケーションにいかなるコンテナも示さないが、前記第１のデータ記録が、そのロケーションにコンテナが存在するはずであることを示す場合の第１のカテゴリと、
前記第２のデータ記録が、ある一定のロケーションにコンテナを示すが、前記第１のデータ記録が、そのロケーションにコンテナが存在すべきでないことを示す場合の第２のカテゴリと、
前記第２のデータ記録が、ある一定のロケーションに第１のコンテナを示すが、前記第１のデータ記録が、そのロケーションに第２のコンテナを示し、該第１のコンテナと該第２のコンテナが、コンテナＩＤ及びコンテナ特性のうちの少なくとも一方において異なる場合の第３のカテゴリと、
を含み、
前記第２のエラー候補は、
前記第２のデータ記録が前記第１のカテゴリに当て嵌まる場合に前記第２の照会結果内の占有済みコンテナセルロケーションと、
前記第２のデータ記録が前記第２のカテゴリに当て嵌まる場合に前記第２の照会結果内の未占有コンテナセルロケーションと、
前記第２のデータ記録が前記第３のカテゴリに当て嵌まる場合に、占有するコンテナが前記第２のコンテナのコンテナＩＤ及びコンテナ特性を共有する前記第２の照会結果内の占有済みコンテナセルロケーションと、
を含む、
ことを特徴とする請求項６に記載の方法。
【請求項９】
前記第１のエラー候補の前記評価は、該第１のエラー候補の各々に関する確率尺度をその対応する第１のエラー候補と前記第１のデータ記録とに基づいて計算する段階を含み、前記第１のマッチは、該第１のエラー候補の該確率尺度に基づいて判断され、
前記第２のデータ記録の各々に対する前記第２のエラー候補の前記評価は、該第２のエラー候補の各々の可能性の確率尺度を該第２のエラー候補とその対応する第２のデータ記録とに基づいて計算する段階を含み、該第２のデータ記録の各々に対する前記第２のマッチは、その対応する第２のエラー候補の該確率尺度に基づいて判断される、
ことを特徴とする請求項６に記載の方法。
【請求項１０】
前記第１のエラー候補及び前記第２のエラー候補の各々に関する前記確率尺度は、それぞれの該エラー候補内に記録された情報とその対応するデータ記録内の情報とに基づいて判断され、該情報は、ポジションデータ、コンテナセルロケーション、及び信頼性レベルのうちの少なくとも１つを含み、
前記判断は、前記第１のマッチの前記確率尺度と前記第２のマッチの前記確率尺度に基づく合計確率尺度とを比較することによって行われる、
ことを特徴とする請求項９に記載の方法。
【請求項１１】
前記判断が、前記第１のデータ記録を訂正するというものである場合に、前記修正は、該第１のデータ記録内の情報を前記第１のマッチ内の対応する情報で置き換える段階、該第１のマッチ内の情報を該第１のデータ記録内の対応する情報で置き換える段階、及び該第１のデータ記録内の情報及び該第１のマッチ内の情報を使用することによって新規データ記録を作成する段階のうちの少なくとも１つを含み、
前記判断が、前記第２のデータ記録を訂正するというものである場合に、前記修正は、該第２のデータ記録の各々に対して、該第２のデータ記録内の情報をその対応する第２のマッチ内の対応する情報で置き換える段階、その対応する第２のマッチ内の情報を該第２のデータ記録内の対応する情報で置き換える段階、及び該第２のデータ記録内の情報及びその対応する第２のマッチ内の情報を使用することによって新規データ記録を作成する段階のうちの少なくとも１つを含む、
ことを特徴とする請求項１に記載の方法。
【請求項１２】
前記判断は、以下の状況、すなわち、前記第１の照会結果又は前記第２の照会結果のいずれかが空であること、前記第１のマッチを判断することができないこと、及び前記第２のマッチのうちのいずれも判断することができないことのうちの少なくとも１つに対する例外を更に含み、
方法が、前記修正の前に例外処理を更に含み、該例外処理は、指示を準備してオペレータに出力し、該オペレータからの入力を受け入れてそれを検証し、かつ行う必要がある訂正を該入力に基づいて判断し、
方法が、前記例外処理によって判断された前記訂正に基づいて、以下のデータ記録、すなわち、前記第１のデータ記録、前記第１のマッチ、前記第２のデータ記録の組、及び前記第２のマッチの組のうちの少なくとも１つを修正する、
ことを特徴とする請求項１に記載の方法。
【請求項１３】
前記第１のデータ記録は、コンテナ集荷イベント、コンテナ降荷イベント、及び車両移動イベントのうちの１つであるイベントタイプを更に含み、
前記第１のエラー候補は、前記イベントタイプ及び前記第１の照会結果に基づいて判断され、該第１のエラー候補は、該イベントタイプが前記コンテナ集荷イベントの場合に該第１の照会結果内に占有済みコンテナセルロケーションを含み、該第１のエラー候補は、該イベントタイプが前記コンテナ降荷イベント及び前記車両移動イベントのうちの一方である場合に該第１の照会結果内に非占有コンテナセルロケーションを含み、
前記第２のデータ記録の各々が、３つのカテゴリのうちの１つに当て嵌まり、第２のデータ記録に対する前記第２のエラー候補は、該第２のデータ記録が該３つのカテゴリのうちのどれに当て嵌まるかに基づいて判断され、該３つのカテゴリは、
前記第２のデータ記録が、ある一定のロケーションにいかなるコンテナも示さないが、前記第１のデータ記録が、そのロケーションにコンテナが存在するはずであることを示す場合の第１のカテゴリと、
前記第２のデータ記録が、ある一定のロケーションにコンテナを示すが、前記第１のデータ記録が、そのロケーションにコンテナが存在すべきでないことを示す場合の第２のカテゴリと、
前記第２のデータ記録が、ある一定のロケーションに第１のコンテナを示すが、前記第１のデータ記録が、そのロケーションに第２のコンテナを示し、該第１のコンテナと該第２のコンテナが、コンテナＩＤ及びコンテナ特性のうちの少なくとも一方において異なる場合の第３のカテゴリと、
を含み、
前記第２のエラー候補は、
前記第２のデータ記録が前記第１のカテゴリに当て嵌まる場合に前記第２の照会結果内の占有済みコンテナセルロケーションと、
前記第２のデータ記録が前記第２のカテゴリに当て嵌まる場合に前記第２の照会結果内の未占有コンテナセルロケーションと、
前記第２のデータ記録が前記第３のカテゴリに当て嵌まる場合に、占有するコンテナが前記第２のコンテナのコンテナＩＤ及びコンテナ特性を共有する前記第２の照会結果内の占有済みコンテナセルロケーションと、
を含む、
ことを特徴とする請求項６に記載の方法。
【請求項１４】
前記第１のエラー候補の前記評価は、該第１のエラー候補の各々に関する確率尺度をその対応する第１のエラー候補と前記第１のデータ記録とに基づいて計算する段階を含み、前記第１のマッチは、該第１のエラー候補の該確率尺度に基づいて判断され、
前記第２のデータ記録の各々に対する前記第２のエラー候補の前記評価は、該第２のエラー候補の各々の可能性の確率尺度を該第２のエラー候補とその対応する第２のデータ記録とに基づいて計算する段階を含み、該第２のデータ記録の各々に対する前記第２のマッチは、その対応する第２のエラー候補の該確率尺度に基づいて判断され、
前記第１のエラー候補及び前記第２のエラー候補の各々に関する前記確率尺度は、それぞれの該エラー候補内に記録された情報とその対応するデータ記録内の情報とに基づいて判断され、該情報は、ポジションデータ、コンテナセルロケーション、及び信頼性レベルのうちの少なくとも１つを含む、
ことを特徴とする請求項１３に記載の方法。
【請求項１５】
コンテナ在庫追跡及びエラー訂正システムであって、
コンテナ保管施設内のコンテナを追跡し、該コンテナとコンテナ取り扱い機器とに関連付けられた在庫データを提供し、かつ該在庫データを在庫追跡データベースに格納するコンテナ在庫追跡システムと、
プロセッサに設けられて、前記コンテナ在庫追跡システムから少なくとも１つの第１のデータ記録を取得し、該第１の在庫データに関連付けられたイベントを識別し、該識別されたイベントに基づいてエラータイプリストを提供し、該エラータイプのうちのいずれかのエラーが発生したか否かを判断し、かつ該エラーの検出時に該エラーに関連する第２のデータ記録を識別するエラー検出モジュールと、
前記プロセッサに設けられて、前記エラーの前記検出時に、前記第１のデータ記録及び前記第２のデータ記録を取得し、該第１のデータ記録及び該第２のデータ記録に基づいて検索基準を設定し、該検索基準を用いて前記在庫追跡データベースに照会し、照会結果を取得し、該照会結果から該第１のデータ記録に対する第１のマッチと該第２のデータ記録に対する第２のマッチとを判断し、該第１のマッチを該第２のマッチと比較することにより、該第１のデータ記録又は該第２のデータ記録を訂正する必要があるか否かに関する判断を行い、該判断に基づいて該第１のデータ記録及び該第２のデータ記録のうちの少なくとも一方を修正し、かつ該修正データ記録を該在庫追跡データベースに報告するエラー訂正モジュールと、
を含むことを特徴とするコンテナ在庫追跡及びエラー訂正システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテナ輸送ヤード内のコンテナのロケーションにおけるエラーの検出及び訂正に関する。より具体的には、本発明は、コンテナのロケーションを示す在庫追跡データベース及び／又はシステム内の在庫データエラーの検出及び訂正に関する。
【背景技術】
【０００２】
過去１０年にわたって、輸送コンテナの取扱量は劇的に増加した。取扱量におけるそのような増加は、実時間の注文可視性に対して悪影響を及ぼしている。取引のあらゆる相手先は、コンテナの輸送行程を通してロケーション情報へのアクセスを有することを必要とする。しかし、通常、コンテナは、港では荷受業者に対して不可視である。
【０００３】
輸送コンテナに対する作業は、一般的に構外作業、構内作業、ヤード作業を含む。これらの作業は、ヤード事務員、輸送機器のオペレータ、及び昇降機器のオペレータによって実施される。輸送機器（又はヤード牽引車）は、コンテナを１つのロケーションから別のロケーションに移動することはできるが、コンテナを荷揚げして荷降ろしすることができないあらゆるタイプの取り扱い機器（ＨＥ）を指す。昇降機器は、コンテナを荷揚げして、地面の上、別のコンテナの上、又は輸送に向けて別のＨＥの上に荷降ろしすることができるあらゆるタイプのＨＥを指す。本明細書の便宜上、ヤード牽引車及びコンテナ取り扱い機器（ＣＨＥ）という用語をそれぞれ輸送機器及び昇降機器を指す上に使用する。実施される作業の中では、全体の平均業務の中でヤード作業（輸送コンテナヤード内の作業）が最も時間を消費する。従来、ヤード作業中には、ヤード事務員は、集荷するのに正しいコンテナの検証するために、ＣＨＥオペレータに付き添わなければならない。コンテナが、あるべきロケーションに存在しない場合には、一般的なヤード事務員は、そのコンテナを探してヤードの方々を歩き回る。ヤード事務員がそのコンテナを見つけると、ヤード牽引車の運転手とコンテナを集荷してヤード牽引車の上に積載するＣＨＥオペレータの両方に新しいロケーションに臨場するように無線連絡する必要がある。たとえ彼らが臨場したとしても、正しいコンテナは、他のコンテナに埋もれている可能性があり、これらの他のコンテナをＣＨＥオペレータが取り除く必要があり、その間中、ヤード事務員及びヤード牽引車の運転手は待機している。ヤード牽引車が到着するまでにＣＨＥオペレータが検証済みのロケーションでコンテナを自由に積載することができるとしたら、その方が効率的であると考えられる。
【０００４】
コンテナターミナルでの取り扱い処理の効率を改善するために、ヤード内で実際に何が起こっているかを追跡してモニタする在庫追跡システムが開発されている。一般的に、そのような在庫追跡システムは、実時間測位技術（ＲＦＩＤ、ＧＰＳ、及び無線ビーコン等）と無線通信技術の両方を使用する。これらのシステムは、コンテナのロケーションの能動的追跡を可能にし（一般的にコンテナを移動するＨＥの様々な個体の移動及びロケーションを追跡することにより）、追跡情報を在庫追跡データベースに報告し、ターミナル運用システム（ＴＯＳ）とインタフェースで接続し、ＨＥがコンテナを集荷又は荷降ろしする度にコンテナのロケーションを更新する。これらの在庫追跡システムは、コンテナヤードの在庫の精度を改善し、それによって不明コンテナを低減し、ＴＯＳ性能を最大化し、ＨＥの効率を改善することを目的とする。
【０００５】
理想的には、実時間測位システムが１００％の測位精度を得ることができ、無線通信システムがゼロ損失及びゼロノイズを有する場合には、在庫追跡システムは、コンテナ在庫のロケーションにおいて１００％の精度を実際に得ることができる。しかし、現実には、センサのバイアス及びノイズ、通信の損失及びエラー、並びに構成要素又はシステムの障害及び作業エラーに起因して在庫エラーが発生する。
【０００６】
従来技術の在庫追跡システムは、エラー、並びにエラーのタイプを検出して報告するのにＨＥのオペレータに重く依存する。ＣＨＥオペレータは、集荷ロケーション（時に出荷ロケーションとも呼ぶ）、コンテナＩＤ、及び降荷ロケーション（すなわち、ターゲットロケーション）を有する任務を受けると、ＣＨＥを集荷ロケーションまで運転して指定されたコンテナを集荷し、次に、降荷ロケーションまで運転して降荷ロケーションにコンテナを荷置きする。従来技術の在庫追跡システムは、実際の集荷ロケーションを指定集荷ロケーションと、更に、実際の降荷ロケーションを指定降荷ロケーションと比較し、不一致があった場合は運転手に警告し、運転手は、作業中に間違えてしまわない限り、そのエラーを報告するはずである。代替的に、作業を実施しようとする際のエラーを報告するのは運転手次第である。
【０００７】
例えば、指定集荷ロケーションにいかなるそのようなコンテナも存在せず、又は障害物によってＣＨＥが集荷ロケーションに到着することができない場合には、ＣＨＥオペレータは、ＣＨＥ内に設けられたユーザインタフェースを用いてエラーを報告する必要があり、次に、システムは、任務を取り消して次の任務に移ることになる。指定コンテナが実際には隣のロケーションにある場合、例えば、指定集荷ロケーションの下にあり、指定コンテナの上にコンテナが載っている場合は（一般的にコンテナは上下に積み重ねられる）、ＣＨＥオペレータは、指定集荷ロケーションとは異なる実際の集荷ロケーションにおいてコンテナを集荷する必要がある。システムは、実際の集荷ロケーションを任務内に指定された集荷ロケーションと比較して、これらのロケーションが異なる場合は警告を発するので、ＣＨＥオペレータは警告を受けることになり、警告信号を消去するためにはエラーを報告する必要がある。ＣＨＥオペレータがコンテナを降荷ロケーションに輸送し、降荷ロケーションが既に占有されていた場合には、ＣＨＥオペレータは、エラーを報告して、降荷ロケーションを再判断するようにシステムに要求する必要がある。一方、降荷ロケーション指示内に指定された降荷ロケーションの直下にいかなるコンテナも存在しなかった場合には、ＣＨＥオペレータは、指定降荷ロケーションよりも低いロケーションにコンテナを降荷しなければならなくなり、それによってシステムは、運転手に間違った作業を警告するようにトリガされることになる。この場合、ＣＨＥオペレータは、再度エラーを報告する必要がある。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来技術によって使用されるそのような従来のマニュアルな鈍重な手法は、いくつかの欠点を有する。第１に、システムは、集荷ロケーション及び降荷ロケーションに着目するのみであるから、検出されるエラーのタイプが限られる。第２に、システムは、間違った在庫記録を含む任務を割り当てた時にのみ在庫エラーを検出及び訂正することができ、その結果、在庫エラーは、検出されることなく伝播する可能性があり、隣の在庫のエラー報告をもたらす場合がある。第３に、この手法は、エラー検出及びエラー訂正においてＣＨＥオペレータの入力を必要とし、それによってＣＨＥオペレータに対する付加的な作業負荷がもたらされ、オペレータの作業が遅くなり、ＣＨＥとＣＨＥオペレータの両方の時間に関して貴重なリソースが浪費される。第４に、人間は間違いを犯す可能性があり、この手法は、ＣＨＥオペレータの入力におけるエラーに脆弱である。その結果、ＣＨＥオペレータは、エラー訂正のために追加情報を入力する必要があり、又は追加職員が、報告されたロケーションに手動エラー訂正のために向かわなければならない。
【課題を解決するための手段】
【０００９】
本発明の実施形態により、在庫データベースに報告されるか、又は既に在庫データベースに存在する在庫データを検査してその検証することにより、従来のシステムと比較してデータ品質を改善するコンテナ在庫データベース内のエラーを検出及び訂正するためのシステムを提供する。システムは、あらゆる不整合性又はデータ矛盾に対して、到着するデータ記録を在庫データベース内のデータ記録に対して調べることによって在庫データベース内のデータエラーを自動的に検出し、データ矛盾が検出される度にデータ記録を報告する。更に、システムは、コンテナと、周囲のコンテナセルロケーションに関連する作業とにおいて検出されたエラーを調べ、周囲のコンテナ及び関連作業に基づいてエラー候補を識別し、エラー候補を評価してエラー訂正のためのマッチ（又は複数のマッチ）を識別し、関連データ記録を修正してエラーを訂正することによって自動エラー訂正を実施する。従って、システムは、在庫データベース内でのデータエラーの伝播を実質的に軽減することができ、それによってデータエラーの発生が低減し、在庫データベースの品質が改善される。その後にＨＥオペレータは、作業中に有意に少ないエラーにしか遭遇しなくなり、これは、エラー報告に関連する付加的な作業負荷からオペレータを解放するのに役立ち、コンテナの正しいロケーションを検索するのに浪費される時間が低減する。
【００１０】
システムは、コンテナ在庫追跡システム、在庫追跡システムと連係する在庫管理システム、オペレータからの入力を受け入れるための入力デバイス、及びデータ記録を生成するコンピュータプログラムのうちの１つから少なくとも１つの第１のデータ記録を最初に取得するエラー検出方法で在庫データにおけるエラー検出を実施する少なくとも１つの処理デバイスを含む。次に、本方法は、第１のデータ記録に基づいて所定のイベントの組の中でイベントを識別する。所定のイベントの組は、施設内のコンテナ在庫及びＨＥに関連する作業を表す。そのような作業の例は、コンテナ集荷作業、コンテナ降荷作業、及びＨＥが移動している場合の車両移動作業を含む。
【００１１】
更に、エラー検出方法は、識別されたイベントに基づいてエラータイプリストを提供し、各エラータイプを検査するコンピュータプロセッサを使用する処理を通じてデータエラーが発生したか否かを判断する。検査段階の各々では、プロセッサは、エラータイプリストからエラータイプを選択し、選択したエラータイプと第１のデータ記録とに基づいて検索基準を判断し、判断した検索基準を用いてデータベースに照会し、データベースから照会結果を取得する。次に、データ矛盾を検出するために、照会結果は、第１のデータ記録と比較され、データ矛盾の検出を受けて、選択したエラータイプのデータエラーが検出されたことが報告される。すなわち、本方法は、オペレータの直接介入なしに自動的にデータエラーを検出する。
【００１２】
一実施形態では、データエラーの検出を受けて、プロセッサは、照会結果内のデータ記録の中でデータ矛盾によって影響を受けているデータ記録を更に識別する。識別されたデータ記録を第２のデータ記録と呼び、これらの第２のデータ記録は、第１のデータ記録と共にエラーデータ記録と見なされる。また、プロセッサは、エラーデータ記録をコンテナ在庫追跡システムと、エラーデータ記録をオペレータに対して表示するための出力手段とのうちの少なくとも一方に報告する。従って、エラーデータ記録をエラー訂正に向けて更に分析することができる。
【００１３】
データエラーの検出を受けて、プロセッサは、第１のデータ記録と１組の第２のデータ記録とを含むエラーデータ記録を最初に取得するエラー検出方法でエラーデータ記録におけるエラー訂正を更に実施する。エラーの検出は、第１のデータ記録と第２のデータ記録の組とが互いに矛盾していることを示すので、２つの一方が必ずエラーを含むはずである。訂正を加えるためには、プロセッサは、いずれを訂正する必要があるか、及び如何にそれを訂正するかを最初に判断する必要がある。
【００１４】
一実施形態では、プロセッサは、次に、第１のデータ記録と、１つの第２の基準が第２のデータ記録の各々に対応する１組の第２の検索基準とに基づいて第１の検索基準を設定し、設定した検索基準を用いてコンテナ在庫データベースに照会し、第１のデータ記録に対応する第１の照会結果と第２のデータ記録の組に対応する第２の照会結果とを取得する。次に、第１の照会結果が分析及び評価され、第１のデータ記録に対して第１のマッチが識別され、第１のマッチは、第１の照会結果内のデータ記録であり、このマッチに基づいて第１のデータ記録を修正することによってエラーを除去することができる。同様に各第２のデータ記録に対する第２の照会結果が評価され、各第２のデータ記録に対する第２のマッチが識別される。次に、第１のマッチと第２のマッチの組とが比較され、第１のデータ記録又は第２のデータ記録の組を訂正すべきであるか否かが識別される。判断が第１のデータ記録を訂正するというものである場合には、プロセッサは、第１のマッチに基づいて第１のデータ記録を修正し、必要に応答してマッチも適宜修正する。判断が第２のデータ記録を訂正するというものである場合には、プロセッサは、第２のデータ記録の各々をそれに対応するマッチに基づいて修正し、必要に応答して対応するマッチも適宜修正する。最後に、プロセッサは、修正済みデータ記録を在庫追跡データベースに報告する。
【００１５】
別の実施形態では、エラー訂正方法は、あらゆる単一のエラーデータ記録を訂正するのにも使用される。この実施形態では、処理は、コンテナに対してエラーであると判断され、訂正する必要がある第１のデータ記録を取得する。次に、プロセッサは、第１のデータ記録に基づいて、コンテナＩＤ、コンテナ特性、コンテナセルロケーション、及び継続時間という情報のうちの１つを指定する検索基準を設定する。その後に、プロセッサは、検索基準を用いて在庫追跡データベースに照会し、照会結果を取得し、照会結果を評価して第１のデータ記録に対するマッチを判断する。次に、プロセッサは、マッチに基づいて第１のデータ記録を修正し、必要に応答してマッチも適宜修正する。次に、修正済みデータ記録は、在庫追跡データベースに報告される。すなわち、第１のデータ記録内のエラーを訂正し終わる。
【００１６】
エラー訂正方法は、プロセッサが、第１のデータ記録と第２のデータ記録のいずれを訂正するかを判断することができない場合、又はプロセッサが、どのように訂正を加えるかを判断することができない場合を処理する例外処理を進めることができる。そのようなケースは、（１）照会がいかなる結果ももたらさないか、又は不十分な結果しかもたらさない、（２）いかなる１つ又は複数の第１のマッチも識別されない、（３）第２のデータ記録のうちのいずれかに対していかなる１つ又は複数の第２のマッチも識別されない、（４）第１のマッチと第２のマッチの比較が、第１のデータ記録と第２のデータ記録のうちのいずれを訂正するかに関する判断を誘導することができないなどの例外規則のうちのいずれかが満たされる状態で発生する可能性があると考えられる。プロセッサは、例外規則が満たされる度に例外処理を実行する。
【００１７】
１つの単純な実施形態では、例外処理は、第１のデータ記録及び第２のデータ記録（適用可能な場合）内のある一定のフィールドを修正して例外規則が満たされたことを示す段階を単純に含む。別の実施形態では、例外処理は、指示を準備してオペレータに出力し、オペレータから入力を受け入れてそれを検証し、オペレータによって要求された訂正を入力に従って判断することによってオペレータを意志判断に係わらせる。次に、プロセッサは、要求された訂正を加え、修正済みデータ記録を在庫追跡データベースに報告する。
【００１８】
在庫データ内のエラーを自動的に検出して訂正することにより、自動エラー検出及びエラー訂正処理は、在庫追跡データベース内のデータエラーの発生及び伝播を防止するのに役立つ。その後に、在庫追跡データベースに基づいてＴＯＳによって生成される任務は正確である可能性が高く、従って、ＨＥオペレータ及びシステムの他のユーザは、任務を完了することに集中することができる。更に、自動エラー検出及び訂正処理は、エラーシミュレーション及び分析のためのシミュレーションツール及び再生ツールを含む分析ツールの使用を容易にする。
【００１９】
本発明の実施形態の更なる詳細内容を添付図面を用いて説明する。
【図面の簡単な説明】
【００２０】
【図１】従来技術の在庫追跡及び管理システムのブロック図である。
【図２】一般的な在庫追跡及び管理システムが装備された輸送コンテナ保管施設内のそのようなシステムの主要構成要素の物理的エンティティを示す簡易概略図である。
【図３】自動在庫エラー検出を使用する在庫追跡及び管理システムの第１の実施形態のブロック図である。
【図４】システムが報告モジュール、再生モジュール、シミュレーションモジュール、及びユーザインタフェースを更に含む自動在庫エラー検出を使用する在庫追跡及び管理システムの第２の実施形態に関するブロック図である。
【図５Ａ】コンテナセルロケーションを例示的な「コンテナセル命名規則」を用いてラベル付けしたコンテナ輸送ヤード内のコンテナスタックの列の上面図である。
【図５Ｂ】コンテナセルロケーションを例示的な「コンテナセル命名規則」を用いてラベル付けしたコンテナ輸送ヤード内のコンテナスタックの列の端面図である。
【図６】エラー検出モジュール３０２の一実施形態に関わる処理を示す流れ図である。
【図７】車両移動イベント、コンテナ集荷イベント、及びコンテナ降荷イベントを含む発生したイベントのタイプに従った在庫エラーの検出を示し、車両移動イベントが発生する時に在庫エラーを検出する処理を更に含む流れ図である。
【図８Ａ】車両移動違反及びそれに対応する在庫エラーの例を示す図である。
【図８Ｂ】車両移動違反及びそれに対応する在庫エラーの例を示す図である。
【図９】コンテナ集荷イベントが発生する時に在庫エラーを検出する処理を示す流れ図である。
【図１０Ａ】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図１０Ｂ】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図１１Ａ】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図１１Ｂ】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図１１Ｃ】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図１１Ｄ】コンテナ集荷イベントが発生する時の在庫エラーの例を示す図である。
【図１２】コンテナ降荷イベントが発生する時に在庫エラーを検出する処理を示す流れ図である。
【図１３Ａ】コンテナ降荷イベントが発生する時の在庫エラーの例を示す図である。
【図１３Ｂ】コンテナ降荷イベントが発生する時の在庫エラーの例を示す図である。
【図１４】在庫エラー、特にコンテナ輸送ヤード内でのコンテナのロケーションにおけるエラーを検出するためのカメラを利用したエラー検出を使用する在庫追跡及び管理システムのブロック図である。
【図１５】カメラからの画像に基づいて在庫エラーを検出する処理を示す流れ図である。
【図１６】在庫追跡システムに関連付けられた在庫追跡データベース内のエラーを検出するために在庫追跡システムとインタフェースで接続するカメラを利用した在庫エラー検出システムに関するブロック図である。
【図１７】自動在庫エラー検出及び訂正を使用する在庫追跡及び管理システムの第１の実施形態のブロック図である。
【図１８】エラー訂正モジュール１７０２によって実行されるエラー訂正処理の一実施形態を示す流れ図である。
【図１９Ａ】図１８のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供する図である。
【図１９Ｂ】図１８のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供する図である。
【図１９Ｃ】図１８のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供する図である。
【図１９Ｄ】図１８のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供する図である。
【図２０】エラー訂正モジュール１７０２によって実行されるエラー訂正処理の別の実施形態を示す流れ図である。
【図２１】信頼性指標の計算に使用される重み係数を判断する方法を示す図である。
【図２２Ａ】４つの作業が異なる時刻において実施され、最後の作業においてエラーが検出された例を示す図である。
【図２２Ｂ】４つの作業が異なる時刻において実施され、最後の作業においてエラーが検出された例を示す図である。
【図２２Ｃ】４つの作業が異なる時刻において実施され、最後の作業においてエラーが検出された例を示す図である。
【図２２Ｄ】４つの作業が異なる時刻において実施され、最後の作業においてエラーが検出された例を示す図である。
【図２３Ａ】検出されたエラーの図である。
【図２３Ｂ】４つのエラー候補の各々がエラー訂正のためのマッチになる４つの場合のうちの一図である。
【図２３Ｃ】４つのエラー候補の各々がエラー訂正のためのマッチになる４つの場合のうちの１つの図である。
【図２３Ｄ】４つのエラー候補の各々がエラー訂正のためのマッチになる４つの場合のうちの１つの図である。
【図２３Ｅ】４つのエラー候補の各々がエラー訂正のためのマッチになる４つの場合のうちの１つの図である。
【図２３Ｆ】信頼性指標における重み係数を計算するのに使用される情報を示す図である。
【図２４】段階１８２０及び段階２０２４における訂正例外処理の一実施形態に関わる処理を示す流れ図である。
【発明を実施するための形態】
【００２１】
図１は、本発明の実施形態に使用される構成要素を含む自動在庫追跡及び管理システムのブロック図を示している。在庫追跡及び管理システムは、移動されているコンテナを識別し、コンテナを追跡するために取り扱い機器（ＨＥ）の移動を追跡し、追跡情報を通信し、コンテナ保管ロケーション及びＨＥの移動の情報を格納する。
【００２２】
システムは、ＩＤリーダ１０２、測位システム１０４、他のセンサ１０６、通信ネットワーク１０８、アプリケーション／データベースインタフェース１１０、データベース管理システム１１２、及び在庫追跡データベース１１４を含む。ＩＤリーダ１０２は、在庫項目及びＨＥの存在及び識別番号を検出するのに使用され、ＲＦＩＤ（無線周波数ＩＤ）エキサイタ／スキャナ、バーコードスキャナ、ＯＣＲ（光学文字認識）センサ（例えば、カメラ）、又はこの目的に使用されるあらゆる他のタイプのデバイスの形態にあるとすることができる。測位システム１０４は、一般的に在庫保管ロケーション内で在庫項目を集荷、移動、又は荷置きするＨＥの保管ロケーションを判断することによって在庫の保管ロケーションを特定及び／又は追跡する。測位システム１０４は、ＧＰＳ（全地球測位システム）又はＤＧＰＳ（差動ＧＰＳ）、ＩＮＳ（慣性航法システム）、ＩＭＵ（慣性測定ユニット）、ＲＴＬＳ（実時間位置システム）、ＰＤＳ（ポジション検出システム）、及び在庫項目又はＨＥのロケーションを判断するのに使用することができる当業技術で公知の他のセンサ及びシステムのうちの１つ又はそれよりも多くを含むことができる。他のセンサ１０６は、ポジション追跡又は在庫作業の管理に対応する諸々のセンサを含む。他のセンサ１０６は、高さセンサ、移動ＲＦＩＤエキサイタ／リーダ、速度センサ、光センサ、赤外線センサ、ＯＣＲ（光学文字認識）センサ、バーコードスキャナ、機械スイッチ、電子スイッチ、及び音波センサのうちの１つ又はそれよりも多くを含むことができる。
【００２３】
ＩＤリーダ１０２、測位システム１０４、及び他のセンサ１０６からの情報は、通信ネットワーク１０８を通じてアプリケーション／データベースインタフェース１１０に伝達される。通信ネットワーク１０８は、無線通信ネットワーク、ＬＡＮ（ローカルエリアネットワーク）、及び有線の専有通信ネットワークのうちの１つ又はそれよりも多くを含むことができる。アプリケーション／データベースインタフェース１１０は、データベース管理システム１１２と、在庫追跡データベース１１４に格納された情報へのアクセスを必要とし、及び／又は在庫追跡データベース１１４に情報を提供するあらゆるソフトウエアアプリケーション又はサービスとの間のソフトウエア対話機能を提供する。データベース管理システム１１２は、在庫追跡データベース１１４内のデータの編成、記憶、管理、及び取得を制御し、それに対して在庫追跡データベース１１４は、全ての在庫項目の記録及び在庫に関連する関連データを格納する。関連データは、在庫項目の在庫ＩＤ、説明事項、製品ＩＤ、製品名、物理的属性、在庫項目の保管ロケーション、在庫項目イベントの日時（在庫項目が保管ロケーション内に荷置きされた又はそこから集荷された時等）、在庫項目を移動した、集荷した、又は荷置きしたＨＥのタイプ及びＩＤ、ＨＥ及び測位システムが装備されたあらゆる他の車両の走行履歴、又は構内慣習によって定められた他の記述的特徴のうちの１つ又はそれよりも多くを含むことができる。
【００２４】
図１に示している在庫追跡及び管理システムにおける個々のモジュールは、システム毎に異なるとすることができ、システムは、追加モジュール／構成要素を含むことができ、又は異なるモジュールの機能が、図示のものよりも少ないモジュールに組み合わされたより小型のものとすることができる。例えば、一部の在庫追跡システムは、在庫追跡データベース１１４とデータベース管理システム１１２とを１つの在庫追跡データベースシステムに組み合わせることができる。更に、特にインタフェースが比較的単純な場合に、アプリケーション／データベースインタフェース１１０を在庫追跡データベースシステム１１４内に組み込むことができる。アプリケーション／データベースインタフェース１１０、データベース管理システム１１２、及び在庫追跡データベース１１４には、コンピュータ、デジタル信号プロセッサ、ＦＰＧＡ、又はマイクロプロセッサのような１つ又はそれよりも多くの処理デバイスを設けることができる。１つ又はそれよりも多くのプロセッサ内に設けられた又はこれらのプロセッサに接続したメモリデバイス内に、１つ又はそれよりも多くのプロセッサに対する制御コード、並びに在庫データを格納することができる。
【００２５】
任意的に、一部の在庫追跡及び管理システムは、多くの海港コンテナ保管ヤード内に使用される一般的なターミナルオペレーティングシステム（ＴＯＳ）、内陸コンテナヤードターミナル、及び鉄道インターモーダルコンテナターミナルを含む在庫管理システム１１６及びそれと連係する外部データベース１１８を含むことができる。一般的にそのような在庫管理システム及び外部データベースは、在庫ＩＤ、保管ロケーション、コンテナの所有者、在庫されたコンテナ内部の商品の荷受業者、輸送情報、及び船積み情報に関連するデータを含むが、一般的にこれらの情報は、ＨＥ又はＨＥの移動履歴に関連する情報を含まない。
【００２６】
図２は、輸送コンテナ保管施設内での従来の在庫追跡及び管理システムの主要構成要素の物理的エンティティを示す概略図である。ＣＨＥ２１８は、輸送コンテナ保管施設内で輸送コンテナを荷揚げ、移動、及び荷置きするように設計された１台のＨＥである。そのような機器は、トップピック（又はトップリフト）、サイドピック（又はサイドリフト又はエンプティハンドラー）、ストラドルキャリア、リーチスタッカー、ゴムタイヤガントリー（ＲＴＧ）、レールマウントガントリー（ＲＭＧ）、キークレーン、及びジョッキートラック（ＵＴＲ、タグ、又はヤードハスラーとも呼ばれる）を含む。図２に示しているＣＨＥ２１８は、トップピックである。この輸送コンテナ保管施設には、在庫追跡システムが装備され、全てのＨＥには、ＨＥのロケーション及び移動、従って、これらのＨＥが移動する輸送コンテナのロケーション及び移動を正確に追跡するのに使用される測位システムが装備される。この例では、測位システムは、ＧＰＳシステム２２２及び慣性測定ユニット（ＩＭＵ）２２４、並びにＧＰＳシステム２２２、ＩＭＵ２２４、及び他のセンサとインタフェースで接続し、これらからデータを収集するプロセッサベースのユニット（ＣＰＵ）２２６から構成される。他のセンサは、ＣＨＥ２１８が輸送コンテナ２３２を集荷又は荷降ろしする時に、このコンテナが位置する高さを測定する高さセンサ２３０を含むことができる。ＣＨＥ２１８には、輸送コンテナ保管施設内の特定のロケーションに設けられた固定ＩＤリーダ／タグ２１６によって検出される移動ＩＤリーダ／タグ２２８を装備することができる。ＣＨＥ２１８が固定ＩＤリーダ／タグ２１６のある一定の近くまで移動すると、固定ＩＤリーダ／タグ２１６は、移動ＩＤリーダ／タグ２２８の存在、従って、ＣＨＥ２１８の存在を検出し、そのような情報をアプリケーション／データベースインタフェース２０６に送信する。代替的に、ＣＨＥ２１８が間近にある時に、移動ＩＤリーダ／タグ２２８が、固定ＩＤリーダ／タグ２１６を検出することができ、それによってＣＰＵ２２６にＣＨＥ２１８の測位を助ける付加的なロケーション関連情報を提供することができる。
【００２７】
ＣＰＵ２２６は、全てのこれらのセンサからデータを収集し、これらのデータをＣＨＥが輸送コンテナ保管施設の方々に移動して輸送コンテナ２３２を集荷又は荷降ろしする際のＣＨＥ２１８のロケーションを計算するのに使用する。更に、ＣＰＵ２２６は、ツイストロックセンサ（ＣＨＥのスプレッダバー上に設けられたツイストロック内に含まれるいくつかのスイッチ）から輸送コンテナ２３２の集荷又は降荷を示す情報（例えば、係合又は切り離し）を受け取る。従って、ＣＰＵは、ＣＨＥ２１８が輸送コンテナ２３２を集荷又は荷降ろしするロケーションを判断することができる。更に、ＣＨＥ２１８には、ＣＰＵ２２６からの情報をアプリケーション／データベースインタフェース２０６、データベース管理システム２０８、在庫追跡データベース２１０、並びに任意的に在庫管理システム２１２及び外部データベース２１４に対して図１に示している構成要素と類似の無線通信ネットワーク２０２及びローカルエリアネットワーク（ＬＡＮ）２０４を通じて通信する内蔵通信ユニット２２０が装備される。ＣＰＵ２２６は、ＣＨＥ２１８の運転手の行動を指示する指示及び運転手によって要求される情報のようなデータをこれらの他の構成要素から無線通信ネットワーク２０２を通じて受け取ることができる。更に、ＬＡＮ２０４（有線又は無線）は、無線通信ネットワーク２０２と、アプリケーション／データベースインタフェース２０６と、データベース管理システム２０８と、在庫追跡データベース２１０との間の通信接続を与える。任意的に、ＬＡＮ２０４は、在庫管理システム２１２及び外部データベース２１４の間のデータ又は情報の交換を容易にするために、これらの構成要素に接続することができる。図２ではこれらの構成要素（２０６、２０８、２１０、２１２、及び２１４）を別々の物理的エンティティとして示しているが、これらの一部又は全てを同じ処理デバイスに存在させることができることに注意されたい。
【００２８】
図３は、本発明の実施形態に従って含められる自動在庫エラー検出構成要素を有する在庫追跡及び管理システムのブロック図を示している。図１に示している一般的な在庫追跡及び管理システムにおける構成要素に加えて、このシステムは、在庫データの妥当性を調べ、在庫追跡データベース１１４内のエラーを探索するエラー検出モジュール３０２を更に含む。自動エラー検出処理においては手動介入は必要ではないが、エラー検出モジュール３０２は、オペレータが望む場合には、オペレータがエラー検出処理に手動介入することを可能にすることができる。エラー検出モジュール３０２の詳細内容に対しては、図６から図１３に関連して後に説明する。
【００２９】
図４は、本発明による在庫追跡及び管理システムの構成要素の別の実施形態のブロック図である。この実施形態では、システムは、図１に示している構成要素に加えて図３のエラー検出モジュール３０２を含む。更に、システムは、報告モジュール４０２、再生モジュール４０４、シミュレーションモジュール４０６、及びユーザインタフェース４０８を含む。報告モジュール４０２は、ユーザに、特定の情報及び履歴データに関してシステムに照会する機能を与える。再生モジュール４０４は、ユーザが、特定の時間セグメント、特定の車両又は車両群、特定輸送コンテナ、又は他の選択基準を選択し、イベント履歴を視覚的に辿る目的でこの時間セグメントをグラフィカルユーザインタフェース（ＧＵＩ）（ユーザインタフェース４０８の一部である）上で「再生」することを可能にし、それによって自動エラー検出からの結果の手動での評価及び検証を容易にすることができる。シミュレーションモジュール４０６は、ユーザが、可変データ要素をユーザインタフェース４０８を通じて「シミュレーション」モードで手動で入力することを可能にし、それによってユーザが、様々な作業シーケンスの効果をより明快に理解することが助けられることになり、ユーザが、エラーの発生の前の作業における試行錯誤によって検出エラーを手動で訂正することが可能になる。ユーザインタフェース４０８は、グラフィカルユーザインタフェース、並びにキーボード、プリンタ、マウス、又は他のローカル又はリモートの入力／出力デバイスを含むがこれらに限定されない１つ又はそれよりも多くの入力／出力デバイスとすることができる。
【００３０】
図５Ａ及び図５Ｂは、海港ターミナル、鉄道インターモーダルターミナル、又は内陸保管ターミナルうちのいずれかにおけるコンテナ保管施設の例示的なレイアウトを示している。保管施設（ターミナル）における保管ロケーションの３次元特徴を示すために、上面図（図５Ａ）と端面図（図５Ｂ）とを含めている。各個々の矩形ブロックは、コンテナを存在させることができるコンテナ保管ロケーションを表す。コンテナ保管施設内での各コンテナ保管ロケーションを一意的に識別するために、通常はロケーション命名規則が使用される。図５Ａ及び図５Ｂは、列、枠、間口、及び段のような用語を使用する一般的なロケーション命名規則を示している。この命名規則では、コンテナ保管施設内でのコンテナ保管ロケーションの地球上ポジションを一意的に識別するのに枠数値と間口数値とが使用される。各間口は、コンテナ１つ分の長さの幅を有し、各枠は、コンテナ１つ分の奥行きの幅を有する。一般的にいくつかの枠（図４に示している例では３つの枠）が互いにまとめられて列を形成し、列の間の距離は、ＨＥが通過するのに十分な空間を与えるように列内の枠間の距離よりもかなり大きく保たれる。コンテナは、互いに上下に積み重ねることができ、コンテナ保管ロケーションの高さは、段数値によって表される。上面図（図５Ａ）では、列１０１の最も右下のコンテナ保管ロケーションは、その地球上ポジションに対して（列１０１、間口２１、枠Ａ）で表される。端面図（図５Ｂ）では、高さを示しており、ロケーション（列１０１、間口２１、枠Ａ）の２段目の上のコンテナセルは（列１０１、間口２１、枠Ａ、段２）によって一意的に識別される。そのようなセル命名規則は、コンテナのみならず、多くの他のタイプの在庫に関する保管ロケーションの迅速で容易な識別を可能にする。他の命名規則を使用することができ、これらの命名規則は全て、３次元保管セルロケーションを表す上で保管施設にわたる均一性を反映する。
【００３１】
一般的に命名規則は、直ちに測定することができない各コンテナ保管ロケーションの論理ポジションを識別し、例えば、ＧＰＳを利用した測位システムは、ＧＰＳ受信機からの擬似距離（衛星とアンテナの間の距離）測定値に基づいて地球座標における経度、緯度、及び高度のポジションを与える。測位システムからのポジションと命名規則で表された論理ポジションとの関連付けを容易にするために、測位システムは、地球座標におけるポジション測定値を図５Ａ及び図５Ｂに示している局所直交座標（ｘ，ｙ，ｚ）に更に変換する。次に、直交座標ロケーション（すなわち、局所直交座標におけるポジション）をコンテナセルの論理ポジションに関連付ける上で換算表が一般的に使用される。例示的な換算表を直交座標ポジションがコンテナセルの中心の直交座標ポジションに対応する下記の表１に示している。代替的に、他のタイプの座標（極座標等）を使用することができ、選択された座標におけるセルロケーションに論理ポジションを関連付ける換算表が適宜使用される。
【００３２】
（表１）
2013503800.tif 000003
【００３３】
図５Ａ及び図５Ｂに示している局所座標（ｘ，ｙ，ｚ）の場合には、列が有する同じ枠内にあるコンテナセルは、同じｘ座標値を共有し、同じ間口内にあるコンテナセルは、同じｙ座標値を共有し、同じ段内にあるコンテナセルは、同じｚ座標値を共有することに注意されたい。エラー検出モジュール３０２における処理を説明するのを補うために、図５Ａ及び図５Ｂと共に上述のコンテナ保管施設及び命名規則を使用する。しかし、エラー検出モジュール３０２は、他の命名規則を用いて処理することができる。
【００３４】
図６は、エラー検出モジュール３０２の基本的な作動を示す流れ図である。処理は、段階６０２において新規データが処理に利用可能であるか否かを調べる段階で始まる。一実施形態では、新規データは在庫追跡システムによって提供され、例えば、アプリケーション／データベースインタフェース１１０が、ＩＤリーダ１０２、測位システム１０４、及び他のセンサ１０６から通信ネットワーク１０８を通じて受信した情報、並びに在庫管理システム１１６からの情報に基づいて生成することができる。別の実施形態では、新しいデータは、オペレータにより、キーボード、マウス、タッチスクリーンなどを含む入力手段を通じて入力されたデータ記録とすることができる。新規データは、データ記録を生成するあらゆるコンピュータプログラム、例えば、在庫追跡データベース１１４にデータを要求し、そこからデータを取得するあらゆるアプリケーション又はサービスが提供することができる。そのようなアプリケーションの例は、妥当性検査プログラム、シミュレーションツール、再生ツールなどを含む。
【００３５】
この新規データは、ＨＥのポジション、コンテナ在庫のポジション、又はコンテナセルロケーションのいずれかとすることができるロケーション関連情報を含む少なくとも１つのデータフィールドを含む。新規データは、新規データに関連付けられたイベントを識別するためのセンサ情報も含まなければならないか、又はイベントを指定するデータフィールドを直接含まなければならない。更に、新規データは、このデータに関連付けられたタイムスタンプ、このデータが関係するＨＥのＩＤ及びタイプ、ＨＥの移動情報（例えば、速度）、ＨＥによって作業中のコンテナのＩＤ及びタイプ、作業のタイプ、このデータの信頼性レベルなどの情報のうちの一部を含むデータフィールドを含むことができる。例えば、新規データは、コンテナＡというＩＤを有するコンテナがあるコンテナセルロケーション（例えば、列１０１、間口２１、枠Ａ、段２）において集荷されたことを示すことができる。
【００３６】
いかなる新規データも利用可能ではない場合には、エラー検出モジュール３０２は、処理を抜けて次の処理サイクルが処理に再度入るまで待機し、処理は、段階６０２で新規データの入取得能性を検査する段階で再開することになる。新規データが利用可能である場合には、段階６０４においてエラー検出モジュールは新規データを読み取る。段階６０６では、次に、データ矛盾／エラーを検出するために、エラー検出モジュールは、段階６０４において受け取った新規データを在庫追跡データベースに要求した対応する在庫データと共にデータの整合性に対して調べる。段階６０６に関わる詳細なデータ矛盾検出処理に対しては、図７から図１３に関連して後に説明する。
【００３７】
段階６０６の出力は、データ矛盾／エラーが検出されたか否かを示す少なくとも１つの変数を含み、そのような変数は、段階６０８においてその後の処理を判断するのに使用される。エラーが検出された場合には、エラー検出モジュール３０２は段階６１０に続き、エラーをアプリケーション／データベースインタフェース１１０に報告し戻し、アプリケーション／データベースインタフェース１１０は、このエラーを更にユーザに報告することができる（例えば、ユーザインタフェース４０８を通じて）。他の実施形態では、エラー検出モジュールは、エラーを在庫追跡システムと連係する在庫管理システムに報告するか又はエラーデータ記録をオペレータに表示するための出力手段に報告するか又はエラーデータ記録を受け取るように構成されたコンピュータプログラムに報告する。エラー検出モジュールは、オペレータにエラーを手動で訂正するように要求することができ、又は利用可能な場合は自動エラー訂正処理を開始することができる。エラーを報告した後に又はいかなるエラーも検出されなかった場合には、エラー検出モジュールは、段階６１２に続き、追跡データベース１１４に（更新した）在庫データを書き込む／このデータベースをこのデータで更新する。一実施形態では、更にエラー検出モジュールは、在庫追跡データベース１１４内に表を作成し、データエラーの検出時にこの表に対するエラーデータ記録を作成し、すなわち、オペレータ又はコンピュータプログラムによる容易なアクセスに向けてエラーデータ記録がこれらの表内に収集される。代替的に、エラー検出モジュール３０２は、データ矛盾検出処理（段階６０６）中に生成される付加的な結果を記録するログデータを作成して、そのようなログデータを在庫追跡データベース１１４内に書き込むことができる。その後にエラー検出モジュール３０２は、処理を抜けて次の処理サイクルが処理を繰り返すまで待機する。
【００３８】
図７は、段階６０６に関わるデータ矛盾検出処理の一実施形態を示す流れ図であり、エラー検出モジュール３０２は、新規在庫データを在庫追跡データベース１１４からの対応する在庫データと比較してデータ矛盾を検出し、データ矛盾の検出を受けて、データ矛盾のタイプ及びデータ矛盾をもたらしたコンテナを更に識別し、信頼性レベルを計算し、関連コンテナを指標付けし、これらのコンテナに属性を再度割り当てる。
【００３９】
この実施形態では、新規データに関連付けられたイベントに基づいてデータ矛盾を検出する異なる検出手順が使用される。データ矛盾検出処理は、最初に新規データに基づいてイベントの所定の組からこのイベントを識別する。イベントの所定の組は、在庫及びＨＥに関連する作業を表す。作業は、コンテナ在庫が集荷される場合のコンテナ集荷作業、コンテナ在庫が荷降ろしされる場合のコンテナ降荷作業、及びＨＥが移動している場合の車両移動作業を含むことができる。それに応じて、イベントの所定の組は、車両移動イベント（すなわち、ＨＥが、０．１ｍ／ｓのような事前設定閾値よりも大きい速度で移動している）、コンテナ集荷イベント（すなわち、ＨＥが、コンテナをちょうど集荷し終わった）、及びコンテナ降荷イベント（すなわち、ＨＥが、コンテナをちょうど降荷し終わった）を含む。
【００４０】
図７では、データ矛盾検出処理は、最初に７０２、７０４、及び７０６においてどのタイプの所定のイベントが発生したかを識別する。一実施形態では、新規在庫データは、関係するイベントを直接指定するフィールド（例えば、「イベント」フィールド）を含み、例えば、値「０」は車両移動イベントを示し、値「１」はコンテナ集荷イベントを示し、値「２」はコンテナ降荷イベントを示し、以降同様に続く。相応に、「イベント」フィールド内の値は、段階７０２において調べられ、値が０に等しい場合には、車両移動イベントが検出される。値が０ではなかった場合には、処理は段階７０４に続き、コンテナ集荷イベントが発生したか否かを判断する。「イベント」フィールド内の値が１に等しい場合には、コンテナ集荷イベントが検出され、他の場合には、処理は段階７０６に続き、「イベント」フィールド内の値が２に等しいか否かを調べることにより、コンテナ降荷イベントが発生したか否かを判断する。
【００４１】
在庫データフィールドに格納された「０」、「１」、又は「２」以外に、別の実施形態では、新規在庫データは、ＨＥの速度を含むフィールドを含むことができる。速度が事前設定閾値よりも大きい場合には、車両移動イベントが検出され、他の場合は、新規在庫データは車両移動イベントを示さない。更に、新規在庫データは、集荷イベント又は降荷イベントを示すセンサ（例えば、ツイストロックセンサ）情報又は他の情報を含むフィールドからの出力を含むことができる。例えば、コンテナが集荷されている時には、ＨＥ上のツイストロックセンサは、「アンロック状態」から「ロック状態」に変化し、コンテナが降荷されている時には、ツイストロックセンサは、「ロック状態」から「アンロック状態」に変化する。従って、この実施形態では、新規在庫データは、ツイストロックステータスの変化の情報を含み、処理は、段階７０４及び７０６においてこの情報を調べて、関係するイベント（集荷イベント又は降荷イベント）を識別する。
【００４２】
段階７０４においてコンテナ集荷イベントが検出された場合には、処理は、図９の９０２から９２０までの段階に続く。そうではなく段階７０６においてコンテナ降荷イベントが検出された場合には、処理は、図１２の１２０２から１２２０までの段階に続く。これらのイベントのうちのいずれも検出されなかった場合には、このデータ矛盾検出処理（ブロック６０６における処理に対応する）は、段階７０６の後にいかなるエラーも報告せずに終了する。
【００４３】
段階７０２において車両移動イベントが検出された場合には、処理は、データ矛盾検出のための７０８から７１４までの段階に続く。７０８から７１４までの段階は、段階７０２において車両移動イベントが検出された場合のデータ矛盾検出処理を示している。処理を説明するのを補うために、図８Ａ及び図８Ｂに車両移動イベントの２つの例を提供しており、これらに対しては７０８から７１４までの段階の説明の後で説明する。識別されたイベントに従って、次に、データ矛盾検出は、可能なエラータイプのリストを提供し、エラー検査処理を用いてリスト内のこれらのエラータイプをくまなく調べ、指定されたエラータイプのエラーが発生したか否かを判断する。一実施形態では、車両移動イベントに対応する可能なエラータイプのリストは、ＨＥが、在庫データベースによるとコンテナによって既に占有されているロケーションにおいて移動していることを意味することができる移動違反を含む。移動違反は、エラータイプリスト内で車両移動イベントにおける唯一のエラータイプであるから、エラー検査処理（段階７０８の）は、移動違反が発生したか否かを判断することのみが必要である。
【００４４】
段階７０８に対して、データ矛盾検出処理は、移動違反を検出するために以下の手順を使用する。
【００４５】
（１）データ矛盾検出処理は、最初にエラータイプ（この場合、移動違反）及び新規データに基づいて検索基準を判断し、より具体的には、処理は、上述のロケーション−ポジション関連付け（表１及び図５Ａ及び図５Ｂのロケーション命名規則を参照されたい）に基づいて、新規データ内のロケーション（ＨＥの寸法を考慮した）に対応するコンテナセルロケーション（すなわち、列、間口、及び枠の数値）を識別する。
【００４６】
（２）いかなるコンテナセルロケーションも識別されなかった場合には、このポジションはコンテナセルロケーションではなく（例えば、ＨＥは２つの列の間の通路に沿って移動している）、データ矛盾検出処理は、いかなる移動違反も発生しなかったと判断する。
【００４７】
（３）コンテナセルロケーションが識別された場合には、これらのセルロケーションは検索基準を構成し、次に、処理は、識別されたセルロケーションに対応する在庫データに関して在庫データベースに照会する。照会結果（すなわち、在庫データ記録）が、存在するはずがないコンテナが存在すること、又は識別された単一のセルロケーションに複数のコンテナが存在することを示す場合には、データ矛盾検出処理は、移動違反エラーが発生したと結論付けて、これを報告する。他の場合には、データ矛盾検出処理は、いかなる移動違反も発生しなかったことを報告する。
【００４８】
段階７０８の後に、処理は、６０８から６１２までの段階に直接戻ることができ、段階７０８における検出に依存してエラー又はエラーの不在を報告する。代替的に、段階７０８において移動違反が検出された場合には、更に処理は、図７に７１０から７１４までの段階に示しているように、検出エラーによって影響を受けたエラーデータ記録を識別して修正することができる。
【００４９】
段階７１０において、データ矛盾検出処理は、照会結果内のデータ記録を読取り、これらのデータ記録の中でこれらのセルロケーションが占有されていることを示すデータ記録を識別して、これらのデータ記録をエラー在庫データ記録と判断する。ＨＥは、実際には占有されたセルロケーションを通って移動することはできないので、移動違反は、新規在庫データ内のポジションデータが間違いである（すなわち、ＨＥは、新規在庫データ内に報告されたポジションには実際に存在しない）か、又はセルロケーションが占有されていることを示す対応する在庫データがエラーを有する（すなわち、実際にはそのロケーションにはいかなるコンテナも存在しない）かのいずれかを示している。図７に図示の実施形態では、データ矛盾検出処理は、新規在庫データ内のポジションデータを常に信用する。従って、セルロケーションが占有されていることを示す在庫データは、常にエラーを有すると見なされる。
【００５０】
段階７１２において、データ矛盾検出処理は、エラー在庫データ記録の各々を更に修正し、エラーが発生したことを示している。一実施形態では、修正は、エラー在庫データ記録内の属性フィールド（説明の目的で「コンテナタイプ」と呼ぶ）を例えばコンテナが在庫追跡データベース１１４内の「虚影」であり、実際にはセルロケーションを占有していないことを示す「虚影コンテナ」に変更する段階を含む。また、データ矛盾検出処理は、例えば、新規データに、対応する移動イベントが移動違反をもたらすことを示すエラーフラグを追加することによって新規データも修正し、それによって処理は、新規データも同じくエラーデータ記録であると見なす。そのような修正は、これらのコンテナ及びそれに対応するデータ記録をいかなるエラーも見つかっていない「正常」コンテナ及びその記録から区別することにより、その後のエラー訂正処理を容易にする（手動又は自動のいずれにしても）。その後のエラー訂正処理が、これらのコンテナが指定されたロケーションに実際に存在し、新規データが実際にはエラーを有すると判断した場合には、エラー訂正処理は、「コンテナタイプ」データフィールド内で「虚影コンテナ」を削除するか又はこれを「正常」属性で置き換えることができる。
【００５１】
更に修正は、エラーデータ記録内のコンテナが実際にはどの程度の信頼性レベルで虚影コンテナであるかを示す信頼性レベルＣｏｎｆerrを計算する段階を含むことができる。通常そのような信頼性レベルは、新規在庫データ内に与えられるＨＥのポジションデータの信頼性であるＣｏｎｆposの関数としてＣｏｎｆerr＝ｆ（Ｃｏｎｆpos）のように計算される。最も単純な実施形態では、信頼性レベルは、一実施形態におけるポジションデータの信頼性としてＣｏｎｆerr＝Ｃｏｎｆposのように設定される。代替的に、計算は、このコンテナの降荷イベントの信頼性レベルであるエラーデータ記録内の信頼性レベル（Ｃｏｎｆdrop）をＣｏｎｆerr＝ｆ（Ｃｏｎｆpos，Ｃｏｎｆdrop）のように使用することができる。例えば、次式になる。
2013503800.tif 000004
【００５２】
段階７１２の後に、データ矛盾検出処理は、次に、段階７１４においてデータ矛盾をエラーとして報告し（例えば、エラーフラグを１に設定することにより）、修正したエラー在庫データ記録、エラータイプ（すなわち、虚影コンテナ）、及びイベントタイプ（すなわち、車両移動イベント）のような情報を段階７１４において更に出力することができる。その後にこれらの情報は、図６の段階６１０におけるその後のエラー報告処理に対して使用することができる。
【００５３】
図７に示しているデータ矛盾検出処理を更に説明するために、車両移動イベントの２つの例を図８Ａ及び図８Ｂに提供している。図８Ａに示している第１の例では、ＨＥは、ＨＥに内蔵された測位システムに従って列１０１内にあるコンテナに近づいている。ＨＥのステータスをアプリケーション／データベースインタフェース１１０に報告するために、通信ネットワーク１０８を通じてセンサ情報が定期的に送信される。そのようなセンサ情報は、ＨＥのポジション、ポジションの信頼性、ＨＥの速度、ＨＥに関連するイベントなどを含むことができる。次に、アプリケーション／データベースインタフェース１１０は、データベース管理システム１１２を通じて在庫追跡データベース１１４内に書き込む必要があると見なす新規在庫データを生成する。その一方、アプリケーション／データベースインタフェース１１０は、生成した新規在庫データをエラー検出に向けてエラー検出モジュール３２０にも転送する（又はアプリケーション／データベースインタフェースは、新規在庫データを在庫追跡データベース１１４に書き込む前に、エラー検出モジュール３０２から検証通知を受け取るまで待機することができる）。第１の例に対応する時間インスタンスでは、新規在庫データは、ＨＥのポジションを（ｘ，ｙ，ｚ）として、速度をｖｘとして示し、ｖｘは０．１ｍ／ｓよりも大きく、コンテナが移動していることを示している。
【００５４】
図６を用いて上述したように、ＨＥの速度は閾値（例えば、０．１ｍ／ｓ）よりも大きいので、エラー検出モジュールは、段階７０２において新規在庫データが車両移動イベントを示していると判断する。次に、段階７０４において、エラー検出モジュールは、列１０１、間口２４の隣のロケーションにおいてＨＥに関する移動違反が発生したか否かを判断する。そのために、データ矛盾検出処理は、最初に新規在庫データ内のロケーション（ｐｘ，ｐｙ，ｐｚ）に対応するセルロケーション（すなわち、列数値、間口数値、及び枠数値）を識別する。ＨＥは、寸法を有する物理的エンティティであるのに対してロケーション（ｐｘ，ｐｙ，ｐｚ）は、一般的にＨＥ上の点（例えば、ＨＥに内蔵されたＧＰＳ受信機の装着ロケーション）に対応するので、通常、地球上ポジション（ｐｘ，ｐｙ）は、ＨＥが占有する地球上区域を表す区域に変換される。一実施形態では、ｘ座標及びｙ座標における上側及び下側の境界が使用され、地球上区域は、ｘｂ１及びｙｂ１が下側境界であり、ｘｂ２及びｙｂ２が上側境界である時に、（［ｐｘ−ｘｂ１，ｐｘ＋ｘｂ２］，［ｐｙ−ｙｂ１，ｐｙ＋ｙｂ２］）によって表される。上側及び下側の境界は、ＨＥのタイプ、ＨＥにコンテナが積載されているか否か、及びコンテナの物理的寸法のようなファクタに依存して異なるとすることができる。次に、データ矛盾検出処理は、換算表（例えば、表１）内で次式を満たすいずれかの直交座標ロケーション（ｘ，ｙ，ｚ）に関して直交座標ポジションを検索する。
ｐｘ−ｘｂ１−（幅／２）≦ｘ≦ｐｘ＋ｘｂ２＋（幅／２）、かつ
ｐｙ−ｙｂ１−（長さ／２）≦ｙ≦ｐｙ＋ｙｂ２＋（長さ／２）
ここで、幅、長さ、及び高さは、セルロケーションの幅、長さ、及び高さである。図８Ａに示しているこの特定の例では、ＨＥが列１０１、間口２４内のあらゆるコンテナから分離しており、区域（［ｐｘ−ｘｂ１，ｐｘ＋ｘｂ２］，［ｐｙ−ｙｂ１，ｐｙ＋ｙｂ２］）が妥当なセルロケーションに対応しないので、検索はいかなる結果ももたらされない。それに応じて、データ矛盾検出処理は、段階７０８においていかなる移動違反も発生していないと結論付け、いかなるエラーも報告することなく段階６０８に抜ける。その後に、処理は段階６１２に続き、データベースを更新する。
【００５５】
ＨＥが移動し続け、今度は図８Ｂに示している列１０１、間口２４内のコンテナ区域内にあるポジションに存在すると仮定する。この時間インスタンスにおいて生成される新規在庫データ記録は、今度は新規ロケーション（ｐｘ，ｐｙ，ｐｚ）、及び同じく事前設定閾値よりも大きくＨＥが移動中であることを示す新規速度ｖｘを含む。ここでもまた、エラー検出モジュール３０２は、段階７０２において車両移動イベントが発生したと判断する。次に、エラー検出モジュールは、移動違反が発生したか否かを判断する３段階手順を辿り、すなわち、（１）処理は、換算表（例えば、表１）内で対応するセルロケーションに関して直交座標ポジションを検索し、（２）次に、検索は、（列１０１、間口２４、枠Ｃ、段１から段４）及び（列１０１、間口２４、枠Ｂ、段１から段４）をもたらし、（３）次に、処理は、これらのセルロケーション（列１０１、間口２４、枠Ｃ、段１から段４）及び（列１０１、間口２４、枠Ｂ、段１から段４）に対応する在庫データに関して在庫追跡データベース１１４に照会する。
【００５６】
在庫追跡データベース１１４が、指定されたセルロケーションにコンテナを示すいかなる記録も含まなかった場合には、照会は、いかなる結果も戻さないことになるか、又は一部の在庫追跡システムでは、照会は、ロケーションが非占有であることを示す記録を戻すことになる。次に、エラー検出モジュール３０２は、いかなる移動違反も発生していないと結論付け、いかなるエラーも報告せずに段階６０８に抜ける。在庫追跡データベース１１４が、指定されたセルロケーションに配置された２つのコンテナ、例えば、（列１０１、間口２４、枠Ｃ、段１）にあるコンテナＡ及び（列１０１、間口２４、枠Ｂ、段１）にあるコンテナＢが存在することを示すデータ記録を有した場合には、照会は、対応する２つの在庫データ記録をもたらすことになる。照会結果に従ってエラー検出モジュール３０２は、そこにコンテナが存在し、従って、移動違反が発生したと結論付ける。次に、エラー検出モジュール３０２は、更に別の処理に向けて段階７１０において２つの在庫データ記録を読み取る。その後に段階７１２において、エラー検出モジュール３０２は、コンテナＡ及びＢの各々を例えば「虚影コンテナ」としてマーク付けするように２つの在庫データ記録を変更し、新規在庫データ内に与えられたポジションの信頼性レベルに基づいてこれらのコンテナの信頼性レベルを更新する。次に、段階７１４において、エラーが（修正済みデータ記録と共に）報告され（例えば、エラーフラグを１に設定することにより）、エラー検出モジュールは、６０８から６１２までの段階に進む。
【００５７】
図７を参照し直すと、段階７０４においてコンテナ集荷イベントが発生したと判断された場合には、データ矛盾検出処理は、コンテナ集荷イベントが発生する場合のエラーを検出する処理を示す図９の９０２から９２０までの段階に続く。データ矛盾検出処理は、最初にコンテナ集荷イベントに対応するエラータイプリストを提供する。図９に図示の実施形態では、エラータイプリストは、集荷に利用可能なコンテナの不在、接近不能な集荷ロケーション、及び接近不能な作業ロケーションという３つのエラータイプを含む。次に、データ矛盾検出処理は、検査処理を用いて３つのエラータイプのうちの１つのエラーが発生したか否かを調べる。
【００５８】
段階９０２において、データ矛盾検出処理は、最初に新規在庫データによって指定されたロケーションにおいて集荷に利用可能なコンテナが存在したか否かを判断する。判断は、３つの部分段階において実施され、すなわち、（１）処理は、ポジションデータ（高さを含む）又は新規在庫データ内のセルロケーションに基づいて集荷ロケーションを識別することによって検索基準を判断し（この場合、この集荷ロケーションが検索基準を構成する）、（２）次に、処理は、判断した検索基準を用いて、識別した集荷ロケーションに対応する在庫データ記録に関して在庫追跡データベース１１４に照会し、（３）処理は、照会がいかなる結果も戻さなかったか又はロケーションが非占有であることを示す結果を戻した場合にいかなるコンテナも利用可能ではないと判断し、他の場合には、処理は、コンテナが利用可能であると判断する。
【００５９】
段階９０２において、指定された集荷ロケーションにおいていかなるコンテナも集荷に利用可能ではないと判断された場合には、処理は、エラーをエラータイプと共に報告する段階９０８に直接進むことができ、次に、段階９１６における次のエラー検査段階に進み、ＨＥが接近不能なロケーションで作業しているか否かを判断する。別の実施形態では、処理は、段階９０４及び９０６に続き、エラーデータ記録を識別して修正する。段階９０４において、データ矛盾検出処理は、集荷ロケーションの下のセルロケーションに対応する在庫データ記録に関しての在庫追跡データベース１１４の更に別の照会によって集荷ロケーションの下の非占有セルロケーションを識別する。
【００６０】
新規データが正しい場合、新規データに対応するセルロケーションに加えてその下のセルロケーションが、集荷イベントの前に必ず占有されていたはずである。これらのコンテナの不在は、在庫追跡データベース１１４内又は新規データ内のいずれかにおけるエラーを示している。
【００６１】
次に、段階９０６では、在庫追跡データベース１１４の完全性を高めるために、データ矛盾検出処理は、次に、段階９０４において識別したセルロケーションの占有を反映する在庫データ記録を作成する。更に、データ矛盾検出処理は、これらのコンテナを例えば「不可視コンテナ」としてマーク付けし、いかなるエラーも見つかっていない「正常」コンテナからこれらのコンテナを区別する。同じく段階９０６において、更にデータ矛盾検出処理は、これらの「不可視」コンテナに関する信頼性レベル（すなわち、「不可視コンテナ信頼性レベル」）を計算する。信頼性レベルの計算は、段階７１２に使用されるものと類似の計算式に従い、新規在庫データ内に与えられた信頼性レベルに基づいている。更に、新規データも間違いである可能性があるから、データ矛盾検出処理は、このデータもエラーを有するものとしてマーク付けする。一実施形態では、このマーク付けは、エラー、並びにエラータイプを示すエラーフラグを新規データに追加する段階を含む。
【００６２】
次に、データ矛盾検出処理は段階９０８に進み、エラー、並びにエラータイプ、非占有セルロケーション、及び「不可視コンテナ」に対して新規作成在庫データ記録を報告する。その後に、処理は、段階９１６における次のエラー検査段階に進み、ＨＥが接近不能なロケーションで作業中であるか否かを判断する。
【００６３】
図１０Ａは、段階９０２から段階９０８において検出される可能性があるコンテナが集荷に利用可能ではなかった場合の例を示している。この例では、在庫追跡データベースが、特定のロケーションの段１に唯一のコンテナＤが存在することを示しているのに対して、新規在庫データは、コンテナＡがこの特定のロケーションの段４で集荷されたと報告する。相応に、エラー検出モジュール３０２が段階６０４において新規在庫データを読み取った後に、エラー検出モジュールは、図７に示している段階６０６におけるデータ矛盾検出処理に入る。段階７０２及び７０４を提供し、エラー検出モジュールは、コンテナ集荷イベントが発生したと判断し、次に、段階９０２においてコンテナが集荷に利用可能であったか否かを検査する。在庫追跡データベース内にはコンテナＤしか存在しないので、このロケーションの段４に関する照会はいかなる結果も戻さず、それによっていかなるコンテナも集荷に利用可能ではなかったという結果がもたらされる。次に、段階９０４において、エラー検出モジュール３０２は、このロケーションの段１から段３に対して照会し、その結果は、このロケーションの段１にコンテナＤがあることを示す１つの在庫データ記録のみを含むことになる。従って、在庫追跡データベースにより、このロケーションの段２、３、及び４は空であるが、新規データにより、段２、３、及び４は、占有されていたはずである。それに応じて、段階９０６において、エラー検出モジュール３０２は、段２、３、及び４それぞれのセルロケーションを有する３つの在庫データ記録を作成し、これらの記録の「コンテナタイプ」は、例えば、「不可視コンテナ」としてマーク付けされる。新規データによると段４におけるコンテナが集荷されているので、エラー検出モジュール３０２は、この集荷ロケーションに対応する新規作成データ記録を例えば過去においてのみ妥当であったことを示す「失効済み」と更にマーク付けする。代替的に、エラー検出モジュール３０２は、段２及び３におけるセルロケーションに関する在庫データ記録のみを作成することができる。更に、新規データも同様に潜在的に間違いである可能性があるから、このデータもデータ矛盾に起因して同様にマーク付けされる。一実施形態では、新規データは、検出されたエラーに対するエラーフラグを追加することによってマーク付けされる。
【００６４】
更に、エラー検出モジュール３０２は、新規在庫データ内に与えられた集荷イベントの信頼性レベル又はこの信頼性レベルの関数を新規作成在庫データ記録の信頼性レベルとして割り当てることができる。その後に、データ矛盾検出処理は、段階９０８においてエラー、並びに新規作成データ記録を報告し、次に、次のエラー検査段階に進み、段階９１６においてＨＥが接近不能なロケーションで作業中であるか否かを判断する。
【００６５】
図９を参照し直して段階９１０に進むと、９０２でコンテナが集荷に利用可能であった場合に、データ矛盾検出処理は、段階９１０において接近不能な集荷ロケーションというタイプのエラーが発生したか否かを判断する次のエラー検査段階に移る。すなわち、段階９１０において、データ矛盾検出処理は、コンテナが接近不能なロケーションで集荷されたか否かを判断する。新規在庫データが、コンテナＢが段３から集荷されたことを示すが、在庫追跡データベースが、段４においてコンテナＡがコンテナＢの上に積み重ねられていることを示す図１０Ｂにその例を示している。在庫追跡データベース内でのコンテナＢの上のコンテナＡの存在により、実際には、コンテナＢは、最初にコンテナＡが集荷されてしまっていない限り接近不能であったはずである。集荷されたコンテナが接近不能なロケーションにあったか否かを判断するために、データ矛盾検出処理は、最初に集荷ロケーションが最上段、すなわち、この例示的な保管施設では段４であるか否かを検査することによって検索基準を判断する。集荷ロケーションが最上段であった場合には、集荷ロケーションは接近可能であると見なされ、いかなる検索基準及びいかなる照会も必要ではなく、従って、処理は段階９１６に続く。他の場合には、集荷ロケーションの上方のセルロケーションが検索基準を構成し、データ矛盾検出処理は、この検索基準を更に用いて、集荷ロケーションの上方のセルロケーションに関連する在庫データ記録に関して在庫追跡データベース１１４に照会する。照会がいかなる結果も戻さなかったか又はいかなるコンテナも集荷ロケーションの上に存在しない結果を戻した場合には、データ矛盾検出処理は、集荷ロケーションが接近可能であると結論付けて、段階９１６における次のエラー検査段階に進む。図１０Ｂに示している例では、集荷ロケーションが段３にあるから、照会は、この特定のロケーションの段４に関する。この例では、照会は、段４にコンテナＡを示す在庫データ記録を戻すことになり、従って、段階９１０において、データ矛盾検出処理は、集荷ロケーションが接近可能ではなかったはずであると結論付け、接近不能な集荷ロケーションというタイプのエラーが発生したと結論付ける。次に、処理は、段階９１５においてエラーをエラータイプと共に報告する段階に進むことができる。代替的に、処理は、段階９０８に移る前に段階９１２及び段階９１４においてエラーデータ記録を識別して修正することができる。
【００６６】
一実施形態における処理は、段階９１０から段階９１５においてデータを報告する段階に進むことができる。別の実施形態では、段階９１２において、処理は、更に別の処理に向けて照会からもたらされるデータ記録を読み取って段階９１４に進み、次に、この段階においてデータ矛盾検出処理は、例えば、在庫データ記録内のコンテナのタイプ又は特性を表すフィールド内でこれらのコンテナを「虚影コンテナ」としてマーク付けし、これらのコンテナが在庫追跡データベース内にしか存在しないことを示している。更に、段階９１４において、新規在庫データ内に与えられた信頼性レベルに基づいて「虚影コンテナ信頼性レベル」という名称の信頼性レベルも計算され、次に、この信頼性レベルは、これらの在庫データ記録に追加されるか、又はこれらの在庫データ記録内の元の信頼性レベルを置き換える。データ矛盾検出処理は、エラーを反映するために新規データもマーク付けし、このマーク付けは、エラー、並びにエラータイプを示すエラーフラグを新規データに追加する段階を含む。その後にデータ矛盾検出処理は、段階９０８においてエラータイプを含むエラーを報告し、更新した在庫データ記録を出力する。
【００６７】
次に、データ矛盾検出処理は、段階９１６に進み、ＨＥ自体が接近不能なロケーションで作業中であるか否かを判断する。段階９１６における第３のエラータイプは、他の２つのエラータイプとは互いに排他的ではないので、この段階９１６は、前の２つのエラータイプ（すなわち、集荷に利用可能なコンテナの不在及び接近不能な集荷ロケーション）に関連する処理段階（段階９０２から９０８まで及び段階９１０から９１４まで）の後に発生する。
【００６８】
図１１Ａ〜図１１Ｄは、何故ＨＥが接近不能なロケーションに存在する可能性があり、段階９１６〜９２０を必要とするかを示す状況を示している。図１１Ａ及び図１１Ｂは、ＨＥがコンテナＡを正当に集荷することができる接近可能なロケーションで作業中のＨＥの２つの例を示している。一方、図１１Ｃ及び図１１Ｄは、トップピックであるＨＥが、コンテナＥ及びＦの存在に起因して、図１１Ａに示しているようにリーチスタッカー（異なるタイプのＨＥ）が到達することができるコンテナＡに到達することができないことを示している。
【００６９】
一実施形態では、ＨＥが接近不能なロケーションで作業中であるか否かを識別するために、各タイプのＨＥに対してクリアランス区域が定められる。そのようなクリアランス区域は、ＨＥコントローラの到達区域メモリ内で、集荷中のコンテナのロケーションを基準点とする矩形区域、円形区域、又は他の形状の区域によって表すことができる（ＨＥの形状に依存して）。代替的に、クリアランス区域は、集荷中のコンテナのロケーションを基準とするセルロケーションによって直接表すことができる。このクリアランス区域内のセルロケーションは検索基準を構成し、データ矛盾検出処理は、この検索基準を用いて、クリアランス区域内のロケーションに対応する在庫データに関して在庫追跡データベース１１４に照会する。照会がいかなる記録ももたらされなかったか又はいかなるコンテナもクリアランス区域に存在しないことを示す記録をもたらされた場合には、段階９１６において、ＨＥは接近不能なロケーションで作業していないと判断され、データ矛盾検出処理は、エラーを更に報告することなく段階６０８に抜ける。しかし、段階９１６における照会が、クリアランス区域内のセルロケーションにコンテナが存在することを示す結果をもたらされた場合には、データ矛盾検出処理は、ＨＥが接近不能なロケーションで作業中であると結論付けて段階９１８に進み、更に別の処理に向けてこれらの記録を読み取って受け取り、すなわち、段階９１８では、接近不能性問題をもたらすあらゆるコンテナが識別される。段階９１８に進む代わりに、データ矛盾検出処理は、段階９１８及び９２０を省略して、エラーをエラータイプと共に報告する段階９２１に直接進むことができる。
【００７０】
段階９２０において、次に、データ矛盾検出処理は、段階９１８で識別されたコンテナをこれらの在庫データ記録内でコンテナのタイプ又は特性を表すフィールド内で、これらのコンテナが在庫追跡データベース内にしか存在しないことを示す「虚影コンテナ」としてマーク付けする。更に、段階９２０では、新規在庫データ内に与えられた信頼性レベルに基づいて「虚影コンテナ信頼性レベル」という名称の信頼性レベルも計算され、次に、この信頼性レベルは、これらの在庫データ記録に追加されるか、又はこれらの在庫データ記録内の元の信頼性レベルを置き換える。その後に、段階９２１において、データ矛盾検出処理は、エラータイプを含むエラーを報告し、更新された在庫データ記録を出力し、６０８から６１２までの段階に抜ける。
【００７１】
図７を参照し直すと、段階７０２から７０６までを通じてコンテナ降荷イベントが検出された場合には、処理は、図１２の１２０２から１２２０までの段階に続く。この実施形態では、コンテナ降荷イベントに対応するエラータイプの組は、空中降荷ロケーション、占有済み降荷ロケーション、及び接近不能な作業ロケーションを含む。この場合、データ矛盾検出処理は、検査処理を用いてこれらの３つのエラータイプのうちのいずれかのデータエラーが発生したか否かを調べる。第１のエラー検査段階は、段階１２０２で始まり、この段階では、処理は、降荷ロケーションが空中であったか否かを判断する。このエラータイプは、直下に必要な物理的支持を与えるコンテナが存在することを在庫追跡データベースが反映していなかったセルロケーションにコンテナが降荷された又は荷置きされた場合を指す。このエラータイプに基づいて、データ矛盾処理は、最初に新規データ内で指定された降荷ロケーションの下のセルロケーションを含む検索基準を判断する。降荷ロケーションが段１であり、すなわち、直接に地面の上に収まるベース段である場合には、降荷ロケーションの下にはいかなるセルロケーションも存在せず、データ矛盾検出処理は、降荷ロケーションが空中ではないと直接結論付け、次のエラー検査段階に向けて段階１２１０に進む。他の場合には、検索基準は、降荷ロケーションの下の全てのセルロケーションを含み、データ矛盾検出処理は、この検索基準を用いて、これらのセルロケーションに関連するあらゆる在庫データ記録に関して在庫追跡データベース１１４に照会する。照会が、降荷ロケーションの下のセルロケーションのいずれかに対していかなる結果も戻さなかったか又は在庫追跡データベース１１４が、降荷ロケーションの下の指定ロケーションにコンテナを示すいかなるデータ記録も含まないことを示す結果を戻した場合には、データ矛盾検出処理は、降荷ロケーションが全く空中であり、エラーが発生したと結論付ける。一実施形態では、データ矛盾検出処理は、段階１２０４及び１２０６を省略して段階１２０８に進むことができ、エラーをエラータイプ（すなわち、空中降荷ロケーション）と共に報告する。代替的に、処理は、段階１２０８でエラーを報告する前に段階１２０４及び１２０６に進む。
【００７２】
段階１２０４において、データ矛盾検出処理は、照会結果に基づいて降荷ロケーションの下の非占有セルロケーションを識別する。より具体的には、段階１２０４は、ＨＥが定めた降荷ロケーションをデータベース記録と比較することによって降荷ロケーションの下の空のセルロケーションを識別する。新規在庫データが正確であり、従って、降荷ロケーションの下には実際にコンテナが必ず存在すると仮定すると、データ矛盾検出処理は、段階１２０６において、降荷ロケーションの下の非占有セルロケーションの各々に対して新規在庫データ記録を作成し、これらのロケーションの各々にコンテナを割り当てる。これらのコンテナは、以前には在庫追跡データベースに対して不可視であったので、例えば、それぞれのデータ記録内の「コンテナタイプ」フィールド内に「不可視コンテナ」としてマーク付けされる。更に、段階１２０６において、新規在庫データ内に与えられた信頼性レベルに基づいて「不可視コンテナ信頼性レベル」という名称の信頼性レベルも計算され、次に、この信頼性レベルは、新規作成データ記録の各々の中に含められる。次に、段階１２０８において、データ矛盾検出処理は、エラーをエラータイプと共に報告し、新規計算信頼性レベルを含む新規作成データ記録を出力する。その後に、データ矛盾検出処理は、段階１２１６において、ＨＥが接近不能なロケーションで作業中であるか否かを判断する次の検査段階に進む。
【００７３】
図１３Ａは、降荷ロケーションが空中である例を示している。左に示しているように、在庫追跡データベースは、コンテナＤが段１にあり、コンテナＤの上にはいかなるコンテナも位置しないことを示している。新規在庫データは、コンテナＡが段４に降荷されたことを示している。この場合データ矛盾検出処理は、段４における降荷ロケーションの下には３つのセルロケーション（段１、段２、及び段３）が存在することを識別し、これらの３つのセルロケーションに対して在庫追跡データベースに照会する。照会は、段１におけるコンテナＤを示す１つのデータ記録だけを戻し、従って、照会結果内には段２及び段３に関するいかなるデータ記録も出現しない。従って、段階１２０２において、データ矛盾検出処理は、降荷ロケーションが空中であると結論付け、段２及び段３における２つのセルロケーションが、段階１２０４における更に別の処理を必要とすることを識別する。それに応じて、段階１２０６において、データ矛盾検出処理は、１つが段２に対して、もう１つが段３に関する２つの新規データ記録を作成し、２つの新規作成データ記録において２つのコンテナに「不可視コンテナ」に設定された「コンテナタイプ」属性を割り当て、更に信頼性レベルを計算して２つのデータ記録内に含める。次に、データ矛盾検出処理はエラーを報告し、新規計算信頼性レベルを含む２つの新規作成データ記録を出力し、段階１２１６に抜けて、ＨＥが接近不能なロケーションで作業中であるか否かを調べる。
【００７４】
図１２の段階１２０２を参照し直すと、降荷ロケーションが空中ではなかった場合には、処理は、次のエラー検査段階に向けて段階１２１０に続き、占有済み降荷ロケーションというエラータイプのエラーが発生したか否かを判断する。段階１２１０では、データ矛盾検出処理は、在庫追跡データベース１１４内で降荷ロケーションが別のコンテナにおって既に占有済みであるか否かを判断する。この判断を行うために、データ矛盾検出処理は、最初に新規データ内の降荷ロケーションに基づいて、降荷ロケーションを含み、かつ降荷ロケーションが最上段ではなかった場合には降荷ロケーションの上方のセルロケーションを含む検索基準を判断する。次に、データ矛盾検出処理は、この検索基準を用いて、検索基準内に指定されたこれらのセルロケーションに関連する在庫データ記録に関して在庫追跡データベースに照会する。照会が、いかなる結果ももたらさないか、又は降荷ロケーション又は降荷ロケーションの上方のロケーションにいかなるコンテナも示さない結果をもたらす場合には、データ矛盾検出処理は、降荷ロケーションが占有済みではないと結論付け、段階１２１６における次のエラー検査段階に進む。他の場合には、データ矛盾検出処理は、降荷ロケーションが既に占有済みであり、従って、このエラータイプのエラーが発生したと結論付ける。一実施形態では、データ矛盾検出処理は、段階１２１２及び１２１４を省略して段階１２１５に進んでエラーをエラータイプと共に報告し、別の実施形態では、段階１２１５でエラーを報告する前に段階１２１２及び１２１４に続く。
【００７５】
段階１２１２において、データ矛盾検出処理は、更に別の処理に向けて照会結果内のデータ記録を読み取って取得する。従って、降荷イベントを示す新規在庫データが正しい場合、照会結果内のデータ記録は必ずエラーを有するはずであり、その逆も同様である。すなわち、新規在庫データと照会結果内のデータ記録の両方が間違いである可能性があり、従って、これらの両方がエラーデータ記録として取り扱われる。次に、データ矛盾検出処理は、段階１２１４において、照会結果から導出されたデータ記録の各々における「コンテナタイプ」属性を「虚影コンテナ」に修正する。更に、データ矛盾検出処理は、降荷イベントの信頼性レベルに基づいてデータ記録の各々に関する新規信頼性レベルを計算し、次に、この新規信頼性レベルは、対応するデータ記録に追加されるか、又は元来データ記録内にある信頼性レベルを置き換える。データ矛盾検出処理は、エラーを反映するために新規データをマーク付けし、新規データにエラーフラグを追加することができる。その後に、データ矛盾処理は、段階１２１５においてエラーを報告し、新規計算信頼性レベルを有する修正済みデータ記録を出力し、１２１６における次のエラー検査段階に進む。
【００７６】
図１３Ｂは、降荷ロケーションが既に占有済みである場合の例を示している。左に示しているように、在庫追跡データベースは、互いに積み重ねられた４つのコンテナが存在し、特定のロケーションの４つ全ての段を占有することを示している。新規在庫データは、別のコンテナがこの特定のロケーションの段４に荷置きされる降荷イベントが発生したことを示している。それに応じて、段階１２０２において、データ矛盾検出処理は、段４の下のセルロケーションが全て占有済みであるから、降荷ロケーションが空中ではないと判断する。次に、データ矛盾検出処理は、段階１２１０において降荷ロケーション（すなわち、この特定のロケーションの段４）におけるデータ記録に関して在庫追跡データベースに照会し、この照会は、コンテナＡが既に降荷ロケーションにある（降荷イベントの前に）ことを示すデータ記録をもたらす。従って、データ矛盾検出処理は、降荷ロケーションが占有済みであったと結論付け、段階１２１２及び１２１４に進んでコンテナＡを「虚影コンテナ」としてマーク付けし、その信頼性レベルを更新する。その後に、データ矛盾検出処理は、エラーを報告し、新規計算信頼性レベルを有する修正済みデータ記録を出力し、段階１２１６における次のエラー検査段階に進んでＨＥが接近不能なロケーションで作業中であるか否かを判断する。
【００７７】
図１２を参照し直すと、段階１２１０において降荷ロケーションが非占有であると判断されたか、又は段階１２０８又は１２１５においてエラーが発生した場合には、データ矛盾検出処理は、段階１２１６に進んでＨＥが接近不能なロケーションで作業中であるか否かを判断する。この判断及びその後の段階１２１８から１２２１は、段階９１６から９２１に関わる処理と同様であり、従って、これらに対しては、ここでは再述しない。
【００７８】
図１４は、在庫エラー、特に、コンテナ輸送ヤード内でのコンテナのロケーションにおけるエラーを検出するためのカメラを利用したエラー検出を使用する在庫追跡及び管理システムを示している。図３に示している構成要素に加えて、このシステムは、カメラ１４０２及び画像処理モジュール１４０４を更に含む。カメラ１４０２は、単レンズカメラ、２つ又はそれよりも多くのレンズを有するステレオカメラ、又は各々がステレオカメラとして機能する、単レンズカメラの組とすることができる。カメラ１４０２は、コンテナ輸送ヤード内の固定のロケーション（例えば、選択された照明柱）に設置することができる。各カメラ（又はカメラの各組）は、ヤードの指定の区域に向けて位置決めすることができ、固定角度で網羅することになる区域よりも広い区域を網羅するために、事前設定範囲で回転させることができる。これらのカメラ１４０２は、コンテナ輸送ヤードにわたって適正に分散されると、ヤード全体を走査することができ、通信ネットワーク１０８を通じてアプリケーション／データベースインタフェース１１０に画像を提供することができる。アプリケーション／データベースインタフェース１１０は、画像を画像処理モジュール１４０４に出力し、画像処理モジュール１４０４は、画像を処理してセルロケーションが占有済みであるか否かを判断し、それに従って在庫検証データを生成する。生成された在庫検証データは、次に、エラー検出モジュール３０２に送られ、エラー検出モジュール３０２は、エラー検出に向けて在庫検証データを在庫追跡データベース１１４内のデータ記録と比較する。アプリケーション／データベースインタフェース１１０は、オペレータがヤード内での作業及び行動をモニタするために、これらの画像をディスプレイ上に表示することができる。
【００７９】
図１５は、カメラ１４０２からの画像に基づいて在庫エラーを検出する処理を示す流れ図である。処理は、毎日特定の時刻に実施されるように設定することができ、いずれかの時刻にオペレータが開始することができ、又は更に実時間に実施することができる。段階１５０２において始まり、画像処理モジュール１４０４は、アプリケーション／データベースインタフェース１１０からカメラ画像を受け取り、コンテナの認識に向けて画像を処理する。例えば、コンテナを特定の寸法を有する立方体又は円柱（例えば、タンクコンテナでは）として処理することによってコンテナを認識するように、当業者に公知の様々な画像処理技術及びパターン認識技術を使用することができる。そのような技術を使用することにより、画像処理モジュール１４０４は、画像内のコンテナを認識するのみならず、画像内のその（相対）ロケーション（地面の上の高さを含む）も認識し、この場合、各ポジションは、コンテナの中心のポジションである。更に、画像処理モジュール１４０４は、認識したコンテナの属性を識別することができ、そのような属性は、コンテナの色、タイプ、出所、製造業者、更に、コンテナＩＤを含む。
【００８０】
コンテナが画像内のその（相対）ポジションと共に認識された状態で、更に、画像処理モジュール１４０４は、段階１５０４においてコンテナ輸送ヤード内でのコンテナのロケーションを判断する。一実施形態では、画像処理モジュール１４０４は、画像を供給するカメラのロケーション、画像が撮影された時点でのカメラの走査角度、及び画像内でのコンテナの相対ポジションに基づいてコンテナのロケーションを判断する。より具体的には、各カメラは固定のロケーションにあるから、カメラのロケーション及び走査角度に基づいて、その視野（すなわち、画像内に捕捉される区域）を判断することができる。その結果、視野をコンテナ輸送ヤードに関連付けるロケーションプロフィールをいずれかを特定の走査角度にある各カメラに対して事前判断することができる。そのようなロケーションプロフィールは、一方の列が、輸送ヤード内のセルロケーション（例えば、列１０１、間口２１、枠Ａ、段１）を含み、他方の列が、画像内で対応するロケーション（例えば、ｐｘ、ｐｙ、及びｐｚ）を含む２列の換算表によって表すことができる。更に、カメラの走査範囲で複数の（等しい間隔の）走査角度を選択することにより、カメラに対して複数のロケーションプロフィールを構成することができる。これらの走査角度の間隔は、いずれかの走査角度で撮影された画像を最も近い事前選択走査角度に対応するロケーションプロフィールを用いてコンテナ輸送ヤードに正しくマップすることができるように比較的小さいものでなければならない。いずれかの走査角度で撮影された画像をマップする前に、画像処理モジュール１４０４は、画像を回転させて、回転された画像が、最も近い事前選択走査角度で撮影された画像を近似するようにすることができる。その後に、画像処理モジュール１４０４は、ロケーションプロフィールに基づいてコンテナ輸送ヤード内でのコンテナのロケーションを判断する。
【００８１】
別の実施形態では、画像処理モジュール１４０４は、画像内の目印を識別して、認識した各コンテナに対してコンテナ輸送ヤード内で対応するロケーションを判断する。目印は、地面の上の線マーカ、隣接の照明柱、及び視野内の建築物のような他の固定物を含むことができる。コンテナ輸送ヤード内でのこれらの目印のロケーションは、事前判断することができるので、輸送ヤード内で認識されたコンテナのロケーションを判断するのにこれらの目印を基準点として使用することができる。
【００８２】
両方の段階１５０２及び１５０４までに、画像処理モジュールは、各画像内でコンテナを認識し終わり、輸送ヤード内でのそのロケーションを判断し終わっている。更に、コンテナ認識においてより高い精度を獲得するように認識結果の整合性を更に評価するために、画像処理モジュール１４０４は、１つのカメラによって撮影された複数の画像からのコンテナ認識結果、並びに複数のカメラによって撮影された画像からの認識結果を比較して相関付けることができる。
【００８３】
その後に、段階１５０６において、画像処理モジュール１４０４は、コンテナ認識及び認識したコンテナのロケーションに基づいて在庫検証データを生成する。例えば、各カメラは、所定の指定区域を走査するか又は網羅するので、画像処理モジュール１４０４は、各カメラに対して在庫検証データに対する所定のテンプレートを有することができる。テンプレートは、１つの列が指定区域内での全てのセルロケーションを列記し、別の列が、対応するセルロケーションでコンテナが検出されるか否かを示すためのものである２列の表程度の単純なものとすることができる。画像処理モジュール１４０４は、段階１５０２におけるコンテナ認識及び段階１５０４におけるロケーション判断に基づいて第２の列を埋める。表は、認識された各コンテナの属性及び表の各行エントリに関するタイムスタンプのような他の情報に対する列を含むように拡張することができ、そのようなタイムスタンプは、対応する画像が撮影された時刻とすることができる。次に、画像処理モジュール１４０４は、段階１５０６においてこれらの表を在庫検証データとしてエラー検出モジュール３０２に報告する。任意的に、画像処理モジュール１４０４は、各カメラに関する表を単一の表に組み合わせて、この単一の表をエラー検出モジュール３０２に報告することができる。
【００８４】
段階１５０８において、エラー検出モジュール１４０４は、画像処理モジュール１４０４からの在庫検証データを処理して在庫追跡データベース１１４内の在庫エラーを検出する。エラー検出モジュール３０２は、最初に在庫検証データ内のセルロケーションに対応するデータ記録に関して在庫追跡データベース１１４に照会し、次に、これらの２つの間のあらゆる不一致に関して照会結果を在庫検証データと比較する。在庫検証データによるとあるセルロケーションは占有されているが、照会結果が、このセルロケーションにいかなるコンテナも存在しないことを示す場合には、このロケーションにおけるコンテナは、欠損コンテナ又は在庫追跡データベース１１４に対して不可視のコンテナと見なされる。同様に、在庫検証データによるとあるセルロケーションは占有されていないが、照会結果が、そこにコンテナが存在することを示す場合には、コンテナは、在庫追跡データベース１１４内にのみ存在するもの又はデータベース内の「虚影」コンテナと見なされる。更に、エラー検出モジュール３０２は、エラー検出に向けて在庫検証データ内のコンテナ属性を照会結果内のコンテナ属性と更に比較することができる。例えば、在庫検証データに従って画像処理モジュール１４０４があるセルロケーションにおいて２０フィートのコンテナを認識したが、照会結果が、このセルロケーションにあるコンテナが４０フィートのコンテナであることを示す場合には、エラー検出モジュール３０２は、このセルロケーションにおいて属性の不一致を検出する。不一致の３つ全ての場合が、在庫追跡データベース１１４内のエラーを示している。
【００８５】
段階１５１０では、エラー検出モジュール３０２は、エラー検出に従って在庫データを更に作成又は修正する。より具体的には、エラー検出モジュール３０２は、欠損コンテナが識別された各セルロケーションに対して在庫データ記録を作成し、更にこの新規作成データ記録内のコンテナ属性（例えば、「コンテナタイプ」フィールド）をマーク付けして（例えば、「不可視コンテナ」として）、コンテナが在庫追跡データベース１１４に対して不可視であったことを示す。「虚影」コンテナが識別されるセルロケーションでは、エラー検出モジュール３０２は、例えば、コンテナ特性を「虚影コンテナ」とマーク付けすることにより、照会結果内の対応するデータ記録をエラーを反映するように修正する。不整合属性を有するセルロケーションに対して、エラー検出モジュール３０２は、在庫検証データ内の属性（画像処理モジュールによって認識された属性）を追加するように照会結果内の対応するデータ記録を修正することができる。更に、エラー検出モジュール３０２は、画像処理モジュール１４０４に関連付けられた所定の信頼性レベルを用いて信頼性レベルをデータ記録に追加することができる。
【００８６】
その後に、段階１５１２において、エラー検出モジュール３０２は、更新に向けて新規作成データ記録及び修正済みデータ記録を在庫追跡データベース１１４に報告する。
【００８７】
別の実施形態では、ＨＥ又はモニタリング車両上に設けられたカメラを単独又は固定のロケーションに設けられたカメラとの併用いずれかに使用することができる。これらのカメラはモバイルであるから、画像処理モジュール１４０４は、目印を認識し、目印のロケーションを基準として使用することにより、認識したコンテナのロケーションを判断する。代替的に、画像処理モジュール１４０４は、コンテナのロケーションを判断するためにカメラを載置する車両のポジションを使用することができる。その後に、エラー検出モジュール３０２は、図１５を用いて上述のように、エラーを検出して在庫データを作成又は修正する。
【００８８】
図１６は、在庫追跡システムに関連付けられた在庫追跡データベース内のエラーを検出するために在庫追跡システムとインタフェースで接続するカメラを利用した在庫エラー検出システムの実施形態を示している。カメラを利用した在庫エラー検出システムは、カメラ１４０２、個別の有線通信ネットワーク及び／又は無線通信ネットワーク１６０２、画像処理モジュール１４０４、並びにエラー検出モジュール３０２を含む。通信ネットワーク１６０２は、カメラによって生成された画像を画像処理モジュール１４０４に送信するために、カメラ１４０２を画像処理モジュール１４０４と直接接続し、従って、画像処理モジュール１４０４は、図１４に示しているようにアプリケーション／データベースインタフェース１１０を通じて画像を受け取る必要がない。従って、カメラを利用した在庫エラー検出システムは、在庫追跡システムとインタフェースで接続する独立したシステムになり、このシステムは、一部の用途では好ましいとすることができる。画像処理モジュール１４０４及びエラー検出モジュール３０２内に関わる処理は図１５に示す処理と同様であり、これに対しては図１４の在庫追跡及びエラー検出システムと共に上述している。
【００８９】
図１７は、本発明の実施形態に従って含められた自動在庫エラー検出構成要素及び在庫エラー訂正構成要素を有する在庫追跡及び管理システムのブロック図を示している。図１に示している一般的な在庫追跡及び管理システム内の構成要素、並びに在庫データの妥当性を調べ、在庫追跡データベース１１４内のエラーを自動的に検出するエラー検出モジュール３０２に加えて、このシステムは、エラー検出モジュール３０２からエラー検出結果を受け取って検出エラーを訂正するエラー訂正モジュール１７０２を更に含む。エラー訂正モジュール１７０２の詳細内容に対しては、図１８から図２３に関連して後で説明する。エラー訂正処理では手動介入は必要ではないが、エラー訂正モジュール１７０２は、オペレータが望む場合には、オペレータがエラー訂正処理に手動で介入することを可能にすることができる。
【００９０】
図１８は、エラー訂正モジュール１７０２によって実行されるエラー訂正処理の一実施形態を示す流れ図である。図１８では、最初に段階１８０２において、エラー訂正処理は、エラー検出モジュール３０２から新規エラーが報告されたか否かを検査する。図６を用いて上述のように、エラー検出モジュール３０２は、段階６０６においてデータ矛盾を検査してエラーを検出し、段階６０６の出力は、データ矛盾／エラーが検出されたか否かを示す少なくとも１つの変数（例えば、ｅｒｒｏｒ＿ｄｅｔｅｃｔｅｄ＿ｆｌａｇ）を含む。例えば、処理は、段階６０６において、ブール変数、例えば、ｅｒｒｏｒ＿ｄｅｔｅｃｔｅｄ＿ｆｌａｇをエラーが検出された場合に１に設定するか又はいかなるエラーも検出されなかった場合に０に設定する。段階６１０において、エラー検出モジュールは、この変数を「不可視」コンテナに関するあらゆる新規作成データ記録、「虚影」コンテナに関するあらゆる訂正データ記録、並びに段階６０２において受け取った新規データ（いずれかのエラーが検出された場合のエラーの原因である）と共に出力することによってエラーを報告する。従って、エラーの検出を示す変数（例えば、ｅｒｒｏｒ＿ｄｅｔｅｃｔｅｄ＿ｆｌａｇ）の値を調べることにより、エラー訂正処理は、エラー検出モジュール３０２によっていずれかのエラーが報告されたか否かを判断することができる。
【００９１】
報告されたいかなる新規エラーも存在しない場合には、エラー訂正処理は終了し、段階１８０２において次の処理サイクルが再開して、新規エラーが報告されたか否かを再度検査するまで待機する。報告されたエラーが存在する場合は（すなわち、エラー検出モジュールがエラーを検出する）、エラー訂正処理は段階１８０４に続き、エラー検出モジュール３０２からの対応するエラー検出結果を読み取る。段階６１０で上述したように、関連エラー検出結果は、「不可視」コンテナに関する新規作成データ記録、「虚影」コンテナに関するデータ記録、並びに段階６０２において受け取られた新規データを含む。
【００９２】
その後に、段階１８０６において、エラー訂正処理は、段階１８０８におけるエラー候補の検索に使用されることになる検索基準を判断する。一般的にエラーは、コンテナポジションの推定（時に取り扱い機器のポジションを推定することによる）における不正確性に起因してもたらされ、従って、一般的に、検索基準は、エラー検出結果に関連するコンテナセルロケーションを取り囲むコンテナセルロケーションを含む。例えば、エラー検出モジュール３０２からのエラー検出結果が、コンテナセルロケーション（列１１１、間口２４、枠Ｂ、段４）において在庫追跡データベース１１４に対して不可視のコンテナを含む場合には、検索基準は、直近のコンテナセルロケーション（列１１１、間口２４、枠Ａ、段４）、（列１１１、間口２４、枠Ｃ、段４）、（列１１１、間口２３、枠Ｂ、段４）、（列１１１、間口２３、枠Ｂ、段４）、（列１１１、間口２５、枠Ｂ、段４）、及び（列１１１、間口２４、枠Ｂ、段３）を含むことができる。検索基準は、測位システムの精度に基づいて、（列１１１、間口２２、枠Ｂ、段４）のような更に離れたコンテナセルロケーションまで拡張することができる。高精度の高さ測定を可能にするために付加的な高さセンサが使用される場合には、検索基準は、エラー検出結果内のセルロケーションと同じ段上に存在するコンテナセルロケーションのみを含むとすることができる。
【００９３】
段階１８０８において、エラー訂正処理は、段階１８０６で判断された検索基準を用いて在庫追跡データベース１１４に照会し、次に、照会結果からエラー候補を判断する。一実施形態では、エラー候補は、以前に検出されたエラー又はエラーデータ記録しか含まず、段階１８０８の目的は、検索基準内に指定されたコンテナセルロケーションにいずれかの「不可視」コンテナ又は「虚影」コンテナが存在するか否かを明らかにすることである（例えば、照会結果内のコンテナ属性［例えば、「コンテナタイプ」フィールド］を調べることにより）。エラー検出モジュール３０２が、データエラーの検出時に在庫追跡データベース１１４内に表を作成して、これらの表内にエラーデータ記録を記録する（例えば、図６の段階６１２において）場合には、検索基準内に指定されたコンテナセルロケーションに（以前に検出された）エラーデータ記録が存在するか否かを明らかにするために、これらの表に対して照会を実施することができる。この実施形態の例に対して、図１９を用いて後で説明する。別の実施形態では、エラー候補は、通常のデータ記録も含み、図２０から図２３と併せて例を以下に説明する。
【００９４】
その後に、段階１８１０において、エラー訂正処理は、照会がいずれかのエラー候補をもたらすか否かを調べる。いかなるエラー候補も見つからなかった場合には、エラー訂正処理は段階１８２０に続き、訂正例外処理を実行する。この場合、訂正例外処理は、例外フラグを例外がエラー候補の不在に起因することを示す値に設定する。次に、段階１８２４では、この例外フラグを検出エラーに対応するデータ記録に追加することができる。代替的に、検出エラー及び例外フラグを記録するエラー訂正ログファイルを作成することができる。次に、在庫追跡データベース１１４が、適宜更新されることになる。一部の他の実施形態では、段階１８１０においていかなるエラー候補も見つからなかったと判断された場合には、エラー訂正処理は段階１８０６に戻ることができ、例えば、検出エラーに対応するコンテナセルロケーションから更に離れたコンテナセルロケーションを含めることによって検索基準を拡張し、段階１８０８において別の検索を実施する。エラー訂正処理は、（ａ）エラー候補が見つかるか、又は（ｂ）所定の条件が満たされる（例えば、検索範囲に対する閾値に達する）まで段階１８０６から１８１０の間で反復することができる。エラー訂正処理は、（ａ）の場合は段階１８１２に続き、（ｂ）の場合には、１８２０に続き、上述の例外処理を実行する。
【００９５】
照会が１つ又はそれよりも多くのエラー候補をもたらした場合には、エラー訂正処理は、段階１８１０から段階１８１２に続き、各エラー候補を評価し、更にそれが現在検出されているエラーを補正するのに使用することができるマッチである可能性を評価する。評価は、各候補に対して信頼性／矛盾指標を計算する段階を含むことができる。エラー検出結果内の各エラーデータ記録に対して、エラー訂正処理は、データ記録自体の信頼性レベル、エラー候補の信頼性レベル、データ記録のポジションからエラー候補のコンテナセルロケーションまでの距離、及びエラー候補のロケーションからデータ記録のコンテナセルロケーションまでの距離に基づいて、データ記録に対応するエラー候補の信頼性指標を計算する。一実施形態では、信頼性指標は、Ｃｏｎｆerror candidate及びＣｏｎｆdata recordが、それぞれエラー候補の信頼性レベル及びデータ記録（エラー検出結果内の）の信頼性レベルであり、ｋが上述の２つの距離に基づく重み係数である時に、ｋ×Ｃｏｎｆerror candidate×Ｃｏｎｆdata recordとして計算される。例えば、１１がデータ記録のポジションからエラー候補のコンテナセルロケーションの中心までの距離であり、１２がエラー候補のロケーションからデータ記録のコンテナセルロケーションの中心までの距離であり、Ｌが正規化を目的とする所定の数値である時に、ｋ＝Ｌ／（ｌ１×ｌ２）である。例えば、Ｌは、コンテナ幅１つ分の二乗として定めることができる。従って、これらの２つの距離が短い程、重み係数ｋは大きく、信頼性指標は高い。
【００９６】
その後に、段階１８１４において、エラー検出結果内の各データ記録に対して、その対応するエラー候補の計算信頼性指標が分類され、最も高い信頼性指標（又は最も小さい矛盾指標）に対応するエラー候補が、このデータ記録に対する潜在的マッチとして選択される。エラー検出結果内のデータ記録のうちのいずれかに対して、最も高い信頼性指標をもたらすエラー候補の個数が１つよりも多い場合には、１つのデータ記録に対して複数の潜在的マッチが見つかり、エラー訂正処理は、これらの潜在的マッチのうちのどれをエラー訂正のためのマッチとすることができるかの判断を行うことができない。この場合、エラー訂正処理は、段階１８１６においてマッチを未確立と見なし、段階１８２０における訂正例外処理に進む。それに応じて、訂正例外処理は、例外フラグを複数の潜在的マッチが見つかったことを示す値に設定する。次に、エラー訂正処理は段階１８２４に進み、例外フラグでデータエラー記録を更新し、エラー訂正ログを更新する。
【００９７】
段階１８１６を参照し直すと、エラー検出結果内のデータ記録の各々に対して１つの潜在的マッチしか見つからなかった場合には、エラー訂正処理は段階１８１８に続き、各データ記録に対して対応する最も高い信頼性指標が十分に高いか否かを一般的にこの指標を所定の閾値と比較することによって判断する。エラー検出結果内のデータ記録のいずれかにおいて、最も高い信頼性指標が依然として十分に高く（すなわち、所定の閾値よりも大きく）なかった場合には、エラー訂正処理は段階１８２０に移り、例外フラグを潜在的マッチが、十分に高い信頼性指標を提図示しないことを示す値に設定する。次に、エラー訂正処理は段階１８２４に進み、エラーデータ記録を例外フラグで更新し、エラー訂正ログを更新する。代替的に、エラー訂正処理は、訂正例外処理に向けて段階１８２０に直接移る代わりに、段階１８０６に戻ることができ、検索基準を拡張して段階１８０６から段階１８１８の反復を始める。エラー訂正処理は、（ａ）最も高い信頼性指標が十分に高いか又は（ｂ）所定の条件が満たされる（例えば、検索範囲に対する閾値に達する）までこの反復を繰り返すことができる。（ａ）の場合には、エラー訂正処理は段階１８２２に続き、（ｂ）の場合には、エラー訂正処理は段階１８２０に続き、上述の訂正例外処理を実行する。
【００９８】
エラー検出結果内のデータ記録の全てに対して最も高い信頼性指標が十分に高い場合には、データ記録の各々に対する潜在的マッチは、現在検出されているエラーを訂正するための対応するデータ記録のマッチと見なされる。次に、エラー訂正処理は段階１８２２に続き、現在検出されているエラーのデータ記録の各々をその対応するマッチのデータ記録と融合することによって実際の訂正を実施する。上述の実施形態では、エラーを有するデータ記録（すなわち、「不可視」コンテナ又は「虚影」コンテナを含むデータ記録）のみをエラー候補とすることができ、従って、各対（データ記録とそのマッチとの）は、１つの「不可視」コンテナと１つの「虚影」コンテナとを含み、訂正は、「不可視」コンテナを「虚影」コンテナと融合する段階を含む。エラー訂正処理は、「不可視」コンテナをコピーすることによって複製データ記録を作成し、次に、この複製データ記録内のコンテナ情報及びコンテナセルロケーションを「虚影」コンテナのものに変更する。更に、エラー訂正処理は、複製データ記録が「虚影」コンテナではなく「正常」コンテナであることを示すために、複製データ記録のコンテナの「コンテナタイプ」属性を修正し、信頼性レベルを段階１８１４で識別した最も高い信頼性指標として更新する。次に、修正済み複製データ記録は訂正済みデータ記録になり、エラー訂正処理は、「不可視」コンテナ及び「虚影」コンテナに対応する２つのデータ記録を無効又は失効済みとしてマーク付けする。
【００９９】
段階１８２４では、エラー訂正処理は、在庫追跡データベース１１４を訂正済みデータ記録で更新し、検出エラーが訂正されたことを反映するために、成功した訂正をエラー検出ログとエラー訂正ログの両方の内部に記録する。
【０１００】
図１９Ａ〜図１９Ｄは、図１８のエラー訂正処理の一実施形態が如何に機能するかを示す例を提供している。図１９Ａは、時刻ｔ１におけるコンテナ降荷作業を示している。時刻ｔ１の前には、在庫追跡データベースは、コンテナＡ１、Ａ２、及びＡ３が、列１１１、間口２４、枠Ａの段１から段３をそれぞれ占有し、コンテナＢ１、Ｂ２、及びＢ３が、列１１１、間口２４、枠Ｂの段１から段３をそれぞれ占有することを示す記録を有する。説明目的で、コンテナＡ１におけるようにコンテナと、ロケーションＡ１におけるようにコンテナセルロケーションの両方を説明するのにＡ１のようなラベル付けを使用する。時刻ｔ１において、在庫追跡システムは、コンテナＡ４がコンテナＡ３のすぐ上のロケーションＡ４（列１１１、間口２４、枠Ａ、段４）に降荷されたことを検出する。この例でＨＥ（取り扱い機器）が接近可能なロケーションで作業中である場合には、エラー検出処理は、図６、図７、及び図１２に示している対応する段階を提供し、降荷ロケーション（ロケーションＡ４）が空中ではなく、降荷作業の前に占有されていなかったので、いかなるエラーも発生しなかったと判断する。それに応じて、エラー訂正処理は、段階１８０２においていかなるエラーも報告されなかったと判断し、直ちに抜けて次の処理サイクルに向けて待機する。
【０１０１】
その後に、時刻ｔ２において、在庫追跡システムは、図１９Ｂに示しているように、ＨＥがロケーションＢ４（列１１１、間口２４、枠Ｂ、段４）からコンテナを集荷したことを検出する。しかし、エラー検出処理は、図９の段階９０２でロケーションＢ４において集荷することができた、在庫追跡データベース１１４内に列記されたいかなるコンテナも存在しないことを識別する。集荷ロケーションの下の全てのコンテナセルロケーションを占有するコンテナ（Ｂ１、Ｂ２、及びＢ３）が存在するので、エラー検出処理は、段階９０４において集荷ロケーションが空であることを識別する。それに応じて、エラー検出処理は、段階９０６において、ロケーションＢ４にコンテナＩｎｖ＿Ｂ４を作成し、このコンテナが以前に在庫追跡データベース１１４に対して不可視であったことを示すために、このコンテナに属性（例えば、「不可視」コンテナ）を割り当て（例えば、「コンテナタイプ」フィールドを「不可視コンテナ」に設定することにより）、コンテナを集荷作業に関連付ける。
【０１０２】
同じく段階９０６において、エラー検出処理は、コンテナＩｎｖ＿Ｂ４を「不可視」コンテナと分類するのに十分に高い信頼性レベルが存在し、すなわち、在庫追跡データベース１１４は、対応するデータ記録を持たないにも関わらず、コンテナＩｎｖ＿Ｂ４がロケーションＢ４に存在することの信頼性レベルが存在すると判断する。〔００４３〕で上述したように、この信頼性レベルＣｏｎｆ（Ｉｎｖ＿Ｂ４）は、通常は新規在庫データ内のポジションデータの信頼性の関数として計算される。最も単純な実施形態では、信頼性レベルは、ポジションデータの信頼性として設定されるか、又は計算は、コンテナＩｎｖ＿Ｂ４の集荷イベントの信頼性レベルを更に組み込むことができる。この例では、「不可視」コンテナとすべきコンテナＢ４に関する信頼性レベルであるＣｏｎｆ（Ｉｎｖ＿Ｂ４）が８０％である（最低信頼性レベルが０であり、最高信頼性レベルが１である場合）と仮定する。次に、エラー検出処理は、段階９０８においてエラーをエラー訂正モジュール３０２に報告する。
【０１０３】
エラーが報告されたので、エラー訂正処理は、段階１８０２から段階１８０４に続き、この場合、コンテナＩｎｖ＿Ｂ４が「不可視」コンテナであることを示す新規作成データ記録と、集荷作業（コンテナＩｎｖ＿Ｂ４の作成をもたらす）の新規データとを含むエラー検出結果を受け取る。段階１８０６では、エラー検出結果に関連するコンテナセルロケーションであるロケーションＢ４を取り囲むコンテナセルロケーションを含めるように検索基準を判断することができる。一実施形態では、段階１８０８における検索の目的は、検索基準内で指定されたコンテナセルロケーション内に以前に識別されたエラーデータ記録（例えば、「不可視」コンテナ及び「虚影」コンテナを有する記録）を見つけることである。この例を単純にするために、近い枠及び間口内にいかなるコンテナも存在しなく、すなわち、列１１１内では間口２４の枠Ａ及び枠Ｂしか占有されていないと仮定する。周囲のコンテナセルロケーションにはいかなるエラーデータ記録も検出されていないので、いかなるエラー候補も見つからないことになり、エラー訂正処理は、例外処理に向けて段階１８１０から段階１８２０に続く。段階１８２０において、例外処理は、いかなるエラー候補も見つからなかったことを示す例外フラグをマーク付けし、段階１８２４において、エラー検出処理は、「不可視」コンテナＢ４に対応するデータ記録にこの例外フラグを追加し、及び／又は検出エラー及び例外フラグをエラー訂正ログファイル内に記録し、その後に、在庫追跡データベース１１４を適宜更新する。
【０１０４】
その後に、時刻ｔ３において、在庫追跡システムは、ロケーションＡ３にあるコンテナＡ３が集荷されたばかりであることを検出する。ここでもまた、エラー検出処理は、図６、図７、及び図９の段階を通じてこの集荷作業を在庫追跡データベース１１４内に既存のデータ記録と比較する。在庫追跡データベース１１４は、コンテナＡ４が集荷ロケーション（ロケーションＡ３）の上のロケーションＡ４を占有することを示すので、段階９１０において、エラー検出処理は、集荷ロケーション（ロケーションＡ３）が、最初にコンテナＡ４を移動しないと接近不能なロケーションであったはずであると判断し、エラーが発生したことを示している。相応に段階９１２において、エラー検出処理は、集荷ロケーション（ロケーションＡ３）の上には１つの占有済みコンテナセルロケーション（すなわち、ロケーションＡ４）しか存在しないことを識別し、段階９１４において、コンテナＡ４に対応するデータ記録を修正し（例えば、「コンテナタイプ」フィールドの値を「虚影コンテナ」に変更することにより）、コンテナＡ４が、在庫追跡データベース１１４内にしか存在しない（すなわち、在庫追跡データベース内の虚影である）ことを示す。
【０１０５】
同じく段階９１４において、エラー検出処理は、コンテナＡ４が「虚影」コンテナであることの信頼性レベルを計算する。一実施形態では、Ｃｏｎｆ（Ａ４）が、コンテナＡ４がロケーションＡ４に位置することの信頼性レベルである時に、信頼性レベルＣｏｎｆ（Ｇｈｏｓｔ＿Ａ４）は、（１−Ｃｏｎｆ（Ａ４））に等しい。Ｃｏｎｆ（Ａ４）は、時刻ｔ１に測位システムからのポジションデータの信頼性レベル、並びに図１９Ａに示しているコンテナＡ４の降荷作業の信頼性レベルに基づいて識別されたものである。別の実施形態では、Ｃｏｎｆ（Ｇｈｏｓｔ＿Ａ４）の特定は、Ｃｏｎｆ（Ｇｈｏｓｔ＿Ａ４）＝ｆ（Ｃｏｎｆ（Ａ４），Ｃｏｎｆpickup（Ａ３））のようにコンテナＡ３の集荷作業の信頼性を更に組み込んでいる。例えば、コンテナＡ４が「虚影」ではないということは、（１）ロケーションＡ４におけるコンテナＡ４の降荷作業が真でなければならず、かつ（２）ロケーションＡ３におけるコンテナＡ３の集荷作業が偽でなければならないことを必要とするので、信頼性レベルＣｏｎｆ（Ａ４は虚影ではない）は、次式のように計算される。
Ｃｏｎｆ（Ａ４は虚影ではない）＝（Ｃｏｎｆ（Ａ４）×（１−Ｃｏｎｆpickup（Ａ３））
従って、次式が成り立つ。
Ｃｏｎｆ（Ｇｈｏｓｔ＿Ａ４）＝１−Ｃｏｎｆ（Ａ４は虚影ではない）＝１−Ｃｏｎｆ（Ａ４）×（１−Ｃｏｎｆpickup（Ａ３））
この例では、Ｃｏｎｆ（Ｇｈｏｓｔ＿Ａ４）が７０％であると仮定する。次に、エラー検出処理は、段階９１５においてエラーをエラー訂正モジュールに更に報告する。
【０１０６】
エラーが報告されたので、エラー訂正処理は、段階１８０２から段階１８０４に続き、この場合、コンテナＡ４がロケーションＡ４における「虚影」コンテナであることを示す新規作成データ記録を含むエラー検出結果を受け取る。段階１８０６では、ロケーションＡ４を取り囲むコンテナセルロケーションを含めるように検索基準を判断することができる。一実施形態では、段階１８０８における検索の目的は、検索基準内に指定されたコンテナセルロケーションで以前に識別されたエラーデータ記録（例えば、「不可視」コンテナ及び「虚影」コンテナを有する記録）を見つけることである。時刻ｔ２（時刻ｔ３よりも早い）においてコンテナＩｎｖ＿Ｂ４が「不可視」コンテナとして検出されたので、検索は、ロケーションＢ４に「不可視」コンテナＩｎｖ＿Ｂ４を示す１つのエラー候補をもたらすことになる。
【０１０７】
段階１８１２では、エラー候補（コンテナＩｎｖ＿Ｂ４）に関する信頼性指標をｋ×Ｃｏｎｆ（Ｉｎｖ＿Ｂ４）×Ｃｏｎｆ（Ｇｈｏｓｔ＿Ａ４）として計算することができ、ここで、ｋは、図１８を用いて上述した重み付け関数である。この例は、ｋが１．５であるように計算されることを仮定し、従って、信頼性指標は１．５×８０％×７０％＝８４％である。
【０１０８】
１つのエラー候補だけが見つかったので、段階１８１２で計算されたそれに対応する信頼性指標は、段階１８１４において最も高い信頼性指標として取り扱われる。それに応じて、エラー訂正処理は、段階１８１６に進み、次に、１８１８に進む。この例では、最も高い信頼性指標が所定の閾値（例えば、０．６）よりも高いと仮定し、従って、エラー訂正処理は段階１８２２に続き、訂正を実施する。段階１８２２において、エラー訂正処理は、複製データ記録内のコンテナ情報及びコンテナセルロケーションをコンテナＧｈｏｓｔ＿Ａ４のもの及びロケーションＡ４にそれぞれ変更することにより、時刻ｔ２におけるコンテナＩｎｖ＿Ｂ４の集荷作業に関する新しい修正済み複製データ記録を作成する。これを時刻ｔ２においてロケーションＢ４におけるコンテナＩｎｖ＿Ｂ４ではなく実際にはロケーションＡ４におけるコンテナＡ４に発生した集荷作業を示す図１９Ｄに例示している。従って、修正済み複製データ記録は、時刻ｔ２における集荷作業が実際にはロケーションＡ４にあるコンテナＡ４に発生したことを示す正しいデータ記録になる。次に、エラー訂正処理は、コンテナＩｎｖ＿Ｂ４の集荷とコンテナＧｈｏｓｔ＿Ａ４の両方に対応するエラーデータ記録を無効とマーク付けする。段階１８２４では、正しいデータ記録及び修正済みデータ記録が在庫追跡データベース１１４に更新される。正しいデータ記録は、時刻ｔ２においてコンテナＡ４が集荷されたことを示す新しい修正済み複製データ記録であり、修正済みデータ記録は、コンテナＧｈｏｓｔ＿Ａ４とコンテナＩｎｖ＿Ｂ４の両方が無効であることを示す無効なエラーデータ記録である。従って、ｔ１におけるコンテナＡ４の降荷に対応するデータ記録及びｔ３におけるコンテナＡ３の集荷に対応するデータ記録は変更されないままに留まる、すなわち、在庫追跡データベース１１４内でエラーを伴わずに妥当のままに留まる。
【０１０９】
図２０は、エラー訂正モジュール１７０２によって実行されるエラー訂正処理の別の実施形態を示す流れ図である。図２０の実施形態は、エラー候補が、以前に検出されたエラー又はエラーデータ記録のみを含む図１８に関連して説明した実施形態に基づいている。図２０の実施形態は、エラー候補を新規収集の通常データ記録（すなわち、「不可視」コンテナ又は「虚影」コンテナというエラーデータ記録とは反対に、以前に検出されたエラーを含まないデータ記録）も含むように拡張する。更に、この実施形態は、より全体的な例外処理も含む。
【０１１０】
図２０では、最初に段階２００２において、エラー訂正処理は、エラー検出モジュールから新規エラーが報告されたか否かを検査する。いかなる新規エラーも存在しない場合には、エラー訂正処理は終了し、段階２００２で次の処理サイクルが再度始まるのを待つ。エラー検出モジュール３０２によって新規エラーが報告された場合には、エラー訂正処理は、エラー検出モジュール３０２からエラー検出結果を読み取る。段階６１０で上述したように、エラー検出結果は、「不可視」コンテナに関する新規作成データ記録、虚影コンテナに関する修正済みデータ記録、並びに段階６０２で受け取られた新規データ（エラーの検出をもたらす）を含む。説明の目的で、新規データを第１のデータ記録とも呼び、エラー検出モジュールによって以前に作成又は修正された他のデータ記録を第２のデータ記録と呼ぶ。従って、エラー訂正処理は、段階２００４において第１のデータ記録と第２のデータ記録の組とを取得する。
【０１１１】
例えば、第１のデータ記録及び第２のデータ記録を説明するために、図１９Ｂに示している場合を考えると、第１のデータ記録はロケーションＢ４からのコンテナの集荷であり、第２のデータ記録は、不可視コンテナであるコンテナＩｎｖ＿Ｂ４が、集荷の前にロケーションＢ４に存在したことを示すようにエラー検出モジュールによって作成されたものである。図１９Ｃに示している場合を考えると、第１のデータ記録は、ロケーションＡ３からのコンテナＡ３の集荷であり、第２のデータ記録は、コンテナＡ４が「虚影」コンテナであることを示す修正済みデータ記録（すなわち、エラー検出モジュールによって修正された）である。図１９Ｃの時刻ｔ３においてコンテナＡ３ではなくコンテナＡ２が集荷された場合には、１つがコンテナＡ３を「虚影」コンテナとして示し、もう１つがコンテナＡ４を「虚影」コンテナとして示す２つの第２のデータ記録が存在することになる。
【０１１２】
図２０に関連して説明する実施形態では、第１のデータ記録（すなわち、段階６０２で受け取られる新規データ）は、それ自体が間違いである可能性があることを仮定する。従って、エラー検出モジュールによって検出されるエラーは、第１のデータ記録と第２のデータ記録の間に矛盾（すなわち、不整合）が存在することを示している。エラーを訂正するためには、エラー訂正処理は、最初に２つ（第１のデータ記録と第２のデータ記録の組）のうちのいずれがエラーによって損なわれており、訂正する必要があるかを識別する必要がある。
【０１１３】
ここで段階２００６を参照すると、次に、エラー訂正処理は、段階２００８においてエラー候補の検索に使用されることになる第１のデータ記録に対応する第１の検索基準と、１つの第２の検索基準が第２のデータ記録の各々に対応する第２の検索基準の組とを含む検索基準を設定する。各検索基準は、コンテナセルロケーション、継続時間、作業回数などうちの少なくとも１つを指定する。例えば、検索基準は、ある一定の範囲の隣接のコンテナセルロケーション、エラーが検出された時刻又はその付近の期間内に発生した作業、エラーに関連するコンテナＩＤに近いコンテナＩＤ、エラーに関連するコンテナ属性と類似のコンテナ属性などを含むことができる。隣接のコンテナセルロケーションは、範囲がコンテナ１つ分のサイズに設定された場合は直近のコンテナセルロケーションのみを含むことができ、又は範囲がコンテナ２つ分のサイズに設定された場合はいずれかの方向にセルロケーション２つ分の範囲にある全てのコンテナセルロケーションを含むことができる。一実施形態では、隣接のコンテナセルロケーションの範囲は、エラーに関連するポジションデータの信頼性レベルに基づいて判断され、一般的に信頼性レベルが高い程、範囲は短い。別の例として、検出されたエラーが時刻ｔｎにおいて発生した場合には、検索基準は、エラー訂正処理が、時刻（ｔｎ−Ｔ）から時刻ｔｎまでの期間の間に発生した作業、又は隣接のコンテナセルロケーションに発生した直近のＮ回の作業を検索することを必要とする場合がある。
【０１１４】
その後に、段階２００８において、エラー訂正処理は、段階２００６で判断された検索基準を用いて在庫追跡データベース１１４に照会し、在庫追跡データベース１１４からの照会結果内の全てのデータ記録を読み取る。第１の検索基準に対応する照会結果を第１の照会結果と呼び、第２の検索基準の各々に対応する照会結果を第２の照会結果と呼ぶ。次に、エラー訂正処理は段階２０１０に続き、いずれかの所定の例外規則が満たされるか否かを調べる。例外規則の例は、「不十分なデータ」例外、「適正結果の不在」例外、「制限区域」例外、及び類似の例外を含むことができる。「不十分なデータ」例外は、訂正に対して十分なデータを含まない照会結果を示し、（ａ）第１のデータ記録が集荷作業に関連するが、照会結果が、集荷ロケーションを取り囲む全てのセルロケーションが非占有であることを示す、（ｂ）第１のデータ記録が降荷作業（又は移動違反）に関連するが、照会結果が、降荷ロケーション（又は移動ロケーション）を取り囲む全てのセルロケーションが占有されていることを示す、（ｃ）第２のデータ記録が「不可視」コンテナを含むが、それに対応する照会結果が、この「不可視」コンテナを取り囲む全てのセルロケーションが非占有であることを示す、（ｄ）第２のデータ記録が「虚影」コンテナを含むが、それに対応する照会結果が、この「虚影」コンテナを取り囲む全てのセルロケーションが占有されていることを示すという条件のうちのいずれかが満たされる場合に満たされる。「適正結果の不在」例外は、「虚影」コンテナ又は「不可視」コンテナのいずれもエラー候補の中に存在せず、全てのエラー候補が十分に高い信頼性レベルを有する場合に満たされる。「制限区域」例外は、所定の制限区域（一部の区域は、手動の検査又は訂正だけに制限される可能性がある）にあるコンテナセルロケーションをあらゆるエラー候補が占有する場合に満たされる。付加的な例外規則を段階２０１８、２０２０、及び２０２２を参照して後で説明する。
【０１１５】
訂正例外処理は、段階２０２４においてエラー検出結果内のデータ記録を訂正の例外が発生したことと共にその例外理由（すなわち、どの例外規則が満たされるか）を示すように修正する。訂正例外処理は、対応する情報をエラー訂正ログ及び／又はエラー検出ログに追加することができる。更に、訂正例外処理は、手動サポート機能が作動された場合に、オペレータからの手動サポートを組み込むことができる。そのような訂正例外処理に対しては、図２４を参照して後で説明する。
【０１１６】
いかなる例外規則も満たされない場合には、エラー訂正処理は段階２０１２に続き、照会結果に基づいてエラー候補を判断する。一実施形態では、エラー候補は、エラー検出結果内の各データ記録に対して識別される。最初に、第１のエラー候補、すなわち、第１のデータ記録に対するエラー候補が、第１の照会結果に基づいて識別される。第１のデータ記録が、降荷作業又は移動イベントを示す場合には、第１のエラー候補は、周囲にある全ての非占有コンテナセルロケーション（第１のデータ記録と同じ段にある）を含み、第１のデータ記録が集荷作業を示す場合には、第１のエラー候補は、周囲にある全ての占有コンテナセルロケーション（第１のデータ記録と同じ段にある）を含む。次に、第２のデータ記録の各々に対する第２のエラー候補が識別される。第２のデータ記録が「不可視」コンテナに関連付けられた（すなわち、在庫追跡データベース１１４はあるロケーションにいかなるコンテナも示さないが、第１のデータ記録は、そのロケーションにコンテナがあるはずであることを示す）場合には、それに対応する第２のエラー候補は、周囲にある占有コンテナセルロケーション（「不可視」コンテナと同じ段にある）を含む。言い換えれば、この「不可視」コンテナは、実際にはその現在のロケーションを占有する可能性があるが、在庫追跡データベースは、ポジションデータのエラーに起因してそれを隣接のコンテナセルロケーションに間違って「配置」したものである。第２のデータ記録が「虚影」コンテナに関連付けられた（すなわち、第２のデータ記録が、あるロケーションにコンテナを示すが、第１のデータ記録が、そのロケーションにはコンテナがあるはずがないことを示す）場合には、それに対応するエラー候補は、周囲にある非占有コンテナセルロケーション（「虚影」コンテナと同じ段にある）を含む。言い換えれば、恐らくこの「虚影」コンテナは、そのデータ記録内で指定されたその現在のロケーションではなく隣接のコンテナセルロケーションを占有するはずである。また、第２のデータ記録が、第１のデータ記録と同じコンテナセルロケーションを共有するが、第２のデータ記録がこのセルロケーションにあるコンテナを示し、それに対して第１のデータ記録が、このセルロケーションに異なるコンテナを示す場合もある。これらのデータ記録の相違点は、これらのデータ記録のコンテナＩＤ、並びに長さ、タイプ、形状などのようなコンテナ特性におけるとすることができる。例えば、第２のデータ記録は、ロケーションＡにおいて短いコンテナを示すが、第１のデータ記録は、ロケーションＡにおいて長いコンテナを示している。そのような場合には、第２のデータ記録に対するエラー候補は、第１のデータ記録内で指定されたものと同じコンテナＩＤ又はコンテナ特性を共有する占有コンテナを有する周囲の占有コンテナセルロケーションを含む。別の単純な実施形態では、エラー候補は、図１８を用いて上述のように、「不可視」コンテナ又は「虚影」コンテナのいずれかを含むエラーデータ記録のみを含むことができる。
【０１１７】
段階２０１４において、エラー訂正処理は、各エラー候補に対して、その候補をエラー検出モジュール３０２から報告されたエラーの発生源とすることができる可能性がどの程度であるかを評価する所定の計算式に基づいて信頼性指標（又は矛盾指標）を計算する。段階２０１２で上述したように、一実施形態では、エラー候補は、エラー検出結果内の各データ記録に対して識別され、相応に第１のデータ記録に対するエラー候補に対してかつ第２のデータ記録に対するエラー候補に対しては、信頼性レベルは異なって計算される。この実施形態では、Ｃｏｎｆfirst dataが、第１のデータ記録の信頼性レベルであり、ｋが、第１のデータ記録内に記録されたポジションデータ（すなわち、ｐｏｓｉｔｉｏｎfirst data）と、一般的にセルの中心のポジションによって表されるエラー候補のコンテナセルロケーション（ｌｏｃａｔｉｏｎcandidate）とに基づく重み係数である時に、第１のデータ記録に対するエラー候補の信頼性指標は、ｋ×（１−Ｃｏｎｆfirst data）と設定される。従って、重み係数は、次式のようにｐｏｓｉｔｉｏｎfirst dataとｌｏｃａｔｉｏｎcandidateとの関数である。
ｋ＝ｆ（ｐｏｓｉｔｉｏｎfirst data，ｌｏｃａｔｉｏｎcandidate）
例えば、重み係数ｋは、ｄ１が、第１のデータ記録のセル中心（ｌｏｃａｔｉｏｎfirst data）とエラー候補のセル中心（ｌｏｃａｔｉｏｎcandidate）との間の距離であり、ｄ２が、第１のデータ記録のロケーション（ｐｏｓｉｔｉｏｎfirst data）とエラー候補のセル中心（ｌｏｃａｔｉｏｎcandidate）との間の距離である時に、（ｄ１／２）／ｄ２として定めることができる。
【０１１８】
図２１は、重み係数を計算することができる方法を示す例を示している。この図は、同じ段にある３つのコンテナセルロケーションであるロケーションＡ、ロケーションＢ、及びロケーションＣ、並びに測位システムによって提供されたコンテナＢの報告ロケーション（図にＰＢと印している）の上面図を示している。第１のデータ記録が、測位システムからのポジションＰＢに基づくロケーションＢにおける作業を示し、エラー訂正処理が、ロケーションＡ及びロケーションＣをそのエラー候補として識別すると仮定する。従って、ロケーションＡというエラー候補に対する重み係数は（ａ１／２）／ａ２であり、ロケーションＣというエラー候補に対する重み係数は（ａ３／２）／ａ４である。この特定の例では、ポジションＰＢはＣのセル中心よりもＡのセル中心の近くに、セル中心ａ１とａ３の間の距離が同じであるとすると、エラー候補Ａに対する重み係数は、エラー候補Ｃに対する重み係数よりも大きい。言い換えれば、重み係数は、エラー候補のセル中心へのポジションデータの近接性を示す尺度である。その結果、エラー候補Ａに関する信頼性レベル（ａ１／２／ａ２）×（１−Ｃｏｎｆ（Ｂ））は、エラー候補Ｃに関する信頼性レベル（ａ３／２／ａ４）×（１−Ｃｏｎｆ（Ｂ））よりも大きい（この場合、Ｃｏｎｆ（Ｂ）は、この例におけるＣｏｎｆfirst dataである）。
【０１１９】
同様に、Ｃｏｎｆerror candidateが、エラー候補の信頼性レベルであり、ｋが、第１のデータ記録に対するエラー候補の信頼性レベルを計算するのに使用されるものと類似の重み係数である時に、第２のデータ記録に対するエラー候補の信頼性指標は、ｋ×（１−Ｃｏｎｆerror candidate）である。例えば、ｄ１が、エラー候補のセル中心から「不可視」（又は「虚影」）コンテナのセル中心までの距離であり、ｄ２が、エラー候補のロケーションから「不可視」（又は「虚影」）コンテナのセル中心までの距離である時に、ｋ＝（ｄ１／２）／ｄ２である。従って、エラー候補の信頼性が低い程、かつエラー候補のロケーションが、対応する第２のデータ記録（例えば、「不可視」コンテナ又は「虚影」コンテナのいずれかを含むデータ記録）のセルロケーションに近い程、このエラー候補が「不可視」コンテナのセルロケーションにあり、又は「虚影」コンテナがエラー候補によって指定されたロケーションにあるという可能性が高い。
【０１２０】
図２０に戻ると、段階２０１６において、エラー訂正処理は、第１のデータ記録及び第２のデータ記録に対する潜在的マッチを識別し、第１のデータ記録又は第２のデータ記録のいずれを訂正する必要があるかに関して判断を行う。エラー訂正処理は、この判断を以下の部分段階によって達成する。（１）第１のデータ記録の第１のエラー候補に対して、エラー訂正処理は、これらのエラー候補の信頼性指標を選別し、最も高い信頼性指標を第１の信頼性指標として選択し、それに対応する第１のエラー候補を第１のデータ記録に対する潜在的な（第１の）マッチとして識別する。（２）第２のエラー候補の各々に対して、エラー訂正処理は、その第２のエラー候補の信頼性指標を選別し、最も高い信頼性指標を有するエラー候補をその潜在的な（第２の）マッチとして選択する。エラー検出結果内に１つの第２のエラー候補しか存在しない場合には、その潜在的な（第２の）マッチの信頼性指標が、第２の信頼性指標と見なされる。エラー検出結果が複数の第２のエラー候補を含む場合には、所定の規則に基づいて潜在的な（第２の）マッチの信頼性指標を組み合わせることによって全体的な信頼性指標が識別され、次に、この全体的な信頼性指標は、第２の信頼性指標として機能する。所定の規則は、潜在的な（第２の）マッチの最も小さい信頼性指標、信頼性指標の平均値、又はその中間値を全体的な信頼性指標として選択することができる。全体的な信頼性指標は、潜在的な（第２の）マッチの信頼性指標の関数とすることができる。（３）次に、エラー訂正処理は、第１の信頼性指標と第２の信頼性指標とを比較して、第１のデータ記録又は第２のデータ記録の組のいずれを訂正する必要があるかを判断する。例えば、第１の信頼性指標が高い場合には、エラー訂正処理は、第１のデータ記録が間違っており、その対応する潜在的な（第１の）マッチを用いて訂正すべきであると結論付ける。他の場合には、エラー訂正処理は、第２のデータ記録を訂正する必要があると結論付ける。（４）次に、エラー訂正のためのマッチが、この判断に基づいて識別され、判断が第１のデータ記録を訂正するものであった場合には、潜在的な第１のマッチが識別された第１のマッチになり、他の場合には、潜在的な第２のマッチが第２のマッチとして識別される。
【０１２１】
段階２０１８において、エラー訂正処理は、識別されたマッチによって得られる高い方の信頼性レベルが十分に高いか、例えば、事前設定閾値よりも高いか否かを調べる。この信頼性レベルが十分に高くない場合には、エラー訂正処理は、検索が、エラー候補のより大きい組をもたらすことになるように、検索基準を拡張することができ、従って、エラー訂正処理は段階２０２０に続き、検索基準を拡張することができるか否か（例えば、検索基準が、事前設定された最大ロケーション範囲、最大継続時間、又はＩＤ範囲を既に満たしているか否か、又は超過しているか否か）を調べる。検索基準を拡張することができる場合には、エラー訂正処理は、段階２００６に続き、検索基準を更新又は拡張して、段階２００８から段階２０１８までの次の反復を続ける。検索基準を拡張することができない場合には、エラー訂正処理は、段階２０２４に続き、信頼性レベルが十分に高くないという例外理由によって訂正例外処理を実行する。
【０１２２】
段階２０１８において、最も高い信頼性レベル（段階２０１６で識別されたもの）が所定の閾値よりも高い場合には、エラー訂正処理は段階２０２２に続き、１つのデータ記録に対して識別された複数のマッチが存在するか否かを調べる。（すなわち、段階２０２２は、第１のデータ記録を訂正する必要がある場合に複数の第１のマッチが存在するか否か、又は第２のデータ記録を訂正する必要がある場合に第２のデータ記録のうちのいずれかに対して複数の第２のマッチが存在するか否かを調べる。）複数のマッチが存在する場合には、マッチに基づくエラー訂正は未確立であり、エラー訂正処理は段階２０２４に続き、未確立のエラー訂正という例外理由によって訂正例外処理を実行する。一部の実施形態では、エラー訂正に向けて複数のマッチから１つのマッチを選択するのにアービトレーションを使用することができると考えられ、この場合、エラー訂正処理は段階２０２４を省略し、段階２０２６に続く。
【０１２３】
段階２０２６において、エラー訂正処理は、エラー訂正に向けてデータ記録を準備し、この目的は、識別されたマッチに基づいて正しいデータ記録を生成し、間違ったデータ記録を失効させるか、又は削除することである。詳細な処理は、判断が、第１のデータ記録を訂正することであるか又は第２のデータ記録を訂正することであるかに依存する。
【０１２４】
段階２０１６で行われた判断が、第１のデータ記録を訂正することであった場合には、段階２０２６におけるエラー訂正処理は、第１のマッチに基づいて第１のデータを訂正し、エラー検出結果内に関わる「不可視」コンテナをこれらを失効済みとするか又は削除することによって無効にし、「虚影」コンテナの「コンテナタイプ」属性を「正常」コンテナに戻す。例えば、第１のデータ記録が、ロケーションＢにおけるコンテナＢの集荷作業を示し、ロケーションＡにおけるコンテナＡのエラー候補がマッチとして識別された場合には、エラー訂正処理は、第１のデータ記録（コンテナＩＤをコンテナＢとして、セルロケーションをロケーションＢとして有する）を複製データ記録にコピーし、次に、複製データ記録内のコンテナＩＤ及びコンテナセルロケーションをそれぞれコンテナＢ及びロケーションＢからコンテナＡ及びロケーションＡに変更する。複製データ記録内の信頼性レベルも信頼性指標で更新される。これらの変更により、この時点で複製データ記録は、集荷作業の訂正済みデータ記録である。その後に、エラー訂正処理は、元の第１のデータ記録（ロケーションＢにおけるコンテナＢの集荷作業を表す）をエラーを有するとマーク付けし（例えば、「データ特性」フィールドを「エラー」に設定することにより）、それを無効にする（例えば、現時刻をタイムスタンプとして「ステータス」フィールド内の値を「既存」から「失効済み」に変更することにより）。他の実施形態では、エラー訂正処理は、複製データ記録を作成して元の第１のデータ記録を無効にすることなく第１のデータを直接修正することができる。第２のデータ記録内の全ての「不可視」コンテナに関して、エラー訂正処理は、これらのコンテナを失効済みとマーク付けするか又は在庫追跡データベースにこれらのコンテナを削除する指令を提出することにより、これらのコンテナを修正する。第２のデータ記録内の全ての「虚影」コンテナに関して、エラー訂正処理は、現時刻をタイムスタンプとしてこれらのコンテナの「コンテナタイプ」属性を「正常」に変更し戻す、又はエラー訂正処理は、これらのコンテナを最初に複製して変更を行うことができ、次に、元のものを失効済み又は無効とマーク付けする。他の実施形態では、これらの第２のデータ記録がエラー検出モジュールによって修正されなかった場合には、上述の修正を不要とすることができる。
【０１２５】
判断が、第２のデータ記録を訂正するものであった場合には、エラー訂正処理は、段階２０２６において第１のデータ記録に対していかなる変更も行わず、代替的に、第２のデータ記録の各々において、その対応する第２のマッチに基づいて訂正を行う。第２のデータ記録が「不可視」コンテナに関連付けられた場合には、判断は、マッチに関連付けられたコンテナが、この「不可視」コンテナに関連付けられたロケーションに存在するはずであることを意味する。この場合、エラー訂正処理は、最初にマッチのデータ記録をコピーすることによって複製データ記録を作成し、次に、複製データ記録内のロケーションを「不可視」コンテナに関連付けられたロケーションに変更し、信頼性レベルをそれに対応する信頼性指標に更新する。次に、この複製データ記録は、エラー訂正処理によって生成された訂正済みデータ記録になる。その後にエラー訂正処理は、現時刻をタイムスタンプとしてマッチのデータ記録、並びにエラー検出処理によって作成された「不可視」コンテナのデータ記録をエラー及び無効とマーク付けする。
【０１２６】
同様に、第２のデータ記録が「虚影」コンテナに関連付けられた場合には、判断は、「虚影」コンテナが、実際にはマッチに関連付けられたロケーションに配置されることを意味する。従って、エラー訂正処理は、最初に「虚影」コンテナのデータ記録をコピーすることによって複製データ記録を作成し、次に、複製データ記録内のロケーション及び信頼性指標をそれぞれマッチに関連付けられたロケーション及び信頼性指標に変更する。更に、エラー訂正処理は、複製データ記録内のコンテナ特性をその「コンテナタイプ」属性を「虚影」コンテナから「正常」コンテナに変更することによって修正する。これらの修正により、この時点で複製データ記録は訂正済みデータ記録になり、更にエラー訂正処理は、「虚影」コンテナに関連付けられた元のデータ記録をエラー及び無効とマーク付けする。エラー検出結果内に複数の「虚影」コンテナが存在する場合には、エラー訂正処理は、上述の処理を「虚影」コンテナの各々に対して繰り返す。
【０１２７】
段階２０２８において、エラー訂正処理は、マッチ内のコンテナ又はコンテナセルロケーションに発生したその後の作業に関連するデータ記録を含むマッチに関連付けられた記録を検索して更新する。背景にある理由は、マッチ内のエラーが、これらのその後の作業を通じて伝播した可能性があるからである。一部の実施形態では、第１のデータ記録（すなわち、段階６０２で受け取られた新規データ）は、エラー検出モジュール３０２に実時間で入力され、従って、段階２０２８における処理は、判断が第２のデータ記録を訂正するものであった場合にのみ必要になる（第１のデータ記録内のエラーは、その時点では依然として伝播する機会を持たないことになるからである）。ここでの説明は、エラー検出モジュール３０２に第１のデータ記録が実時間で入力されることを仮定している。他の実施形態では、第１のデータ記録は、第１のデータ記録内の作業が発生した時よりもかなり後にエラー検出モジュール３０２に入力された履歴データとすることができ、これらの場合、判断が、第１のデータ記録を訂正するものであった場合であっても上述の処理は必要であり、当業者は、ここでの説明をこれらの場合に適合するように比較的容易に拡張することができる。
【０１２８】
それに応じて、段階２０２８において、エラー訂正処理は、第２のデータ記録の各々に関連するデータ記録を検索して更新する。第２のデータ記録が「不可視」コンテナに関連付けられた場合には、そのマッチは訂正の前に占有されており、従って、エラー訂正処理は、そのマッチ内のセルロケーションにおける直近の降荷作業の時刻と、「不可視」コンテナ（第２のデータ記録内に定められたもの）のセルロケーションにおける直近の集荷作業の時刻とを比較する。降荷作業が集荷作業よりも前に発生していた場合（この降荷ロケーションが実際には「不可視」コンテナのロケーションであることを示す）には、エラー訂正処理は、「不可視」コンテナのセルロケーションおいて降荷作業の時刻の後に発生したあらゆる作業に関して在庫追跡データベース１１４に照会する。照会結果内の各データ記録に対して、エラー訂正処理は、コンテナ情報（例えば、コンテナのＩＤ及び特性）をマッチ内のコンテナのものに修正する。降荷作業が集荷作業よりも後であった場合（集荷作業が実際にはマッチ内のセルロケーションにおいて発生したことを示す）には、エラー訂正処理は、集荷作業の時刻の後の「不可視」コンテナが係わるあらゆる作業に関して在庫追跡データベース１１４に照会する。照会結果内の各データ記録に対して、エラー訂正処理は、コンテナ情報をマッチ内のコンテナのものに修正する。
【０１２９】
第２のデータ記録が「虚影」コンテナに関連付けられた場合には、そのマッチは、訂正の前には非占有であり、従って、エラー訂正処理は、マッチ内に指定されたセルロケーションにおいて、「虚影」コンテナのセルロケーションにおける直近の降荷作業の後に発生したあらゆる作業に関して在庫追跡データベース１１４に照会する。照会結果内の各データ記録に対して、エラー訂正処理は、「コンテナタイプ」属性を「虚影」コンテナのものに修正し、同時にコンテナを「正常」コンテナとして（「虚影」コンテナではなく）維持する。
【０１３０】
段階２０３０において、エラー訂正処理は、エラー訂正処理によって生成された訂正済みデータ記録及びエラー訂正処理によって失効されたデータ記録（例えば、「不可視」コンテナ又は「虚影」コンテナを含むもの）を含む修正済みデータ記録で在庫追跡データベース１１４を更新する。更に、エラー訂正処理は、エラー検出ログ及びエラー訂正ログのような関連履歴ファイル、並びに在庫追跡データベース１１４内の「不可視」コンテナ又は「虚影」コンテナの表を更新することができる。
【０１３１】
図２０において説明したエラー訂正処理が如何に機能するかを示すために、図２２Ａ〜図２２Ｄ及び図２３Ａ〜図２３Ｆに例を提供する。図２２Ａ〜図２２Ｄは、異なる時刻において実施された４つの作業を示している。時刻ｔ１における最初の作業の前には図２２Ａに示しているコンテナセルロケーションを占有する７つのコンテナＡ１、Ａ２、Ｂ１、Ｂ２、Ｂ３、Ｃ１、及びＣ２が既に存在している。時刻ｔ１では、コンテナＣ３が、信頼性レベルＣｏｎｆt1（Ｃ３）でロケーションＣ３（列１１１、間口２４、枠Ｃ、段３）というコンテナセルロケーションに降荷され、この信頼性レベルは、測位システムからのポジションデータの信頼性レベル、又はポジションデータの信頼性レベルと降荷イベントの信頼性レベルの両方に基づく組合せ信頼性レベルとすることができる。それに応じて、在庫追跡システムは、この作業を表す新規データ記録を作成し、この新規データ記録は、少なくともコンテナＣ３のＩＤ及び属性、コンテナセルロケーション（（列１１１、間口２４、枠Ｃ、段３）にあるロケーションＣ３）、作業タイプ（すなわち、降荷作業）、信頼性レベルＣｏｎｆt1（Ｃ３）、及びそれに対応する時刻ｔ１を含むことになる。ＨＥが接近不能なロケーションで作業していないと仮定すると、降荷ロケーションが降荷作業の前には占有されておらず、降荷ロケーションが空中ではない（コンテナＣ１及びその下のＣ２の存在に起因して）ので、エラー検出モジュールは、いかなるエラーも検出しない。従って、新規データ記録は、いかなる修正又は訂正もなしに在庫追跡データベース１１４に追加されており、それに応じて在庫追跡データベース１１４は、ｔ１を失効時刻としてコンテナＣ３に関連する以前のデータ記録を失効済みとマーク付けして、コンテナＣ３に関連する以前のロケーション及び作業がこの時点では無効であることを示している。
【０１３２】
同様に、図２２Ｂに示しているように、時刻ｔ２においてＣｏｎｆt2（Ｂ３）という信頼性レベルでコンテナＢ３が集荷され、対応する新規データ記録が作成されており、いかなるエラーも検出されておらず、それに応じて在庫追跡データベース１１４が更新されている。図２２Ｃに示しているように、時刻ｔ３においてＣｏｎｆt3（Ａ３）という信頼性レベルでコンテナＡ３がロケーションＡ３（列１１１、間口２４、枠Ａ、段３）において降荷されており、ここでもまた、いかなるエラーも検出されておらず、それに対応する新規データ記録が、在庫追跡データベースに追加されている。図２２Ｄに示しているように、時刻ｔ４では、Ｃｏｎｆt4（Ｂ４）という信頼性レベルでコンテナＢ４がロケーションＢ４（列１１１、間口２４、枠Ｂ、段４）に降荷されている。それに応じて、この作業に対して新規データ記録が作成され、その調査に向けてエラー検出モジュールに報告されている。降荷ロケーションの直下のロケーションＢ３（列１１１、間口２４、枠Ｂ、段３）にはいかなるコンテナも存在していなかったので、エラー検出処理は、段階１２０２において降荷ロケーションが空中であると判断し、段階１２０４及び１２０６を通じてロケーションＢ３にコンテナＩｎｖ＿Ｂ３という「不可視」コンテナを作成する。エラー検出処理は、この「不可視」コンテナに関する信頼性レベルも計算する。一実施形態では、この信頼性レベルは、「不可視」コンテナの識別をもたらす作業又はイベントの信頼性レベルとして設定され、従って、図２２Ｄに示している場合には、コンテナＩｎｖ＿Ｂ３の信頼性レベルはＣｏｎｆt4（Ｂ４）に設定される。エラー検出処理は、最初に段階１２１５においてエラーを報告し、次に、段階６１０においてこのエラーをコンテナＩｎｖ＿Ｂ３に関する新規作成データ記録、コンテナＢ４の降荷作業に関するデータ記録（段階６０２において受け取った新規データであり、「不可視」コンテナＩｎｖ＿Ｂ３の検出をもたらすデータでもある）、及び更新済みのエラー検出履歴又はログと共にエラー訂正モジュール１７０２及び在庫追跡データベース１１４に報告する。
【０１３３】
エラー検出モジュール３０２から段階２００２にエラーが報告されると、エラー訂正処理は、段階２００４において、ロケーションＢ３におけるコンテナＩｎｖ＿Ｂ３に関する新規作成データ記録を第１のデータ記録とし、ロケーションＢ４におけるコンテナＢ４の降荷作業に関するデータ記録を第２のデータ記録として含むエラー検出結果を受け取って読み取る。各データ記録は、少なくともコンテナセルロケーション、エラー又は作業の時刻（すなわち、ｔ４）、及び信頼性レベル（すなわち、「不可視」コンテナＩｎｖ＿Ｂ３に関するＣｏｎｆt4（Ｉｎｖ＿Ｂ３）及びコンテナＢ４に関するＣｏｎｆt4（Ｂ４））を含む。段階２００６において、エラー訂正処理は、エラー候補を判断するのに使用されることになる検索基準を判断する。検索基準は、エラー検出結果に関連するコンテナセルロケーション（すなわち、この例ではロケーションＢ３及びロケーションＢ４）までの距離範囲をそれに対応する信頼性レベル又は他の確率尺度、すなわち、この例ではＣｏｎｆt4（Ｉｎｖ＿Ｂ３）及びＣｏｎｆt4（Ｂ４）に基づいて指定することができる。検索基準は、ｔ４がエラーに関連する時刻である時に、検索をコンテナセルロケーションにおいて時刻（ｔ４−Ｔ）から（ｔ４）までの時間窓内に発生した作業又はイベントに限定するために継続時間Ｔを指定することができる。代替的に、検索基準は、指定コンテナセルロケーションに発生した作業又はイベントの回数を指定することができる。この例では、検索基準が、距離範囲を同じ段における（高さ測定値の信頼性レベルが十分に高いと仮定して）コンテナ１つ分のサイズと指定し、作業又はイベントの回数も１回と指定すると仮定し、従って、第１のデータ記録に基づいて、第１の検索基準は、第１のデータ記録内のコンテナセルロケーション（ロケーションＢ４）の直近の段３におけるコンテナセルロケーションを指定し、第２のデータ記録に基づいて、第２の検索基準は、第２のデータ記録内のコンテナセルロケーション（ロケーションＢ３）の直近の段４におけるコンテナセルロケーションを含むと判断される。更に、両方の検索基準は、検索をこれらの近いコンテナセルロケーションの各々で発生した直近の作業又はイベントに限定する。
【０１３４】
段階２００８において、エラー訂正処理は、段階２００６で判断された検索基準を用いて在庫追跡データベース１１４に照会することによってエラー候補を判断する。この例を単純化するために、いかなるコンテナも、近い間口（すなわち、間口２３及び間口２２）内のコンテナセルロケーションを占有しておらず、また、いかなる作業も、これらのコンテナセルロケーションにおいて発生しなかったと仮定する。従って、照会は、ｔ１におけるコンテナＣ３の降荷作業、ｔ２におけるコンテナＢ３の集荷作業、及びｔ３におけるコンテナＡ３の降荷作業に対応する３つのデータ記録を戻す。段階２００８において、エラー訂正処理は、各々が、それに対応するコンテナＩＤ及び属性、作業タイプ、タイムスタンプ、及び信頼性レベルを含む照会結果内の３つのデータ記録を読み取る。
【０１３５】
段階２０１０において、エラー訂正処理は、いずれかの例外規則が満たされているか否かを調べる。照会結果は、第１のデータ記録内の降荷ロケーションを取り囲む非占有のロケーションを示し、「不可視」コンテナＩｎｖ＿Ｂ３を取り囲む占有済みのロケーションを示すので、「不十分なデータの例外」は満たされない。この例では、３つのデータ記録は、十分に高い信頼性を持たず、列１１１間口２４におけるコンテナセルロケーションが制限区域内にないと仮定し、従って、「制限区域」例外も、「適正結果の不在」例外も満たされない。その結果、エラー訂正処理は、段階２０１２に続き、エラー候補を判断する。
【０１３６】
段階２０１２において、エラー訂正処理は、第１のデータ記録及び第２のデータ記録に対するエラー候補を判断する。第１のデータ記録（コンテナＢ４の降荷作業を示す）に対するエラー候補は、測位システム１０４によって報告された降荷ロケーションが間違いである場合のコンテナＢ４の別の降荷ロケーションを表す。従って、第１のデータ記録に対する第１のエラー候補は、同じ段上の非占有コンテナセルロケーションを含むはずである。第１の検索基準に対応する照会結果は、ロケーションＡ４及びロケーションＣ４の両方が非占有であることを示すので、この場合、第１のエラー候補は、図２３Ｂ及び図２３Ｃに示しているロケーションＡ４及びロケーションＣ４を含む。同様に第２のデータ記録（「不可視」コンテナＩｎｖ＿Ｂ３に関連する）に対する第２のエラー候補は、同じ段における占有済みコンテナセルロケーションである、図２３Ｄ及び図２３Ｅに示しているロケーションＡ３及びロケーションＣ３を含む。要約すると、２つの第１のエラー候補と２つの第２のエラー候補とが見つかり、検出エラーは、（１）図２３Ｂに示しているように、コンテナＢ４は、実際にはロケーションＡ４に降荷された、（２）図２３Ｃに示しているように、コンテナＢ４は、実際にはロケーションＣ４に降荷された、（３）図２３Ｄに示しているように、現時点でロケーションＡ３に存在するコンテナは実際にはロケーションＢ３に存在し、すなわち、コンテナＡ３が「不可視」コンテナＩｎｖ＿Ｂ３である、（４）現時点でロケーションＣ３に存在するコンテナは実際にはロケーションＢ３に存在し、すなわち、コンテナＣ３が「不可視」コンテナＩｎｖ＿Ｂ３であるということのうちのいずれか１つによって解決することができる。
【０１３７】
その後に、段階２０１４では、４つのエラー候補の各々に対して信頼性指標が計算される。図１８を用いた説明により、一実施形態では、Ｃｏｎｆfirst dataが第１のデータ記録の信頼性レベル（この例ではＣｏｎｆt4（Ｂ４））であり、ｋ＝ｆ（ｐｏｓｉｔｉｏｎfirst data，ｌｏｃａｔｉｏｎcandidate）が重み係数である時に、第１のデータ記録（この例ではコンテナＢ４の降荷作業）に対する候補の信頼性指標は、ｋ×（１−Ｃｏｎｆfirst data）と設定される。図２２Ｆは、測位システムによって提供されたコンテナセルロケーションＡ４、Ｂ４、及びＢ３、並びにコンテナＢ４のロケーション（この図ではＰＢ４と印している）の上面図を示している。計算式ｋ＝（ｄ１／２）／ｄ２を使用すると、エラー候補Ａ４に対する重み係数は（ａ１／２）／ａ２であり、エラー候補Ｃ４に対する重み係数は（ａ３／２）／ａ４である。この特定の例では、ポジションＰＢ４はＣ４のセル中心よりもＡ４のセル中心の近くに、セル中心の間の距離ａ１とａ３とが同じであることすると、エラー候補Ａ４に対する重み係数は、エラー候補Ｃ４に対する重み係数よりも大きい。その結果、エラー候補Ａ４に対する信頼性レベル（ａ１／２／ａ２）×（１−Ｃｏｎｆt4（Ｂ４））は、エラー候補Ｃ４に対する信頼性レベル（ａ３／２／ａ４）×（１−Ｃｏｎｆt4（Ｂ４））よりも高い。
【０１３８】
同様に、Ｃｏｎｆerror candidateがエラー候補の信頼性レベルであり、ｋが重み係数である時に、「不可視」コンテナに対するエラー候補の信頼性指標は、ｋ×（１−Ｃｏｎｆerror candidate）である。Ｃｏｎｆerror candidateは、２つのエラー候補それぞれついてＣｏｎｆt3（Ａ３）及びＣｏｎｆt1（Ｃ３）である。
【０１３９】
段階２０１６において、エラー訂正処理は、信頼性指標を選別し、第１のデータ記録に対する第１のマッチ、及び第２のデータ記録に対する第２のマッチを判断する。第１のデータ記録、すなわち、コンテナＢ４の降荷作業に関連するデータ記録に対して、エラー訂正処理は、エラー候補Ａ４に関する信頼性指標とエラー候補Ｃ４に関する信頼性指標とを比較し、高い方のものを第１の信頼性指標として選択する。「不可視」コンテナが１つしか存在しない（コンテナＩｎｖ＿Ｂ３）ので、エラー訂正処理は、Ａ３に対する信頼性指標とＣ３に対する信頼性指標とを比較して高い方のものを第２の信頼性指標として選択する。次に、エラー訂正処理は、第１の信頼性指標と第２の信頼性指標とを比較して高い方のものを最も高い信頼性指標として選択する。エラー候補Ａ４又はエラー候補Ｃ４のいずれかがこの最も高い信頼性指標を得た場合には、エラー訂正処理は、第１のデータ記録が間違っており、訂正する必要があると結論付け、他の場合には、第１のデータ記録は正しく、コンテナがロケーションＢ３を占有するはずである（すなわち、ロケーションＡ３にあるコンテナ又はロケーションＣ３にあるコンテナがロケーションＢ３を占有するはずである）と結論付ける。
【０１４０】
段階２０１８では、最も高い信頼性指標が事前設定閾値と比較される。この例では、最も高い信頼性指標が０．８であり、事前設定閾値が０．６であると仮定し、従って、エラー訂正処理は段階２０２２に続く。更に、最も高い信頼性指標を獲得するエラー候補が１つしか存在しないと仮定し、従って、エラー訂正処理は段階２０２６に続く。段階２０２６において、エラー訂正処理は、エラー訂正に向けてデータ記録を準備する。説明を完全にするために、４つのエラー候補の各々を４つの場合のうちの１つにおいて最も高い信頼性指標を獲得するエラー候補とすることができるこれらの４つの場合を提供する。
【０１４１】
ケース＃１では、最も高い信頼性指標は、ロケーションＡ４のエラー候補によって獲得される。従って、エラー訂正処理は、第１のデータ記録（コンテナＩＤをコンテナＢ４として有する）を複製データ記録にコピーし、次に、複製データ記録内のコンテナセルロケーションをロケーションＢ４からロケーションＡ４に置き換え、信頼性レベルをＣｏｎｆt4（Ｂ４）から（ａ１／２／ａ２）×（１−Ｃｏｎｆt4（Ｂ４））（これは０．８である）に更新する。図２３Ｂは、コンテナＢ４をロケーションＢ４からロケーションＡ４に移動するこれらの変更の効果を示している。更に、エラー訂正処理は、在庫追跡システムによって直接生成されたデータ記録から新規作成データ記録を区別するために、この新規データ記録がエラー訂正処理によって生成されたことを示すようにこの新規データ記録を訂正済みデータ記録としてマーク付けする。ロケーションＢ４におけるコンテナＢ４の降荷作業を表す元の第１のデータ記録に対しては、エラー訂正処理は、このデータ記録をエラーを有するとマーク付けし（例えば、「データ特性」フィールドを「エラー」に設定することにより）、無効にする（例えば、現時刻をタイムスタンプとして「ステータス」フィールド内の値を「既存」から「失効済み」に変更することにより）。同様にエラー訂正処理は、コンテナＩｎｖ＿Ｂ３のデータ記録も無効とマーク付けする。一部の実施形態では、エラー訂正処理は、複製データ記録を作成することなく第１のデータ記録に対して直接修正を加えることができ、又は修正した第１のデータ記録を訂正済みデータ記録として報告することができる。
【０１４２】
ケース＃２では、ロケーションＣ４のエラー候補が最も高い信頼性指標を獲得しており、従って、エラー訂正処理は、ケース＃１と類似の処理を提供する。唯一の相違点は、訂正済みデータ記録が、そのロケーションとしてロケーションＣ４を有し、その信頼性指標として信頼性指標（ａ３／２／ａ４）×（１−Ｃｏｎｆt4（Ｂ４））（これは０．８である）を有する点である。図２２Ｃは、コンテナＢ４をロケーションＢ４からロケーションＣ４に移動するこれらの変更の効果を示している。同様にエラー訂正処理は、元の第１のデータ記録をエラーを有する及び無効とマーク付けする。
【０１４３】
ケース＃３では、ロケーションＡ３にあるコンテナＡ３のエラー候補が最も高い信頼性指標を獲得するので、このエラー候補を第２のマッチとして識別し、これは、Ａ３の降荷作業が、ロケーションＡ３ではなくＢ３で発生した可能性が最も高いことを示している。従って、エラー訂正処理は、最初にこの第２のマッチ（すなわち、コンテナＡ３のデータ記録）をコピーすることによって複製データ記録を作成し、次に、複製データ記録内の降荷ロケーションをロケーションＡ３からロケーションＢ３に変更し、信頼性レベルをそれに対応する信頼性指標に更新する。図２３Ｄは、コンテナＡ３をロケーションＡ３からロケーションＢ３に移動するこれらの変更の効果を示している。次に、この複製データ記録は、エラー訂正処理によって生成された訂正済みデータ記録になる。次に、エラー訂正処理は、元のマッチ（すなわち、コンテナＡ３のデータ記録）をエラーを有する及び無効としてマーク付けする。更に、エラー訂正処理は、失効時刻を現時刻として第２のデータ記録（すなわち、エラー検出処理によって作成された「不可視」コンテナであるコンテナＩｎｖ＿Ｂ３のデータ記録）を無効とマーク付けする。
【０１４４】
ケース＃４では、ロケーションＣ３にあるコンテナＣ３のエラー候補が最も高い信頼性指標を獲得するので、この候補が第２のマッチとして識別される。コンテナＣ３の降荷作業は、時刻ｔ２におけるコンテナＢ３の集荷作業の前の時刻ｔ１に発生したので、Ｃ３の降荷ロケーションはロケーションＢ３であったはずがなく、これは、集荷作業が、コンテナＢ３ではなくコンテナＣ３に発生したはずであることを示している。従って、エラー訂正処理は、コンテナＢ３の複製データ記録を作成し、次に、複製データ記録内のコンテナのＩＤ及び特性をコンテナＣ３のものと置き換え、複製データ記録内のコンテナセルロケーションをロケーションＣ３に変更する。すなわち、複製データ記録は、時刻ｔ２における集荷作業が実際にはロケーションＣ３にあるコンテナＣ３に発生したことを示す訂正済みデータ記録になる。その後に、エラー訂正処理は、第２のデータ記録（すなわち、コンテナＩｎｖ＿Ｂ３のデータ記録）を無効とマーク付けし、Ｂ３の降荷作業に対応するデータ記録を無効（又は失効済み）から妥当（又は既存）に変更する。すなわち、在庫追跡データベースは、そのままロケーションＢ３にコンテナＢ３を有することになる。図２３Ｅは、これらの変更の効果を示している。
【０１４５】
段階２０２８において、エラー訂正処理は、関連データ記録に関して在庫追跡データベース１１４に照会し、訂正に従ってこれらのデータ記録を更新する。この例では、新規データ（すなわち、エラー訂正処理における第１のデータ記録）が、エラー検出モジュール３０２に実時間で報告されると仮定し、従って、ロケーションＡ４又はロケーションＣ４にはその時点では依然としていかなる作業も発生していなかったはずであるから、ケース＃１及びケース＃２ではいかなる照会も必要ではない。ケース＃３とケース＃４の両方において、マッチは、「不可視」コンテナに対するマッチである。ロケーションＡ３及びロケーションＣ３における直近の降荷作業の時刻は、それぞれｔ３及びｔ１であり、ロケーションＢ３における直近の集荷作業の時刻はｔ２であり、この時刻はｔ３よりも早いが、ｔ１よりも後である。ケース＃３では、Ａ３の降荷は、実際にはロケーションＢ３で発生しており、従って、エラー訂正処理は、ロケーションＢ３において時刻ｔ３の後に発生したあらゆる作業に関して在庫追跡データベースに照会する。照会は、いかなる結果も戻すことにはならず、エラー訂正処理は段階２０３０に続く。ケース＃４では、Ｃ３の降荷はＢ３の集荷よりも早く、従って、時刻ｔ２における集荷は、実際にはロケーションＣ３にあるコンテナＣ３に発生した。次に、エラー訂正処理は、時刻ｔ２における集荷作業の後にコンテナＢ３に発生した全ての作業に関して在庫追跡データベースに照会する。これらの作業は、コンテナＢ３ではなく実際にはコンテナＣ３に発生しており、従って、照会結果内の各データ記録に対して、エラー訂正処理は、コンテナ情報をコンテナＢ３のものからコンテナＣ３のものに変更する。そうすることにより、エラー訂正処理は、在庫追跡データベース１１４内で既に伝播していたエラーも訂正する。
【０１４６】
段階２０３０において、エラー訂正処理は、訂正済みデータ記録、並びに更新済みデータ記録を在庫追跡データベースに書き込むことによってエラー訂正を完了する。代替的に、エラー訂正処理は、訂正が新規エラーを作り出さないことを保証するために、これらのデータ記録を在庫追跡データベースに更新する前に訂正結果をエラー検出モジュール３０２に報告することができる。エラー検出モジュール３０２が、エラー訂正結果内にエラーを検出した場合には、エラー訂正処理は、例外フラグを「間違った訂正」と設定して訂正例外処理に続けることができる。
【０１４７】
図２４は、段階１８２０及び段階２０２４における訂正例外処理の一実施形態に関わる処理を示す流れ図である。この実施形態は、オペレータが、設定において手動サポートを実質的にすることを選択した場合に、オペレータが訂正処理に係わることを可能にする。図２４に示しているように、訂正例外処理は、段階２４０２において手動サポートが実質的にされた又は起動されたか否かを検査することで始まる。手動サポートが無効にさていれるか又は停止されている場合には、訂正例外処理は段階２４０４に続き、エラー訂正結果内のデータ記録を訂正例外が発生したことを示すように修正する。例えば、訂正例外処理は、対応する例外規則を表すために、これらのデータ記録に、以前の段階（例えば、図１８の段階１８１０、１８１６、及び１８１８、並びに図２０の段階２０１０、２０２０、及び２０２２）において設定された値を有する例外フラグを追加することができる。訂正例外処理は、例外規則及びタイムスタンプをエラー訂正ログに書き込むことができる。（上述のように、例外規則は、「十分なデータの不在」、「適正結果の不在」、「未確立のマッチ又は対処法」、「低い信頼性指標」などを含むことができる。）
【０１４８】
手動サポートが有効であるか又は起動されている場合には、訂正例外処理は、２４０６から２４１４までの段階に続き、エラーを訂正するようにオペレータを訂正例外処理に携わらせる。段階２４０６において、例外訂正処理は、オペレータの手動訂正又は検証に向けて、対応する例外規則（すなわち、既存の例外に対する理由）、エラー訂正結果内の全てのデータ記録、並びに照会結果内のデータ記録を含むことができる指示を準備する。例外が、未確立のマッチ又は対処法に起因する場合には、指示は、最も高い信頼性指標を獲得する全ての潜在的マッチを含むことにもなり、例外が低い信頼性指標に起因する場合には、指示は、最も高い信頼性指標を獲得するマッチを含むことになる。これらの指示の目的は、検出されたエラーに関連する十分な情報をオペレータに提供し、オペレータの手動エラー訂正を容易にすることである。
【０１４９】
段階２４０８において、訂正例外処理は、これらの手動訂正指示を例えばディスプレイを通じてオペレータに対して出力する。これらのデータ記録の内容を示すという指示に基づいて、グラフィック表示又は概略図面（図２２Ａ〜図２２Ｄ及び図２３Ａ〜図２３Ｅにあるもの等）を生成することができ、第１のデータ記録、第２のデータ記録内の「不可視」コンテナ及び「虚影」コンテナ、並びにエラー候補及びマッチを示す上で異なる色又はパターン規則を使用することができる。対応するエラー候補以外に各エラー候補に対応する信頼性指標を表示することができ、又はオペレータの要求を受けて表示することができる。次に、訂正例外処理は、オペレータの入力を待つ。
【０１５０】
情報が示されると、次に、オペレータは、情報を手動で調べ、オペレータに対して利用可能な他のリソースを組み込むことによってエラーを如何に訂正するかを判断する。そのようなリソースは、カメラ１４０２、画像処理モジュール１４０４、及び通信ネットワーク１６０２を含む図１４及び図１６に示しているようなカメラを利用したモニタリングシステムによって提供されるコンテナ輸送ヤードの画像（又は情報）を含むことができる。オペレータは、関連情報に関してコンテナ輸送ヤード内の輸送ヤード事務員及び／又は取り扱い機器オペレータと連絡を取ることができる。手動訂正を入力するために、オペレータは、ディスプレイ内のデータ記録のうちのいずれかを選択して、コンテナセルロケーション、コンテナＩＤ及び特性、並びに類似のものに関する訂正情報を手動で入力することができる。また、訂正例外処理は、オペレータが、１つのセルロケーションから別のセルロケーションにコンテナをドラッグするか又はセルロケーションにおいてコンテナを削除又は追加することを可能にすることができる。
【０１５１】
段階２４１０において、例外訂正処理は、いずれかの入力がオペレータによって入力されたか否かをカーソル移動又はキーボードからの入力をモニタすることによって調べる。例外訂正処理は、（１）入力が第１のデータ記録に対するマッチ、又は第２のデータ記録の各々に対するマッチのいずれを与えるか、又は（２）入力が第１のデータ記録、又は第２のデータ記録の各々のいずれを訂正するかを調べることにより、入力が妥当で完全なものであるか否かも検査する。入力が妥当で完全なものではなかった場合には、例外訂正処理は、段階２４１２で判断される十分に長い期間の間待機し終わるまで（例えば、指示の表示からの待機時間が、所定の閾値よりも長いか否か）オペレータからの入力を待ち、受け取り続ける。一部の実施形態では、例外訂正処理は、オペレータからの入力を第１及び第２のデータ記録、並びにエラー候補に関する既存の情報と組み合わせることができ、それによって可能な訂正の対処法を生成し、オペレータが選択及び／又は検証するようにこれらの対処法を出力する。従って、例外訂正処理は、入力が完全であることを必要としなくてもよい。
【０１５２】
訂正例外処理は、オペレータから妥当な入力を受け取ることなく十分に長い期間にわたって待機し終わると、段階２４１２から段階２４０４に続き、例外規則を書き込み、エラー検出結果内のデータ記録を修正する。代替的に、所定の時間閾値内で妥当なオペレータ入力が受け取られた場合には、訂正例外処理は、段階２４１０から段階２４１４に続き、オペレータの入力に基づいて識別されたマッチ、並びにオペレータが特定の訂正が行われた場合はそれらの訂正をエラー訂正処理に出力し戻す。その後に、訂正例外処理は、エラー訂正処理の図１８の段階１８２４又は図２０の段階２０２６に抜ける。次に、エラー訂正処理は、マッチ又は訂正が自動エラー訂正によって識別された場合と同じ手法で、オペレータによって選択されたマッチに基づいて必要な訂正を加えるか、又はオペレータによって加えられた訂正の検証する。
【０１５３】
図１８及び図２０のエラー訂正処理の実施形態を少なくとも２つのデータ記録（すなわち、第１のデータ記録と第２のデータ記録の両方を含むエラー検出結果）を入力として用いて説明したが、これらの実施形態は、１つのデータ記録しかエラー訂正処理に入力されない場合に適用することができる。そのような場合には、この１つのデータ記録が間違っており、訂正する必要があると仮定される。更に、この単一の記録では、エラー訂正処理をエラー検出モジュール３０２のエラー検出処理とは独立して使用することができる。以下の説明は、図２０に示している流れ図を辿ってそのような単一記録実施形態を提供する。
【０１５４】
段階２００２において、エラー訂正処理は、エラーが報告されたか否か（エラー検出モジュール又はユーザインタフェースのような他のモジュールのいずれかから）を調べ、報告があった場合には、エラー訂正処理は段階２００４に続き、エラーデータ記録（第１のデータ記録、又はユーザインタフェースのような他のモジュールから入力されたデータ記録のみを含むエラー検出結果とすることができる）を受け取る。第１のデータ記録は、コンテナＩＤ、コンテナ特性、ポジション、及びコンテナセルロケーションという情報のうちの少なくとも１つを含み、これらの情報のうちのいずれかにおいて少なくとも１つのエラーを有することが、エラーを検出するためのプロセッサ、又は在庫追跡システムのオペレータのいずれかによって判断済みである。
【０１５５】
段階２００６において、エラー訂正処理は、第１のデータ記録に基づいて、コンテナＩＤ、コンテナ特性、コンテナセルロケーション、継続時間、及び作業又はイベントの回数を指定する検索基準を設定する。次に、エラー訂正処理は、検索基準を用いて在庫追跡データベース１１４に照会し、照会結果を取得する。段階２０１０において、エラー訂正は、いずれかの例外規則が満たされるか否かを調べ、この規則が満たされる場合には、エラー訂正処理は段階２０２４に続き、訂正例外処理を実行する。例外規則、調査、及び訂正例外処理は、上述したものと同様である。
【０１５６】
いかなる例外規則も満たされない場合には、エラー訂正処理は、２０１２から２０２２までの段階に続き、照会結果を評価して、第１のデータ記録に対するマッチを判断する。マッチは、照会結果内のデータ記録であり、マッチに基づいて第１のデータ記録を修正することにより、第１のデータ記録内のエラーを訂正することができる。図２０に図示の実施形態では、エラー訂正処理は、段階２０１２において第１のデータ記録に対するエラー候補を識別し、段階２０１４においてエラー候補の各々に対する確率尺度、例えば、矛盾指標又は信頼性指標を計算し、段階２０１６において矛盾指標を選別し、かつ最も高い信頼性指標に関してこの最も高い信頼性指標に対応するエラー候補を潜在的マッチとして識別することによってマッチを判断する。
【０１５７】
段階２０１８において、エラー訂正処理は、最も高い信頼性指標が十分に高い（例えば、事前設定閾値よりも大きい）か否かを調べ、比較結果に依存して段階２０２０又は段階２０２２に続く。最も高い信頼性指標が十分に高い場合には、潜在的マッチは、マッチとして識別される。１つのマッチしか存在しなかった（段階２０２２において判断される）場合には、エラー訂正処理は、段階２０２６においてこのマッチに基づいて第１のデータ記録を修正してエラーを訂正する。上述のように、段階２０２８において、エラー訂正処理は、第１のデータ記録又はマッチに関連付けられたデータ記録を検索して更新する。段階２０３０において、エラー訂正処理は、訂正済みデータ記録で在庫追跡データベース１１４を更新し、関連の履歴ログ又はエラー訂正ログに適宜書込みを行う。
【０１５８】
本発明を詳細事項を用いて上述したが、この説明は、本発明を如何に作成し、使用するかを当業者に教示するためのものに過ぎない。「不可視」コンテナ及び「虚影」コンテナのような特定の用語は、説明目的に用いたものであり、ある一定のセルロケーションに存在する可能性がある（又は可能性がない）にも関わらず、在庫追跡データベースが、これらのセルロケーションにこれらのコンテナが存在しない（又は存在する）ことを示すコンテナを表す上で他の用語又は値を使用することができると考えられる。多くの付加的な修正は、以下に続く特許請求の範囲によって定められる本発明の範囲に収まるであろう。
【符号の説明】
【０１５９】
２３、２４  間口
１０１  列
Ａ、Ｂ、Ｃ  枠
【図１】
2013503800.tif 000005
【図２】
2013503800.tif 000006
【図３】
2013503800.tif 000007
【図４】
2013503800.tif 000008
【図５】
2013503800.tif 000009
【図６】
2013503800.tif 000010
【図７】
2013503800.tif 000011
【図８】
2013503800.tif 000012
【図９】
2013503800.tif 000013
【図１０Ａ】
2013503800.tif 000014
【図１０Ｂ】
2013503800.tif 000015
【図１１】
2013503800.tif 000016
【図１２】
2013503800.tif 000017
【図１３Ａ】
2013503800.tif 000018
【図１３Ｂ】
2013503800.tif 000019
【図１４】
2013503800.tif 000020
【図１５】
2013503800.tif 000021
【図１６】
2013503800.tif 000022
【図１７】
2013503800.tif 000023
【図１８】
2013503800.tif 000024
【図１９Ａ】
2013503800.tif 000025
【図１９Ｂ】
2013503800.tif 000026
【図１９Ｃ】
2013503800.tif 000027
【図１９Ｄ】
2013503800.tif 000028
【図２０】
2013503800.tif 000029
【図２１】
2013503800.tif 000030
【図２２Ａ】
2013503800.tif 000031
【図２２Ｂ】
2013503800.tif 000032
【図２２Ｃ】
2013503800.tif 000033
【図２２Ｄ】
2013503800.tif 000034
【図２３Ａ】
2013503800.tif 000035
【図２３Ｂ】
2013503800.tif 000036
【図２３Ｃ】
2013503800.tif 000037
【図２３Ｄ】
2013503800.tif 000038
【図２３Ｅ】
2013503800.tif 000039
【図２３Ｆ】
2013503800.tif 000040
【図２４】
2013503800.tif 000041
【国際調査報告】
2013503800.tif 000042