Professional Documents
Culture Documents
Giai Thuat Co So Va Nang Cao
Giai Thuat Co So Va Nang Cao
Giai Thuat Co So Va Nang Cao
III.9. Bn lun v A*
C nhiu bi ton cho n nay vn cha tm ra mt cch gii theo kiu thut ton
v cng khng bit l c tn ti thut ton hay khng.
C nhiu bi ton c thut ton gii nhng khng chp nhn c v thi
gian gii theo thut ton qu ln hoc cc iu kin cho thut ton kh p
ng.
C nhng bi ton c gii theo nhng cch gii vi phm thut ton nhng vn
chp nhn c.
1
TTNT
T nhng nhn nh trn, ngi ta thy rng cn phi c nhng i mi cho khi nim
thut ton. Ngi ta m rng hai tiu chun ca thut ton: tnh xc nh v tnh ng
n. Vic m rng tnh xc nh i vi thut ton c th hin qua cc gii thut
quy v ngu nhin. Tnh ng ca thut ton by gi khng cn bt buc i vi mt s
cch gii bi ton, nht l cc cch gii gn ng. Trong thc tin c nhiu trng hp
ngi ta chp nhn cc cch gii thng cho kt qu tt (nhng khng phi lc no cng
tt) nhng t phc tp v hiu qu. Chng hn nu gii mt bi ton bng thut ton ti
u i hi my tnh thc hin nhiu nm th chng ta c th sn lng chp nhn mt gii
php gn ti u m ch cn my tnh chy trong vi ngy hoc vi gi.
Cc cch gii chp nhn c nhng khng hon ton p ng y cc tiu chun ca
thut ton thng c gi l cc thut gii. Khi nim m rng ny ca thut ton
m ca cho chng ta trong vic tm kim phng php gii quyt cc bi ton c
t ra.
Thut gii Heuristic l mt s m rng khi nim thut ton. N th hin cch gii bi
ton vi cc c tnh sau:
Gii bi ton theo thut gii Heuristic thng d dng v nhanh chng
a ra kt qu hn so vi gii thut ti u, v vy chi ph thp hn.
C nhiu phng php xy dng mt thut gii Heuristic, trong ngi ta thng
da vo mt s nguyn l c bn nh sau:
Nguyn l tham lam (Greedy): Ly tiu chun ti u (trn phm vi ton cc)
ca bi ton lm tiu chun chn la hnh ng cho phm vi cc b ca tng
bc (hay tng giai on) trong qu trnh tm kim li gii.
2
TTNT
Bi ton: Hy tm mt hnh trnh cho mt ngi giao hng i qua n im khc nhau, mi
im i qua mt ln v tr v im xut pht sao cho tng chiu di on ng cn i l
ngn nht. Gi s rng c con ng ni trc tip t gia hai im bt k.
Bn c th quan st hnh sau thy c qu trnh chn la. Theo nguyn l Greedy, ta
ly tiu chun hnh trnh ngn nht ca bi ton lm tiu chun cho chn la cc b. Ta
hy vng rng, khi i trn n on ng ngn nht th cui cng ta s c mt hnh trnh
ngn nht. iu ny khng phi lc no cng ng. Vi iu kin trong hnh tip theo th
thut gii cho chng ta mt hnh trnh c chiu di l 14 trong khi hnh trnh ti u l 13.
Kt qu ca thut gii Heuristic trong trng hp ny ch lch 1 n v so vi kt qu ti
u. Trong khi , phc tp ca thut gii Heuristic ny ch l 0(n2).
3
TTNT
Mt cng ty nhn c hp ng gia cng m chi tit my J1, J2, Jm. Cng ty c n my
gia cng ln lt l P1, P2, Pn. Mi chi tit u c th c gia cng trn bt k my
no. Mt khi gia cng mt chi tit trn mt my, cng vi s tip tc cho n lc hon
thnh, khng th b ct ngang. gia cng mt vic J1 trn mt my bt k ta cn dng
mt thi gian tng ng l t1. Nhim v ca cng ty l phi lm sao gia cng xong ton
b n chi tit trong thi gian sm nht.
4
TTNT
Chng ta xt bi ton trong trng hp c 3 my P1, P2, P3 v 6 cng vic vi thi gian l
t1=2, t2=5, t3=8, t4=1, t5=5, t6=1. ta c mt phng n phn cng (L) nh hnh sau:
Theo hnh ny, ti thi im t=0, ta tin hnh gia cng chi tit J2 trn my P1, J5 trn P2 v
J1 ti P3. Ti thi im t=2, cng vic J1 c hon thnh, trn my P3 ta gia cng tip chi
tit J4. Trong lc , hai my P1 v P2 vn ang thc hin cng vic u tin mnh S
phn vic theo hnh trn c gi l lc GANTT. Theo lc ny, ta thy thi
gian hon thnh ton b 6 cng vic l 12. Nhn xt mt cch cm tnh ta thy rng
phng n (L) va thc hin l mt phng n khng tt. Cc my P1 v P2 c qu nhiu
thi gian rnh.
5
TTNT
Nu gi T* l thi gian gia cng xong n chi tit my do thut gii Heuristic a ra v
T0 l thi gian ti u th ngi ta chng minh c rng
, M l s my
6
TTNT
Qua cc phn trc chng ta tm hiu tng quan v tng ca thut gii Heuristic
(nguyn l Greedy v sp th t). Trong mc ny, chng ta s i su vo tm hiu mt s
k thut tm kim Heuristic mt lp bi ton rt quan trng v c nhiu ng dng trong
thc t.
tin li cho vic trnh by, ta hy dnh cht thi gian lm r hn "i tng" quan
tm ca chng ta trong mc ny. Mt cch chung nht, nhiu vn -bi ton phc tp
u c dng "tm ng i trong th" hay ni mt cch hnh thc hn l "xut pht t
mt nh ca mt th, tm ng i hiu qu nht n mt nh no ". Mt pht biu
khc thng gp ca dng bi ton ny l :
Cho trc hai trng thi T0 v TG hy xy dng chui trng thi T0, T1, T2, ..., Tn-1, Tn =
TG sao cho :
Trong , Ti thuc tp hp S (gi l khng gian trng thi state space) bao gm tt c
cc trng thi c th c ca bi ton v cost(Ti-1, Ti) l chi ph bin i t trng thi Ti-
1 sang trng thi Ti. D nhin, t mt trng thi Ti ta c nhiu cch bin i sang trng
thi Ti+1. Khi ni n mt bin i c th t Ti-1 sang Ti ta s dng thut ng hng i
(vi ng ni v s la chn).
Hnh : M hnh chung ca cc vn -bi ton phi gii quyt bng phng php tm kim li gii. Khng
gian tm kim l mt tp hp trng thi - tp cc nt ca th. Chi ph cn thit chuyn t trng thi T
7
TTNT
ny sang trng thi Tk c biu din di dng cc con s nm trn cung ni gia hai nt tng trng cho
hai trng thi.
Trong tm kim theo chiu su, ti trng thi (nh) hin hnh, ta chn mt trng thi k
tip (trong tp cc trng thi c th bin i thnh t trng thi hin ti) lm trng thi
hin hnh cho n lc trng thi hin hnh l trng thi ch. Trong trng hp ti trng
thi hin hnh, ta khng th bin i thnh trng thi k tip th ta s quay lui (back-
tracking) li trng thi trc trng thi hin hnh (trng thi bin i thnh trng thi hin
hnh) chn ng khc. Nu trng thi trc ny m cng khng th bin i c
na th ta quay lui li trng thi trc na v c th. Nu quay lui n trng thi khi
u m vn tht bi th kt lun l khng c li gii. Hnh nh sau minh ha hot ng
ca tm kim theo chiu su.
8
TTNT
Hnh : Hnh nh ca tm kim chiu su. N ch lu "m rng" trng thi c chn m khng "m
rng" cc trng thi khc (nt mu trng trong hnh v).
Ngc li vi tm kim theo kiu chiu su, tm kim chiu rng mang hnh nh ca vt
du loang. T trng thi ban u, ta xy dng tp hp S bao gm cc trng thi k tip
(m t trng thi ban u c th bin i thnh). Sau , ng vi mi trng thi Tk trong
tp S, ta xy dng tp Sk bao gm cc trng thi k tip ca Tk ri ln lt b sung cc
Sk vo S. Qu trnh ny c lp li cho n lc S c cha trng thi kt thc hoc S khng
thay i sau khi b sung tt c Sk.
9
TTNT
Hm Heuristic l g ?
10
TTNT
T tng
b. nh gi trng thi Tk mi :
11
TTNT
M gi
IF Ti TG THEN BEGIN
END;
ELSE BEGIN
Better:=FALSE;
ELSE BEGIN
Ti :=Tk; Better:=TRUE;
END;
END;
END; {WHILE}
END; {ELSE}
END;{WHILE}
12
TTNT
G:=TRUE
ELSE
G:=FALSE;
13
TTNT
G:=TRUE
ELSE
G:=FALSE;
Bi ton ny n gin thut gii leo i c th hot ng tt. Tuy nhin, khng phi
lc no ta cng may mn nh th!
III.3.2. Leo i dc ng
T tng
1) Nu trng thi bt u cng l trng thi ch th thot v bo l tm c li gii. Ngc li, t
trng thi hin hnh (Ti) l trng thi khi u (T0)
2) Lp li cho n khi t n trng thi kt thc hoc cho n khi (Ti) khng tn ti mt trng thi k tip
(Tk) no tt hn trng thi hin ti (Ti)
14
TTNT
t Ti = Tkmax
M gi
Ti := T0;
Stop :=FALSE;
IF Ti TG THEN BEGIN
<tm c kt qu >;
STOP :=TRUE;
END;
ELSE BEGIN
Best:=h(Ti);
Tmax := Ti;
Best :=h(Tk);
Tmax := Tk;
END;
END;
IF (Best>Ti) THEN
Ti := Tmax;
ELSE BEGIN
<khng tm c kt qu >;
STOP:=TRUE;
15
TTNT
END;
END;{WHILE STOP}
III.3.3. nh gi
16
TTNT
Phng n u tin l kt hp leo i v quay lui. Ta s quay lui li cc trng thi trc
v th i theo hng khc. Thao tc ny hp l nu ti cc trng thi trc c mt
hng i tt m ta b qua trc . y l mt cch kh hay i ph vi cc im
cc i a phng. Tuy nhin, do c im ca leo i l "bc sau cao hn bc trc"
nn phng n ny s tht bi khi ta xut pht t mt im qu cao hoc xut pht t mt
nh i m n c li gii cn phi i qua mt "thung lng" tht su nh trong
hnh sau.
17
TTNT
+ Ly mt khi nh mt ct v t n ln nh mt ct khc
18
TTNT
T1 TA TB TC
19
TTNT
n y, chng ta hiu r bn cht ca hai thut gii tip cn theo chin lc tm kim
chiu su. Hiu qu ca c hai thut gii leo i n gin v leo i dc ng ph thuc
vo :
20
TTNT
21
TTNT
ci t cc thut gii theo kiu tm kim BFS, ngi ta thng cn dng 2 tp hp sau
:
2. Cho n khi tm c trng thi ch hoc khng cn nt no trong OPEN, thc hin :
2.a. Chn trng thi tt nht (Tmax) trong OPEN (v xa Tmax khi OPEN)
22
TTNT
BFS kh n gin. Tuy vy, trn thc t, cng nh tm kim chiu su v chiu rng,
him khi ta dng BFS mt cch trc tip. Thng thng, ngi ta thng dng cc phin
bn ca BFS l AT, AKT v A*
Thng thng, trong cc phng n tm kim theo kiu BFS, tt f ca mt trng thi
c tnh da theo 2 hai gi tr m ta gi l l g v h. h chng ta bit, l mt c
lng v chi ph t trng thi hin hnh cho n trng thi ch (thng tin tng lai). Cn
g l "chiu di qung ng" i t trng thi ban u cho n trng thi hin ti (thng
tin qu kh). Lu rng g l chi ph thc s (khng phi chi ph c lng). d hiu,
bn hy quan st hnh sau :
Thut gii AT
2. Cho n khi tm c trng thi ch hoc khng cn nt no trong OPEN, thc hin :
23
TTNT
2.a. Chn trng thi (Tmax) c gi tr g nh nht trong OPEN (v xa Tmax khi
OPEN)
Thm Tk vo OPEN.
Thut gii AKT m rng AT bng cch s dng thm thng tin c lng h. tt ca
mt trng thi f l tng ca hai hm g v h.
2. Cho n khi tm c trng thi ch hoc khng cn nt no trong OPEN, thc hin :
2.a. Chn trng thi (Tmax) c gi tr f nh nht trong OPEN (v xa Tmax khi
OPEN)
Tnh h(Tk)
Thm Tk vo OPEN.
24
TTNT
1. Trng thi cha ca trng thi Ti (k hiu l Cha(Ti) : cho bit trng thi dn n trng
thi Ti. Trong trng hp c nhiu trng thi dn n Ti th chn Cha(Ti) sao cho chi ph
i t trng thi khi u n Ti l thp nht, ngha l :
2. Danh sch cc trng thi k tip ca Ti : danh sch ny lu tr cc trng thi k tip
Tk ca Ti sao cho chi ph n Tk thng qua Ti t trng thi ban u l thp nht. Thc
cht th danh sch ny c th c tnh ra t thuc tnh Cha ca cc trng thi c lu
tr. Tuy nhin, vic tnh ton ny c th mt nhiu thi gian (khi tp OPEN, CLOSE
c m rng) nn ngi ta thng lu tr ra mt danh sch ring. Trong thut ton sau
y, chng ta s khng cp n vic lu tr danh sch ny. Sau khi hiu r thut ton,
bn c c th d dng iu chnh li thut ton lu tr thm thuc tnh ny.
2.b. Ngc li, chn Tmax trong OPEN sao cho f(Tmax) l nh nht
t g(Tk) = g(Tk)
Tnh li f(Tk)
t Cha(Tk) = Tmax
25
TTNT
t g(Tk) = g(Tk)
Tnh li f(Tk)
t Cha(Tk) = Tmax
Thm Tk vo OPEN
C mt s im cn gii thch trong thut gii ny. u tin l vic sau khi tm thy
trng thi ch TG, lm sao xy dng li c "con ng" t T0 n TG. Rt n
gin, bn ch cn ln ngc theo thuc tnh Cha ca cc trng thi c lu tr trong
CLOSE cho n khi t n T0. chnh l "con ng" ti u i t TG n T0 (hay ni
cch khc l t T0 n TG).
Mt ln na, xin nhc li rng, bn c th cho rng tp OPEN lu tr cc trng thi "s
c xem xt n sau" cn tp CLOSE lu tr cc trng thi " c xt n ri".
26
TTNT
Chng ta s chn hm h chnh l khong cch ng chim bay cho trong bng trn v
hm chi ph cost(Ti, Ti+1) chnh l chiu di con ng ni t thnh ph Ti v Ti+1.
27
TTNT
Ban u :
CLOSE {}
OPEN {}
h(Sibiu) 253
g(Sibiu) g(Arad)+cost(Arad,Sibiu)
0+140 140
f(Sibiu) g(Sibiu)+h(Sibiu)
140+253 393
Cha(Sibiu) Arad
h(Timisoara) 329
0+118 118
118+329 447
28
TTNT
Cha(Timisoara) Arad
h(Zerind) 374
0+75 75
f(Zerind) g(Zerind)+h(Zerind)
75+374 449
Cha(Zerind) Arad
29
TTNT
h(Arad) 366
g(Arad) g(Sibiu)+cost(Sibiu,Arad)
140+140 280
f(Arad) g(Arad)+h(Arad)
280+366 646
h(Fagaras) 178
239+178 417
h(Oradea) 380
140+151 291
291+380 671
h(R.Vilcea) 193
140+80 220
30
TTNT
220+193 413
h(Sibiu) 253
31
TTNT
220+80 300
f(Sibiu) g(Sibiu)+h(Sibiu)
300+253 553
h(Craiova) 160
220+146 366
f(Craiova) g(Fagaras)+h(Fagaras)
366+160 526
h(Pitesti) 98
220+97 317
f(Pitesti) g(Oradea)+h(Oradea)
317+98 415
32
TTNT
h(Bucharest) 0
33
TTNT
317+100 418
f(Bucharest) g(Fagaras)+h(Fagaras)
417+0 417
Cha(Bucharest) Pitesti
Cha(R.Vilcea) Sibiu
Cha(Sibiu) Arad
34
TTNT
Trong trng hp ny, chng ta vn tin hnh bc 1 nh trn. Sau khi thc hin hin
bc 2 (m rng Sibiu), chng ta c cy tm kim nh hnh sau. Lu l c thm nhnh
TP.
35
TTNT
h(Pitesti) 98
240+75 315
36
TTNT
n y ta thy rng, ban u thut gii chn ng i n Pitesti qua R.Vilcea. Tuy
nhin, sau , thut gii pht hin ra con ng n Pitesti qua TP l tt hn nn n s s
dng con ng ny. y chnh l trng hp 2.b.iii.2 trong thut gii.
Bc sau, chng ta s chn m rng Pitesti nh bnh thng. Khi ln ngc theo thuc
tnh Cha, ta s c con ng ti u l Arad, Sibiu, TP, Pitesti, Bucharest.
III.9. Bn lun v A*
37
TTNT
Nu h lun bng 0 mi trng thi (tr v thut gii AT) th qu trnh tm kim s c
iu khin hon ton bi gi tr g. Ngha l thut gii s chn i theo nhng hng m s
tn t chi ph/bc i nht (chi ph tnh t trng thi u tin n trng thi hin ang xt)
bt chp vic i theo hng c kh nng dn n li gii hay khng. y chnh l hnh
nh ca nguyn l tham lam (Greedy).
Nu chi ph t trng thi sang trng thi khc lun l hng s (d nhin lc ny h lun
bng 0) th thut gii A* tr thnh thut gii tm kim theo chiu rng! L do l v tt c
nhng trng thi cch trng thi khi u n bc u c cng gi tr g v v th u c
cng f v gi tr ny s nh hn tt c cc trng thi cch trng thi khi u n+1 bc.
V nu g lun bng 0 v h cng lun bng 0, mi trng thi ang xt u tng ng
nhau. Ta ch c th chn bng trng thi k tip bng ngu nhin !
38
TTNT
Hnh : h nh gi thp h
Hnh : h nh gi cao h
n y chng ta kt thc vic bn lun v thut gii A*, mt thut gii linh ng,
tng qut, trong hm cha c tm kim chiu su, tm kim chiu rng v nhng
39
TTNT
nguyn l Heuristic khc. Chnh v th m ngi ta thng ni, A* chnh l thut gii tiu
biu cho Heuristic.
Fk=2+1+3+1+0+1+2+2=12
40
TTNT
Chng ta bit qua 4 kiu tm kim : leo o (L), tm theo chiu su (MC), tm theo
chiu rng (BR) v tm kim BFS. Bn kiu tm kim ny c th c xem nh 4 thi
cc ca khng gian lin tc bao gm cc chin lc tm kim khc nhau. gii thch
iu ny r hn, s tin hn cho chng ta nu nhn mt chin lc tm kim li gii di
hai chiu sau :
Chiu kh nng quay lui (R): l kh nng cho php quay li xem xt nhng
trng thi xt n trc nu gp mt trng thi khng th i tip.
Theo hng R, chng ta thy leo o nm mt thi cc (n khng cho php quay li
nhng trng thi cha c xt n), trong khi tm kim quay lui v BFS mt thi
cc khc (cho php quay li tt c cc hng i cha xt n). Theo hng S chng ta
thy leo o v ln ngc nm mt thi cc (ch tp trung vo mt phm vi hp trn tp
cc trng thi mi to ra t trng thi hin ti) v BFS nm mt thi cc khc (trong khi
BF xem xt ton b tp cc con ng c, bao gm c nhng con ng mi c to
ra cng nh tt c nhng con ng khng c xt ti trc y trc mi mt quyt
nh).
Nhng thi cc ny c trc quan ha bng hnh trn. Vng in m biu din mt mt
phng lin tc cc chin lc tm kim m n kt hp mt s c im ca mt trong ba
thi cc (leo o, chiu su, BFS) c c mt ha hp cc c tnh tnh ton ca
chng.
41
TTNT
42
TTNT
43
TTNT
44
TTNT
I. M U
45
TTNT
To ra nhng chic my tnh c kh nng nhn thc, suy lun v phn ng.
Nhn thc c hiu l kh nng quan st, hc hi, hiu bit cng nh nhng kinh
nghim v th gii xung quanh. Qu trnh nhn thc gip con ngi c tri thc. Suy lun
l kh nng vn dng nhng tri thc sn c phn ng vi nhng tnh hung hay nhng
vn - bi ton gp phi trong cuc sng. Nhn thc v suy lun t a ra nhng
phn ng thch hp l ba hnh vi c th ni l c trng cho tr tu ca con ngi. (D
nhin cn mt yu t na l tnh cm. Nhng chng ta s khng cp n y!). Do
, cng khng c g ngc nhin khi mun to ra mt chic my tnh thng minh, ta cn
phi trang b cho n nhng kh nng ny. C ba kh nng ny u cn n mt yu t c
bn l tri thc.
Di gc nhn ca tp sch ny, xy dng tr tu nhn to l tm cch biu din tri thc,
tm cch vn dng tri thc gii quyt vn v tm cch b sung tri thc bng
cch "pht hin" tri thc t cc thng tin sn c (my hc).
46
TTNT
Nh bc hc ni ting Karan Sing tng ni rng "Chng ta ang ngp chm trong bin
thng tin nhng li ang kht tri thc". Cu ni ny lm ni bt s khc bit v lng
ln v cht gia hai khi nim thng tin v tri thc.
Trong ng cnh ca ngnh khoa hc my tnh, ngi ta quan nim rng d liu l cc
con s, ch ci, hnh nh, m thanh... m my tnh c th tip nhn v x l. Bn thn d
liu thng khng c ngha i vi con ngi. Cn thng tin l tt c nhng g m con
ngi c th cm nhn c mt cch trc tip thng qua cc gic quan ca mnh (khu
gic, v gic, thnh gic, xc gic, th gic v gic quan th 6) hoc gin tip thng qua
cc phng tin k thut nh tivi, radio, cassette,... Thng tin i vi con ngi lun c
mt ngha nht nh no . Vi phng tin my tnh (m c th l cc thit b u ra),
con ngi s tip thu c mt phn d liu c ngha i vi mnh. Nu so v lng,
d liu thng nhiu hn thng tin.
Trong ton hc :
Bn thn tng con s ring l nh 1, 1, 3, 5, 2, 7, 11, ... l cc d liu. Tuy nhin, khi t
chng li vi nhau theo trt t nh di y th gia chng bt u c mt mi lin h
Trong vt l :
I U R
47
TTNT
5 10 2
2.5 20 8
4 12 3
7.3 14.6 2
Hng ngy, ngi nng dn vn quan st thy cc hin tng nng, ma, rm v chun
chun bay. Rt nhiu ln quan st, h c nhn xt nh sau :
Chun chun bay thp th ma, bay cao th nng, bay va th rm.
48
TTNT
Tri thc th tc : thng dng din t phng php, cc bc cn tin hnh, trnh
t hay ngn gn l cch gii quyt mt vn . Thut ton, thut gii l mt dng ca tri
thc th tc.
Tri thc m t : cho bit mt i tng, s kin, vn , khi nim, ... c thy, cm
nhn, cu to nh th no (mt ci bn thng c 4 chn, con ngi c 2 tay, 2 mt,...)
Tri thc Heuristic : l mt dng tri thc cm tnh. Cc tri thc thuc loi ny thng
c dng c lng, phng on, v thng c hnh thnh thng qua kinh nghim.
Trc khi tr li cu hi trn, bn hy th ngh xem, liu mt chng trnh gii phng
trnh bc 2 c th c xem l mt chng trnh c tri thc hay khng? ... C ch ! Vy
th tri thc nm u? Tri thc v gii phng trnh bc hai thc cht c m ha
di dng cc cu lnh if..then..else trong chng trnh. Mt cch tng qut, c th khng
nh l tt c cc chng trnh my tnh t nhiu u c tri thc. chnh l tri thc
ca lp trnh vin c chuyn thnh cc cu lnh ca chng trnh. Bn s thc mc
"nh vy ti sao a tri thc vo my tnh li l mt vn ? (v t trc ti gi chng
ta , ang v s tip tc lm nh th m?)". ng nh th tht, nhng vn nm
ch, cc tri thc trong nhng chng trnh truyn thng l nhng tri thc "cng", ngha l
n khng th c thm vo hay iu chnh mt khi chng trnh c bin dch.
Mun iu chnh th chng ta phi tin hnh sa li m ngun ca chng trnh (ri sau
bin dch li). M thao tc sa chng trnh th ch c nhng lp trnh vin mi c th
lm c. iu ny s lm gim kh nng ng dng chng trnh (v a s ngi dng
bnh thng u khng bit lp trnh).
49
TTNT
Bn cn phi bit rng, t ra l cho n thi im bn ang c cun sch ny, con ngi
vn cha th tm ra mt kiu biu din tng qut cho mi loi tri thc!
Bi ton 2 : Cho bit mt s yu t ca tam gic (nh chiu di cnh v gc, ...). Hy
tnh cc yu t cn li.
Hai bi ton u l hai bi ton kh tiu biu, thng c dng minh ha cho nt p
ca phng php gii quyt vn bi ton bng cch chuyn giao tri thc cho my tnh.
Nu s dng thut ton thng thng, chng ta thng ch gii c mt s trng hp
c th ca cc bi ton ny. Thm ch, nhiu ngi khi mi tip cn vi 2 bi ton ny
cn khng tin l n c th hon ton c gii mt cch tng qut bi my tnh!. Bi ton
s 3 l mt minh ha p mt cho k thut gii quyt vn "v m", ngha l ta ch cn
m t cc bc gii quyt mc tng qut cho my tnh m khng cn i vo ci t c
th.
Bi ton 1 s c gii quyt bng cch s dng cc lut dn xut (lut sinh). Bi ton 2
s c gii quyt bng mng ng ngha v bi ton 3 s gii quyt bng cng c frame.
y chng ta cng nhau tm hiu cch gii bi ton u tin. Hai bi ton k tip s
c gii quyt ln lt cc mc sau.
Mc y bnh 7
50
TTNT
ht nc trong bnh 5
Mc y bnh 7
Tuy nhin, vi nhng s liu khc, bn phi "my m" li t u tm ra quy trnh
nc. C th, mi mt trng hp s c mt cch nc hon ton khc nhau. Nh
vy, nu c mt ai yu cu bn a ra mt cch lm tng qut th chnh bn cng s
lng tng (d nhin, ngoi tr trng hp bn bit trc cch gii theo tri thc m
chng ta sp sa tm hiu y!).
x = z hoc y = z
Qu trnh gii c thc hin bng cch xt ln lt cc lut sau, lut no tha mn th s
c p dng. Lc ny, cc lut chnh l cc "kinh nghim" hay tri thc m ta chuyn
giao cho my tnh. Sau khi p dng lut, trng thi ca bi ton s thay i, ta li tip tc
51
TTNT
xt cc lut k tip, nu ht lut, quay tr li lut u tin. Qu trnh tip din cho n khi
t c iu kin kt thc ca bi ton.
Ba lut ny c m t nh sau :
(L3) Nu bnh X khng y v bnh Y khng rng th hy trt nc t? bnh Y sang bnh X
(cho n khi bnh X y hoc bnh Y ht nc).
...
x := 0; y := 0;
IF (x = Vx) THEN x := 0;
x := x + k;
y := y - k;
END;
END;
...
Vx = 3, Vy = 4 v z = 2
Ban u : x = 0, y = 0
52
TTNT
Cch gii quyt vn theo kiu ny khc so vi cch gii bng thut ton thng thng
l chng ta khng a ra mt trnh t gii quyt vn c th m ch a ra cc quy tc
chung chung (di dng cc lut), my tnh s da vo (p dng cc lut) t xy
dng mt quy trnh gii quyt vn . iu ny cng ging nh vic chng ta gii ton
bng cch a ra cc nh l, quy tc lin quan n bi ton m khng cn phi ch ra
cch gii c th.
BEGIN
CASE L OF
1 : DK := (x = Vx);
2 : DK := (y = 0);
3 : DK := (y>0);
END;
END;
53
TTNT
BEGIN
CASE L OF
1 : x := 0;
2: y := Vy;
3 : BEGIN
k := min(Vx-x,y);
x := x+k;
y := y-k;
END;
END;
END;
CONST SO_LUAT = 3;
BEGIN
END;
END.
on chng trnh chnh cng thi hnh bng cch ln lt xt qua 3 lnh IF nh chng
trnh u tin. Tuy nhin, y, biu thc iu kin c thay th bng hm DK v cc
hnh ng ng vi iu kin c thay th bng th tc ThiHanh. Tnh cht "mm"
hn ca chng trnh ny th hin ch, nu mun b sung "tri thc", ta ch phi iu
chnh li cc hm DK v ThiHanh m khng cn phi sa li chng trnh chnh.
54
TTNT
V d : GiaTriBoolean(6<7) s tr ra FALSE
Th tc ThucHien cng nhn vo mt chui, n cng s phn tch chui ri tin hnh
thc hin nhng hnh ng c miu t trong chui ny.
CONST SO_LUAT = 3;
TYPE
Luat RECORD
DK : String;
ThiHanh : String;
END;
VAR
CacLuat DSLuat;
PROCEDURE KhoiDong;
BEGIN
CacLuat[1].DK := x = Vx;
CacLuat[2].DK := y = 0;
CacLuat[3].DK := y>0; 9;
CacLuat[1].ThaoTac := x:=0;
CacLuat[2].ThaoTac:= y:=Vy;
END;
BEGIN
55
TTNT
IF GiaTriBoolean(CacLuat[i].DK)
THEN ThucHien(CacLuat[i].ThaoTac);
END;
END.
Chng ta tm cho rng trong qu trnh chng trnh thi hnh, ta c th d dng thay i
s phn t mng CacLuat (cc ngn ng lp trnh sau ny nh Visual C++, Delphi u
cho php iu ny). Vi chng trnh ny, khi mun sa i "tri thc", bn ch cn thay
i gi tr mng Luat l xong.
Tuy nhin, ngi dng vn gp kh khn khi mun b sung hoc hiu chnh tri thc. H
cn phi nhp cc chui i loi nh x=0 hoc k:=min(Vx-x,y) ...Cc chui ny, tuy c
ngha i vi chng trnh nhng vn cn kh xa l i vi ngi dng bnh thng.
Chng ta cn gim bt "khong cch" ny li bng cch a ra nhng chui iu kin
hoc thao tc c ngha trc tip i vi ngi dng. Chng trnh s c chuyn i
li cc iu kin v thao tc ny sang dng ph hp vi chng trnh.
Trng thi c bn :
Thao tc
"Mc y X"
K tip, ta s vit cc on chng trnh cho php ngi dng nhp vo cc lut (dng
nu ... th ...) c hnh thnh t cc trng thi v iu kin c bn ny, ng thi tin
56
TTNT
ng c suy din : l phng php vn dng tri thc trong c s tri thc gii quyt
vn .
Nu xt theo quan nim biu din tri thc m ta va bn lun trn th c s tri thc ch
l mt dng d liu c bit v ng c suy din cng ch l mt dng ca thut ton c
bit m thi. Tuy vy, c th ni rng, c s tri thc v ng c suy din l mt bc tin
ha mi ca d liu v thut ton ca chng trnh! Bn c th hnh dung ng c suy
din ging nh mt loi ng c tng qut, c chun ha c th dng vn hnh
nhiu loi xe my khc nhau v c s tri thc chnh l loi nhin liu c bit vn
hnh loi ng c ny !
57
TTNT
Hnh nh trn tm tt cho chng ta thy cu trc chung nht ca mt chng trnh tr tu
nhn to.
V. LOGIC MNH
y c l l kiu biu din tri thc n gin nht v gn gi nht i vi chng ta. Mnh
l mt khng nh, mt pht biu m gi tr ca n ch c th hoc l ng hoc l sai.
V d :
58
TTNT
VI. LOGIC V T
Biu din tri thc bng mnh gp phi mt tr ngi c bn l ta khng th can thip
vo cu trc ca mt mnh . Hay ni mt cch khc l mnh khng c cu trc .
iu ny lm hn ch rt nhiu thao tc suy lun . Do , ngi ta a vo khi nim
v t v lng t ( - vi mi, - tn ti) tng cng tnh cu trc ca mt mnh .
...
Kiu biu din ny c hnh thc tng t nh hm trong cc ngn ng
lp trnh, cc i tng tri thc chnh l cc tham s ca hm, gi tr
mnh chnh l kt qu ca hm (thuc kiu BOOLEAN).
Nh vy nu ta c cc mnh c s l :
59
TTNT
LnHn(x,y) = x>y
NhHn(x,y) = x<y
x, y : LnHn(y,x) v x, y : NhHn(y,x)
R rng rng vi hai php suy lun c bn ca logic mnh (Modus Ponens, Modus
Tollens) cng vi cc php bin i hnh thc, ta cng c th chng minh c php suy
din. Tuy nhin, thao tc bin i hnh thc l rt kh ci t c trn my tnh. Thm
ch iu ny cn kh khn vi c con ngi!
60
TTNT
V d :
p q, (r s), g, p r s, p
p q, p r, p (r s), g, s
V d :
p q, r ( p s) q, s
p, q, r, p s q, s
V d :
p, p q q
p, p q p, q q
V d :
p, q q c chng minh
p, p q p p, q
B6 :
61
TTNT
Thut gii ny hot ng da trn phng php chng minh phn chng.
V d : &#p q r s q
62
TTNT
prs
B6 : Thay th hai mnh va tuyn trong danh sch mnh bng mnh mi.
V d :
{ p q , r s q , w r, s q }
{ p r s , w r, s q }
p q, q r, r s, u s p, u
B3: { p q, q r, r s, u s, p, u }
B5 : tuyn mt cp mnh (chn hai mnh c bin i ngu). Chn hai mnh
u :
pqqrpr
{ p r , r s, u s, p, u }
prrsps
p s u s p u
63
TTNT
puup
Phng php biu din tri thc bng lut sinh c pht minh bi Newell v Simon trong
lc hai ng ang c gng xy dng mt h gii bi ton tng qut. y l mt kiu biu
din tri thc c cu trc. tng c bn l tri thc c th c cu trc bng mt cp
iu kin hnh ng : "NU iu kin xy ra TH hnh ng s c thi hnh".
Chng hn : NU n giao thng l TH bn khng c i thng, NU my tnh
m m khng khi ng c TH kim tra ngun in,
P1 P2 ... Pn Q
Trong logic v t : P1, P2, ..., Pn, Q l nhng biu thc logic.
64
TTNT
ONE mt.
TWO hai.
JANUARY thng mt
biu din mt tp lut sinh, ngi ta thng phi ch r hai thnh phn chnh sau :
f1 ^ f2 ^ ... ^ fi q
Trong , cc fi , q u thuc F
Cc s kin : A, B, C, D, E, F, G, H, K
R1 : A E
R2 : B D
R3 : H A
R4 : E G C
R5 : E K B
R6 : D E K C
R7 : G K F A
Suy din tin : l qu trnh suy lun xut pht t mt s s kin ban u, xc nh cc
s kin c th c "sinh" ra t s kin ny.
S kin ban u : H, K
65
TTNT
R3 : H A {A, H. K }
R1 : A E { A, E, H, H }
R5 : E K B { A, B, E, H, K }
R2 : B D { A, B, D, E, H, K }
R6 : D E K C { A, B, C, D, E, H, K }
Suy din li : l qu trnh suy lun ngc xut pht t mt s s kin ban u, ta tm
kim cc s kin "sinh" ra s kin ny. Mt v d thng gp trong thc t l xut pht
t cc tnh trng ca my tnh, chn on xem my tnh b hng hc u.
V d :
Tp cc s kin :
Tp cc lut :
66
TTNT
VIII.3. Vn ti u lut
VIII.3.1. Rt gn bn phi
A B A (1)
Do lut
A B A C
67
TTNT
A B C
VIII.3.2. Rt gn bn tri
Xt cc lut :
Lut A B C
A C
BC
Vi quy tc ny, ta c th loi b hon ton cc lut c php ni HOC. Cc lut c php
ni ny thng lm cho thao tc x l tr nn phc tp.
68
TTNT
B1 : Rt gn v phi
Vi mi lut r trong R
Vi mi s kin A VPhi(r)
B2 : Phn r cc lut
Vi mi lut r : X1 X2 Xn Y trong R
Vi mi i t 1 n n R := R + { Xi Y }
R := R {r}
Vi mi lut r thuc R
B4 : Rt gn v tri
Vi mi s kin Ai thuc r
Gi lut r1 : X Ai Y
S = ( R {r} ) {r1}
u im
Biu din tri thc bng lut c bit hu hiu trong nhng tnh hung h thng cn a ra
nhng hnh ng da vo nhng s kin c th quan st c. N c nhng u im
chnh yu sau y :
69
TTNT
Nhc im
Mng ng ngha l mt phng php biu din tri thc u tin v cng l phng php
d hiu nht i vi chng ta. Phng php ny s biu din tri thc di dng mt
th, trong nh l cc i tng (khi nim) cn cc cung cho bit mi quan h gia
cc i tng (khi nim) ny.
Chng hn : gia cc khi nim chch che, chim, ht, cnh, t c mt s mi quan h
nh sau :
Chim bit ht
Chim c cnh
70
TTNT
Tuy mng ng ngha l mt kiu biu din trc quan i vi con ngi nhng khi a
vo my tnh, cc i tng v mi lin h gia chng thng c biu din di dng
nhng pht biu ng t (nh v t). Hn na, cc thao tc tm kim trn mng ng ngha
thng kh khn (c bit i vi nhng mng c kch thc ln). Do , m hnh mng
ng ngha c dng ch yu phn tch vn . Sau , n s c chuyn i sang
dng lut hoc frame thi hnh hoc mng ng ngha s c dng kt hp vi mt s
phng php biu din khc.
71
TTNT
u im
Mng ng ngha hot ng kh t nhin theo cch thc con ngi ghi
nhn thng tin.
Nhc im
Hu nh khng th bin din cc tri thc dng th tc bng mng ng ngha v cc khi
nim v thi gian v trnh t khng c th hin tng minh trn mng ng ngha.
72
TTNT
gii bi ton ny bng cng c mng ng ngha, ta phi s dng khong 200 nh
cha cng thc v khong 22 nh cha cc yu t ca tam gic. Mng ng ngha cho
bi ton ny c cu trc nh sau :
Cung : ch ni t nh hnh trn n nh hnh ch nht cho bit yu t tam gic xut hin
trong cng thc no (khng c trng hp cung ni gia hai nh hnh trn hoc cung
ni gia hai nh hnh ch nht).
73
TTNT
C ch suy din thc hin theo thut ton "loang" n gin sau :
74
TTNT
Cng thc (1) c kch hot (va c kch hot). T cng thc
(1) tnh c cnh b. nh b c kch hot.
kim tra xem mt cng thc c n-1 yu t hay cha (ngha l kim tra iu kin
"nh hnh ch nht c cung ni vi n nh hnh trn m n-1 nh hnh trn c kch
hot"), ta ch vic ly hiu gia tng s c gi tr bng 1 v tng s c gi tr -1 trn
ct ng vi cng thc cn kim tra. Nu kt qu bng n, th cng thc c n-1 yu
t.
Tr li mng ng ngha cho. Qu trnh thi hnh kch hot c din ra nh sau :
75
TTNT
-1 0 0 -1 0
-1 -1 0 -1 0
0 -1 0 -1 0
a -1 0 -1 0 0
b -1 -1 -1 0 0
c 0 -1 -1 0 -1
S 0 0 -1 0 -1
hC 0 0 0 0 -1
1 0 0 1 0
1 1 0 1 0
0 -1 0 -1 0
a 1 0 1 1 0
b -1 -1 -1 0 0
c 0 -1 -1 0 -1
S 0 0 -1 0 -1
hC 0 0 0 0 -1
76
TTNT
1 0 0 1 0
1 1 0 1 0
0 -1 0 -1 0
a 1 0 1 1 0
b 1 1 1 0 0
c 0 -1 -1 0 -1
S 0 0 -1 0 -1
hC 0 0 0 0 -1
1 0 0 1 0
1 1 0 1 0
0 1 0 1 0
a 1 0 1 1 0
b 1 1 1 0 0
c 0 -1 -1 0 -1
S 0 0 -1 0 -1
hC 0 0 0 0 -1
77
TTNT
1 0 0 1 0
1 1 0 1 0
0 1 0 1 0
A 1 0 1 1 0
B 1 1 1 0 0
C 0 1 1 0 1
S 0 0 -1 0 -1
hC 0 0 0 0 -1
1 0 0 1 0
1 1 0 1 0
0 1 0 1 0
a 1 0 1 1 0
b 1 1 1 0 0
c 0 1 1 0 1
S 0 0 1 0 1
hC 0 0 0 0 -1
78
TTNT
cch gii s dng nhng cng thc n gin nht). S d c th ni nh vy v cch suy
lun ca ta trong bi ton ny l tm kim theo chiu rng. Do , khi t n kt qu, ta
c th c rt nhiu cch khc nhau. c th chn c gii php ti u, bn cn phi
nh ngha c "phc tp" ca mt cng thc. Mt trong nhng tiu chun thng
c dng l s lng php nhn, chia, cng, tr, rt cn, tnh sin, cos, ... c p dng
trong cng thc. Cc php tnh sin, cos v rt cn c phc tp cao nht, k n l nhn
chia v cui cng l cng tr. Cui cng bn c th ci tin li phng php suy lun
bng cch vn dng thut ton A vi c lng h=0 c th chn ra c "ng i"
ti u. Ta chn c lng h=0 v hai l do sau (1) khng gian bi ton nh nn ta khng
cn phi gii hn rng tm kim (2) xy dng mt c lng nh vy l tng i kh
khn, c bit l lm sao h thng khng nh gi qu cao h.
Frame thng c dng biu din nhng tri thc "chun" hoc nhng tri thc c
xy dng da trn nhng kinh nghim hoc cc c im c hiu bit cn k. B
no ca con ngi chng ta vn lun "lu tr" rt nhiu cc tri thc chung m khi cn,
chng ta c th "ly ra" vn dng n trong nhng vn cn phi gii quyt. Frame l
mt cng c thch hp biu din nhng kiu tri thc ny.
79
TTNT
Value (gi tr) : cho bit gi tr ca thuc tnh (nh xanh, , tm vng nu slot l
mu xe).
Range (min gi tr) : (tng t nh kiu bin), cho bit gi tr slot c th nhn nhng
loi gi tr g (nh s nguyn, s thc, ch ci, ...)
Frame : XE HI Frame MY
Xy-lanh : 3.19
Thuc lp : phng tin vn chuyn. inch
T l nn : 3.4
Tn nh sn xut : Audi inche
Xng :
Quc gia ca nh sn xut : c TurboCharger
M lc : 140 hp
Model : 5000 Turbo
Loi xe : Sedan
S lng ca : 4 (default)
Hp s : 3 s t ng
S xy-lanh : 5
80
TTNT
Kh nng tng tc
Hnh sau y cho thy cu trc phn cp ca cc loi hnh hnh hc c bn. Gc ca cy
trn cng tng ng vi mc tru tng cao nht. Cc frame nm di cng
(khng c frame con no) gi l l. Nhng frame nm mc thp hn c th tha k tt
c nhng tnh cht ca nhng frame cao hn.
Cc frame cha s cung cp nhng m t tng qut v thc th. Frame c cp cng cao th
mc tng qut cng cao. Thng thng, frame cha s bao gm cc nh ngha ca cc
thuc tnh. Cn cc frame con s cha ng gi tr thc s ca cc thuc tnh ny.
81
TTNT
Cc kiu d liu c bn :
pi : (val:numeric = 3.14159)
r : radius;
s : area;
p : perimeter;
d : diameter;
d = 2 r;
s = pi r2;
p = 2 pi r;
b1 : side;
b2 : side;
s : area;
p : perimeter;
82
TTNT
s = b1 b2;
p = 2 (b1+b2);
d2 = b12 + b22;
L : RECTANGLE
b1 = b2;
b : side;
d1 : diagonal;
d2 : diagonal;
s : area;
p : perimeter;
alpha1 : angle;
alpha2 : angle;
h : height;
cos (alpha2/2) d1 = h;
s = d1 d2 / 2;
p = 4 b;
s = b h;
Chng ta c th d dng khai bo cc i tng hnh hc khc theo cch ny. Sau khi
biu din cc tri thc v cc hnh hnh hc c bn xong, ta c th vn dng n gii cc
bi ton hnh hc, chng hn bi ton tnh din tch. V d, cho hnh vung k v vng
trn ni tip c, bit cnh hnh vung c chiu di l x, hy vit chng trnh tnh din
tch phn t en.
83
TTNT
D thy rng, din tch phn t en chnh l hiu gia din tch hnh vung v din tch
hnh trn ni tip. D nhin l bn cng c th vit mt chng trnh bnh thng tnh
ton, nhng khi "tch hp" cc tri thc v tnh din tch bn trong biu din, chng
trnh ca chng ta tr nn rt gn nh. Bn hy lu 3 lnh c in m trong v d
di. Lnh u tin s "c t" li gi thit "hnh vung c cnh vi chiu di x", lnh k
tip c t gi thit "hnh trn ni tip", cn lnh th 3 m t vic tnh din tch bng
cch ly din tch hnh vung tr cho din tch hnh trn.
BEGIN
<Nhp x>;
k.b1 := x;
c.d := x;
s := k.s c.s;
END.
Nh vy, chng trnh my tnh ca chng ta hot ng kh ging nh vic "m t"
cc gii bi ton bng ngn ng t nhin. Hy ngh xa hn mt t. Cc bi ton hnh hc
thng c m t bng cc ngn t kh chnh xc (chng hn nh : cho mt tam gic
vi chiu cao xut pht t nh A l 5, chiu di cnh y l 6, ....). Do , v mt nguyn
tc, chng ta vn c th xy dng mt chng trnh "hiu" nhng bi ny (theo nh
cch m chng ta va lm). Sau , ngi dng c th hon ton nh my tnh gii gip
bi ton cho mnh bng cch m t li gii cho my tnh (ch khng cn phi lp trnh).
Bn c cm gic iu ny tht th v khng? y chnh l bc i u tin trong vic to
ra mt chng trnh tr gip cho vic gii cc bi ton hnh hc trn my tnh vi giao
tip bng ngn ng t nhin!
tng thm sc mnh cho h thng ny, ngi ta thng ci t mt mng ng ngha
ngay bn trong mi frame. Chng hn, ta c th c mt frame TRIANGLE, trong ci
t mt mng ng ngha (ging nh v d trong phn mng ng ngha) c t mi
lin h gia cc yu t tam gic (thay v s dng cc cng thc lin h n gin nh v d
trn).
84
TTNT
Script l mt cch biu din tri thc tng t nh frame nhng thay v c t mt i
tng, n m t mt chui cc s kin. m t chui s kin, script s dng mt dy
cc slot cha thng tin v cc con ngi, i tng v hnh ng lin quan n s kin
.
Tuy cu trc ca cc script l rt khc nhau ty theo bi ton, nhng nhn chung mt
script thng bao gm cc thnh phn sau :
Role (din vin): l nhng con ngi c lin quan trong script.
Result (Kt qu) : trng thi ca cc Role sau khi script thi hnh xong.
Ngi phc v.
Tc t : Bn phc v.
85
TTNT
Ch ngi.
Khay ng thc n
Thc n
Tin
iu kin vo :
Khch hng i
Tnh hung 2: Ku mn n.
86
TTNT
Tnh hung 4 : Ra v
Khch hng b rc (thc n tha, xng, mng vn, ...) vo thng rc.
Khch hng li xe i.
Kt qu :
* Ty chn.
Mc tiu chnh biu din tri thc trong my tnh l phc v cho vic thu nhn tri thc vo
my tnh, truy xut tri thc v thc hin cc php suy lun da trn nhng tri thc lu
87
TTNT
tr. Do , tha mn c 3 mc tiu trn, khi chn phng php biu din tri thc,
chng ta phi cn nhc mt s yu t c bn sau y :
Tnh hiu qu trong vic truy xut tri thc v sc mnh ca cc php suy lun
(theo kiu heuristic) .
P.Php u im Nhc im
Lut sinh C php n gin, d hiu, din Rt kh theo di s phn cp, khng
dch n gin, tnh n th cao, hiu qu trong nhng h thng ln,
linh ng (d iu chnh). khng th biu din c mi loi tri
thc, rt yu trong vic biu din cc
tri thc dng m t, c cu trc.
Logic hnh thc C ch suy lun chnh xc Tch ri vic biu din v x l,
(c chng minh bi ton khng hiu qu vi lng d liu ln,
hc). qu chm khi c s d liu ln.
Tuy vy, nh chng ta bit, hin nay vn cha c mt kiu biu din tri thc no ph
hp vi mi tnh hung. Do , khi phi lm vic vi nhiu ngun tri thc khc nhau
(khc loi, khc tnh cht), chng ta nhiu lc phi hy sinh tnh ng b bng cch s
dng cng lc nhiu kiu biu din tri thc, mi kiu biu din ng vi mt nhim v
con. Nhng nh vy, chng ta li ny sinh ra vn "dch" mt tri thc t kiu biu din
88
TTNT
Mt trong nhng s phi hp tng i thnh cng l s kt hp gia lut sinh v frame.
Lut sinh khng hiu qu trong nhiu ng dng, c bit l trong cc tc v nh
ngha, m t cc i tng hoc nhng mi lin kt tnh gia cc i tng. Nhng
nhng yu im ny li chnh l u im ca frame. Ngy nay, c rt nhiu h thng
to ra mt kiu biu din lai gia lut sinh v frame c c u im ca hai cch
biu din. S thnh cng ca cc h thng ni ting nh KEE, Level5 Object v Nexpert
Object minh chng cho iu ny. Frame cung cp mt ngn ng cu trc hiu qu
c t nhng i tng xut hin trong cc lut. Frame cn ng vai tr nh mt lp h
tr cho thao tc suy din c bn trn nhng i tng khng cn phi tng tc mt cch
tng minh trong cc lut. Kh nng phn lp ca frame cn c th c dng phn
hoch, to ch mc v sp xp cc lut sinh trong h thng. Kh nng ny rt thch hp
cho ngi dng trong vic xy dng v hiu cc lut, cng nh cng c th theo di c
cc lut c s dng khi no v cho mc g.
Hnh sau cho thy mt kiu kt hp gia lut sinh v frame. S kt hp ny cho php
to ra cc lut so mu nhm tng tc tm kim ca h thng. Kt qu ca s kt hp
ny cho php to ra cc biu din phc tp hn rt nhiu so vi vic ch dng frame,
thm ch phc tp hn c vic lp trnh trc tip bng ngn ng C++ !!.
* Suy lun khng chc chn (Hypothetical reasoning) : l k thut suy lun da trn
cc iu kin c th c mu thun hoc khng chc chn.
89
TTNT
V d kt hp biu din tri thc bng lut sinh v frame trong bi ton iu ch cht
ha hc
Na + Cl2 NaCl
Fe + Cl2 FeCl2
Cu + Cl2 CuCl2
...
Kim + Nc Xt + H2
90
TTNT
91
TTNT
Chng 3 M U V QUAN MY HC
I. TH NO L MY HC ?
II.1. m chi
II.2.1. Quinlan
II.2.2. o hn lon
II.4. Ti u tp lut
I. TH NO L MY HC ?
Thut ng "hc" theo ngha thng thng l tip thu tri thc bit cch vn dng.
ngoi i, qu tr hc din ra di nhiu hnh thc khc nhau nh hc thuc lng (hc
vt), hc theo kinh nghim (hc da theo trng hp), hc theo kiu nghe nhn,... Trn
my tnh cng c nhiu thut ton hc khc nhau. Tuy nhin, trong phm vi ca gio
trnh ny, chng ta ch kho st phng php hc da theo trng hp. Theo phng
php ny, h thng s c cung cp mt s cc trng hp "mu", da trn tp mu ny,
h thng s tin hnh phn tch v rt ra cc quy lut (biu din bng lut sinh). Sau ,
h thng s da trn cc lut ny "nh gi" cc trng hp khc (thng khng ging
nh cc trng hp "mu"). Ngay c ch vi kiu hc ny, chng ta cng c nhiu
thut ton hc khc nhau. Mt ln na, vi mc ch gii thiu, chng ta ch kho st mt
trng hp n gin.
f : P | R
92
TTNT
pr
Vi mi p P th f(p) f (p)
Pht biu hnh thc c th kh hnh dung. c th hn, ta hy cng nhau quan st mt
v d c. Nhim v ca chng ta trong v d ny l xy dng cc quy lut c th kt
lun mt ngi nh th no khi i tm bin th b chy nng. Ta gi tnh cht chy nng
hay khng chy nng l thuc tnh quan tm (thuc tnh mc tiu). Nh vy, trong trng
hp ny, tp R ca chng ta ch gm c hai phn t {"chy nng", "bnh thng"}.
Cn tp P l tt c nhng ngi c lit k trong bng di (8 ngi) Chng ta quan st
hin tng chy nng da trn 4 thuc tnh sau : chiu cao (cao, trung bnh, thp), mu
tc (vng, nu, ) cn nng (nh, TB, nng), dng kem (c, khng),. Ta gi cc thuc
tnh ny gi l thuc tnh dn xut.
93
TTNT
Tn Tc Ch.Cao Cn Dng Kt qu
Nng kem?
Sau khi phn hoch xong tp P thnh tp cc phn hoch Pi c c trng bi thuc
tnh ch ri (ri R), bc tip theo l ng vi mi phn hoch Pi ta xy dng lut Li :
GTi ri trong cc GTi l mnh c hnh thnh bng cch kt hp cc thuc tnh
dn xut.
C hai cch phn hoch hin nhin nht m ai cng c th ngh ra. Cch u tin l cho
mi ngi vo mt phn hoch ring (P1 = {Sarah}, P2 = {Dana}, tng cng s c 8
phn hoch cho 8 ngi). Cch th hai l phn hoch thnh hai tp, mt tp gm tt c
nhng ngi chy nng v tp cn li bao gm tt c nhng ngi khng chy nng. Tuy
n gin nhng phn hoch theo kiu ny th chng ta chng gii quyt c g !!
II.1. m chi
94
TTNT
P = { Emmile }
Quan st hnh trn ta thy rng phn hoch Pnu v P tha mn c iu kin "c
chung thuc tnh mc tiu" (Pnu cha ton ngi khng chy nng, P cha ton ngi
chy nng).
95
TTNT
II.2.1. Quinlan
Quinlan quyt nh thuc tnh phn hoch bng cch xy dng cc vector c trng cho
mi gi tr ca tng thuc tnh dn xut v thuc tnh mc tiu. Cch tnh c th nh sau :
T(j, ri) = (tng s phn t trong phn hoch c gi tr thuc tnh dn xut A l j
v c gi tr thuc tnh mc tiu l ri ) / ( tng s phn t trong phn hoch c
gi tr thuc tnh dn xut A l j )
Thuc tnh c chn phn hoch l thuc tnh c nhiu vector n v nht.
Tr li v d ca chng ta, trng thi ban u (cha phn hoch) chng ta s tnh vector
c trng cho tng thuc tnh dn xut tm ra thuc tnh dng phn hoch. u tin
l thuc tnh mu tc. Thuc tnh mu tc c 3 gi tr khc nhau (vng, , nu) nn s c
3 vector c trng tng ng l :
S ngi tc vng l : 4
96
TTNT
Do
Tng t
S ngi tc nu l : 3
VC.Cao(T.B) = (2/3,1/3)
VC.Cao(Thp) = (1/3,2/3)
Sau khi phn hoch theo mu tc xong, ch c phn hoch theo tc vng (Pvng) l cn
cha nhng ngi chy nng v khng chy nng nn ta s tip tc phn hoch tp ny.
97
TTNT
Tn Ch.Cao Cn Dng Kt qu
Nng kem?
VC.Cao(Thp) = (1/2,1/2)
2 thuc tnh dmg kem v chiu cao u c 2 vector n v. Tuy nhin, s phn hoch
ca thuc tnh dng kem l t hn nn ta chn phn hoch theo thuc tnh dng kem. Cy
nh danh cui cng ca chng ta s nh sau :
98
TTNT
II.2.2. o hn lon
TA =
trong :
99
TTNT
II.4. Ti u tp lut
Khc so vi cc phng php loi b mnh tha c trnh by trong phn biu
din tri thc (ch quan tm n logic hnh thc), phng php loi b mnh tha y
da vo d liu. Vi v d v tp lut c phn trc, bn hy quan st lut sau :
Mu vng 2 0
Mu khc 1 0
Theo bng thng k ny th r rng l thuc tnh tc vng (trong lut trn) khng ng
gp g trong vic a ra kt lun chy nng hay khng (c 3 ngi dng kem u khng
chy nng) nn ta c th loi b thuc tnh tc vng ra khi tp lut.
A1 v A2 v v An R
100
TTNT
R R
Ai E F
G H
Ai
Trong
Hoc
(ch c hai lut v thuc tnh mc tiu ch c th nhn mt trong hai gi tr l chy nng hay khng chy
nng)
101
TTNT
1) Chn lut mc nh sao cho n c th thay th cho nhiu lut nht. (trong v d
ca ta th nguyn tc ny khng p dng c v c 2 lut dn n chy nng v 2
lut dn n khng chy nng)
BI TP
CHNG 1
1) Vit chng trnh gii bi ton hnh trnh ngi bn hng rong bng hai thut
gii GTS1 v GTS2 trong trng hp c n a im khc nhau.
2) Vit chng trnh gii bi ton phn cng cng vic bng cch ng dng
nguyn l th t.
6) Vit chng trnh gii bi ton Ta-canh bng thut gii A*.
7) Vit chng trnh gii bi ton thp H Ni bng thut gii A*.
8)* Vit chng trnh tm kim ng i ngn nht trong mt bn tng qut.
Bn c biu din bng mt mng hai chiu A, trong A[x,y]=0 l c th i
c v A[x,y]= 1 l vt cn. Cho php ngi dng click chut trn mn hnh
102
TTNT
CHNG 2
CHNG 3
1 To TB Nam
2 Nh Cao Nam
3 Nh TB Nam u
4 To Cao Nam u
5 Nh TB N u
6 Nh Cao Nam u
7 Nh Cao N u
103
TTNT
8 To TB N u
2)* Vit chng trnh ci t tng qut thut ton hc da trn vic xy dng cy
nh danh. Chng trnh yu cu ngi dng a vo danh sch cc thuc tnh
dn xut, thuc tnh mc tiu cng vi tt c cc gi tr ca mi thuc tnh; yu
cu ngi dng cung cp bng s liu quan st. Chng trnh s lit k ln mn
hnh cc lut m n tm c t bng s liu. Sau , yu cu ngi dng nhp
vo cc trng hp cn xc nh, h thng s a ra kt lun ca trng hp ny.
104