Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

Bi u di n tri th c s d ng lu t

Chng 6

GV: Nguy n Th Trc Vin Email: nttvien@dit.hcmut.edu.vn

Tri th c khai bo v th t c.
Bi u di n d ng khai bo:

L m t d ng bi u di n m tri th c c c t nhng s s d ng n khng c ni ra. s d ng n: b sung n v i m t chng trnh c t ci g s c lm v i tri th c v b ng cch no. V d :
D ng c t : m t t p cc logical assertion B phn gi i c th c hi u nh l cch lm vi c v i t p assertions trn.

T p assertions nh l DATA vo B PHN GI I.

M t cch nhn khc: t p assertions trn nh l m t PROGRAM. : Lu t gip cho s suy di n x y ra. Cc con ng suy di n khc nhau t START GOAL (hay ng c l i) c quan ni m nh con ng th c thi trong chng trnh.
Chng 06. Side 2

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Tri th c khai bo v th t c (tt)


Bi u di n d ng th t c:

L m t d ng bi u di n m thng tin i u khi n c n thi t cho vi c s d ng tri th c c nhng vo chnh tri th c . s d ng c n: b sung n v i m t b thng d ch c th th c thi cc ch th ch a trong tri th c. S khc nhau c b n gi a tri th c th t c v khai bo n m ch : Thng tin i u khi n n m u ?

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 3

L p trnh logic
L m u l p trnh quan ni m r ng: logical assertions nh l cc chng trnh. H th ng i n hnh: PROLOG. Prolog Program = {Horn Clauses}

Horn clauses: h u nh ch c 1 positive literal. Nh: P, P v Q, P Q. Prolog progam: decidable. C u trc i u khi n cho prolog program: Prolog interpreter. Prolog interpreter: k t h p backward reasoning + dept-first with backtracking.

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 4

L p trnh logic (tt.)


Logic v Prolog:

Logic: X: pet(X) ^ small(X) apartmentpet(X) X: cat(X) v dog(X) pet(X) X: poodle(X) dog(X) ^ small(X) poodle(fluffy) Prolog: apartmentpet(X) :- pet(X) , small(X). pet(X):- cat(X). pet(X):- dog(X). dog(X) :- poodle(X). small(X) :- poodle(X). poodle(fluffy).
Chng 06. Side 5

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

L p trnh logic (tt.)


Logic v Prolog: M t vi s khc nhau v m t c php.
1.

2.

3.

Trong logic: bi n c l ng t t ng minh. Trong prolog, l ng t b qua v c hi u ng m qua cch thng d ch. Prolog cch cch c tn bi n v h ng b ng k t u l HOA v TH NG tng ng. Logic, cho php cc ton t t ng minh: ^ v v. Prolog th ^ c thay b i d u ph y (,) . Cn v c vi t nh m t clause khc (m t s version l d u ;) Logic, p q ngha l p suy ra q. Cn prolog, i u c vi t l: q:- p. Prolog: Logic: p(X) :- q(X, Y) X: Y: q(X, Y)

p(X)
Chng 06. Side 6

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

L p trnh logic (tt.)


Prolog:
Th vi t ra th t c a prolog trong ch ng minh goal sau: ?- apartment(X).

Th vi t ra clause trong prolog tng ng: (cho d u ) X: dog(X) cat(X)

Khng c m t clause t ng minh no !!! Gi i quy t: ng m nh l s thi u v ng cc assertion. c bi t d i chi n l c: NEGATION AS FAILURE. Prolog: fail cho goal sau: ?- cat(fluffy).

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 7

L p trnh logic (tt.)


Prolog:

Prolog tr v fail cho c tr ng h p goal sau: ?- cat(mittens). M c d chng trnh hon ton cha bi t (cha c ngha) mittens l g.

nh

Chi n l c negation as failure yu c u gi thi t: CLOSED WORLD ASSUMPTION. Ngha l, t t c cc assertions l true u c ch a trong c s tri th c ho c c d n ra t cc assertions l true c ch a trong c s tri th c.

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 8

L p trnh logic (tt.)


H p nh t: Occur check
UNIFY(knows(x, x), knows(y, mother(y))) = FAIL

Unsound: Occur-check b
test p(x,x) p(x,f(x))

i trong khi h p nh t

Incomplete: Backward chaining with depth-first search


p(x,y) q(x,y) p(x,x) q(x,y) q(y,x)
Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o Chng 06. Side 9

Forward versus Backward reasoning


Forward : b t

u t tr ng thi

u (start state).

