You are on page 1of 118

AI HOC QUOC GIA

TRNG AI HOC BACH KHOA THANH PHO


KHOA IEN VA IEN T
BO MON IEU KHIEN T ONG





BAI GIANG MON HOC :
Tr Tue Nhan Tao Va He Chuyen Gia

Thanh pho Ho Ch Minh Ngay 7 Thang 01 Nam 2006
Bien soan : Tien s Nguyen Thien Thanh













Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 2
Noi dung bai giang:
CHNG 1 : TONG QUAN VE TR TUE NHAN TAO...........................................................5
1.1) Tr tue nhan tao la g ? .......................................................................................................................................5
1.2) Lch s phat trien tr tue nhan tao : .................................................................................................................5
1.3) Cac thanh phan c ban cua tr tue nhan tao : .................................................................................................6
CHNG 2 : CAC PHNG PHAP GIAI QUYET VAN E C BAN..................................9
2.1) Khong Gian Bai Toan :..............................................................................................................................................9
V du 1: Khong gian bai toan bnh ng nc. ..............................................................................................................9
V du 2 : Khong gian bai toan tro chi 8 so. ...............................................................................................................11
V du 3 : Khong gian bai toan ba tu s va ba ke an tht ngi. ....................................................................................12
V du 4 : Bai toan rao so hoc (Cryarithmetic)..............................................................................................................14
V du 5 : Bai toan hanh trnh ngi ban hang. ............................................................................................................14
2.2) Chien Lc Tm Kiem : ...........................................................................................................................................14
1) Tm kiem suy dien tien : ...................................................................................................................................14
2) Chien lc tm kiem suy dien lui :...................................................................................................................15
2.3) Giai Thuat Tm Kiem : ............................................................................................................................................16
1) Giai thuat tm kiem theo chieu rong ((Breadth_First_Search):...............................................................................17
2) Giai thuat tm kiem theo chieu sau (Depth First Search) :......................................................................................18
3) Giai thuat tm kiem truyen lui ( Back Tracking search ) :.......................................................................................19
2.4) Tm Kiem Heuristic : ...............................................................................................................................................20
1) Heuristic la g ?....................................................................................................................................................20
2) Giai thuat tm kiem Best_First_Search :........................................................................................................21
3) Ham anh gia heuristic :...................................................................................................................................23
2.5) Bai Toan Rang Buoc :..............................................................................................................................................26
CHNG 3 : HE CHUYEN GIA..............................................................................................28
3.1) He chuyen gia la g ? ................................................................................................................................................28
3.2) Cau truc he chuyen gia :..........................................................................................................................................29
3.3) Thiet Ke He Chuyen Gia : ......................................................................................................................................30
1) He chuyen gia suy dien tien : ...........................................................................................................................31
2) Thiet ke he chuyen gia suy dien lui : ..............................................................................................................36

Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 3
CHNG 4 : CAC PHNG PHAP BIEU DIEN TRI THC.................................................41
4.1) Bieu Dien Tri Thc La G ? ....................................................................................................................................41
4.2) Bieu Dien Tri Thc Nh Logic V T : ..................................................................................................................42
1) Logic e xuat :....................................................................................................................................................42
2) Logic v t : .........................................................................................................................................................44
3) Giai bai toan bang phng phap hp giai : ....................................................................................................47
4.3) Bieu Dien Tri Thc Nh Mang Ng Ngha : .........................................................................................................49
4.4) Bieu Dien Tri Thc Nh Frame : ...........................................................................................................................51
4.5) Gii Thieu Ve Ngon Ng Lap Prolog : ..................................................................................................................56
1) Cau truc chng trnh :.....................................................................................................................................56
2) Cac loai toan t : .................................................................................................................................................58
3) X ly danh sach trong ngon ng lap trnh Prolog : .......................................................................................59
5.1) ng Dung tr Tue Nhan Tao Phan Tch Bao Ve He Thong Nang Lng ien : ..............................................73
5.2) Bai Toan Robot Tm Vang : ....................................................................................................................................78
5.3) Bai Toan Lap Phng An Cho Canh Tay Robot Xep Khoi :..............................................................................81
CHNG 6 : X LY TRI THC KHONG CHAC CHAN......................................................86
6.1) Ly Giai Di ieu Kien Khong Chac Chan :.......................................................................................................86
6.2) X Ly Tri Thc Khong Chac Chan Dung Ly Thuyet Xac Suat : ......................................................................87
1) Ly thuyet xac suat : ...........................................................................................................................................87
2) Ly giai chnh xac di ieu kien khong chac chan dung xac suat : ............................................................88
3) Ly thuyet chac chan :........................................................................................................................................90
4) Ly giai xap x di ieu kien khong chac chan dung ly thuyet so o chac chan :.....................................92
6.3) X Ly Tri Thc Khong Chac Chan Dung Logic M : .........................................................................................93
1) Tap m va cac phep toan tren cac tap m : ..................................................................................................94
2) Quan he m va cac phep toan tren quan he m : .........................................................................................96
3) Logic m va ly giai xap x m :..............................................................................................................................98
4) C s tri thc m : ................................................................................................................................................100
5) Ky thuat suy dien m : .........................................................................................................................................101
CHNG 7 : VIEC HOC MAY................................................................................................ 104
7.1) Viec Hoc May La G ?............................................................................................................................................104
7.2) Mo Hnh Hoc May Tren C S Tri Thc :........................................................................................................105
1) Giai thuat hoc gam sat hng ac trng en tong quat va ngc lai : ....................................................106
2) Giai thuat hoc quy nap cay quyet nh : .......................................................................................................109
3) Hoc heuristic vi giai thuat hoc quy nap cay quyet nh :..........................................................................111
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 4
4) Khai niem ve hoc cung co va hoc khong giam cua mo hnh hoc tren c s tri thc : ...........................112
7.3) Mo hnh Hoc May Nh Mang Neuron Nhan Tao :.............................................................................................114
1) Tong quan ve mang neuron nhan tao : ..............................................................................................................114
2) Mang truyen thang va giai thuat hoc lan truyen ngc :................................................................................117










































Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 5
Chng 1 : Tong Quan Ve Tr Tue Nhan Tao

1.1) Tr tue nhan tao la g ?
Tr tue nhan tao la lnh vc khoa hoc chuyen nghien cu cac phng phap
che tao tr tue may sao cho giong nh tr tue con ngi.

Vai nh ngha cua tr tue nhan tao ien hnh la
- He thong ma biet suy ngh nh con ngi
- He thong ma biet hanh ong nh con ngi
e he thong ma biet suy ngh va hanh ong nh con ngi th he thong o
phai c trang b cac cong cu nh thnh giac, tri thc, ly giai t ong, viec
hoc, th giac va di chuyen giong nh con ngi.

Thong thng, cach giai quyet van e cua con ngi c the hien qua bon
thao tac c ban o la
- Xac nh tap hp cua cac ch
- Thu thap cac s kien va luat suy dien
- C che tap trung
- Bo may suy dien
Nh vay, tr tue may la g ? la cac kha nang giai quyet van e cua may o la
- Hanh ong giong nh con ngi.
- Suy ngh giong nh con ngi.
- Hoc giong nh con ngi.
- X ly thong tin giong nh con ngi.
- Hanh ong va suy ngh tren c s logic va chnh xac.

1.2) Lch s phat trien tr tue nhan tao :
Y tng che tao tr tue may a co t lau nhng mai en nam 1950, nha toan
hoc ngi Anh cong bo cong trnh khoa hoc cua ong ta o la May tnh va
Thong minh, ay c xem nh la moc loch s bat au phat trien tr tue
nhan tao. Noi theo thi iem nay, cac chng trnh thong minh c cong bo
o la
+ Nam 1956, chng trnh giai bai toan tong quat a c xuat hien.
+ Nam 1958, chng trnh chng minh nh ly hnh hoc cung c kham pha.

Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 6
nh cao cua viec phat trien lnh vc nay phai noi en nhng nam 1960.
Du rang con b han che ve trang thiet b nhng nhng nam nay co nhieu cong
trnh c cong bo nh
+ Nam 1960, ngon ng Lisp.
+ Nam 1961, chng trnh giai cac bai toan ai so s cap.
+ Nam 1963, chng trnh tro chi c vua.
+ Nam 1964, chng trnh tnh tch phan.
+ Nam 1966, chng trnh phan tch va hoc noi.
+ Nam 1968, chng trnh ieu khien Robot theo phng an mat va tay.
+ Nam 1972, ngon ng Prolog.

T nhng nam 1969 en nam 1999, co nhieu chng trnh c xay dng tren
cac he c s tri thc.
That vay, lnh vc tr tue a i vao i song dan dung t nhng nam 1980
en nay.

1.3) Cac thanh phan c ban cua tr tue nhan tao :
Co hai thanh phan c ban cua tr tue nhan tao o la bieu dien tri thc va tm
kiem tri thc trong mien bieu dien. Tri thc cua bai toan co the c phan ra
lam ba loai tri thc c ban o la tri thc mo ta, tri thc thu tuc va tri thc ieu
khien.

+ Tri thc mo ta : la loai tri thc mo ta nhng g ma c biet ve bai toan.
Loai tri thc nay bao gom cac s kien, cac quan he va cac tnh chat cua bai
toan.

+ Tri thc thu tuc : la loai tri thc mo ta cach giai quyet bai toan. Loai tri
thc nay bao gom luat suy dien hp le, chien lc tm kiem va giai thuat tm
kiem.
+ Tri thc ieu khien : la loai tri thc c xem nh la luat chu chot ieu
khien qua trnh ly giai e dan en ket luan.
e bieu dien tri thc cua bai toan nh cac phng phap bieu dien nh
+ Phng phap bieu dien nh luat
+ Phng phap bieu dien nh mang ng ngha
+ Phng phap bieu dien nh Frame
+ Phng phap bieu dien nh logic v t
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 7
Sau khi tri thc cua bai toan a c bieu dien, ky thuat giai bai toan trong
lnh vc tr tue nhan tao la cac phng phap tm kiem trong mien ac trng tri
thc ve bai toan o.

V du : Xet bai toan ngi nong dan, chon, ngong va ngu coc. Bai toan at ra la
ngi nong dan muon mang theo vi mnh mot con chon, mot con ngong va mot so
ngu coc qua ben kia song bang mot chiec thuyen. Tuy nhien, thuyen cua ong ta qua
be ch co the mang theo mot th duy nhat vi ong ta tren moi chuyen thuyen sang
song. Neu ong ta e lai chon va ngong ben nay song th chon se an ngong va neu
ong ta e lai ngong va ngu coc th ngong se an het so ngu coc. Hay sap xep cac
chuyen thuyen sao cho ngi nong dan mang moi th sang ben kia song an toan?

Vi bai toan nay, ta co the bieu dien nh thong qua cac phat bieu ngon ng t
nhien, tuy nhien cach bieu dien nay khong giup ta vach tran ra cac rang buoc von
san co trong bai toan. Cach bieu dien tot nhat giup ta co the vach tran cac rang
buoc von san co trong bai toan la xay dng mot bieu o vi cac nut co anh nhan
ngi nong dan mang theo th ma ong ta can phai mang theo tren moi chuyen
thuyen va cac canh lien ket gia cac nut la cac ng mui ten ch cac chuyen
thuyen qua lai song.

Cach bieu dien nay ham cha cac thanh phan nh ng t hoc, cau truc, thu tuc va
ng ngha.
+ Ng t hoc (Lexical) : la cac t vng hp le c s dung nh la cac ky hieu
trong bieu dien.
+ Cau truc (Structure) : la cac ng mui ten lien ket gia cac nut ch nh cac
chuyen thuyen qua lai song.
+ Thu tuc (Procedure) : la mo ta cach giai bai toan t nut nay en nut kia nh thong
cac ng ch nh mui ten.
+ Ng ngha (Semantic) : la y ngha cua cac nut va cac canh lien ket thong qua
cach giai bai toan.
Bieu o bieu dien bai toan ngi nong dan, chon, ngong va ngu coc c mo ta
nh hnh




Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com






















Start
Nong dan
Chon
Ngong
Ngu coc
Finish
Nong dan
Chon
Ngong
Ngu coc
Nong dan
Chon
Ngong
Ngu coc
Nong dan
Chon
Ngong
Ngu coc
Nong dan
Chon
Ngong
Ngu coc
Nong dan
Chon
Ngong
Ngu coc
Nong dan
Chon
Ngong
Ngu coc
Nong dan
Chon
Ngong
Ngu coc
Nong dan
Chon
Ngong
Ngu coc
Nong dan
Chon
Ngong
Ngu coc
Trang 8
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 9
Chng 2 : Cac Phng Phap Giai Quyet Van e C Ban

2.1) Khong Gian Bai Toan :
Tri thc cua bai toan c chia ra lam ba loai tri thc c ban o la tri thc mo
ta, tri thc thu tuc va tri thc ieu khien, trong o tri thc thu tuc nh ngha khong
gian bai toan. Khong gian bai toan co the c bieu dien bang khong gian trang
trang thai o la mot bieu dien bang o th nh hng gom bon thanh phan nh sau
:
+ S : trang thai ban au cua bai toan (d lieu ban au).
+ G : tap cac trang thai ch cua bai toan (d lieu ch).
+ N : tap cac trang thai khac c phat sinh t trang thai ban au at en
trang thai ch o la cac nut cua o th.
+ A : Tap cac trang thai chuyen tiep o la cac cung lien ket gia cac nut cua
o th nh thong qua cac luat ap dung cua bai toan.
Luat ap dung la luat ma ve ieu kien cua no hp vi trang thai hien co e ve ket
luan cua no phat sinh ra cac trang thai mi.
ng li giai cua bai toan la ng bat au t trang thai ban au thong qua
cac trang thai khac c phat sinh en mot trang thai nao o trong tap cac trang
thai ch.
V du 1: Khong gian bai toan bnh ng nc.
Cho hai bnh ng nc, mot bnh co dung tch 4 lt va mot bnh khac co dung
tch 3 lt, ca hai bnh khong co dau dung tch. Trang thai ban au cua hai bnh la
rong, dung mot bm nc lam ay nc vi hai bnh. Lam cach nao e co chnh
xac 2 lt nc trong bnh 4 lt ?
Vay, khong gian trang thai cho bai toan nay la g ?
Giai :
Cho cap bien so nguyen (x,y) bieu dien cac trang thai trong khong gian trang
thai cho bai toan nay, trong o x la so lt nc trong bnh 4 lt va y la so lt nc
trong bnh 3 lt.
Khong gian trang thai cho bai toan c mo ta bang cac thanh phan nh sau
:
+ Trang thai ban au cua bai toan : hai bnh eu rong o la cap so nguyen
(0,0).
+ Trang thai ch cua bai toan : can co chnh xac 2 lt nc trong bnh 4 lt o
la cap so nguyen (2,n), tronng o n la so khong xac nh trong bnh 3 lt.
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
+ Trang thai khac cua bai toan : o la cap so nguyen (x,y) mo ta cac trang
thai trong khong gian bai toan.
+ Trang thai chuyen tiep cua bai toan : o la bc chuyen tiep t trang thai
hien co en trang thai mi nh thong luat ap dung cua bai toan. Luat ap dung
la luat ma ve ieu kien cua no hp vi trang thai hien hu e ve ket luan
cua no phat sinh ra trang thai mi. Tap cac luat giai bai toan bnh ng nc
c liet ke la
Luat 1 : (x,y/ x < 4 ) (4,y).
Luat 2 : (x,y/ y < 3 ) (x,3).
Luat 3 : (x,y/ x > 0 ) (0,y).
Luat 4 : (x,y/ y > 0 ) (x,0).
Luat 5 : (x,y/ x + y >= 4 va y > 0 ) (4,y (4 x)).
Luat 6 : (x,y/ x + y >= 3 va x > 0 ) (x (3 y),3).
Luat 7 : (x,y/ x + y < 4 va y > 0 ) (x + y,0).
Luat 8 : (x,y/x + y < 3 va x > 0 ) (0,x + y)

Khong gian trang thai cho bai toan nay c bieu dien bang o th nh hnh

Trang 10















Vay, khong gian trang thai cho bai toan bnh ng nc bao gom trang thai ban
au, tat ca cac trang thai khac at c t trang thai ban au nh thong qua cac
luat ng dung (cac trang thai chuyen tiep ) va trang thai ch cua bai toan.
(0,0)
(0,3) (4,0)
(4,3) (0,0) (1,3) (4,3) (0,0) (3,0)
(2,n)
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 11
Kch thc cua khong gian trang thai cho bai toan la so trang thai c tao ra
nh thong qua cac luat ng dung t trang thai ban au en trang thai ch cua bai
toan.
V du 2 : Khong gian bai toan tro chi 8 so.
Bai toan tro chi 8 so nh mot cai mam hnh vuong co ba hang va ba cot gom
9 o, trong o 8 o cha 8 vien ngoi co anh so t 1 en 8 va o con lai la o trong.
Cho cau hnh trang thai ban au va cau hnh trang thai ch cua bai toan c
cho nh hnh

2 8 3
1 6 4
7 5
Trang Thai Ban au
1 2 3
8 4
7 6 5
Trang Thai ch




Bai toan at ra la trt cac vien ngoi en o trong ke no, khong c phep trt
theo ng cheo sao cho cau hnh trang thai ban au at en cau hnh trang thai
ch cua bai toan.
Vay, khong gian bai toan nay la g ?
Giai :
Khong gian trang thai cho bai toan nay c mo ta gom cac thanh phan nh
sau :
+ Trang thai ban au cua bai toan : la cau hnh mang hai chieu 33 cha cac
vien ngoi co anh so cho trc.
+ Trang thai ch cua bai toan: cung la cau hnh mang hai chieu 33 cha cac
vien ngoi co anh so cho trc.
+ Trang thai khac cua bai toan : o la cau hnh mang hai chieu 33 cha cac
vien ngoi mo ta cac trang thai trong khong gian bai toan.
+ Trang thai chuyen tiep cua bai toan : o la bc chuyen tiep t trang thai
hien co en trang thai mi nh thong qua luat hp le nh trt vien ngoi i len,
trt vien ngoi i xuong , trt vien ngoi sang trai hoac trt vien ngoi sang
phai .

Khong gian trang thai cho bai toan nay co the c bieu dien bang o th nh
hnh



Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com


Trang 12





















Vay, khong gian trang thai cho bai toan gom co trang thai ban au, tat ca cac trang
thai at c t trang thai ban au en trang thai ch, tat cac trang thai chuyen
tiep va trang thai ch cua bai toan.
2 8 3
1 6 4
7 5
1 2 3
8 4
7 6 5
Trang Thai ch
2 8 3
1 6 4
7 5
2 8 3
1 4
7 6 5
2 8 3
1 6 4
7 5
Kch thc cua khong gian trang thai nay o la so trang thai at c t trang thai
ban au en trang thai ch cua bai toan nh thong qua tat ca cac trang thai chuyen
tiep.
V du 3 : Khong gian bai toan ba tu s va ba ke an tht ngi.
Ba tu s va ba ke an tht ngi ben nay song muon qua ben kia song bang
mot chiec thuyen co sc ch toi a la 2 thanh vien. Bai toan at ra la bat ky ni
nao ben nay song, tren thuyen hoac ben kia song, neu so tu s t hn so ke an tht
ngi th so tu s se b an tht bi so ke an tht ngi. Hay sap xep cac chuyen
thuyen qua lai song sao cho a moi ngi sang ben kia song an toan ?
Vay, khong gian bai toan nay la g ?
Giai : Khong gian trang thai cho bai toan nay c mo ta bang cac thanh phan nh
sau :
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 13
+ Trang thai ban cua bai toan : Tat ca moi ngi va thuyen ben nay song
vi cau hnh la (MMM, CCC, B), trong o M la tu s, C la ke an tht ngi va B la
thuyen.
+ Trang thai ch cua bai toan : Tat ca moi ngi va thuyen eu c qua
ben kia kia song an toan, v the cau hnh ch ben nay song la (_, _, _).
+ Rang buoc cua bai toan : So tu s phai la luon luon ln hn hoac bang so ke
an tht ngi bat c ni nao ben nay song, tren thuyen hoac ben kia song.
+ Trang thai khac cua bai toan : cau hnh so tu s, so ke an tht ngi va
thuyen ben nay song hoac ben kia song.
+ Trang thai chuyen tiep cua bai toan : bc dch chuyen thuyen a mot vai
thanh vien qua lai song.
Bai toan ba tu s va ba ke an tht ngi c giai gom cac bc nh sau :
Ben nay song Ben kia song
0. Trang thai ban au (MMM,CCC,B) ( _ , _ , _ )
1. Hai ke an tht ngi (MMM, C, _ ) (_ , CC, B)
qua ben kia song.
2. Mot ke an tht ngi (MMM, CC, B) ( _ , C, _)
qua lai ben nay song.
3. Hai ke an tht ngi (MMM, _, _ ) ( _, CCC, B)
qua ben kia song.
4. Mot ke an tht ngi (MMM, CC,B) (_ , CC, _)
qua lai ben nay song.
5. Hai ke tu s qua ben kia (M, CC, _ ) (MM, CC,B)
song.
6. Mot tu s va mot ke an tht (MM,CC,B) (M, C, - )
ngi qua lai ben nay song.
7. Hai tu s qua ben kia song ( _, CC, _) (MMM, C, B)
8. Mot ke an tht ngi qua ( _ , CCC, B) (MMM, _ , _ )
ben nay song.
9. Hai ke an th ngi qua ( _ , C , _ B) (MMM, CC, B)
ben kia song.
10. Mot ke an tht ngi qua ( _, CC, B) (MMM, C, - )
qua lai ben nay song.
11. Hai ke an tht ngi qua ( _ , _ , _ ) (MMM,CCC,B)
ben kia song. ch.

Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 14

V du 4 : Bai toan rao so hoc (Cryarithmetic).
Bai toan at ra la tm cac ch so t 0 en 9 thay the cho cac ch cai sao cho
bieu thc so hoc tng ng cua no la ung ien hnh la
FORTY 29786
TEN 850
TEN 850
SIXTY 31486
Vay, khong gian bai toan nay la ?

V du 5 : Bai toan hanh trnh ngi ban hang.
Bai toan hanh trnh ngi ban hang at ra la cho ban o cua n thanh pho, tm
ng i ngan nhat cho cuoc hanh trnh cua ngi ban hang bat au t mot thanh
pho, vieng tham moi thanh pho chnh xac mot lan va tr ve lai thanh pho bat au.

2.2) Chien Lc Tm Kiem :
Co hai chien lc tm kiem tren khong gian trang thai bai toan o la tm
kiem bat au t d lieu ban au ve ch va tm kiem t d lieu ch lui ve d
lieu ban au.
Tm kiem bat au t d lieu ban au ve ch c goi la chien lc tm
kiem suy dien tien va tm kiem bat au t ch lui ve d lieu c goi la chien
lc tm kiem suy dien lui.

1) Tm kiem suy dien tien :
Thu tuc tm kiem suy dien tien tren khong gian trang thai bai toan c
mo ta nh sau :
+ Bat au tm kiem t d lieu ban cua bai toan.
+ Chon tat cac cac luat ng dung vi ve ieu kien hp vi d lieu ban
au cua bai toan e ve ket luan phat sinh ra cac d lieu mi.
+ Tai moi iem d lieu mi, chon tat ca cac luat ng dung vi ve ieu
kien hp vi d lieu mi e ve ket luan phat sinh ra cac d lieu mi hn.
+ Thu tuc nay c lap lai cho tat ca cac d lieu mi cho en khi d lieu
ch c tm thay.

Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 15
V du : Chien lc tm kiem suy dien tien cho bai toan bnh ng nc tren
khong gian trang thai bai toan c mo ta nh nh hnh




