JP3542732B2 - 多次元空間データ構造および多次元空間データの更新および探索方法と前記多次元空間データ構造を記録した記録媒体および前記方法を実施するプログラムを記録した記録媒体 - Google Patents

多次元空間データ構造および多次元空間データの更新および探索方法と前記多次元空間データ構造を記録した記録媒体および前記方法を実施するプログラムを記録した記録媒体 Download PDF

Info

Publication number
JP3542732B2
JP3542732B2 JP00134599A JP134599A JP3542732B2 JP 3542732 B2 JP3542732 B2 JP 3542732B2 JP 00134599 A JP00134599 A JP 00134599A JP 134599 A JP134599 A JP 134599A JP 3542732 B2 JP3542732 B2 JP 3542732B2
Authority
JP
Japan
Prior art keywords
node
rectangles
range
child
virtual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP00134599A
Other languages
English (en)
Other versions
JP2000200342A (ja
Inventor
保志 櫻井
正俊 吉川
俊亮 植村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP00134599A priority Critical patent/JP3542732B2/ja
Publication of JP2000200342A publication Critical patent/JP2000200342A/ja
Application granted granted Critical
Publication of JP3542732B2 publication Critical patent/JP3542732B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、データベースに格納される画像を多次元空間上で表現される多次元ベクトルとして表す多次元空間データ構造および多次元空間データの更新および探索方法と前記多次元空間データ構造を記録した記録媒体および前記方法を実施するプログラムを記録した記録媒体に関する。
【0002】
【従来の技術】
従来の空間アクセス法の中で、最も優れたアプローチの1つとしてR−treeが挙げられる。R−treeは空間内の幾何学的オブジェクトをMBR(Minimum Bounding Rectangle;最小範囲矩形)に梱包し、そのオブジェクトを包含したMBRをリーフとして木状に階層化した構造を有する。リーフノードは以下のエントリを含んでいる。
【0003】
[数5]
LeafNode=(ε,Recordi )(i=1,…,ε)
Recordi =(C,object−identifier)
ここで、εはリーフノードに格納されているエントリ数である。Cは幾何学的オブジェクトを近似したMBR、もしくは点で表現されるオブジェクトの空間ベクトルを表すものであり、具体的にはn次元空間上の座標値を保持する。また、object−identifierによってオブジェクトのコンテンツにアクセスすることができる。更に、ノンリーフノードは以下のエントリを含むものである。
【0004】
[数6]
Non−leafNode=(ε,Recordi )(i=1,…,ε) Recordi =(C,child−pointer)
Cは、子ノードに格納されている矩形のすべてを包含するMBRを表している。
また、child−pointerによって子ノードにアクセスすることができる。この構造を例示したものが図1である。2次元空間上にオブジェクトが点在しているとき、図1のように階層構造を形成する。このような階層構造により、多次元空間内のオブジェクトに効率よくアクセスすることができる。
【0005】
【発明が解決しようとする課題】
上述した従来の構造では、R−treeとその派生手法はいずれも最小範囲矩形MBRを表現する端点の座標値を座標系における絶対的位置によって表現している。このように絶対的位置を用いれば、厳密な座標位置表現が可能であるが、反面多くの表現コストを必要とし、位置表現コストが高くなる。この結果、探索処理におけるディスクアクセス数の増大、ひいてはコストの上昇を招くという問題がある。
【0006】
本発明は、上記に鑑みてなされたもので、その目的とするところは、多次元空間における矩形位置情報を部分空間符号で圧縮し、探索処理におけるディスクアクセス数の削減および探索性能の向上を図り得る多次元空間データ構造および多次元空間データの更新および探索方法と前記多次元空間データ構造を記録した記録媒体および前記方法を実施するプログラムを記録した記録媒体を提供することにある。
【0007】
【課題を解決するための手段】
上記目的を達成するために、請求項1記載の本発明は、ディスクに格納される複数の幾何学的オブジェクトを多次元空間上で表現される多次元ベクトルとして表す多次元空間データのデータ構造であって、前記多次元空間データは、前記多次元空間内の幾何学的オブジェクトが所定のエントリ数分それぞれ包含された複数のリーフノードを該多次元空間内の端点の絶対座標値によりそれぞれ表現される複数の最小範囲矩形により梱包して該複数のリーフノードを該複数の最小範囲矩形に対して連接させ、該複数の最小範囲矩形をさらに新たな最小矩形範囲により梱包して該複数の最小範囲矩形を該新たな最小範囲矩形に対して連接させることにより、前記新たな最小範囲矩形を含む複数の最小範囲矩形を複数のノンリーフノードとし前記複数のリーフノードと共に階層化して構成された木構造における、前記複数のリーフノードそれぞれの前記多次元空間内の絶対値座標と、前記木構造における前記複数のノンリーフノードに対応する複数の最小矩形範囲の端点の絶対値座標とから表現された実部分と、前記木構造における前記複数のノンリーフノードそれぞれに対応する複数の最小範囲矩形に対する相対的位置に基づく複数の仮想範囲矩形を木状に階層化した場合における前記複数の仮想範囲矩形により求められた複数の部分空間符号により表現された仮想部分とを備え、前記仮想部分は、前記各ノンリーフノードに連接される複数のノンリーフノードを複数の子ノードとし、連接元の各ノンリーフノードを各親ノードとした際に、該各親ノードに連接される子ノードの数であるエントリ数と、前記各親ノードに連接される複数の子ノードに対応する複数の仮想範囲矩形の始点および終点それぞれの前記多次元空間内の位置情報により求められた部分空間符号と、前記各親ノードに連接する複数の子ノードそれぞれの前記ディスク上の格納位置を表すノードポインタとから構成されたことを要旨とする。
【0008】
また、請求項2記載の本発明は、請求項1記載の発明において、前記多次元空間の次元数をnとし、前記各親ノードの最小範囲矩形の対角を成す2つの端点a、a´、および各親ノードに連接される各子ノードの最小範囲矩形の対角を成す2つの端点b、b´とし、a、a´、b、b´は、それぞれ下式(1)、(2)、(3)、(4):
a=[φ1 ,φ2 ,…,φn ] ・・・(1)
a′=[φ1 ′,φ2 ′,…,φn ′] ・・・(2)
b=[ψ1 ,ψ2 ,…,ψn ] ・・・(3)
b′=[ψ1 ′,ψ2 ′,…,ψn ′] ・・・(4)
但し、φi ≦φi ′;i∈{1,2,…,n}
をそれぞれ満足する場合における前記各子ノードの各仮想範囲矩形の始点および終点それぞれの前記多次元空間内の位置情報をV=v,v´とし、v、v´は、それぞれ下式(5)、(6):
v=[r1 ,r2 ,…,rn ] ・・・(5)
v′=[r1 ′,r2 ′,…,rn ′] ・・・(6)
但し、ri ≦ri ′、かつ
【数7】
Figure 0003542732
i=1,2,・・・,n
を満足するものとし、ηとη´(η≦η´)を下式(9)および(10):
【数8】
Figure 0003542732
を満足するi次元座標上の部分区間を表すq元符号とし、F(η,l)を符号長lとするηの2進表現として下式(11):
l=「logq」 ・・・(11)
を満足するものとした場合、前記各子ノードに対応する各仮想範囲矩形の始点および終点それぞれの位置情報により求められる前記多次元空間内の部分空間符号は、前記各子ノードの各仮想範囲矩形の位置情報Vを圧縮する2進符号S=(s,s´)として、下式(12)および(13):
s=[F2 (η1 ,l),F2 (η2 ,l),…,F2 (ηn ,l)] ・・・(12)
s′=[F2 (η1 ′,l),F2 (η2 ′,l),
…,F2 (ηn ′,l)] ・・・(13)
を満足するように設定されたことを要旨とする。
【0009】
請求項3記載の本発明は、請求項2記載の発明において、前記複数の子ノードに対応する複数の仮想範囲矩形の始点および終点それぞれの位置情報により求められる前記多次元空間内の部分空間符号は、前記複数の子ノードの始点および終点それぞれに対して設定された1次元目からn次元目までの次元毎の部分空間符号として構成されており、前記複数の子ノードそれぞれの前記ディスク上の格納位置を表すノードポインタは、該複数の子ノードそれぞれの前記ディスク上の格納位置をノード毎に表すページアドレスおよびバイト変位により構成されている。
【0010】
請求項4記載の本発明は、請求項2記載の多次元空間データ構造に対してエントリ収集プロシージャを実行して問合せ点を中心とした近傍オブジェクトを該多次元空間データ構造から検索する多次元空間データ探索方法であって、前記エントリ収集プロシージャを実行することにより、引き継いだパラメータにより前記多次元空間データにおいて指し示されているノードがリーフノードか前記ノンリーフノードであるかを判定し、リーフノードの場合には、該リーフノードに包含されているオブジェクトを候補オブジェクトとして収集バッファに格納し、前記判定の結果ノンリーフノードである場合には、ループ1として、前記ノンリーフノードの最小範囲矩形に連接する複数の子ノードそれぞれの部分空間符号と前記パラメータとして引き継いだ前記ノンリーフノードの最小範囲矩形の位置とから前記複数の子ノードそれぞれの仮想範囲矩形の位置情報Vを計算するとともに、前記問合せ点Qと該複数の子ノードそれぞれに対応する複数の位置情報Vとの距離をそれぞれ求め、前記複数の子ノードそれぞれに対するノードポインタと共に、該複数の子ノードそれぞれの仮想範囲矩形の位置情報Vの計算結果および問合せ点Qと前記複数の子ノードに対応する複数の位置情報Vとの距離の計算結果を複数の枝リストにそれぞれ設定し、前記複数の枝リストを、該枝リストそれぞれの距離の昇順に整列し、ループ2として、前記複数の枝リストそれぞれの距離の小さい枝リストから順に前記エントリ収集プロシージャを再帰的に実行し、前記複数の枝リストそれぞれの距離に応じた枝刈り処理によりアクセスする必要のない枝リストを削除することを要旨とする。
【0011】
請求項5記載の本発明は、複数の幾何学的オブジェクトを多次元空間上で表現される多次元ベクトルとして表す多次元空間データのデータ構造を記録したディスクを含む記録媒体であって、前記多次元空間データは、前記多次元空間内の幾何学的オブジェクトが所定のエントリ数分それぞれ包含された複数のリーフノードを該多次元空間内の端点の絶対座標値によりそれぞれ表現される複数の最小範囲矩形により梱包して該複数のリーフノードを該複数の最小範囲矩形に対して連接させ、該複数の最小範囲矩形をさらに新たな最小矩形範囲により梱包して該複数の最小範囲矩形を該新たな最小範囲矩形に対して連接させることにより、前記新たな最小範囲矩形を含む複数の最小範囲矩形を複数のノンリーフノードとし前記複数のリーフノードと共に階層化して構成された木構造における、前記複数のリーフノードそれぞれの前記多次元空間内の絶対値座標と、前記木構造における前記複数のノンリーフノードに対応する複数の最小矩形範囲の端点の絶対値座標とから表現された実部分と、前記木構造における前記複数のノンリーフノードそれぞれに対応する複数の最小範囲矩形に対する相対的位置に基づく複数の仮想範囲矩形を木状に階層化した場合における前記複数の仮想範囲矩形により求められた複数の部分空間符号により表現された仮想部分とを備え、前記仮想部分は、前記各ノンリーフノードに連接される複数のノンリーフノードを複数の子ノードとし、連接元の各ノンリーフノードを各親ノードとした際に、該各親ノードに連接される子ノードの数であるエントリ数と、前記各親ノードに連接される複数の子ノードに対応する複数の仮想範囲矩形の始点および終点それぞれの前記多次元空間内の位置情報により求められた部分空間符号と、前記各親ノードに連接する複数の子ノードそれぞれの前記ディスク上の格納位置を表すノードポインタとから構成された構造を有することを要旨とする。
【0012】
請求項6記載の本発明は、請求項5記載の発明において、前記多次元空間の次元数をnとし、前記各親ノードの最小範囲矩形の対角を成す2つの端点a、a´、および各親ノードに連接される各子ノードの最小範囲矩形の対角を成す2つの端点b、b´とし、a、a´、b、b´は、それぞれ下式(1)、(2)、(3)、(4):
a=[φ1 ,φ2 ,…,φn ] ・・・(1)
a′=[φ1 ′,φ2 ′,…,φn ′] ・・・(2)
b=[ψ1 ,ψ2 ,…,ψn ] ・・・(3)
b′=[ψ1 ′,ψ2 ′,…,ψn ′] ・・・(4)
但し、φi ≦φi ′;i∈{1,2,…,n}
をそれぞれ満足する場合における前記各子ノードの各仮想範囲矩形の始点および終点それぞれの前記多次元空間内の位置情報をV=v,v´とし、v、v´は、それぞれ下式(5)、(6):
v=[r1 ,r2 ,…,rn ] ・・・(5)
v′=[r1 ′,r2 ′,…,rn ′] ・・・(6)
但し、ri ≦ri ′、かつ
【数9】
Figure 0003542732
i=1,2,・・・,n
を満足するものとし、ηとη´(η≦η´)を下式(9)および(10):
【数10】
Figure 0003542732
を満足するi次元座標上の部分区間を表すq元符号とし、F(η,l)を符号長lとするηの2進表現として下式(11):
l=「logq」 ・・・(11)
を満足するものとした場合、前記各子ノードに対応する各仮想範囲矩形の始点および終点それぞれの位置情報により求められる前記多次元空間内の部分空間符号は、前記各子ノードの各仮想範囲矩形の位置情報Vを圧縮する2進符号S=(s,s´)として、下式(12)および(13):
s=[F2 (η1 ,l),F2 (η2 ,l),…,F2 (ηn ,l)] ・・・(12)
s′=[F2 (η1 ′,l),F2 (η2 ′,l),
…,F2 (ηn ′,l)] ・・・(13)
を満足するように設定されていることを要旨とする。
【0013】
請求項7記載の本発明は、請求項6記載の本発明において、前記複数の子ノードに対応する複数の仮想範囲矩形の始点および終点それぞれの位置情報により求められる前記多次元空間内の部分空間符号は、前記複数の子ノードの始点および終点それぞれに対して設定された1次元目からn次元目までの次元毎の部分空間符号として構成されており、前記複数の子ノードそれぞれの前記ディスク上の格納位置を表すノードポインタは、該複数の子ノードそれぞれの前記ディスク上の格納位置をノード毎に表すページアドレスおよびバイト変位により構成されたことを要旨とする。
【0014】
請求項8記載の本発明は、請求項2記載の多次元空間データ構造に対してエントリ収集プロシージャを実行して問合せ点を中心とした近傍オブジェクトを該多次元空間データ構造から検索する多次元空間データ探索プログラムを記録した記録媒体であって、前記エントリ収集プロシージャを実行することにより、引き継いだパラメータにより前記多次元空間データにおいて指し示されているノードがリーフノードか前記ノンリーフノードであるかを判定し、リーフノードの場合には、該リーフノードに包含されているオブジェクトを候補オブジェクトとして収集バッファに格納し、前記判定の結果ノンリーフノードである場合には、ループ1として、前記ノンリーフノードの最小範囲矩形に連接する複数の子ノードそれぞれの部分空間符号と前記パラメータとして引き継いだ前記ノンリーフノードの最小範囲矩形の位置とから前記複数の子ノードそれぞれの仮想範囲矩形の位置情報Vを計算するとともに、前記問合せ点Qと該複数の子ノードそれぞれに対応する複数の位置情報Vとの距離をそれぞれ求め、前記複数の子ノードそれぞれに対するノードポインタと共に、該複数の子ノードそれぞれの仮想範囲矩形の位置情報Vの計算結果および問合せ点Qと前記複数の子ノードに対応する複数の位置情報Vとの距離の計算結果を複数の枝リストにそれぞれ設定し、前記複数の枝リストを、該枝リストそれぞれの距離の昇順に整列し、ループ2として、前記複数の枝リストそれぞれの距離の小さい枝リストから順に前記エントリ収集プロシージャを再帰的に実行し、前記複数の枝リストそれぞれの距離に応じた枝刈り処理によりアクセスする必要のない枝リストを削除することを要旨とする。
【0019】
【発明の実施の形態】
以下、図面を用いて本発明の実施の形態について説明する。本発明の一実施形態の多次元空間データ構造、多次元空間データの更新および探索方法においては、上述した従来の木構造R−treeにおける最小範囲矩形MBRに対して相対的位置表現を用いる部分空間符号で表現される仮想範囲矩形VBRを用いることにより位置表現コスト、すなわちビット長を大幅に削減しようとするものである。具体的には、従来の木構造R−treeにおいては親ノードの矩形は子ノードの矩形を包含しているので、親ノードの矩形の位置に基づいて子ノードの矩形の位置を相対的に表現することが可能である。本実施形態は、このような考えに基づき最小範囲矩形MBRに対して相対的位置表現を用いた仮想範囲矩形VBRを用いているものである。
【0020】
まず、仮想範囲矩形VBRについて説明する。
【0021】
n次元空間における範囲矩形Aは、対角をなす2つの端点aとa′によって表現することができる。また、範囲矩形Bも同様である。すなわち、
A=(a,a′),B=(b,b′)
ここで、
[数11]
a=[φ1 ,φ2 ,…,φn ],a′=[φ1 ′,φ2 ′,…,φn ′]
b=[ψ1 ,ψ2 ,…,ψn ],b′=[ψ1 ′,ψ2 ′,…,ψn ′]
(φi ≦φi ′;i∈{1,2,…,n})
n次元空間内において、範囲矩形AとBが存在し、B⊆Aが成り立つものとする(BがAに包含されているものとする)。また、qを2以上の整数とする。以下に示される矩形Vによって近似的に矩形Bを表現することができる。以下、矩形Vを仮想範囲矩形、もしくはVBR(Virtual Bounding Rectangle)と呼ぶ。
【0022】
V=(v,v′)
ここで、
[数12]
v=[r1 ,r2 ,…,rn
v′=[r1 ′,r2 ′,…,rn ′],ri ≦ri
ただし、
【数13】
Figure 0003542732
(i=1,2,・・・,n)
例えば、図2のように、B⊆Aを満たす矩形AとBが与えられているとする。
点線で示されている矩形が、基数8のAにおけるBのVBRである。
【0023】
次に、符号化法について説明する。
【0024】
仮想範囲矩形を表現するための一方法として、以下の符号化法がある。
【0025】
ηとη´をi次元座標上の部分区間を表すq元符号とする(η≦η´)。すなわち、
【数14】
Figure 0003542732
また、F2 (ηi ,l)を符号長lとするηi の2進表現とする
[数15]
(l=「logq」)。
以下の2進符号S(以下、部分空間符号)によって、仮想範囲矩形Vの位置情報を圧縮することが可能である。
【0026】
S=(s,s′)
ここで、
[数16]
s=[F2 (η1 ,l),F2 (η2 ,l),…,F2 (ηn ,l)]
s′=[F2 (η1 ′,l),F2 (η2 ′,l),
…,F2 (ηn ′,l)]
少ない情報量にもかかわらず、部分空間符号は範囲矩形を復元する能力を有する。絶対的位置を用いた元の範囲矩形とは対照的に、本発明における部分空間符号は相対的位置に基づいているために誤差を含んではいるものの、仮想範囲矩形として元の矩形を再生することができる。
【0027】
図3は、部分空間符号を生成する方法について簡単に例示したものである。n次元空間内のi次元座標において、範囲矩形Aが座標値として(3,19)を、そして範囲矩形Bが同様に座標値として(6,8)を占めている。このとき、長さlの符号を用いて、Aのi次元座標範囲を2l の部分区間に等分割することにより、Bの始点をそれが存在する部分区間によって近似的に表現することができる。これは、Bの終点についても同様である。例えば、長さ3の符号を用いて、Aの領域を8つの部分区間に分割した場合、BはAの始点から数えて前から2番目と3番目の部分区間を占めていることになる。それゆえ、i次元座標におけるBの領域は8元符号(1,2)、もしくは2進符号では(001,010)のように近似的に表現することが可能である。この場合、2進符号において必要な符号長は、Bの始点、終点それぞれに3であるため、次元あたり合計6となる。
【0028】
次に、データ構造について説明する。
【0029】
本発明は、MBRを用いた従来の木構造索引を利用するものであるが、以下の点で従来手法と異なる。
【0030】
(a)本手法を適用する木構造とは別に、部分空間符号で構成される木構造を生成する。2つの木構造を区別するために、絶対的位置表現を用いる元の木構造を実部分(real part)、相対的位置表現を用いる部分空間符号により構成される木構造を仮想部分(virtual part)と呼ぶ。図4は、実部分と仮想部分の関係を表したものである。
【0031】
(b)木構造の実部分における各々のノードに対応して、仮想部分のノードを生成する。ただし、実部分のリーフノードについては仮想部分において生成されない。
【0032】
(c)実部分の木構造の高さをs、根ノードのレベルを1とするとき、仮想部分のs−1レベルのノードは、子ノードのポインタとして実部分のsレベルのノード、つまりリーフノードを指す。
【0033】
(d)根ノードのMBRの位置、大きさを座標値として保持しておく必要がある。
【0034】
(e)仮想部分において子ノードのVBRを表現する部分空間符号は、現ノードのVBRと実部分に含まれる子ノードのMBRを基に生成される。ただし、現ノードが根である場合のみ、根のMBRと子ノードのMBRを基に子ノードのVBRが生成される。
【0035】
本発明では、実部分とは別に仮想部分を生成する。仮想部分のノードは以下のような構造を有する。
【0036】
[数17]
Node=(ε,S,child−pointeri )(i=1,…,ε) child−pointeri =(page−number, byte−offset)
ここで、εはノードに格納されているエントリ数である。Sは、ε個の子ノードのMBRを部分空間符号によって表現したものである。図5に示すようにS内にはすべての子ノードについて、全次元の始点と終点の符号が格納されている。また、仮想部分においてはchild−pointeri によって子ノードにアクセスすることができる。child−pointeri の中にはページ番号の他にbyte−offsetとしてバイト変位が格納されている。従来手法においては、1ノードが1ページ、もしくはそれ以上を占有するように設計されているが、本手法の仮想部分では1ページに複数のノードが格納される。それゆえ、子ノードを指し示すためにバイト変位が各エントリに必要となる。
【0037】
更に詳しく、図6を参照して、仮想部分におけるノード構成について説明する。上述したように、本実施形態の多次元空間データ構造は、多次元空間内の幾何学的オブジェクトを最小範囲矩形MBRに梱包し、該最小範囲矩形MBRをリーフとして木状に階層化し、最上位をノンリーフノードとし、該ノンリーフノードの下位にリーフノードを順次連接した木構造を構成し、最小範囲矩形MBRを表現する端点の座標値を座標系における絶対的位置によって表現したものを図4で示したように実部分とし、ノンリーフノードにおける最小範囲矩形MBRに対して相対的位置に基づく部分空間符号で表現される仮想範囲矩形VBRを構成し、この仮想範囲矩形VBRを木構造に階層化して表現したものを仮想部分としている。
【0038】
そして、このように構成される仮想部分における各ノードを図6(a)に示すように各ノードに連接される子ノードの数であるエントリ数、各子ノードの始点および終点を表す多次元の部分空間符号、各子ノードのディスク上の格納位置を表す子ノードポインタから構成している。
【0039】
各ノードの部分空間符号は、図6(b)に示すように、該ノードに連接する複数の子ノードの数であるエントリ数に相当する子ノード1から子ノードεまでの複数の子ノードのそれぞれに対してその始点と終点をそれぞれ1次元目の部分空間符号からn次元目の部分空間符号まで定義している。
【0040】
また、子ノードポインタは、図6(c)に示すように、子ノード1から子ノードεまでのそれぞれのディスク上の格納位置をページアドレスとバイト変位で定義している。
【0041】
次に、上述したように構成される多次元空間データの更新アルゴリズムについて説明する。
【0042】
本発明では、木構造の実部分のみならず仮想部分についても更新する必要がある。実部分の更新は、従来手法で実施している方法と同じである。また、仮想部分におけるノードのオーバフロー処理は実部分の処理と同一であるため、仮想部分におけるノードは実部分の構造と同じ状態を保つように更新操作を模倣する。実部分におけるオブジェクトの挿入、実部分と仮想部分におけるノードのオーバフロー処理がすべて終了した時点で、仮想部分における部分空間符号の更新処理を開始する。以下では、部分空間符号の更新アルゴリズムについて説明する。
【0043】
実部分でMBRを更新したノードについては、対応する仮想部分のノードとその配下に位置するすべてのノンリーフノードにアクセスし、ノードが保有する部分空間符号を検査する必要がある。そして、必要があれば更新する。つまり、実部分でMBRを更新したノードに対応する仮想部分のノードをTとするとき、仮想部分において、Tをトップノードとする部分木すべてにアクセスする。仮想部分における部分空間符号の修正は、ノードTから開始し、下向きに伝播する。また、部分空間符号に修正を要しないノードに達しても終了せず、引き続き下位ノードへ処理を伝播させる。
【0044】
図7は、より詳細に部分空間符号の更新処理について示したものである。この記述において、genSubspaceCodeはVBRと部分空間符号を計算するプロシージャである。具体的には、n次元空間に位置するB⊆Aとなる2つの矩形AとBが与えられているとき、このプロシージャではBのVBR Vを計算し、更にAにおけるVの部分空間符号を生成し、各々の結果を変数V,Sに設定する。
【0045】
プロシージャinsertでは部分空間符号を更新するために、挿入パスIを用いている。ここで、I.countは仮想部分の木構造において更新を必要とする部分木の数である。また、I.path[i].level[j](1≦i≦I.count;1≦j≦I.path[i].level−1)は部分木に関するトップノードのレベルであり、I.path[i].room[j]は根ノードから部分木のトップノードに達するまでの経路である。部分木のトップノードに対応する実部分のノードは、MBRに変動が生じたエントリを1つ以上保有している。プロシージャinsertではまず、その実部分のエントリに対応するトップノードのエントリの符号を更新する。そして逐次かつ連続的に下位ノードに向かって符号を更新するために、上述のプロシージャgenSubspaceCodeによって求めたVBRをパラメータとして、再帰プロシージャadjustSubspaceCodeを実行する。adjustSubspaceCodeではgenSubspaceCodeを用い、上位ノードで生成された現ノードのVBRと現ノードが保有する子ノードのMBRから部分空間符号を計算し、更新する。更に、子ノードの部分空間符号からVBRを求め、求めた矩形をパラメータとして再度adjustSubspaceCodeを実行し、孫ノードの符号を更新する。
【0046】
例として、図9を用いて説明する。図9において矩形A,B,Cを各々根ノード、子ノード、孫ノードとする。アルゴリズムでは、矩形AとBを用いてBの仮想範囲矩形Vb を生成し、部分空間符号を更新する。更に矩形Vb とCを用いてCの仮想範囲矩形Vc を生成し、部分空間符号を更新することによって、木構造を構築する。
【0047】
次に、図8に示すフローチャートを参照して、部分空間符号の更新処理、すなわち符号更新アルゴリズムについて更に詳しく説明する。図8において、Icountは仮想部分の木構造において更新を必要とする部分木の数である。符号更新アルゴリズムは、更新を必要とする部分木各々に対して実行される。従って、符号更新に関するループ(ループ1)は、Icountで示される回数分繰り返すことになる。
【0048】
次に、ループ2においてノードTのVBRを求める。子ノードのVBRおよび部分空間符号は、現ノードのVBRと子ノードのMBRを基にして計算される。従って、Tに格納されており、かつ更新を必要とする子ノードの符号を計算、修正するためには、まずノードTのVBRを求める必要がある。ループ2までの処理は、根ノードから順に、下位ノードのVBR(Vとして表現)を求めていき、ノードTのVBRを求めるものである。
【0049】
ループ2を終えた後、まずノードT内において更新すべきエントリの符号のみを修正する。これは、TのVBRとTの子ノードのMBRを基にして計算されたものである。更に、仮想部分においてノードTをトップノードとする部分木内に位置するノードの符号を修正するため、すなわちノードT配下のノードに格納されている符号を修正するために部分木内符号修正プロシージャを実行する。
【0050】
部分木内符号修正プロシージャでは、格納されているすべてのエントリの符号を修正する。また、格納されているエントリの子ポインタが指し示すノードが、リーフノードであれば符号を修正して終了する。しかし、リーフノードでなければ、更に子ポインタが指し示すノード内に格納されている符号を修正するために、部分木内符号修正プロシージャを再帰的に実行する。部分木内符号修正プロシージャでは、上位ノードで生成された現ノードのVBRと現ノードが保有する子ノードのMBRから子ノードのVBRを求め、そして子ノードの部分空間符号を計算し、更新する。更に、子ノードのVBRをパラメータとして再度部分木内符号修正プロシージャを実行し、孫ノードのVBRを求め、そして孫ノードの部分空間符号を計算し更新を行う。
【0051】
次に、多次元空間データの探索アルゴリズムについて説明する。
【0052】
図10は、VBRを用いた近傍探索アルゴリズムを記述したものである。ここでgenVirtualBRは、矩形Aと部分空間符号SからVBR Vを生成する関数であり、以下のように示される。
【0053】
V=genVirtualBR(A,S)
このアルゴリズムにより、問い合わせ点Qを中心とした近傍オブジェクトをk個収集することができる。
【0054】
プロシージャsearchは、図10においてRootRectangleとして示されている根ノードのMBRをパラメータとして、再帰プロシージャcollectEntryを実行する。collectEntryでは、上記のgenVirtualBR関数を用いている。経由したノード毎に、パラメータとして引き継いだ範囲矩形と子ノードの部分空間符号に基づいて、各子ノードのVBR Vを生成し、Vによって枝刈り対象の判断を行う。枝刈り処理に関しては、upwardPruningがそれを実行するプロシージャである。枝刈り対象にならなかった子ノードについては最近傍オブジェクトを含んでいる可能性があり、子ノードのVBRをパラメータとして再度collectEntryを実行することにより、孫ノードを探索する。
【0055】
例として、図9を用いて説明する。予め基数4によってBとCの部分空間符号が作成されているものとする。Aの矩形位置とBの部分空間符号によってVBRVb を生成し、探索における枝刈り戦略に適用する。Vb が枝刈り対象にならなかった場合、更にVb の矩形位置とCの部分空間符号によってVBR Vc を生成する。生成したVBRに対して枝刈り戦略を適用する。部分空間符号を用いることにより、矩形位置の表現コストが低い分、厳密な矩形の位置情報を用いるよりも探索コストが低くなる。
【0056】
次に、図11に示すフローチャートを参照して、探索アルゴリズムについて更に詳しく説明する。このアルゴリズムでは、エントリ収集プロシージャを実行することにより問い合わせ点を中心とした近傍オブジェクトを木構造から収集し、結果出力する。探索アルゴリズムでは、仮想部分のノンリーフノードと、実部分のリーフノードを用いる。各々のノードでは、現ノードの矩形と子ノードの部分空間符号を基に子ノードの矩形を計算する。この繰り返しを仮想部分の根ノードから順に、子ノード、孫ノードに向かって深さ優先で実施する。そして、リーフノードに到達するとオブジェクトの位置情報を収集し、候補オブジェクトとする。また、枝刈り処理によって不必要なノードのアクセスを避けることができる。具体的には、候補オブジェクトと問い合わせ点との距離に対して、仮想範囲矩形と問い合わせ点との距離が大きければ、その仮想範囲矩形を表すノードにはアクセスしない。このように本アルゴリズムにより、効率的な近傍探索を実施することができる。
【0057】
エントリ収集プロシージャでは、まずパラメータとして引き継いだNにより指し示されているノードがリーフノードかノンリーフノードかを判定する。リーフノードであればノードに格納されているエントリを候補オブジェクトとして収集バッファに格納する。
【0058】
ノンリーフノードである場合、ループ1とループ2を実行する。ループ1では、ノードにおいてエントリとして格納されている部分空間符号とパラメータとして引き継いだ現ノードの矩形位置Rから子ノードの仮想範囲矩形Vを計算し、また問い合わせ点とVとの距離を求める。そして、子ポインタとともに、仮想範囲矩形と距離の計算結果を枝リストに設定する。仮想範囲矩形と距離の計算、および枝リストへの設定は、Nで示されるノードに格納されている全エントリに対して実施する。全エントリに対する計算が終了後、距離の昇順に枝リストを整列する。
【0059】
ループ2では、距離値の小さいリストから順にエントリ収集プロシージャを再帰的に実行する。その後、枝刈り処理によってアクセスする必要のない枝リストを削除する。
【0060】
次に、ディスクアクセス数を調査した実験結果を探索性能として示す。比較対象としてR* −treeを用い、また部分空間符号化法を適用した木構造において、その実験部分についてもR* −treeを用いる。実験条件については、次の通りである。
【0061】
(1)オブジェクトデータは、ランダム関数による点データを用い、データ集合サイズに関しては、10Kから100Kまで変化させて実験を実施した。
【0062】
(2)空間次元数は12である。
【0063】
(3)探索数は20である。
【0064】
このような実験条件でディスクアクセス数を調査した結果、図12に示すように点線で示す本発明の部分空間符号化法(Subspace Coding)を適用した木構造では実線で示す従来のR* −treeを用いた方法に比較して、ディスクアクセスが12%低減することがわかった。
【0065】
【発明の効果】
以上説明したように、本発明によれば、矩形位置を表現する座標位置データを相対的位置に基づく部分空間符号化により圧縮することにより、探索処理において少ないディスクアクセスでオブジェクトを検出することが可能となり、結果として探索性能の向上を実現することができる。
【0066】
また、本発明は多次元空間データとして表現することができる画像、映像、音声、文書等を対象とする広範囲な情報検索に適用可能である。
【図面の簡単な説明】
【図1】従来のR−tree構造を説明するための図である。
【図2】本発明において仮想範囲矩形VBRを用いた空間表現の例を示す図である。
【図3】本発明において部分空間符号の例を示す図である。
【図4】本発明に使用されるデータ構造を示す図である。
【図5】本発明の部分空間符号の構造を説明するための図である。
【図6】本発明のデータ構造の仮想部分におけるノード構成を示す図である。
【図7】本発明における更新アルゴリズムを説明するための図である。
【図8】図7に示す更新アルゴリズムを示すフローチャートである。
【図9】本発明における仮想範囲矩形VBRと部分空間符号の作成過程の例を説明するための図である。
【図10】本発明における近傍探索アルゴリズムを説明するための図である。
【図11】図10に示す近傍探索アルゴリズムを示すフローチャートである。
【図12】本発明の探索性能を従来のものと比較して示すグラフである。

Claims (2)

  1. ディスクに格納される複数の幾何学的オブジェクトを多次元空間上で表現される多次元ベクトルとして表す多次元空間データのデータ構造であって、
    前記多次元空間データは、
    前記多次元空間内の幾何学的オブジェクトが所定のエントリ数分それぞれ包含された複数のリーフノードを該多次元空間内の端点の絶対座標値によりそれぞれ表現される複数の最小範囲矩形により梱包して該複数のリーフノードを該複数の最小範囲矩形に対して連接させ、該複数の最小範囲矩形をさらに新たな最小矩形範囲により梱包して該複数の最小範囲矩形を該新たな最小範囲矩形に対して連接させることにより、前記新たな最小範囲矩形を含む複数の最小範囲矩形を複数のノンリーフノードとし前記複数のリーフノードと共に階層化して構成された木構造における、前記複数のリーフノードそれぞれの前記多次元空間内の絶対値座標と、前記木構造における前記複数のノンリーフノードに対応する複数の最小矩形範囲の端点の絶対値座標とから表現された実部分と、
    前記木構造における前記複数のノンリーフノードそれぞれに対応する複数の最小範囲矩形に対する相対的位置に基づく複数の仮想範囲矩形を木状に階層化した場合における前記複数の仮想範囲矩形により求められた複数の部分空間符号により表現された仮想部分とを備え、
    前記仮想部分は、
    前記各ノンリーフノードに連接される複数のノンリーフノードを複数の子ノードとし、連接元の各ノンリーフノードを各親ノードとした際に、該各親ノードに連接される子ノードの数であるエントリ数と、
    前記各親ノードに連接される複数の子ノードに対応する複数の仮想範囲矩形の始点および終点それぞれの前記多次元空間内の位置情報により求められた部分空間符号と、
    前記各親ノードに連接する複数の子ノードそれぞれの前記ディスク上の格納位置を表すノードポインタとから構成されており、
    前記多次元空間の次元数をnとし、前記各親ノードの最小範囲矩形の対角を成す2つの端点a、a´、および各親ノードに連接される各子ノードの最小範囲矩形の対角を成す2つの端点b、b´とし、a、a´、b、b´は、それぞれ下式(1)、(2)、(3)、(4):
    a=[φ1 ,φ2 ,…,φn ] ・・・(1)
    a′=[φ1 ′,φ2 ′,…,φn ′] ・・・(2)
    b=[ψ1 ,ψ2 ,…,ψn ] ・・・(3)
    b′=[ψ1 ′,ψ2 ′,…,ψn ′] ・・・(4)
    但し、φi ≦φi ′;i∈{1,2,…,n}
    をそれぞれ満足する場合における前記各子ノードの各仮想範囲矩形の始点および終点それぞれの前記多次元空間内の位置情報をV=v,v´とし、v、v´は、それぞれ下式(5)、(6):
    v=[r1 ,r2 ,…,rn ] ・・・(5)
    v′=[r1 ′,r2 ′,…,rn ′] ・・・(6)
    但し、ri ≦ri ′、かつ
    Figure 0003542732
    i=1,2,・・・,n
    を満足するものとし、
    ηとη´(η≦η´)を下式(9)および(10):
    Figure 0003542732
    を満足するi次元座標上の部分区間を表すq元符号とし、F(η,l)を符号長lとするηの2進表現として下式(11):
    Figure 0003542732
    を満足するものとした場合、
    前記各子ノードに対応する各仮想範囲矩形の始点および終点それぞれの位置情報により求められる前記多次元空間内の部分空間符号は、前記各子ノードの各仮想範囲矩形の位置情報Vを圧縮する2進符号S=(s,s´)として、下式(12)および(13):
    s=[F2 (η1 ,l),F2 (η2 ,l),…,F2 (ηn ,l)] ・・・(12)
    s′=[F2 (η1 ′,l),F2 (η2 ′,l),
    …,F2 (ηn ′,l)] ・・・(13)
    を満足するように設定されており、前記複数の子ノードに対応する複数の仮想範囲矩形の始点および終点それぞれの位置情報により求められる前記多次元空間内の部分空間符号は、前記複数の子ノードの始点および終点それぞれに対して設定された1次元目からn次元目までの次元毎の部分空間符号として構成され、
    前記複数の子ノードそれぞれの前記ディスク上の格納位置を表すノードポインタは、該複数の子ノードそれぞれの前記ディスク上の格納位置をノード毎に表すページアドレスおよびバイト変位により構成されたことを特徴とする多次元空間データ構造。
  2. 複数の幾何学的オブジェクトを多次元空間上で表現される多次元ベクトルとして表す多次元空間データのデータ構造を記録したディスクを含む記録媒体であって、
    前記多次元空間データは、
    前記多次元空間内の幾何学的オブジェクトが所定のエントリ数分それぞれ包含された複数のリーフノードを該多次元空間内の端点の絶対座標値によりそれぞれ表現される複数の最小範囲矩形により梱包して該複数のリーフノードを該複数の最小範囲矩形に対して連接させ、該複数の最小範囲矩形をさらに新たな最小矩形範囲により梱包して該複数の最小範囲矩形を該新たな最小範囲矩形に対して連接させることにより、前記新たな最小範囲矩形を含む複数の最小範囲矩形を複数のノンリーフノードとし前記複数のリーフノードと共に階層化して構成された木構造における、前記複数のリーフノードそれぞれの前記多次元空間内の絶対値座標と、前記木構造における前記複数のノンリーフノードに対応する複数の最小矩形範囲の端点の絶対値座標とから表現された実部分と、
    前記木構造における前記複数のノンリーフノードそれぞれに対応する複数の最小範囲矩形に対する相対的位置に基づく複数の仮想範囲矩形を木状に階層化した場合における前記複数の仮想範囲矩形により求められた複数の部分空間符号により表現された仮想部分とを備え、
    前記仮想部分は、
    前記各ノンリーフノードに連接される複数のノンリーフノードを複数の子ノードとし、連接元の各ノンリーフノードを各親ノードとした際に、該各親ノードに連接される子ノードの数であるエントリ数と、
    前記各親ノードに連接される複数の子ノードに対応する複数の仮想範囲矩形の始点および終点それぞれの前記多次元空間内の位置情報により求められた部分空間符号と、
    前記各親ノードに連接する複数の子ノードそれぞれの前記ディスク上の格納位置を表すノードポインタとから構成された構造を有し、
    前記多次元空間の次元数をnとし、前記各親ノードの最小範囲矩形の対角を成す2つの端点a、a´、および各親ノードに連接される各子ノードの最小範囲矩形の対角を成す2つの端点b、b´とし、a、a´、b、b´は、それぞれ下式(1)、(2)、(3)、(4):
    a=[φ1 ,φ2 ,…,φn ] ・・・(1)
    a′=[φ1 ′,φ2 ′,…,φn ′] ・・・(2)
    b=[ψ1 ,ψ2 ,…,ψn ] ・・・(3)
    b′=[ψ1 ′,ψ2 ′,…,ψn ′] ・・・(4)
    但し、φi ≦φi ′;i∈{1,2,…,n}
    をそれぞれ満足する場合における前記各子ノードの各仮想範囲矩形の始点および終点それぞれの前記多次元空間内の位置情報をV=v,v´とし、v、v´は、それぞれ下式(5)、(6):
    v=[r1 ,r2 ,…,rn ] ・・・(5)
    v′=[r1 ′,r2 ′,…,rn ′] ・・・(6)
    但し、ri ≦ri ′、かつ
    Figure 0003542732
    i=1,2,・・・,n
    を満足するものとし、
    ηとη´(η≦η´)を下式(9)および(10):
    Figure 0003542732
    を満足するi次元座標上の部分区間を表すq元符号とし、F(η,l)を符号長lとするηの2進表現として下式(11):
    Figure 0003542732
    を満足するものとした場合、
    前記各子ノードに対応する各仮想範囲矩形の始点および終点それぞれの位置情報により求められる前記多次元空間内の部分空間符号は、前記各子ノードの各仮想範囲矩形の位置情報Vを圧縮する2進符号S=(s,s´)として、下式(12)および(13):
    s=[F2 (η1 ,l),F2 (η2 ,l),…,F2 (ηn ,l)] ・・・(12)
    s′=[F2 (η1 ′,l),F2 (η2 ′,l),
    …,F2 (ηn ′,l)] ・・・(13)
    を満足するように設定されており、
    前記複数の子ノードに対応する複数の仮想範囲矩形の始点および終点それぞれの位置情報により求められる前記多次元空間内の部分空間符号は、前記複数の子ノードの始点および終点それぞれに対して設定された1次元目からn次元目までの次元毎の部分空間符号として構成され、
    前記複数の子ノードそれぞれの前記ディスク上の格納位置を表すノードポインタは、該複数の子ノードそれぞれの前記ディスク上の格納位置をノード毎に表すページアドレスおよびバイト変位により構成されたことを特徴とする多次元空間データ構造を記録した記録媒体。
JP00134599A 1999-01-06 1999-01-06 多次元空間データ構造および多次元空間データの更新および探索方法と前記多次元空間データ構造を記録した記録媒体および前記方法を実施するプログラムを記録した記録媒体 Expired - Lifetime JP3542732B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP00134599A JP3542732B2 (ja) 1999-01-06 1999-01-06 多次元空間データ構造および多次元空間データの更新および探索方法と前記多次元空間データ構造を記録した記録媒体および前記方法を実施するプログラムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00134599A JP3542732B2 (ja) 1999-01-06 1999-01-06 多次元空間データ構造および多次元空間データの更新および探索方法と前記多次元空間データ構造を記録した記録媒体および前記方法を実施するプログラムを記録した記録媒体

Publications (2)

Publication Number Publication Date
JP2000200342A JP2000200342A (ja) 2000-07-18
JP3542732B2 true JP3542732B2 (ja) 2004-07-14

Family

ID=11498916

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00134599A Expired - Lifetime JP3542732B2 (ja) 1999-01-06 1999-01-06 多次元空間データ構造および多次元空間データの更新および探索方法と前記多次元空間データ構造を記録した記録媒体および前記方法を実施するプログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP3542732B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4259864B2 (ja) * 2000-12-15 2009-04-30 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー エンティテイを検索する方法
CN110321353B (zh) * 2019-07-08 2022-12-13 中国地质大学(武汉) 一种基于半分解策略的多维空间数据索引方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1055366A (ja) * 1996-08-08 1998-02-24 Masao Sakauchi 画像データベース装置
JPH10301937A (ja) * 1997-04-23 1998-11-13 Nippon Telegr & Teleph Corp <Ntt> 多次元ベクトル空間内の近傍検索方法とそのプログラムの記録媒体
JP2000035965A (ja) * 1998-07-17 2000-02-02 Nippon Telegr & Teleph Corp <Ntt> 類似特徴量の検索方法及び装置及び類似特徴量の検索プログラムを格納した記憶媒体
JP4173246B2 (ja) * 1999-04-28 2008-10-29 株式会社リコー 類似画像表示方法及び類似画像表示処理プログラムを格納した記録媒体

Also Published As

Publication number Publication date
JP2000200342A (ja) 2000-07-18

Similar Documents

Publication Publication Date Title
JP7079786B2 (ja) アクセスユニットに構造化されたバイオインフォマティクスデータにアクセスするための方法、コンピュータ可読媒体、および装置
JP3849279B2 (ja) インデクス作成方法および検索方法
JP6028567B2 (ja) データ格納プログラム、データ検索プログラム、データ格納装置、データ検索装置、データ格納方法及びデータ検索方法
Guibas et al. Optimal shortest path queries in a simple polygon
Rácz nonordfp: An FP-growth variation without rebuilding the FP-tree.
US6745205B2 (en) Method of indexing and searching feature vector space
CA2598750A1 (en) Method and apparatus for efficient indexed storage for unstructured content
JP2006268866A (ja) ツリー構造の動映像索引記述子の生成方法
EP1207464A2 (en) Database indexing using a tree structure
CN108027816B (zh) 数据管理系统、数据管理方法及记录介质
JP2010277329A (ja) 近傍探索装置
JP3542732B2 (ja) 多次元空間データ構造および多次元空間データの更新および探索方法と前記多次元空間データ構造を記録した記録媒体および前記方法を実施するプログラムを記録した記録媒体
Ahmed et al. ISSP-tree: an improved fast algorithm for constructing a complete prefix tree using single database scan
KR100859710B1 (ko) 데이터에 대한 검색을 수행하기 위한 자료구조를 이용하여 데이터를 검색, 저장, 삭제하는 방법
CN110362669B (zh) 一种适用于关键字快速检索的方法
JP3708809B2 (ja) 多次元空間データ構造を記録した記録媒体、多次元空間データ更新方法、多次元空間データ探索方法および前記方法を実施するプログラムを記録した記録媒体
KR100902010B1 (ko) 연관 피드백을 포함한 내용 기반 멀티미디어 검색 방법
JP2000357168A (ja) 多次元空間検索における最小包囲領域作成方法、最小包囲球符号化方法、多次元空間データ構造、多次元空間データ更新方法および多次元空間データ探索方法と前記方法を実施するプログラムを記録した記録媒体および多次元空間データ構造を記録した記録媒体
Tzouramanis et al. Benchmarking access methods for time-evolving regional data
JP2001052024A (ja) 類似特徴量の検索方法及び装置及び類似特徴量の検索プログラムを格納した記憶媒体
Yu et al. Processing partially specified queries over high-dimensional databases
CN111222020A (zh) 一种对检索结果的知识演进算法
Sun et al. An index with caching mechanism for real-time processing system
US9350383B2 (en) Run total encoded data processing
US20240119027A1 (en) Compression and search process on a data set based on multiple strategies

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20031226

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040316

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040401

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090409

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090409

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100409

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100409

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110409

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120409

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130409

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140409

Year of fee payment: 10

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term