B c u tin: xy d ng cy c g c l node b t u. B c k ti p: Tm ki m lu t (php ton) m v tri tho c v i node g c c a cy. p d ng ton t m r ng cy. B c k ti p: Tm ki m lu t m v tri tho c v i cc nodes pht sinh tr c . R i p d ng lu t m r ng cy n khi no g p goal.

Backward : b t

u t tr ng thi ch (goal state).

B c u tin: xy d ng cy c g c l node ch. B c k ti p: Tm ki m lu t (php ton) m v ph i tho c v i node g c c a cy. p d ng ton t m r ng cy. B c k ti p: Tm ki m lu t m v ph i tho c v i cc nodes pht sinh tr c . R i p d ng lu t m r ng cy n khi no g p tr ng thi u.
Chng 06. Side 10

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Forward versus Backward reasoning


Ch n forward vs backward:

T p TT u nhi u hay ch nhi u? i t t p t sang t p nhi u. H ng no (to start | to goal) h s nhnh c a KGTT l n hn. Ch n i theo h ng c h s nhnh nh hn. Chng trnh c c n s gi i thch c a qu trnh tm ? N u v y theo h ng g n v i cch suy ngh c a con ng i. Ki u s ki n no x y ra trong qu trnh gi i ton? N u l s ki n m i pht sinh forward. N u l m t query backward.

Cng c th k t h p hai h ng forward v backward b ng cch hai con ng g p nhau KGTT.


Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

gi a

Chng 06. Side 11

Forward versus Backward reasoning


Lu t trong k thu t: th ng c hai l p, m i l p tng ng m t ki u m ho tri th no .

Forward rules: M ho tri th c

d dng p ng l i khi c facts m i.

Backwward rules: M ho tri th c b ng cch no th c thi cc goal c th .

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 12

Forward versus Backward reasoning


Backward-chaining rule system:

Prolog l 1 v d . T t: cho vi c gi i quy t cc bi ton h ng goal (goaldirected) ng d ng: c th xy d ng h th ng H i- p theo backward chaining. Cc rules cng c th c b sung thm h s tin cy (chng sau). So trng: V TRI c a lu t c so trng v i ph n m t cc tr ng thi. Qu trnh so trng: ph c t p hn backward. C ch so trng ph i ngn c tr ng h p lu t v a m i c p d ng.

Forward-chaining rule system:


K t h p Forward and backward.


Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o Chng 06. Side 13

Matching so trng
Gi i bi ton b ng cch tm ki m, v cc h th ng d a vo lu t (rule-based system):
B ng cch no ch n ra m t lu t (php ton) th i i m no ? dng t i m t

Matching. Matching:

So trng tr ng thi bi ton t i th i i m no v i v tri (backward/forward rules) c a lu t lu t c th dng c t i th i i m = lu t c v tri tho mn qu trnh so trng.

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 14

Matching so trng (tt.)


Matching:

L i gi i n gi n: FOR each rule:


Compare: ( i u ki n u c a lu t) VS (Tr ng thi bi ton) Extract: cc lu t tho qu trnh so trng.

H n ch :
Khng hi u qu .

V d cho tr ng h p: backward rules (Prolog) v Forward rules (Clips)

S so trng khng ph i lc no cng r rng, khi c lin qua bi n, ngha, ...

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 15

Matching so trng (tt.)


Indexing:
Rule 0 Rule 1 Rule k Tr ng thi bi ton

Rule n

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 16

Matching so trng (tt.)


Indexing:

V d : bi ton chi c vua


C u hnh X0 C u hnh X0

1 Bn c Hi n t i Tnh ra c: k

C u hnh X1

C u hnh X1

C u hnh Xn C u hnh Xn

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 17

Matching so trng (tt.)


Indexing:

Ch dng c trong tr ng h p so trng chnh xc. Th c t th cc lu t th ng c vi t d i d ng t ng qut, nh Clips ch ng h n, v do v y Indexing khng th lm c. Tr ng h p backward rules nh PROLOG th c th dng Indexing.

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 18

Matching so trng (tt.)


So trng v i bi n:

Th c t cc lu t th ng vi t d ng t ng qut. Ngha l, i u ki n u c a lu t ch nu ra nh ng tnh ch t m tr ng thi bi ton ph i tho th lu t ny m i c th dng c. Khi hi n th c th ng th ng i vi t lu t dng bi n trong tr ng h p ny. Gi i thu t ng nh t (chng tr c): c th dng so trng 1 ph n t trong i u ki n u v 1 ph n t trong m t bi ton; ngha l so trng 1-1. Backward-chaining system: s d ng DFS l a ch n t ng lu t ring r v c th p d ng gi i thu t so trng 1-1. Forward-chaining system: c th s d ng gi i thu t RETE nh l gi i thu t so trng many-many.

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 19

Matching so trng (tt.)