(0,0)
(4,0)
(0,0) (4,3) (1,3)
(0,3)
(4,3) (0,0) (0,3)
(2,n)
1
2
2
3
4
1 6 7

















2) Chien lc tm kiem suy dien lui :
Thu tuc tm kiem suy dien lui tren khong gian trang thai bai toan c
mo ta nh sau :

+ Thu tuc bat au tm kiem t d lieu ch cua bai toan.
+ Chon tat ca cac luat ng dung vi ve ket luan hp vi d lieu ch,
thiet lap d lieu ve ieu kien phat sinh ra ch lam d lieu ch mi.
+ Tai moi iem d lieu ch mi, chon tat ca cac luat ng dung vi ve
ket luan hp vi ch mi, thiet lap d lieu ieu kien lam d lieu ch
mi hn.
+ Thu tuc nay lap lai cho tat ca cac ch mi cho en khi nao d lieu ban
au cua bai toan c tm thay.
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com

V du : Chien lc tm kiem suy dien lui tren khong gian trang thai bai toan
bnh ng nc c mo ta nh hnh




(2,0)
(4,2)
(2,3)
(0,2)
(1,1)
(0,0)
7 4
3 8















2.3) Giai Thuat Tm Kiem :
e giai bai toan s dung chien lc tm kiem suy dien tien hoac chien lc
tm kiem suy dien lui, cong viec tm kiem la phai tm mot ng t trang thai bat
au en trang thai ch thong qua khong gian trang thai cua bai toan. Cong cu thc
hien viec tm kiem nay o la giai thuat. Qua trnh tm kiem c xem nh cay tm
kiem thong qua khong gian trang thai cua bai toan. Giai thuat bat au t nut goc
cua cay tm kiem tham do qua cac nut khac cua cay trong khong gian trang thai cua
bai toan. Neu giai thuat tm thay ch th giai thuat thiet lap ng li giai bat au
t nut goc thong qua cac nut lien ket en nut ch cua cay. Cau truc d lieu cho
cay tm kiem ay la ta gia s nut la mot cau truc d lieu vi nam thanh phan nh
sau :
+ Trang thai trong khong gian trang thai tng ng vi nut cua cay.
Trang 16
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 17
+ Nut trong cay tm kiem ma a phat sinh ra nut mi th nut nay c goi la
nut cha va nut mi c goi la nut con.
+ Luat hay lenh hp le c ap dung e phat sinh ra nut.
+ So lng cua cac nut tren ng t nut goc cua cay en mot nut ,c goi
la o sau cua nut o.
+ Gia chi ph cua ng la tnh t nut goc cua cay en nut o.

Co hai loai giai thuat tm kiem c ban o la giai thuat tm kiem theo chieu rong va
giai thuat tm kiem theo chieu sau.

1) Giai thuat tm kiem theo chieu rong ((Breadth_First_Search):
Giai thuat tm kiem theo chieu rong la giai thuat tm kiem mc theo mc cua
cay. Giai thuat bat au t nut goc cua cay tm kiem qua tat ca cac nut mc ke
theo, neu no cha tm thay ch th no tiep tuc tm kiem qua tat ca cac nut mc
sau hn, c nh the cho en khi no tm thay nut ch th no dng thu tuc tm kiem
va thiet lap ng li giai bat au t nut goc thong qua cac nut lien ket en nut
ch.
Gia s cho khong gian trang thai cua bai toan vi cac trang thai c anh
nhan bang cac ch cai A, B, C, c mo ta nh hnh


A
B C D
E H F G I J
K L M N O P Q R
S T
U













Th t cua cac trang thai tm kiem vi giai thuat tm kiem theo chieu rong la
A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U.
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 18

Giai thuat tm kiem theo chieu rong c trang b bang hai danh sach m Open va
ong Closed, trong o danh sach Open cha cac trang thai ang ch c duyet va
danh sach Closed cha cac trang thai a c duyet qua. Giai thuat c mo ta nh
sau :



Procedure breadth_first_search
Begin
Open = [Start];
Closed = [ ];
While Open [ ]
Begin
+ Loai bo nut au tien t danh sach Open va goi nut nay la X.
If X = ch Then tra ve thanh cong
Else begin
+ Phat sinh cac con cua X dung cac luat ap dung hp vi X;
+ at X vao danh sach Closed;
+ Loai bo cac con cua X a co mat tren Open hoac Closed;
+ at cac on cua X cha co mat tren Open hoac Closed vao cuoi
danh sach Open;
end
end;
end.


2) Giai thuat tm kiem theo chieu sau (Depth First Search) :
Giai thuat tm kiem theo chieu sau la giai thuat tm kiem nhanh theo nhanh
cua cay. Giai thuat bat au t nut goc tm kiem en con, chau, chac cua goc,
neu giai thuat tm thay ch th dng thu tuc tm kiem va thiet lap ng li giai
t nut goc thong qua cac nut lien ket en nut ch; mat khac neu giai thuat tm
thay ng cut th no lui ve tm kiem nut anh em.

Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 19
Cho khong trang thai cua bai toan nh hnh tren, th t cua cac trang thai tm
kiem vi giai thuat tm kiem theo chieu sau la A, B, E, K, S, L, T, F, M, C, G, N,
H, O, P, U, D, I, Q, J, R.

Giai thuat cung c trang b bang hai danh sach m Open va ong Closed giong
nh giai thuat tm kiem theo chieu rong. Giai thuat c mo ta nh sau :

Procedure depth_first_search
Begin
Open = [Start];
Closed = [ ];
While Open [ ]
Begin
+ Loai bo nut au tien t danh sach Open va goi nut nay la X.
If X = ch Then tra ve thanh cong
Else begin
+ Phat sinh cac con cua X dung cac luat ap dung hp vi X;
+ at X vao danh sach Closed;
+ Loai bo cac con cua X a co mat tren Open hoac Closed;
+ at cac on cua X cha co mat tren Open hoac Closed vao au
danh sach Open;
end
end;
end.

3) Giai thuat tm kiem truyen lui ( Back Tracking search ) :
Mot giai thuat tm kiem khac c goi la giai thuat tm kiem truyen lui, cach tm
kiem ch cua giai thuat nay cung giong nh cach tm kiem ch cua giai thuat tm
kiem theo chieu sau. Giai thuat c trang b bang ba danh sach N, S va D, trong
o danh sach N cha cac trang thai ang ch se c duyet qua, danh sach S cha
cac trang thai a c duyet qua tren ng tm kiem va D la danh sach cha cac
trang thai cua cac ng cut. Khi giai thuat tm thay ch, danh sach S c thiet
lap vi cac trang thai lien ket nhau t nut goc en nut ch o la ng li giai cua
bai toan. Giai thuat c mo ta nh sau :

Function backtracking
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 20
Begin
N = [Start];
S = [Start];
D = [ ];
C = Start;
While N [ ]
Begin
If C = ch then return (S)
Elseif C khong co tha ke
( Khong ke cac tha ke a co mat tren N, S hoac D)
begin
while S [ ] va C la phan t au tien cua S
begin
+ at C vao au danh sach D.
+ Loai bo nut au tien cua S.
+ Loai bo nut au tien cua N.
+ at C = phan t au tien cua N.
end
at C vao au danh sach S.
end
Else
begin
+ Khai trien cac tha ke cua C dung cac luat ng hp vi C.
+ Loai bo tat ca cac tha ke cua C a co mat tren N, S, hoac D.
+ at cac tha ke cua C cha co mat tren N, S, hoac D vao au
danh sach N.
+ at C = phan t au tien cua N.
+ at C vao au danh sach S.
end
end;
end.

2.4) Tm Kiem Heuristic :
1) Heuristic la g ?
Tri thc ieu khien cua bai toan con c goi la heuristic. Heuristic la luat
chu chot ieu khien thuat toan tm kiem bam theo ng co cac trang thai tot nhat
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 21
e at en ch. Heuristic co the c the hien di dang luat hoac di dang ham
so. Neu no c the hien di dang luat th no c goi la luat heuristic va neu no
c the hien di dang ham th no c goi la ham heuristic.
Heuristic con c goi la tri thc nong can cua bai toan v no ch oan bat
trang thai tot nhat bc ke theo trong qua trnh giai quyet van. Do o heuristic oi
luc khong the am bao tm thay li giai tot nhat nhng hau het no am bao tm thay
li giai tng oi tot nhat.
Neu ta nh ngha h(n) la ham heuristic tai trang thai n th h(n) la mot c
lng tnh t trang thai n en trang thai ch cua bai toan. Trang thai nao co
heuristic nho nhat o la trang thai tot nhat c chon e tiep dien qua trnh tm
kiem.
+ Neu trang thai n khong dan en ng cut th heuristic cua no la h(n) >= 0.
+ Neu trang thai n dan en ng cut th heuristic cua no la h(n) = .
+ Neu trang thai n dan en trang thai ch cua bai toan th heuristic cua no la
h(n) = 0.

V du 1 : Cho bai toan tro chi 8 so vi cau hnh trang thai ban au va trang thai
ch nh hnh ve


2 8 3
1 6 4
7 5
Trang Thai Ban au
1 2 3
8 4
7 6 5
Trang Thai ch




Heuristic cua bai toan nay la so cac vien ngoi at khong ung cho tai moi trang
thai n so vi trang thai ch cua bai toan. Trang thai nao co so vien ngoi at khong
ung cho t nhat o la trang thai tot nhat c chon e tiep dien qua trnh tm kiem.
Khi thuat toan at en ch, heuristic cua bai toan tien en zero.

2) Giai thuat tm kiem Best_First_Search :
Mot trong cac giai thuat tm kiem s dung heuristic o la giai thuat
Best_first_search. Giai thuat c trang b bang hai danh sach m Open va ong
Closed cung giong nh giai thuat tm kiem theo chieu rong va chieu sau. Giai thuat
bat au tm kiem vi nut goc cua cay, khai trien cac tha ke cua goc nh thong qua
cac luat ng dung, c lng heuristic cho tat ca cac nut con cua goc, chon nut co
heuristic nho nhat e en vieng tham va thao bo tat ca cac nut con lai. Thu tuc nay
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 22
c lap lai cho tat ca cac nut vieng tham cho en khi nao trang thai ch cua bai
toan c tm thay. Cach tm kiem nay tao ra mot ng lien ket bam theo cac
trang thai co thong tin heuristic no nhat o la cac trang thai c anh gia la tot
nhat e at en ch.

Giai thuat c mo ta nh sau :
Procedure best_first_search
Begin
Open = [Start];
Closed = [ ];
While Open [ ]
Begin
+ Lay nut au tien cua danh sach Open , goi nut nay la X va loai bo X
khoi danh sach Open.
+ If X = ch Then return(success)
Else
Begin
+ Khai trien cac tha ke cua X nh thong qua cac luat ng dung.
Cho moi tha ke cua X thc hien mot trong cac trng hp nh sau :
Case : Tha ke cha xuat hien tren danh sach Open hoac Closed.
+ c lng heuristic cho tha ke.
+ at tha ke vao danh sach Open.
Case : Tha ke a co mat tren danh sach Open.
+ c lng heuristic cho tha ke.
+ Neu trang thai mi xuat hien la tot hn trang thai cu a xuat
hien tren Open th loai bo cu khoi danh sach Open va at mi vao danh
sach Open; mat khac gi lai trang thai cu danh sach Open va loai bo
trang thai mi xuat hien.
Case : Tha ke a co mat tren danh sach Closed.
+ c lng heuristic cho tha ke.
+ Neu trang thai mi xuat hien la tot hn trang thai cu a co mat
san tren Closed th loai bo cu khoi danh sach Closed va at mi vao
danh sach Open; mat khac gi lai trang thai cu danh sach Closed va
loai bo trang thai mi xuat hien.
End
+ at X vao danh sach Closed.
Bien soan: Tien s Nguyen Thien Thanh

+ Sap xep lai cac trang thai trong danh sach Open theo th t t au danh
sach en cuoi danh sach tng ng vi trang thai tot nhat en trang thai xau
nhat.
End;
End.
3) Ham anh gia heuristic :
Gia s qua trnh tm kiem vi thong tin heuristic tren khong gian bai toan co
hai hoac nhieu trang thai xuat hien co cung heuristic, trong trng hp nay, trang
thai nao la gan goc nhat cua cay o la trang thai to nhat. e anh gia ay u thong
tin heuris cho cac trng hp nh vay, mot ham anh gia heuristic c thiet lap
gom hai thanh phan o la
f(n) = h(n) + g(n)
trong o, h(n) la ham heuristic tai moi trang thai n va g(n) la ham chi ph o t trang
thai goc cua cay en nut trang thai n.
V vay, qua trnh tm kiem, trang thai nao co f(n) la nho nhat o la trang thai tot
nhat c chon e tiep dien tm kiem.
V du : Cho ban o cua cac thanh pho nh hnh ve

O
Hoc k 2 nam hoc 2005-2006 Trang 23

















Z
A
T
L
M
D
S
R
C
F
P
B
G
U H
E
V
I
N
71
151 87
75
99
140
92
118 80
142
211
111
75
70
164
97
101
85 98
138 86
90
120
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 24
Trong o, khoang cach thc s gia cac thanh pho c anh nhan tren ban o va
khoang cach ng chim bay gia cac thanh pho en thanh pho B c liet ke nh
bang

Khoang cac ng chim
bay t cac thanh pho
en thanh pho B
A 366 Km
B 0 Km
C 160 Km
D 242 Km
E 161 Km
F 178 Km
G 77 Km
H 151 Km
I 226 Km
L 244 Km
M 241 Km
N 234 Km
O 380 Km
P 98 Km
R 193 Km
S 253 Km
T 329 Km
U 80 Km
V 199 Km
Z 374 Km
Giai thuat tm kiem s dung thong tin heuristic tm ng i ngan nhat t thanh pho
A en thanh pho B c mo ta nh hnh ve






Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 25

A
S T
h =366
Z
h =329 h =374 h =253
A F O
h =366 h =178 h =380
R
h =193
S B
h =253 h =0
















Giai thuat tm kiem s dung thong tin ham anh gia heuristic tm ng i ngan
nhat t thanh pho A en thanh pho B c mo ta nh hnh ve


A
S T
f =0 +366
=366
Z
f =329 +118
= 447
f =374 +75
= 449
f =253 +140
= 393
A F O
f =366 +280
= 646
f =178 +239
=417
f =380 +146
=526
R
f =193 +220
=413
C P
f =98 +317
= 415
f =253 +300
=553
S
f =160 + 366
=426















Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
2.5) Bai Toan Rang Buoc :
Rang buoc la moi quan he gia hai hoac nhieu oi tng. Bai toan thoa man
rang buoc la tm cac gia tr cho cac oi tng sao cho thoa man nghiem so cua bai
toan at ra.
V du : Cho bai toan he cua hai phng trnh tuyen tnh la
x + y = 2
3x y = 2
trong o moi phng trnh tuyen c goi la mot rang buoc cua bai toan. Bai toan
thoa man rang buoc la tm cac gia tr cho cac oi tng x va y sao cho thoa man
nghiem cua he phng trnh.

Xet bai toan cong rao so hoc (Cryarithmetic) rang buoc ien hnh la

MONEY
MORE
SEND
+

Bai toan at ra latm cac ch so t 0 en 9 gan cho cac oi tng ch cai tng ng
sao cho bieu thc so hoc cua chung la ung.
Bai toan co cac rang buoc la
+ Hai ch cai la khong cung mot ch so
+ Cac rang buoc khac cua bai toan la
S + M + C
3
= O nh C
4
.
E + O + C
2
= N nh C
3
.
N + R + C
1
= E nh C
2
D + E = Y.
Trang thai ban au cua bai toan la
S = ? C
1
= ?
E = ? C
2
= ?
N = ? C
3
= ?
D = ? C
4
= ?
M = ?
O = ?
R = ?
Y = ?
Trang thai ch cua bai toan la tm cac ch so t 0 en 9 gan cho cac oi tng ch
cai sao cho bieu thc so hoc cua chung la thoa man rang buoc cua bai toan at ra
ien hnh la vi S = 9, M = 1, O = 0, E = 5, N = 6, R = 8, D = 7 va Y = 2.
Trang 26
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 27

Li giai cua bai toan co the c tm thay la

MONEY
MORE
SEND
+

10652
1085
9567
+


Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 28
Chng 3 : He Chuyen Gia
3.1) He chuyen gia la g ?
He chuyen gia la mot chng trnh c s tri thc lam viec giong nh mot
chuyen gia con ngi. He chuyen gia cac cac ac iem nh sau :

+ Tach tri thc cua bai toan khoi c che ieu khien : Hai thanh phan quan trong
nhat cua he chuyen gia o la c s tri thc va bo may suy dien. Hai thanh phan nay
tach biet nhau trong he chuyen.

+ Tri thc chuyen gia : Tri thc giai bai toan trong he chuyen gia la tri thc thu thap
t ngi chuyen gia.

+ Tap trung nguon chuyen gia : Ngi chuyen gia ch co kha nang giai quyet cac
van e trong lnh vc chuyen mon cua ho, con cac van e ngoai lnh vc chuyen
mo nay , ho khong co kha nang. Giong nh cach giai quyet van e cua ngi
chuyen gia, he chuyen gia ch giai quyet c cac van e trong lnh vc hep
chuyen mon.

+ X ly tri thc bang ky hieu : Tri thc giai bai toan trong he chuyen gia c ma
hoa bang ky hieu va x ly nhng ky hieu nay tren c s lap luan logic.

+ X ly tri thc vi heuristic : Ngi chuyen gia co rat nhieu kinh nghiem giai
quyet van e trong lnh vc chuyen mon cua ho. Vi kinh nghiem nay giup ho giai
quyen van e rat nhanh. Giong nh cach giai quyet van e cua ngi chuyen gia,
cac he chuyen gia hau het eu s dung thong tin heuristic thu thap c t kinh
nghiem cua ngi chuyen gia giup he giai quyet van e nhanh nhat va hieu qua
nhat.

+ X ly tri thc khong chac chan : Hn 80% ng dung trong thc te khong the giai
quyet c bang cac phng phap lap luan chac chan. He chuyen gia co the giai
quyet c nhng ng dung nay nh vao cac phng phap x ly tri thc khong chac
chan.

+ Bai toan giai c : He chuyen gia ch giai c bai toan nao ma ngi chuyen
gia giai c.
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 29
+ Mc phc tap va phai : Khong nen thiet ke mot he chuyen gia e giai quyet van
e qua n gian va cung khong nen mong i he chuyen gia co the giai quyet van
e qua phc tap ngoai kha nang giai quyet van e cua ngi chuyen gia.

+ Chap nhan sai lam : Ngi chuyen gia giai quyet van e oi luc cung mac phai
sai lam, v the ta phai chap nhan mot so rui ro khi s dung he chuyen gia.

3.2) Cau truc he chuyen gia :
Xem xet ngi chuyen gia giai quyet van vi mien tri thc cua ho lu tr
trong vung nh dai han va qua trnh ly giai vi cac s kien c phat sinh lu tr
trong vung nh ngan han nh hnh ve



Long Term Memory
Domain Knowlege
Short-Term Memory
Case/Inferred Facts
Conclusions
Reasoning
Advisee
Case Facts
Conclusions









Nguyen tac lam viec cua ngi chuyen gia nh sau :
+ Ngi tham van tham van ngi chuyen gia ve bai toan, cac s kien ban
au cua bai toan c a en lu tr trong vung nh dai han.

+ Bo may suy dien cua ngi chuyen gia lien ket cac s kien trong vung nh
ngan han vi tri thc giai bai toan san co trong vung nh dai han e suy dien ra cac
s kien mi.

+ Cac s kien mi nay c a vao lu tr trong vung nh ngan han.

+ Thu tuc nay c lap lai cho en khi ket luan cua bai toan c tm thay.



Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
Giong nh c che lam viec cua ngi chuyen gia, cau truc he chuyen gia c mo
ta nh hnh



Knowledge Base
Domain Knowlege
Working memory
Case/Inferred Facts
Conclusions
Inference
Engine
User
Case Facts
Conclusions










+ C s tri thc : la phan cua he chuyen gia cha mien tri thc. Cong viec cua ta
c xem nh la ngi ky s tri thc lay tri thc giai bai toan t ngi chuyen gia
va ma hoa no trong vung c s tri thc.

+ Bo nh lam viec : la phan cua he chuyen gia cha cac s kien ve bai toan c
kham pha e dan en ket luan.

+ Bo may suy dien : He chuyen gia mo hnh hoa qua trnh x ly ly giai nh con
ngi. V the bo may suy dien o chnh la bo x ly trong he chuyen gia hp cac s
kien c cha trong vung nh lam viec va mien tri thc c cha trong vung c
s tri thc e dan en ket luan ve bai toan.

3.3) Thiet Ke He Chuyen Gia :
Co hai cach giai quyet van e trong cac he chuyen gia o la giai quyet van
e theo hng thuan va giai quyet van e theo hng nghch. He chuyen gia c
thiet ke e giai quyet van e theo hng thuan c goi la he chuyen gia suy dien
tien va he chuyen gia c thiet ke e giai quyet van e theo hng nghch c
goi la he chuyen gia suy dien lui.




Trang 30
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 31

1) He chuyen gia suy dien tien :
He chuyen gia suy dien tien la he chuyen gia giai quyet van e bat au ly
giai t d lieu ban au cua bai toan lap luan tren c s logic e kham pha cac s
kien mi dan en ket luan ve bai toan. e thiet ke mot he chuyen gia suy dien tien
bao gom cac bc c mo ta nh sau :

Bc 1 : nh ngha van e.
Bc nay gom co phan tch van e e nam bat hng giai quyet van e chi
tiet va cu the o la phai xac nh c d lieu vao ra cua he thong va phng thc
x ly so lieu vao ra cua he thong.
Bc 2 : nh ngha d lieu vao cua he thong.
nh ngha d lieu vao cua he thong sao cho au t d lieu ban au cua bai
toan hp vi ve ieu kien cua luat suy dien th nhat e d lieu ch cua no la d
lieu vao cho luat ke theo..
Bc 3 : nh ngha cau truc ieu khien cua he thong.
Cau truc ieu khien d lieu suy dien tien cua he thong o la c s luat suy
dien tien bao gom tat ca cac luat mo ta tong quat cach giai bai toan c the hien
di dang luat If Then vi ve ieu kien cua luat au tien hp vi d lieu ban au
cua bai toan e ve phai cua luat phat sinh ra ch th nhat, ve ieu kien cua luat
th 2 hp vi ch th nhat e ve phai cua luat phat sinh ra ch th 2 va c nh the
cho en luat th n ma ve ket luan cua no at en li giai cuoi cung.
Bc 4 : Ma hoa c s tri thc.
C s tri thc gom c s luat va c s d lieu. Cac thanh phan nay phai
c ma hoa nh cac phng phap bieu dien tri thc nh logic v t, khung.
Bc 5 : Th nghiem he thong.
Cho so lieu vao, qua trnh x ly cua he thong cho so lieu ra vi nhieu tnh
huong khac nhau bao trum ca khong gian vao.
Bc 6 : Thiet ke he thong giao dien ngi x dung he chuyen gia.
Bc 7 : M rong he thong.
M rong c s tri thc cua he sao cho giai quyet bai toan cang linh hoat, cang
mem deo la cang tot o la qua trnh cai tien hoac them bt luat suy dien va c s
d lieu.
Bc 9 : anh gia he thong.
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 32
Bc nay a he thong vao thou nghiem trong cac trng hp thc ke e rut
ra ket luan anh gia chat lng van hanh cua he thong ang tin cay hoac cha ang
tin cay.
V du 1 : Thiet ke he chuyen gia suy dien tien co van sinh vien hoc tap.

