Presentation is loading. Please wait.

Presentation is loading. Please wait.

小テスト3 以下を、前向き推論、後向き推論の2方法で示せ。

Similar presentations


Presentation on theme: "小テスト3 以下を、前向き推論、後向き推論の2方法で示せ。"— Presentation transcript:

1 小テスト3 以下を、前向き推論、後向き推論の2方法で示せ。
講義への出席率が良ければ、AかBかC 講義への出席率が悪ければ、BかCかD 小テストの成績が良ければ、1ランク上 小テストの成績が普通であれば、ランク変わらず。 小テストの成績が悪ければ、1ランク下 勉強すれば、小テストの成績は良くなる。 講義を聴いていれば、小テストの成績は良くなる。 理解の仕方が良ければ、小テストの成績は良くなる。 勉強もせず、講義も聴いていなければ小テストの成績は非常にわるい。

2 文法 If 判定部 Then 行動部; (1) 記述要素 変数は大文字、定数は数字または小文字で始まる文字列(アトム)
(1) 記述要素 変数は大文字、定数は数字または小文字で始まる文字列(アトム) (2) 判定部 ①ワーキングエリアとマッチングする要素の列 ②各要素はAnd条件で結合 ③non(Alfa)はAlfaという要素がワーキングエリアに存在しないことを示す。 (例1) a(b), c(d) : ワーキングエリアにa(b)があり、かつc(d)がある。 (例2) a(X) : a(X)とマッチングするXがワーキングエリアに存在する。 (3) 行動部 ①ワーキングエリアに挿入する要素の列を記述。 ②終わらせるときはExit ③eval(式)は式を評価することを示す。 ④remove(Alfa)はAlfaという要素を削除する。 (例1) a(b), c(d) : ワーキングエリアにa(b)とc(d)を挿入する。 (例2) remove(a(X) ) : a(X)とマッチングした要素を削除する。 (4) ワーキングエリアの初期値は次の形式で指定 Initial Working Area  行動部;行動部; end Initial;

3 前向き推論 Initial Work Area(A,X,Y,Z) 成績(0), 出席率(A), 勉強(X), 講義(Y),理解方法(Z);
end Initial; If non(flag0), 出席率(良い) Then flag0, ランク(2); If non(flag0), 出席率(悪い) Then flag0, ランク(1); If non(flag1), 勉強(する),成績(X) Then flag1, remove(成績(X)),成績(eval(X+1)); If non(flag1), 勉強(しない) Then flag1; If non(frag2), 講義(聴く) ,成績(X) Then flag2, remove(成績(X)),成績(eval(X+1)); If non(flag2), 講義(聴かない) Then flag2; If non(flag3), 理解方法(良い) ,成績(X) Then flag3, remove(成績(X)),成績(eval(X+1)); If non(flag4), 理解方法(悪い) Then flag3; If flag0,flag1,flag2,flag3, ランク(Y), 成績(X),X>2 Then 結果(eval(Y+1)), exit; If flag0,flag1,flag2,flag3, ランク(Y), 成績(X),X=2 Then 結果(Y), exit; If flag0,flag1,flag2,flag3, ランク(Y), 成績(X),X<2 Then 結果(eval(Y-1)), exit;

4 後向き推論 Initial Work Area(A) 成績(0), ランク(A); end Initial;
If ランク(a) Then tmp(a, 出席率(良い), 成績(良い)); If ランク(b) Then tmp(b, 出席率(良い), 成績(普通)); If ランク(c) Then tmp(c, 出席率(良い), 成績(悪い)); If ランク(b) Then tmp(b, 出席率(悪い), 成績(良い)); If ランク(c) Then tmp(c, 出席率(悪い), 成績(普通)); If ランク(d) Then tmp(d, 出席率(悪い), 成績(悪い)); If tmp(X ,Y , 成績(良い)) Then 理由(X,Y,成績(良い), 勉強(する), 講義(聴く), 理解方法(良い)),exit; If tmp(X ,Y ,成績(普通)) Then 理由(X,Y,成績(普通), 勉強(する), 講義(聴く), 理解方法(悪い)),exit; If tmp(X , Y ,成績(普通)) Then 理由(X,Y,成績(普通), 勉強(する), 講義(聴かない), 理解方法(良い)),exit; If tmp(X , Y ,成績(普通)) Then 理由(X,Y,成績(普通), 勉強(しない), 講義(聴く), 理解方法(良い)),exit; If tmp(X , Y ,成績(悪い)) Then 理由(X,Y,成績(悪い), 勉強(する), 講義(聴かない), 理解方法(悪い)),exit; If tmp(X , Y ,成績(悪い)) Then 理由(X,Y,成績(悪い), 勉強(しない), 講義(聴く), 理解方法(悪い)),exit; If tmp(X , Y ,成績(悪い)) Then 理由(X,Y,成績(悪い), 勉強(しない), 講義(聴かない), 理解方法(良い)),exit ; If tmp(X , Y ,成績(悪い)) Then 理由(X,Y,成績(悪い), 勉強(しない), 講義(聴かない), 理解方法(悪い)),exit;


Download ppt "小テスト3 以下を、前向き推論、後向き推論の2方法で示せ。"

Similar presentations


Ads by Google