So trng v i bi n:

Th c t cc lu t th ng vi t d ng t ng qut. Ngha l, i u ki n u c a lu t ch nu ra nh ng tnh ch t m tr ng thi bi ton ph i tho th lu t ny m i c th dng c. Khi hi n th c th ng th ng i vi t lu t dng bi n trong tr ng h p ny. Gi i thu t ng nh t (chng tr c): c th dng so trng 1 ph n t trong i u ki n u v 1 ph n t trong m t bi ton; ngha l so trng 1-1. Backward-chaining system: s d ng DFS l a ch n t ng lu t ring r v c th p d ng gi i thu t so trng 1-1. Forward-chaining system: c th s d ng gi i thu t RETE nh l gi i thu t so trng many-many.

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 20

10

Matching so trng (tt.)


RETE: (many-many) t ng:

Khi p d ng 1 lu t th th ng lu t ch thay i 1 ph n tr ng thi bi ton. RETE duy tr m t m ng c a cc i u ki n u cc lu t, s d ng s thay i xc nh lu t c dng. S tng t v m t c u trc cc rules. Cc rules khc nhau c th c chung 1 ph n i u ki n u no . V do ch nn so trng cho ph n chung ny 1 l n cho cc lu t.
V d : baodom(X):- thu(X), ho_meo(X), an_thit(X), co_dom(X). ho(X):- thu(X), ho_meo(X), an_thit(X), co_dom(X), so_van(X).
Ph n chung

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 21

Matching so trng (tt.)


RETE: (many-many) t ng:

Khi t ng ph n i u ki n u tho c v i m t , nhng khng tho mn s rng bu c c a bi n. RETE khng c n thi t so trng l it u m i l n g p m t i u ki n m i no ctho . V d :
M t : son(Bill, Bob) son(Mary, Joe). Lu t: son(X,Y) ^ son(Y,Z)

grandfather(X,Z). c tho nhng ton b

T ng ph n: son(X,Y), son(Y,Z) c th ph n u c a lu t th khng.


Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 22

11

Matching so trng (tt.)


Matching x p x :

Trong tr ng h p ny: M t lu t c th c p d ng khi ph n i u ki n c so trng x p x . Nh tr ng h p hi u ti ng ni:

u c a n ch

Lu t: m t d ng sng c a cc m (a, e...) Tn hi u th c: th ng c nhi u bi n th do cch ni, mi tr ng Ch c n so trng x p x tm ra m l t ng c th so trng c.

Tm hi u thm ELIZA.

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 23

Matching so trng (tt.)


Phn gi i s

ng

ng x y ra khi m t t p cc rules c th dng c t i m t th i i m qua cc cch so trng ni trn. Ch n 1 lu t l gi i quy t ng . 3 cch ti p c n chnh: Gn Gn Gn hi n. u tin d a trn rule c tho . u tin d a trn i t ng c tho . u tin d a trn hnh ng m rule c tho s th c

1. 2. 3.

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 24

12

Matching so trng (tt.)


Gn u tin d a trn rule c tho .
2 cch ph bi n: D a vo th t xu t hi n c a rule, nh c PROLOG th c hi n. Cho php gn rule 1 gi tr u tin m t cch t ng minh, nh c CLIPS th c hi n. Trong tr ng h p ny lu t c th hn c gn u tin cao hn. Cng vi c xc nh lu t no c th hn cng c th c xc nh b i my.

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 25

Matching so trng (tt.)


Gn

u tin d a trn

i t ng c tho .

M i i t ng c th c gn 1 u tin khc nhau. Nh ELIZA: gn 1 t kho v i m t m c quan tr ng khc nhau. Ch n lu t d a vo t kho quan tr ng no c th tho c.

Gn

u tin d a trn Tr ng thi.

Nhi u lu t c th dng. Th th c thi t ng lu t xem xt k t qu . Dng hm heuristic o l ng k t qu v l a 1 lu t tng ng Gi ng nh tm ki m heuristic.

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 26

13

Tri th c i u khi n
Tri th c i u khi n:

Gip cho qu trnh tm n goal nhanh hn, th ng c g i l: meta-knowledge. Nhi u d ng:


Tri th c nh gi tr ng thi no l t t hn trong t p tr ng thi no . Tri th c v lu t c p d ng t i m t th i i m no . Tri th c v th t subgoal i ti p. Tri th c v chu i lu t c th dng c.

Sinh vin tm hi u thm v SOAR, CLIPS, PRODIGY.

Khoa Cng Ngh Thng Tin i H c Bch Khoa Tp. HCM Bi Gi ng Mn: Tr tu nhn t o

Chng 06. Side 27

14

You might also like