+ nh ngha van e : Bai toan at ra ra la thiet ke he chuyen gia suy dien tien co
van sinh vien hoc tap giai quyet cac van e nh sau :
1- Giai quyet cac mon hoc ma sinh vien a thi au cho qua.
2- X ly cac mon hoc ma sinh vien c at cach cho qua.
3- X ly cac mon hoc co cac mon hoc tien quyet.
4- X ly cac mon hoc ma sinh vien c phep ang ky hoc trong moi
hoc ky.
+ nh ngha d lieu vao : D lieu vao cua bai toan gom co
1- Cac mon hoc bat buoc.
2- Cac mon hoc t chon.
3- Cac mon hoc co cac mon hoc tien quyet.
4- Cac mon hoc ma sinh vien a hoc xong.
5- Cac mon hoc cho phep sinh vien c ang ky trong moi hoc ky.
+ Cau truc ieu khien d lieu suy dien tien cua he thong : e x ly so lieu vao ra
cua he thong, c s luat cua he thong c thiet lap gom cac luat la

Luat 1 : Neu X la mon hoc ma sinh vien a thi au cho qua th sinh vien a hoc
xong mon hoc vi X.
Luat 2 : Neu X la mon hoc ma sinh vien a c at cach cho qua th sinh vien a
hoc xong mon hoc vi X.
Luat 3 : Neu sinh vien a hoc xong mon hoc vi X va Q la danh sach cha cac
mon hoc ma sinh vien a hoc xong th Q cha X.
Luat 4 : Neu X co mon hoc tien quyet Y th mon hoc tien quyet cua X la Y.
Luat 5 : Neu X co mon hoc tien quyet Y va Y co mon hoc tien quyet Z th mon
hoc tien quyet cua X la Z.
Luat 6 : Neu mon hoc tien quyet cua X la Y va P la danh sach cha cac mon hoc
tien quyet th cua X P phai cha Y.
Luat 7 : Neu Q la danh sach cha cac mon hoc ma sinh vien a hoc xong vi X, P
la danh sach cha cac mon hoc tien quyet cua X va P la tap con cua Q th sinh vien
a hoc xong tat ca vi cac mon hoc hoc tien quyet cua X.
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 33
Luat 8 : Neu X la mon hoc bat buoc, sinh vien cha hoc xong vi X, sinh vien a
hoc xong tat ca vi cac mon hoc tien quyet cua X va X la mon hoc cho phep sinh
vien ang ky hoc trong hoc ky th cho phep sinh vien ang ky mon hoc vi X.
Luat 9 : Neu X la mon hoc t chon, sinh vien cha hoc xong vi X , sinh vien a
hoc xong tat ca vi cac mon hoc tien quyet cua X va X la mon hoc cho phep sinh
vien ang ky hoc trong hoc ky th cho phep sinh vien ang ky mon hoc vi X.
+ Ma hoa c s tri thc : sau ay la mot v du ien hnh ma hoa c s tri thc gom
c s d lieu va c s luat.
- Cac mon hoc bat buoc c ma hoa bang ky hieu ien hnh la
req(intro to computing).
req(data structures).
req(assembler).
req(operating systems).
Van va van van.
- Cac mon hoc t chon c ma hoa bang ky hieu ien hnh la
elec(information systems).
elec(compilers).
elec(algorithm analysis).
Van va van van.
- Cac mon hoc tien quyet c ma hoa bang ky hieu ien hnh la
impreq(data structures,intro to computing).
impreq(calculus 2,calculus 1).
impreq(operating systems,assempler).
Van va van van.
- Cac mon hoc cho phep sinh vien c phep ang ky hoc trong hoc ky
c ma hoa bang ky hieu ien hnh la
given_now(intro to computing).
given_now(calculus 2).
Van va van van.
- Cac mon hoc ma sinh vien a c at cach cho qua va thi au cho c
ma hoa bang ky hieu ien hnh la
waived(intro to computing).
waived(calculus 1).
passed(data structures).
passed(assempler).
passed(calculus 2).
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
Van va van van.
- Luat 1 c ma hoa bang ky hieu ien hnh la
if passed(X) then done_with(X).
- Luat 2 c ma hoa bang ky hieu ien hnh la
if waived(X) then done_with(X).
- Luat 3 c ma hoa bang ky hieu ien hnh la
if findall(Y, done_with(Y),X)) then all_done_with(X).
- Luat 4 c ma hoa bang ky hieu ien hnh la
if impreq(X,Y) then preq(X,Y).
- Luat 5 c ma hoa bang ky hieu ien hnh la
if impreq(X,Y) and preq(Y,Z) then preq(X,Z).
- Luat 6 c ma hoa bang ky hieu ien hnh la
if findall(Y,preq(X,Y),Z) then all_preq_for(X,Z).
- luat 7 c ma hoa bang ky hieu ien hnh la
if all_preq_for(X,Z) and all_done_with(Q) and subset(Z,Q)
then have_preq_for(X).
- Luat 8 c ma hoa bang ky hieu ien hnh la
if req(X) and not(done_with(X)) and given_now(X) and
have_preq_for(X) then pos_req_course(X).
- Luat 9 c ma hoa bang ky hieu ien hnh la
if elec(X) and not(done_with(X)) and given_now(X) and
have_preq_for(X) then pos_elec_course(X).

V du 2 : Thiet ke he chuyen gia suy dien tien e giai quyet bai toan chan oan s
co tren mot tram bm nc nh hnh ve












Motor1
Pump 1
Block 1

Motor2
Pump 2
Block 2

Motor3
Pump 3
Block 3
Line2 Line1 Line3 Line4
Trang 34
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 35


Tram bm nc gom co ba khoi lien ket nhau qua cac ng ong, trong o moi
khoi co mot may bm va mot motor.
Van e at ra cua bai toan la phat hien s co van hanh nc tren tram, nhan
dang khoi co s co va chan oan cac thanh phan b hong gay ra s co nh may
bm, motor hoac ng ong b r nc.
+ ieu kien phat hien s co van hanh nc tren tram o la ap suat ra tren
cac ng ong cua tram la thap hn ap suat van hanh nc bnh thng.
+ ieu kien khoi co s co van hanh nc tren tram la ap suat vao tren cac
ng ong cua khoi la bnh thng trong khi o ap suat ra tren cac ng ong cua
khoi la thap hn ap suat bnh thng.
+ Cac thanh phan cua khoi la motor, may bm va ng ong. Khi a xac nh
c khoi co s co van hanh nc th mot trong cac thanh phan nay cua khoi la
nhan to quyet nh gay ra s co.
- ieu kien motor van hanh yeu o la nguyen nhan gay ra s co th khi o
ch so van hanh motor c oc ve t cam bien la thap.
- ieu kien may bm b hong o cung la nguyen nhan gay ra s co th khi
o ap suat c oc ve t cam bien la ap suat vao cua khoi bang ap suat
ra cua khoi.
- ieu kien ung ong b r nc o la nguyen nhan gay ra s co th khi o
ap suat c oc ve t cam bien la ap suat vao cua khoi phai la nho hn
ap suat ra cua khoi.
T viec phan tch bai toan noi tren, d lieu vao cua he thong la ap suat va ch so
van hanh cua motor.
Gia s ap suat van hanh nc bnh thng cua cac ng ong la
+ Line 1 = 50 psi
+ Line 2 = 100 psi
+ Line 3 = 150 psi
+ Line 4 = 200 psi
va ta cung gia s rang ch so van hanh bnh thng cua cac motor la motor1 =
motor2 = motor3 = 1.
Tren c s o, cau truc ieu khien d lieu vao ra cua he thong x ly hai khoi
tren tram gom cac luat c thiet lap nh sau :
Luat 1 : if line1 < 50 then line1 = low.
Luat 2 : if line1 >= 50 then line1 = normal.
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 36
Luat 3 : if line2 < 100 then line2 = low.
Luat 4 : if line2 >= 100 then line2 = normal.
Luat 5 : if line3 < 150 then line3 = low and display fault detected.
Luat 6 : if line3 >= 150 then line3 = normal.
Luat 7 : if mortor1 < 1 then motor1 = low.
Luat 8 : if motor2 >= 1 then motor1 = normal.
Luat 9 : if mortor2 < 1 then motor2 = low.
Luat 10 : if motor2 >= 1 then motor2 = normal.
Luat 11 : if line1 = normal and line2 = low then block1 = fault .
Luat 12 : if line2 = normal and line3 = low then block2 = fault.
Luat 13 : if block1 = fault and motor1 = low then motor1 = fault and display
fault found.
Luat 14 : if block2 = fault and motor2 = low then motor2 = fault and display
fault found.
Luat 15 : if block1 = fault and motor1 = normal and line1 pressure = line2
pressure then pump1 = fault and display fault found.
Luat 16 : if block2 = fault and motor2 = normal and line2 pressure = line3
pressure then pump2 = fault and display fault found.
Luat 17 : if block1 = fault and motor1 = normal and line1 pressure < line2
pressure then line2 = fault and display fault found.
Luat 18 : if block2 = fault and motor2 = normal and line2 pressure < line3
pressure then line3 = fault and display fault found.

2) Thiet ke he chuyen gia suy dien lui :
He chuyen gia suy dien lui la he x ly so lieu vao ra bat au t d lieu ch
vi cau truc ieu khien luat suy dien moc xch lui ve d lieu ban au cua bai
toan. e thiet ke mot he chuyen gia moc xch suy dien lui gom cac bc la
+ nh ngha bai toan.
+ nh ngha cac ch cua bai toan.
+ Thiet ke cac luat moc xch ch suy dien lui giai quyet bai toan.
+ M rong he thong.
+ Cai tien he thong.
+ Thiet ke giao dien ngi s dung he chuyen.
+ anh gia he thong.
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 37
V du : Thiet ke he chuyen gia suy dien lui t van tai chanh bao gom cac cong viec
c mo ta nh sau :
1) nh ngha van e : Bai toan t van khach hang ve tai chanh nen au t so tien
cua ho vao mot trong cac loai phan von au t nh tiet kiem, chng khoan, cong
trai va tiet kiem va th trng chng khoan ieu o phai phu thuoc vao tnh
trang ban than va tnh trang tai chanh cua khach hang. Tnh trang ban than cua
khach hang phu thuoc vao o tuoi, cong viec lam va tnh trang gia nh. Tnh
trang tai chanh cua khach hang phu thuoc vao tai san hien co va tnh trang gia
nh. Nh vay, hai nhan to quan trong nhat e dan en ch cua bai toan t van
khach hang au t phan tien cua ho vao cac khoan au t o la tnh trang ban
than va tnh trang tai chanh cua khach hang la on nh hoac khong on nh.
2) nh ngha cac ch cua bai toan : Vi bai toan nay, cac ch cua bai toan c
nh ngha la
+ Phan von au t loai 1 : 100% au t vao tiet kiem
+ Phan von au t loai 2 : 60% th trng chng khoan, 30% th trng cong
trai va 10% tiet kiem.
+ Phan von au t loai 3 : 20% th trng chng khoan, 40% th trng cong
trai va 40% tiet kiem.
+ Phan von au t loai 4 : 100% au t vao th trng chng khoan.
3) Thiet ke cac luat suy dien ch : Luat suy dien ch cua he chuyen gia suy dien
lui la luat co cau truc nhn t ch lui ve d lieu. ieu o co ngha la ch cuoi
cung cua bai toan phai cnh ngha, t o nhn ve cac nhan to quyet nh e
dan en ch va cac nhan to quyet nh nay c xem nh la cac ch mi e
nhn ve cac nhan to quyet nh khac dan en ch mi nay. Thu tuc thiet ke luat
nay c lap lai cho en khi nhan to quyet nh la ngo vao t d lieu ban au
cua bai toan.
He thong luat moc xch suy dien ch e giai bai toan t van khach hang ve tai
chanh c thiet lap la :
Luat 1 : Neu so tien cua khach hang la nho hn 1000 dollars th t van khach hang
nen au t 100% so tien cua ho vao phan von au t tiet kiem.
Luat 2 : Neu tnh trang ban than cua khach hang la khong on nh va tnh trang thai
chanh cua khach hang la khong on nh th t van khach hang nen au t 100% so
tien cua ho vao phan von au t tiet kiem.
Luat 3 : Neu tnh trang ba than cua khach hang la khong on nh va tnh trang thai
chanh cua khach hang la on nh th t van khach hang nen au 60% so tien cua ho
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 38
vao phan von au t chng khoan, 30% so tien cua ho vao phan von au t cong
trai va 10% so tien cua ho vao phan von au t tiet kiem.
Luat 4 : Neu tnh trang ban than cua khach hang la on nh va tnh trang tai chanh
cua khach hang la khong on nh th t van khach hang au t 20% so tien cua ho
vao phan von au t chng khoan, 40% so tien cua ho vao phan von au t cong
trai va 40% so tien cua ho vao phan von au t tiet kiem.
Luat 5 : Neu tnh trang ban than cua khach hang la on nh va tnh trang thai chanh
cua khach hang la on nh th t van khach hang nen au t 100% so tien cua ho
vao phan von au t chng khoan.
Luat 6 : Neu tuoi cua khach hang la ln tuoi hoac viec lam cua khach hang la
khong on nh th tnh trang ban than cua khach hang la khong on nh.
Luat 7 : Neu tuoi cua khach hang la tre tuoi vaviec lam cua khach hang la on nh
va khach hang co tre con th tnh trang ban than cua khach hang la khong on nh.
Luat 8 : Neu tuoi cua khach hang la tre va viec lam cua khach hang la on nh va
khach hang khong co tre con th tnh trang ban than cua khach hang la on nh.
Luat 9 : Neu tuoi cua khach hang la ln hn 40 th tuoi cua khach hang la ln tuoi.
Luat 10 : Neu tuoi cua khach hang la nho hn 40 th tuoi cua khach hang la tre
tuoi.
Luat 11 : Neu thi gian hp ong lam viec cua khach hang la hn 10 nam th viec
lam cua khach hang la on nh.
Luat 12 : Neu thi gian hp ong lam viec cua khach hang la t 3 nam en 10 nam
va mc o sa thai la thap th viec lam cua khach hang la on nh.
Luat 13 : Neu thi gian hp ong lam viec cua khach hang la t 3 nam en 10
nam va mc o sa thai la cao th viec lam cua khach hang la khong on nh.
Luat 14 : Neu thi gian hp ong lam viec cua khach hang la t hn 3 nam th viec
lam cua khach hang la khong on nh.
Luat 15 : Neu tong so tai san cua khach hang la nho hn tong so n cua khach
hang th tnh trang tai chanh cua khach hang la khong on nh.
Luat 16 : Neu tong so tai san cua khach hang la ln hn tong so n cua khach
hang va nho hn 2 lan tong so n cua khach hang va khach hang co tre con th tnh
trang tai chanh cua khach hang la khong on nh.
Luat 17 : Neu tong so tai san cua khach hang la ln hn tong so n cua khach
hang th tnh trang tai chanh cua khach hang la on nh.
Chay he chuyen gia nay vi cac so lieu vao la
So tien au t : 5000 dollars
Tuoi cua khach hang : 30
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 39
Thi gian hp ong lam viec : 5 nam
Co tre con khong : Co
Tong so tai san : 100000 dollars
Tong so n : 20000 dollars.
Mang suy dien luat ch cua he chuyen gia suy dien lui t van tai chanh c mo ta
nh hnh












Mang suy dien tnh trang ban than cua khach hang c mo ta nh hnh

















Portfolio 1 Portfolio 2 Portfolio 3 Portfolio 4
Investment
<1000
Person state
=stable
Person state
=unstable
Financial tate
=unstatble
Or and and and and
Financial tate
=statble
Person state
=stable
Person state
=unstable
Or and and
Client is old J ob not
steady
Client is
young
J ob steady Client has
children
Client has
no children
>=40 Or and
and
Service <3 Service 3-
10
Layoffs
high
Layoffs low
Service >
10
<40
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com


Mang suy dien tnh trang trang tai chanh cua khach hang c mo ta nh hnh












Financial tate
=unstatble
Financial tate
=statble
Or
and and
Total assets
<total liab. Totalassets <
2*totalliab.
Client has
children
Client has
no children
Totalassets >
2*totalliab.
Totalassets >
totalliab.
Trang 40
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 41
Chng 4 : Cac Phng Phap Bieu Dien Tri Thc

4.1) Bieu Dien Tri Thc La G ?
Bieu dien tri thc la cach the hien tri thc trong may di dang sao cho bai
toan co the c giai tot nhat. Bieu dien tri thc trong may phai :
+ The hien c tat ca cac thong tin can thiet.
+ Cho phep tri thc mi c suy dien t tap cac s kien va luat suy dien.
+ Cho phep bieu dien cac nguyen ly tong quat cung nh cac tnh huong ac
trng.
+ Bat lay c y ngha ng ngha phc tap.
+ Cho phep ly giai mc tri thc cao hn.

Co hai loai tri thc cua bai toan can phai c bieu dien o la tri thc mo ta
va tri thc thu tuc.
Tri thc mo ta la loai tri thc mo ta nhng g c biet ve bai toan. Loai tri
thc nay bao gom s kien, oi tng, lp cua cac oi tng va quan he gia cac oi
tng.
Tri thc thu tuc la thu tuc tong quat mo ta cach giai quyet bai toan. Loai tri
thc nay bao gom thu tuc tm kiem va luat suy dien.
Co ba phng phap bieu dien tri thc mo ta c ban o la phng phap bieu
dien tri thc nh logic v t, phng phap bieu dien tri thc nh mang ng ngha va
phng phap bieu dien tri thc bang khung.
Phng phap bieu dien tri thc nh logic v t o la lp bieu dien s dung cac
bieu thc logic e bieu dien c s tri thc. Luat suy dien va thu tuc chng minh ly
giai tri thc nay tren c s logic vi cac yeu cau bai toan at ra. Tuy nhien, o ch
la mot thanh phan cua bieu dien logic c trang b cho cong viec y tng lap trnh
cua ngon ng lap trnh Prolog.
Phng phap bieu dien tri thc nh mang ng ngha o la dung mang e bieu
dien tri thc nh la mot cau truc d lieu, trong o moi quan he gia cac oi tng
c thiet lap thong qua mang bieu dien tri thc.
Phng phap bieu dien tri thc nh frame con c goi la ngon ng bieu
dien cau truc o la s m rong cua mang, trong o moi nut cua mang la mot cau
truc d lieu cha cac slot vi cac gia tr cua chung c kem theo va cac thu tuc
giai quyet van e thc hien tren cac tac vu frame nay.


Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 42

4.2) Bieu Dien Tri Thc Nh Logic V T :

1) Logic e xuat :
Logic e xuat la tap cua cac e xuat, trong o moi e xuat la mot phat bieu ma
noi dung cua no co the la ung hoac la sai .
Cu phap cua logic e xuat gom co ky hieu chan ly, ky hieu e xuat va toan t
logic.

+ Ky hieu chan ly : Ky hieu chan ly la hai ch cai in hoa T va F, trong o T xac
nh noi dung cua phat bieu la ung va F xac nh noi dung cua phat bieu la sai.

+ Ky hieu e xuat : Ky hieu e xuat la cac ch cai in hoa nh A, B, C, D, . c
s dung e bieu dien e xuat.

+ Toan t logic : Toan t logic gom co cac loai toan t nh :
- : toan t logic lien t va.
- : toan t logic gii t hoac.
- : toan t logic phu nh.
- : Toan t logic keo neu.
- : toan t logic tng ng neu va ch neu.

+ Cau e xuat : Cau e xuat c nh ngha nh sau :
- Moi ky hieu e xuat va ky hieu chan ly la mot cau. V du ien hnh la
T, F, Q, P, hoac R la mot cau.
- Phu nh cua mot cau la mot cau. V du ien hnh la P la mot cau.
- Toan t ket noi lien t va cua hai cau la mot cau. V du ien hnh la PQ
la mot cau.
- Toan t ket noi gii t hoac cua hai cau la mot cau. V du ien hnh la
PQ la mot cau.
- Toan t keo theo cua mot cau cho mot cau khac la mot cau. V du ien
hnh la PQ la mot cau.
- S tng cua hai cau la mot cau. V du ien hnh la PQ = R la mot cau.
Tat ca cac cau hp le c xem nh la cac cong thc dang hoan thien
(WFFs).
- bieu thc dang PQ, trong o P va Q c goi la cac lien t.
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 43
- bieu thc dang PQ, trong P va Q c goi la cac gii t.
- bieu thc dang PQ, trong o P c goi la tien ieu kien va Q c
goi la ket luan.

Trong cau logic e xuat, cac ky hieu ( ) va [ ] c s dung e nhom cac bieu thc
con trong cau.
V du : Cho cong thc ( (PQ) R) = PQR o la mot dang cau hoan thien,
bi v :
- P, Q va R la cac e xuat va v the chung la cac cau hoan thien.
- PQ la lien t cua hai cau va v the no la mot cau hoan thien.
- (PQ) R la keo theo cua mot cau cho mot cau khac va v the no la mot
cau.
- P va Q la phu inh cua cau va v the chung la cau.
- PQ la gii t cua hai cau va v the no la mot cau hoan thien.
- PQR la gii t cua hai cau va v the no cung la mot cau hoan thien.
- ( (PQ) R) = PQR la s tng cua hai cau va v the no la mot cau
hoan thien.

+ Ng ngha cua logic e xuat : Ng ngha cua logic e xuat o chnh la gia tr
chan ly cua cac ky hieu e xuat. Gia tr chan ly ung cua mot e xuat c ky hieu
la T va gia tr chan ly sai cua mot e xuat c ky hieu la F.
- Gia tr chan ly cua phu nh , P la F neu P la T va P la T neu P la F.
- Gia tr chan ly cua lien t , la T ch khi nao gia tr chan ly cua ca hai
thanh phan cua no la T; mat khac gia tr chan ly cua no la F.
- Gia tr chan ly cua gii t , la F ch khi nao gia tr chan ly cua ca hai
thanh phan cua no la F; mat khac gia tr chan ly cua no la T.
- Gia tr chan ly cua phep keo theo , la F neu gia tr chan ly cua ve tien
ieu kien la T va gia tr chan ly cua ve ket luan la F; mat khac gia tr
chan ly cua no la T.
- Gia tr chan ly cua phep tng ng , la T ch khi nao hai thanh phan
cua no la co cung gia tr chan ly; mat khac gia tr chan ly cua no la F.

Cho P, Q va R la cac bieu thc e xuat, cac bieu thc sau ay la cac bieu thc logic
tng ng :
- (P) = P.
- (PQ) = (PQ).
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 44
- Luat de Morgan : (PQ) = (PQ).
- Luat de Morgan : (PQ) = (PQ).
- Luat phan bo : P(QR) = (PQ)(PR).
- Luat phan bo : P(QR) = (PQ)(PR).
- Luat giao hoan : (P Q) = (Q P).
- Luat giao hoan : (PQ) = (QP).
- Luat ket hp : ((PQ)R)) = (P(QR)).
- Luat ket hp : ((PQ)R)) = (P(QR)).
- Luat tng phan : (PQ) = (QP).
Hai bieu thc logic c goi la tng ng khi cac gia tr chan ly cua chung la
giong nhau.

