私はプロローグで新しいです。確率論的推論のための定性的確率論的ネットワーク(QPN)について学びました。 QPNは、各影響が定性的なサインに関連付けられている統計的変数のセット間の確率的影響のグラフィカルモデルです。プロローグ内の符号伝播アルゴリズム
入力:質的確率ネットワーク、Q
出力:QPNに推論するために使用されるアルゴリズムは以下の通りである符号伝搬アルゴリズムである、ネットワーク内の各ノード上の証拠ノードOの影響のサイン
procedure PropagateObservation(Q, O, sign, Observed):
for each Vi ϵ V (G)
do sign [Vi] ← ‘0’;
PropagateSign (Ø, O, sign).
procedure PropagateSign(trail, to, messagesign):
sign[to] ← sign [to] messagesign; *//update the sign of to
trail ← trail {to}; *// add to to the set of visited nodes
for each active neighbour Vi of to given {O} Observed
do linksign ← sign of (induced) influence between to and Vi;
messagesign ← sign [to] linksign;
if Vi ϵ trail and sign [Vi] ≠ sign [Vi] messagesign
then PropagateSign (trail, Vi, messagesign).
V =変数/ノード O =証拠ノード
このアルゴリズムは、定性的な符号乗算と加算テーブル(申し訳ありませんが、私はここでそれらのテーブルを置くために、問題をした)で動作します。 私はこのアルゴリズムをプロローグに書きたい(私は現在swi-prologを使っている)。残念ながら、 私は初心者であり、プロローグでプログラムできるかどうかわからないので、プロローグでこのアルゴリズムをプログラムする方法を知りません。私の質問があまり明確でない場合は申し訳ありません。私がもっと説明する必要があるかどうかを教えてください。たぶんあなたのおかげです。ありがとう。
大丈夫、提案に感謝します。 – glow123