KIEFのデモンストレーション
概要
KIEFによる設計はプラガブル・メタモデル機構を用いて行う。機能仕様から設計をはじめる場合には次の4つの手順にしたがって設計を行う。
-
FBSモデラによる機能設計
FBSモデラでは、設計仕様として与えられた要求機能を入力とし、機能分解、機能とその実現構造の対応付けなどの過程を経ることにより、要求機能を実現する構造の設計を支援する。
-
メタモデル機構による生起する可能性のある物理現象の導出
FBSモデラで設計した実現構造を初期モデルとし、メタモデル機構はFBSモデラでは考えられていない生起する可能性のある物理現象の導出を行う。
-
外部モデルの作成
次に、設計者は、設計対象を様々な観点から評価するために、外部モデルを作成する。この外部モデル作成手順では、まず、メタモデルから、外部モデル作成に関連する概念を取り出し、外部モデル作成のための概念モデルを作成する。さらに、この概念モデルに基づき、定量情報などを付け加えたり、モデルライブラリからモデル要素を取りこんだりして、外部モデルを作成する。詳しくは、こちらを参照してください。
-
外部モデルによる評価
作成した外部モデルに基づき、設計対象を評価する。
設計対象をさらに評価したい場合には、最後の2つの段階を繰り返す。
FBSモデラによる機能設計
機能分解
要求機能の入力は、FBSモデラの右上に示されている機能プロトタイプのリストから要求機能を選択することによって行われる。。この要求機能については複数選択することも可能である。この時、これらの要求機能は左のグラフ表示部の上部にあるFunctionLayerと書かれている領
域に表示される(図1)。
図1:要求機能の入力
次に要求機能をサブ機能に分解し機能階層構造を作る。この操作は機能プロトタイプの機能展開知識を利用する。ユーザは展開すべき機能を選択し、グラフの中ボタンメニューからfunction→developを選択することにより、機能展開知識に記述されている展開候補の一覧を得る。この中から展開候補を一つ選択すると、選択した機能がサブ機能へと分解される(図2)。このグラフで、太いリンクは機能のスーパーサブの関係を示している。
この機能分解の過程は、機能展開知識を使わずにユーザが関係をつけることによっても実行可能である。
図2: 機能階層構造の構築
機能と実現構造の対応付け
機能の階層構造を作成した後、機能を実現する構造を得るために、最も分解されたサブ機能についてフィジカル・フィーチャを対応付ける。このフィジカル・フィーチャの対応付けには機能プロトタイプの知識を用いて行うが、その方法には次の2つがある。一つめは、機能を実現するフィジカル・フィーチャに関する知識を使う方法であり、もう一つは機能を実現する状態遷移に関する知識とQPAS(Qualitative
Process Abduction System)を用いることにより、状態遷移を実現するフィジカル・フィーチャを導出し、対応づける方法である。
まず、機能を実現するフィジカル・フィーチャに関する知識を使う場合について述べる。この方法では、最初にフィジカル・フィーチャと対応づける機能をグラフ上から選択する。ここで、対応づけるフィジカル・フィーチャを選択する事により、フィジカルフィーチャとの対応付けがなされる(図3)。
図3: フィジカル・フィーチャの選択
次に、QPASを用いたフィジカル・フィーチャの導出について述べる。この方法も、対象となる機能をグラフ上から選択し対応付け可能な
状態遷移と対応付ける。この操作は、QPASインターフェースにより支援される(図4)。QPASでは、各々のパラメータの遷移について、それを実現するフィジカル・フィーチャを選択し、最終的に望む全てのパラメータ遷移を実現するフィジカル・フィーチャの組合わせを行う。I
図4:QPASインターフェース
デリゲーション
この様にして、各々のサブ機能に対し、フィジカル・フィーチャの対応付けを終えると、各々のフィジカル・フィーチャを組み合わせて全体の構造を構築する必要がある。FBSモデラではこの操作をデリゲーションと呼ぶ操作によって行う。これは、各々のフィジカル・フィーチャで共有されるべき実体に対し、各々の実体の属する概念のクラスを上位階層とする概念を作成し、その実体により、異なるフィジカル・フィーチャを結び付ける操作である。この例では
図3
の``Shaft'' と ``BallScrew'' を同一のものとみなすために、この2つのノードをデリゲーションした
(see 図5).
Figure 5: Example of Delegation
メタモデル機構による生起する可能性のある物理現象の導出
FBSモデラの情報をプラガブル・メタモデル機構に反映させ、初期のメタモデルとする。次に、メタモデル機構のフィジカル・フィーチャを用
いた物理現象の導出を行い、FBSモデラの段階では予期していなかった現象を導出する。
外部モデルの作成と評価
定性推論システムによる挙動推論
-
定性推論システム用の外部モデルの作成
最初に、定性推論システム用に関連する物理現象概念や属性の概念を選択し、モデルライブラリを適用することにより、パラメータネットワークモデルを作成する(図6
)。
図6: 定性推論システム用のパラメータネットワークモデル
-
パラメータネットワークの確定
パラメータネットワークから孤立しているパラメータはシミュレーションに対して意味がないので、それを除外し、パラメータネットワークのモデルを確定する。設計者は、必要に応じてこのモデルをエディットすることが出来る。
-
定性量空間の編集
各々のパラメータについて定性量空間の編集(ランドマークの追加など)を行う。
-
挙動シミュレーション
挙動シミュレーションでは、各々のパラメータの初期値から、パラメータネットワークと定性量空間の情報に基づき、その遷移を推論する。この推論はエンビジョニングと呼ばれるもので、
図7にその結果を示す。
-
シミュレーション結果をメタモデル機構に伝播
図7:エンビジョニングの結果
FBSモデラによる評価
FBSモデラでは、この定性推論システムの挙動シミュレーションの結果を用いて設計解の評価が可能である。
FBSモデラでは、評価に先立ち、評価の対象とする最上位 の機能を選択する必要がある。また、各々の機能について、その機能が発現しているかどうかをチェックするためのパラメータの情報を入力する。この例では、機能
``exMove (table)'' について、テーブルの位置が初期位置(zero)より動けば良いと考え、``(Table
position) > zero''と記述した。この条件は ``(実体の名前 パラメータの名前)
* パラメータの値'' (* は>, <, =のいずれか) の形式で表現され、1つ以上の条件が記述可能である。
これらの情報をもとに、機能の評価が行われる。この評価は次の基準を順番に適用することによって
行われる。
-
対応する挙動遷移が起きているかどうか
機能に対して記述されているパラメータの条件と挙動シミュレーションの結果を比較する。
-
対応する物理現象が全て実現されているかどうか
機能に対応するフィジカル・フィーチャに含まれる現象が全て起きているかどうかを調べる。
-
サブ機能が実現されているかどうか
サブ機能が実現されていない場合には、全体機能は実現されていないと考える。
この結果として、機能が実現されている機能については白色で、機能が実現されていないものは黒色で、積極的に実現されているという情報がない場合には灰色で表現される。実現されていない機能については、簡単な説明が表示される。また、初期のFBSモデラでは考慮されていなかった現象が起きている場合には、そのノードを副作用としてハッチングして表示する(図8)。
図8:FBSモデラによる整合性チェック
設計結果が満足行かない場合は、設計者は機能構造を修正したり、実現構造を変更することにより、機能仕様を満たす設計解を作成する。
はりモデルによる評価
FBSモデラによる評価結果として、``GravityForce''や``TransmittedDownwardForce''
といった副作用が見つかったので、設計者がボールねじの変形に注目し、はりモデルによる評価を考えたとする。
設計者ははりモデルを作成するにあたり、まず、定性的な概念モデルを作成する(図9)。
図9:定性的なはりモデル
しかし、この段階では、定量的な情報が存在しないので、この定性的なモデルから直接定量的なモデルを作成することが出来ない。そこで、メタモデル機構は、これらの情報を扱うことが出来る別の外部モデラを検索する。この場合は、2次元のドローイングを扱うことの出来る2Ddrawモデラとソリッドモデラが検索される。
さらに、設計者がこれらのモデラを使って情報を入力する(図
10)。また、はりの軸方向を自動で決定するのは困難であるため、設計者がその軸方向を問い合わせ、その入力をうけて定量的なはりのモデルを作成する。
図10:形状モデル ((a)ソリッドモデル (b) 2D draw)
Mathematicaを使って作成した、せん断応力ダイアグラムと曲げモーメントダイアグラムを図11に
示す。
図11: はりモデルの計算結果
(a)せん断応力ダイアグラム (b) 曲げモーメントダイアグラム
KIEFのメインページに戻る