研究概要 |
本年度は昨年度た引き続き,単一の文字列を生成するチョムスキー標準形の文法である直線的プログラム(Straight line program, SLP)によって圧縮表現された文字列を対象に研究を行った.主な成果は以下の通りである. 与えられた文字列に対して,その文字列に含まれるすべての長さqの部分文字列(q-グラム)のそれぞれの出現頻度は,その文字列の性質を捉える有用な特徴である.そのため,q-グラム頻度は文字列の分類やパターン発見においてよく使われており,これを高速・省領域で計算できることには大きな意義がある.本研究では(1)SLPで表現された文字列上の(重複する出現を数える)q-グラム頻度問題に対して,昨年度開発したアルゴリズムを理論・実用の両面で更に大きく改良することに成功した.具体的には,長さNのテキスト文字列Tを表現する大きさnのSLPと整数qに対して昨年度のアルゴリズムがO(qn)時間・領域であったのに対し,新しいアルゴリズムはO(N-α)時間・領域である.ここでαはqとSLP表現の圧縮性能に関連した非負整を表しており,N-α≦qnが成り立つ.計算上機実験において、新しいアルゴリズムはほとんどの場合に昨年度のアルゴリズムよりも高速であること,また,昨年度のアルゴリズムと違い,qが大きい場合でも非圧縮のテキスト文字列からq-グラム頻度を求めるO(N)アルゴリズムと比べて大幅に遅くなることはなく,場合によってはより高速になることを示した.(2)SLPで表現された文字列上の(重複する出現を数えない)q-グラム非重複頻度問題に対しO(q^2n)時間O(qn)領域アルゴリズムを開発し,この問題に対してq>2の場合の初めての多項式時間アルゴリズムを与えた.
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
1: 当初の計画以上に進展している
理由
圧縮文字列上でのq-グラム頻度を求める効率の良いアルゴリズムの開発に成功したごとで,当初の目的の1つである「高速・省メモリな文字列パターン発見・文字列データ分類アルゴリズムの開発」をある程度達成することが出来た.また,まだ論文として成果をまとめてはいないものの,今までの研究で得られた知見や成果から,当初は扱いが難しいと考えていたLZ系の圧縮法等とSLP表現との新たな関係が見えて来ており,今後研究を更に大きく展開できそうであるため.
|
今後の研究の推進方策 |
今まで行ってきた研究を継続すると共に,更に次の2点についても取り組む.1.様々なアルゴリズムによって得られる文字列の圧縮表現を,表現を陽に展開すること無くかつ効率良く相互に変換する手法の研究.2.本研究課題で開発したアルゴリズムをより広範囲に実データへ適用すること,また,来年度が本研究課題の最終年度であることを踏まえ,作成したソフトウェア等の研究成果を公開するための準備を進める.
|