by 小山明雄
思考空間を実現するのが「青葉」パッケージです。少しずつコーディングを開始しました。今回はそのモジュール構成設計をしていきたく思います。
和葉の文解析結果の一つとして、文をイメージで捉えるというものがあります。このイメージを管理、処理するのが思考空間で「青葉」です。イメージは3次元のマップ空間で、そこに名詞はオブジェクト、動詞はオブジェクトの形状、位置の時間変化として管理されます。形容詞とか副詞とかは属性として各オブジェクトから参照されます。一応属性もオブジェクトです。動作もオブジェクトです。格は時間とか空間とかの関係ですので、マップで管理されます。ただ、目的格は属性として管理します。”with”とか”by”とかは、”using”とか”caused”とかの動作と動作の目的格として表現できるでしょう。詳細は調べていかねばなりませんが、格を属性で表現するのは、目的格だけだと感じます。
人とか動物、木とか川とかは、Bodyとして管理します。構造は分割の最小単位のBodyを組み合わせていきます。組み合わせの接合部はマップで表現し、各Bodyにマップを設定し、そのマップにどの方向で他のBodyが接続するかという風に構造オブジェクトを表現します。ここのところは、Java3Dに倣っています。このまま、青葉をJava3Dで作れればいいのですが、表示結果をプログラムがイメージマップとして利用できないこと、イメージマップに情報を設定できないことから、青葉は新規にコーディングして創っていかねばなりません。
次に、モジュール構成を示します。
(1) ModelComposer
Bodyとかステージを作ります。また、オブジェクトの属性とかオブジェクト間の関係とかを設定します。連想とかパターンマッチングでオブジェクトデータを取り込んで来るのです。
(2) ModelTransfer
Bodyを回転、移動処理するモジュールです。
(3) ModelMorpho
Bodyの変形をします。知識にあるBody変形データを次々に取り出します。
(4) ModelAnalizer
Bodyの形体データからイメージを作りだします。
(5) ModelImageAnalizer
Bodyのイメージを解析します。
多くのオントロジーに関するデータを得るために、オンデマンドでイメージを解析します。解析部分はフォーカス機能で特定して、高速に解析を行えるようにします。
(6) HitAnalizer
オブジェクト群の当たり判定をします。
(7) GravityControler
重力の作用を管理します。
おわり