## コンパイル

コンパイル 機能は、コンパイル・ツールボタン（図1）を押すか、ネットワーク・メニューの実行項目を選択して、編集モード から起動できます。

図 1: ネットワーク・ウィンドウ ツールバーのコンパイル・ツールボタン

実行モードからコンパイル機能を起動することもできます。 ここでは、ネットワーク・メニューの実行モード項目が、再コンパイル項目に置き換わります。

編集モードからコンパイル機能を起動した場合、現在のネットワークがコンパイルされ、実行モードに入ります。

実行モードからコンパイル機能が起動された場合、現在のネットワークが再コンパイル （これは便利なときがあります）されます。コンパイル・ボタンの色が変わると、それは、ネットワークのクラスまたはネットワーク中のインスタンス・ノードのクラスになされたあらゆる変更を捕捉するために、ネットワークの再コンパイルが必要なことを 示しています。

Hugin ネットワークのコンパイルは、プロパゲーションが実行される ジャンクション・ツリーへのネットワークの変換を変形を伴います。

ネットワーク・メニューのネットワークのプロパティ 項目から、Huginでのコンパイルの特定のプロパティを指定できます。ネットワーク・プロパティ・ダイアログボックスのコンパイル・タブを図2 に示します。

図 2: コンパイル・タブを表示しているネットワークのプロパティ・ダイアログボックス

一般的に、Huginネットワークの最善の内部表現（ジャンクション・ツリー表現）を見つけるのは、NP hard （経済的な時間内では不可能と言われる数学的方法）です。それは、基本的に、グラフを最適に三角化するのがNP hard だからです。t

しかしながら、多くの場合、実際のところ、最適な（準最適な）三角化が発見できます。5.4以降のHugin Decision Engine は、多くの場合で、他の（ヒューリスティックな）三角化手法を用いて生成されるよりもかなり複雑さの少ないジャンクション・ツリーの結果を得る最適三角化の手法を提供しています。最適三角化法は、最小セパレータの探索によって動作します。いくつかのネットワークでは、これが、極めて最適なセパレータを結果します。最適三角化の探索の実行時間をコントロールするには、 "最適三角化" ラジオ・ボタンの次のテキスト・フィールドに、生成する最小セパレータの最大数を指定することができます。

コンパイル・タブ中に一覧された他の三角化手法は、さまざまなヒューリスティック手法で、多くの場合、素早く動作しますが、上記のように、最適からは程遠い複雑なジャンクション・ツリーを産み出します。 ヒューリスティックのどれかが、手にしているネットワークによっては、よりよい場合もあります - したがって、現在のヒューリスティックな三角化手法では性能がよくないと思われる場合は、他のヒューリスティックを試すか、最適三角化法を試してください。

最終的に、三角化はファイルから読み込む（すなわち、ファイルからノードの消去順序を読み込む）ことができます。

メモリに保存 操作は、メモリに初期クリーク・ポテンシャルのコピーを格納します。これは、多重プロパゲーションの効率を改善するであろう、より高速な初期化プロセスを含意します（たとえば、分析ウィザードの部品として）。

最適化機能を用いて空間を節約できることがよくあります。これらは、コンパイル・タブの下半分で起動されます。通常の圧縮と近似を伴う圧縮のいずれかを選ぶことができます。後者は精度が落ちますが、前者は落ちません。

近似を選択した場合、どれぐらい精度の損失を許容できるかを指定するイプシロン値を指定しなければなりません。イプシロン値が大きいほど、精度が落ちます（これについての詳細は、近似の節を参照）。

Back