E N D
1. TRÍ TUEÄ NHAÂN TAÏOArtificial Intelligent Khoa Coâng Ngheä Thoâng Tin
Ñaïi Hoïc Baùch Khoa – Tp. HCM
2. Noäi dung moân hoïc – Giôùi thieäu Chöông 1: Giôùi thieäu
Ngaønh Trí tueä nhaân taïo laø gì?
Muïc tieâu nghieân cöùu cuûa ngaønh Trí tueä nhaân taïo
Lòch söû hình thaønh vaø hieän traïng
Turing Test
Chöông 2: Logic vò töø
Meänh ñeà & logic vò töø
Logic vò töø döôùi goùc nhìn cuûa AI
3. Noäi dung moân hoïc – Caùc kyõ thuaät tìm kieám Chöông 3:Tìm kieám treân khoâng gian traïng thaùi
(State Space Search)
AI : Bieåu dieãn vaø tìm kieám
Caùc giaûi thuaät tìm kieám treân khoâng gian traïng thaùi
Depth first search (DFS) - Breath first search (BFS)
Chöông 4:Tìm kieám theo Heuristic
Heuristic laø gì?
Tìm kieám theo heuristic
Caùc giaûi thuaät Best first search (BFS), Giaûi thuaät A*
Chieán löôïc Minimax, Alpha Beta
4. Noäi dung moân hoïc – Kyõ thuaät phaùt trieån öùng duïng Chöông 5:Heä luaät sinh
Tìm kieám ñeä qui
Heä luaät sinh: Ñònh nghóa vaø öùng duïng
Tìm kieám treân heä luaät sinh
Chöông 6:Heä chuyeân gia
Giôùi thieäu veà heä chuyeân gia
Moâ hình heä chuyeân gia: döï treân luaät, döïa treân frame
Phaùt trieån moät heä chuyeân gia
Chöông 7:Bieåu dieån tri thöùc
Bieåu dieån tri thöùc trong AI: vai troø vaø öùng duïng
Caùc kyõ thuaät bieåu dieån tri thöùc: semantic network, löu ñoà phuï thuoäc khaùi nieäm, frame, script
5. Thöïc haønh &Taøi lieäu tham khaûo Thöïc haønh Prolog vaø CLISP
Prolog : Caùc giaûi thuaät tìm kieám
CLISP : Bieåu dieån tri thöùc
Baøi taäp lôùn
Taøi lieäu tham khaûo
Baøi giaûng “Trí tueä nhaân taïo” – ThS Nguyeãn Cao Trí – KS Leâ Thaønh Saùch
Artificial Inteligent – George F. Luget & Cilliam A. Stubblefied
Giaùo trình “Trí tueä nhaân taïo” – KS Nguyeãn Ñöùc Cöôøng
Trí tueä nhaän taïo – Nguyeãn Quang Tuaán – Haø noäi
6. Chöông 1: GIÔÙI THIEÄU Ngaønh Trí tueä nhaân taïo laø gì?
Muïc tieâu nghieân cöùu cuûa ngaønh Trí tueä nhaân taïo
Lòch söû hình thaønh vaø hieän traïng
Turing Test
7. Ñoái töôïng nghieân cöùu cuûa AI
Ñoái töôïng nghieân cöùu cuûa ngaønh AI
AI laø ngaønh nghieân cöùu veà caùc haønh xöû thoâng minh (intelligent behaviour) bao goàm: thu thaäp, löu tröõ tri thöùc, suy luaän, hoaït ñoäng vaø kyõ naêng.
Ñoái töôïng nghieân cöùu laø caùc “haønh xöû thoâng minh” chöù khoâng phaûi laø “söï thoâng minh”.
‘Khoâng coù’ Söï Thoâng Minh
Chæ coù
Bieåu hieän thoâng minh qua haønh xöû
8. Söï Thoâng Minh Thoâng minh hay Haønh xöû thoâng minh laø gì?
Haønh xöû thoâng minh: laø caùc hoaït ñoäng cuûa moät ñoái töôïng nhö laø keát quaû cuûa moät quaù trình thu thaäp, xöû lyù vaø ñieàu khieån theo nhöõng tri thöùc ñaõ coù hay môùi phaùt sinh (thöôøng cho keát quaû toát theo mong ñôïi so vôùi caùc haønh xöû thoâng thöôøng) laø bieåu hieän cuï theå, caûm nhaän ñöôïc cuûa “Söï thoâng minh”
Khaùi nieäm veà tính thoâng minh cuûa moät ñoái töôïng thöôøng bieåu hieän qua caùc hoaït ñoäng:
Söï hieåu bieát vaø nhaän thöùc ñöôïc tri thöùc
Söï lyù luaän taïo ra tri thöùc môùi döïa treân tri thöùc ñaõ coù
Haønh ñoäng theo keát quaû cuûa caùc lyù luaän
Kyõ naêng (Skill)
9. Tri thöùc (Knowledge) Tri thöùc laø nhöõng thoâng tin chöùa ñöïng 2 thaønh phaàn
Caùc khaùi nieäm:
Caùc khaùi nieäm cô baûn: laø caùc khaùi nieäm mang tính quy öôùc
Caùc khaùi nieäm phaùt trieån: Ñöôïc hình thaønh töø caùc khaùc nieäm cô baûn thaønh caùc khaùi nieäm phöùc hôïp phöùc taïp hôn.
Caùc phöông phaùp nhaän thöùc:
Caùc qui luaät, caùc thuû tuïc
Phöông phaùp suy dieãn, lyù luaän,..
Tri thöùc laø ñieàu kieän tieân quyeát cuûa caùc haønh xöû thoâng minh hay “Söï thoâng minh”
Tri thöùc coù ñöôïc qua söï thu thaäp tri thöùc vaø saûn sinh tri thöùc
Quaù trình thu thaäp vaø saûn sinh tri thöùc laø hai quaù trình song song vaø noái tieáp vôùi nhau – khoâng bao giôø chaám döùt trong moät thöïc theå “Thoâng Minh”
10. Tri thöùc – Thu thaäp vaø saûn sinh Thu thaäp tri thöùc:
Tri thöùc ñöôïc thu thaäp töø thoâng tin, laø keát quaû cuûa moät quaù trình thu nhaän döõ lieäu, xöû lyù vaø löu tröõ. Thoâng thöôøng quaù trình thu thaäp tri thöùc goàm caùc böôùc sau:
Xaùc ñònh lónh vöïc/phaïm vi tri thöùc caàn quan taâm
Thu thaäp döõ lieäu lieân quan döôùi daïng caùc tröôøng hôïp cuï theå.
Heä thoáng hoùa, ruùt ra nhöõng thoâng tin toång quaùt, ñaïi dieän cho caùc tröôøng hôïp ñaõ bieát – Toång quaùt hoùa.
Xem xeùt vaø giöõ laïi nhöõng thoâng tin lieân quan ñeán vaán ñeà caàn quan taâm , ta coù caùc tri thöùc veà vaán ñeà ñoù.
Saûn sinh tri thöùc:
Tri thöùc sau khi ñöôïc thu thaäp seõ ñöôïc ñöa vaøo maïng tri thöùc ñaõ coù.
Treân cô sôû ñoù thöïc hieän caùc lieân keát, suy dieãn, kieåm chöùng ñeå saûn sinh ra caùc tri thöùc môùi.
11. Tri thöùc – Tri thöùc sieâu caáp “Trí thöùc sieâu caáp” (meta knowledge) hay “Tri thöùc veà Tri thöùc”
Laø caùc tri thöùc duøng ñeå:
Ñaùnh giaù tri thöùc khaùc
Ñaùnh giaù keát quaû cuûa quaù trình suy dieãn
Kieåm chöùng caùc tri thöùc môùi
Phöông tieän truyeàn tri thöùc: ngoân ngöõ töï nhieân
12. Haønh xöû thoâng minh – Keát luaän Haønh xöû thoâng minh khoâng ñôn thuaàn laø caùc haønh ñoäng nhö laø keát quaû cuûa quaù trình thu thaäp tri thöùc vaø suy luaän treân tri thöùc.
Haønh xöû thoâng minh coøn bao haøm
Söï töông taùc vôùi moâi tröôøng ñeå nhaän caùc phaûn hoài
Söï tieáp nhaän caùc phaûn hoài ñeå ñieàu chænh haønh ñoäng - Skill
Söï tieáp nhaän caùc phaûn hoài ñeå hieäu chænh vaø caäp nhaät tri thöùc
Tính chaát thoâng minh cuûa moät ñoái töôïng laø söï toång hôïp cuûa caû 3 yeáu toá: thu thaäp tri thöùc, suy luaän vaø haønh xöû cuûa ñoái töôïng treân tri thöùc thu thaäp ñöôïc. Chuùng hoøa quyeän vaøo nhau thaønh moät theå thoáng nhaát “ Söï Thoâng Minh”
Khoâng theå ñaùnh giaù rieâng leõ baát kyø moät khía caïnh naøo ñeå noùi veà tính thoâng minh.
? THOÂNG MINH CAÀN TRI THÖÙC
13. Muïc tieâu nghieân cöùu cuûa ngaønh AI Trí tueä nhaân taïo nhaèm taïo ra “Maùy ngöôøi”?
Muïc tieâu
Xaây döïng lyù thuyeát veà thoâng minh ñeå giaûi thích caùc hoaït ñoäng thoâng minh
Tìm hieåu cô cheá söï thoâng minh cuûa con ngöôøi
Cô cheá löu tröõ tri thöùc
Cô cheá khai thaùc tri thöùc
Xaây döïng cô cheá hieän thöïc söï thoâng minh
Aùp duïng caùc hieåu bieát naøy vaøo caùc maùy moùc phuïc vuï con ngöôøi.
14. Muïc tieâu cuûa AI (tt) Cuï theå:
Kyõ thuaät: xaây döïng caùc maùy moùc coù tính thoâng minh nhaèm ñaùp öùng toát hôn nhu caàu cuûa con ngöôøi.
Khoa hoïc: xaây döïng vaø phaùt trieån caùc khaùi nieäm, thuaät ngöõ, phöông phaùp ñeå hieåu ñöôïc caùc haønh xöû thoâng minh cuûa sinh vaät.
Ñoái töôïng thöôøng ñöôïc chuù troïng phaùt trieån laø maùy tính
Söï caàn thieát cuûa ngaønh AI ?????
Laøm sao bieát maùy coù thoâng minh?
15. Turing Test: Thöû tính thoâng minh Baøi toaùn xaùc ñònh tính thoâng minh cuûa moät ñoái töôïng
Turing test:
16. Turing Test: Öu - Khuyeát Öu ñieåm
Ñem laïi quan ñieåm khaùch quan veà söï thoâng minh: Thoâng minh hay khoâng theå hieän qua caùc traû lôøi cuûa caùc caâu hoûi
Loaïi tröø caùc thaønh kieán: khoâng thích coâng nhaän tính thoâng minh cuûa maùy moùc. Söï thoâng minh chæ ñöôïc ñaùnh giaù qua caùc caâu hoûi, khoâng bò chi phoái bôûi caùc yeáu toá khaùc.
Traùnh tình traïng hieåu laàm
Khuyeát ñieåm:
Pheùp thöû taäp trung vaøo caùc coâng vieäc bieåu dieån hoaøn toaøn baèng kyù hieäu do ñoù laøm maát moät ñaëc tính raát quan troïng cuûa maùy tính laø tính toaùn chính xaùc vaø hieäu quaû
Khoâng thöû nghieäm ñöôïc caùc khaû naêng tri giaùc vaø kheùo leùo
Giôùi haïn khaû naêng thoâng minh cuûa maùy tính theo khuoân maãu con ngöôøi. Nhöng con ngöôøi chöa haún laø thoâng minh hoaøn haûo.
Khoâng coù moät chæ soá roõ raøng ñònh löôïng cho söï thoâng minh. Phuï thuoäc vaøo ngöôøi tester.
17. Lòch söû phaùt trieån cuûa AI : Giai ñoaïn coå ñieån Giai ñoaïn coå ñieån (1950 – 1965)
Ñaây laø giai ñoaïn cuûa 2 lónh vöïc chính:Game Playing (Troø chôi) vaø Theorem Proving (Chöùng minh ñònh kyù)
Game Playing: döïa treân kyõ thuaät State Space Search vôùi traïng thaùi (State) laø caùc tình huoáng cuûa troø chôi. Ñaùp aùn caàn tìm laø traïng thaùi thaéng hay con ñöôøng daån tôùi traïng thaùi thaéng. Aùp duïng vôùi caùc troø chôi loaïi ñoái khaùng. Ví duï: Troø chôi ñaùnh côø vua.
Coù 2 kyõ thuaät tìm kieám cô baûn:
Kyõ thuaät generate and test : chæ tìm ñöôïc 1 ñaùp aùn/ chöa chaéc toái öu.
Kyõ thuaät Exhaustive search (veùt caïn): Tìm taát caû caùc nghieäm, choïn löïa phöông aùn toát nhaát.
18. Lòch söû phaùt trieån cuûa AI : Giai ñoaïn coå ñieån (tt) Theorem Proving: döïa treân taäp tieân ñeà cho tröôùc, chöông trình seõ thöïc hieän chuoåi caùc suy dieån ñeå ñaït tôùi bieåu thöùc caàn chöùng minh.
Neáu coù nghóa laø ñaõ chöùng minh ñöôïc. Ngöôïc laïi laø khoâng chöùng minh ñöôïc.
Ví duï: Chöùng minh caùc ñònh lyù töï ñoäng, giaûi toaùn,...
Vaãn döïa treân kyõ thuaät state space search nhöng khoù khaên hôn do möùc ñoä vaø quan heä cuûa caùc pheùp suy luaän: song song, ñoàng thôøi, baéc caàu,..
Coù caùc keát quaû khaù toát vaø vaãn coøn phaùt trieån ñeán ngaøy nay
19. Lòch söû phaùt trieån cuûa AI- Giai ñoaïn vieãn voâng Giai ñoaïn vieãn voâng (1965 – 1975)
Ñaây laø giai ñoaïn phaùt trieån vôùi tham voïng laøm cho maùy hieåu ñöôïc con ngöôøi qua ngoân ngöõ töï nhieân.
Caùc coâng trình nghieân cöùu taäp trung vaøo vieäc bieåu dieån tri thöùc vaø phöông thöùc giao tieáp giöõa ngöôøi & maùy baèng ngoân ngöõ töï nhieân.
Keát quaû khoâng maáy khaû quan nhöng cuõng tìm ra ñöôïc caùc phöông thöùc bieåu dieãn tri thöùc vaãn coøn ñöôïc duøng ñeán ngaøy nay tuy chöa thaät toát nhö:
Semantic Network (maïng ngöõ nghóa)
Conceptial graph (ñoà thò khaùi nieäm)
Frame (khung)
Script (kòch baûn)
20. Lòch söû phaùt trieån cuûa AI- Giai ñoaïn hieän ñaïi Giai ñoaïn hieän ñaïi (töø 1975)
Xaùc ñònh laïi muïc tieâu mang tính thöïc tieån hôn cuûa AI laø:
Tìm ra lôøi giaûi toát nhaát trong khoaûng thôøi gian chaáp nhaän ñöôïc.
Khoâng caàu toaøn tìm ra lôøi giaûi toái öu
Tinh thaàn HEURISTIC ra ñôøi vaø ñöôïc aùp duïng maïnh meõ ñeå khaéc phuïc buøng noå toå hôïp.
Khaúng ñònh vai troø cuûa tri thöùc ñoàng thôøi xaùc ñònh 2 trôû ngaïi lôùn laø bieåu dieån tri thöùc vaø buøng noå toå hôïp.
Neâu cao vai troø cuûa Heuristic nhöng cuõng khaúng ñònh tính khoù khaên trong ñaùnh giaù heuristic.
21. Caùc lónh vöïc öùng duïng Game Playing: Tìm kieám / Heuristic
Automatic reasoning & Theorem proving: Tìm kieám / Heuristic
Expert System: laø höôùng phaùt trieån maïnh meõ nhaát vaø coù giaù trò öùng duïng cao nhaát.
Planning & Robotic: caùc heä thoáng döï baùo, töï ñoäng hoùa
Machine learning: Trang bò khaû naêng hoïc taäp ñeå giaûi quyeát vaán ñeà kho tri thöùc:
Supervised : Kieåm soaùt ñöôïc tri thöùc hoïc ñöôïc. Khoâng tìm ra caùi môùi.
UnSupervised:Töï hoïc, khoâng kieåm soaùt. Coù theå taïo ra tri thöùc môùi nhöng cuõng nguy hieåm vì coù theå hoïc nhöõng ñieàu khoâng mong muoán.
22. Caùc lónh vöïc öùng duïng (tt) Natural Language Understanding & Semantic modelling: Khoâng ñöôïc phaùt trieån maïnh do möùc ñoä phöùc taïp cuûa baøi toaùn caû veà tri thöùc & khaû naêng suy luaän.
Modeling Human perfromance: Nghieân cöùu cô cheá toå chöùc trí tueä cuûa con ngöôøi ñeå aùp duïng cho maùy.
Language and Environment for AI:Phaùt trieån coâng cuï vaø moâi tröôøng ñeå xaây döïng caùc öùng duïng AI.
Neurol network / Parallel Distributed processing: giaûi quyeát vaán ñeà naêng löïc tính toaùn vaø toác ñoä tính toaùn baèng kyõ thuaät song song vaø moâ phoûng maïng thaàn kinh cuûa con ngöôøi.
23. Moâ hình phaùt trieån öùng duïng AI Moâ hình öùng duïng Ai hieän taïi:
AI = Presentation & Search
24. Chöông 2: PHEÙP TOAÙN VÒ TÖØ Pheùp toaùn vò töø döôùi goùc nhìn cuûa AI
Meänh ñeà
Vò töø
25. AI & Pheùp toaùn vò töø Taïi sao Ai phaûi nghieân cöùu pheùp toaùn vò töø?
AI ? Phaùt trieån caùc chöông trình coù khaû naêng suy luaän
Suy luaän giuùp chöông trình AI bieát ñöôïc tính ñuùng/sai cuûa moät vaán ñeà naøo ñoù.
Pheùp toaùn vò töø ? cung caáp moät khaû naêng trieån khai caùc quaù trình suy dieãn treân maùy tính
Phaùt trieån chöông trình AI caàn pheùp toaùn vò töø.
Pheùp toaùn vò töø ñöôïc hieän thöïc baèng ngoân ngöõ laäp trình treân maùy tính PROLOG
26. AI & Pheùp toaùn vò töø: Minh hoïa 1 Meänh ñeà thöïc teá
“Neáu trôøi möa thì baàu trôøi coù maây”
Trôøi ñang möa
Vaäy ? Baàu trôøi coù maây Meänh ñeà logic
P=“Trôøi möa”
Q= “Baàu trôøi coù maây”
Ta coù hai phaùt bieåu sau ñuùng:
P? Q
P
Vaäy theo luaät suy dieãn ? Q laø ñuùng.
Nghóa laø: “Baàu trôøi coù maây”
27. AI & Pheùp toaùn vò töø: Minh hoïa 2 Meänh ñeà thöïc teá
“Neáu NAM coù nhieàu tieàn thì NAM ñi mua saém”
“Nam KHOÂNG ñi mua saém”
Vaäy ? Nam KHOÂNG coù nhieàu tieàn Meänh ñeà logic
P=“Nam coù nhieàu tieàn”
Q= “Nam ñi mua saém”
Ta coù hai phaùt bieåu sau ñuùng:
P? Q
? Q
Vaäy theo luaät suy dieãn ? ? P laø ñuùng.
Nghóa laø: “Nam KHOÂNG coù nhieàu tieàn”
28. Pheùp toaùn meänh ñeà : Ñònh nghóa Meänh ñeà:
Meänh ñeà laø moät phaùt bieåu khai baùo
Meänh ñeà chæ nhaän moät trong hai giaù trò: ÑUÙNG (True) hoaëc SAI (False)
Ví duï:
Ngaøy 01thaùng gieâng laø ngaøy teát coå truyeàn
Moân baïn ñang hoïc laø AI
Hoâm nay laø quoác khaùnh
Hoâm nay trôøi laïnh
Taïi sao phaûi hoïc AI ?
29. Meänh ñeà : Caùc pheùp toaùn Bieåu thöùc meänh ñeà: laø söï keát hôïp cuûa caùc meänh ñeà bôûi caùc pheùp toaùn meänh ñeà
Caùc pheùp toaùn:
? Phuû ñònh moät ngoâi
? Hoäi hai ngoâi
? Tuyeån hai ngoâi
? Suy ra hai ngoâi
= Töông ñöông hai ngoâi
Caùch ñaùnh giaù giaù trò cuûa pheùp toaùn:
Baûng chaân trò
30. Meänh ñeà : Caùc pheùp toaùn – ví duï Meänh ñeà thöïc teá
“Nam hoïc gioûi, thoâng minh, ñeïp trai”
“Nam hoïc gioûi hoaëc thoâng minh”
“Nam hoaëc hoïc gioûi, hoaëc ñeïp trai”
“Nam thoâng mình thì hoïc gioûi”
Bieåu thöùc meänhñeà
P ? Q ? R
P ? Q
(P ? ?R)? (?P ? R)
Q ? P
31. Meänh ñeà : Caùc bieåu thöùc meänh ñeà ñuùng Kyù hieäu bieåu thöùc ñuùng: wff
Thaønh phaàn cô baûn laø P hay ?P, vôùi P laø moät meänh ñeà
Caùc bieåu thöùc ñuùng ñònh nghóa theo daïng luaät sinh sau:
Wff= “Thaønh phaàn cô baûn”|
?wff | wff^wff |
wff v wff |
wff ? wff |
wff = wff |
(wff)
32. Meänh ñeà : Ngöõ nghóa Ngöõ nghóa cuûa moät bieåu thöùc meänh ñeà laø giaù trò cuûa bieåu thöùc meänh ñeà ñoù.
Giaù trò cuûa bieåu thöùc meänh ñeà laø coù khaû naêng tính toaùn ñöôïc. Trong ñoù:
Moãi meänh ñeà ñöôïc gaùn moät giaù trò true hay false
Moãi toaùn töû ñöôïc ñaùnh giaù theo baûng chaân trò vaø thöù töï öu tieân cuûa toaùn töû.
Giaù trò cuûa bieåu thöùc meänh ñeà tính baèng caùch:
Duøng baûng chaân trò
Ñaùnh giaù ngöôïc töø node laù khi bieåu thöùc meänh ñeà ñöôïc bieåu dieãn ôû daïng caây
33. Meänh ñeà : Caùc töông ñöông Caùc töông ñöông ñöôïc söû duïng thöôøng xuyeân trong quaù trình bieán ñoåi moät bieåu thöùc töø daïng naøy sang daïng khaùc.
Khaû naêng bieán ñoåi töông ñöông treân maùy tính coù theå ñöôïc laøm töï ñoäng
Caùc töông ñöông:
Trong caùc töông ñöông sau A,B,C laø caùc meänh ñeà baát kyø.
34. Meänh ñeà : Caùc töông ñöông (tt) Daïng suy ra
A ? TRUE = TRUE
A ? FALSE = ?A
TRUE ? A = A
FALSE ? A = TRUE
A ? A = TRUE
Daïng haáp thu
A ? (A ? B) = A
A ? (A ? B) = A
A ? (?A ? B)= A?B
A ? (?A ? B)= A?B
Daïng De Morgan
? (A ? B) = ?A ? ?B
? (A ? B) = ?A ? ?B Daïng khaùc
A ? B = ?A ? B
? (A ? B) = A ? ?B
A ? B =
A ? ?B? FALSE
Pheùp ? vaø ? coù khaû naêng keát hôïp.
Pheùp ? vaø ? coù khaû naêng hoaùn vò.
Pheùp ? coù khaû naêng phaân phoái treân ?
A ? (B?C) =(A?B)?(A?C)
Pheùp ? coù khaû naêng phaân phoái treân ?
A ? (B?C) =(A?B)?(A?C)
35. Meänh ñeà : Caùc daïng chuaån CNF & DNF Daïng chuaån laø keát xuaát chuaån cuûa caùc giaûi thuaät laøm vieäc vôùi pheùp toaùn meänh ñeà.
Tuyeån cô baûn: laø thaønh phaàn cô baûn hay söï keát hôïp cuûa caùc thaønh phaàn cô baûn baèng pheùp tuyeån(v)
Hoäi cô baûn: laø thaønh phaàn cô baûn hay söï keát hôïp cuûa caùc thaønh phaàn cô baûn baèng pheùp hoäi (^).
Daïng chuaån hoäi – CNF: laø thaønh phaàn tuyeån cô baûn hay caùc tuyeån cô baûn keát hôïp bôûi pheùp hoäi.
Daïng chuaån tuyeån – DNF: laø thaønh phaàn hoäi cô baûn hay caùc hoäi cô baûn keát hôïp bôûi pheùp tuyeån.
36. Meänh ñeà : Luaät suy dieãn & chöùng minh Luaät Modus Ponens (MP)
A, A? B ? B
Luaät Modus Tollens (MT)
A? B, ?B ? ?A
Luaät Hoäi
A,B ? A^B
Luaät ñôn giaûn
A^B ? A
Luaät Coäng
A ? AvB
Luaät tam ñoaïn luaän tuyeån
Av B, ?A ? B
Luaät tam ñoaïn luaän giaû thieát
A? B,B? C? A? C
37. Meänh ñeà : Luaät suy dieãn & chöùng minh – Ví duï 1 Ta coù caùc bieåu thöùc sau: AvB, AvC,vaø ?A laø TRUE
Chöùng minh B^C coù trò TRUE
Ñaõ chöùng minh xong
38. Meänh ñeà : Luaät suy dieãn & chöùng minh – Ví duï 2 Ta coù caùc bieåu thöùc sau laø ñuùng:
AvB, A? C, B? D, ?D Chöùng minh C
Ta giaû thieát ?C daån ñeán false
39. Meänh ñeà : Luaät phaân giaûi meänh ñeà Clause: laø tuyeån cuûa khoâng hay nhieàu thaønh phaàn cô baûn.
Daïng clause:laø hoäi cuûa moät hay nhieàu Clause
Luaät phaân giaûi meänh ñeà:
PVD1, ?PvD2 ? (D1-P)v(D2-?P)
D1,D2 laø tuyeån cuûa khoâng hay moät thaønh phaàn cô baûn.
P laø meänh ñeà
D1-P : laø moät clause thu ñöôïc baèng caùch xoùa boû caùc P trong D1
D2- ?P : laø moät clause thu ñöôïc baèng caùch xoùa boû caùc ?P trong D2
40. Meänh ñeà : Luaät phaân giaûi meänh ñeà (tt) Luaät phaân giaûi baûo toaøn tính Unsatisfiable
S laø unsatisfiable ? Rn(S)cuõng unsatisfiable
R: luaät phaân giaûi, n soá laàn aùp duïng R treân S, n>0
ÖÙng duïng cuûa luaät phaân giaûi : duøng ñeå chöùng minh: Coù S laø taäp caùc clause, duøng S chöùng minh bieåu thöùc meänh ñeà W
Phöông phaùp:
Thaønh laäp phuû ñònh cuûa W
Ñöa ?W veà daïng clause
Theâm clause trong böôùc ii vaøo S thaønh laäp S1
Duøng luaät phaân giaûi treân S1 ñeå daãn ra clause roãng.
41. Meänh ñeà : Luaät phaân giaûi meänh ñeà - Ví duï Cho ñoaïn sau:
“ Nam ñeïp trai, giaøu coù. Do vaäy, Nam hoaëc laø phung phí hoaëc laø nhaân töø vaø giuùp ngöôøi. Thöïc teá, Nam khoâng phung phí hoaëc cuõng khoâng keâu caêng.”
“Do vaäy, coù theå noùi Nam laø ngöôøi nhaân töø”
Kieåm chöùng keát quaû suy luaän treân, baèng luaät phaân giaûi.
42. Meänh ñeà : Luaät phaân giaûi meänh ñeà - Ví duï (i) Chuyeån sang meänh ñeà:
P1 = “Nam ñeïp trai.”
P2 = “Nam giaøu coù.”
P3 = “Nam phung phí.”
P4 = “Nam keâu caêng.”
P5 = “Nam nhaân töø.”
P6 = “Nam giuùp ngöôøi.”
Caùc bieåu thöùc thaønh laäp ñöôïc töø ñoaïn treân:
Wff1 = P1 ^ P2
Wff2 = (P1 ^ P2) => (P3 ^ ?(P5 ^ P6)) v (?P3 ^ (P5 ^ P6))
Wff3 = ?P3 ^ ?P4
Wff4 = P5 Bieåu thöùc caàn chöùng minh.
43. Meänh ñeà : Luaät phaân giaûi meänh ñeà - Ví duï (ii) Ñöa veà daïng clause:
Wff1, sinh ra hai clause: C1 = P1 C2 = P2
Wff2 = ?(P1 ^ P2) v ((P3 ^ ?(P5 ^ P6)) v (?P3 ^ (P5 ^ P6)) )
………………………………………
= (?P1 v ?P2 v P3 v ?P3 v ?P6) ^ (?P1 v ?P2 v P5 v ?P3 v ?P6)^(?P1 v ?P2 v P3 v P3 v P5) ^ (?P1 v ?P2 v P5 v P3 v P5) ^ (?P1 v ?P2 v P3 v P5 v ?P6)^ (?P1 v ?P2 v P5 v P5 v ?P6) ^(?P1 v ?P2 v P3 v P3 v P6) ^ (?P1 v ?P2 v P5 v P3 v P6)
Sinh ra caùc clause:
C3 = (?P1 v ?P2 v ?P6) C4 = (?P1 v ?P2 v P5 v ?P3 v ?P6)
C5 = (?P1 v ?P2 v P3 v P5) C6 = (?P1 v ?P2 v P3 v P5)
C7 = (?P1 v ?P2 v P3 v P5 v ?P6) C8 = (?P1 v ?P2 v P5 v ?P6)
C9 = (?P1 v ?P2 v P3 v P6) C10 =(?P1 v ?P2 v P5 v P3 v P6)
Wff3 sinh ra caùc clause: C11 = ?P3 C12 = ?P4 C13 = ?P5
(goàm caû böôùc laáy phuû ñònh keát luaän)
44. Meänh ñeà : Luaät phaân giaûi meänh ñeà - Ví duï TT Clauses Luaät aùp duïng
1 P1 P
2 P2 P
3 ?P1 v ?P2 v ?P6 P
4 ?P1 v ?P2 v P5 v ?P3 v ?P6 P
5 ?P1 v ?P2 v P3 v P5 P
6 ?P1 v ?P2 v P3 v P5 P
7 ?P1 v ?P2 v P3 v P5 v ?P6 P
8 ?P1 v ?P2 v P5 v ?P6 P
9 ?P1 v ?P2 v P3 v P6 P
10 ?P1 v ?P2 v P5 v P3 v P6 P
11. ?P3 P TT Clauses Luaät aùp duïng
12. ?P4 P
13 ?P5 P
14 ?P2 v ?P6 1,2, R
15 ?P6 2, 14, R
16 ?P1 v ?P2 v P5 v P3 10,15,R
17 ?P2 v P5 v P3 1,16,R
18 P5 v P3 2,17, R
19 P3 13, 18, R
20 ? 11, 19, R
ÑAÕ CHÖÙNG MINH
45. Logic Vò töø: Taïi sao? Pheùp toaùn meänh ñeà ? suy dieãn töï ñoäng nhöng chöa ñuû khi caàn phaûi truy caäp vaøo thaønh phaàn nhoû trong caâu, duøng bieán soá trong caâu.
Ví duï:
“Moïi sinh vieân tröôøng ÑHBK ñeàu coù baèng tuù taøi. Lan khoâng coù baèng tuù taøi. Do vaäy, Lan khoâng laø sinh vieân tröôøng ÑHBK”
“Lan” laø moät ñoái töôïng cuï theå cuûa “SV tröôøng ÑHBK” – khoâng theå ñaëc taû ñöôïc “quan heä” naøy trong meänh ñeà ñöôïc maø chæ coù theå laø:
“LAN laø sinh vieân tröôøng ÑHBK thì Lan coù baèng tuù taøi. Lan khoâng coù baèng tuù taøi. Do vaäy, Lan khoâng laø sinh vieân tröôøng ÑHBK”
Meänh ñeà phaûi giaûi quyeát baèng caùch lieät keâ taát caû caùc tröôøng hôïp
? Khoâng khaû thi
Do ñoù, chuùng ta caàn moät Logic khaùc hôn laø pheùp toaùn meänh ñeà:
PHEÙP TOAÙN VÒ TÖØ
46. Vò töø: Ñònh nghóa Vò töø laø moät phaùt bieåu noùi leân quan heä giöõa moät ñoái töôïng vôùi caùc thuoäc tính cuûa noù hay quan heä giöõa caùc ñoái töôïng vôùi nhau.
Vò töø ñöôïc bieåu dieãn bôûi moät teân ñöôïc goïi laø teân vò töø, theo sau noù laø moät danh saùch caùc thoâng soá.
Ví duï:
+ Phaùt bieåu: “Nam laø sinh vieân tröôøng ÑHBK”
+ Bieåu dieãn: sv_bk(“Nam”)
YÙ nghóa: ñoái töôïng teân laø “Nam” coù thuoäc tính laø “sinh vieân tröôøng ÑHBK”.
47. Vò töø: Bieåu dieãn vò töø – Cuù phaùp Chuùng ta coù bao nhieâu caùch bieåu dieãn ñuùng cuù phaùp cho phaùt bieåu noùi treân?
? Khoâng bieát bao nhieâu nhöng chaéc chaén nhieàu hôn 1 ?
Ví duï chuùng ta coù theå thay ñoåi caùc teân vò töø thaønh caùc teân khaùc nhau nhö : sinhvien_bk, sinhvien_bachkhoa, … Taát caû chuùng ñeàu ñuùng cuù phaùp.
Moät soá quy öôùc/ chuù yù khi bieãu dieãn:
Khoâng moâ taû nhöõng vò töø thöøa, coù theå suy ra töø moät taäp caùc vò töø khaùc. Hình thöùc thöøa cuõng töông töï dö (thöøa) döõ lieäu khi thieát keá CSDL.
Teân vò töø phaûi coù tính gôïi nhôù. Cuï theå, trong ví duï treân chuùng ta coù theå bieåu dieãn bôûi q(“Nam”), nhöng roõ raøng caùch naøy khoâng maáy thaân thieän vaø deã nhôù.
Baïn coù bieát q(“Nam”) coù nghóa gì ???
48. Vò töø: Bieåu dieãn vò töø – Cuù phaùp (tt) Daïng vò töø: teân_vò_töø(term1, term2, …, termn)
Teân vò töø: [a..z](a..z| A..Z| 0..9|_)*
Baét ñaàu bôûi moät kyù töï chöõ thöôøng.
Ví duï: ban_than, banThan,bAN_THAN,…
Term coù theå laø: Haèng,Bieán, Bieåu thöùc haøm.
Haèng: coù theå haèng chuoåi hay haèng soá.
Haèng chuoåi: [“](a..z| A..Z| 0..9|_)*[“] hay [a..z](a..z| A..Z| 0..9|_)*
Ví duï: “Nam”, “nam”, “chuoi”, nam, chuoi, qua,…
Haèng soá: (0..9)* Ví duï: 10, 32,..
Bieán: [A..Z](a..z| A..Z| 0..9|_)* Ví duï: Nguoi, NGUOI,..
Bieåu thöùc haøm coù daïng: teân_haøm(term1, term2, …, termk)
Trong ñoù Teân haøm = [a..z ](a..z| A..Z| 0..9|_)*
49. Vò töø : Bieåu thöùc vò töø Bieåu thöùc Vò töø: laø söï keát hôïp cuûa caùc vò töø bôûi caùc pheùp toaùn vò töø.
Caùc pheùp toaùn:
? Phuû ñònh - moät ngoâi.
?X Vôùi moïi - moät ngoâi
?X Toàn taïi - moät ngoâi
^ Hoäi - hai ngoâi.
v Tuyeån - hai ngoâi.
=> Suy ra - hai ngoâi.
= Töông ñöông - hai ngoâi.
50. Vò töø: Caùc bieåu thöùc vò töø ñuùng Bieåu thöùc vò töø ñuùng ñöôïc kyù hieäu wff.
Bieåu thöùc cô baûn: Coù theå laø moät vò töø , moät ñaïi dieän trò TRUE (trò laø T - ñuùng), moät ñaïi dieän trò FALSE (trò laø F - sai).
Moät bieåu thöùc ñuùng cuù phaùp ñöôïc ñònh nghóa nhö sau:
Wff = “Bieåu thöùc cô baûn” |? wff |wff ^ wff |wff v wff |wff=>wff |wff
= wff |(wff) |?X wff |?X wff
Vôùi
X : Laø moät bieán.
? : Löôïng töø vôùi moïi.
? : Löôïng töø toàn taïi.
51. Vò töø: Löôïng töø Giaû söû chuùng ta coù:
Nam laø hoïc sinh khaù. Lan laø hoïc sinh trung bình. Mai hoïc sinh khaù
Xeùt taäp D = [Nam, Lan, Mai]
Goïi p(X) cho bieát: “X laø hoïc sinh khaù” ta coù caùc vò töø
p(“Nam”) : trò laø T. p(“Lan”) : trò laø F. p(“Mai”) : trò laø T.
Löôïng töø toàn taïi:
Xeùt meänh ñeàà p(“Nam”) v p(“Lan”) v p(“Mai”) coù theå bieåu dieãn baèng vò töø ?X ? D: p(X)
“Toàn taïi X thuoäc taäp D, maø X laø hoïc sinh khaù”
Löôïng töø vôùi moïi:
Xeùt meänh ñeà p(“Nam”) ^ p(“Lan”) ^ p(“Mai”) coù theå bieåu dieãn baèng vò töø ?X ? D: p(X)
“Moïi X thuoäc taäp D ñeàu laø hoïc sinh khaù”
52. Vò töø: Bieåu dieãn theá giôùi thöïc Chuyeån caùc caâu sau sang bieåu thöùc vò töø:
“Moïi sinh vieân tröôøng ÑHBK ñeàu coù baèng tuù taøi.
Lan khoâng coù baèng tuù taøi.
Do vaäy, Lan khoâng laø sinh vieân tröôøng ÑHBK”
Vôùi sv_bk(X) cho bieát: “X laø sinh vieân tröôøng DHBK”
tu_tai(X) cho bieát: “X coù baèng tuù taøi”
Caùc caâu treân ñöôïc chuyeån qua vò töø laø:
?X(sv_bk(X) => tu_tai(X)).
?tu_tai(“Lan”).
Do vaäy, ?sv_bk(“Lan”).
53. Vò töø: Bieåu dieãn theá giôùi thöïc (tt) “Chæ vaøi sinh vieân maùy tính laäp trình toát.”
vôùi sv_mt(X) : “X laø sinh vieân maùy tính”
laptrinh_tot(X) : “X laäp trình toát”
Caâu treân chuyeån sang vò töø laø: ?X(sv_mt(X) ^ laptrinh_tot(X))
“Khoâng moät sinh vieân maùy tính naøo khoâng caàn cuø.”
vôùi: sv_mt(X) : “X laø sinh vieân maùy tính
can_cu(X) : “X caàn cuø”
Caâu treân chuyeån sang laø: ?X (sv_mt(X) => can_cu(X))
“Khoâng phaûi taát caû caùc sinh vieân maùy tính ñeàu thoâng minh”
vôùi thong_minh(X) : “X thoâng minh”
Caâu treân chuyeån sang laø: ?X(sv_mt(X) ^ ?thong_minh(X))
54. Vò töø: Ngöõ nghóa Vaán ñeà: Neáu chuùng ta coù bieåu thöùc sau:
?X?Y p(X,Y)
Chuùng ta hieåu nhö theá naøo ????!
-> Caàn söï dieãn dòch.
+ Caùch hieåu 1:
X, Y : laø con nguôøi.
p(X,Y) cho bieát : “X laø cha cuûa Y”
Do vaäy:
?X?Y p(X,Y) coù theå hieåu laø:
“Moïi ngöôøi X, toàn taïi ngöôøi Y ñeå X laø cha cuûa Y”
-> wff = ?X?Y p(X,Y) coù trò laø F (sai)
55. Vò töø: Ngöõ nghóa (tt) + Caùch hieåu 2:
X, Y : laø con nguôøi.
p(X,Y) cho bieát : “Y laø cha cuûa X”
Do vaäy:
?X?Y p(X,Y) coù theå hieåu laø:
“Moïi ngöôøi X, toàn taïi ngöôøi Y laø cha cuûa X”
-> wff = ?X?Y p(X,Y) coù trò laø T (ñuùng)
+ Caùch hieåu 3:
X, Y : laø soá nguyeân.
p(X,Y) cho bieát : “Y baèng bình phöông cuûa X”
-> wff = ?X?Y p(X,Y) coù trò laø T (ñuùng)
56. Vò töø: Ngöõ nghóa (tt) Dieãn dòch: goàm
- Taäp D, khoâng roãng, mieàn dieãn dòch.
- Caùc pheùp gaùn:
Vò töø : Quan heä treân D
Haøm : Haøm (aùnh xaï) treân D
Bieán töï do : Moät trò treân D, cuøng moät trò cho caùc xuaát hieän
Haèng : Moät trò treân D, cuøng moät trò cho caùc xuaát hieän
57. Vò töø: Ngöõ nghóa (tt) Ngöõ nghóa:
Coù dieãn dòch I treân mieàn D cuûa wff.
Wff khoâng coù löôïng töø:
Ngöõ nghóa = trò söï thaät (T|F) cuûa wff khi aùp duïng dieãn dòch
wff coù löôïng töø:
?XW laø T, neáu: W(X/d) laø T cho moät d thuoäc D
ngöôïc laïi: ?XW laø F
?XW laø T, neáu: W(X/d) laø T cho moïi d thuoäc D
ngöôïc laïi: ?XW laø F
58. Vò töø: Khaùi nieäm Coù I : dieãn dòch, E laø wff
Model:
I laø cho E coù trò T ---> I laø Model cuûa E
Ngöôïc laïi: ---> I laø CounterModel cuûa E
Valid:
E laø valid neáu moïi dieãn dòch I ñeàu laø Model.
Ngöôïc laïi laø : Invalid
Unsatisfiable:
E laø unsatisfiable : moïi I ñeâu laø CounterModel
Ngöôïc laïi :Satisfiable
59. Vò töø: Töông ñöông Töø töông ñöông cuûa meänh ñeà:
Neáu chuùng ta thay theá caùc meänh ñeà bôûi caùc bieåu thöùc vò töø, caùc meänh ñeà cuøng teân thì ñöôïc thay cuøng moät bieåu thöùc vò töø, thì ñöôïc moät töông ñöông cuûa vò töø.
Ví duï:
Meänh ñeà:
(P => Q) = (?P v Q)
Vò töø:
P bôûi: ?X?Yp(X,Y), Q bôøi: q(X)
töông ñöông:
(?X?Yp(X,Y) => q(X)) = (?(?X?Yp(X,Y)) v q(X))
60. Vò töø: Töông ñöông Löôïng töø:
?(?X W) = ?X(?W)
?(?X W) = ?X(?W)
Vôùi W laø moät wff
Töông ñöông coù raøng buoäc:
Sau ñaây: Y: bieán, W(X): wff coù chöùa bieán X, C laø wff khoâng chöùa X
Raøng buoäc: Y khoâng xuaát hieän trong W(X)
Töông ñöông:
?X W(X) = ?Y W(Y)
?X W(X) = ? Y W(Y)
61. Vò töø: Töông ñöông Töông ñöông:
Daïng tuyeån:
C v ?XA(X) = ?X(C v A(X))
C v ?XA(X) = ?X(C v A(X))
Daïng hoäi:
C ^ ?XA(X) = ?X(C ^ A(X))
C ^ ?XA(X) = ?X(C ^ A(X))
Daïng suy ra:
C => ?XA(X) = ?X(C => A(X))
C => ?XA(X) = ?X(C => A(X))
?XA(X) => C = ?X(A(X) => C)
?XA(X) => C = ?X(A(X) => C)
62. Vò töø: Daïng chuaån Prenex Daïng Chuaån Prenex:
Q1X1Q2X2…QnXnM
Qi : ?, ?.
M : wff khoâng coù löôïng töø.
Ví duï:
- sv_bk(x)
- ?X(sv_bk(X) ^ hoc_te(X))
- ?X?Ycha(X,Y)
Giaûi thuaät ñöa wff veà chuaån Prenex:
Ñoåi teân bieán --> wff khoâng coøn löôïng töø cuøng teân bieán, bieán löôïng töø khoâng truøng teân bieán töï do.
Ñöa löôïng töø sang traùi duøng töông ñöông.
63. Vò töø: Daïng chuaån Prenex Daïng chuaån Tuyeån Prenex:
Q1X1Q2X2…QnXn(C1 v … v Ck)
Ci : Thaønh phaàn hoäi cô baûn.
Daïng chuaån Hoäi Prenex:
Q1X1Q2X2…QnXn(D1 v … v Dk)
Di : Thaønh phaàn tuyeån cô baûn.
Giaûi thuaät:
Ñoåi teân bieán.
Loaïi boû => bôûi : A => B = ?A v B
Chuyeån ? sang phaûi duøng De Morgan vaø phuû ñònh keùp.
Chuyeån löôïng töø sang traùi duøng töông ñöông.
Phaân phoái v treân ^ (CNF), hay ^ treân v (DNF)
64. Chöông 3: TÌM KIEÁM TREÂN KHOÂNG GIAN TRAÏNG THAÙI (State Space Search) AI : Bieåu dieãn vaø tìm kieám
Khoâng gian tìm kieám
Graph Search
Caùc giaûi thuaät tìm kieám treân khoâng gian traïng thaùi
Depth first search (DFS) - Breath first search (BFS)
65. Taïi sao phaûi tìm kieám? Tìm kieám caùi gì?
Bieåu dieãn vaø tìm kieám laø kyõ thuaät phoå bieán giaûi caùc baøi toaùn trong lónh vöïc AI
Caùc vaán ñeà khoù khaên trong tìm kieám vôùi caùc baøi toaùn AI
Ñaëc taû vaán ñeà phöùc taïp
Khoâng gian tìm kieám lôùn
Ñaëc tính ñoái tröôïng tìm kieám thay ñoåi
Ñaùp öùng thôøi gian thöïc
Meta knowledge vaø keát quaû “toái öu”
Khoù khaên veà kyõ thuaät
66. Lyù thuyeát ñoà thò - Review Ñoà thò: laø moät caáu truùc bao goàm:
Taäp caùc nuùt N1, N2,… Nn,.. Khoâng haïn cheá
Taäp caùc cung noái caùc caëp nuùt, coù theå coù nhieàu cung treân moät caëp nuùt
67. Ñaëc tính ñoà thò Ñoà thò coù höôùng: laø ñoà thò vôùi caùc cung coù ñònh höôùng, nghóa laø caëp nuùt coù quan heä thöù töï tröôùc sau theo töøng cung. Cung (Ni,Nj) coù höôùng töø Ni ñeán Nj, Khi ñoù Ni laø nuùt cha vaø Nj laø nuùt con.
Nuùt laù: laø nuùt khoâng coù nuùt con.
Path: laø chuoåi coù thöù töï caùc nuùt maø 2 nuùt keá tieáp nhau toàn taïi moät cung.
Ñoà thò coù goác: Treân ñoà thò toàn taïi nuùt X sao cho taát caû caùc path ñeàu ñi qua nuùt ñoù. X laø goác - Root
Voøng : laø moät path ñi qua nuùt nhieàu hôn moät laàn
Caây: laø graph maø khoâng coù path voøng
Hai nuùt noái nhau :neáu coù moät path ñi qua 2 nuùt ñoù
68. Khoâng gian traïng thaùi Ñònh nghóa:Khoâng gian traïng thaùi laø moät heä thoáng goàm 4 thaønh phaàn [N,A,S,GD]. Trong ñoù:
N laø taäp nuùt cuûa Graph. Moãi nuùt laø moät traïng thaùi cuûa quaù trình giaûi quyeát vaán ñeà
A: Taäp caùc cung noái giöõa caùc nuùt N. Moãi cung laø moät böôùc trong giaûi quyeát vaán ñeà. Cung coù theå coù höôùng
S: Taäp caùc traïng thaùi baét ñaàu. S khaùc roãng.
GD: Taäp caùc traïng thaùi ñích. GD Khoâng roãng.
Solution path: Laø moät path ñi töø moät nuùt baét ñaàu Si ñeán moät nuùt keát thuùc GDj .
Muïc tieâu cuûa caùc giaûi thuaät tìm kieám laø tìm ra moät solution path vaø/hay solution path toát nhaát.
69. Bieåu dieãn khoâng gian traïng thaùi-Ví duï Troø chôi Tic Tac Toa
70. State Space & Database search State Space
Khoâng gian tìm kieám thöôøng laø moät graph
Muïc tieâu tìm kieám laø moät path
Phaûi löu tröõ toaøn boä khoâng gian trong quaù trình tìm kieám
Khoâng gian tìm kieám bieán ñoäng lieân tuïc trong quaù trình tìm kieám
Ñaëc tính cuûa traïng thaùi/nuùt laø phöùc taïp & bieán ñoäng Database
Khoâng gian tìm kieám laø moät list hay tree
Tìm kieám moät record/nuùt
Phaàn töû ñaõ duyeät qua laø khoâng coøn duøng tôùi
Khoâng gian tìm kieám laø coá ñònh trong quaù trình tìm kieám
Thuoäc tính cuûa moät record/nuùt laø coá ñònh
71. Chieán löôïc ñieàu khieån trong SSS Muïc tieâu cuûa baøi toaùn tìm kieán treân khoâng gian traïng thaùi: PATH vs STATE
Xuaát phaùt töø ñaâu vaø keát thuùc nhö theá naøo?
Chieán löôïc Data-Driven-Search: Quaù trình search seõ ñi töø traïng thaùi hieän thôøi aùp duïng caùc luaät ñeå ñi ñeán traïng thaùi keá tieáp vaø cöù theá cho ñeán khi ñaït ñöôïc moät goal.
Chieán löôïc Goal-Driven-Search: Quaù trình search seõ ñi töø traïng thaùi hieän taïi (goal taïm thôøi) tìm xem luaät naøo coù theå sinh ra traïng thaùi naøy. Caùc ñieàu kieän ñeå aùp duïng ñöôïc caùc luaät ñoù trôû thaønh subgoal. Quaù trình laëp laïi cho ñeán khi lui veà ñeán caùc söï kieän ban ñaàu.
Data-Driven Search hay Goal-Driven Search??
72. Data-Driven vs Goal-Driven Caû hai chieán löôïc cuøng laøm vieäc treân khoâng gian traïng thaùi nhöng thöù töï vaø soá caùc söï kieän duyeät qua khaùc nhau. Do cô cheá sinh ra caùc state khaùc nhau.
Quyeát ñònh choïn löïa chieán löôïc tuøy thuoäc vaøo:
Ñoä phöùc taïp cuûa caùc luaät
Ñoä phaân chia cuûa khoâng gian traïng thaùi
Söï hieän höõu cuûa döõ lieäu
Goal ñaõ coù hay chöa, nhieàu hay ít
Goal ñöôïc ñaëc taû nhö theá naøo: state cuï theå hay moâ taû mang tính ñaëc tính
Cô sôû thoâng tin ñeå choïn löïa chieán löôïc hôïp lyù laø moät META KNOWLEDGE
73. Data-Driven vs Goal-Driven – Ví duï Ba vaø Nam laø baø con. Ba hôn nam 250 tuoåi. Tìm moái quan heä giöõa Ba vaø Nam.
Trong baøi toaùn naøy:
Khoâng gian traïng thaùi laø caây phaû heä
Muïc tieâu tìm kieám laø path noái Ba vôùi Nam
Giaû söõ moãi theá heä caùch nhau 25 naêm, nhö vaäy Ba caùch nam 10 theá heä
Data-Driven-Search: Tìm töø Ba ñeán Nam.
neáu trung bình moãi theá heä coù X con thì soá traïng thaùi caàn xeùt laø X10
Goal-Driven search: Tìm töø Nam ñeán Ba
moãi ngöôøi chæ coù 1 cha vaø 1 meï. Soá traïng thai caàn xeùt laø 210.
Nhö vaäy Goal-Driven seõ toát hôn Data driven neáu soá con > 2
74. Graph Search Giaûi thuaät graph search phaûi coù khaû naêng tìm kieám ra taát caû caùc path coù theå coù ñeå tìm ñöôïc nghieäm : PATH töø traïng thaùi khôûi ñaàu ñeán goal.
Graph search thöïc hieän baèng caùch “laàn” theo caùc nhaùnh cuûa graph. Töø moät traïng thaùi, sinh ra caùc traïng thaùi con, choïn moät traïng thaùi con, xem ñoù laø traïng thaùi xeùt keá tieáp. Laëp laïi cho ñeán khi tìm thaáy moät traïng thaùi ñích.
“Laàn” theo caùc traïng thaùi ? Ñi vaøo ngoõ cuït ?
Khi gaëp nhaùnh khoâng ñi tieáp ñöôïc, giaûi thuaät phaûi coù khaû naêng quay lui laïi traïng thaùi tröôùc ñoù ñeå ñi sang nhaùnh khaùc: BACK TRACKING. Do ñoù giaûi thuaät coøn coù teân laø BACKTRACK search.
75. Giaûi thuaät chi tieát Procedure backtrack;
Begin
S:=[start]; NLS:=[start]; De:=[ ];
CS:=start;
While (NSL<>[ ]) do
Begin
if CS = Goal then return(SL);
if CS has no children (Except node in DE, Sl and NSL) then
begin
while ((SL<>[ ]) and CS=First element of SL)) do
begin add CS to DE
remove first element from SL;
remove first element from NSL; Cs:= first element of NSL;
end;
add CS to SL;
End;
Else begin
add children of CS (Except node in DE,SL and NSL) to NSL
CS:= first element of NSL;
add CS to SL;
end;
end;
End; {end while}
Return FAIL;
End;
76. Giaûi thuaät chi tieát (tt) Trong ñoù:
SL (State list) : chöùa danh saùch caùc traïng thaùi treân path hieän ñang xeùt. Neáu tìm ra goal thì SL chính laø nghieäm.
NSL (New State List): chöùa danh saùch caùc traïng thaùi ñang ñôïi xeùt.
DE (Dead End): chöùa caùc traïng thaùi maø con chaùu cuûa chuùng khoâng chöùa ñích.
CS (Current State): chöùa traïng thaùi ñang xeùt.
Höôùng phaùt trieån cuûa quaù trình search tuøy theo cô caáu toå chöùc cuûa NSL: FIFO, FILO hay Evaluated.
Giaûi thuaät coù theå bò loop voâ taän. Lyù do????
77. Giaûi thuaät chi tieát (tt) – Ví duï Xeùt graph sau:
78. Giaûi thuaät chi tieát (tt) – Ví duï Vôùi G laø goal ta coù keát quaû tìm kieám theo baûng sau:
79. Breath First Search Procedure Breath_frist_search;
Begin
open :=[start]; close:=[];
While (open <>[]) do
begin
remove X which is the leftmost of Open;
If (X=goal) the return (Success)
else begin
generate children of X; Put X to close;
eleminate children of X which is in Open or Close;
Put remain children on RIGHT end of open;
End;
End;
Return (FALL);
End;
80. Breath First Search – Ví duï Vôùi ñoà thò ñaõ coù trong ví duï graph search.Vôùi Breath first search ta coù quaù trình nhö sau:
81. Depth First Search Procedure depth_frist_search;
Begin
open :=[start]; close:=[];
While (open <>[]) do
begin
remove X which is the leftmost of Open;
If (X=goal) the return (Success)
else begin
generate children of X; Put X to close;
eleminate children of X which is in Open or Close;
Put remain children on LEFT end of open;
End;
End;
Return (FALL);
End;
82. Depth First Search – Ví duï Vôùi ñoà thò ñaõ coù trong ví duï graph search.Vôùi Depth First Search ta coù quaù trình nhö sau:
83. Breath First vs Depth First Breath First: open ñöôïc toå chöùc daïng FIFO
Depth First: open ñöôïc toå chöùc daïng LIFO
Hieäu quaû
Breath First luoân tìm ra nghieäm coù soá cung nhoû nhaát
Depth First “thöôøng” cho keát quaû nhanh hôn.
Keát quaû
Breath First search chaéc chaén tìm ra keát quaû neáu coù.
Depth First coù theå bò laëp voâ taän. Taïi sao??????
Buøng noå toå hôïp laø khoù khaên lôùn nhaát cho caùc giaûi thuaät naøy.
84. Depth first search coù giôùi haïn Depth first search coù khaû naêng laëp voâ taän do caùc traïng thaùi con sinh ra lieân tuïc. Ñoä saâu taêng voâ taän.
Khaéc phuïc baèng caùch giôùi haïn ñoä saâu cuûa giaûi thuaät.
Saâu bao nhieâu thì vöøa?
Chieán löôïc giôùi haïn:
Coá ñònh moät ñoä saâu MAX, nhö caùc danh thuû chôi côø tính tröôùc ñöôïc soá nöôùc nhaát ñònh
Theo caáu hình resource cuûa maùy tính
Meta knowledge trong vieäc ñònh giôùi haïn ñoä saâu.
Giôùi haïn ñoä saâu => co heïp khoâng gian traïng thaùi => coù theå maát nghieäm.
85. AND/OR Graph AND/OR graph laø moät ñoà thò vôùi caùc nuùt coù theå laø OR hay AND cuûa caùc nuùt con.
Hypergraph: Moät cung xaùc ñònh bôûi moät caëp 2 phaàn töû:
Phaàn töû ñaàu laø moät node thuoäc N.
Phaàn töû sau laø moät taäp con cuûa N.
Neáu phaànn töû sau coù k node thì ta noùi Hypergraph coù K-Connector
AND/OR Graph ñoøi hoûi löu tröõ nhieàu döõ lieäu hôn
Caùc node OR kieåm tra nhö Backtrack Search
Caùc node AND phaûi kieåm tra ñoàng thôøi
Phaûi löu tröõ taát caû caùc veát ñaõ ñi qua ñeå kieåm tra AND/OR
86. Chöông 4: HEURISTIC SEARCH Heuristic laø gì?
Tìm kieám theo heuristic
Caùc giaûi thuaät Best first search (BFS), Giaûi thuaät A*
Chieán löôïc Minimax, Alpha Beta
87. Heuristic Heuristic laø gì?
Heuristic laø nhöõng tri thöùc ñöôïc ruùt tæa töø nhöõng kinh nghieäm, “tröïc giaùc” cuûa con ngöôøi.
Heuristic coù theå laø nhöõng tri thöùc “ñuùng” hay “sai”.
Heuristic laø nhöõng meta knowledge vaø “thöôøng ñuùng”.
Heuristic duøng ñeå laøm gì?
Trong nhöõng baøi toaùn tìm kieám treân khoâng gian traïng thaùi, coù 2 tröôøng hôïp caàn ñeán heuristic:
Vaán ñeà coù theå khoâng coù nghieäm chính xaùc do caùc meänh ñeà khoâng phaùt bieåu chaët cheõ hay thieáu döõ lieäu ñeå khaúng ñònh keát quaû.
Vaán ñeà coù nghieäm chính xaùc nhöng phí toån tính toaùn ñeå tìm ra nghieäm laø quaù lôùn (heä quaû cuûa buøng noã toå hôïp)
Heuristic giuùp tìm kieám ñaït keát quaû vôùi chi phí thaáp hôn
88. Heuristic (tt) Heuristic duøng nhö theá naøo trong SSS?
Tìm kieám treân khoâng gian traïng thaùi theo chieàu naøo? Saâu hay roäng?
Tìm theo Heuristic : Heuristic ñònh höôùng quaù trình tìm kieám theo höôùng maø “noù” cho raèng khaû naêng ñaït tôùi nghieäm laø cao nhaát. Khoâng “saâu” cuõng khoâng “roäng”
Keát quaû cuûa tìm kieám vôùi Heuristic
Vieäc tìm kieám theo ñònh höôùng cuûa heuristic coù keát quaû toát hay xaáu tuøy theo heuristic “ñuùng” hay “sai”.
Heuristic coù khaû naêng boû xoùt nghieäm
Heuristic caøng toát caøng daãn ñeán keát quaû nhanh vaø toát.
Laøm sao tìm ñöôïc Heuristic toát???
89. Best First Search Procedure Best_First_Search;
Begin
open:=[start]; close:=[];
While (open<>[]) do
begin Laáy phaàn töû ñaàu tieân X khoûi Open.
if X laø goal then return path töø start ñeán X
else begin
sinh ra caùc nuùt con cuûa X;
for moãi nuùt con Y cuûa X do
case Y of
Y khoâng coù trong open hay close:
begin gaùn giaù trò heuristic cho Y;
ñöa Y vaøo open; end; Y ñaõ coù trong Open:
if ñeán ñöôïc Y baèng moät path ngaén hôn then gaùn path ngaén hôn naøy cho Y treân Open.
Y ñaõ coù treân close:
if ñeán ñöôïc Y baèng moät path ngaén hôn then begin xoùa Y khoûi danh saùch Close;
theâm Y vaøo danh saùch Open; end;
end; /*end case*/
Ñöa X vaøo close;
Xeáp thöù töï caùc traïng thaùi treân Open theo giaù trò Heuristic (taêng daàn)
end; / while/
return failure;
End;
90. Best First Search (tt) Best First search vs Depth First & Breath First
Best First search töông töï nhö Depth First & Breath First nhöng phaàn töû ñöôïc xeùt tieáp theo laø phaàn töû coù giaù trò heuristic toát nhaát.
Caàn coù moät haøm ñaùnh giaù caùc traïng thaùi ñeå xaùc ñònh giaù trò heuristic cho caùc traïng thaùi.
Khoâng gian traïng thaùi vaãn khoâng thay ñoåi veà “toaøn cuïc“ tuy nhieân thöôøng Heuristic search coù khoâng gian traïng thaùi laøm vieäc nhoû hôn Depth First vaø Breath First. Taïi sao??
Do söï ñònh höôùng caùc traïng thaùi keá tieáp theo höôùng coù khaû naêng tìm ra nghieäm nhanh hôn neân soá traïng thaùi xeùt dö thöøa seõ haïn cheá ? sinh ít traïng thaùi con hôn
Ñieàu naøy cuõng laø nguyeân nhaân laøøm cho Best First Search coù theå daãn ñeán keát quaû laø “nghieâäm phuï” thay vì “nghieäm toái öu”.
91. Haøm löôïng giaù Heuristic Haøm löôïng giaù Heuristic laø haøm öôùc löôïng phí toån ñeå ñi töø traïng thaùi hieän taïi ñeán traïng thaùi goal.
Cô sôû ñeå xaùc ñònh haøm löôïng giaù laø döïa vaøo tri thöùc/kinh nghieäm thu thaäp ñöôïc.
Haøm löôïng giaù cho keát quaû ñuùng (gaàn thöïc theá) hay sai (xa giaù trò thöïc) seõ daãn ñeán keát quaû tìm ñöôïc toát hay xaáu.
Khoâng coù chuaån möïc cho vieäc ñaùnh giaù moät haøm löôïng giaù Heuristic. Lyù do:
Khoâng coù caáu truùc chung cho haøm löôïng giaù
Tính ñuùng/sai thay ñoåi lieân tuïc theo töøng vaán ñeà cuï theå
Tính ñuùng/sai thay ñoåi theo töøng tình huoáng cuï theå trong moät vaán ñeà
Coù theå duøng nhieàu haøm löôïng giaù khaùc nhau theo tình huoáng ? caàn haøm löôïng giaù veà caùc haøm löôïng giaù.
92. Haøm löôïng giaù Heuristic – Ví duï Xeùt baøi toaùn 8 pussle vôùi goal laø:
93. Haøm löôïng giaù Heuristic – Caáu truùc Xeùt laïi hoaït ñoäng cuûa giaûi thuaät Best First Search:
Khi coù 2 nuùt cuøng coù giaù trò kyø voïng ñaït ñeán muïc tieâu baèng nhau thì nuùt coù path töø nuùt baét ñaàu ñeán nuùt ñoù ngaén hôn seõ ñöôïc choïn tröôùc nhö vaäy nuùt naøy coù giaù trò Heuristic toát hôn.
Hay noùi caùch khaùc haøm löôïng giaù Heuristic cho nuùt gaàn start hôn laø toát hôn neáu kyø voïng ñeán goal laø baèng nhau.
Vaäy choïn nuùt naøo neáu kyø voïng cuûa 2 nuùt khaùc nhau? Nuùt kyø voïng toát hôn nhöng xa start hay nuùt kyø voïng xaáu hôn nhöng gaàn root
Haøm löôïng giaù bao goàm caû 2 vaø coù caáu truùc:
F(n) := G(n) + H(n)
G(n): phí toån thöïc töø root ñeán n
H(n): phí toån öôùc luôïng heuristic töø n ñeán goal.
94. Ví duï – Best first search Xeùt ví duï laø baøi toaùn 8 puzzle vôùi:
95. Ví duï – Best first search (tt)
96. Ví duï – Best first search (tt)
97. Hoaït ñoäng theo giaûi thuaät Best First Search
98. Ñaùnh giaù giaûi thuaät Heuristic Admissibility – Tính chaáp nhaän
Moät giaûi thuaät Best first search vôùi haøm ñaùnh giaù
F(n) = G(n) + H(n) vôùi
N : Traïng thaùi baát kyø
G(n) : Phí toån ñi töø nuùt baét ñaàu ñeán nuùt n
H(n) : Phí toån öôùc löôïng heuristic ñi töø nuùt n ñeán goal
Ñöôïc goïi laø giaûi thuaät A
Moät giaûi thuaät tìm kieám ñöôïc xem laø admissible neáu ñoái vôùi moät ñoàà thò baát kyø noù luoân döøng ôû path nghieäm toát nhaát (neáu coù).
Giaûi thuaät A*: Laø giaûi thuaät A vôùi haøm heuristic H(n)luoân luoân ? giaù trò thöïc ñi töø n ñeán goal.
Giaûi thuaät A* laø admissible
99. Ñaùnh giaù giaûi thuaät Heuristic Monotonicity – Ñôn ñieäu
Moät haøm heuristic H(n) ñöôïc goïi laø monotone (ñôn ñieäu) neáu:
?ni, nj : nj laø nuùt con chaùu cuûa ni ta coùH(ni)-H(nj) ? phí toån thaät ñi töø ni ñeán nj
Ñaùnh giaù heuristic cuûa ñích laø 0 : H(goal) = 0.
Giaûi thuaät A coù haøm H(n) monotone laø giaûi thuaät A* vaø Admissible
Informedness
Xeùt 2 haøm heuristic H1(n) vaø H2(n) neáu ta coù H1(n)? H2(n) vôùi moïi traïng thaùi n thì H2(n) ñöôïc cho laø informed hôn H1(n).
100. Chieán löôïc minimax Giaûi thuaät tìm kieám Heuristic vôùi caùc haøm heuristic chæ thích hôïp cho caùc baøi toaùn khoâng coù tính ñoái khaùng. Nhö caùc troø chôi chæ coù moät ngöôøi chôi: Puzzle, tìm loái ra meâ cung, baøi toaùn n quaân haäu,…
Caùc troø chôi coù tính ñoái khaùng cao, thöôøng laø caùc troø chôi 2 ngöôøi chôi nhö: tic tac toa, caro, côø quoác teá,… giaûi thuaät treân khoâng coù taùc duïng vì: Ñoái phöông khoâng bao giôø ñi theo con ñöôøng cho ta coù theå ñi ñeán goal
Caàn phaûi coù moät giaûi thuaät khaùc phuø hôïp hôn.
Chieán löôïc MINIMAX
Chieán löôïc Minimax (ñöôïc theå hieän baèng giaûi thuaät minimax) döïa treân 2 giaû thieát sau:
Caû 2 ñoái thuû coù cuøng kieán thöùc nhö nhau veà khoâng gian traïng thaùi cuûa troø chôi
Caû 2 ñoái thuû coù cuøng möùc coá gaéng thaéng nhö nhau
101. Giaûi thuaät minimax Chieán löôïc Minimax
Hai ñoái thuû trong troø chôi coù teân laø MAX vaø MIN
Max: bieåu dieãn cho muïc ñích cuûa ñoái thuû naøy laø laøm lôùn toái ña lôïi theá cuûa mình
Min: bieåu dieãn cho muïc ñích cuûa ñoái thuû naøy laø laøm nhoû toái ña lôïi theá cuûa ñoái phöông.
Treân caây tìm kieám seõ phaân lôùp thaønh caùc lôùp Max vaø Min.
Vôùi moät node n baát kyø,
Neáu noù thuoäc lôùp Max thì gaùn cho noù giaù trò Max xuûa caùc node con
Neáu noù thuoäc lôùp Min thì gaùn cho noù giaù trò nhoû nhaát cuûa caùc node con.
102. Giaûi thuaät minimax – ví duï Baøi toaùn que dieâm
Moät taäp que dieâm ban ñaàu ñaët giöõa 2 ngöôøi chôi. Laàn löôït ñi xen keõ. Ngöôøi ñeán löôït ñi phaûi chia nhoùm que dieâm theo nguyeân taéc:
Choïn nhoùm baát kyø coù soá que >2
Chia thaønh 2 nhoùm coù soá que khaùc nhau
Goal: ngöøôi naøo ñeán löôït maø khoâng chia ñöôïc laø thua.
MINIMAX
Khoâng gian traïng thaùi cuûa troø chôi ñöôïc phaùt trieån toaøn boä, caùc node laù ñöôïc gaùn giaù trò 1 neáu laø MAX thaéng vaø 0 neáu laø MIN thaéng.
Vôùi moät node baát kyø neáu thuoäc lôùp MAX gaùn cho noù giaù trò lôùn nhaát cuûa caùc node con. Neáu thuoäc lôùp MIN gaùn cho noù giaù trò nhoû nhaát cuûa caùc node con.
103. Minimax – baøi toaùn que dieâm
104. Minimax vôùi ñoä saâu giôùi haïn Minimax nhö ñaõ xeùt buoäc phaûi coù toaøn boä khoâng gian traïng thaùi ñaõ ñöôïc trieån khai ñeå coù theå gaùn trò cho caùc nuùt laù vaø tính ngöôïc laïi ? Khoâng khaû thi vôùi caùc baøi toaùn lôùn vì khoâng gian traïng thaùi laø quaù lôùn.
? Giôùi haïn khoâng gian traïng thaùi laïi theo moät ñoä saâu naøo ñoù vaø giôùi haïn caùc node con theo moät qui taéc naøo ñoù.
Ñaây laø chieán löôïc thoâng thöôøng cuûa caùc ngöôøi chôi côø: khaû naêng tính tröôùc bao nhieâu nöôùc.
Khi ñoù ta chæ trieån khai caùc nuùt con ñeán ñoä saâu giôùi haïn.
Ñaùnh giaù cho caùc nuùt naøy nhö laø nuùt laù baèng moät haøm löôïng giaù Heuristic.
Aùp duïng chieán löôïc minimax cho vieäc ñaùnh giaù caùc nuùt caáp treân.
Kyõ thuaät naøy goïi laø nhìn tröôùc K böôùc vôùi K la øñoä saâu giôùi haïn.
105. Ví duï: Baøi toaùn Tic Tac Toa Haøm löôïng giaù heuristic E(n) = X(n) – O(n) vôùi
X(n) soá khaû naêng thaéng cuûa quaân X.
O(n) soá khaû naêng thaéng cuûa quaân O
106. Ví duï: Baøi toaùn Tic Tac Toa
107. Ñoä phöùc taïp cuûa giaûi thuaät SSS Ñoä phöùc taïp tính theo heä soá reõ nhaùnh.
Xeùt baøi toaùn coù heä soá reõ nhaùnh trung bình laø B, ñoä saâu trung bình cuûa solution path laø D . Vôùi T laø soá traïng thaùi ñaõ ñöôïc xeùt qua ñeå tìm ra lôùi giaûi thì ta coù
T= (B +B2 + B2 +……….+BD)/(B-1)
T seõ raát lôùn ñoái vôùi caùc vaán ñeà thöïc teá.
Phaûi duøng Heuristic ñeå giôùi haïn ñoä phöùc taïp cuûa giaûi thuaät baèng caùch giaûm soá traïng thaùi phaûi ñi qua.
Tuy nhieân haøm Heuristic toát thì laïi ñoøi hoûi yeâu caàu tính toaùn nhieàu ? Phí toån cho tính toaùn taêng cao.
108. Chöông 5: HEÄ LUAÄT SINHProduction system Tìm kieám ñeä qui
Heä luaät sinh: Ñònh nghóa vaø öùng duïng
Tìm kieám treân heä luaät sinh
109. Ñaëc tính döõ lieäu vaø ñieàu khieån cuûa SSS Caùc ñaëc tính cuûa giaûi thuaät SSS:
Lôøi giaûi laø moät PATH töø ñieåm START ñeán ñieåm GOAL
Tìm kieám laø söï kieåm tra coù heä thoáng caùc ñöôøng daãn ñeán GOAL
Backtracking cho pheùp giaûi thuaät “phuïc hoài” khi ñi vaøo moät nhaùnh khoâng coù ñaùp aùn.
Caùc danh saùch seõ giöõ caùc traïng thaùi ñang xem xeùt:
Danh saùch Open: cho pheùp heä thoáng backtrack veà caùc traïng thaùi chöa ñöôïc xeùt.
Danh saùch Close: cho pheùp heä thoáng kieåm tra söï quay voøng traùnh laëp voâ taän
Duøng STACK cho DFS, QUEUE cho BFS vaø duøng PRIORITY QUEUE cho BFS.
110. Tìm kieám ñeä qui – Taïi sao??? Tìm kieám ñeä qui laø giaûi thuaät tìm kieám treân SSS vôùi caùc ñaëc tính:
Ngaén goïn xuùc tích hôn
Tieáp caän cuûa giaûi thuaät töï nhieân hôn
Hôïp nhaát vôùi phöông thöùc hieän thöïc cuûa Logic vò töø
Caùc giaûi thuaät tìm kieám ñeä qui chính:
Tìm kieám ñeä qui – Recursive Search (RS)
Tìm kieám theo maãu – Pattern Directed Search (PDS)
Caùc giaûi thuaät tìm kieám ñeä qui ñöôïc söû duïng roäng raûi trong caùc shell cuûa caùc Heä chuyeân gia (Expert System).
Pattern Directed Search laø neàn taûn cuûa PROLOG
111. Theá naøo laø ñeä qui? Ñeä qui laø söï ñònh nghóa moät ñoái töôïng baèng caùch söû duïng chính ñoái töôïng ñoù – Toaùn hoïc
Ñeä qui ñöôïc duøng ñeå ñònh nghóa vaø phaân tích caùc caáu truùc döõ lieäu cuõng nhö caùc thuû tuïc xöû lyù trong ngaønh maùy tính.
Moät thuû tuïc ñeä qui bao goàm:
Thaønh phaàn ñeä qui, trong ñoù thuû tuïc goïi chính noù ñeå laëp laïi chuoåi caùc thao taùc.
Thaønh phaàn döøng duøng ñeå döøng quaù trình ñeä qui voâ taän. (laëp voâ taän)
Hai thaønh phaàn naøy toàn taïi ñoàng thôøi trong taát caû caùc ñònh nghóa ñeä qui cuõng nhö giaûi thuaät ñeä qui.
Ñeä qui laø moät caáu truùc ñieàu khieån döõ lieäu töï nhieân cho nhöõng caáu truùc khoâng xaùc ñònh soá phaàn töû coá ñònh: list, tree, vaø ñoà thò.
112. Thuû tuïc ñeä qui – ví duï Function Member(item, list);
begin
if List roãng then return (Fail)
else
if Item = phaàn töû ñaàu cuûa list then return (succes)
else
begin
Tail:= List \ phaàn töû ñaàu;
member (item, Tail);
end
end; Ñeä qui coù ñaày ñuû tính naêng cuûa caùc caáu truùc ñieàu khieån truyeàn thoáng nhö Loop vaø reõ nhaùnh?moïi chöông trình vieát ñöôïc baèng caáu truùc truyeàn thoáng ñeàu coù theå vieát ñeä qui.
Ñeä qui thích hôïp bieåu dieãn caùc caáu truùc toaùn hoïc ? thuaän tieän trong vieäc kieåm tra tính ñuùng ñaén cuûa giaûi thuaät ñeä qui.
Coâng thöùc ñeä qui cuõng thöôøng ñöôïc duøng trong vieäc sinh vaø kieåm tra chöông trình töï ñoäng.
Ñeä qui laø coâng cuï töï nhieân vaø maïnh meû cho hieän thöïc caùc chieán löôïc giaûi quyeát vaán ñeàà cuûa AI.
113. Giaûi thuaät DFS ñeä qui - DFS Function Depth_First_Search;
Begin
if Open roãng then return (fail);
Current_state := phaàn töû ñaàu tieân cuûa open;
If (current_state laø muïc tieâu) then return (Success)
else begin
open:=phaàn ñuoâi cuûa open;
Closed := Closed + current_state;
for moãi phaàn töû con Y cuûa current_state do
if not (Y in close) and not (Y in open) then theâm Y vaøo ñaàu cuûa Open;
End;
depth_first_search;
End;
114. Pattern-Directed Search (PDS) Caùc giaûi thuaät Search ñaõ tìm hieåu vaø Recursive Seach khoâng trình baøy caùch bieåu dieån moät traïng thaùi trong khoâng gian traïng thaùi cuõng nhö caùch sinh caùc traïng thaùi môùi.
Pattern-Directed Search laø moät giaûi thuaät search ñeä quy duøng Logic Vò töø ñeå hieän thöïc vieäc sinh caùc traïng thaùi môùi.
Paterm-Directed Search xuaát phaùt töø goal vaø caùc modus ponen daïng q(x)->p(x) ñeå chuyeån traïng thaùi. Caùc modus ponen naøy goïi laø caùc luaät sinh.
Giaûi thuaät: Xuaát phaùt töø goal P, aùp duïng moät giaûi thuaät ñeå tìm caùc rule vôùi P ôû veá phaûi , sau ñoù xem veá traùi Q laø subgoal. Ñeä quy vôùi Q cho ñeán khi Qx laø moät söï kieän trong kho tri thöùc.
Söï kieän (FACT) trong kho tri thöùc?????
115. Giaûi thuaät PDS Function Pattern_search(current_goal);
Begin
If current_goal coù trong closed then retuen fail
else theâm current_goal vaøo trong closed;
while coøn trong database caùc rule hay fact chöa xeùt
begin case
current_goal truøng vôùi fact:
return(success);
current_goal laø moät pheùp hoäi:
begin
for moãi thaønh phaàn hoäi Pi do
pattern_search(Pi); If taát caû caùc hoäi ñeàu success
then return success else return fail.
end;
Current_goal laø veá phaûi moät rule:
begin
aùp duïng caùc thaønh phaàn vaøo veá traùi Q.
if pattern_search(Q) then return success else return fail;
end;
end; /* case
Return fail;
End;
116. Giaûi thuaät PDS PDS duøng caùc rule vaø thaønh phaàn hoäi ñeå sinh caùc traïng thaùi con.
Taùch baïch quaù trình ñieàu khieån cuûa giaûi thuaät vaø döõ lieäu cuûa giaûi thuaät
? Cuøng giaûi thuaät chæ caàn thay ñoåi database : Fact & Rule ta seõ aùp duïng cho caùc baøi toaùn khaùc nhau.
?Xaây döïng caùc shell vaø coù theå vaän haønh cho caùc heä thoáng khaùc nhau baèng caùch thay ñoåi Database.
Ñeå ñôn giaûn hoaù giaûi thuaät chöa giaûi quyeát ôû möùc ñoä coù caùc bieán trong caùc rule. Ví duï P(x)^Q(x) chæ thoûa khi P vaø Q cuøng thoûa vôùi cuøng giaù trò X.
Caùc pheùp ?, v,.. cuõng chöa giaûi quyeát trong giaûi thuaät naøy.
117. Ví duï: Baøi toaùn maõ ñi tuaàn Ñaëc taû baøi toaùn: tìm ñöôøng ñi cho con maõ qua taát caû caùc oâ treân baøn côø. Ví duï vôùi baøn côø 3x3.
118. Giaûi thuaät PDS ñaày ñuû Function Pattern_search(current_goal);
Begin
If current_goal coù trong Closed then return fail else theâm current_goal vaøo Closed;
while coøn caùc rule hay fact chöa xeùt
begin
case
current_goal truøng vôùi fact: return(success);
current_goal laø negated(?p):
begin
if pattern_search(p) then return fail
else return{}
end;
current_goal laø moät pheùp hoäi:
begin
for moãi thaønh phaàn hoäi Pi do
if not (pattern_search(Pi)) the return fail else thay theá taát caû caùc bieán cho caùc thaønh phaàn hoäi khaùc. If taát caû caùc hoäi ñeàu success then return caùc thaønh phaàn hoäi else return fail.
end;
current_goal laø pheùp tuyeån:
begin
repeat cho moïi thaønh phaàn tuyeån Vi;
until (pattern_search(Vi) or (heát thaønh phaàn hoäi)
if pattern_search (Vi) then return caùc thay theá else return fail;
end;
Current_goal laø veá phaûi moät rule:
begin
aùp duïng caùc thaønh phaàn vaøo veá traùi Q.
if pattern_search(Q) then return keát hôïp cuûa Current_goal vaø caùc thay theá cuûa Q else return fail;
end; end; /* case*/
return fail; End;
119. Heä Luaät Sinh – Production System Khaùi nieäm: Heä luaät sinh laø moät moâ hình tính toaùn quan troïng trong caùc baøi toaùn tìm kieám cuõng nhö moâ phoûng caùch giaûi quyeát vaán ñeà cuûa con ngöôøi trong lónh vöïc öùng duïng AI.
Ñònh nghóa: Heä luaät sinh laø moät moâ hình tính toaùn cung caáp cô cheá ñieàu khieån Pattern_directed trong quaù trình giaûi quyeát vaán ñeà (Proplem solving process).
Caáu truùc heä luaät sinh bao goàm 3 thaønh phaàn:
Production rules ( Taäp luaät saûn sinh)
Working memory (Vuøng nhôù laøm vieäc)
Recognize-action control (Boä ñieàu khieån nhaän daïng vaø haønh ñoäng)
120. Ñònh nghóa (tt) – Production Rule Production rules: laø moät taäp caùc luaät saûn sinh ñöôïc ñaëc taû daïng:
Condition – Action (ñieàu kieän – haønh ñoäng)
Moät luaät laø moät maét xích cuûa kho tri thöùc giaûi quyeát vaán ñeà. Kho tri thöùc laø moät database cuûa caùc production rules.
Thaønh phaàn Condition: laø moät maãu (pattern) duøng xaùc ñònh ñieàu kieän aùp duïng cuûa rule cho moät vaán ñeà töông öùng.
Thaønh phaàn action: moâ taû böôùc giaûi quyeát vaán ñeà töông öùng seõ ñöôïc thöïc hieän. Ñaây laø phaàn seõ taùc ñoäng leân hieän traïng cuûa khoâng gian tìm kieám.
121. Ñònh nghóa (tt) – Working memory Working memory chöùa nhöõng ñaëc taû traïng thaùi hieän taïi cuûa quaù trình suy luaän. Chuùng ñöôïc löu tröõ nhö laø taäp caùc maãu.
Nhöõng ñaëc taû naøy laø caùc maãu ñeå so truøng vôùi caùc condition cuûa caùc production rules.
Khi moät production rule ñöôïc so truøng phaàn condition thì phaàn action cuûa noù coù theå ñöôïc aùp duïng, vaø phaàn action naøy ñöôïc xaây döïng ñaëc thuø ñeåõ taùc ñoäng tröïc tieáp leân working memory.
Working memory ñöôïc khôûi taïo baèng traïng thaùi baét ñaàu cuûa vaán ñeà caàn giaûi quyeát.
Working memory dieãn taû hieän traïng cuûa vaán ñeà caàn suy luaän
122. Ñònh nghóa (tt) – Recognize-action Ñaây laø caáu truùc ñieàu khieån duøng trong production system. Quy trình hoaït ñoäng cuûa Recognize -Action
123. Caùc vaán ñeà khaùc Choïn löïa Conflict ñeå thöïc hieän
Coù theå choïn baèng caùch ñôn giaûn hay aùp duïng caùc chieán löôïc löïa choïn heurictic ? ÖÙng duïng meta knowledge.
Neáu goïi chieán löôïc heuristic choïn conflict laø meta knowledge thì knowledge “thöôøng” ôû ñaâu trong heä thoáng?
Caùc heä luaät sinh ñôn thuaàn khoâng cung caáp cô cheá ñeå quay lui khi vieäc aùp duïng caùc action laøm cho working memory thay ñoåi daãn ñeán luùc khoâng coøn production rule naøo coù theå aùp duïng ñöôïc? Heä thoáng seõ döøng.
Caàn cung caáp cô cheá backtracking (Thöôøng duøng UNDO). Tuy nhieân caàn chuù yù ñeå traùnh laëp voøng.
124. Ví duï: baøi toaùn 8 Puzzle Working Memory
125. Ñieàu khieån tìm kieám trong heä luaät sinh Chieán löôïc Data-Driven / Goal-Driven:
Data-Driven: baét ñaàu vôùi problem trong working memory, matching caùc condition trong production rule ? conflict ? aùp duïng caùc action ? thay ñoåi working memory. Laëp laïi cho ñeán khi ñaït ñöôïc goal state.
Goal-Driven: Baét ñaàu vôùi moâ taû goal trong working memory, matching vôùi caùc keát quaû cuûa Action ? sinh taäp caùc condition? ñöa caùc condition vaøo trong working memory. Laëp laïi cho ñeán khi working memory chöùa FACT.
Ñieàu khieån qua caáu truùc rule: Duøng caùc bieán ñoåi töông ñöông cuûa caùc bieåu thöùc trong rule ñeå ñieàu khieån quaù trình tìm kieám.
Ñieàu khieån baèng söï phaân tích caùc Conflict: Caùc conflict coù theå ñöôïc choïn löïa thoâng qua caùc Heuristic. Aùp duïng caùc meta knowledge trong vieäc choïn conflict. Ví duï:
Refraction: Khi moät rule ñaõ ñöôïc aùp duïng, noù seõ khoâng ñöôïc duøng nöõa cho ñeán khi thaùnh phaàn truøng laëp vôùi rule cuõ trong working memory ñöôïc thay ñoãi.
Recency: Choïn rule coù phaàn condition match vôùi phaàn môùi theâm vaøo working memory. Theo ñuoãi moät höôùng trieån khai.
Specificity: Rule naøo caøng ñöôïc ñaëc taû chi tieát caøng ñöôïc öu tieân cao.
126. Caùc öu ñieåm cuûa Heä luaät sinh Heä luaät sinh laø khung laøm vieäc toång quaùt ñeå thöïc thi caùc giaûi thuaät tìm kieám. Vôùi ñaëc tính ñôn giaûn, deå söûa ñoåi, vaø linh ñoäng, heä luaät sinh ñöôïc duøng nhö moät coâng cuï quan troïng ñeå xaây döïng caùc heä chuyeân gia vaø caùc öùng duïng AI khaùc
Caùc öu ñieåm cuûa Heä luaät sinh:
Taùch baïch giöõa Tri thöùc & Ñieàu khieån:
Ñieàu khieån: naèm trong chu trình Recognize-Action
Tri thöùc: ñöôïc chöùa ñöïng trong baûn thaân caùc luaät sinh.
Cung caáp khaû naêng caäp nhaät tri thöùc maø khoâng caàn ñieàu chænh chöông trình. Thay ñoåi maõ chöông trình maø khoâng aûnh höôûng ñeán taäp luaät sinh.
Deã daøng aùp duïng trong tìm kieám treân khoâng gian traïng thaùi. Caùc state cuûa working memory laø caùc node. Caùc production rule laø caùc chuyeån ñoåi giöõa caùc traïng thaùi (cô cheá sinh caùc traïng thaùi môùi)
Tính ñoäc laäp cuûa caùc luaät sinh.
Khaû naêng aùp duïng heuristic cho vieäc ñieàu khieån quaù trình hoaït ñoäng.
Theo doõi vaø giaûi thích quaù trình hoaït ñoäng
Ñoäc laäp vôùi ngoân ngöõ & coù theå duøng nhö kyõ thuaät moâ phoûng giaûi phaùp cuûa ngöôøi.
127. Chöông 6: HEÄ CHUYEÂN GIA (ES) Giôùi thieäu veà heä chuyeân gia
Moâ hình heä chuyeân gia: döï treân luaät, döïa treân frame
Phaùt trieån moät heä chuyeân gia
128. Noäi dung. Giôùi thieäu veà heä chuyeân gia.
Ñònh nghóa, khaû naêng öùng duïng.
Caáu truùc, caùc ñaëc tröng cô baûn cuûa ES.
Bieåu dieãn tri thöùc.
Caùc kyõ thuaät suy luaän.
Khaûo saùt moät vaøi heä chuyeân gia ñaõ coù.
XCON: ES trôï giuùp caáu hình heä thoáng maùy tính cuûa DEC
MYCIN: ES chuaån ñoaùn beänh nhieãm truøng maùu.
Heä chuyeân gia döïa treân luaät.
Kieán truùc, thieát keá.
Öu - nhöôïc ñieåm.
Heä chuyeân gia döïa vaøo Frame.
Kieán truùc, thieát keá.
Öu - nhöôïc ñieåm.
129. Giôùi thieäu veà heä chuyeân gia. Ñònh nghóa:
Heä chuyeân gia laø moät chöông trình ñöôïc thieát keá ñeå theo moâ hình coù khaû naêng giaûi quyeát vaán ñeà cuûa chuyeân gia con ngöôøi.
Sô ñoà khoái cô baûn:
130. Giôùi thieäu veà heä chuyeân gia. Cô sôû tri thöùc:
? Duøng ñeå chöùa tri thöùc trong moät lónh vöïc naøo ñoù, tri thöùc naøy do chuyeân gia con ngöôøi chuyeån giao.
? Noù bao goàm: caùc khaùi nieäm cô baûn, caùc söï kieän, caùc luaät vaø quan heä giöõa chuùng.
Ví duï:
- Tri thöùc veà beänh nhieãm truøng maùu do caùc baùc só chuyeân khoa naøy chuyeån giao.
- Tri thöùc veà chieán löôïc ñaàu tö do caùc nhaø coá vaán ñaàu tö chuyeån giao.
- Tri thöùc veà söï dieãn dòch döõ lieäu khaûo saùt ñòa vaät lyù do caùc kyõ sö ñòa chaát chuyeån giao.
- …?
131. Giôùi thieäu veà heä chuyeân gia. Ñoäng cô suy luaän:
Laø boä xöû lyù cho tri thöùc, ñöôïc moâ hình sao cho gioáng vôùi vieäc suy luaän cuûa chuyeân gia con ngöôøi. Boä xöû lyù naøy laøm vieäc döïa treân thoâng tin maø ngöôøi duøng moâ taû veà vaán ñeà, keát hôïp vôùi CSTT, cho ra keát luaän hay ñeà nghò.
Taïo sao phaûi xaây döïng ES ?
Chuyeân gia con ngöôøi laø taøi nguyeân quyù giaù cho nhieàu toå chöùc. Hoï coù theå giaûi quyeát nhöõng vaán ñeà khoù, hieäu quaû,…. Vaäy coù giaù trò khoâng khi chuùng ta xaây döïng moät chöông trình coù khaû naêng nhö chuyeân gia con ngöôøi ?Moät soá maët naøo ñoù coøn coù theå hôn haún. Xem baûng so saùnh sau:
132. Giôùi thieäu veà heä chuyeân gia. Baûng so saùnh:
Tieâu chí CG con ngöôøi ES.
1. Saüng duøng TG. haønh chính Moïi luùc.
2. Vò trí Cuïc boä Moïi nôi.
3. An toaøn khoâng theå thay theá Coù theå thay theá.
4. Coù theå cheát Coù Khoâng.
5. Hieäu suaát Thay ñoåi Haèng soá.
6. Toác ñoä Thay ñoåi Haèng soá (thöôøng nhanh hôn)
7. Chi phí Cao Coù theå coá gaéng.
133. Giôùi thieäu veà heä chuyeân gia. ? Vaøi lyù do ñeå phaùt trieån ES thay cho chuyeân gia con ngöôøi:
? Taïo cho tính chuyeân gia saün duøng ôû moïi nôi, moïi luùc.
? Töï ñoäng hoaù caùc coâng vieäc ñoøi hoûi chuyeân gia.
? Caùc chuyeân gia ñang nghæ höu hay chuyeån ñeán nôi khaùc – Caàn thay theá.
? Thueâ chuyeân gia vôùi chi phí quaù lôùn.
? Tính chuyeân gia caàn thieát trong caùc moâi tröôøng laøm vieäc khoâng thaân thieän, ôû ñoù hoûi moät ES seõ nhanh hôn moät chuyeân gia con ngöôøi.
? Phaùt trieån ES ñeå trôï giuùp cho chuyeân gia con ngöôøi.
134. Giôùi thieäu veà heä chuyeân gia. Caùc kieåu vaán ñeà thöôøng ñöôïc giaûi quyeát bôûi ES:
? Ñieàu khieån:
? Thieát keá:
? Chuaån ñoaùn:
? Daïy hoïc:
? Dieãn dòch:
? Giaùm saùt:
? Hoaïch ñònh:
? Döï ñoaùn:
? Löïa choïn:
? Moâ phoûng:
135. Caáu truùc cuûa ES. Caáu truùc cuûa ES:
ES moâ phoûng khaû naêng giaûi quyeát vaán ñeà cuûa chuyeân gia con ngöôøi. Do vaäy, chuùng ta caàn xem xeùt caùch thöùc giaûi quyeát cuûa chuyeân gia con ngöôøi, ñeå töø ñoù moâ phoûng.
136. Caáu truùc cuûa ES. ? Caùch giaûi quyeát vaán ñeà ôû ES:
137. Caáu truùc cuûa ES. CSTT:
Laø moät boä phaän cuûa ES nhaèm chöùa tri thöùc cuûa lónh vöïc.
? ES chöùa tri thöùc cuûa chuyeân gia con ngöôøi trong moät boä phaän ñöôïc goïi laø CSTT. Ñeå coù tri thöùc naøy, ngöôøi kyõ sö tri thöùc phaûi thu thaäp tri thöùc töø chuyeân gia con ngöôøi roài maõ hoaù vaøo CSTT – caùch thöùc maõ hoaù seõ ñöôïc ñeà caäp trong phaàn kyõ thuaät bieåu dieãn tri thöùc.
? Moät trong caùc caùch tieâu bieåu ñeå bieåu dieãn laø duøng luaät, nhö sau:
RULE 1:
IF “Xe car khoâng theå khôûi ñoäng ñöôïc”
THEN “Vaán ñeà trong heä thoáng ñieän”
RULE 2:
IF “Vaán ñeà trong heä thoáng ñieän”
AND “Ñieän theá Ac-quy nhoû hôn 10Volt”
THEN “Loåi taïi boä Ac-quy”
138. Caáu truùc cuûa ES. Boä nhôù laøm vieäc:
Laø boä phaän cuûa ES duøng ñeå chöùa caùc söï kieän cuûa vaán ñeà. Caùc söï kieän naøy coù theå do ngöôøi duøng nhaäp vaøo luùc ñaàu hay do ES sinh ra trong quaù trình laøm vieäc.
- Vôùi ES duøng cho nhieàu ngöôøi cuøng thì boä nhôù laøm vieäc thöôøng phaân nhoùm theo phieân laøm vieäc (session) cuûa ngöôøi duøng. Ñoù laø tröôøng hôïp moät ES chung cho nhieàu ngöôøi duøng töø xa.
- Nhieàu ES cuõng taän duïng caùc thoâng tin ñöôïc chöùa trong caùc nguoàn ngoaøi nhö: CSDL, baûng tính, sensor,…ES seõ taûi thoâng tin naøy vaøo boä nhôù laøm vieäc ñaàu moãi session hay khi caàn thieát.
139. Caáu truùc cuûa ES. Ñoäng cô suy luaän:
Laø boä xöû lyù trong heä chuyeân gia, laø nhieäm vuï so truøng caùc söï kieän ñöôïc chöùa trong boä nhôù laøm vieäc vôùi tri thöùc ñöôïc chöùa trong CSTT nhaèm daãn ra keát luaän cho vaán ñeà.
? Tieâu bieåu, neáu CSTT coù chöùa luaät, ES seõ tìm ra luaät maø caùc tieân ñeà cuûa luaät so truøng vôùi caùc söï kieän ñöôïc chöùa trong boä nhôù laøm vieäc, luùc ñoù ES seõ theâm caùc keát luaän cuûa luaät ñoù vaøo boä nhôù laøm vieäc, roài tieáp tuïc tìm ra söï so truøng khaùc – gioáng nhö nguyeân lyù hoaït ñoäng cuûa heä luaät sinh.
? Ví duï: Giaû söû CSTT chæ vôùi hai luaät neâu treân
Böôùc 1:
ES: Coù phaûi xe car khoâng khôûi ñoäng ñöôïc ?
Ngöôøi duøng: Ñuùng.
140. Caáu truùc cuûa ES. Chuù thích: Ngöôøi duøng traû lôøi “Ñuùng”, neân ES theâm vaøo boä nhôù laøm vieäc söï kieän ñeå moâ taû:
“Xe car khoâng theå khôûi ñoäng ñöôïc”
Ñoäng cô suy dieãn cuûa ES laøm nhieäm vuï so truøng, nhaän thaáy RULE 1 coù theå so truøng ñöôïc, neân noù theâm vaøo boä nhôù laøm vieäc phaàn keát luaän cuûa RULE 1, ñoù laø:
“Vaán ñeà trong heä thoáng ñieän”
Böôùc 2:
ES: Coù phaûi ñieän Ac-quy döôùi 10 Volt?
Ngöôøi duøng: Ñuùng.
Chuù thích: Ngöôøi duøng traû lôøi “Ñuùng”, neân ES theâm vaøo boä nhôù laøm vieäc söï kieän ñeå moâ taû:
“Ñieän theá Ac-quy nhoû hôn 10Volt”
Ñoäng cô suy dieãn cuûa ES laøm nhieäm vuï so truøng, nhaän thaáy RULE 2 coù theå so truøng ñöôïc, neân noù theâm vaøo boä nhôù laøm vieäc phaàn keát luaän cuûa RULE 2, ñoù laø:
“Loåi taïi boä Ac-quy” – phieân laøm vieäc cuõng keát thuùc vì CSTT chæ goàm hai luaät treân.
141. Caáu truùc cuûa ES. Tieän ích giaûi thích.
Moät trong caùc ñieåm noåi baät cuûa ES laø khaû naêng giaûi thích veà suy luaän cuûa noù. ES coøn coù moät khoái cô baûn nöõa trong caáu truùc cuûa noù ñoù laø: khoái tieän ích giaûi thích. Vôùi khoái naøy ES coù theå cung caáp cho ngöôøi duøng caùc khaû naêng giaûi thích:
- Taïi sao ES laïi hoûi caâu hoûi naøo ñoù. (WHY)
- Baèng caùch naøo ES coù theå suy ra keát luaän naøo ñoù. (HOW)
Khoái tieän ích giaûi thích thuaän tieän cho caû ngöôøi phaùt trieån ES vaø ngöôøi duøng. Ngöôøi phaùt trieån coù theå nhôø ñoù khaùm phaù caùc loãi trong tri thöùc cuûa ES. Ngöôøi thì coù theå yeân taâm hôn khi nhaän moät keát luaän naøo ñoù, khoâng caàn thieát phaûi quan taâm vôùi caáu truùc tri thöùc cuûa ES.
? Giaûi thích baèng caùch naøo (HOW)
Ngoaøi chöùc naêng cung caáp cho ngöôøi duøng keát quaû suy luaän cuoái cuøng, ES caøng coù theå cung caáp noù ñaït ñeán keát luaän baèng caùch naøo.
142. Caáu truùc cuûa ES. Khaû naêng giaûi thích baèng caùch naøo raát quan troïng vôùi ES, noù laøm cho ES khaùc vôùi caùc chöông trình truyeàn thoáng. Caùc chöông trình truyeàn thoáng laøm vieäc treân caùc baøi toaùn ñöôïc ñònh nghóa toát, keát quaû cuûa chöông trình ñaõ ñöôïc kieåm nghieäm tröôùc khi chuyeån giao. ES laøm vieäc treân caùc baøi toaùn thieáu nhieàu thoâng tin, thaäm chí tri thöùc coøn coù theå caäp nhaät khi ES ñaõ ñöôïc trieån khai – chính vì vaäy maø keát luaän cuûa noù phaûi ñöôïc giaûi thích baèng caùch naøo ñeå cho keát quaû cuoái cuøng coù giaù trò hôn.
Ví duï: trong phieân laøm vieäc cuûa ES noùi treân.
ES: “Loåi taïi boä Ac-quy”.
Ngöôøi duøng: HOW
ES: “Bôûi vì, khi xe cuûa baïn khoâng khôøi ñoäng ñöôïc, toâi cho raèng ñaõ coù vaán ñeà trong heä thoáng ñieän. Moãi laàn, toâi thaáy ñieän theá cuûa ac-quy döôùi 10 volt, toâi bieát raèng ac-quy ñaõ hö.”
- Khaû naêng giaûi thích HOW cuûa ES coù theå thöïc hieän ñöôïc baèng caùch cho pheùp noù theo veát caùc luaät maø noù ñaõ söû duïng vaøo suy luaän.
143. Caáu truùc cuûa ES. ? Giaûi thích taïi sao (WHY)
khaû naêng cuûa ES cung caáp caùch giaûi thích: “taïo sao noù laïi hoûi moät caâu hoûi naøo ñoù.” Vôùi khaû naêng naøy, ngöôøi duøng cuõng coù theå theo veát ñöôïc luoàng suy luaän cuûa ES vaø yeân taâm hôn vôùi keát quaû.
Ví duï: trong phieân laøm vieäc vôùi ES noùi treân.
ES: Coù phaûi xe car khoâng khôûi ñoäng ñöôïc ?
Ngöôøi duøng: WHY
ES: “Neáu toâi bieát raèng xe car khoâng khôûi ñoäng ñöôïc, thì toâi thöôøng cho raèng coù vaán ñeà trong heä thoáng ñieän.”
Khi chuùng ta hoûi WHY, ES thöôøng ñaùp traû baèng caùch moâ taû caùi gì maø noù coù theå keát luaän töø caâu traû lôøi. Haàu heát caùc ES thöôøng ñaùp traû baèng caùch hieän luaät maø noù ñang quan taâm.
144. Caáu truùc cuûa ES. Giao dieän ngöôøi duøng:
Giao dieän cuõng laø moät thaønh phaàn quan troïng cuûa ES, noù giuùp cho ES coù theå ñaët caâu hoûi vôùi ngöôøi duøng vaø nhaän veà caâu traû lôøi chính xaùc. Yeâu caàu cao nhaát cho giao dieän laø coù khaû naêng cung caáp caùch hoûi ñaùp töông töï nhö giöõa ngöôøi - vôùi - ngöôøi.
Khi hieän thöïc heä thoáng, vì nhöõng haïn cheá cuûa kyõ thuaät hieän taïi neân ngöôøi thieát keá phaûi nghó ñeán nhöõng hình thöùc giao tieáp sao cho tieän lôïi, tuy chöa thaät gioáng vôùi “ngöôøi- ngöôøi”. Cuï theå, coù theå duøng giao dieän ñoà hoïa , daïng menu choïn, phaùt aâm caâu hoûi, … cuõng caàn phaûi tính ñeán khaû naêng duøng web nhö moâi tröôøng töông taùc.
145. Caùc ñaëc tröng cô baûn cuûa ES. Phaân taùch tri thöùc vaø ñieàu khieån.
Ñaõ ñeà caäp trong heä luaät sinh. Ñaây cuõng laø ñaëc ñieåm phaân bieät giöõa chöông trình truyeàn thoáng vaø ES.
Haõy so saùnh khaû naêng thay ñoåi tri thöùc cuûa vaán ñeà giöõa hai loaïi chöông trình noùi treân.
Sôõ höõu tri thöùc chuyeân gia.
ES coù chöùa tri thöùc cuûa lónh vöïc trong CSTT. Nhôø coù tri thöùc maø noù coù giaù trò. Ñaëc bieät laø tri thöùc naøy coù theå ñöôïc nhaân ra thaønh nhieàu baûn, coù theå caäp nhaät trong khi heä thoáng ñaõ ñöôïc trieån khai.
Tính chuyeân gia trong lónh vöïc heïp.
Cuõng gioáng nhö chuyeân gia con ngöôøi, ES ñöôïc phaùt trieån nhaèm vaøo moät lónh vöïc heïp. Ñieàu naøy cuõng deã hieãu, vì lyù do: trong lónh vöïc heïp ñoù soá löôïng tri thöùc cuõng nhoû hôn, vaø giuùp cho ngöôøi thieát deã daøng quaûn lyù hôn, deå daøng thöû nghieäm chieán löôïc ñieàu khieån trong ñoäng cô suy dieãn. Ngöôøi thieát thöôøng chia tri thöùc theo töøng maûng nhö hình sau ñeå quaûn lyù noù.
146. Caùc ñaëc tröng cô baûn cuûa ES.
147. Caùc ñaëc tröng cô baûn cuûa ES. Suy luaän treân kyù hieäu.
Chuùng ta coù theå duøng kyù hieäu ñeå theå hieän tri thöùc cho ES. Chính vì vaäy maø coù theå taän duïng ñöôïc caùc giaûi thuaät treân kyù hieäu ñeå tri thöùc thöùc, nhö caùc giaûi thuaät ñaõ ñeà caäp trong chöông 2 – phaàn pheùp toaùn vò töø.
Suy luaän coù heuristic
Chuyeân gia con ngöôøi coù theå töø kinh nghieäm cuûa mình ñeå daãn ra caùch giaûi quyeát vaán ñeà hieäu quaû hôn, ví duï:
Khi chuaån ñoaùn xe, hoï coù theå giaû thieát caùch laøm:
- Luoân luoân kieåm tra luaät veà heä thoáng ñieän tröôùc caùc luaät khaùc.
Hay moät baùc só chuyeân khoa coù theå giaû thieát:
- Neáu nghi ngôø bò ung thö, thì kieåm tra doøng hoï tröôùc.
Ñeå coù theå hieän thöïc trong ES, ngöôøi thieát keá caàn phaûi coù caùch ñaùnh giaù thöù töï öu tieân cuûa caùc luaät, ñeå töø moät ngöõ caûnh naøo ñoù coù theå choïn moät luaät coù lyù nhaát ñeå baét ñaàu.
148. Caùc ñaëc tröng cô baûn cuûa ES. Cho pheùp suy luaän khoâng chính xaùc.
ES coù moät khaû naêng raát maïnh ñoù laø: noù coù theå laøm vieäc vôùi caùc vaán ñeà ñang thieáu thoâng tin, hay coù nhöng hoån taïp, khoâng roõ raøng. Cuõng gioáng nhö tröôøng hôïp: moät ekip baùc só ñang phaûi cöùu moät beänh nhaân haáp hoái, luùc ñoù hoï khoâng coøn kòp thôøi gian ñeå laøm taát caû caùc xeùt nghieäm caàn thieát. Khi thieáu thoâng tin nhö vaäy hoï ñaønh tieán haønh nhöõng caùch coù lyù nhaát theo hoï. Chuùng ta cuõng coù theå hieän thöïc ES coù tính chaát ñoù baèng caùch ñöa vaøo nhöõng luaät töông öùng vôùi tình huoáng thieáu thoâng tin ñeå ñoäng cô suy dieãn vaän duïng.
Bò giôùi haïn vaøo vaán ñeà giaûi quyeát.
Khoâng phaûi moïi vaán ñeà ñeàu coù theå giaûi quyeát bôûi ES. Cuï theå, neáu lónh vöïc chuùng muoán xaây döïng ES hieän taïi chöa coù, chöa caàn moät chuyeân gia con ngöôøi thì vieäc xaây döïng ES khoù maø thaønh coâng.
Giaûi quyeát caùc vaán ñeà coù ñoä phöùc taïp vöøa phaûi.
Neáu vaán ñeà quaù khoù, yeâu caàu chuyeân gia con ngöôøi ñeán vaøi giôø, caàn thieát nghó ñeán khaû naêng chia thaønh nhieàu baøi toaùn con töông öùng moãi ES.
149. Caùc ñaëc tröng cô baûn cuûa ES. Coù khaû naêng bò loãi.
Gioáng nhö chuyeân gia con ngöôøi ES coù khaû naêng bò loãi. Chính vì vaäy, caàn thieát ñöa vaøo khaû naêng phuïc hoài laïi loãi cho ES – ES coù khaû naêng löu veát quaù trình suy luaän, neáu noù ñöa ra moät keát luaän maø ngöôøi duøng kieåm nghieäm vôùi thöïc teá coù sai vaø baùo cho ES, luùc ñoù noù phaûi coù khaû naêng ghi nhaän vaø theo ñuoåi moät höôùng suy luaän khaùc.
ñaëc ñieåm naøy khoâng xuaát hieän trong caùc chöông trình truyeàn thoáng, nhöng ñöøng voäi keát luaän loaïi chöông trình ñoù toát hôn. Moãi loaïi coù nhöõng ñaëc ñieåm rieâng nhö baûng so saùnh sau:
CT truyeàn thoáng ES
Xöû lyù soá Xöû lyù kyù hieäu.
Giaûi thuaät Heuristic
Tích hôïp thoâng tin+ ñieàu khieån Taùch baïch thoâng tin+ ñieàu khieån
Khoù thay ñoåi deã thay ñoåi.
Thoâng tin chính xaùc Thoâng tin khoâng chaéc chaén.
Giao dieän leänh ñieàu khieån Hoäi thoaïi + giaûi thích.
Keát quaû cuoái cuøng ñeà nghò + giaûi thích
Toái öu Coù theå chaáp nhaän.
150. Coâng ngheä tri thöùc. Quaù trình goàm caùc giai ñoaïn nhö hình beân.
Moät soá ñònh nghóa:
? Coâng ngheä tri thöùc: Laø quaù trình xaây döïng ES.
? Thu thaäp tri thöùc: Laø quaù trình thu thaäp, toå chöùc vaø nghieân cöùu tri thöùc.
151. Caùc nhaân toá trong moät döï aùn ES Caùc nhaân toá chính:
? Chuyeân gia lónh vöïc.
? Kyõ sö tri thöùc
? Ngöôøi duøng saûn phaåm Caùc yeâu caàu cho moãi nhaân toá:
Chuyeân gia lónh vöïc:
? Coù tri thöùc chuyeân gia
? Coù kyõ naêng giaûi quyeát vaán ñeà hieäu quaû
? Coù theå chuyeån giao tri thöùc
? Khoâng choáng ñoái (thaân thieän).
Kyõ sö tri thöùc:
? Coù kyõ naêng veà coâng ngheä tri thöùc
? Coù kyõ naêng giao tieáp toát.
? Coù theå laøm cho vaán ñeà ñöôïc giaûi quyeát bôûi phaàn meàm.
? Coù kyõ naêng laäp trình heä chuyeân gia.
Ngöôøi duøng saûn phaåm:
? Coù theå trôï giuùp thieát keá giao dieän cho ES.
? Coù theå trôï giuùp vieäc thu thaäp tri thöùc.
? Coù theå trôï giuùp trong quaù trình phaùt trieån ES.
152. Caùc kyõ thuaät suy luaän Suy luaän: laø quaù trình laøm vieäc vôùi tri thöùc, söï kieän, chieán löôïc giaûi toaùn ñeå daãn ra keát luaän.
Baïn suy luaän nhö theá naøo?
153. Öu – nhöôïc ñieåm cuûa moãi kyõ thuaät Öu ñieåm:
? Laøm vieäc toát vôùi baøi toaùn coù baûn chaát: goâm thoâng tin vaø sau ñoù tìm xem coù theå suy ra caùi gì töø thoâng tin ñoù.
? Coù theå daãn ra raát nhieàu thoâng tin chæ töø moät ít söï kieän ban ñaàu.
? Thích hôïp cho moät soá vaán ñeà nhö: hoaïch ñònh, giaùm saùt, ñieàu khieån, dieãn dòch.
Nhöôïc ñieåm:
? Khoâng coù caùch ñeå nhaän thaáy tính quan troïng cuûa töøng söï kieän. Hoûi nhieàu caâu hoûi thöøa, vì ñoâi luùc chæ caàn moät vaøi söï kieän laø cho ra keát luaän.
? Coù theå hoûi nhöõng caâu hoûi khoâng lieân quan gì nhau – chuoåi caâu hoûi khoâng aên nhaäp nhau.
VD:
- Baïn coù thaân nhieät cao ?
- Baïn ñeán VN ñaõ laâu roài ?
- …
154. Öu – nhöôïc ñieåm cuûa moãi kyõ thuaät Öu ñieåm:
? Laøm vieäc toát vôùi baøi toaùn coù baûn chaát: thaønh laäp giaû thieát , sau ñoù tìm xem coù theå chöùng minh ñöôïc khoâng.
? Höôùng ñeán moät goal naøo, neân hoûi nhöõng caâu hoûi coù lieân quan nhau.
? Chæ khaûo saùt CSTT treân nhaùnh vaán ñeà ñang quan taäm.
? Toát cho caùc vaán ñeà: chuaån ñoaùn, keâ toa, gôõ roái. Nhöôïc ñieåm:
? Luoân höôùng theo doøng suy luaän ñònh tröôùc thaäm chí coù theå döøng vaø reõ sang moät goal khaùc.
? Giaûi quyeát: duøng meta-rule ñeå khaéc phuïc.
Meta-rule: duøng ñeå höôùng khoâng gian tri thöùc ñöôïc khaûo saùt sang moät vuøng khaùc.
155. Khaûo saùt ES: MYCIN Giôùi thieäu:
? Laø ES veà lónh vöïc chuaån ñoaùn beänh nhieãm truøng nhaùu.
? Ñöôïc phaùt trieån vaøo khoaûng naêm 1970, taïi ñaïi hoïc Standford
? Laø thöôùc ño cho nhieàu ES döïa treân luaät sau naøy.
? Ñöôïc vieát treân ngoân ngöõ INTERLISP, moät nhaùnh cuûa LISP.
? Ngöôøi ta töø MYCIN, töôùc boû phaàn CSTT cuûa noù ñeå ñöôïc moät heä thoáng EMYCIN (empty MYCIN), duøng ñeå phaùt trieån caùc ES khaùc. Caùc ñaëc ñieåm chính:
? Söû duïng kyõ thuaät suy luaän luøi.
? Coù khaû naêng phaân taùch tri thöùc vaø ñieàu khieån.
? Coù tích hôïp Meta-rule.
? Coù theå duøng khi thieáu thoâng tin hay thoâng tin khoâng chính xaùc.
? Coù khaû naêng nhôù ñöôïc caùc thoâng tin trong moät phieân laøm vieäc vôùi ngöøôi beänh cuï theå.
? Deå söû duïng – giao tieáp vôùi baùc só qua tieáng anh.
? Cung caáp caùc chöùc naêng giaûi thích: WHY, HOW.
156. Khaûo saùt ES: MYCIN Moät phieân laøm vieäc cuï theå vôùi MYCIN
(“Expert System”. Author: John Durkin)
--- ñaõ ñöôïc Vieät hoùa.
? Moät vaøi thoâng tin veà beänh nhaân:
1. MYCIN: Hoï teân ?
USER: Jack Durkin.
2. MYCIN: Tuoåi ?
USER: 24
3. MYCIN: Giôùi tính ?
USER: Nam
4. MYCIN: Chuûng toäc?
USER: CAUCASIAN
? MYCIN coá gaéng xaùc ñònh baûn chaát laây nhieãm.
5. MYCIN: Coù baát kyø pheùp caáy vi khuaån cho Jack Durkin lieân qua ñeán beänh hieän taïi?
USER: Coù
6. MYCIN: Maãu vaät laáy töø ñaâu?
USER: CSF
7. MYCIN: Ngaøy, giôø thöïc hieän caáy?
USER: 7- July-7:00
….
MYCIN: Gaàn ñaây Jack Durkin coù caùc trieäu chöùng nhö: choaùng vaùn, hoân meâ khoâng?
USER: Coù.
….
157. Khaûo saùt ES: XCON Giôùi thieäu:
? Laø ES veà lónh vöïc höôùng daãn caáu hình caùc heä thoáng maùy tính cuûa DEC tröôùc khi xuaát xöôûng.
? Ñöôïc phaùt trieån vaøo khoaûng naêm 1980, taïi ñaïi hoïc CMU
? Ñöôïc coâng boá giaûm thôøi gian caáu hình cho moãi heä thoáng xuoáng coøn 2 phuùt (so vôùi 25 phuùt baèng tay.). Tieát kieäm vaøo khoaûng 25 trieäu $ cho moãi naêm.
(Theo “Expert System” – John Durkin)
158. Heä chuyeân gia döïa treân luaät Ñònh nghóa:
Laø moät chöông trình maùy tính, xöû lyù caùc thoâng tin cuï theå cuûa baøi toaùn ñöôïc chöùa trong boä nhôù laøm vieäc vaø taäp caùc luaät ñöôïc chöùa trong CSTT, söû duïng ñoäng cô suy luaän ñeå suy ra thoâng tin môùi.
ES döïa treân luaät: coù neàn taûng xaây döïng laù heä luaät sinh – chöông tröôùc.
ES döïa treân luaät cuõng coù nhöõng ñaëc tröng cô baûn nhö ñaõ neâu trong phaàn tröôùc cho caùc ES toång quaùt, moät vaøi ñaëc ñieåm:
? Coù CSTT chöùa caùc luaät.
? Coù boä nhôù laøm vieäc taïm thôøi.
? Coù ñoäng cô suy luaän.
? Coù moät giao dieän ñeå giao tieáp vôùi ngöôøi duøng, ngöôøi phaùt trieån.
? Coù tieän ích giaûi thích.
? Coù khaø naêng giao tieáp vôùi chöông trình ngoaøi nhö: caùc DBMS, xöø lyù baûng tính,…
159. Heä chuyeân gia döïa treân luaät Kieán truùc: (nhö hình sau)
Nguyeân lyù hoaït ñoäng töông töï heä luaät sinh ñaõ giôùi thieäu.
160. Heä chuyeân gia döïa treân luaät Öu ñieåm
? Bieåu dieãn tri thöùc töï nhieân: IF… THEN.
? Phaân taùch tri thöùc – ñieàu khieån.
? Tri thöùc laø taäp caùc luaät coù tính ñoäc laäp cao -> deã thay ñoåi, chænh söõa.
? Deã môû roäng.
? Taän duïng ñöôïc tri thöùc heuristic.
? Coù theå duøng bieán trong luaät, tri xuaát chöông trình ngoaøi.
Nhöôïc ñieåm
? Caùc fact muoán ñoàng nhaát nhau, phaûi khôùp nhau hoaøn toaøn ? Caùc facts cuøng moät yù nghóa phaûi gioáng nhau veà cuù phaùp, ngoân ngöõ töï nhieân khoâng nhö vaäy.
? khoù tìm moái qua heä giöõa caùc luaät trong moät chuoåi suy luaän, vì chuùng coù theå naèm raûi raùc trong CSTT.
? Coù theå hoaït ñoäng chaäm.
? Laøm cho nhaø phaùt trieån phaûi hình chung moïi caùi ôû daïng luaät -? khoâng phaûi baøi toaùn naøo cuõng coù theå laøm ñöôïc nhö theá naøy.
161. Chöông 7: BIEÅU DIEÃN TRI THÖÙC Bieåu dieån tri thöùc trong AI: vai troø vaø öùng duïng
Caùc kyõ thuaät bieåu dieån tri thöùc:
Semantic network
Löu ñoà phuï thuoäc khaùi nieäm
Frame
Script
162. Caùc löôïc ñoà bieåu dieãn tri thöùc. Ñònh nghóa:
Bieåu dieãn tri thöùc laø phöông phaùp ñeå maõ hoaù tri thöùc, nhaèm thaønh laäp cô sôõ tri thöùc cho caùc heä thoáng döïa treân tri thöùc (knowledge-based system).
163. Caùc löôïc ñoà bieåu dieãn tri thöùc. Chuù yù:
Caàn phaân bieät: Löôïc ñoà bieåu dieãn (scheme) vaø moâi tröôøng hieän thöïc (medium), töông töï nhö vieäc phaân bieät: caáu truùc döõ lieäu (CTDL) vaø ngoân ngöõ laäp trình. Vôùi moät loaïi CTDL, ví duï nhö: Baûn ghi (record), chuùng ta coù hieän thöïc trong nhieàu ngoân ngöõ nhö: Pascal, C,…Töông töï, vôùi moät loaïi löôïc ñoà naøo ñoù chuùng ta coù theå choïn moät trong caùc NNLT ñeå hieän thöïc noù.
Caùc loaïi löôïc ñoà bieåu dieãn:
? Löôïc ñoà logic.
Duøng caùc bieåu thöùc trong logic hình thöùc ,nhö pheùp toaùn vò töø, ñeå bieåu dieãn tri thöùc.
Caùc luaät suy dieãn aùp duïng cho loaïi löôïc ñoà naøy raát roõ raøng, ñaõ khaûo saùt trong chöông 2 (nhö: MP, MT,…).
Ngoân ngöõ laäp trình hieän thöïc toát nhaát cho loaïi löôïc ñoà naøy laø: PROLOG.
? Löôïc ñoà thuû tuïc:
Bieåu dieãn tri thöùc nhö taäp caùc chæ thò leänh ñeå giaûi quyeát vaán ñeà.
164. Caùc löôïc ñoà bieåu dieãn tri thöùc. ? Löôïc ñoà thuû tuïc:
Ngöôïc laïi vôùi caùc löôïc ñoà daïng khai baùo, nhö logic vaø maïng, caùc chæ thò leänh trong löôïc ñoà thuû tuïc chæ ra baèng caùch naøo giaûi quyeát vaán ñeà.
Caùc luaät trong CSTT cuûa ES döïa treân luaät laø ví duï veà thuû tuïc giaûi quyeát vaán ñeà.
Heä luaät sinh laø ví duï ñieån hình cuûa loaïi löôïc ñoà naøy.
? Löôïc ñoà maïng.
Bieåu dieãn tri thöùc nhö laø ñoà thò; caùc ñænh nhö laø caùc ñoái töôïng hoaëc khaùi nieäm, caùc cung nhö laø quan heä giöõa chuùng.
Caùc ví duï veà loaïi löôïc ñoà naøy goàm: maïng ngöõ nghóa, phuï thuoäc khaùi nieäm, ñoà thò khaùi nieäm ? ñöôïc khaûo saùt sau ñaây cuûa chöông naøy.
? Löôïc ñoà caáu truùc:
Laø moät môû roäng cuûa löôïc ñoà maïng; baèng caùch cho pheùp caùc node coù theå laø moät CTDL phöùc taïp goàm caùc khe(slot) coù teân vaø trò hay moät thuû tuïc. Chính vì vaäy noù tích hôïp caû daïng khai baùo vaø thuû tuïc.
Kòch baûn(script) , khung (frame), ñoái töôïng (object) laø ví duï cuûa löôïc ñoà naøy ? khaûo saùt sau.
165. Caùc chuù yù veà löôïc ñoà. Khi xaây döïng caùc löôïc ñoà caàn chuù yù nhöõng vaán ñeà sau:
? Caùc ñoái töôïng vaø caùc quan heä coù theå bieåu dieãn cho caùi gì trong lónh vöïc?
Ví duï: ñeå bieåu dieãn cho yù “Nam cao 1meùt 70”,chuùng ta coù theå duøng: chieucao(nam,170). Vaäy thì ñeå dieãn taû “An cao hôn Nam” chuùng ta laøm nhö theá naøo, vì chieàu cao cuûa An luùc naøy khoâng laø moät trò cuï theå nöõa!
? Baèng caùch naøo phaân bieät giöõa “noäi haøm” vaø “ngoaïi dieän” cuûa moät khaùi nieäm. Baèng caùch naøo theå hieän ñöôïc meta-knowledge?
Baèng caùch naøo theå hieän tính phaân caáp cuûa tri thöùc.
Luùc bieåu dieãn tính phaân caáp thì caùc hình thöùc : keá thöøa, ngoaïi leä, trò maëc ñònh, ngoaïi leä, ña thöøa keá phaûi ñaëc taû nhö theá naøo
Khi moâ taû ñoái töôïng, baèng caùch naøo coù theå tích hôïp moät tri thöùc thuû tuïc vaøo baûn thaân moâ taû, khi naøo thuû tuïc ñöôïc thöïc hieän,..
166. Maïng ngöõ nghóa Ñònh nghóa:
Laø moät löôïc ñoà bieåu dieãn kieåu maïng, duøng ñoà thò ñeå bieåu dieãn tri thöùc. Caùc ñænh bieåu dieãn ñoái töôïng; caùc cung bieåu dieãn quan heä giöõa chuùng.
Ví duï:
167. Maïng ngöõ nghóa Môû roäng maïng ngöõ nghóa:
Ñeå môû roäng maïng thaät ñôn giaûn; chuùng ta chæ vieäc theâm caùc ñænh vaø caùc cung quan heä vôùi caùc ñænh coù saün. Caùc ñænh ñöôïc theâm vaøo maïng hoaëc laø bieåu dieãn ñoái töôïng hoaëc laø bieåu dieãn thuoäc tính nhö ví duï tröôùc. Xeùt ví duï sau ñaây minh hoïa vieäc môû roäng maïng ñaõ coù.
Tính thöøa keá:
Laø ñaëc ñieåm noåi baät cuûa löôïc ñoà maïng ngöõ nghóa. Maïng ngöõ nghóa ñònh ra cung quan heä ñaëc bieät “IS-A” ñeå chæ ra söï thöøa keá. Ví duï, nhôø tính thöøa keá maø töø maïng beân chuùng ta coù theå suy ra: “Lilo laø moät ñoäng vaät coù theå bay vaø hít thôû khoâng khí.”
Tính ngoaïi leä:
Ñònh nghóa moät cung quan heä môùi ñeán moät ñænh coù trò khaùc.
168. Maïng ngöõ nghóa Pheùp toaùn treân maïng ngöõ nghóa:
Giaû söû chuùng ta ñaõ maõ hoaù maïng ôû hình tröôùc vaøo maùy tính. Ñeå duøng maïng, coù theå ñôn giaûn laø chuùng ta caâu hoûi vôùi moät ñænh naøo ñoù. Ví duï, vôùi ñænh “Chim” chuùng ta ñaët caâu hoûi: “Baïn di chuyeån nhö theá naøo?”. Ñeå traû lôøi caâu hoøi chuùng ta coù theå hieän thöïc caùch traû lôøi sau cho ñænh: tìm kieám cung quan heä coù nhaõn “di chuyeån” baét ñaàu töø noù, nhö case 1,2 ôû beân.
169. Löu ñoà veà quan heä phuï thuoäc khaùi nieäm. Trong quaù trình nghieân cöùu veà caùch hieåu ngoân ngöõ töï nhieân, Schank vaø Rieger ñaõ coá gaéng thieát laäp moät taäp caùc phaàn töû cô baûn ñeå coù theå bieåu dieãn caáu truùc ngöõ nghóa cuûa caùc bieåu thöùc ôû ngoân ngöõ töï nhieân theo moät caùch ñoàng nhaát.
Lyù thuyeát veà phuï thuoäc khaùi nieäm coù ñeà ra 4 khaùi nieäm cô baûn ñeå töø ñoù ngöõ nghóa ñöôïc xaây döïng, chuùng laø:
? ACT (Action) : caùc haønh ñoäng.
: (caùc ñoäng töø trong caâu)
? PP (Picture Producers) : caùc ñoái töôïng.
: (caùc chuû töø, taân ngöõ,..)
? AA (Action Adder) : boå nghóa cho haønh ñoäng.
: (traïng töø)
? PA (Picture Adder) : boå nghóa cho ñoái töôïng.
: (tính töø)
170. Löu ñoà veà quan heä phuï thuoäc khaùi nieäm. Taát caû caùc haønh ñoäng ñöôïc cho laø coù theå ñöôïc moâ taû baèng caùch phaân raõ veà moät hoaëc nhieàu haønh ñoäng nhö lieät keâ sau ñaây:
1. ATRANS : chuyeån ñoåi moät quan heä – VD: ñoäng töø: cho, bieáu,…
2. PTRANS : chuyeån ñoåi vò trí vaät lyù – VD: ñi, chaïy, di chuyeån,..
3. PROPEL : taùc ñoäng moät löïc vaät lyù leân ñoái töôïng – VD: ñaåy, chaûi,…
4. MOVE : di chuyeån moät phaàn thaân theå bôøi ñoái töôïng – VD: ñaù..
5. GRASP : naém laáy ñoái töôïng khaùc. – VD: caàm, naém, giöõ,…
6. INGEST : aên vaøo buïng moät ñoái töôïng bôûi ñt khaùc – VD: aên, nuoát,..
7. EXPEL : toáng ra töø thaân theå cuûa moät ñoái töôïng – VD: khoùc,..
8. MTRANS : chuyeån ñoåi thoâng tin tinh thaàn – VD: noùi, tieát loä,..
9. MBUILD : taïo ra moät thoâng tin tinh thaàn môùi – VD: quyeát ñònh, …
10. CONC : nghó veà moät yù kieán – VD: suy nghó, hình dung,…
11. SPEAK : taïo ra aâm thanh – VD: noùi, phaùt bieåu,…
12. ATTEND: taäp trng giaùc quan – VD: laéng nghe, nhìn,…
171. Löu ñoà veà quan heä phuï thuoäc khaùi nieäm. Quan heä phuï thuoäc khaùi nieäm bao goàm moät taäp caùc luaät cuù phaùp cho khaùi nieäm, hình thaønh neân vaên phaïm veà quan heä ngöõ nghóa. Caùc quan heä naøy seõ ñöôïc duøng vaøo vieäc bieåu dieãn beân trong cho caâu trong ngoân ngöõ töï nhieân. Danh saùch caùc phuï thuoäc khaùi nieäm ñöôïc lieät keâ nhö beân.
172. Löu ñoà veà quan heä phuï thuoäc khaùi nieäm.
173. p : quaù khöù – ACT ñaõ xaûy ra trong quaù khöù
VD:
YÙ nghóa: Nam ñaõ taùc duïng moät löïc (ñaåy) vaøo caùi baøn.
f : töông lai.
t : chuyeån tieáp.
ts : baét ñaàu chuyeån tieáp.
tf : keát thuùc chuyeån tieáp.
k : ñang dieãn ra.
? : nghi vaán.
/ : phuû ñònh.
C : ñieàu kieän.
Nil: hieän taïi. (khoâng ghi chuù gì)
Löu ñoà veà quan heä phuï thuoäc khaùi nieäm. Caùc phuï thuoäc khaùi nieäm treân cho pheùp chuùng bieåu dieãn quan heä giöõa: chuû töø vôùi ñoäng töø (nhö phuï thuoäc ñaàu tieân), hay giöõa chuû töø vaø thuoäc tính cuûa noù,…. Löôïc ñoà veà quan heä phuï thuoäc khaùi nieäm caøng ñöa ra caùch thöùa ñeå bieåu dieãn thì, ñieài kieän,…, nhö beân phaûi.
174. Löu ñoà veà quan heä phuï thuoäc khaùi nieäm. Moät soá ví duï veà vieäc keát hôïp caùc phuï thuoäc khaùi nieäm ñeå bieåu dieãn caâu:
175. Löu ñoà veà quan heä phuï thuoäc khaùi nieäm.
176. Löu ñoà veà quan heä phuï thuoäc khaùi nieäm.
177. Löu ñoà veà quan heä phuï thuoäc khaùi nieäm. ? Töø nhöõng keát hôïp giöõa caùc phuï thuoäc khaùi nieäm ñeå bieåu dieãn caùc caâu ñôn giaûn ôû treân, chuùng ta coù theå cuõng coù theå taïo ra bieåu dieãn cho caùc caâu phöùc taïp hôn nhö ví duï sau:
Caâu: “Nam ñaõ caám Lan gôûi cuoán taäp AI cho Quang”
Neáu ñaët C laø meänh ñeà: “Lan gôûi cuoán taäp cho Quang”, thì caâu treân coù theå hieåu laø: Nam caám caùi meänh ñeà vöøa neâu xaûy ra.
Maø meänh ñeà C ñöôïc bieåu dieãn nhö H1, neân toaøn boä caâu laø nhö H2:
178. Löu ñoà veà quan heä phuï thuoäc khaùi nieäm. Öu ñieåm
? Cung caáp caùch thöùc bieåu dieãn hình thöùc cho ngöõ nghóa cuûa ngoân ngöõ töï nhieân, ngöõ nghóa ñöôïc bieåu dieãn theo daïng coù quy taéc ? giaûm söï nhaäp nhaèng.
? Chính baûn thaân daïng bieåu dieãn chöùa ñöïng ngöõ nghóa ? tính ñoàng nghóa töông öùng laø söï ñoàng nhaát veà cuù phaùp cuûa löôïc ñoà bieåu dieãn ? chöùng minh tính ñoàng nghóa ? so truøng hai ñoà thò bieåu dieãn.
Nhöôïc ñieåm:
? Khoù khaên trong vieäc phaùt trieån chöông trình ñeå töï ñoäng thu giaûm bieåu dieãn cuûa caâu baát kyø veà daïng quy taéc chuaån.
? Traû giaù cho vieäc phaân raõ moïi caùi veà caùc thaønh phaàn cô baûn: ACT, PP, …
? Caùc thaønh phaàn cô baûn khoâng thích hôïp ñeå mieâu taû nhöõng khaùi nieäm tinh teá cuûa ngoân ngöõ töï nhieân, nhö caùc töø coù nghóa ñònh tính: cao, ñeïp,…
179. Ñoà thò khaùi nieäm Ñònh nghóa:
Ñoà thò khaùi nieäm laø moät ñoà thò höõu haïn, lieân thoâng, caùc ñænh ñöôïc chia laøm hai loaïi: ñænh khaùi nieäm vaø ñænh quan heä.
Ñænh khaùi nieäm: duøng ñeå bieåu dieãn caùc khaùi nieäm cuï theå (caùi, ñieän thoaïi, …) hay tröøu töôïng (tình yeâu, ñeïp, vaên hoaù,…). Ñænh khaùi nieäm ñöôïc bieåu dieãn bôûi hình chöõ nhaät coù gaùn nhaõn laø khaùi nieäm.
Ñænh quan heä: duøng ñeå chæ ra quan heä giöõa caùc khaùi nieäm coù noái ñeán noù.
Trong ñoà thò khaùi nieäm: chæ coù khaùc loaïi môùi noái ñöôïc vôùi nhau. Chính vì duøng ñænh quan heä neân caùc cung khoâng caàn phaûi ñöôïc gaùn nhaõn nöõa.
? Moãi ñoà thò khaùi nieäm bieåu dieãn moät meänh ñeà ñôn.
? Cô sôõ tri thöùc: chöùa nhieàu ñoà thò khaùi nieäm.
180. Ñoà thò khaùi nieäm Moät soá ví duï:
181. Ñoà thò khaùi nieäm Moät soá ví duï:
182. Ñoà thò khaùi nieäm Loaïi, caù theå, teân:
Trong ñoà thò khaùi nieäm, moãi ñænh quan heä bieåu dieãn cho moät caù theå ñôn leõ thuoäc moät loaïi naøo ñoù. Ñeå noùi leân quan heä giöõa “loaïi-caù theå”, neân moãi ñænh khaùi nieäm ñöôïc quy ñònh caùch gaùn nhaõn laø:
“loaïi: teân_caù_theå”
teân_ caù_theå coù theå laø:
1. Moät teân naøo ñoù, nhö:
sinhvieân: nam ? moät sinh vieân coù teân laø Nam.
2. Moät khoaù ñeå phaân bieät, ñöôïc vieát theo cuù phaùp #khoaù, nhö
sinhvieân: #59701234 ? moät sinh vieân coù khoaù laø: 59701234.
3. Coù theå duøng daáu sao (*) ñeå chæ ra moät caù theå chöa xaùc ñònh, nhö:
sinhvieân: * , coù taùc duïng nhö sinhvieân ? chæ ra moät sinh vieân baát kyø
sinhvieân:*X ? sinh vieân baát kyø, teân sinh vieân ñaõ ñöôïc laáy qua bieán X.
sinhvieân:ng* ? sinh vieân coù teân baét ñaàu bôûi “ng”
Tröôøng hôïp 1 vaø 2, khaùi nieäm ñöôïc goïi laø khaùi nieäm caù theå, tröôøng hôïp 3 ta coù khaùi nieäm toång quaùt.
183. Ñoà thò khaùi nieäm Neáu duøng caùch ñaët teân nhö noùi treân coù theå nhín thaáy 3 ñoà thò sau coù taùc duïng bieåu dieãn nhö nhau neáu con coù luu coù khoaù laø #123.
184. Ñoà thò khaùi nieäm Bieán coù theå ñöôïc duøng khi caàn chæ ra nhieàu ñænh khaùi nieäm ñoàng nhaát nhau trong moät ñoà thò nhö tröôøng hôïp sau.
185. Ñoà thò khaùi nieäm Phaân caáp loaïi (type)
Neáu coù s vaø t laø hai loaïi (type) thì:
s ? t : ? s: subtype cuûa t
? t : supertype cuûa s
Ví duï:
- sinhvieân laø subtype cuûa ngöôøi.
- ngöôøi laø super type cuûa sinhvieân.
neân vieát: sinhvieân ? ngöôøi
Trong sô ñoà phaân caáp beân,
s: ñöôïc goïi laø common-subtype cuûa r vaø v.
v : ñöôïc goïi laø common-supertype cuûa s vaø u.
T : supertype cuûa moïi type
? : subtype cuûa moïi type
186. Ñoà thò khaùi nieäm Caùc pheùp toaùn treân ñoà thò khaùi nieäm.
Xeùt hai ñoà thò sau: ?Pheùp copy (nhaân baûn): nhaân baûn moät ñoà thò.
?Pheùp Restriction (giôùi haïn): taïo ra ñoà thò môùi baèng caùch: töø moät ñoà thò ñaõ coù, thay theá moät ñænh khaùi nieäm bôøi moät ñænh khaùc cuï theå hôn, nhö hai tröôøng hôïp:
Moät bieán *, ñöôïc thay theá bôûi moät khoaù, hay moät teân cuûa caù theå.
VD: dog:* ? dog:#123 hay dog:luu
Moät type ñöôïc thay theá bôûi subtype cuûa noù.
VD: ngöôøi: nam ? sinhvieân:nam
187. Ñoà thò khaùi nieäm Aùp duïng pheùp restriction treân ñoà thò G2, coù theå daãn ra G3 nhö sau:
? Pheùp Join (noái): Noái hai ñoà thò ñeå ñöôïc moät ñoà thò khaùc.
Neáu coù ñænh khaùi nieäm C xuaát hieän treân caû hai ñoà thò X vaø Y, thì chuùng ta coù theå noái hai ñoà thò treân ñænh chung C noùi treân, nhö töø G1 vaø G3 coù theå taïo ra G4 nhö sau: (noái treân ñænh chung laø: dog:lulu)
188. Ñoà thò khaùi nieäm ? Pheùp simplify: (ruùt goïn)
Neáu treân moät ñoà thò coù hai ñoà thò con gioáng nhau hoaøn toaøn thì chuùng ta coù theå boû ñi moät ñeå taïo ra moät ñoà thò môùi coù khaø naêng bieåu dieãn khoâng thay ñoåi. Töø G4 coù theå sinh ra G5 cuøng khaû naêng bieåu dieãn.
Nhaän xeùt:
Pheùp Restriction vaø pheùp Join cho pheùp chuùng ta thöïc hieän tính thöøa keá treân ñoà thò khaùi nieäm. Khi thay moät bieán * bôûi moät caù theå cuï theå, luùc ñoù chuùng ta cho pheùp caù theå thöøa keá caùc tính chaát töø loaïi(type) cuûa noù, cuõng töông töï khi ta thay theá moät type bôûi subtype cuûa noù.
189. Ñoà thò khaùi nieäm Ñænh meänh ñeà:
Ñeå thuaän tieän bieåu dieãn cho caùc caâu goàm nhieàu meänh ñeà, ñoà thò khaùi nieäm ñaõ ñöôïc môû roäng ñeå coù theå chöùa caû moät meänh ñeà trong moät ñænh khaùi nieäm, luùc ñoù chuùng ta goïi laø ñænh meänh ñeà.
Vaäy ñænh meänh ñeà laø moät ñænh khaùi nieäm coù chöùa moät ñoà thò khaùi nieäm khaùc. Xeùt ñoà thò khaùi nieäm môû roäng bieåu dieãn cho caâu:
“Tom believes that Jane likes pizza”.
190. Ñoà thò khaùi nieäm Ñoà thò khaùi nieäm vaø logic.
- Pheùp hoäi (and) cuûa nhieàu khaùi nieäm, meänh ñeà chuùng ta coù theå thöïc hieän deã daøng caùch caùch noái nhieàu ñoà thò bôûi pheùp toaùn join.
- Pheùp phuû ñònh(not) vaø pheùp tuyeån(or) giöõa caùc khaùi nieäm hay meänh ñeà cuõng coù theå ñöôïc theå hieän baèng caùch ñöa vaøo ñænh quan heä coù teân: neg(phuû ñònh), or(tuyeån) nhö daïng sau.
191. Ñoà thò khaùi nieäm Ví duï:
Caâu: “There are no pink dogs”, ñöôïc bieåu dieãn:
Trong ñoà thò khaùi nieäm, caùc khaùi nieäm toång quaùt (ñænh duøng bieán * - nhö dog:*, hay chæ coù teân loaïi - nhö dog) ñöôïc xem nhö coù löôïng töø toàn taïi (?). Do vaäy, meänh ñeà trong ví duï treân coù bieåu dieãn vò töø laø:
?X?Y(dog(X) ^ color(X,Y) ^ pink(Y)).
Vaø toaøn boä ñoà thò ( bao goàm ñænh quan heä :neg), coù bieåu dieãn vò töø:
? ?X?Y(dog(X) ^ color(X,Y) ^ pink(Y)).
= ?X?Y(? (dog(X) ^ color(X,Y) ^ pink(Y))).
192. Ñoà thò khaùi nieäm Giaûi thuaät ñeå chuyeån moät ñoà thò khaùi nieäm sang bieåu dieãn vò töø:
Gaùn moät bieán rieâng bieät (X1, X2,…) cho moãi khaùi nieäm toång quaùt.
Gaùn moät haèng cho moãi khaùi nieäm caù theå trong ñoà thò. Haèng naøy coù theå laø teân caù theå hay khoaù cuûa noù.
Bieåu dieãn moät ñænh khaùi nieäm bôûi moät vò töø moät ngoâi; coù teân laø teân loaïi (type), ñoái soá laø bieán hay haèng vöøa gaùn treân.
Bieåu dieãn moãi ñænh quan heä bôøi moät vò töø n ngoâi; coù teân laø teân cuûa ñænh quan heä, caùc thoâng soá laø bieán hay haèng ñöôïc gaùn cho caùc ñænh khaùi nieäm noái ñeán noù. 5. Hoäi cuûa taát caû caùc caâu trong böôùc 3 vaø 4. Taát caû caùc bieán trong bieåu thöùc thu ñöôïc ñeàu ñính keøm löôïng töø toàn taïi.
Ví duï: coù ñoà thò nhö sau
Ñöôïc chuyeån sang laø:
?X1(dog(luu) ^ color(X1) ^ brown(X1))
193. Löôïc ñoà coù caáu truùc - Frame Frame – khung.
Laø moät caáu truùc döõ lieäu cho pheùp bieåu dieãn tri thöùc ôû daïng khaùi nieäm hay ñoái töôïng.
Moät khung coù caáu truùc nhö hình veõ beân.
Caáu truùc cuûa frame:
Ñaëc taû cho moät frame goàm caùc thaønh phaàn cô baûn sau:
1. Frame name: teân cuûa frame.
- Neáu frame bieåu dieãn cho moät caù theå naøo ñoù, thì ñaây laø teân cuûa caù theå. Ví duï: an, nam, lulu,..
194. Löôïc ñoà coù caáu truùc – Frame Caáu truùc cuûa frame (tt):
- Neáu Frame bieåu dieãn cho moät lôùp, thì ñaây laø teân lôùp. Ví duï: chim, ñoäng vaät, …
2. Class: Teân loaïi.
- Neáu thaønh phaàn naøy xuaát hieän, noù cho bieát raèng frame maø chuùng ta ñang bieåu dieãn coù loaïi laø giaù trò tröôøng class. ? Cho pheùp thaønh laäp quan heä thöøa keá IS-A.
Nhö ví duï treân, chuùng ta coù:
Object1 IS-A Object2 3. Caùc thuoäc tính (property): Khi bieåu dieãn moät frame chuùng ta coù theå thieát laäp moät hay nhieàu thuoäc tính cho noù, nhö ví duï sau:
195. Löôïc ñoà coù caáu truùc – Frame Caáu truùc cuûa frame (tt):
- Khi chuùng ta ñaët taû thuoäc tính cho moät lôùp; neáu chuùng ta bieát ñöôïc giaù trò chung cho taát caû caùc ñoái töôïng thuoäc lôùp maø chuùng ta ñang bieåu dieãn thì ñieàn vaøo trò cho thuoäc tính ñoù, giaù trò ñoù chuùng ta goïi laø giaù trò maëc nhieân, nhö: aên, soá caùnh ôû treân ; neáu chuùng ta chöa bieát trò cuï theå (nhöng bieát laø coù thuoäc tính ñoù) thì chuùng ta coù theå boû troáng (chöa bieát) – nhö maøu, hoaït ñoäng,..:. Caùc thuoäc tính cuûa frame naèm ôû hai daïng cô baûn:
? Daïng tónh(static): giaù trò cuûa noù khoâng thay ñoåi trong quaù trình heä thoáng tri thöùc hoaït ñoäng.
? Daïng ñoäng(dynamic): giaù trò coù theå chuyeån ñoåi.
Khi phaûi tìm kieám moät frame, chuùng ta coù theå döïa vaøo frame name , cuõng coù theå döïa vaøo caùc thuoäc tính ñöôïc ñaët taû cho frame.
196. Löôïc ñoà coù caáu truùc – Frame Caáu truùc cuûa frame (tt):
4. Caùc thuû tuïc: Löôïc ñoà frame caøng cho pheùp tích hôïp caùch thöùc ñaët nhö caùc thuoäc tính nhö treân vaø caùc thuû tuïc vaøo moät frame. Veà hình thöùc, moät thuû tuïc seõ chieám moät khe töông töï nhö khe thuoäc tính noùi treân.
Thuû tuïc ñöôïc duøng ñeå: bieåu dieãn moät haønh ñoäng naøo ñoù cuûa ñoái töôïng, ñieàu khieån giaù trò cuûa thuoäc tính nhö: kieåm tra raøng buoäc veà trò, kieåu, cuûa thuoäc tính moãi khi caàn trích, hay thay ñoåi noù. Hai thuû tuïc phoå bieán ñöôïc ñính keøm vôùi moät thuoäc tính laø:
IF_NEEDED vaø
IF_CHANGED.
? IF_NEEDED:
Thuû tuïc naøy ñöôïc thöïc thi moãi khi chuùng ta caàn ñeán giaù trò cuûa thuoäc tính (gioáng thuû tuïc GET trong VB).
Ví duï: thuû tuïc sau (daïng if_needed) cho thuoäc tính bay cuûa frame chim noùi treân.
If self:soá_caùnh < 2
Then self:bay = false
If self:soá_caùnh = 2
Then self:bay = true
197. Löôïc ñoà coù caáu truùc – Frame Caáu truùc cuûa frame (tt):
? IF_CHANGED:
Thuû tuïc naøy ñöôïc thöïc thi moãi khi giaù trò cuûa thuoäc tính maø if_changed naøy ñöôïc gaén vaøo thay ñoåi. (gioáng nhö SET, LET trong VB)
Ví duï: gaén thuû tuïc sau cho thuoäc tính ñoùi cuûa lôùp chim noùi treân.
If Seft:ñoùi = true
Then Seft:haønhñoäng = eating # seft:aên
4. Caùc thoâng tin khaùc:
Moät soá khe khaùc cuûa frame coù theå chöùa frame khaùc, link ñeán frame, maïng ngöõ nghóa, rules, hay caùc loaïi thoâng tin khaùc. Chuù yù: caùc ví duï treân moâ phoûng theo ngoân ngöõ Kappa PC, trong ñoù, “Expert System -DurKin”:
- Seft: töø khoaù chæ chính baûn thaân frame ñang moâ taû (nhö Me cuûa VB, this cuûa VC)
- # : daáu noái chuoåi(nhö & cuûa VB, + cuûa VC)
- Löôïc ñoà frame cuõng gioáng nhö caùc heä thoáng höôùng ñoái töôïng. Chuùng ta:
? Coù theå ñaët taû frame lôùp hay caù theå.
? Coù theå ñaët taû tính thöøa keá.
? Moãi khi taïo ra frame caù theå, coù theå copy caùc thuoäc tính, thuû tuïc cuûa frame lôùp; ñoàng thôøi coù theå môû roäng theâm, hay ñònh nghóa laïi moät soá thuoäc tính, thuû tuïc.
198. Löôïc ñoà coù caáu truùc – Script Script – Kòch baûn:
Laø moät löôïc ñoà bieåu dieãn coù caáu truùc, duøng ñeå bieåu dieãn moät chuoåi caùc söï kieän trong moät ngöõ caûnh cuï theå. Noù nhö moät phöông tieän ñeå toå chöùc caùc phuï thuoäc khaùi nieäm – (ñaõ giôùi thieäu tröôùc) ñeå moâ taû moät tình huoáng cuï theå.
Script ñöôïc duøng trong caùc heä thoáng hieåu NNTN, toå chöùc tri thöùc trong thaønh phaàn caùc tình huoáng maø heä thoáng phaûi tìm hieåu.
Caáu truùc cuûa Script:
1. Entry conditions:
Caùc ñieàu kieän phaûi true ñeå script ñöôïc goïi. Ví duï: moät caù nhaân bò beänh thì script nhaäp vieän ñöôïc goïi.
2. Results:
Keát quaû thu ñöôïc töø script khi noù hoaøn thaønh.
3. Props:
Caùc ñoà vaät tham gia vaøo script, nhö: xe cöùu thöông, caùn, bình oxy,…
4. Roles:
Caùc caù nhaân tham gia vaøo script, nhö: beänh nhaân, baùc só, y taù, ngöôøi nhaø,…
5. Scenes:
Caùc caûnh chính trong script, nhö: di chuyeån, caáp cöùu, hoài söùc,..
? Moät ví duï veà kòch baûn ñi nhaø haøng nhö ví duï sau:
199. Löôïc ñoà coù caáu truùc – Script Script: RESTAURENT
Track: Coffe Shop
Entry conditions:
S is hungry
S has money
Results:
S has less money
O has more money
S is not hungry
S is pleased (optional)
Props: Tables
Menu
Food (F)
Check
Money
Roles: Custumer (S)
Waiter(W)
Cook(C)
Cashier(M)
Owner(O) Scene 1: (Entering)
S PTRANS S into restaurent.
S ATTEND eyes to tables
S MBUILD where to sit
S PTRANS S to table
S MOVE S to sitting position
---
Scene 2: (Ordering)
(Menu on table)
S PTRANS menu to S
(S ask for menu)
S MTRANS signal to W
W PTRANS W to table
S MTRANS ‘need menu’ to W
W PTRANS W to menu
200. Löôïc ñoà coù caáu truùc – Script W PTRANS W to table
W ATRANS menu to S
S MTRANS food list to S
(*) S MBUILD choice of F
S MTRANS signal to W
W PTRANS W to table
S MTRANS ‘I want F’ to W
W PTRANS W to C
W MTRANS (ATRANS F) to C
C MTRANS ‘no F’ to W
W PTRANS W to S
W MTRANS ‘no F’ to S C DO (prepare F script)
(go back to *) or to scene 3
(go to scene 4)
201. Löôïc ñoà coù caáu truùc – Script Scene 3: (Eating)
C ATRANS F to W
W ATRANS F to S
S INGEST F
(Option: return to scene 2 to order more;
otherwise: goto scene 4)
---
Scene 4: (exiting)
S MTRANS to W
W ATRANS check to S
202. Thi & Kieåm tra Hình thöùc thi:
Caâu hoûi traéc nghieäm
Moät soá baøi taäp
Hoïc vieân ñöôïc pheùp söû duïng taøi lieäu