並列論理型言語によるプログラミング方法論の基礎的な研究として、本年度はいくつかの探索問題について問題の再帰的な記述および制約条件の付加を行い、そこから並列プログラムを導出する研究を行った。研究内容は2つに分けることができる。一つは部分問題の解を並列なプロセスと考え、問題の再帰的な記述をボトムアップに見ることにより小さな部分問題の解からより大きな部分問題の解の構成を行うプログラムを通信を行う並列プロセスとして定義することである。これにはいくつかの多様性が存在するものの、機械的な操作でプログラミングが行えることがわかった。もう一つは、問題に付加された制約条件を部分問題に対応するプロセスとは独立の並列プロセスとして定義し、プロセス間で通信されるデ-タから条件を満たさない要素を取り除くフィルタ-として実現することである。これによって、見通しよくかつ並列度の高いプログラミングを行うことができることがわかった。また、具体的な応用として自然言語解析のための並列構文解析システムを開発しており、本年度は、自然言語に現れる熟語などの特徴的な構文構造の解析に対して並列プログラムの考え方が有効に働くことを示した。一方、自然言語の解析については瞹眛性の解消が重要な研究課題であり、そのためには文の局所的な情報だけでなく全体の構造や文を越えた文脈に関する情報を参照する必要が生じる。このための材細として、本研究で考えている並列プログラムにおける大局的な情報の参照を行う機能が重要であると考え、その基礎的な研究も合わせて行った。
|