2) Logic v t :
Logic v t la s m rong cua logic e xuat, oi luc no con c goi la logic bac
nhat. Trong logic e xuat, moi ky nhieu e xuat nh P, Q hoac R c s dung
e bieu dien mot e xuat. Vi cach bieu dien nay khong cho phep ta truy cap
cac thanh phan ca the trong mot e xuat. e khac phuc ieu nay nh en logic
v t. Cach bieu dien cac e xuat dung logic v t cho phep ta co the truy cap
cac thanh phan ca the trong mot e xuat.
V du : Cho e xuat la
It rained on Tuesday.
Cach bieu dien e xuat nay dung logic e xuat la
R = It rained on Tuesday.
Vi cach bieu dien nay, ta ch xac minh c gia tr chan ly cua ky hieu e xuat R
nhng ta khong the truy cap cac thanh phan ca the trong e xuat nh rained va
tuesday o la tnh huong thi tiet va thi gian.
Cach bieu dien e xuat tren dung logic v t la
weather(tuesday,rain).
Vi cach bieu dien nay, ta co the truy cap cac thanh phan ca the trong e xuat nh
tuesday va rain .
Trong cach bieu dien nay, ta cung co the thay the bien X bieu dien lp cua cac oi
tng trong tuan vi ac trng tuesday ien hnh la
weather(X,rain).
+ Cu phap cua logic v t : gom co ky hieu chan ly, ky hieu v t va cac phep toan
logic. V logic v t la s m rong cua logic e xuat, do o ky hieu chan ly va cac
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 45
phep toan logic cua logic v t va logic e xuat la giong nhau. S khac nhau gia
hai loai logic nay la ky hieu v t va ky hieu e xuat.
Ky hieu v t gom co hang v t, bien v t, ham v t, v t va v t nh
lng.

- Hang v t : la chuoi cua cac ch cai in thng dung e bieu dien ten
rieng hoac thuoc tnh rieng cua oi tng.
V du : john, tree, tall, blue la cac ky hieu hang v t hp le.

- Bien v t : la chuoi cua cac ch cai vi t nhat ch cai au tien cua chuoi
phai la ch cai in hoa dung e bieu dien lp cua cac oi tng.
V du : X la bien v t dung e bieu dien lp cua cac oi tng ngay trong
tuan hoac Breaker la bien v t dung e bieu dien lp cua cac oi tng may
cat ien.

- Ham v t : la anh xa t mot hoac nhieu phan t cua tap hp nay en mot
phan t duy nhat trong mot tap hp khac. Ham phai co ten rieng va cac
oi so vao cua no. Ten cua ham v t c qui c la chuoi cua cac ch
cai in thng. Cu phap tong quat cua ham la
Ten_ham(Cac oi so vao cua ham).
Ham nhan cac oi so vao t mot tap hp nay va tra ve duy nhat mot oi so ra
trong mot tap hp khac.
V du : Cho e xuat la
George is father of David.
e xuat nay co the c bieu dien bang ham v t father la
father(david).
Ham tra ve gia tr ra cua no la george.
Cho mot e xuat khac la
2 plus 3 is equal to 5.
e xuat nay co the c bieu dien bang ham v t plus la
plus(2,3).
Ham se tra ve gia tr ra la 5.
Cac oi so cua ham v t co the la hang v t hoac bien v t.
- V t : V t la mot dang ac biet cua ham v t. V t cung phai co ten
rieng va cac oi so vao cua no. Ten v t thng la moi quan he gia hai
hoac nhieu oi tng trong mot e xuat. Qui c at ten cho v t cung
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 46
giong nh ham v t. V t nhan cac oi so vao t mot tap hp va tra ve
oi so ra trong tap hp gia tr chan ly ung T hoac sai F.
V du : Cho e xuat la
George likes Kate.
e xuat nay co the c bieu dien bang v t likes la
likes(george,kate).
V t likes se tra ve logic true(T) neu George thch Kate; mat khac v t tra
ve gia tr logic false(F).
Cac oi so cua v t co the la hang v t, bien v t hoac ham v t.

V du : Cho e xuat la
X likes Kate, trong o X la lp cua cac oi tng an ong.
e xuat nay co the c bieu dien bang v t likes la
likes(X, kate).
V t se tra ve gia tr logic true (T) neu that s tat ca nhng ngi an ong
thch Kate; mat khac v t tra ve gia tr logic false (F).

- V t nh lng : Khi cac oi so vao cua ham v t hoac v t la bien v t
khi o e xac nh pham vi gia tr cua bien, hai ai lng ng trc bien
o la va , hai ai lng nay c goi la cac v t nh lng.
V t nh lng ng trc bien e xac nh bieu thc la ung cho moi
gia tr cua bien.
V t nh lng , ng trc bien e xac nh bieu thc la ung co mot vai
gia tr cua bien.
V du : Cho e xuat la
All humans are mortal.
e xuat nay co the c bieu dien la
(X) (human(X) mortal(X)).
Cho mot e xuat khac la
There is a student who is smart.
e xuat nay co the c bieu dien la
(X)(student(X) smart(X)).
V du ng dung : Sau ay la v du minh chng dung logic v t bieu dien c s tri
thc cua bai toan t van tai chanh.
1. saving_account(inadequate) investment(savings).
2. savings_count(adequate)income(adequate)investment(stocks).
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 47
3. savings_account(adequate)income(inadequate)investmentcombinat
ion).
4. X amount_save(X)Y(dependents(Y)
greater(X,minsavings(Y))) savings_account(adequate).
5. X amount_save(X)Y(dependents(Y)
greater(X,minsavings(Y))) savings_account(inadequate).
6. X earnings(X,steady)Y(dependents(Y)
greater(X,minincom(Y))) income(adequate).
7. X earnings(X,steady)Y(dependents(Y)
greater(X,minincom(Y))) income(inadequate).
8. X earnings(X,unsteady) income(adequate).
9. amount_saved(22000).
10. earnings(2500,steady).
11. dependents(3).
12. income(inadequate).
13. savings_account(adequate).


3) Giai bai toan bang phng phap hp giai :
Co hai hng giai bai toan trong lnh vc tr tue nhan tao o la giai bai toan
theo hng thuan va giai bai toan theo hng nghch. Mot trong cac phng phap
giai bai bai toan theo hng nghc o la phng phap hp giai. Phng phap hp
giai la phng phap giai bai toan bang chng minh phan e. e chng minh e
xuat P co gia tr logic ung t tap cac tien e, ta gia s P la sai, ieu o dan en
phu nh cua no la ung. Cong tien e nay vao tap cac tien e va hp giai chung
cho en khi nao co menh e rong xuat hien. Menh e rong nay chng to rang co s
mau thuan gia tien e a gia nh va tap cac tien san co. V the ta i en ket luan
rang phu nh cua P la khong tng thch va P la tng thch vi tap cac tien e.
Qui trnh chng minh phan e bang phng phap hp giai c mo ta gom cac bc
nh sau :
Bc 1 : Chuyen tat ca cac tien e dang cong thc logic hoan thien sang
dang logic menh e vi dang tong quat la a
1
a
2
a
3
a
n
s dung cac bieu thc
thc logic tng ng la
(P) = P.
PQ = PQ.
PQ = PQQP.
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 48
(PQ) = PQ
(PQ) = PQ.
(X) P(X) = (X)P(X).
(X) P(X) = (X)P(X).

Bc 2 : e chng minh e xuat P la ung, ta gia s P la sai, ieu o co
ngha la phu nh cua P la ung va cong phu nh nay vao tap cac tien e.

Bc 3 : a tat ca cac v t nh lng ve ng trc cac menh e va loai
bo chung khoi tap cac tien e.

Bc 4 : Chon cap menh e, mot co cha P va mot menh e khac cha P,
kh bo cap phan t nay, v chung co mau thuan. Cac phan t con lai cua hai menh
e hp nhau tao thanh menh e mi.

Bc 5 : Lap lai bc 4 cho en khi nao co menh e rong xuat hien th dng
thu tuc chng minh. Menh e rong la menh e khong cha bat ky mot phan t nao.
ieu nay chng to rang co s mau thuan gia tien e a gia s va tap cac tien e,
do o ta i en ket luan rang e xuat P la tng thch vi tap cac tien e va phu
nh cua e xuat P la khong tng thch vi tap cac tien e.

V du : Cho tap cac tien e la
1) All dogs are animals.
2) Fido is a dog.
3) All animals will die.
Hay chng minh rang Fido will die bang phng phap hp gai ?

Giai
Cac tien e c bieu dien bang logic v t dang hoan thien la
1) (X) (dog(x) animal(X)).
2) dog(fido).
3) (Y)(animal(Y) die(Y)).
e chng minh e xuat Fido will die la ung, gia s Fido wil die la sai va do
o phu nh cua no la ung o la die(fido). Cho tien e nay la tien e 4 va
cong no vao tap cac ten e.
1) (X) (dog(x) animal(X)).
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 49
2) dog(fido).
3) (Y)(animal(Y) die(Y)).
4) die(fido).
Chuyen cac tien e dang logic hoan thien ve dang menh e la
1) (X)(dog(X)animal(X)).
2) dog(fido).
3) (Y)(animal(Y)die(Y)).
4) die(fido).
Kh bo tat ca cac v t nh lng
1) dog(X)animal(X).
2) dog(fido).
3) animal(Y)die(Y).
4) die(fido).
Qui trnh chng minh bang cay hp gia nh phan c mo ta nh hnh














1) dog(X)animal(X). 3) animal(Y)die(Y).
dog(Y)die(Y).
Y/X.
2) dog(fido).
die(fido). 4) die(fido).
fido/Y.
Menh e rong



4.3) Bieu Dien Tri Thc Nh Mang Ng Ngha :
Mot cach bieu dien tri thc khac o la mang ng ngha. Cach bieu dien nay
cho ta cai nhn tong the ve tri thc cua bai toan bang bang o th. Tri thc cua bai
toan co the c the hien tren mot o th nh hng vi tap cac nut co danh nhan
e bieu dien cac oi tng va tap cac cung cua o th la cac ng mui ten co anh
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
nhan e ch cac quan he hoac cac tnh chat gia cac oi tng. Vi cach bieu dien
nay c xem nh mot cau truc d lieu ma cac rang buoc von san co trong bai toan
co the c vach ra va hng giai quyet van e cua bai toan bang cac luat suy dien
cung co the c thiet lap nh thong qua cac ng mui ten lien ket gia cac oi
tng. V the mang con c goi la mang suy dien tri thc.
V du : Cho bai toan quan he gia nh vi cac s kien la
1) John is father of Marry.
2) Mary is daughter of John.
3) Bod is father of John.
4) John is son of Bod.
5) Bod is husband of Kate.
6) Kate is wife of Bod.
7) John is son of Kate.
8) Bod is grandfather of Marry.
9) Kate is grandmother of Marry.
10) Marry is granddaughter of Bod and Kate.
Hay bieu dien cac s kien quan he gia nh nay nh mang ng ngha ?
Giai :
Cac s kien quan he gia nh c bieu dien nh mang ng ngha c mo ta
nh hnh
















son
daughter
granddaughter
grandfather
wife
husband
mother
grandmother
J ohn
Bod
Marry
Kate
granddaughter
father
father
son
Trang 50
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 51
Mot v du minh chng khac dung mang ng ngha e bieu dien lp ong vat c
mo ta nh hnh

























4.4) Bieu Dien Tri Thc Nh Frame :
Animal
Bird
Canary
Ostrich
Breathe
Skin
Move
Fly
Wings
Feathers
Sing Yellow
Tail
Fly
can
has
can
isa
can
has
has
isa
isa
cannot
is
is can
Mop phng phap bieu dien tri thc khac o la bieu dien cau truc bang cach
s dung mang ng ngha, trong o moi nut cua mang la mot cau truc d lieu cha
cac slot vi cac gia tr cua cac slot c kem theo. Cau truc tong quat cua mot
Frame d lieu c mo ta nh hnh
Frame <frame_name>
Slot : <property_name_1>
Value : <value of property_name_1>
Slot : <property_name_2>
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 52
Value : value of property_name_2>



Slot : <property_name_N>
Value : <value of property_name_N>.

Cac slot trong moi frame cha cac thong tin nh sau :
1) Thong tin nhan dang frame.
2) Thong tin quan he cua frame nay vi frame khac.
3) Cac thanh phan mo ta cua frame.
4) Thong tin thu thu tuc.
5) Thong tin mac nh frame.
6) Thong tin e xuat mi.
Bieu dien tri thc nh Frame cung cap y tng lap trnh hng oi tng trong ngon
ng lap trnh Prolog hoac cac ngon ng lap trnh khac nh C++ va Visual Basic.
Frame cho phep truy cap cac thanh phan cua Frame o la cac slot va cho phep
hng quyen tha ke gia Frame d lieu nay va Frame d lieu khac.

V du : Cho mang ng ngha bieu dien cac s kien ve ong vat nh hnh tren, cac
s kien nay c to chc trong cac khung nh sau :
Frame animal
Slot : can
Value : breathe, move
Slot : has
Value : wings

Frame bird
Slot : is_a
Value : animal
Slot : can
Value : fly
Slot : has
Value : wings, feathers


Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 53
Frame canary
Slot : is_a
Value : bird
Slot : can
Value : sing
Slot : is
Value : yellow

Frame ostrich
Slot : is_a
Value : bird
Slot : can_not
Value : fly
Slot : is
Value : tail

V du ng dung : Thiet ke he chuyen gia ieu khien nhiet o moi trng tren c s
he thong Frame.
Xet he thong ieu khien nhiet o moi trng trong mot can nha nho gom co
ba phong o la phong khach, phong ngu va phong an, trong o moi phong co mot
nhiet ke, mot lo si va mot may ieu hoa co cau truc nh hnh.

Room
Termostat
50 60 70



Mode
Heat Air
Temperature
Setting
Funace Air conditioner













Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 54
He thong gom cac frame nh room, thermostat, funace va air conioner c mo ta
nh sau :

Frame room
Slot : funace
Value : < funac1,funace2,funace3 >
Slot : air_conditioner
Value : < air_conditioner1,air_conditioner2, air_conditioner3 >
Slot : thermostat
Value : < thermostat1, thermost2, thermostat3 >
Slot : occupany
Value : < yes,no >


Frame thermostat
Slot : air_conditioner
Value : < air_conditioner1,air_conditioner2, air_conditioner3 >
Slot : funace
Value : < funac1,funace2,funace3 >
Slot : mode
Value : <heat,air>
Slot : setting
Value : 60
Slot : temperature
Value : 65
Slot : room
Value : <livingroom, bedroom, kitchenroom >

Frame air_conditioner
Slot : room
Value : <livingroom, bedroom, kitchenroom >
Slot : state
Value : <on,off>
Slot : thermostat
Value : < thermostat1,thermostat2, thermostat3 >

Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 55
Frame funace
Slot : room
Value : <livingroom, bedroom, kitchenroom >
Slot : state
Value : <on,off>
Slot : thermostat
Value : < thermostat1,thermostat2, thermostat3 >

C s luat ieu khien nhiet o moi trng trong nha tren c s cac thanh phan cua
he thong frame c thiet lap gom cac luat la
Luat 1 : if ( temperature < setting ) and (funace state off ) and (mode heat )
and ( roomoccupancy yes) then send message (funace state = on ).

Luat 2 : if ( temperature < setting - 5) and (funace state off ) and (mode heat )
and ( roomoccupancy no) then send message (funace state = on ).

Luat 3 : if ( temperature >= setting ) and (funace state on ) and (mode heat )
and ( roomoccupancy yes ) then send message (funace state = off ).

Luat 4 : if ( temperature >= setting - 5) and (funace state on ) and (mode heat )
and ( roomoccupancy no) then send message (funace state = off ).

Luat 5 : if ( temperature < setting ) and (air_conditioner state off ) and (mode
air ) and ( roomoccupancy yes) then send message (air_conditioner state = on ).

Luat 6 : if ( temperature < setting - 5) and (air_conditioner state off ) and (mode
air ) and ( roomoccupancy no) then send message (air_conditioner state = on ).

Luat 7 : if ( temperature >= setting ) and (air_conditioner state on ) and (mode
air ) and ( roomoccupancy yes ) then send message (air_conditioner state = off ).

Luat 8 : if ( temperature >= setting - 5) and (air_conditioner state on ) and (mode
air ) and ( roomoccupancy no) then send message (air_conditioner state = off ).



Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 56
4.5) Gii Thieu Ve Ngon Ng Lap Prolog :
1) Cau truc chng trnh :
Ngon ng Prolog la ngon ng lap trnh tren c s toan hoc logic c thiet
lap e giai quyet cac van e trong lnh vc tr tue nhan tao. Cau truc c ban cua
ngon ng lap trnh Prolog c mo ta nh sau :

