研究概要 |
データストリームを扱うための基本的なデータ構造およびアルゴリズムについて研究した.まずデータを圧縮したまま高速に取り出せるデータ構造を開発した.長さnの文字列に対し,そのk次マルコフエントロピーをHkとすると文字列をnHk+o(n)ビットに圧縮でき,かつ任意の指定された位置の文字を定数時間で復元できることを示した.さらにこれは1文字だけでなく連続するlog nビットも定数時間で復元することができる.これは圧縮されていない文字列を読み込む際の計算量と同じであり,つまりデータを圧縮することによる代償がないということを意味する.これは文字列に対する圧縮法であるが,任意のデータは文字列とみなすことができるため,汎用的な圧縮法と言える. 次に,実数データの量を削減するためのアルゴリズムを開発した.データに特徴がある場合,特に1次元実数データで山型になっている場合にそれを最小の2乗誤差で近似する折れ線を求める線型時間アルゴリズムを開発した.これによりデータの削減ができ,またデータに含まれるエラーを無視することができる.また,1次元実数列を0,1に丸め,全ての部分区間でのL1誤差を1未満にするアルゴリズムを開発した. ネットワークを探索するアルゴリズムを開発した.記憶を必要としない単純なアルゴリズムでネットワークの全点をその数に比例するステップ数で回れるようにネットワークにラベルをつけられることを示した.また,複数の進化系統ネットワークを統合するアルゴリズムを開発した.
|