domains
/*
domain declarations
*/
predicates
/*
predicate declarations
*/
clauses
/*
clauses ( rules and facts)
*/
goal
/*
subgoal_1
subgoal_2
/*
+ domains : la vung e khai bao mien kieu d lieu khong chuan trong cac
predicate. Giong nh cac ngon ng lap trnh khac, cac mien kieu d lieu chuancua
Prolog la short, ushort, word, integer, unsigned, long, ulong, dword, real, string va
symbol.

+ predicates : la vung e khai bao cac predicates. Predicate phai co ten rieng va
cac oi so vao cua no. Theo qui c, ten cua predicate phai la chuoi cua cac ch
cai in thng va oi so cua predicate la ch in hoa neu no la bien; mac khac no la
chuoi cac ch cai in thng. Cac oi so cua predicate phai c khai bao vi kieu
d lieu tng ng cua chung.

+ clauses : la vung cho phep the hien cac s kien va luat suy dien. S kien c the
hien di dang v t vi cac oi so cua no la cac hang v t. Luat suy dien c the
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 57
hien di dang if condition_1 and condition_2, and condition_N then conclusion
vi cu phap tong quat cua Prolog la
conclusion : - condition_1, condition_2, ,condition_N.

+ goal : la vung thc hien cac ch e ra cua bai toan.

V du : Cho cac s kien va luat suy dien la
1) John likes wine.
2) Lance likes skiing.
3) Lance likes books.
4) Lance likes films.
5) If Z reads and Z is inquisitive then Z likes books.
Chng trnh Prolog sau the hien cac s kien, luat suy dien e thoa man hai thanh
phan ch con cua John o la John thch uong ru, oc sach va la ngi tm toi do
o john thch sach.

domains
name, thing = symbol
predicates
nondeterm likes(name, thing)
reads(name)
is_inquisitive(name)
clauses
likes(john,wine).
likes(lance,skiing).
likes(lance,books).
likes(lance,films).
likes(Z,books) :-
reads(Z),is_inquisitive(Z).
reads(john).
is_inquisitive(john).
goal
likes(X,wine),likes(X,books).
Cay chng trnh cho ket qua la
X = john.
1 solution.
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 58
2) Cac loai toan t :
+ Toan t logic :
- Logic and : vi cu phap Prolog la , (dau phay).
- Logic or : vi cu phap Prolog la ; (dau cham phay).
- Logic only if vi cu phap Prolog la :-
- Logic not : vi cu phap prolog la not.
+ Toan t quan he :
- Less than vi cu phap Prolog la <
- Less than or equal to vi cu phap Prolog la <=
- Equal vi cu phap Prolog la =
- Greater than vi cup phap Prolog la >
- Greater than or equal vi cu phap prolog la >=
- Not equal vi cu phap prolog la <> hoac ><
- Cut vi cu phap Prolog la !

V du : chng trnh Prolog sau la mot v du minh chng s dung cac toan tren
e giai phng trnh bac 2 co dang ax
2
+ bx + c = 0.
predicates
solve(real,real,real)
reply(real,real,real)
clauses
solve(A,B,C):-
D = B*B - 4*A*C,
reply(A,B,D),nl.
reply(_,_,D):-
D < 0,
write("No solution"),!.
reply(A,B,D):-
D = 0,
X = -B/(2*A),
write("X = ",X),!.
reply(A,B,D):-
X1 = (-B +sqrt(D))/(2*A),
X2 = (-B -sqrt(D))/(2*A),
write("X1 = ",X1," and X2 = ",X2).
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 59
goal
solve(1.0,2.0,1.0),
solve(1.0,1.0,4.0),
solve(1.0,-3.0,2.0).

3) X ly danh sach trong ngon ng lap trnh Prolog :

+ Thanh vien cua danh sach : Neu X la thanh vien cua danh sach L th menh
e clauses c thiet lap la
clauses
member(X,[X|-]).
Member(X,[_|L]) :- member(X,L).
V du : Chng trnh Prolog sau la mot v du minh chng khang nh neu oi
tng la thanh vien cua danh sach th ap an la yes; mat khac ap an la no.
domains
x = symbol
List = symbol*
predicates
member(X,List)
clauses
member(X,[X|_]):-!.
member(X,[_|T]) :- member(X,T).
goal
member(b,[a,b,c]).
Chay chng trnh nay cho ket qua la yes, v b la thanh vien cua danh sach [a,b,c].

+ Noi danh sach : Menh e noi hai danh sach vi clause c thiet lap la
clauses
append([],List,List).
Append([X|L1],L2,[X|L3]) :- append(L1,L2,L3).

V du : Chng trnh Prolog sau la mot v du noi hai danh sach.
domains
s = symbol
List = symbol*
predicates
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 60
append(List,List,List)
clauses
append([],List,List).
append([X|T],L,[X|NL]) :- append(T,L,NL).
goal
append([a,b,c],[d,e],Y).

Chay chng trnh nay cho ket qua la Y = [a,b,c,d,e].

+ Hien th danh sach : Menh e hien th hanh sach ra man hnh vi clauses c
thiet lap la
clauses
writelist([]).
writelist([H|T) :- write(H),nl,writelist(T).

+ ao ngc th t trong danh sach : menh e ao ngc th t cac phan t trong
danh sach vi clauses c thiet lap la
clauses
reverse_writelist([]).
Reverse_writelist([H|T]) :- reverse_writelist(T),write(H),nl.

V du 1 : Cho bai toan quan he gia nh vi cac s kien va cac luat suy dien la
1) John is son of Dan.
2) Mary is sister of Suzan.
3) Harold is brother of Larry.
4) John married Mary.
5) Larry married Sue.
6) If B is son of A then A is father of B.
7) If A is father of C and C is father of B then A is grandfather of B.
8) If A married C and C is sister of B then A is sister in law of B.
9) If A is brother of C and C married B then A is sister in law of B.
Chng trnh Prolog la mot v du minh chng giai quyet bai toan moi quan he gia
nh nay.
database - tmp
son(STRING,STRING)
sister(STRING,STRING)
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 61
brother(STRING,STRING)
married(STRING,STRING)

clauses
son("John","Dan").
sister("Mary","Suzan").
brother("Harold","Larry").
married("John","Mary").
married("Larry","Sue").

predicates
father(STRING father,STRING child)
grandfather(STRING grandfather,STRING grandchild)
nondeterm sister_in_law(STRING,STRING)

clauses
father(A,B):-
son(B,A).

grandfather(A,B):-
father(A,C),
father(C,B).

sister_in_law(A,B):-
married(A,C),
sister(C,B).
sister_in_law(A,B):-
brother(A,C),
married(C,B).

goal
sister_in_law("John",Z),
format(Msg,"sister_in_law(\"John\",%)",Z),
write(Msg).


Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 62

V du 2 : Chng trnh Prolog sau la mot v du ien giai bai toan ngi nong dan
sap xep cac chuyen thuyen qua lai song.

domains
LOC = east;
west
STATE = state(LOC farmer,LOC wolf,LOC goat,LOC cabbage)
PATH = STATE*
predicates
go(STATE,STATE) % Start of the algorithm
path(STATE,STATE,PATH,PATH) % Finds a path from one state to another
nondeterm move(STATE,STATE) % Transfer a system from one side to
another
opposite(LOC,LOC) % Gives a location on the opposite side
nondeterm unsafe(STATE) % Gives the unsafe states
nondeterm member(STATE,PATH) % Checks if the state is already visited
write_path(PATH)
write_move(STATE,STATE)

clauses

go(StartState,GoalState):-
path(StartState,GoalState,[StartState],Path),
write("A solution is:\n"),
write_path(Path).

path(StartState,GoalState,VisitedPath,Path):-
move(StartState,NextState), % Find a move
not(member(NextState,VisitedPath)), % Check that we have not
had this situation before
path(NextState,GoalState,[NextState|VisitedPath],Path),
!.
path(GoalState,GoalState,Path,Path). % The final state is
reached

Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 63
move(state(X,X,G,C),state(Y,Y,G,C)):-
opposite(X,Y),not(unsafe(state(Y,Y,G,C))).
move(state(X,W,X,C),state(Y,W,Y,C)):-
opposite(X,Y),not(unsafe(state(Y,W,Y,C))).
move(state(X,W,G,X),state(Y,W,G,Y)):-
opposite(X,Y),not(unsafe(state(Y,W,G,Y))).
move(state(X,W,G,C),state(Y,W,G,C)):-
opposite(X,Y),not(unsafe(state(Y,W,G,C))).

opposite(east,west).
opposite(west,east).

unsafe(state(F,X,X,_)):- % The wolf eats the goat
opposite(F,X),
!.
unsafe(state(F,_,X,X)):- % The goat eats the cabbage
opposite(F,X),
!.

member(X,[X|_]):-
!.
member(X,[_|L]):-
member(X,L).

write_path([H1,H2|T]):-
write_move(H1,H2),
write_path([H2|T]).
write_path([]).

write_move(state(X,W,G,C),state(Y,W,G,C)):-
!,
write("The farmer crosses the river from ",X," to ",Y),
nl.
write_move(state(X,X,G,C),state(Y,Y,G,C)):-
!,
write("The farmer takes the Wolf from ",X," of the river to ",Y),
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
nl.
write_move(state(X,W,X,C),state(Y,W,Y,C)):-
!,
write("The farmer takes the Goat from ",X," of the river to ",Y),
nl.
write_move(state(X,W,G,X),state(Y,W,G,Y)):-
!,
write("The farmer takes the cabbage from ",X," of the river to ",Y),
nl.

goal
go(state(east,east,east,east),state(west,west,west,west)),
write("solved").
Chay chng trnh nay cho ket qua la
A solution is:
The farmer takes the Goat from west of the river to east
The farmer crosses the river from east to west
The farmer takes the cabbage from west of the river to east
The farmer takes the Goat from east of the river to west
The farmer takes the Wolf from west of the river to east
The farmer crosses the river from east to west
The farmer takes the Goat from west of the river to east
no

V du 3 : Cho bai toan thap Ha Noi nh hnh ve






Muc tieu cua bai toan la di chuyen tat ca cac a t cot ben trai sang cot ben phai
nh thong qua cot trung gian gia moi lan di chuyen mot a khong c phep a
ln nam tren a nho.
Chng trnh Prolog sau la mot v du minh chng giai bai toan thap Ha Noi nay.

Trang 64
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 65
domains
loc =right;middle;left

predicates
hanoi(integer)
move(integer,loc,loc,loc)
inform(loc,loc)

clauses
hanoi(N):-
move(N,left,middle,right).
move(1,A,_,C):-
inform(A,C),
!.

move(N,A,B,C):-
N1=N-1,
move(N1,A,C,B),
inform(A,C),
move(N1,B,A,C).

inform(Loc1, Loc2):-
write("\nMove a disk from ", Loc1, " to ", Loc2).

GOAL
hanoi(3).

Chay chng trnh nay cho ket qua la
Move a disk from left to right
Move a disk from left to middle
Move a disk from right to middle
Move a disk from left to right
Move a disk from middle to left
Move a disk from middle to right
Move a disk from left to rightyes

Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
V du 4 : Cho ban o ch ng en kho bau cha vang nh hnh ve

Fountain

Entry Hell
Mermaid
Robbers
Exit
Gold
treasure
Food
Monsters
Fountain













Tren ng tm en kho bau cha vang phai qua cac hang ong nguy hiem nh
monsters ( quai vat) va robbers (nhng ke cp).
Chng trnh Prolog sau la mot v du minh chng tm ng an toan en hang ong
kho bau cha vang.
domains
room = symbol
roomlist = room*
predicates
nondeterm gallery(room,room)
nondeterm neighborroom(room,room)
avoid(roomlist)
nondeterm go(room,room)
nondeterm route(room,room,roomlist)
nondeterm member(room,roomlist)
clauses
gallery(entry,monsters).
gallery(entry,fountain).
gallery(fountain,hell).
gallery(fountain,food).
gallery(exit,gold_treasure).
gallery(fountain,mermaid).
Trang 66
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 67
gallery(robbers,go_treasure).
gallery(fountain,robbers).
gallery(food,gold_treasure).
gallery(mermaid,exit).
gallery(monsters,gold_treasure).
gallery(gold_treasure,exit).
gallery(mermaid,gold_treasure).
neighborroom(X,Y) :- gallery(X,Y).
neighborroom(X,Y) :- gallery(Y,X).
avoid([monsters,robbers]).
go(Here,There) :- route(Here,There,[Here]).
go(_,_).
route(Room,Room,VisitedRooms) :- member(gold_treasure,VisitedRooms),
write(VisitedRooms),nl,fail.
route(Room,Way_out,VisitedRooms) :- neighborroom(Room,Nextroom),
avoid(DangerousRooms),
not(member(NextRoom,DangerousRooms)),
not(member(NextRoom,VisitedRooms)),
route(NextRoom,Way_out,[NextRoom|VisitedRooms]).
member(X,[X|_]):-!.
member(X,[_|L]):-
member(X,L).
goal
go(entry,exit).

Chay chng trnh nay cho ket qua la
["exit","gold_treasure","food","fountain","entry"]
["exit","gold_treasure","food","fountain","entry"]
yes







Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
V du 5 : Cho ban o cua cac thanh pho nh hnh ve

Trang 68














Chng trnh Prolog sau la mot v du minh chng giai bai toan tm ng i ngan
nhat t thanh pho Gordon en thanh pho Tampa.
Kansas
Houston
Gordon
Tampa
500
1000
150
120
100
domains
town = symbol
townlist = town*
distance = integer

predicates
nondeterm road(town,town,distance)
clauses
road(tampa,houston,500).
road(gordon,tampa,1000).
road(houston,gordon,150).
road(houston,kansas_city,120).
road(tampa,kansas_city,100).

predicates
nondeterm connected(town,town,distance)
clauses
connected(X,Y,Dist):-
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 69
road(X,Y,Dist).
connected(X,Y,Dist):-
road(Y,X,Dist).

predicates
determ member(town,townlist)
clauses
member(X,[X|_]):-!.
member(X,[_|L]):-
member(X,L).

predicates
nondeterm route(town,town,townList,townList,distance)
clauses
route(Town,Town,VisitedTowns, VisitedTowns, 0) :-
!.
route(Town1,Town2,VisitedTowns,ResultVisitedTowns,Distance):-
connected(Town1,X,Dist1),
not(member(X,VisitedTowns)),
route(X,Town2,[X|VisitedTowns],ResultVisitedTowns,Dist2),
Distance=Dist1+Dist2.

predicates
showAllRoutes(town,town)
write_rote(town FirstTown,townList,distance)
reverse_list(townList InList, townList Tmp, townList Reversed)

clauses
showAllRoutes(Town1,Town2):-
write("All routes from ",Town1," to ",Town2," are:\n"),
route(Town1,Town2, [Town1] ,VisitedTowns, Dist),
write_rote(Town1,VisitedTowns,Dist),nl,
fail.
showAllRoutes(_,_).
write_rote(Town1,[Town1|VisitedTowns],Dist):-
!,
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 70
Towns = [Town1|VisitedTowns],
write(" ",Towns," --> ",Dist),nl.
write_rote(_,VisitedTowns,Dist):-
reverse_list(VisitedTowns, [], VisitedTowns_Reversed),
write(" ",VisitedTowns_Reversed," --> ",Dist),nl.

reverse_List([],LIST,LIST):-!.
reverse_List([H|SeenListRest],Interm,SeenList):-
reverse_List(SeenListRest,[H|Interm],SeenList).

predicates
showShortestRoutes(town,town)
determ shorterRouteExist(town,town,distance)

clauses
showShortestRoutes(Town1,Town2):-
write("Shortest routes between ",Town1," to ",Town2," is:\n"),
route(Town1,Town2, [Town1] ,VisitedTowns, Dist),
not(shorterRouteExist(Town1,Town2,Dist)),
write_rote(Town1,VisitedTowns,Dist),nl,
fail.
showShortestRoutes(_,_).

shorterRouteExist(Town1,Town2,Dist):-
route(Town1,Town2, [Town1] ,_, Dist1),
Dist1<Dist,!.

goal
showAllRoutes("gordon", "tampa"),nl,
showShortestRoutes("gordon", "tampa").

Chay chng trnh nay cho ket qua la
All routes from gordon to tampa are:
["gordon","tampa"] --> 1000

["gordon","houston","kansas_city","tampa"] --> 370
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 71
["gordon","houston","tampa"] --> 650

Shortest routes between gordon to tampa is:
["gordon","houston","kansas_city","tampa"] --> 370
yes

V du 6 : Mo phong phan cng. Cho mach so Xor nh hnh ve


And
Or
And
Not
Not
N1
Input2
Input1
N2
N4
N3
Output









Chng trnh Prolog sau la mot v du minh chng kiem tra cach van hanh cua
mach.

domains
d = integer

predicates
not_(D,D)
and_(D,D,D)
or_(D,D,D)
xor_(D,D,D)

clauses
not_(1,0).
not_(0,1).
and_(0,0,0).
and_(0,1,0).
and_(1,0,0).
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 72
and_(1,1,1).
or_(0,0,0).
or_(0,1,1).
or_(1,0,1).
or_(1,1,1).

% See the documentarion for the XOR circuit
xor_(Input1,Input2,Output):-
not_(Input1,N1),
not_(Input2,N2),
and_(Input1,N2,N3),
and_(Input2,N1,N4),
or_(N3,N4,Output).

goal
xor_(Input1,Input2,Output), % Use GOAL mode to see results !!!
format(Msg," xor_(%,%,%)",Input1,Input2,Output),
write(Msg).

Chay chng trnh nay cho ket qua la
xor_(1,1,0)Input1=1, Input2=1, Output=0, Msg= xor_(1,1,0)
xor_(1,0,1)Input1=1, Input2=0, Output=1, Msg= xor_(1,0,1)
xor_(0,1,1)Input1=0, Input2=1, Output=1, Msg= xor_(0,1,1)
xor_(0,0,0)Input1=0, Input2=0, Output=0, Msg= xor_(0,0,0)
4 Solutions
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 73
Chng 5 : Vai ng Dung Tr Tue Nhan Tao

5.1) ng Dung tr Tue Nhan Tao Phan Tch Bao Ve He Thong Nang Lng
ien :
Cho he thong nang lng ien n gian gom hai cat va mot ng dan nh
hnh ve

B1 B2
LineX
Fault



May cat B1 c at au cuoi ben trai va may cat B2 c at au cuoi
ben phai cua ng dan LineX. May cat B1 bao ve ng LineX theo hng nhn
t trai sang phai va may cat B2 bao ve ng dan LineX theo hng nhn t phai
sang trai.
Neu co s co tren ng dan LineX th mot hoac ca hai may cat hai au cuoi cua
ng se van hanh ngat dong bao ve ng.

Bai toan at ra la co mot he thong nang lng phc tap hn gom nhieu ng dan
va nhieu may cat nh hnh ve












4 3 2 1

8 7 6 5
Bus
O S S O
O S
S
S
Load
l1 l2
l3 l4
Ky hieu O la may cat van hanh ngat dong va ky hieu S la may cat co chc nang sai
khong van hanh ngat dong.
Vi mot he thong phc tap nh vay, khi co s co tren ng dan LineX, th
viec phan tch bao ve he thong la rat can thiet. Cong viec phan tch bao ve he
thong c at ra may van e nh sau :
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 74

1) Xac nh v tr xay ra s co tren he thong.
2) Xac nh trang thai van hanh va trang thai khong van hanh cua cac may
cat tren he thong.
3) Ch ro cac thanh phan cua he thong.
4) Xac nh he thong cua cac may cat d phong cho cac may cat khong van
hanh tren he thong.

Cho he thong nang lng gom 8 may cat va 4 ng dan vi cac s kien hien co
tren he thong nh a c mo ta tren, cong viec phan tch bao ve he thong nay la
gia s rang neu co s co xay ra tren moi ng dan LineX th viec phan tch bao
ve he thong phai xac nh c v tr ng dan LineX, cac may cat bao ve ng
dan LineX van hanh hoac khong van hanh va neu may cat khong van hanh th phai
co may cat khac d phong van hanh e bao ve he thong.

Ky thuat tr tue nhan tao c ng dung e thiet ke he thong phan tch bao
ve he thong nang lng bao gom cac cong viec nh sau :
+ Cong viec mo ta cac s kien hien co cua he thong nh nguon cung cap
nang lng, hai may cat bao ve ng mot ng dan, may cat van hanh va may
cat khong van hanh, cac may cat lien thong qua thanh gop.
+ Cong viec thiet ke c s luat suy dien t cac s kien hien co c mo ta
tren he thong nh luat suy dien lien thong gia hai may cat, luat suy dien xac nh
may cat cung bao ve ng dan, luat suy dien may cat co nguon, luat suy dien may
cat d phong cho mot may cat khac, luat suy dien may cat d phong cho mot may
cat khac khong van hanh, luat suy dien may cat mat nguon va luat suy dien xac
nh ng dan co s co.

e mo ta cac s kien hien co tren he thong nang lng ien, cac v t tong
quat c thiet lap la
+ V t generation(B) : mo ta may cat B noi trc tiep vi nguon.
+ V t protected_by(LineX, B1, B2) : ng dan LineX c bao ve bi hai
may cat B1 va B2.
+ V t connect(B1,B2) : mo ta may cat B1 la lien thong vi may cat B2 qua
thanh gop.
+ V t operate(B) : mo ta may cat van hanh.

Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 75
e thiet ke he c s luat suy dien giai quyet bai toan phan tch bao ve he
thong nang lng nh c mo ta tren, cac luat suy dien c thiet lap la
+ Luat x ly cac may cat lien thong qua thanh gop.
If connect(B1, B2) then connection(B1, B2).
If connect(B2, B1) then connection(B1,B2).
+ Luat x ly may cat cung bao ve ng dan.
If protected_by(LineX, B1, B2) then other_breaker(B1, B2).
If protected_by(LineX, B2, B1) then other_breaker(B1, B2).
+ Luat x ly may cat co nguon.
If generation(B) then has_gen(B).
If connection(B, B1) and other_breaker(B1, B2) and has_gen(B2) then
has_gen(B).
+ Luat x ly may cat d phong cho mot may cat khac.
If not(generation(B1)) and connection(B1, B3) and
other_breaker(B3,B2) and has_gen(B2) then back_up(B1, B2).
+ Luat x ly may cat d phong cho mot may cat khac khong van hanh.
If back_up(B1, B2) and not(operate(B2)) then
backup_did_not_work(B1, B2).
+ Luat x ly may cat mat nguon.
If not(has_gen(B)) then no_source_coming(B).
If has_gen(B) and operate(B) then no_source_coming(B).
If back_up(B1, B2) and not(backup_did_not_work(B1, B2)) then
No_source_coming(B1).
+ Luat x ly xac nh ng dan LineX co s co.
If no_source_coming(B1) and no_source_coming(B2) then
fault(LineX, B1, B2).

Chng trnh Prolog sau la mot v du minh chng giai quyet bai toan phan tch bao
ve he thong nang lng vi mo hnh topo hnh hoc a cho tren.

database -tmp
protected_by(STRING,STRING,STRING)
connect(STRING,STRING)
operate(STRING)
generation(STRING)
predicates
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 76
nondeterm connection(STRING,STRING)
nondeterm other_breaker(STRING,STRING)
nondeterm has_gen(STRING)
nondeterm back_up(STRING,STRING)
nondeterm backup_did_not_work(STRING,STRING)
nondeterm no_source_coming(STRING)
fault(STRING,STRING,STRING)
printbackup(STRING)
printout(STRING)
run
clauses
protected_by("line1","1","2").
protected_by("line2","3","4").
protected_by("line3","5","6").
protected_by("line4","7","8").
connect("2","3").
connect("2","6").
connect("2","7").
connect("3","6").
connect("3","7").
connect("6","7").
generation("1").
generation("4").
generation("5").
operate("1").
operate("4").
operate("5").
connection(B1,B2) :- connect(B1,B2).
connection(B1,B2) :- connect(B2,B1).
other_breaker(B1,B2) :- protected_by(_,B1,B2).
other_breaker(B1,B2) :- protected_by(_,B2,B1).
has_gen(B) :- generation(B),!.
has_gen(B) :- connection(B,B1),other_breaker(B1,B2),has_gen(B2),!.
back_up(B1,B2) :-
not(generation(B1)),connection(B1,B3),other_breaker(B3,B2),has_gen(B2).
backup_did_not_work(B1,B2) :- back_up(B1,B2),not(operate(B2)).
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 77
no_source_coming(B1) :- not(has_gen(B1)).
no_source_coming(B1) :- has_gen(B1),operate(B1).
no_source_coming(B1) :- back_up(B1,_),not(backup_did_not_work(B1,_)).
fault(_,B1,B2) :- no_source_coming(B1),no_source_coming(B2),!.
printbackup(B) :- back_up(B,B1),operate(B1),
write("Breaker"),
write(B1),
write(" Operated correctly as a backup breaker"),nl,fail.
printout(B) :- has_gen(B),operate(B),
write("Breaker"),write(B),
write(" operated correctly"),nl,!.
printout(B) :- has_gen(B),not(operate(B)),
write("Breaker"),
write(B),
write(" Malfunctioned"),nl,
not(printbackup(B)),!.
run :-
protected_by(L,B1,B2),
fault(L,B1,B2),
write("Possible Fault Location is on "),
write(L),nl,
printout(B1),
printout(B2),nl,nl,fail.
goal
run.

Khi chay chng trnh nay cho ket qua la
Possible Fault Location is on line1
Breaker1 operated correctly
Breaker2 Malfunctioned
Breaker4 Operated correctly as a backup breaker
Breaker5 Operated correctly as a backup breaker

Possible Fault Location is on line2
Breaker3 Malfunctioned
Breaker5 Operated correctly as a backup breaker
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 78
Breaker1 Operated correctly as a backup breaker
Breaker4 operated correctly

Possible Fault Location is on line3
Breaker5 operated correctly
Breaker6 Malfunctioned
Breaker1 Operated correctly as a backup breaker
Breaker4 Operated correctly as a backup breaker

Possible Fault Location is on line4
Breaker7 Malfunctioned
Breaker1 Operated correctly as a backup breaker
Breaker4 Operated correctly as a backup breaker
Breaker5 Operated correctly as a backup breaker
No

5.2) Bai Toan Robot Tm Vang :
Cho bai toan robot tm vang tren mat phang ke li hai chieu nh hnh ve

(1,4)
Stench
(2,4) (3,4)
(4,4)
(1,3)
Wumpus
(2,3)
Gold
gliter
(3,3)
(4,3)
(1,2)
Stench
(2,2) (3,2)
Breeze
(4,2)
(1,1)
Agent
(2,1)
Breeze
(3,1)
Pits
(4,1)

Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 79
Bai toan at ra la gia s rang robot ang tai v tr o co ch so (1,1) vieng tham qua
cac o khac e tm o cha vang, lay vang va mang vang tr ve lai nha la o (1,1).
Qua trnh tham do qua cac o, robot phai oi mat vi cac o cha cac chng ngai vat
nh ham bay va ke trong coi vang. Robot se b nguy hiem neu no i vao cac o nay.
Trc khi robot i vao cac o cha cac oi tng nay, no co the anh mui cac oi
tng nay cac o ke cua chung. Hay xay dng he c s tri thc cho robot co the
thc hien cac thao tac tham do qua cac o biet suy ngh tranh c cac o cha cac
chng ngai vat va tm ng an toan en o cha vang, lay vang va mang vang tr
ve lai nha la o (1, 1) ?
Cac ky hieu s dung vi bai toan nay co ngha nh sau :
+ Agent : robot.
+ Gold : vang.
+ Wumous : ke trong coi vang.
+ Pits : ham bay.
+ Stench : mui ke trong coi vang.
+ Breeze : mui ham bay.
+ gliter : mui co vang.

e xay dng mot he thong c s tri thc cho robot co the thc hien c cac
yeu cau e ra nh tren, cac cong viec sau can phai c xem xet o la
+ Mo ta cac s kien ve robot va cac s kien lien quan vi robot nh thao tac
di chuyen va thao tac lay vang cua robot, v tr va tnh huong cua robot, v tr o ke
oi mat vi robot en tham do hoac khong en tham do, v tr o cha chng ngai
vat va cac o ke cha mui chng ngai vat.
+ He thong c s luat suy dien cho robot biet suy ngh tnh toan e thc hien
cac thao tac can thiet cua no.

e mo ta cac s kien ve robot va cac s kien lien quan vi robot, cac v t va
cac ham v t sau ay c thiet lap la
+ Thao tac di chuyen va thao tac lay vang cua robot.
- turn(left) : lenh queo trai.
- turn(right) : lenh queo phai.
- forward : lenh i ti.
- grab : lenh lay vang.


Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 80
+ V tr, tnh huong va nh hng nhn cua robot.
- result(Action, S
i
) = S
i+1
: ham tra ve tnh huong S
i+1
khi thc hien thao
tac Action tai tnh huong S
i
.
- at(Object, Location, Situation) : mo ta oi tng tai v Location vi tnh
huong Situation.
- orientation(Agent, Situation) = D : ham tra ve goc D nh hng nhn
cua robot vi tnh huong situation. Theo qui c, D quay tron 360
0
, D
= 0, mat cua robot nhn ve hng ong; D = 90, mat cua ro bot nhn
ve hng bac; D = 180 , mat cua robot nhn ve hng tay va D = 270,
mat cua robot nhn ve hng nam.
- locationtoward([X, Y], D) = Location : ham tra ve v tr ch so Location
cua o ke oi mat vi o (X, Y) c xac nh bi goc nh hng D.

He thong c s luat suy dien cho robot co kha nang suy ngh tnh toan e thc hien
cac thao tac can thiet tranh chng ngai vat va bam theo ng tren cac o an toan
tm en o cha vang, lay vang va mang vang ve o (1,1) c thiet lap gom cac luat
suy dien nh sau :
+ Luat x ly v tr o oi mat vi robot.
at(Agent, L, S) locationAhead(A, S) =
locationtoward(L,orientation(Agent, S)).

+Luat x ly v tr cac o ke lien ket.
adjacent(L
1
, L
2
) D L
1
= locationtoward(L
2
, D).

+ Luat x ly xac nh v tr cac o cha cac ng bien.
wall(X, Y) ( X = 0 X = 5 Y = 0 Y = 5).

+ Luat x ly thc hien lenh forward i ti.
at(Agent, L, result(Action, S)) Action = forwardL =
locationAhead(Agent, S)wall(L).

+ Luat x ly thc hien lenh queo trai.
orientation(Agent, result(Action, S)) = D Action = turn(left)
D = Mod(orientation(Agent, S) + 90, 360).

+ Luat x ly thc hien lenh queo phai.
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 81
orientation(Agent, result(Action, S)) = D Action = turn(right)
D = Mod(orientation(Agent, S) - 90, 360).

+ Luat x ly v tr o cha mui ham bay va mui ke trong coi vang.
at(Agent, L, S) breeze(S) breezy(L).
at(Agent, L, S)stench(S) smelly(L).

+ Luat x ly v tr cac o ke cha mui cac oi tng ham bay va ke trong coi
vang.
at(Wumpus, L
1
, S)adjacent(L
1
, L
2
) smelly(L
2
).
at(Pitts, L
1
, S)adjacent(L
1
, L
2
) breezy(L
2
).

+ Luat xac nh v tr cac o co kha nang cha ham bay va ke trong coi vang.
smelly(L
1
) L
2
at(Wumpus, L
2
, S)L
2
=L
1
adjacent(L
1
, L
2
).
breezy(L
1
) L
2
at(Pitts, L
2
, S)L
2
=L
1
adjacent(L
1
, L
2
).

+ Luat xac nh v tr cac o an toan.
at(Agent, L
1
, S)adjacent(L
1
, L
2
) ok(L
2
).
at(Wumpus, L, S)at(Pitts, L,S) ok(L).

+ Luat xac nh v tr va tnh huong cua robot tm thay vang, lay vang va
mang vang ve lai o (1, 1).
at(Agent, L, S)gliter(S) atGold(S).
atGold(S) present(Gold, S).
present(Gold, S)portable(Gold, S) holding(Gold, result(grab, S)).
holding(Gold, S) goallocation([1, 1], S).









5.3) Bai Toan Lap Phng An Cho Canh Tay Robot Xep Khoi :
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
Cho bai toan khoi tren mat ban va canh tay robot vi trang thai ban au va
trang thai ch nh hnh ve
A
B
C D
E
Trang thai ban au
C
A
B
D
E
Trang thai ch










Bai toan at ra la lap phng an cho canh tay robot di cac khoi t trang thai ban
au cua bai toan sang trang thai ch cua bai toan. e lam c viec nay, canh tay
robot phai thc hien cac thao tac la
+ goto(X, Y, Z) : di chuyen canh tay robot en v tr co toa o X, Y, Z.
+ pickup(X) : thc hien lenh nhat khoi X len t mat ban.
+ putdown(X) : thc hien lenh at khoi X xuong mat ban.
+ takeoff(X, Y) : thc hien lenh lay khoi X t nh cua khoi Y.
+ puton(X, Y) : thc hien lenh at khoi X len nh cua khoi Y.

e bieu dien cac trang thai cua bai toan, cac v t tong quat c thiet lap la
+ location(W, X, Y, Z) : mo ta khoi W nh v tai v tr co toa o X, Y, Z.
+ on(X, Y) : mo ta khoi X name tren khoi Y.
+ clear(X) : mo ta lam sach khoi X (khong co khoi bat ky nam tren khoi X).
+ hold(X) : mo ta canh tay robot cam gi khoi X.
+ hold() : mo ta canh tay robot rong.
+ ontable(X) : mo ta khoi X name tren mat ban.

He thong c s luat suy dien ieu khien canh tay di cac khoi t trang thai ban au
en trang thai cua bai toan c thiet lap gom cac luat la
+ Luat xac nh lam sach khoi.
X(clear(X) Y(on(Y, X))).
+ Luat xac nh khoi name tren mat ban.
X Y (on(Y, X) ontable(Y)).
+ Luat xac nh canh tay robot rong.
Trang 82
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 83
Y (hold() hold(Y)).
+ Luat thay oi trang thai khi thc hien lenh pickup.
X (pickup(X) (hold(X) (hold()ontable(X)clear(X)))).
+ Luat thay oi trang thai khi thc hien lenh putdown.
X (putdown(X) (hold()ontable(X)clear(X)) hold(X))).
+ Luat thay oi trang thai khi thc hien lenh puton.
X Y (puton(X, Y) ((hold()on(X, Y)clear(X))
(hold(X)clear(Y)))).
+ Luat thay oi trang thai khi thc hien lenh takeoff.
X Y (takeoff(X, Y) ((hold(X)clear(Y))
(hold()on(X,Y)clear(X)))).
+ Luat x ly rang buoc khi thc hien lenh takeoff.
X Y Z (takeoff(Y, Z) (ontable(X)ontable(X))).
+ Luat x ly rang buoc khi thc hien lenh puton.
X Y Z (puton(Y, Z) (ontable(X)ontable(X))).

Tng t vi hai luat rang buoc tren, cac luat rang buoc khac cho quan he on va
clear phai c thiet lap.
Do co nhieu luat rang buoc khung ket hp vi cac luat thay oi trang thai
phat sinh ra mot khong gian trang thai tm kiem cua bai toan la qua ln va qua
phc tap tao ra nhieu ng khac nhau dan ve ch cua bai toan, trong o moi
ng la mot phng an co the ieu khien canh tay robot di cac khoi t trang thai
ban au sang trang thai ch.
V s dung qua nhieu luat rang buoc khung vi cac lenh thay oi trang thai
cua bai toan tao ra mot khong gian trang thai tm kiem la qua phc tap, ieu nay
dan en viec lap phng an cho canh tay robot di khoi t trang thai ban au at
en trang thai ch la rat kho khan. e khac phuc ieu nay, cong viec loai bo viec
s dung cac luat rang buoc khung, he thong luat thay oi trang thai cua bai toan co
the c cai tien vi luat ba thanh phan la



) ( ) ( () :
) ( :
) ( ) ( () :
: ) (
X clear X ontable hold D
X hold A
X clear X ontable hold P
X pickup


Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com


) ( :
) ( ) ( () :
) ( :
: ) (
X hold D
X clear X ontable hold A
X hold P
X putdown



) ( ) ( :
) ( ) , ( () :
) ( ) ( :
: ) , (
Y clear X hold D
X clear Y X on hold A
Y clear X hold P
Y X puton




) ( ) , ( () :
) ( ) ( :
) ( ) , ( () :
: ) , (
X clear Y X on hold D
Y clear X hold A
X clear Y X on hold P
Y X takeoff

Trong o, P la danh sach cha cac tien ieu kien, A la danh sach cha cac s kien
mi va D la danh sach cha cac tien ieu kien a s dung va c huy bo.

Bang bieu tam giac : e nh lai cac thao tac cua mot phng an, mot cau
truc d lieu mi c e xuat o la bang bieu tam giac. Neu phng an c thiet
lap cho canh tay robot di khoi t trang thai ban au co so p thao tac, th bang bieu
tam giac c thiet lap vi p + 1 hang va p + 1 cot nh bang.


Thao tac 1

Thao tac 2



. .
.
.
.

.
.
.
. Thao tac p
.
.
S kien cua
trang thai ban
S kien con lai
t o tren
S kien mi
cua thao tac 1
S kien con lai
t o tren
S kien con lai
t o tren
S kien mi
cua thao tac 2
S kien con lai
t o tren
S kien con lai
t o tren
S kien con lai
t o tren
S kien con lai
t o tren
S kien mi
cua thao tac p












Trang 84
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 85


Cach thiet lap bang bieu tam giac e nh lai cac thao tac cua phng an c thiet
lap cho canh robot di cac khoi t trang thai ban at en trang thai ch cua bai
toan khoi c mo ta nh sau :
+ Phng an co p thao tac, bang bieu tam giac c thiet lap la p + 1 hang va
p + 1 cot.

+ O au tien cua bang bieu vi ch so (0, 0) cha cac s kien mo ta trang thai
ban au cua bai toan.

+ O co ch so (n, n) vi n > 0 cha cac s kien mi cua thao tac th n.

+ O co ch so (n, m) vi m < n cha cac s kien con lai t o (n-1, m) tc la
loai bo mot so tien ieu kien ma thao tac th n a s dung o(n-1, m) va so
cac s kien con lai o (n-1, m) c ghi xuong o (n, m) vi m < n.



Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 86
Chng 6 : X Ly Tri Thc Khong Chac Chan

6.1) Ly Giai Di ieu Kien Khong Chac Chan :
Tri thc cua bai toan a c x ly trc ay o la loai tri thc chac chan.
e x ly loai tri thc nay s dung logic ro hay con c goi la logic hai ch so o
la logic v t c m rong t logic e xuat.

Tri thc chan chan la loai tri thc ma mien gia tr chan ly logic cua no la
logic true va logic false ng vi hai ch so 1 va 0.

Mot loai tri thc khac cua bai toan o la tri thc khong chac chan. Tri thc
khong chac chan la loai tri thc ma mien gia tr chan ly cua no la khong chac chan
ung va khong chac chan sai. ieu o co ngha la mien gia tr chan ly cua no la
trong khoang 0 va 1. Loai tri thc nay thng c phat bieu vi cac nhom khong
chac chan la
+ Tuyet oi sai.
+ Hau nh khong chac chan.
+ Co le khong chac chan.
+ Co the khong chac chan.
+ Cha biet.
+ Co the chac chan.
+ Co le chac chan.
+ Hau nh chac chan.
+ Tuyet oi chac chan.

V du : Cho luat suy dien la
P Q.
Neu suy dien la tri thc chac chan th gia tr chan ly cua tien ieu kien P la 1 hoac
0 va gia tr chan ly cua suy dien P Q cung la 1 hoac 0; do o, ta co the xac nh
c gia tr chan ly cua ket luan Q o la 1 hoac 0.

Neu suy dien la tri thc khong chac chan th gia tr chan ly cua tien ieu kien P la
trong khoang 0 va 1 va gia tr chan ly cua suy dien cung la trong khoang 0 va 1;
vay th bang cach nao e xac nh gia tr chan ly cua ket luan Q ?.

Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 87
e ly giai vi loai tri thc khong chac chan s dung ly thuyet khong chac chan o
la ly thuyet xac suat hay ly thuyet logic m. Hai loai ly thuyet nay con c goi la
logic nhieu ch so gia 0 va 1.

6.2) X Ly Tri Thc Khong Chac Chan Dung Ly Thuyet Xac Suat :

1) Ly thuyet xac suat :
Ly thuyet xac suat la bat nguon t thc nghiem, ieu o co ngha la thong
qua thc nghiem, co ton tai mot vai ai lng P(E) c goi la xac suat cua bien co
E o la o tin cay cua E vi cac rang buoc la
0 P(E) 1 va P(E) + P(E) = 1.
Gia s co mot cai tui ln cha nhieu qua bong, trong o mot so qua bong co anh
nhan ch cai a, mot so qua bong co anh nhan ch cai b, mot so qua bong khac co
anh nhan ch cai a va b, va mo so qua bong khong co anh nhan.
Bang thc nghiem, tron eu cac qua bong trong tui, lay cac qua bong ra t tui
va bo ngc chung lai vao tui. em so lan lap lai cua cac qua bong co nhan a, so
lan lap lai cua cac qua bong co nhan b va so lan lap lai cua cac qua bong co nhan a
va b.
Cho n1 la so lan lap lai cua cac qua bong co nhan a, n2 la so lan lap lai cua
cac qua bong co nhan b, n3 la so lan lap lai cua cac qua bong co nhan a va b va n
la tong so cua cac qua bong cha trong tui.

Xac suat cua hai bien co a va b xay ra oc lap tren c s luat giao hoan c
nh ngha la
+ Xac suat cua a ky hieu la P(a) = n1/n.
+ Xac suat cua c ky hieu la P(b) = n2/n.
+ Xac suat cua a va b c ky hieu la P(ab) = n3/n.
+ Xac suat ieu kien a cho bi bien co b c ky hieu la
P(a\b) = n3/n2 = P(ab)/P(b).
+ Xac suat ieu kien b cho bi bien co a c ky hieu la
P(b\a) = n3/n1 = P(ab)/P(a).

Xac suat cua hai bien co a hoac b xay ra phu thuoc tren c s luat giao hp
c nh ngha la
+ Xac suat cua a la P(a) = n1/n + n3/n = P(ba) + P(ab).
+ Xac suat cua b la P(b) = n2/n + n3/n = P(ab) + P(ab.
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 88
+ Xac suat cua a hoac b la
P(ab) = n1/n + n2/n + n3/n = P(a) + P(b) P(ab).

Ly giai vi tri thc khong chac chan s dung ly thuyet xac suat e xac nh
gia tr xac suat cua ket luan a hoac b vi cac phng trnh la
+ P(a) = P(ba) + P(ab) = P(b)P(a\b) + P(b)P(a\b).
+ P(b) = P(ab) + P(ab) = P(a)P(b\a) + P(a)P(b\a).

2) Ly giai chnh xac di ieu kien khong chac chan dung xac suat :
e ly giai chnh xac di ieu kien khong chac chan, moi bang chng va moi
suy dien phai c kem theo so o xac suat o la o tin cay cua bang chng va suy
dien.
Gia s co luat suy dien vi dang la
If a then b.
Cach tnh xac xuat cua ket luan b vi luat suy dien nay la
P(b) = P(a)P(b\a) + P(a)P(b\a)
trong o, P(a) la xac suat cua co mat bang chng a, P(b\a) la xac suat ieu kien b
cho bi co mat bang chng a o chnh la xac suat cua suy dien if a then b, P(a) la
xac suat cua khong co mat bang chng a va P(b\a) la xac suat ieu kien b cho bi
khong co mat bang chng a .

Gia s cho luat suy dien vi dang la
If ( a and b ) then c.
Cach tnh xac suat cua ket luan c vi luat suy dien nay la
P(c) = P(c\ab)p(ab) + P(c\(ab))P((ab))
trong o, P(c\ab) la xac suat ieu kien c cho bi bang chng a va b, p(ab) la xac
suat cua bang chng a va b, P(c\(ab)) la xac suat ieu kien c cho bi khong co
bang chng a va b va P((ab)) la xac suat cua khong co bang chng a va b.

Gia s cho luat suy dien vi dang la
If (a or b) then c.
Cach tnh xac suat cua ket luan c vi luat suy dien nay la
P(c) = P(c\ab)p(ab)
+ P(c\ab)p(ab)
+ P(c\ab)P(ab)
+ P(c\ab)P(ab).
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 89
V du : Cho luat suy dien la

Neu so ngi co benh tim th trong so o se co mot so ngi b benh phoi.

Cho H la so ngi co benh tim va C la mot so ngi trong so o se b benh phoi,
vay th luat suy dien tren co the c viet lai la
H C.

Qua thc nghiem khao sat cho thay rang :
+ C 100 ngi, trong o co 10 ngi b benh tim. V the xac suat cua so
ngi co benh tim la P(H) = 0,1.

+ C 100 ngi, trong o co 90 ngi khong b benh tim. V the xac suat cua
nhng ngi khong co benh tim la P(H) = 0,9.

+ C 100 ngi co benh tim th trong so o co 90 ngi b benh phoi. V the
xac suat ieu kien so ngi b benh phoi cho bi so ngi co benh tim la
P(C\H) = 0,9.

+ C 100 ngi khong co benh tim th trong so o co 95 ngi khong b benh
phoi. Do o, xac suat ieu kien so ngi khong b benh phoi cho bi so ngi
khong co benh tim la P(C\H) = 0,95.

+ C 100 ngi khong co benh tim th trong so co 5 ngi b benh phoi. Do
o, xac suat ieu kien so ngi b benh phoi cho bi so ngi khong co benh
tim la P(C\H) = 0,05.
Ta co xac suat cua luat suy dien H C o chnh la xac suat ieu kien C cho bi
bang chng H o la P(C\H) = 0,9.
Cong thc tnh xac suat cua ket luan C vi dang luat suy dien H C la
P(C) = P(H)P(C\H) + P(H)P(C\H).
Vay th ta co xac suat cua ket luan C la
P(C) = 0,10,9 + 0,90.05 = 0,135 hay 13,5%.

Vi ly giai chnh xac di ieu kien khong chac chan dung xac suat cho cac luat
suy dien dang phc tap, cong viec tnh xac suat cua ve ket luan se xuat hien nhieu
an so xac suat cha biet trong cong thc tnh xac suat. e khac phuc ieu nay, cong
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
viec tnh xap x cai tien t cong thc tnh xac suat cua nh luat Baye c thiet
lap.

3) Ly thuyet chac chan :

Gia s cho luat suy dien la
If a then b.

Xac suat co mat cua ket luan b la P(b) va xac suat khong co mat cua ket luan b la
P(b). Vay th, tong gia tr cua hai loai xac suat nay phai la P(b) + P(b) = 1. Xac
suat ieu kien b cho bi a la P(b\a).

Cong viec ly giai di ieu kien khong chac chan la cach xac nh o tin cay cua
ket luan b vi moi bang chng a. o tin cay nay co the tang hoac giam ieu o con
phu thuoc vao o tin cay cua moi bang chng a.

Vi y tng nay, hai ai lng so o o tin cay mi c e xuat cho ket luan b o
la MB va MD. Hai ai lng nay b chan bi 0 va 1 o la
0 MB 1 va 0 MD 1
trong o, MB la so o o tin cay cua ket luan b va MD la so o o khong tin cay
cua ket luan b.
Vay th, cho moi bang chng a, hai ai lng so o o tin cay va o khong tin cua
ket luan b nay c thiet lap la


=
=
) ( 1
) ( )] ( ), \ ( max[
1 ) ( 1
) , (
b P
b P b P a b P
b P if
a b MB


=
=
) (
) ( )] ( ), \ ( min[
0 ) ( 1
) , (
b P
b P b P a b P
b P if
a b MD


Tren c s so o o tin cay va so o o khong tin cay cua ket luan b, mot ai lng
so o o tin cay khac c e xuat o la so o chac chan cua ket luan b vi moi
bang chng a. So o nay b chan bi 1 va 1 o la -1 CF(b,a) 1 va c thiet
lap la
Trang 90
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 91
CF(b,a) = MB(b,a) MD(b,a)
+ Neu so o chac chan cua ket luan b vi bang chng a la CF(b,a) = -1 th ket luan
rang b la sai.
+ Neu so o chac chan cua ket luan b vi bang chng a la CF(b,a) = 0 th ket luan
rang b la cha biet.
+ Neu so o chac chan cua ket luan b vi bang chng a la CF(b,a) = 1 th ket luan
rang b la ung.

Khao sat cac phng trnh tren vi cac trng hp la
+ Trng hp 1 : Bang chng a dan en ket luan b la ung hay noi cach khac, xac
suat ieu kien b cho bi a la ung.
Vi trng hp nay, ta co P(b\a) = 1 va P(b) = 1; do o ta co MB(b,a) = 1 va
MD(b,a) = 0. Vay th CF(b,a) = 1; do o ta ke luan rang b la ung.

+ Trng hp 2 : Bang chng a dan en ket luan b la sai hay noi cach khac, xac
suat ieu kien khong co mat b cho bi a la ung.
Vi trng hp nay, ta co P(b\a) = 1 va P(b) = 0; do o ta co MB(b,a) = 0 va
MD(b,a) = 1. Vay th CF(b,a) = -1; do o ta co the ket luan rang b la sai.

+ Trng hp 3 : Khong co mat bang chng a dan en ket luan b.
Vi trng hp nay, ta co P(b\a) = P(b); do o MB(b,a) = 0 va MD(b,a) = 0.
Vay th CF(b,a) = 0 va do o ta ket luan rang b la cha biet.

+ Trng hp 4 : Bang chng kha thi a dan en ket luan b.
Vi trng hp nay, ta tco xac suat ieu kien b cho bi a b chan bi la
P(b) < P(b\a) < 1.
V the MB va MD c xac nh la

) ( 1
) ( ) \ (
) , (
b P
b P a b P
a b MB


=

va MD(b,a) = o.
Do o, CF(b,a) = MB(b,a) la mot so dng. ieu nay chng to rang ket luan b la
kha thi.

+ Trng hp 5 : Bang chng khong kha thi dan en ket luan b.
Vi trng hp nay, xac suat ieu kien b cho bi a b chan bi la
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
0 < P(b\a) < P(b).
V the MB va MD c xac nh la
MB(b,a) = 0

Va
) (
) \ ( ) (
) , (
b P
a b P b P
a b MD

=
.
Do o, ta co CF(b,a) = - MD(b,a) la mot so am. ieu nay chng to rang ket luan b
la khong kha thi.

4) Ly giai xap x di ieu kien khong chac chan dung ly thuyet so o
chac chan :
e ly giai xap x di ieu kien khong chac chan dung so o chac chan, moi
bang chng va moi luat suy dien phai c kem theo so o chac chan. Theo ly
thuyet, so o chac chan cua moi bang chng hoac luat suy dien phai b chan bi la -
1 CF 1.

Cho luat suy dien vi dang la
If a then b
Vi so o chac chan cua bang chng a c kem theo la CF(a) va so o chac chan
cua luat suy dien c kem theo la CF(rule). Vay th, so o chac chan cua ket luan
b vi dang luat suy dien nay co the c tnh bang cong thc la
CF(b,a) = CF(a)CF(rule).

Cho luat suy dien vi dang la
If a
1
and a
2
. . . and a
m
then b
Vi cac so o chac chan cua cac bang chng a
1
, a
2
. . . . . a
m
c kem theo la
CF(a
1
), CF(a
2
), . . . . .,CF(a
m
) va so o chac chan cua luat suy dien c kem theo la
CF(rule). Vay th, so o chac chan cua ket luan b vi dang luat suy dien nay c
tnh bang cong thc la
CF(b, a
1
and a
2
,. . .and a
m
) = min{CF(a
i
)}CF(rule).
Trong o, min la ham tra ve gia tr cc tieu cua cac so o chac chan cua cac bang
chng a
i
.
Trang 92
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 93
Cho luat suy dien vi dang la
If a
1
or a
2
or . . . or a
m
then b
Vi cac so o chac chan cua cac bang chng va luat suy dien c kem theo la nh
tren. Vay th, so o chac chan cua ket luan b vi dang luat nay c tnh bang cong
thc la
CF(b, a
1
or a
2
,. . . or a
m
) = max{CF(a
i
)}CF(rule).
Trong o, max la ham tra ve gia tr cc ai cua cac so o chac chan cua cac bang
chng a
i
.
+ Cach tnh so o chac chan cua ket luan b c ho tr t hai hoac nhieu nguon
luat suy dien khac nhau co cung ket luan b :
Gia s ta co hai luat suy dien la
Rule1: If a
1
then b
Rule2: If a
2
then b
Vi trng hp nay, so o chac chan tong hp cua ket luan b c tnh bang cong
thc la
{ }

< + +
<
+
+
> +
=
. 0 )) , ( 1 ( ) , ( ) , (
. 0
) , ( , ) , ( min 1
) , ( ) , (
. 0 )) , ( 1 ( ) , ( ) , (
) ., ( ), , ( (
1 2 1
2 1
2 1
1 2 1
2 1
both if a b cf a b CF a b CF
them of one if
a b CF a b CF
a b CF a b CF
both if a b CF a b CF a b CF
a b CF a b CF CF

Trong o, CF(b,a
1
) la so o chac chan cua ket luan b vi rule1 va CF(b,a
2
) la so o
chac chan cua ket luan b vi rule2.
6.3) X Ly Tri Thc Khong Chac Chan Dung Logic M :
Mot phng phap x ly tri thc khong chac chan khac o la logic m. Mot he
thong x ly tri thc khong chac chan dung logic c mo ta bang lu o khoi nh
hnh




Khau M
Hoa
C S Tri Thc
M

Ky Thuat Suy
Dien M
Kha6u
Giai M
X
A
(X)
B
(Y) Y
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com



Mot he thong x ly tri thc khong chan dung logic m gom co bien vao ra X, Y
cua he thong, khau m hoa, c s tri thc m, ky thuat suy dien m va khau giai
m.
+ Khau m hoa : chuyen ai lng ro t ngo vao X sang ai lng m
A
(X).
+ C tri thc m : gom c s d lieu m va c s luat suy dien m. C s
d lieu m la cac tap m vao ra cua he thong va c s luat suy dien m la
tap cac luat suy dien m c the hien di dang luat If-Then o la tap luat
mo ta tong quat cach giai mot bai toan m.
+ Ky thuat suy dien m : phng phap xac nh tap m ngo ra cua he thong.
+ Khau giai m : chuyen ai lng m
B
(Y) sang ai lng ro Y. B

1) Tap m va cac phep toan tren cac tap m :

+ Tap ro : Cho x la phan t cua c s X va A la tap con cua X. A c goi la
tap ro trong X, neu A c nh ngha bang ham lien thuoc la

=
A x
A x
x
A
0
1
) (


+ Tap m : Cho x la phan t cua c s X va A la tap con cua X. A c goi
la tap m trong X, neu A c nh ngha bang ham lien thuoc cua no sao cho b
chan gia 0 va 1 o la
0
A
(X) 1.
+ Bieu dien tap m :
- Neu X la tap c s lien tuc, tap m A trong X c bieu dien la

=
X
dx
x
x
A
) (

Trong o, ky hieu la toan t hp va

la toan t ket hp gia ai lng ro


va ai lng m.

- Neu X la tap c s ri rac, th tap m A trong X c bieu dien la
Trang 94
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 95
i i
n
i
A
x x A / ) (
1

=
=
Trong o, ky hieu la toan t hp va ky hieu / la toan t ket hp gia gia
tr ro va gia tr m tng ng.

+ Ham lien thuoc : Co hai cach xay dng ham lien thuoc cho tap m A o la
xay dng ham lien thuoc di dang bang va xay dng ham lien thuoc di dang
ham.
- Ham lien thuoc di dang bang gom hai cot va nhieu hang, cot th nhat
cha gia tr ro va cot cha cac gia tr m tng ng c mo ta tong quat
nh bang
ai lng ro
x
i
ai lng m
) (
i A
x
x
1
) (
1
x
A

x
2
) (
2
x
A




) (
n A
x
x
n

- Ham lien thuoc di dang ham co nhieu ham khac nhau nhng ham lien
thuoc dang tam giac la c s dung pho bien nhat. Cho o th bieu dien
tap m A dang tam giac nh hnh

A
(x)
x
1
b a c






Ham lien thuoc dang tam giac c thiet lap la

=
.
.
) (
c x b if
b c
x c
b x a if
a b
a x
x
A


trong o, a la can trai, b la tam va c la can phai cua tam giac tren truc hoanh x.
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com

+ Bien ngon ng : Cac bien ro vao ra cua he thong m c goi la cac bien ngon
ng, v chung c mo ta di dang ngon ng t nhien nh nhanh, cham, t, nhieu
van van. Cac ai lng ngon ng nay o chnh la cac tap m vao ra c nh
ngha tren cac bien vao ra cua he thong.
V du : Cho x la bien ngon ng bieu dien toc o cua xe c mo ta bang cac tap
m nh nhanh, trung bnh va cham c bieu dien bang o th nh hnh

Cham
Trung
Bnh
Nhanh
(x)
0 20 50 70 x
1









+ Cac phep toan tren cac tap m : e lam viec tren cac tap m, co cac phep
toan la
- Phep toan giao : Cho A va B la hai tap m trong tap c s X. Tap m cua
phep toan giao A va B cung la tap m trong X vi ham lien thuoc la
{ } ) ( ), ( min ) ( x x x
B A B A
=


- Phep toan hp : Cho A va B la hai tap m trong X. Tap m cua phep
toan hp A va B cung la tap m trong X vi ham lien thuoc la
{ } ) ( ), ( max ) ( x x x
B A B A
=


- Phep toan bu : Cho la tap bu cua tap m A trong tap c s X. cung
la tap m trong X vi ham lien thuoc la

A
) ( 1 ) ( x x
A
A
=

2) Quan he m va cac phep toan tren quan he m :


+ Tap tch cua hai tap c s : cho X va Y la hai tap c s vi xX va yY. Tap
tch cua hai tap c s X va Y c nh ngha la
{ } Y y X x y x Y X = , / ) , (
+ Quan he ro : Cho R la tap con cua tap tch XY, R c goi la quan he ro
trong XY, neu R c nh ngha bang ham lien thuoc la

Trang 96
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 97

=
R y x if
R y x if
y x
R
) , ( 0
) , ( 1
) , (
+ Quan he m : Cho R la tap con cua tap tch XY, R c goi la quan he
m trong XY, neu R c nh ngha bang ham lien thuoc cua no sao cho b chan
gia 0 va 1 o la
. 1 ) , ( 0 y x
R

+ Bieu dien quan he m : Quan he m co the c bieu dien di dang ma


tran la

=
) , ( . . ). , ( ) , (
) , ( . . ). , ( ) , (
) , (
2 1
1 2 1 1 1
n m R m R m R
n R R R
y x y x y x
y x y x y x
y x R



+ Cac phep toan tren cac quan he m : Cho P la quan he m trong tap tch
XY va Q la quan he m trong tap tch YZ. Quan he m trong tap tch XZ c
xac nh bang phng trnh la
R = PQ
Trong o ky hieu la toan t hp thanh m.
Co nhieu loai toan t hp thanh m, tuy nhien hai loai toan t hp thanh m
thong dung nhat o la toan t max-min va toan t max-product.
- Toan t max-min c thiet lap la
{ } ) , ( ), , ( min max ) , ( ) , ( z y y x z x z x
Q P Q P R
= =


- Toan t max-product c thiet lap la
{ } ) , ( ) , ( max ) , ( ) , ( z y y x z x z x
Q P Q P R
= =



+ Phng trnh quan he m : Cho A la tap m ngo vao tren bien ngon ng
vao X, R la quan he m trong tap tch XY va B la tap m ngo ra tren bien ngon
ng ngo ra Y. Quan he vao ra cua he thong m nay c mo ta bang lu o khoi
nh hnh

Quan he m
R(x,y)
Tap m ngo vao A Tap m ngo ra B


Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 98
Phng trnh quan he m xac nh tap m ngo ra cua he thong c thiet lap
la
B = AR
Trong o, ky hieu la toan t hp thanh m max-min hoac max-product nh
a c thiet lap tren.

3) Logic m va ly giai xap x m :
+ Logic m : Logic m la logic ma gia tr chan ly cua e xuat khong b han
che bi hai ch so 0 va 1 nh logic ro hai ch so. Gia tr chan ly cua mot e xuat
trong logic m co the c gan cho mot gia tr bat ky gia 0 va 1.
Cho e xuat P vi xA, trong o A la tap m trong tap c s X vi ham lien
thuoc la
A
(x). Khi o gia tr chan ly cua e xuat P la
T(P) =
A
(x )
trong o,
A
(x) la b chan bi gia khoang 0 va 1 o la
0
A
(x ) 1.a2

- Phep toan phu nh cua e xuat P :
Cho e xuat P vi xA, trong o A la tap m trong tap c s X vi ham lien
thuoc la
A
(x ). Phu nh cua e xuat P la xA. Do o, gia tr chan ly cua P
c thiet lap la
T(P) = 1 T(P).

- Phep toan logic hp cua e xuat P va Q :
Cho e xuat P vi xA va e xuat Q vi xB, trong o A va B la hai tap m
trong tap c s X vi cac ham lien thuoc la
A
(x ) va
B
(x ). Khi o phep toan
logic hp cua P va Q la
B
PQ : xA hoac xB.
Do o gia tr chan ly cua phep toan hp P va Q c thiet lap la
T(PQ) = max{T(P), T(Q)}.

- Phep toan logic giao cua e xuat P va Q :
Cho e xuat P vi xA va e xuat Q vi xB, trong o A va B la hai tap m
trong tap c s X vi cac ham lien thuoc la
A
(x ) va
B
(x ). Khi o phep toan
logic giao cua P va Q la
B
PQ : xA va xB.
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 99
Do o, gia tr chan ly cua phep toan giao P va Q c thiet lap la
T(PQ) = min{T(P), T(Q)}.

- Phep toan logic keo theo :
Cho e xuat P vi xA va e xuat Q vi xB, trong o A va B la hai tap m
trong tap c s X vi cac ham lien thuoc la
A
(x ) va
B
(x ). Khi o phep toan
logic keo theo P cho Q la
B
P Q : xA xB.

Do do, gia tr chan ly cua phep toan keo theo P cho Q c thiet lap la
T(P Q) = T(PQ) = max{T(P), T(Q)}.

Xet luat suy dien m vi dang la
P Q if x is A then y is B,
trong o, A la tap m ngo vao trong tap c s ngo vao X vi ham lien thuoc la
A
(x
) va B la tap m ngo ra trong tap c s ngo ra Y vi ham lien thuoc la
A
(x).
Mo hnh luat suy dien m nay la tng ng vi quan he m la
R = (AB)(AY).
Do o ham lien thuoc cua no c thiet lap la

R
(x,y) = max[
A
(x)
B
(y), (1 - B
A
)].

V du : Cho X la tap c s ngo vao bieu dien toc o ong c va A la tap m ngo
vao bieu dien toc o ong c an toan trong X c thu thap t thc nghiem la
A = {0.3/20 + 0.6/30 + 0.8/40 + 1/50 + 0.7/60 + 0.4/70}.
Cho Y la tap c s ngo ra bieu dien ien ap ong c va B la tap m ngo ra bieu
dien ien ap ong c bnh thng c thu thap t thc nghiem la
B = {0.1/1 + 0.3/2 + 0.8/3 + 1/4 + 0.7/5 + 0.4/6 + 0.2/7}.
Quan he m gia toc o ong c an toan va ien ap ong c bnh thng c thiet
lap la
R = xA yB = (AB)(AY).
T ay, ta co quan he m R la


Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com

=
6 . 0 6 . 0 6 . 0 6 . 0 6 . 0 6 . 0 6 . 0
2 . 0 4 . 0 7 . 0 7 . 0 7 . 0 3 . 0 3 . 0
2 . 0 4 . 0 7 . 0 0 . 1 8 . 0 3 . 0 1 . 0
2 . 0 4 . 0 7 . 0 8 . 0 8 . 0 3 . 0 2 . 0
2 . 0 4 . 0 6 . 0 6 . 0 6 . 0 4 . 0 4 . 0
7 . 0 7 . 0 7 . 0 7 . 0 7 . 0 7 . 0 7 . 0
R
+ Ly giai xap x m :
Gia s ta co luat suy dien m vi dang la
R =if x is A then y is B,
trong o, A va B la hai e xuat m bieu dien toc o ong c an toan va ien ap
ong c bnh thng vi quan he m R c xac nh la

=
6 . 0 6 . 0 6 . 0 6 . 0 6 . 0 6 . 0 6 . 0
2 . 0 4 . 0 7 . 0 7 . 0 7 . 0 3 . 0 3 . 0
2 . 0 4 . 0 7 . 0 0 . 1 8 . 0 3 . 0 1 . 0
2 . 0 4 . 0 7 . 0 8 . 0 8 . 0 3 . 0 2 . 0
2 . 0 4 . 0 6 . 0 6 . 0 6 . 0 4 . 0 4 . 0
7 . 0 7 . 0 7 . 0 7 . 0 7 . 0 7 . 0 7 . 0
R
Cho mot luat suy dien m khac vi dang la
if x is A then y is B,
trong o, A la e xuat m bieu dien toc o ong c hi cham va B la e xuat m
bieu dien ien ap ong c hi cham.
Neu biet tap m ngo vao A va quan he m R th tap m ngo ra B co the
c xac nh bang phng trnh la
B = AR
Trong o, ky hieu la toan t hp thanh m.
Gia s cho tap m ngo vao A la
A = {0.4/20 + 0.7/30 + 1/40 + 0.6/50 + 0.3/60 + 0.1/70}.
Khi o, tap m ngo ra B c xac nh vi phep toan hp thanh m max-min la
B = AR = {0.4/1 + 0.4/2 + 0.8/3 + 0.8/4 + 0.7/5 + 0.4/6 + 0.4/7}.
4) C s tri thc m :
C s tri thc m gom co c s d lieu m va c s luat suy dien m.
+ C s d lieu m bao gom cac tap m va cac ham lien thuoc cua cac tap
m c nh ngha tren cac bien ngon ng vao ra cua he thong.
Trang 100
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 101
+ C s luat suy dien m o la bao gom tat ca cac luat suy dien m the hien
di dang If-then mo ta ac tnh ong hoc cua he thong vach ra cach giai quyet
mot bai toan m. Mo hnh luat suy dien m tong quat nhat cua luat th i la

R : If x
i 1
is A
i1
and x
2
is A
i2
. . . . and x is A
j ij
and. . . and x is A
m im
then y is B.
i
Trong o, A
ij
la cac tap m ngo vao vi ham lien thuoc la va B ) (
j A
x
ij

i
la tap m
ngo ra cua he thong vi ham lien thuoc la . ) (y
i
B

Vi mo hnh luat dang the loai nay, so o m cua ve ieu kien c xac nh bi
cong thc la

{ } m j for x
j A i
ij
., . ,. 1 ) ( min = =


5) Ky thuat suy dien m :
Ky thuat suy dien m la phng phap xac nh tap m ngo ra cua he thong.
Co hai phng phap phap xac nh tap m ngo ra cua he thong o la ky thuat suy
dien m max-min va thuat suy dien m max-product.
Cho he thong m gom co so n luat suy dien m, ky thuat suy dien m la lan
lt xac nh tap m ngo ra cua tng luat theo th t t luat th nhat en luat th n
dung phep toan min hoac product va sau o, tap hp cua tat ca cac tap m ngo ra
o chnh la tap m ngo ra cua he thong dung phep toan max.
Gia s cho he thong m gom hai luat vi mo hnh luat dang la
R
1
: If x
1
is A
11
and x
2
is A
12
then y is B
1
R
2
: If x
1
is A
21
and x
2
is A
22
then y is B
2
Trong o, A
11
, A
12
, A
21
, A
22
la cac tap m ngo vao cua he thong vi cac ham lien
thuoc la , , , va B , B ) (
1
11
x
A
) (
2
12
x
A
) (
1
21
x
A
) (
2
22
x
A

1 2
la cac tap m ngo ra cua he
thong vi cac ham lien la , . ) (
1
y
B
) (
2
y
B

+ Ky thuat suy dien m max-min : Gia s cac ham lien thuoc vao ra cua he
thong la dang tam giac, ky thuat suy dien m max-min c mo ta bang o th nh
hnh






Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com








Trang 102




Ky thuat suy dien m max-min xac nh tap m ngo ra cua he thong c mo ta
nh sau :

) (
1
11
x
A


A
11

Input(x
1
) x
1

) (
2
12
x
A


A
12

Input(x
2
) x
2

) (
1
y
B


B
1

y

) (
1
21
x
A


A
21

Input(x
1
) x
1

) (
2
22
x
A


A
22

Input(x
2
) x
- Tap m ngo ra B
1
cua luat th nhat c xac nh vi ham lien thuoc cua
no la
{ } ) ( , min ) (
1
'
1
1
y y
B
B
=

trong o,
1
la so o m ve ieu kien cua luat 1 c xac nh la

{ } ) ( ), ( min
2 1 1
12 11
x x
A A
=

- Tap m ngo ra B
2
cua luat th 2 c xac nh vi ham lien thuoc cua no
la
{ } ) ( , min ) (
2
'
2
2
y y
B
B
=

trong o,
2
la so o m ve ieu kien cua luat 2 c xac nh la

{ } ) ( ), ( min
2 1 2
22 21
x x
A A
=

- Tap m ngo ra B cua he thong o chnh la tap hp B cua hai tap m ngo
ra B
1
va B
2
trc o cua hai luat la B = B
1
BB
2
va no c nh bang
ham lien thuoc cua no la
{ } ) ( ), ( max ) (
'
2
'
1
'
y y y
B B B
=

+ Ky thuat suy dien m max-product : Cung giong nh ky thuat suy dien mmax-
min, ky thuat suy dien m max-product c mo ta bang o th nh hnh



2

) (
2
y
B


B
2

y
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 103

) (
1
11
x
A


A
11

Input(x
1
) x
1

) (
2
12
x
A


A
12

Input(x
2
) x
2

) (
1
y
B


B
1

y

) (
1
21
x
A


A
21

Input(x
1
) x
1

) (
2
22
x
A


A
22

Input(x
2
) x
2

) (
2
y
B


B
2

y













Ky thuat suy dien m max-product xac nh tap m ngo ra cua he thong c mo ta
nh sau :
- Tap m ngo ra B
1
cua luat th nhat c xac nh vi ham lien thuoc cua
no la
) ( ) (
1
'
1
1
y y
B
B
=

trong o, la so o m ve ieu kien cua luat 1 c xac nh la
1


{ } ) ( ), ( min
2 1 1
12 11
x x
A A
=

- Tap m ngo ra B
2
cua luat th 2 c xac nh vi ham lien thuoc cua no
la
) ( ) (
2
'
2
2
y y
B
B
=

trong o, la so o m ve ieu kien cua luat 2 c xac nh la
2


{ } ) ( ), ( min
2 1 2
22 21
x x
A A
=

- Tap m ngo ra B cua he thong o chnh la tap hp B cua hai tap m ngo
ra B
1
va B
2
trc o cua hai luat la B = B
1
BB
2
va no c nh bang
ham lien thuoc cua no la
{ } ) ( ), ( max ) (
'
2
'
1
'
y y y
B B B
=

Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 104
Chng 7 : Viec Hoc May

7.1) Viec Hoc May La G ?
Con ngi co nhieu cach hoc nh hoc ky c, hoc cac s kien nh thong qua
s quan sat va tham do, hoc cai thien ky xao thong qua thc tien, hoc nh s phat
trien cua he than kinh sinh hoc con ngi va hoc nh gen di truyen t cac the he
trc.
Du cach hoc nao i chang na, muc tieu cua viec hoc la thu thap tri thc mi
va x ly tri thc mi sao cho thch nghi vi tnh huong mi.
Giong nh cach hoc cua con ngi, ngi ta muon xay xng cac chng trnh
hoc cho may sao cho may co kha nang thu thap tri thc mi va x ly tri thc mi
sao cho thch nghi vi tnh huong mi.
Giong nh cach hoc cua con ngi, may co cac the loai hoc nh hoc giam
sat, hoc cung co va hoc khong giam sat.
+ Hoc giam sat : hoc giam sat la the loai hoc vi qua trnh hoc co tn hieu
hng dan vao ra chnh xac cua thay giao. Vi the loai hoc nay, d lieu hoc vao ra
mong muon cua he thong hoc phai c thiet lap trc. Sau qua trnh hoc, he thong
se tm ra mot luat thch hp e thc hien tot cong viec d bao ngo ra c ket hp
vi ngo vao mi cua he thong.
+ Hoc cung co : hoc cung co cung la the loai hoc giam sat; tuy nhien tn hieu
hng dan cua thay giao la tn hieu cung co. Vi the loai hoc nay, tn hieu hoc cua
thay giao la tn hieu thng tng ng vi tn hieu ung hoac phat tng ng vi tn
sai tren c s tri thc san co cua he thong cho tap cac mau d lieu hoc vao mong
muon. Qua trnh hoc, he thong se tm ra mot luat thch hp e cung co nhng hanh
ong ra quyet nh ung cua he thong.
+ Hoc khong giam sat : con c goi la the loai hoc t hoc, vi the loai hoc
nay, qua trnh hoc khong co s tr giup bat ky thong tin hng han nao cua thay
giao, he thong t kham pha ra mot luat thch nghi e thc hien tot cong viec ngo ra
c ket hp vi ngo vao mi t tap cac mau d lieu hoc ngo vao mong muon.
Co ba lnh vc hoc may o la hoc tren c s tri thc, hoc nh mang neuron
nhan tao va hoc nh giai thuat hoc di truyen.





Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 105
7.2) Mo Hnh Hoc May Tren C S Tri Thc :
Viec hoc may tren c s tri thc vi mo hnh tong quat cua qua trnh hoc
c mo ta bang lu o khoi nh hnh












Ngon ng
bieu dien
Khong gian
hoc
D lieu va
cac ch cua
tac vu hoc
Thu thap tri
thc mi
Luat hoc
Tm kiem
heuristic
Mo hnh hoc tren c s tri thc gom cac thanh phan nh d lieu hoc va cac ch cua
tac vu hoc, ngon ng bieu dien tri thc hoc, luat hoc, khong gian hoc va tm kiem
heuristic.
+ D lieu va cac ch cua viec hoc : cong oan au tien cua viec hoc la
phai xac nh c ac thu cua cac bai toan hoc can c theo ch cua ngi hoc va
d lieu hoc c thiet lap. V du ien hnh la cac thuat toan hoc quy nap, d lieu
hoc la tap cac mau v du va ch cua viec hoc la suy dien mot nh ngha tong quat
e nhan dang lp cua cac oi tng.
+ Bieu dien tri thc hoc : cong oan th hai cua mo hnh hoc tren c s tri
thc la chon ngon ng bieu dien thch hp e ma hoa tri thc hoc. o la ngon ng
bieu dien nh logic v t va ngon ng bieu dien nh frame a c khao sat trc
ay.
+ Luat hoc : cong oan th ba la luat hoc, cho d lieu hoc, ngi hoc phai
xay dng mot luat hoc sao cho thoa man cac ch cua viec hoc.
+ Khong gian hoc : ngon ng bieu dien tri thc hoc ket hp vi luat hoc nh
ngha mot khong gian hoc, ngi hoc phai tm kiem trong khong gian nay e tm ra
mot khai niem mong muon hoc.
+ Tm kiem heuristic : hau het cac chng trnh hoc s dung thong tin
heuristic e giup qua trnh hoc nhanh va co hieu qua.
Vi mo hnh hoc tren c s tri thc nay, he thong co the thu thap c tri thc
mi t nhng tri thc san co cua he thong.
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 106
1) Giai thuat hoc gam sat hng ac trng en tong quat va ngc lai :
Muc tieu cua hai loai giai thuat hoc nay la tm ra mot nh ngha tong quat e
nhan dang c tat ca cac oi tng cua lp . Giai thuat s dung d lieu hoc gom
hai tap mau d lieu huan luyen dng P va am N. D lieu huan luyen dng la d
lieu cung cap thong tin bo ch c biet ve cac oi tng cua lp muon hoc va d
lieu am la d lieu cung cap thong tin khong bo ch c biet ve cac oi tng cua
lp .
Giai thuat hoc hng ac trng en tong quat hoa la qua trnh hoc, he thong bat
au t oi tng vi cac thanh phan ac trng nhat, tong quat hoa cac thanh phan
ac trng nay sao cho at en mot nh ngha tong quat ma co the nhan dang c
tat ca cac oi tng cua lp. Luat hoc cua giai thuat nay la toan t tong quat hoa
o la toan t thay the cac thanh phan hang so cua oi tng vi bien so.
Giai thuat hoc hng tong quat en ac trng la qua trnh hoc, he thong bat au
t oi tng vi cac thanh phan tong quat hoa nhat, ac trng cac thanh phan nay
sao cho at en mot nh ngha tong quat ma co the nhan dang c tat ca cac oi
tng cua lp. Luat hoc cua giai thuat nay la toan t ac trng hoa o la toan t
thay the cac thanh phan bien so cua oi tng vi hang so.
Giai thuat hoc hng ac trng en tong quat c mo ta la
Begin
- Cho danh sach S cha mau huan luyen dng ac trng nhat.
- Cho N la tap cha cac mau huan luyen am.
- Cho moi mau huan luyen dng p
Begin
- Cho moi mau sS khong hp vi p, th thay the cac thanh phan ac
trng cua s vi bien so sao cho hp vi p.
- Loai bo tat ca cac mau tong quat hn mot vai mau khac trong S.
- Loai bo tat ca cac mau trong S ma hp vi mau am n c giam sat
trc o.
End ;
- Cho moi moi mau am n
Begin
- Loai bo tat ca cac thanh vien cua S hp vi n
- Cong n vao tap N e giam sat cac mau qua tong quat khac trong qua
trnh hoc.
End;
End.
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 107
Giai thuat hoc hng tong quat hoa en ac trng hoa c mo ta la
Begin
- Cho danh sach G cha mau vi cac thanh phan tong quat nhat o la cac
bien so mo ta cac thanh phan cua oi tng.
- Cho P la danh sach cha cac mau huan luyen dng.
- Cho moi mau huan luyen am n
Begin
- Cho moi mau gG hp vi n th thay the cac thanh phan tong quat cua g
vi cac thanh phan ac trng sao cho khong hp vi n.
- Loai bo tat ca cac mau ac trng hn mot vai mau khac trong G.
- Loai bo tat ca cac mau khong hp vi vai mau dng p trong P.
End;
- Cho moi mau dng p
Begin
- Loai bo tat ca cac mau khong hp vi p trong G.
- Cong p vao tap P e giam sat cac mau qua ac trng trong qua trnh
hoc.
End;
End.

V du : Hoc nhan dang cac oi tng cua lp qua bong s dung giai thuat hoc
hng ac trng va hng tong quat.
Cho mien cua cac oi tng vi cac gia tr la
Kch_thc = {ln, nho}.
Mau = {o, trang, xanh}.
Hnh = {qua_bong, vien_gach, hop_phan}.
D lieu hoc cho cac oi tng nay c thiet lap la
+ Tap cac mau d lieu huan luyen dng P gom cac mau la
P = {oi_tng(nho, o, qua_bong), oi_tng(ln, o, qua_bong),
oi_tng(nho, trang, qua_bong), oi_tng(ln, trang, qua_bong),
oi_tng(nho, xanh, qua_bong), oi_tng(ln, xanh, qua_bong)}.
+ Tap cac mau d lieu huan luyen am N gom cac mau la
N = { oi_tng(nho, o, vien_gach), oi_tng(ln, o, vien_gach),
oi_tng(nho, trang, vien_gach), oi_tng(ln, trang, vien_gach),
oi_tng(nho, xanh, vien_gach), oi_tng(ln, xanh, vien_gach),
oi_tng(nho, o, hop_phan), oi_tng(ln, o, hop_phan),
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
oi_tng(nho, trang, hop_phan), oi_tng(ln, trang, hop_phan),
oi_tng(nho, xanh, hop_phan), oi_tng(ln, xanh, hop_phan)}.

+ Qua trnh hoc e nhan dang cac oi tng cua lp qua bong dung giai thuat hoc
hng ac trng c mo ta nh hnh













S = {oi_tng(nho, Y, qua_bong)}
S = { }
p = oi_tng(nho, o, qua_bong)
S = {oi_tng(nho, o, qua_bong)}
p = oi_tng(nho, trang, qua_bong)
p = oi_tng(ln, xanh, qua_bong)
S = {oi_tng(X, Y, qua_bong)}
Qua trnh hoc e nhan dang cac oi tng cua lp qua bong dung giai thuat hoc
hng tong quat c mo ta nh hnh
















G = {oi_tng(X,Y,Z)}
n = oi_tng(nho, o, vien_gach)
G = {oi_tng(ln,Y,Z),oi_tng(X, trang, Z),
oi_tng(X,xanh,Z), oi_tng(X,Y,qua_bong),
oi_tng(X,Y,hop_phan)}
p = oi_tng(ln, trang,qua_bong)
G = {oi_tng(ln,Y,Z), oi_tng(X, trang, Z),
oi_tng(X,Y,qua_bong)}
n = oi_tng(ln, xanh, vien_gach)
G = {oi_tng(ln,trang,Z), oi_tng(X, trang, Z),
oi_tng(X,Y,qua_bong)}
p = oi_tng(nho, xanh,qua_bong)
G = {oi_tng(X,Y,qua_bong)}
Trang 108
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 109

2) Giai thuat hoc quy nap cay quyet nh :
Mot loai giai thuat hoc khac o la giai thuat hoc quy nap cay quyet nh. Giai
thuat hoc s dung d lieu hoc vi cac mau d lieu thu thap c di dang bang.
Bang cha cac mau d lieu thu thap c vi so cot tng ng vi cac thuoc tnh
mo ta cac thanh phan cua oi tng va so hang tng ng vi so mau d lieu thu
thap c. Muc tieu cua giai thuat hoc la xay dng mot cay quyet nh e phan lp
d lieu t d lieu thu thap c nh thong qua thc nghiem. Giai thuat chon mot
thuoc tnh bat ky lam goc cua cay e t o phan lp d lieu theo cac nhanh vi cac
gia tr tng ng cua thuoc tnh. Thu tuc nay c e quy cho moi cay con cho en
khi co mot cay hoan chnh.
V du : Cho bang d lieu thu thap c t kinh nghiem mua qua la

Cac Nhan To Quyet nh Ket qua
Stt Tien Tuoi Qua
1 nhieu ln xe hi
2 nhieu nho may tnh
3 t ln hoa
4 t nho keo
Qua trnh hoc mua qua cua giai thuat hoc quy nap cay quyet t bang d lieu c
mo ta bang cay nh hnh












Cho Example_set la bang cha tat ca cac mau d lieu thu thap c va
Properties la danh sach cha cac thuoc tnh tng ng trong bang d lieu. Giai thuat
hoc quy nap cay quyet nh c mo ta nh sau :
Tuoi ?
Tien ?
nhieu
Tuoi ?
t
ln nho ln nho
Qua ? Qua ? Qua ? Qua ?
xe hi May tnh hoa keo
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 110
Function induce_tree(Example_set, Properties)
Begin
If ( Tat ca cac thanh vien trong Example_set la cung lp )
Then ( tao ra nut la anh nhan vi lp o)
Elseif ( Properties la danh sach rong) Then ( Tra ve nut la co
anh nhan gii t hoac cua tat ca cac lp trong Example_set )
Else begin
- Chon mot thuoc tnh P bat ky trong danh sach Properties lam goc
cua cay va loai bo thuoc tnh nay khoi danh sach.
- Cho moi gia tr V cua thuoc tnh P
Begin
- Tao ra mot nhanh cua cay co anh nhan V.
- at Partition cha tat ca cac mau co gia tr V.
- Thu tuc e quy cho moi cay con bang cach goi ham
induce_tree(Partition, Properties), noi ket qua vao nhanh V.
End;
End;
End.
V du : Cho d lieu thu thap c ve viec cho con n vay von nh bang

stt Rui Ro Uy Tn Khoan N The Chap Thu Nhap
1 cao xau nhieu khong thap
2 cao cha biet nhieu khong trung bnh
3 va cha biet t khong trung bnh
4 cao cha biet t khong thap
5 thap cha biet t khong cao
6 thap cha biet t co cao
7 cao xau t khong thap
8 va xau t co cao
9 thap tot t khong cao
10 thap tot nhieu co cao
11 cao tot nhieu khong thap
12 va tot nhieu khong trung bnh
13 thap tot nhieu khong cao
14 cao xau nhieu khong trung bnh

Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 111
Hay hoc xay dng cay quyet nh anh gia rui ro khi cho con n vay von ?
Giai thuat hoc quy nap cay quyet nh c s dung rat pho bien trong nhieu
lnh vc khac nhau nh d bao, anh gia, nhan dang va ieu khien bang kinh
nghiem. Giai thuat giup ngi hoc tm kiem nhanh muc ch muon hoc t cay quyet
nh. Giai thuat cung giup ngi hoc thiet ke he chuyen gia vi d lieu thu thap
c bang kinh nghiem. Sau qua trnh hoc, cay quyet nh a c hnh thanh, thu
tuc thiet ke he chuyen gia t cay quyet nh nay o la moi nhanh cua cay co so
lieu dan en ket luan o la mot luat suy dien cua he chuyen gia. Ve ieu kien cua
luat la cac nhan to quyet nh ket noi nhau t goc en ngon thong qua cac phep
toan giao lien t va, ve ket luan cua luat nhan to ket qua muon hoc.

3) Hoc heuristic vi giai thuat hoc quy nap cay quyet nh :
Cho bang d lieu nhieu hang va nhieu cot thu thap c t thc nghiem. e
giup giai thuat hoc nhanh va co hieu qua, theo ly thuyet thong tin, nhan to quyet
nh nao trong bang d lieu gianh c thong tin ln nhat o la nhan to quyet nh
tot nhat c chon lam goc cua cay trong qua trnh hoc.
Cach tnh thong tin gianh c cua cac nhan to quyet nh trong bang d lieu thu
thap c la nh sau :
+ Thong tin ve nhan to muon hoc M oi vi bang d lieu C c tnh bang cong
thc la

=
=
n
i
i i
m p m p C I
1
2
)) ( ( log ) ( ) (


trong o, m la gia tr th i cua nhan to muon hoc M va p(m
i i
) la xac suat cua manh
thong tin m
i
oi vi bang d lieu C o chnh la so mau trong bang d lieu C cha
manh thong tin m chia cho tong so mau trong bang d lieu C.
i
+ Neu ta chon Q lam goc cua cay trong qua trnh hoc th bang d lieu C se c
chia ra nhieu bang d lieu con C
i
trong o moi cua chung cha cac mau co gia tr
tng ng cua thuoc tnh Q. V the thong tin ve nhan to quyet Q neu chon Q lam
goc cua cay c tnh bang cong thc la
C
C I C
Q E
n
i
i i
=
=
1
) (
) (

Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
trong o, la tong so mau cha trong bang d lieu con C ,
i
C C
i
la tong so mau
cha trong bang d lieu C va I(C
i
) la thong tin ve nhan to muon hoc oi vi bang
d lieu C.
i
+ Thong tin gianh c cua nhan to quyet nh Q neu ta chon Q lam goc cua
cay trong qua trnh hoc c tnh bang cong thc la
gain(Q) = I(C) - E(Q).
Neu nhan to quyet nh nao co thong tin gianh c la ln nhat o la nhan to
quyet nh quan trong nhat c chon lam goc cua cay trong qua trnh hoc. n v
cua thong tin la bit.

4) Khai niem ve hoc cung co va hoc khong giam cua mo hnh hoc tren c
s tri thc :

+ Hoc cung co : Hoc cung co cung la dang hoc giam sat, tuy nhien d lieu hoc
gom manh nho thong tin n gian va tri thc san co cua he thong. ch cua viec
hoc la sau qua trnh hoc, tm ra mot nh ngha tong quat nhat t manh nho thong tin
n gian nay o la tn hieu hoc cung co cua thay giao.

V du : Hoc tm ra mot luat suy dien tong quat e dan en ket rang X la lp cua cac
oi tng qua bong nh s giai thch thong qua the loai hoc cung co.
- D lieu hoc : gom manh nho thong tin n gian va tri thc san co cua he
thong c thiet lap la
1) qua_bong(t).
2) vat_a_c(X)vat_hnh_cau(X) qua_bong(X).
3) vat_lam_bang_nha(X)vat_nhe(X) vat_a_c(X).
4) vat_co_mat_loi(X)vat_co_mat_tron(X) vat_hnh_cau(X).

- ch cua viec hoc : ch cua viec hoc la tm mot luat suy dien tong quat
nhat vi dang la
tien_e(X) qua_bong(X).
Qua trnh hoc, xay dng cac nhan to quyet nh cho tien_e(X) e dan en ket
luan rang X la lp cua cac oi tng qua bong.
The loai hoc cung co nay la dang hoc giai thch da tren c s tri thc
san co cua he thong va v the, he thong hoc phai trai qua hai giai oan. Giai
oan ac trng hoa t tri thc san co cua he thong o la giai oan giai thch ve
Trang 112
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 113
cac thuoc tnh ac trng cua oi tng. Giai oan tong quat hoa o la tong
quat hoa cac thuoc tnh ac trng cua oi tng a c giai thch vi bien so
X e tm ra cac nhan to quyet nh tong quat nhat cho tien_e(X) dan en ket
luan rang X la lp cua cac oi tng qua bong.
Qua trnh hoc vi the loai nay c mo ta bang cay nh hnh












qua_bong(t)
vat_lam_bang_nha(t)
vat_a_c(t)
vat_hnh_cau(t)
vat_nhe(t) vat_co_mat_loi(t) vat_co_mat_tron(t)









qua_bong(X)
vat_lam_bang_nha(X)
vat_a_c(X)
vat_hnh_cau(X)
vat_nhe(X) vat_co_mat_loi(X) vat_co_mat_tron(X)

Luat suy dien tong quat cho tien_e(X) la mot bieu thc cua cac phep toan giao
lien t va vi cac thanh phan cua no la cac nut la cua cay tong quat. Luat c
thiet lap la

vat_lam_bang_nha(X)vat_nhe(X)vat_co_mat_loi(X)
vat_co_mat_tron(X) qua_bong(X).

+ Hoc khong giam sat : Hoc khong giam sat con c goi la the loai t hoc. He
thong khong c cung cap bat ky mot thong tin tn hieu hoc nao cua thay giao. He
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com Trang 114
thong t kham pha ra mot vai thong tin bo ch trong qua trnh hoc. The loai hoc nay
thng s dung d lieu hoc khong phan lp va qua trnh hoc t kham pha e phan
lp d lieu.
V du : Hoc xep lp cua cac oi tng qua bong. D lieu hoc khong phan lp cua
cac qua bong c thiet lap la
t1 = { nho, o, nha, qua_bong}.
t2 = { nho, xanh, nha, qua_bong}.
t3 = { ln, en, go, qua_bong}.
ch cua viec hoc la qua trnh hoc xep lp cua cac oi tng qua bong da tren c
s cac so o tng t.
Cach hoc la lan lt tnh so o tng t cua tng cap d lieu, chon cap cua
cac oi tng co so o tng t la ln nhat a ve mot lp va con cac oi tng
khac co so o tng t la nho hn a ve mot lp khac. So o tng t cua moi cap
d lieu o la so thuoc tnh giong nhau cua hai oi tng chia cho tong so cac thuoc
tnh cua oi tng va v the so o tng t cua moi cap d lieu cho tren c thiet
lap nh sau :
- So o tng t cua cap d lieu t1 va t2 la 3/4.
- So o tng t cua cap d lieu t1 va t3 la 1/4.
- So o tng t cua cap d lieu t2 va t3 la 1/4.
Vi cac so o tng t nay, oi tng t1 va t2 la cung lp va t3 la mot lp
khac.

7.3) Mo hnh Hoc May Nh Mang Neuron Nhan Tao :
1) Tong quan ve mang neuron nhan tao :
Trai vi mo hnh hoc may tren c s tri thc, mo hnh hoc may nh mang
neuron nhan tao o la mo hnh hoc bang cach mo phong lai cau truc va nguyen ly
lam viec cua he neuron sinh hoc con ngi. He neuron sinh hoc con ngi c
tha nhan co khoang 10
10
hoac 10
12
te bao neuron gom nhieu lp o la lp vao, cac
lp an va lp ra. Lp vao noi vi cac phan t cam bien nh tai, mat, mieng, mui, da
van van, lp ra noi vi cac phan t c bap nh chan, tay van van va cac lp an
cha cac n v x ly x cac thong tin nhan c t lp vao va gi quyet nh en
lp ra e ieu khien cac phan t c bap nh chan va tay van van. Moi neuron sinh
hoc co nhieu ngo vao va mot ngo ra va ngo ra cua neuron nay c ket noi vi ngo
vao cua neuron khac. Tn hieu truyen t neuron nay en neuron khac la di dang
ien ap. Neu tn hieu truyen gia hai neuron la ien ap dng th hai nuron c
ket noi di dang kch thch. Neu tn hieu truyen gia hai neuron la ien ap am th
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 115
hai neuron c ket noi di dang c che. Neu tn hieu truyen gia hai neuron la
ien ap zero th hai neuron la khong co s ket noi. Lng ien ap truyen gia cac
neuron c goi la cng o ket noi. Tren c s cua he neuron sinh hoc con ngi
nh c mo ta, mot mang neuron nhan tao nhieu lp c thiet lap nh hnh
























Co ba thanh phan c ban cua cac mang neuron nhan tao o la mo hnh ket noi, n
v x ly va luat hoc.
x
1
x
j
x
m
V
qj
W
iq
y
1
y
i
y
n
Lp vao Lp an
Lp ra
+ Mo hnh ket noi : Co hai mo hnh ket noi o la ket noi truyen thang va ket noi
hoi quy. Mo hnh ket noi truyen thang c goi la mang truyen thang o la cau truc
mang c ket noi chuyen tiep tn hieu t lp vao thong qua lp an va en lp ra.
Mo hnh ket noi hoi quy c goi la mang hoi quy o la cau truc mang c ket noi
chuyen tiep tn hieu t lp vao thong qua lp an en lp ra va ong thi hoi tiep tn
hieu ve n v x ly chnh no hoac cac n v x khac trong lp hoac lp khac.
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com
+ n v x ly : Mot mang neuron nhan tao co nhieu lp o la lp vao, cac lp an
va lp ra. Lp vao cha cac neuron c xem nh ni cha cac tn hieu vao. Cac
lp an cha cac neuron c xem nh cac n v x ly. Lp ra cha cac neuron
c xem nh cac n v x ly ra quyet nh. Ket hp vi moi n v x ly co ham
tong hp va ham kch hoat. Ham tong hp co chc nang tong hp tat ca cac thong
tin t cac ngo vao cua n v va ham kch hoat co chc nang tao tn hieu ra cua n
v khi nhan c tn hieu vao t ham tong hp.

- Ham tong hp dang tuyen tnh cua moi n v x ly th i c thiet lap la

=
=
m
j
i j ij i
x W f
1


trong o, W la trong so ket noi gia n v j va n v i, x
ij j
la ngo ra cua n v j
o chnh la ngo vao cua n v i va la n v ngng cua n v x ly i.
i
- Ham kch hoat tao tn hieu ra cua n v x ly th i c thiet lap mot
trong cac dang la
* Ham bac thang n v :

=
0 0
0 1
) (
i
i
i
f if
f if
f a
i
f
i
e
f a

+
=
1
1
) (
* Ham unipolar sigmoid :
i i
i i
f f
f f
i
e e
e e
f a

= ) (
* Ham hyperbolic tangent :
+ Luat hoc : Co hai cach hoc trong cac mang neuron nhan tao o la hoc cau truc va
hoc thong so. Hoc cau truc la qua trnh hoc thay oi cau truc ben trong cua mang.
Hoc thong so la qua trnh hoc cap nhat cac trong so ket noi gia cac n v x ly
trong mang sao cho xap x vi bo trong so mong muon e co c anh xa vao ra
nh mong muon.
Cho W
ij
la trong so ket noi gia n v th j va n v th i, luat hoc cap nhat
trong trong so tai thi iem t+1 c thiet lap la
Trang 116
W (t+1) = W (t) + W
ij ij ij
(t)
Trong o, la hang so dng o c goi la toc o hoc va W
ij
(t) la lng gia
tang trong so tai thi iem t.
Co ba the loai hoc trong cac mang neuron nhan tao o la hoc giam sat, hoc cung
co va hoc khong giam sat.
Bien soan: Tien s Nguyen Thien Thanh

Hoc k 2 nam hoc 2005-2006 Trang 117
- Hoc giam sat : cho tap d lieu vao ra mong muon, qua trnh hoc cap nhat cac
trong so ket noi gia cac phan t x ly trong mang sao cho ngo ra that s cua mang
xap x vi ngo ra mong muon cua mang.
- Hoc cung co : cung la the loai hoc giam sat, tuy nhien, tn hieu ra mong
muon cua mang la tn hieu cung co o la tn hieu thng va phat. Qua trnh hoc,
cap nhat cac trong so ket noi gia cac n v x ly sao cho ngo ra that s cua mang
xap x vi ngo ra mong muon thng vi o tin cay cang cao cang tot.
- Hoc khong giam sat : la the loai hoc khong co d lieu ra mong muon, qua
trnh hoc vi tap d lieu vao mong muon, mang t cap nhat cac trong so ket noi
da tren c s tap d lieu vao mong muon sao cho ngo ra thc s cua mang thch
nghi vi ngo vao mong muon.

2) Mang truyen thang va giai thuat hoc lan truyen ngc :
Cho mang truyen thang ba lp nh c mo ta tren, va vi ham chi ph o tn
hieu sai so gia ngo ra thc s y
i
(k) cua mang va ngo ra mong muon d
i
(k) cua
mang cho bi moi mau tn hieu vao mong muon X(k) la

=
=
n
i
i i
k y k d k E
1
)) ( ) ( (
2
1
) (
.
Giai thuat hoc lan truyen ngc cap nhat trong so ket noi trong mang c mo
ta gom cac bc sau :

Bc 0 : Nhap tap mau huan luyen vao ra mong {X(k), d(k), cho k = 1, . . . ,p},
trong o X(k) la vect mau vao va d(k) la vect mau ra. Thiet lap toc o hoc ,
sai so cho phep hoi tu E
max
, trong so khi tao, E = 0 va k = 1.

Bc 1 : Truyen tn hieu chuyen tiep t lp vao, qua lp an va en lp ra.
Cho q = 1 en l

) ( ) ( ) (
1
k x k V k net
j
m
j
qj q
=
=

)). ( ( ) ( k net a k z
q q
=
Cho i = 1 en n

) ( ) ( ) (
1
k z k W k net
q
l
q
iq i
=
=
Bai giang mon Tr tue nhan tao va he chuyen gia

http://www.khvt.com

)). ( ( ) ( k net a k y
i i
=

Bc 2 : Tnh sai so chuan 2 gia ngo ra mong muon va ngo ra thc s cua
mang.

=
=
n
i
i i
k y k d k E
1
)) ( ) ( (
2
1
) (





Bc 3 : Lan truyen ngc cap nhat trong so ket noi gia cac lp.
Cho i = 1 en n

)) ( ( )) ( ) ( ( ) (
'
k net a k y k d k
i i i i
=
Cho i = 1 en n
Cho q = 1 en l
) ( ) ( ) ( ) 1 ( k z k k W k W
q i iq iq
+ = +
.
Cho q = 1 en l
.

=
=
n
i
i qi q q
k k W k net a k
1
'
) ( ) ( )) ( ( ) (
Cho q = 1 en l
Cho j = 1 en m
) ( ) ( ) ( ) 1 ( k x k k V k V
j q qj qj
+ = +
.
Bc 4 : Kiem tra neu k < p th tang k = k + 1 va quay ve bc 1; mat khac
en bc 5.

Bc 5
Trang 118
: Kiem tra neu E < E
max
th dng thu tuc huan luyen; mat khac thiet
lap E = 0 va k = 1 va quay ve bc 1 thc hien mot the he huan luyen khac.

You might also like