Hệ chuyên gia là một phần mềm máy tính, chứa đựng các thông tin và tri thức vềmột lĩnh vực cụ thể nào đó, có khả năng giải quyết những yêu cầu của người sử dụng ởtrình độ như một chuyên
Trang 1PHẦN I:
GIỚI THIỆU ĐỀ TÀI
Trí tuệ nhân tạo ra đời từ năm 1956 Nó có nhiệm vụ nghiên cứu các kỹ thuật làmcho máy tính có thể "suy nghĩ một cách thông minh" Trí tuệ nhân tạo còn mô phỏngquá trình suy nghĩ của con người khi đưa ra những quyết định, lời giải nhờ tìm kiếmtrong không gian bài toán hay phân rã bài toán thành các bài toán con Theo một nghĩanào đó, trí tuệ nhân tạo đưa ra một cách tiếp cận có cấu trúc và đơn giản để xây dựngcác chương trình ra quyết định phức hợp đòi hỏi phải dựa trên những tri thức nhất định.Trong khoảng từ những năm 60 đến những năm 70 của thế kỷ trước, trí tuệ nhân tạoxuất hiện những bế tắc Nguyên nhân là do các giới hạn khả năng của các thiết bị, bộnhớ, đặc biệt là yếu tố thời gian thực hiện Những tiếp cận khác nhau của trí tuệ nhântạo không đem tới những thành công thực sự do sự bùng nổ tổ hợp trong quá trình tìmkiếm lời giải các bài toán đặt ra
Mãi đến cuối những năm 70, một số nghiên cứu cơ bản trong các lĩnh vực xử lýngôn ngữ tự nhiên, biểu diễn tri thức, lý thuyết giải quyết vấn đề đã đem lại một diệnmạo mới cho trí tuệ nhân tạo Thị trường tin học đã bắt đầu đón nhận những sản phẩmtrí tuệ nhân tạo ứng dụng đầu tiên mang tính thương mại Đó là các hệ chuyên gia được
áp dụng trong các lĩnh vực khác nhau
Hệ chuyên gia là một phần mềm máy tính, chứa đựng các thông tin và tri thức vềmột lĩnh vực cụ thể nào đó, có khả năng giải quyết những yêu cầu của người sử dụng ởtrình độ như một chuyên gia con người có kinh nghiệm lâu năm Một trong những hệchuyên gia đầu tiên được sử dụng thành công trong thực tế là hệ MYCIN, được thiết kế
và cài đặt tại trường đại học tổng hợp Stanford
Các hệ chuyên gia ban đầu được xây dựng dựa trên tri thức chắc chắn rồi đến trithức không chắc chắn với các kiểu suy diễn tiến, lùi hay hỗn hợp và nói chung chúngcho những kết quả tốt
Tuy nhiên, hệ chuyên gia là hệ phải có sự giao tiếp với người dùng theo kiểu hỏiđáp Nó cần phải hiểu được ngôn ngữ thông thường giao tiếp giữa người với người Vàđiều này chính là những nhược điểm của các hệ chuyên gia trên
Vào năm 1965, giáo sư Lofti Zadeh đưa ra cuốn "Fuzzy Sets" trình bày các nghiêncứu lý thuyết tập mờ Ứng dụng ban đầu của nó là sử dụng trong điều khiển lôgic mờ Người ta đồng thời cũng đã nhận ra nhiều ưu điểm của lý thuyết mờ khi nó đi cùng
hệ chuyên gia Lôgic mờ cung cấp các phương tiện biểu diễn và lập luận với các thuậtngữ mơ hồ, không rõ ràng trong máy tính Trong lý thuyết mờ đưa ra định nghĩa biếnngôn ngữ Nó cho phép biểu diễn được các khái niệm trong ngôn ngữ tự nhiên Lý
Trang 2thuyết tập mờ cho phép định nghĩa một tập mờ mới thông qua một tập mờ đã tồn tại.Kết quả, hệ chuyên gia mờ ra đời.
Trong đồ án này, em xin trình bày những nghiên cứu của hệ chuyên gia mờ Tậndụng những ưu điểm của hệ chuyên gia và tập mờ, tiến hành xây dựng một bộ công cụtạo lập hệ chuyên gia mờ, hỗ trợ xây dựng các hệ chuyên gia thuộc nhiều lĩnh vực khácnhau
Đồ án bao gồm 4 phần:
Phần 1: Giới thiệu đề tài
Phần 1: Trình bày những nghiên cứu lý thuyết cho việc xây dựng hệ chuyên gia
mờ Phần này bao gồm những chương:
- Chương 1: Giới thiệu về hệ chuyên gia
- Chương 2: Cấu trúc hệ chuyên gia
- Chương 3: Biểu diễn tri thức
- Chương 4: Suy diễn
- Chương 5: Lý thuyết mờ
- Chương 6: Suy diễn mờ
- Chương 7: Hệ chuyên gia mờ
Phần 3: Trình bày quá trình xây dựng bộ công cụ tạo lập hệ chuyên gia mờ Phầnnày bao gồm những chương:
- Chương 8: Từ cơ sở lý thuyết tới thực tế
- Chương 9: Yêu cầu và giải pháp xây dựng bộ công cụ tạo lập hệ chuyên gia mờ
- Chương 10: Chương trình và đánh giá
Phần 4: Kết luận cho đồ án và hướng phát triển trong tương lai của đồ án
Trang 3PHẦN II:
CƠ SỞ LÝ THUYẾT
CHƯƠNG 1: GIỚI THIỆU VỀ HỆ CHUYÊN GIA
Trong chương này, chúng ta sẽ nghiên cứu các nội dung:
Ngày nay, sự phồn thịnh của một quốc gia còn phụ thuộc vào các tài nguyên tríthức Những con người với hiểu biết tốt trong các lĩnh vực khoa học, y học, thương mại
và kỹ thuật (mà chúng ta gọi họ là những chuyên gia) có khả năng tạo ra những phươngpháp mới, những tiến bộ mới, những thành tựu mới và chúng sẽ giúp cải thiện chấtlượng cuộc sống ngày càng tốt đẹp hơn Để khai thác được khả năng của các chuyêngia, chúng ta đang tìm kiếm những máy móc mới và hiển nhiên là mong muốn chúng
có được chuyên môn của những con người này Bởi vậy, các máy móc ngày nay khôngcòn phụ thuôc vào hơi nước hay dầu đốt mà phụ thuộc tri thức Điều này dẫn tới một
cuộc cách mạng tri thức và công cuộc tìm kiếm các máy thông minh (Intelligent
Machine - IM)
Những năm cuối của thế kỷ 18 và đầu thế kỷ 19, một nhóm người Châu Âu vàChâu Mỹ đưa ra một máy thiết bị được gọi là "Chess Automation" có khả năng chơi cờvới con người Đó đơn giản là một hộp đầy bánh răng và đòn bẩy Năm 1834, CharlesBabbage đưa một chiếc máy tính đầu tiên có thể tính các phép toán và in ra kết quả.Tuy nhiên, lúc bấy giờ việc thiết kế các máy thông minh vẫn là một giấc mơ xa vời
Trang 4Bởi lẽ, các công nghệ vẫn không cho phép chúng ta thực hiện điều đó Tiếp đến, xuấthiện các máy tính là những bộ xử lý dữ liệu tốc độ cao, sử dụng chương trình được viếtsẵn, thực hiện theo một dãy các nhiệm vụ theo một thuật toán cho trước Chúng có thể
xử lý dữ liệu song lại không thể lập luận với những thông tin được cung cấp trước
Điều này dẫn tới sự ra đời của một lĩnh vực nghiên cứu mới Đó là trí tuệ nhân tạo
(Artificial Intelligence - AI)
Người ta định nghĩa trí tuệ nhân tạo như sau: "Trí tuệ nhân tạo là một lĩnh vực nghiên cứu thuộc khoa học máy tính nhằm có được những lập luận thông minh như con người"
Trí tuệ nhân tạo có giai đoạn phát triển từ năm 1956 đến những năm 1970 thì bị suysụp Không một hệ thống nào tại thời điểm đó có thể giải quyết được các vấn đề diễn ratrong thế giới thực Những nhà nghiên cứu bắt đầu nhận ra rằng các kỹ thuật riêng lẻ có
lẽ không đủ để tạo ra máy thông minh May mắn thay, một cột mốc cho thấy những nhànghiên cứu đi đúng hướng và giúp cho trí tuệ nhân tạo được hồi sinh Đó là mộtchương trình được phát triển từ 1965 tại trường đại học Stanford theo yêu cầu củaNASA được gọi là DENDRAL NASA dự định gửi một con tàu không người lái lênsao Hoả và muốn có một chương trình phân tích các hoá chất có trong đất của sao Hoả
Từ những dữ liệu quang phổ của mẫu đất, chương trình cần xác định được cấu trúcphân tử của mẫu đất Phương pháp truyền thống trong phòng thí nghiệm hoá học là sửdụng kỹ thuật tạo và thử Người ta xét tất cả các cấu trúc có thể có, nghiên cứu quangphổ của chúng rồi so khớp có phù hợp với dữ liệu hay không Rõ ràng, khó khăn vôcùng khi có tới hàng triệu cấu trúc được tạọ ra Nhóm nghiên cứu của trường Stanford
đã đề nghị ra một giải pháp Họ sử dụng kỹ thuật heuristic trong chương trình của họ vàlưu trữ các cấu trúc mà họ đã được tạo ra Kết quả, ra đời một chương trình máy tínhhoạt động như một chuyên gia hoá chất nhận dạng cấu trúc phân tử của những hợp chấtchưa được biết đến Điều này giúp các nhà nghiên cứu nhận ra rằng các hành vi đối xửthông minh không chỉ phụ thuộc vào phương pháp lập luận mà còn phụ thuộc vào tri
thức mà nó dùng để lập luận Từ đó, một khái niệm mới được hình thành: "Sức mạnh
nằm trong tri thức" và kỷ nguyên cho một loại hệ thống mới, hệ chuyên gia (Expert
System-ES), bắt đầu.
1.2 Khái niệm hệ chuyên gia
Những giai đoạn đầu việc nghiên cứu hệ chuyên gia đề ra hai bài học chính:
- Bài học thứ nhất cho thấy tầm quan trọng của việc mã hoá một nguồn tri thứcgiàu có vào trong hệ thống
- Bài học thứ hai có liên quan tới phạm vi của hệ thống Các hệ chuyên gia đượcthiết kế để giải quyết các vấn đề cụ thể, đủ nhỏ thì tốt hơn là giải quyết các vấn đề quárộng lớn
Định nghĩa hệ chuyên gia:
Hệ chuyên gia là một chương trình máy tính được thiết kế để mô hình hoá khả năng giải quyết vấn đề của chuyên gia con người.
Trang 5Chuyên gia con người có hai phần cơ bản: tri thức của chuyên gia và lập luận Từ
đó, hệ chuyên gia cũng có hai phần chính: một cơ sở tri thức (knowledge base) và một
mô tơ suy diễn (inference engine) Hình 1.1 minh hoạ lược đồ cấu tạo hệ chuyên gia
Cơ sở tri thức chứa các tri thức chuyên dụng mức cao về một vấn đề được cung cấpbởi chuyên gia con người Nó bao gồm các sự kiện, luật, khái niệm và các mối quan hệ.Chẳng hạn, nó có thể chứa tri thức của một bác sĩ chuẩn đoán các bệnh về máu Mộtvấn đề đặt ra là làm thế nào để mã hoá các tri thức của các chuyên gia vào cơ sở trithức Điều này chính là đối tượng nghiên cứu của chương 3
Mô tơ suy diễn là bộ xử lý tri thức Nó làm việc với các thông tin có sẵn từ một vấn
đề cho trước, kết hợp với các tri thức có trong cơ sở tri thức để đưa ra các kết luận haycác gợi ý Chương 4 sẽ nghiên cứu kỹ về mô tơ suy diễn
1.3 Phạm vi ứng dụng hệ chuyên gia
Hệ chuyên gia được sử dụng ở rất nhiều lĩnh vực bao gồm nông nghiệp, thươngmại, hoá học, truyền thông, các hệ thống máy tính, giáo dục, điện tử học, môi trường,địa chất học, xử lý ảnh, toán học, y học, khí tượng học
Hệ chuyên gia được chia thành nhiều loại: điều khiển, thiết kế, chuẩn đoán, giảithích, kiểm tra, lập kế hoạch, dự đoán, lựa chọn, mô phỏng
Hệ chuyên gia
Cơ sở tri thức suy diễn Mô tơ
Hình 1.1: Lược đồ hệ chuyên gia
Trang 6CHƯƠNG 2: CẤU TRÚC CỦA HỆ CHUYÊN GIA
Trong chương này, chúng ta sẽ nghiên cứu các nội dung:
Cách giải quyết vấn đề của chuyên gia con người
Cấu trúc hệ chuyên gia
Một số tính chất của hệ chuyên gia
Sự khác biệt giữa chương trình truyền thống và hệ chuyên gia
2.1 Cách giải quyết vấn đề của chuyên gia con người
Trước khi tìm hiểu cấu trúc của một hệ chuyên gia, chúng ta hãy nghiên cứu cáchgiải quyết vấn đề của chuyên gia con người Chuyên gia con người chuyên môn về một
vấn đề nào thì họ sẽ có tri thức về vấn đề ấy Người ta gọi đấy là tri thức lĩnh vực (domain knowledge) Khái niệm "lĩnh vực" ở đây là chỉ vào một vấn đề cụ thể trong
Hình 2.1: Cách giải quyết vấn đề của chuyên gia con người
Trang 72.2 Cấu trúc của hệ chuyên gia
Hệ chuyên gia xử lý vấn đề cũng tương tự như chuyên gia con người Bởi vậy, nóbao gồm những thành phần sau:
Cơ sở tri thức (knowledge base)
Hệ chuyên gia lưu trữ tri thức lĩnh vực của các chuyên gia trong cơ sơ tri thức.Thực chất, cơ sở tri thức là một mô hình của LTM trong hình 2.1 Để có thể lưu trữđược tri thức lĩnh vực trong cơ sở tri thức, cần những kỹ sư xử lý tri thức chuyển trithức của các chuyên gia con người về dạng máy có thể hiểu được Chúng ta gọi đó là
biểu diễn tri thức (knowledge representation) Có rất nhiều kỹ thuật để biểu diễn tri thức Một trong những cách quan trọng là biểu diễn bằng luật (rule) Chẳng hạn:
RULE 1: IF Xe ô tô không khởi động
THEN Có thể có vấn đề ở bộ nạp điệnRULE 2: IF Có thể có vấn đề ở bộ nạp điện
AND Điện thế của ắc quy dưới 10 vôn THEN Hỏng ở ắc quy
Chi tiết về các kỹ thuật biểu diễn tri thức xin hãy xem ở phần sau
Bộ nhớ làm việc (working memory)
Có chứa các sự kiện được phát hiện ra trong một phiên làm việc khi giải đáp về mộtvấn đề nào đó Nó là mô hình cho bộ nhớ ngắn hạn STM
Chuyên gia
con người
Người sử dụng
Bộ thu thập tri
thức
Cơ sở tri thức
Bộ giải thích
Mô tơ suy diễn
Bộ nhớ làm việc
Giao diện người-máy
Hình 2.2: Cấu trúc hệ chuyên gia
Trang 8Trong một phiên làm việc với hệ chuyên gia, người dùng nhập thông tin về vấn đề
mà họ quan tâm vào bộ nhớ làm việc Hệ thống tiến hành so sánh những thông tin nàyvới tri thức có sẵn trong cơ sở dữ liệu nhằm suy diễn ra các sự kiện mới Sau đó, hệthống lấy các sự kiện mới, nhét chúng trở lại bộ nhớ làm việc và bắt đầu cho một suydiễn mới
Mô tơ suy diễn (inference engine)
Là một bộ xử lý so khớp các sự kiện chứa trong bộ nhớ làm việc với tri thức lĩnhvực trong cơ sở tri thức để đưa ra các kết luận cho vấn đề
Sau khi tìm được sự trùng khớp giữa sự kiện và tri thức lĩnh vực, mô tơ suy diễn lấykết luận của luật, đưa vào trong bộ nhớ làm việc rồi tiếp tục tìm kiếm so khớp mới.Chẳng hạn, xét hai luật ở trên, mô tơ suy diễn sẽ tiến hành như sau:
Bước 1:
Hệ chuyên gia hỏi: Xe ô tô không khởi động được à?
Người dùng trả lời: Đúng
Tại đây, hệ chuyên gia thấy trùng khớp với RULE 1 nên nó lấy kết luận của RULE
1 đưa vào bộ nhớ làm việc
Bộ giải thích (explanation facility)
Một đặc điểm nổi bật của hệ chuyên gia là nó có khả năng giải thích quá trình lậpluận của nó Điều này được thực hiện thông qua bộ giải thích
Bộ giải thích giúp ích cho cả người sử dụng lẫn nhà phát triển hệ chuyên gia Nhàphát triển có thể dùng để phát hiện sai sót tri thức của hệ thống còn người dùng có thểhiểu được sự lập luận của hệ thống
Có hai kiểu giải thích có trong bộ giải thích là giải thích "bằng cách nào" (how) và "tại sao" (why)
Giải thích "bằng cách nào" chỉ ra làm cách nào mà hệ thống có được câu trả lời.Chẳng hạn, xét hai luật ở trên Sau khi suy diễn, kết quả thu được là kết luận ở RULE2
Hệ chuyên gia đưa ra kết luận: Hỏng ở ắc quy
Người dùng hỏi: Bằng cách nào mà biết hỏng ở ắc quy?
Trang 9Hệ chuyên gia trả lời: Vì ô tô của bạn không khởi động được, có thể có vấn đề ở
bộ nạp điện Khi tôi thấy điện thế của ắc quy dưới 10 vôn, tôi biết hỏng ở ắc quy
Giải thích "tại sao" chỉ ra tại sao nó lại đưa ra câu hỏi như thế Chẳng hạn:
Hệ chuyên gia hỏi: Xe ô tô không khởi động được à?
Người dùng hỏi: Tại sao lại hỏi như vậy?
Hệ chuyên gia trả lời: Nếu tôi biết xe ô tô không khởi động được, tôi sẽ biếtnguyên nhân là do bộ nạp điện
Giao diện người-máy (interface)
Hỗ trợ cho sự tương tác giữa người sử dụng và hệ chuyên gia Để tạo ra sự thuậntiện cho người dùng, giao tiếp người và máy phải ở dạng ngôn ngữ tự nhiên, gần vớigiao tiếp giữa người với người Muốn có được những thông tin đáng tin cậy từ phíangười dùng, cần phải hưóng sự chú ý của người dùng vào thiết kế của câu hỏi Giaodiện sử dụng đồ hoạ, thực đơn là cần thiết
Bộ thu thập tri thức
Có nhiệm vụ thu nạp tri thức từ phía các chuyên gia con người Sau đó, chuyển cáctri thức này về dạng hệ thống có thể hiểu được
2.3 Một số tính chất của hệ chuyên gia
Tách biệt tri thức khỏi suy diễn
Cơ sở tri thức và mô tơ suy diễn là các bộ phận tách biệt nhau trong hệ chuyên giacho dù chất lượng của hệ phụ thuộc rất nhiều vào chúng Đây là một đặc điểm cho thấy
sự khác biệt giữa chương trình truyền thống và hệ chuyên gia Nhờ có sự tách biệt này
mà việc bảo trì và sửa chữa hệ thống được dễ dàng hơn
Chứa đựng tri thức của chuyên gia
Tri thức trong hệ chuyên gia là chuyên môn của chuyên gia con người Nó bao gồm
cả tri thức lĩnh vực lẫn kỹ năng giải quyết vấn đề của họ
Tri thức chỉ cho một lĩnh vực cụ thể
Hệ chuyên gia hoạt động hiệu quả khi mà các vấn đề mà nó xử lý diễn ra trong mộtphạm vị đủ hẹp Rõ ràng, hệ chuyên gia được thiết kế cho chuẩn đoán bệnh nhiễmtrùng máu khó có thể hoạt động hiệu quả trong lĩnh vực lập kế hoạch tài chính
Lập luận với các kí hiệu
Trang 10Hệ chuyên gia biểu diễn tri thức của nó dưới dạng các kí hiệu Bởi vậy, nó sẽ sửdụng các kí hiệu để tiến hành lập luận giải quyết vấn đề
Lập luận heuristic
Các chuyên gia con người sử dụng kinh nghiệm nhằm giải quyết vấn đề Thông quakinh nghiệm, họ hình thành nên sự hiểu biết sâu sắc vấn đề và giữ nó lại ở dạngheuristic Chẳng hạn, chuyên gia sửa chữa xe ô tô: "Tôi luôn kiểm tra hệ thống nạp điệncủa xe trước tiên"
Tương tự như vậy, hệ chuyên gia sử dụng heuristic để thực hiện những phươngpháp tìm kiếm ngắn gọn cho việc giải quyết vấn đề
Cho phép lập luận không chính xác
Hệ chuyên gia có thể được sử dụng ở những ứng dụng đòi hỏi các lập luận khôngnhất thiết phải chính xác Nguyên nhân là bởi thông tin vào không chính xác, mơ hồ,không có sẵn hay bởi tri thức lĩnh vực không chính xác
Phát triển với độ phức tạp hợp lý
Hệ chuyên gia đủ khả năng giải quyết các vấn đề có độ phức tạp vừa phải, khôngquá khó cũng như không quá dễ Nếu vấn đề quá phức tạp thì nên tách thành các vấn đềnhỏ hơn để giải quyết Thông thường, vấn đề nào mà các chuyên gia con người cầnkhoảng 15 phút để xử lý thành công thì nó phù hợp với hệ chuyên gia
2.4 Sự khác biệt giữa một chương trình truyền thống với hệ chuyên gia
Kỹ thuật lập trình truyền thống tập trung vào những vấn đề như thông tin hoàn toànchính xác và đầy đủ, tạo ra một hệ xử lý dữ liệu lớn, các hệ này có khả năng thực hiệnmột lượng dữ liệu lớn, thực hiện các thuật toán phức tạp nhưng chỉ là những bước thaotác đặt ra để thu được kết luận đúng
Hệ chuyên gia tập trung giải quyết các vấn đề thuộc một lĩnh vực chuyên môn nào
đó, cho ra kết luận tuỳ thuộc vào độ chính xác của dữ liệu vào
Bảng dưới đây so sánh sự khác nhau giữa chúng
Trang 11 Xử lý các số
Sử dụng các thuật toán
Tích hợp dữ liệu và điều khiển
Khó khăn cho việc sửa chữa
Dữ liệu vào là chính xác
Đưa ra kết quả cuối cùng
Giải pháp tối ưu
Xử lý các biểu tượng
Sử dụng heuristic
Tách biệt tri thức và suy diễn
Dễ cho sửa chữa
Thông tin vào không chính xác
Kết quả là gợi ý và giải thích
Giải pháp chấp nhận được
CHƯƠNG 3: BIỂU DIỄN TRI THỨC
Phần trước, chúng ta đã nghiên cứu cấu trúc hệ chuyên gia và nhận ra vai trò quyết
định của tri thức tới chất lượng của hệ chuyên gia: "Tri thức là sức mạnh".
Chương này, chúng ta tiếp tục tìm hiểu những nội dung sau:
Tri thức và phân loại tri thức
Kỹ thuật biểu diễn tri thức
3.1 Tri thức và phân loại tri thức
3.1.2 Phân loại tri thức
Tâm lý học nhận thức đã hình thành vô số các lý thuyết giải thích cách mà conngười sử dụng để giải quyết vấn đề Nó bao gồm loại tri thức mà con người thườngxuyên sử dụng, cách con người tổ chức các tri thức và cách họ sử dụng các tri thức đónhằm giải quyết vấn đề một cách hiệu quả Những nhà nghiên cứu trí tuệ nhân tạo đã sửdụng những kết quả nghiên cứu trên, phát triển chúng để có thể biểu diễn tri thức vàobên trong máy tính Tri thức cơ bản được chia thành năm loại:
Tri thức thủ tục (procedural knowledge): miêu tả cách gì để (how) giải quyết
một vấn đề Nó cung cấp định hướng cho cách thực hiện một cái gì đó Trong hệ
Trang 12chuyên gia, các kiểu tri thức thủ tục được dùng là luật, chiến lược, chương trình nghị sự
và thủ tục
Tri thức mô tả (declarative knowledge): miêu tả cái gì (what) được biết về vấn
đề Nó bao gồm các mệnh đề đơn giản đúng hoặc sai, một dãy các mệnh đề mô tả chitiết một đối tượng hay một khái niệm nào đó
Siêu tri thức (meta-knowledge): là các tri thức giúp hệ thống lấy ra những tri thức
thích hợp Nó còn gọi là tri thức về tri thức (knowledge about knowledge)
Tri thức heuristic (heuristic knowledge): dẫn đường cho tiến trình lập luận Tri
thức này còn được gọi là tri thức bóng (shallow knowledge) Nó dựa vào kinh nghiệm
và tri thức có được nhờ giải quyết những vấn đề trước đó
Tri thức có cấu trúc (structural knowledge): bao gồm các tập luật, đối tượng và
quan hệ giữa các đối tượng Loại tri thức này mô tả mô hình trí tuệ tổng quát của cácchuyên gia con người
Tri thức của các chuyên gia muốn trở thành tri thức của hệ chuyên gia thì cần phảichuyển nó dưới dạng hiểu được Tiếp sau đây, chúng ta sẽ nghiên cứu các kỹ thuật biểudiễn tri thức
3.2 Kỹ thuật biểu diễn tri thức
3.2.1 Sự kiện (fact)
Mọi lý thuyết nhận thức về tổ chức tri thức con người đều coi sự kiện như là cácphần tử cơ bản Sự kiện là một dạng của tri thức mô tả, cho phép một sự hiểu biết vềmột sự kiện hay một vấn đề
Trong trí tuệ nhân tạo và hệ chuyên gia, sự kiện thường được tham chiếu như là
mệnh đề (proposition) Người ta định nghĩa mệnh đề như sau: "Là một khai báo có giá
trị đúng hoặc sai"
Thế giới của chúng ta không trắng cũng không đen Điều đó có nghĩa rằng chúng ta
có thể không biết một sự kiện là hoàn toàn đúng hay hoàn toàn sai Chúng ta chỉ có
được mức độ tin cậy vào sự kiện Người ta gọi đó là sự kiện không chắc chắn
(uncertain fact) Một phương pháp quản lý các thông tin không chắc chắn trong hệ
chuyên gia là sử dụng hệ số chắc chắn CF (certainty factor) CF có giá trị bằng số được
gán cho mỗi mệnh đề để thể hiện mức độ tin cậy của mệnh đề đó
Một khái niệm khác được dùng để biểu diễn sự kiện mơ hồ thường thấy trong các
ngôn ngữ tự nhiên Đó là sự kiện mờ (fuzzy fact) Chẳng hạn, mệnh đề "Người đàn ông
kia cao" có sự mơ hồ khi sử dụng từ "cao" Ngay cả con người cũng vấp phải khó khăn
khi lập luận với sự mơ hồ này May thay, năm 1965, lôgic mờ (fuzzy lôgic) ra đời
đồng thời cung cấp cả phương pháp biểu diễn lẫn lập luận với các thuật ngữ mơ hồ Chitiết về lý thuyết mờ xin xem ở phần sau
3.2.2 Biểu diễn tri thức bằng bộ ba Đối tượng-Thuộc tính-Giá trị O-A-V
Trang 13O-A-V được viết tắt từ ba từ Object-Attribute-Value có nghĩa là Đối tượng-Thuộctính-Giá trị
Một bộ ba O-A-V là một dạng mệnh đề phức hợp Nó chia một mệnh đề ra thành baphần là đối tượng, thuộc tính và giá trị Như vậy, O-A-V dùng để chỉ sự kiện "Đốitượng" với "Thuộc tính" cho trước có "Giá trị" nào đó
Chẳng hạn, ta có mệnh đề "Màu mặt bệnh nhân rất đỏ" O-A-V sẽ được biểu diễnnhư hình 3.1
Đối tượng được biểu diễn trong một O-A-V có thể là một đối tượng vật lý như mộtchiếc xe, một quả bóng hoặc có thể là một đối tượng trừu tượng như tình yêu, thế chấptài sản Thuộc tính là tính chất hay đặc điểm của đối tượng Giá trị chỉ định mức độ củathuộc tính
Trong hầu hết các vấn đề mà hệ chuyên gia giải quyết, các đối tượng lại bao gồmnhiều thuộc tính Hình dưới đây minh hoạ cách biểu diễn nhiều thuộc tính của một đốitượng
3.2.3 Biểu diễn tri thức bằng luật
Luật là một dạng tri thức thủ tục Nó liên kết các thông tin cho trước với một hànhđộng Hành động có thể là xác nhận một thông tin mới hay thực hiện một thủ tục nàođó
Quả bóng
Đường kính Màu
Trọng lượng
Đối tượng Thuộc tính Giá trị
Hình 3.1: O-A-V của mệnh đề "Màu mặt bệnh nhân rất đỏ"
Hình 3.3: Ví dụ quá trình làm việc của hệ chuyên gia dựa trên luật
Trang 14Luật bao gồm một hay nhiều tiền đề ở phần IF và một hay nhiều kết quả ở phầnTHEN Chẳng hạn, ta có luật:
IF Trời mưa
THEN Đường trơn
Một cách tổng quát, một luật có các tiền đề kết nối với nhau bằng AND, OR hoặc
cả hai Các kết luận kết nối với nhau bằng AND Luật cũng có thể chứa thêm ELSE Trong các hệ chuyên gia sử dụng luật để biểu diễn, khi mà phần IF của luật so khớpđược với các thông tin chứa trong bộ nhớ làm việc thì hành động ở phần THEN củaluật được thực hiện Lúc ấy, người ta gọi luật bị cháy Ví dụ hình 3.3 minh hoạ quátrình làm việc của hệ chuyên gia sử dụng luật
A Phân loại luật
Luật được chia thành 5 loại khác nhau được liệt kê dưới đây
IF Xe ô tô không khởi động được
AND Nhiên liệu còn
THEN Kiểm tra bộ nạp điện
- Chiến lược
IF Xe ô tô không khởi động được
THEN Đầu tiên hãy kiểm tra nhiên liệu sau đó kiểm tra bộ nạp điện
Trang 15- Heuristic
IF Xe ô tô không khởi động được
AND Xe ô tô là FORD
THEN Kiểm tra phao
Ngoài ra, người ta cũng có thể chia luật theo bản chất việc giải quyết vấn đề
B Biến của luật
Trong một số ứng dụng, để tránh thiết lập nhiều thao tác tương tự nhau cho một tậpcác đối tượng, người ta sử dụng các biến trong luật Chẳng hạn, ta có luật sau:
THEN Hầu như chắc chắn là lãi suất lên cao
Để biểu diễn độ tin cậy vào luật người ta sử dụng hệ số chắc chắn CF
IF Lạm phát lên cao
THEN Lãi suất lên cao CF=0.8
Như vậy, CF=0.8 biểu diễn cho "Hầu như chắc chắn"
D Siêu luật
Phần trên đã trình bày siêu tri thức là những tri thức về những vấn đề sử dụng vàđiều khiển tri thức lĩnh vực Từ đó, siêu luật là luật mô tả cách sử dụng các luật khác
IF Xe ô tô không khởi động được
AND Bộ nạp điện hoạt động bình thường
Trang 16THEN Sử dụng luật kiểm tra nhiên liệu trong xe
E Tập luật (khối luật)
Qua kinh nghiệm, các chuyên gia con người hình thành một số tập các luật Mỗi tậpluật giải quyết một vấn đề và không thể giải quyết vấn đề khác Một tập luật cho trướcphản ánh kỹ năng mà một chuyên gia có để giải quyết một vấn đề cho trước Sự lựachọn và sử dụng các tập luật khác nhau phản ánh khả năng lập luận của chuyên gia conngười Cần một chiến lược để biết khi nào và làm thế nào để áp dụng chúng
Tóm lại, biểu diễn tri thức bằng luật khá đơn giản và trực quan Có thể suy diễntheo các chiến lược khác nhau như suy diễn tiến, suy diễn lùi, suy diễn hỗn hợp Có thểkiểm tra tính mâu thuẫn giữa các luật Có tính mô đun cao, nghĩa là việc thêm, bớt mộtluật không ảnh hưởng tới các luật khác và cơ chế suy diễn Biểu diễn bằng luật khôngtận dụng được các cấu trúc dữ liệu, năng suất xử lý thấp
3.2.4 Biểu diễn tri thức bằng mạng ngữ nghĩa
Mạng ngữ nghĩa là một phương pháp biểu diễn tri thức sử dụng đồ thị gồm các nút
và các cung Trong đó, các nút biểu diễn các đối tượng và các cung biểu diễn mối quan
hệ giữa các đối tượng
Mạng ngữ nghĩa cung cấp một cách nhìn dựa trên đồ thị thấy được các đối tượng,các thuộc tính và các mối quan hệ của vấn đề Mở rộng ra, nút có thể biểu diễn đốitượng, thuộc tính của đối tượng, hay giá trị của các thuộc tính còn cung biểu diễn quan
hệ giữa các nút
Chẳng hạn, ta có mạng ngữ nghĩa sau đây
Chi m
Bay
Cánh
Đại bàng
Có
Di chuyển
Là
Hình 3.4: Mạng ngữ nghĩa về chim
Trang 17Trong thực tế, tùy theo sự kiện mà biểu diễn sẽ có những dạng quan hệ khác nhau.Dạng quan hệ đặc biệt thường dùng nhất là: quan hệ là "a là b" và quan hệ bao gồm "abao gồm b"
Quan hệ "a là b" nghĩa đối tượng a thuộc vào tập đối tượng được biểu diễn bởi kháiniệm b hoặc tập biểu diễn bởi khái niệm a là tập con của tập đối tượng biểu diễn bởikhái niệm b Quan hệ bao gồm "a bao gồm b", các thông tin cơ bản của đối tượng btruyền lại cho a Như vậy, ta có một cơ chế lan truyền thông tin trên mạng ngữ nghĩa.Phương pháp này có một số ưu điểm Cho phép biểu diễn một cách trực quan các sựkiện và các mối liên hệ giữa chúng Có tính mô đun cao, theo nghĩa các tri thức mớiđược thêm vào hoàn toàn độc lập với các tri thức cũ Có thể áp dụng một số phươngpháp suy diễn trên mạng như cơ chế truyền và thừa hưởng thông tin giữa các đối tượng,cháy trên mạng
Tuy vậy, nó cũng có những hạn chế Không có một phương pháp suy diễn chungcho mọi loại mạng ngữ nghĩa Khó kiểm soát quá trình cập nhập tri thức, dễ dẫn đếnmâu thuẫn trong cơ sở tri thức
3.2.5 Biểu diễn tri thức bằng Frame
Frame lần đầu tiên được đề nghị bởi M.Minsky (1975) dùng để thu thập và biểudiễn tri thức khái niệm trong hệ chuyên gia Nó là sự kết hợp phương pháp biểu diễn
mô tả và biểu diễn thủ tục
Frame có thể được định nghĩa: "Là một cấu trúc dữ liệu dùng để biểu diễn tri thức
có khuôn dạng cho một khái niệm hay đối tượng nào đó"
Cấu trúc của một frame về cơ bản bao gồm 3 thành phần là tên frame, lớp và thuộctính Đi kèm với mỗi thuộc tính là một giá trị tương ứng Hình 3.5 mô tả cấu trúc củaframe
Trang 18Mỗi frame có một trường không bắt buộc Đó là lớp Nếu chúng ta đặt vào khe(slot) tên frame là "Bob" và đặt vào khe lớp "Người" thì chúng ta có quan hệ "Bob làNgười".
3.2.6 Biểu diễn tri thức bằng lôgic
Biểu diễn tri thức bằng lôgic là phương pháp biểu diễn được sử dụng sớm nhất Có
2 kỹ thuật cơ bản nhất là lôgic mệnh đề và lôgic vị từ Chúng đều sử dụng các ký hiệu
để biểu diễn tri thức và lập luận lôgic
Sử dụng phương pháp biểu diễn bằng lôgic có nhược điểm là mức độ hình thức hoácao, dẫn tới khó hiểu, ngôn ngữ vị từ khi xét chương trình, hiệu suất xử lý thấp, sửdụng không hiệu quả các cấu trúc dữ liệu do các tri thức biểu diễn bằng mệnh đề.Mặc dù hiếm khi những nhà thiết kế sử dụng lôgic để xây dựng hệ chuyên gianhưng nó là cơ sở hình thành các ngôn ngữ lập trình trí tuệ nhân tạo Chẳng hạn,PROLOG là một ngôn ngữ lập trình dựa trên lôgic vị từ
Gần đây người ta còn đưa ra thêm một loại lôgic nữa Đó là lôgic mô tả Theo cácchuyên gia, nó tốt hơn 2 loại lôgic trên
Lôgic mệnh đề (propositional logic)
Lôgic mệnh đề biểu diễn và lập luận với các mệnh đề Các mệnh đề có hai giá trịđúng hoặc sai Lôgic mệnh đề dùng các ký hiệu cho các mệnh đề Chẳng hạn, ta có luậtdưới đây:
IF Xe ô tô không khởi động được
AND Nơi làm việc quá xa
THEN Đành phải nghỉ làm hôm nay
Lôgic mệnh đề thiết lập các ký hiệu như sau:
A là "Xe ô tô không khởi động được"
B là "Nơi làm việc quá xa"
C là "Đành phải nghỉ làm hôm nay"
Như vậy, ta có ký hiệu biểu diễn luật trên:
A B C (ký hiệu là toán tử AND)
Ngoài toán tử AND (và) còn có các toán tử OR (hoặc), NOT (phủ định), IMPLIES(suy dẫn), EQUIVALENCE (tương đương)
Một trong những dạng chuẩn được dùng nhiều trong lôgic mệnh đề là chuẩn Horn.Chúng bao gồm các sự kiện và các luật
Các sự kiện được biểu diễn dưới dạng các luật đặc biệt:
q1
q2
Trang 19 qk
Tập {p1, p2, , pn} là giả thiết của quá trình lập luận Các luật dạng chuẩn Horn:p1 p2 pn q
Lôgic vị từ (predicate calculus)
Là một sự mở rộng của lôgic mệnh đề, cho phép biểu diễn tri thức tốt hơn Chẳnghạn, thay vì biểu diễn cả mệnh đề bằng một ký hiệu:
A = "Quả bóng này màu đỏ"
người ta biểu diễn cụ thể hơn mối quan hệ trong tri thức:
likes(john,mary)
Các tham số được dùng để biểu diễn một lớp các đối tượng và các thuộc tính.Chẳng hạn để biểu diễn các mệnh đề "John likes Mary" và "Bob likes Susan" bằng cáchdùng biến:
likes(X,Y)
Trong đó, giá trị của X là john, bob còn của Y là mary, susan
Hàm chỉ ra ánh xạ từ tập này sang một tập khác Chẳng hạn, biểu diễn "Cha củaJack là Bob" và "Mẹ của Mary là Kathy":
Trang 20CHƯƠNG 4: SUY DIỄN
Trong chương này, chúng ta sẽ tìm hiểu các nội dung:
Lập luận của con người
Suy diễn của hệ chuyên gia
4.1 Lập luận của con người
Con người giải quyết vấn đề bằng cách kết nối các sự kiện về một vấn đề cụ thể, sửdụng sự hiểu biết chung về vấn đề đó và từ đó phát hiện ra kết luận một cách lôgic Đógọi là quá trình lập luận Hiểu được cách con người lập luận, làm việc với các thông tin
về một vấn đề cụ thể sẽ giúp cho việc xây dựng quá trình xử lý thông tin trong các hệchuyên gia
Lập luận suy diễn
Con người sử dụng lập luận suy diễn để vạch ra được thông tin mới từ những thôngtin đã biết một cách lôgic Chẳng hạn, ta có:
Quan hệ: Nếu tôi đứng dưới mưa thì tôi bị mưa
Giả thiết: Tôi đứng dưới mưa
Kết luận: Tôi bị mưa
Trang 21Giả thiết: Khỉ ở vườn thú Cleveland thích ăn chuối
Kết luận: Nói chúng, mọi con khỉ đều thích ăn chuối
Lập luận ngược
Lập luận ngược là một dạng lập luận suy diễn nhưng kết luận theo sau bởi thông tin
có sẵn và nó có thể sai Chẳng hạn, ta có:
Quan hệ: Đường ướt nếu trời đang mưa
Giả thiết: Đường ướt
Kết luận: Trời đang mưa à?
Lập luận tương tự
Con người hình thành cho họ một tâm lý nhận thức giải quyết cùng một loạt các đốitượng tương tự nhau thông qua kinh nghiệm Họ tìm ra sự giống nhau, khác nhau củacác đối tượng và từ đó tiến hành lập luận tương tự
Chẳng hạn, con hổ và sư tử đều có bốn chân, đều ăn thịt, đều xuất hiện ở Ấn Độnhưng chúng khác nhau ở màu sắc và sống ở các khu vực khác nhau
Lập luận cảm giác
Con người sử dụng cảm giác để nhanh chóng giải quyết vấn đề Lập luận cảm giácdựa vào phán đoán nhiều hơn là dựa vào lôgic chính xác Kiểu lập luận này chính làdạng heuristic Các heuristic sử dụng trong các hệ chuyên gia giải quyết vấn đề thì gọi
là tìm kiếm heuristic hay còn gọi là tìm kiếm tốt nhất
Lập luận không đơn điệu
Trong nhiều tình huống, con người lập luận bằng cách sử dụng các thông tin tĩnh,nghĩa là trạng thái của sự kiện không thay đổi Đó gọi là lập luận đơn điệu
Tuy nhiên, khi trạng thái của sự kiện thay đổi, con người gặp thêm khó khăn khiphải theo dõi sự thay đổi của thông tin và điều chỉnh những sự kiện phụ thuộc vàonhững thay đổi đó Đó gọi là lập luận không đơn điệu
4.2 Suy diễn của hệ chuyên gia
Hệ chuyên gia thực hiện suy diễn thông qua mô tơ suy diễn Mô tơ suy diễn kết hợpcác sự kiện có trong bộ nhớ làm việc và tri thức có trong cơ sở tri thức để sinh ra thôngtin mới
Mô tơ suy diễn
Hình 4.1: Quy trình suy diễn trong hệ chuyên gia
Trang 22Modus pones làm việc với các tiền đề để suy diễn ra các sự kiện mới
4.2.2 Suy diễn tiến (forward-chaining)
Quá trình giải quyết vấn đề thường bắt đầu bằng việc tập hợp các thông tin Nhữngthông tin này được lập luận để suy diễn ra kết luận lôgic Mô hình như vậy được gọi làsuy diễn tiến Nó tương tự như modus pones trình bày ở trên
Trang 23Từ mô hình trên, ta có thể hiểu quá trình suy diễn tiến như sau: suy diễn tiến là mộtchiến lược suy diễn bắt đầu từ tập những sự kiện đã biết, đưa ra những sự kiện mớibằng cách sử dụng các luật có tiền đề khớp với các sự kiện đã biết và cứ tiếp tục nhưthế cho đến khi đạt được trạng thái đích hay không còn luật nào so khớp với những sựkiện đã biết hoặc những sự kiện được suy ra nữa.
Xung đột
Trong suy diễn tiến, hệ thống kiểm tra các luật theo thứ tự và đốt cháy luật ngay khi
nó thấy được luật này có các tiền đề so khớp với các thông tin đã biết trong bộ nhớ làmviệc Sau đó, quá trình tiếp tục được lặp lại Tuy nhiên, trong hệ thống có thể tồn tạimột số luật có khả năng bị đốt cháy nhưng lại không bị đốt do tính hoạt động tuần hoàncủa hệ thống Điều này suy ra rằng thứ tự của luật là quan trọng trong suy diễn tiến
Ta có 2 luật sau đây
RULE 1: IF Bộ phim "Steelers" sẽ chiếu hôm nay
AND Tôi có 50 ngàn đồng THEN Tôi đi xem bóng đá
RULE 2: IF Bộ phim tôi thích sẽ chiếu hôm nay
AND Tôi có 50 ngàn đồng
THEN Tôi đi xem phim
Giả sử các tiền đề của 2 luật trên đều đúng Chúng ta khi đó có sự xung đột ở cáckết luận "Tôi đi xem bóng đá" hay "Tôi đi xem phim"
Bước 2: lựa chọn Trong số những luật tìm được ở bước trên, chọn ra luật để cháy.Việc chọn lựa dựa vào một số chiến lược Có 6 chiến lược dưới đây được đề nghị
Chọn luật đầu tiên khi so khớp thành công Chiến lược cho thấy tầm quan trọngthứ tự các luật trong cơ sở tri thức
Chọn luật có độ ưu tiên cao nhất Chỉ định mức độ ưu tiên cho từng luật Mức độ
ưu tiên là một con số nào đó biểu diễn mức độ quan trọng của luật
Trang 24 Chọn luật được mô tả rõ ràng nhất Một luật được mô tả rõ ràng sẽ được ưu tiênhơn các luật khác Một luật được xem là rõ ràng hơn các luật khác nếu nó có nhiều tiền
đề hơn
Chọn luật mà thời gian các tiền đề của nó được thêm vào trong bộ nhớ làm việcngắn nhất Theo chiến lược này, chúng ta cần phải sử dụng một thẻ thời gian cho từng
sự kiện trong bộ nhớ làm việc
Không chọn những luật mà nó đã bị đốt cháy
Đốt cháy tất cả các luật để lập luận riêng rẽ Chiến lược này đốt cháy toàn bộ cácluật trong tập luật xung đột nhưng các kết luận của chúng thì lại đưa vào các bộ nhớlàm việc riêng biệt Tiếp đến lập luận trên các bộ nhớ làm việc này để có được các lờigiải khác nhau
Bước 3: thực hiện Đốt cháy luật đã tìm được và đưa kết luận của nó vào trong bộnhớ làm việc
Sử dụng các kỹ thuật xử lý xung đột còn có thể được sử dụng để tạo ra khả năngtìm kiếm heuristic trong hệ thống giúp hệ thống có được các phương pháp tìm kiếm lờigiải thông minh
Ưu điểm của hệ chuyên gia sử dụng suy diễn tiến
- Hệ thống làm việc tốt với các bài toán mang tính tự nhiên
- Có thể cung cấp một số lượng lớn các thông tin mà chỉ cần một số lượng nhỏ dữliệu
- Hệ chuyên gia sử dụng suy diễn tiến thường giải quyết bài toán lập kế hoạch,kiểm tra, điều khiển và diễn giải
Nhược điểm của hệ chuyên gia sử dụng suy diễn tiến
- Nó không nhận ra được những thông tin nào là quan trọng hơn các thông tin khác
- Hệ thống có thể hỏi người dùng những câu hỏi không có quan hệ với nhau
4.2.3 Suy diễn lùi
Suy diễn lùi là một chiến lược suy diễn nhằm cố gắng chứng minh một giả thuyếtbằng cách thu thập các thông tin liên quan Chẳng hạn, người thợ sửa xe ô tô ngờ rằngchiếc xe mà anh ta đang sửa là không thể khởi động được Anh ta sẽ đi tìm chứng cứ đểchứng minh nghi ngờ của anh ta là đúng Bởi thế, anh ta sẽ kiểm tra bộ nạp điện có làmviệc tốt không hay nhiên liệu có còn không
Hệ thống sử dụng chiến lược suy diễn lùi bắt đầu với một đích A cần chứng minh.Đầu tiên, nó kiểm tra bộ nhớ làm việc liệu A đã tồn tại hay chưa Bước này là quantrọng vì có thể cơ sở tri thức đã chứng minh được A rồi Nếu A chưa được chứng minhthì hệ thống sẽ tìm kiếm trong các luật của nó có chứa A ở phần THEN Những luậtchứa A ở kết luận được tìm thấy hợp thành tập luật đích Hệ thống lại tiếp tục kiểm tra
Trang 25các tiền đề của tập có trong bộ nhớ làm việc chưa Nếu chưa có thì các đích mới (gọi làcác đích con) lại cần phải được chứng minh thông qua các luật khác Quá trình trên tiếptục cho đến khi hệ thống phát hiện ra một tiền đề không thể được chứng minh bởi cácluật Người ta gọi tiền đề đó là tiền đề gốc Nếu tiền đề gốc được tìm thấy, hệ thống sẽhỏi người dùng những thông tin liên quan đến nó và sử dụng những thông tin đó để tiếptục quá trình chứng minh.
Giả sử trong cơ sở tri thức có các luật sau:
RULE 1: IF Họng bệnh nhân có dấu hiệu bị nhiễm khuẩn
AND Đối tượng gây nhiễm là khuẩn liên cầu
THEN Họng bệnh nhân bị nhiễm khuẩn liên cầu
RULE 2: IF Họng bị đỏ
THEN Họng bệnh nhân có dấu hiệu bị nhiễm khuẩn
RULE 3: IF Hình thái đối tượng gây nhiễm là hình cầu
AND Sự phát triển của đối tượng gây nhiễm kiểu dây chuyền THEN Đối tượng gây nhiễm là khuẩn liên cầu
Hệ thống bắt đầu từ đích "Họng bệnh nhân bị nhiễm khuẩn liên cầu" Quá trình tìmkiếm lời giải theo hình dưới đây
Như vậy, 3 đích con của lớp cuối cùng đều là tiền đề gốc và cần phải lấy thêmthông tin từ phía người sử dụng
Sổ đích
Họng bệnh nhân bị nhiễm khuẩn liên cầu
Họng bệnh nhân có dấu
hiệu bị nhiễm khuẩn
Đối tượng gây nhiễm là khuẩn liên cầu
Trang 26Hệ thống suy diễn lùi đơn giản bắt đầu suy diễn bằng một đích cho trước và cần ítnhất một đích để hoàn thành một phiên làm việc Tuy nhiên, trong nhiều hệ thống phứctạp hơn có thể cần một chuỗi các đích theo trật tự xác định Người ta gọi đấy là sổ đích.
Hệ thống thực hiện bắt đầu lần lượt từ đích đầu tiên trong sổ đích
Trong một số hệ thống, người ta thường sử dụng các sổ đích phức tạp Chẳng hạn,
ta có sổ đích sau
1 Động vật này là một con chim
1.1 Con chim này là con đại bàng
1.2 Con chim này là con chim sẻ
1.2.1 Con chim sẻ này là con màu vàng
1.2.2 Con chim sẻ này là con màu nâu
Khi hệ thống sử dụng sổ đích thì nó phải tuân theo trật tự đích có trong sổ Điều nàygây cứng nhắc cho hệ thống Bởi vậy, người ta mới đề nghị ra một số biện pháp tăng sựlinh hoạt Một cách là sử dụng các đích do người dùng thiết lập Hệ chuyên gia đượcthiết kế để làm việc được với "người dùng thông minh" Người dùng thông minh là chỉngười dùng mà sẽ cung cấp những thông tin hướng dẫn quá trình suy diễn của hệ thống.Người thiết kế hệ thống sẽ cung cấp một thực đơn các đích cho người dùng chọn Cáchkhác là dùng các đích do luật thiết lập Thực chất đây chính là sử dụng các siêu luật đểhướng dẫn cho quá trình suy diễn
Ưu điểm của hệ chuyên gia sử dụng suy diễn lùi
- Hệ thống làm việc tốt với các bài toán có tính tự nhiên
- Hệ thống làm việc dựa trên một đích cho trước nên nó thường đưa ra các câu hỏi
có liên quan đến nhau
- Trong khi suy diễn tiến cố gắng suy diễn ra bất cứ thông tin nào có thể được từnhững thông tin có sẵn thì suy diễn lùi chỉ sử dụng những thông tin có liên quan tới bàitoán hiện tại
- Hệ thống suy diễn lùi thường làm việc tốt cho các bài toán như chẩn đoán, ra lệnh
và gỡ rối
Trang 27Nhược điểm của hệ chuyên gia sử dụng suy diễn lùi
- Hệ thống sử dụng suy diễn lùi có nhược điểm là nó vẫn sẽ tiếp tục đi theo vết suydiễn cũ trong khi nên bỏ nó và chuyển sang vết suy diễn mới Để giải quyết vấn đề này,người ta sử dụng hệ số tin cậy và các siêu luật
4.2.4 Kết hợp suy diễn tiến và suy diễn lùi
Từ những điểm thuận lợi và bất thuận lợi của 2 chiến lược suy diễn trên, nhiều nhàthiết kế hệ chuyên gia đề nghị sử dụng kết hợp cả 2 kiểu chiến lược Chẳng hạn, mộtbác sĩ khi chẩn đoán sẽ đặt ra một số câu hỏi để hình thành nên các giả thiết Thực tế,các giả thiết này chính là các nghi ngờ hay các đích Quá trình này cũng chính là suydiễn tiến Sau đó, ông ta cố gắng chứng các giả thiết của mình bằng cách hỏi thêm một
số thông tin khác Quá trình này là suy diễn lùi
Các hệ chuyên gia thường kết hợp suy diễn tiến và lùi theo 2 cách Đó là tách biệtcác hệ thống và sử dụng luật thông minh
Tách biệt các hệ thống
Những nhà thiết kế hệ thống ban đầu chia bài toán thành các nhiệm vụ con Ứngvới từng nhiệm vụ con, họ thiết lập ra các hệ chuyên gia cho chúng Điểm thuận lợi làmỗi hệ chuyên gia sẽ có một chiến lược suy diễn duy nhất cho chúng
Như vậy, với vấn đề bác sĩ khám bệnh ở trên người ta sẽ chia bài toán thành 2 phần.Phần đầu là hệ chuyên gia lấy thông tin từ bệnh nhân và thực hiện suy diễn tiến để cóđược các giả thiết Phần sau là hệ chuyên gia sử dụng suy diễn mờ để chứng minh cácgiả thiết đã có là đúng
Sử dụng luật thông minh
Một luật thông minh là luật mà nó sẽ cháy bất cứ khi nào tiền đề của nó so khớp vớicác sự kiện trong bộ nhớ làm việc
Luật thông minh không tham gia vào quá trình suy diễn tiến, lùi mà nó nằm im chođến khi tiền đề của nó xuất hiện trong bộ nhớ làm việc Kết luận của nó có thể trợ giúpcho các luật suy diễn tiến, lùi hoặc có thể kích hoạt các luật thông minh khác điều khiểntiến trình suy diễn
Trang 28Lôgic truyền thống ra đời cách đây hơn 2000 năm bởi Aistotle, thống trị toán học
và các ngành khoa học khác trong một thời gian dài Các mệnh đề của lôgic truyềnthống chỉ duy nhất có 2 giá trị: đúng hoặc sai, có thể biểu diễn đúng là 1 và sai là 0 Trong những năm 1920, xuất hiện một số hệ thống mờ lần đầu tiên được đề nghịbởi Lukasiewicz Ông đã nghiên cứu phương pháp biểu diễn toán học cho các thuật ngữ
"mờ" như cao, thấp, già, trẻ, nóng, lạnh Lukasiewicz phát triển hệ thống lôgic củamình, mở rộng dải giá trị đúng cho mọi số thực nằm trong khoảng từ 0 cho đến 1 Tuy nhiên phải cho đến năm 1965, giáo sư Lotfi Zadeh trường đại học Californiamới mở rộng lý thuyết của Lukasiewicz và đưa ra lý thuyết tập mờ Lý thuyết này sau
đó được phát triển thành toán học mờ và lý thuyết các hệ thống mờ Người Nhật đãnghiên cứu rất sâu sắc lý thuyết tập mờ, ứng dụng lý thuyết tập mờ vào điều khiển mờ
và kết quả họ trở thành một trong những cường quốc về kỹ thuật
Trang 295.2 Biến ngôn ngữ
Lôgic mờ biểu diễn và lập luận với các thuật ngữ mơ hồ xuất hiện trong ngôn ngữ
tự nhiên Trong lôgic mờ, người ta gọi những thuật ngữ mơ hồ này là những biến ngônngữ đôi khi còn gọi là biến mờ
5.3 Định nghĩa tập mờ
Lý thuyết tập hợp truyền thống nhìn nhận thế giới hoặc trắng hoặc đen Một đốitượng chỉ có thể thuộc hay không thuộc một tập cho trước Chẳng hạn, có một tập baogồm những người trẻ Lý thuyết tập hợp truyền thống xác định một biên cho tập ngườitrẻ Những ai từ 10 trở xuống là thuộc tập hợp Những đối tượng thuộc tập hợp đượcgán giá trị là 1, mọi thành viên không thuộc tập hợp có giá trị là 0 Bởi vậy, những ai từ
10 tuổi trở xuống có giá trị là 1 còn từ 11 tuổi trở lên là 0 Hình vẽ sau mô tả tập này
Lý thuyết tập mờ cung cấp một cái nhìn hoàn toàn khác về tập hợp người trẻ Tập
mờ chỉ định giá trị cho từng thành viên giữa nằm từ khoảng 0 đến 1 Chẳng hạn, người
5 tuổi thuộc tập người trẻ có giá trị là 0.9 trong khi người 13 tuổi có giá trị là 0.1 Hình
vẽ dưới đây mô tả tập mờ người trẻ
Trang 30Rõ ràng, qua 2 hình trên ta thấy được sẽ khác biệt rất rõ ràng giữa lý thuyết tập hợptruyền thống và lý thuyết tập mờ Từ đó, ta đi đến khái niệm tập mờ.
Trang 31Từ hình vẽ trên, ta thấy những người có chiều cao là 5.5 feet thuộc vào tập người cóchiều cao trung bình với hàm thuộc là 1, thuộc vào tập người cao và người thấp vớihàm thuộc là 0.3.
Một phương pháp khác cũng tương tự như trên nhưng thay vì hỏi nhiều người,chúng ta chỉ hỏi một chuyên gia
Phương pháp phát triển gần đây được đề nghị bởi Kosko (1992) dựa trên mạng ron thường được sử dụng trong các ứng dụng điều khiển
trong đó ai = A(xi)
Người ta có thể biểu diễn tập mờ ở dạng rõ ràng hơn:
Chẳng hạn, biểu diễn tập mờ người Cao trong hình 5.3 ở trên:
Trang 32Toán tử giãn (hơn/kém)
Toán tử giãn biểu diễn cho "một chút" có tác dụng làm tăng độ thuộc của các phần
tử trong tập mờ
5 0 )
Toán tử tăng cường (quả thực)
Toán tử tăng cường làm tăng nếu độ thuộc trên 0.5 và làm giảm nếu độ thuộc dưới0.5
(5.11)
Rất cao
Rất thấp
Rất trung bình
4 5 6 7 Chiều cao (feet)
Hình 5.4: Các tập mờ cho chiều cao với gia tử "rất"
2 )
( _CUONG A ( x ) 1 2 ( 1 A( x ))
nếu 0 A(x) 0.5nếu 0.5
A(x) 1
Trang 33Toán tử cực co (rất rất)
Toán tử này mở rộng toán tử co được biểu diễn:
n A
Trang 34Với một tập mờ A cho trước, phủ định của nó được định nghĩa:
5.8 Kết hợp phép toán trên tập mờ với các tác động của các trạng từ
Giả sử ta có tập mờ A là tập Người_Cao Bằng các phép tính trên tập mờ và các gia
tử ngôn ngữ, chúng ta có thể thiết kế đươc tập B là tập Người_Không_Rất_Cao
2))((1)
Trang 35CHƯƠNG 6: SUY DIỄN MỜ
Hệ chuyên gia mờ cũng như các hệ chuyên gia khác Nó cũng cần một mô tơ suydiễn cho mình Trong phần này, chúng ta xét những nội dung:
Mệnh đề mờ được biểu diễn thông qua biến ngôn ngữ và giá trị của biến ngôn ngữ
đó Trong ngôn ngữ tự nhiên có vô số mệnh đề mờ như "nhiệt độ nóng", "độ cao trungbình", "tốc độ từ từ"
Tổng quát, mệnh đề mờ được biểu diễn là:
IF Góc tay ga quay lớn THEN Xe đi nhanh
Tổng quát, luật mờ có dạng sau:
IF X là A THEN Y là B
Chẳng hạn, với luật mờ dưới đây ta có biểu diễn:
Trang 36IF Nhiệt độ của hệ thống thấp THEN Áp suất của hệ thống thấp
Chúng ta sẽ biểu diễn luật mờ này Chọn các tập vũ trụ cho luật mờ:
U = {Nhiệt độ của hệ thống} = {Thấp, Kém trung bình, Hơn trung bình, Cao} = {u1, u2, u3, u4}
V = {Áp suất của hệ thống} = {Thấp, Kém trung bình, Trung bình,
Hơn trung bình, Cao} = {v1, v2, v3, v4, v5}Tập mờ A biểu diễn sự kiện "Nhiệt độ của hệ thống thấp" dạng vector đơn giản:
A = (1, 0.6, 0, 0)
Tập mờ B biểu diễn sự kiện "Áp suất của hệ thống thấp":
B = (1, 0.8, 0.1, 0 0}
6.2 Suy diễn mờ
Hệ chuyên gia mờ lưu trữ các luật mờ IF A THEN B, trong đó A và B là những tập
mờ, dưới dạng quan hệ (A, B) vào các ma trận M Thực chất, ma trận M thực hiện ánh
xạ tập mờ A vào tập mờ B Người ta gọi mối liên kết mờ này là bộ nhớ liên kết mờFAM Một FAM ánh xạ một tập mờ vào một tập mờ khác Đó là quá trình suy diễn mờ.Trước khi xem xét các chiến lược suy diễn mờ, chúng ta hãy nghiên cứu phép nhân mộtvector với một ma trận trên lý thuyết tập mờ
6.2.1 Phép nhân vector và ma trận trên tập mờ
Giả sử có một vector X và một ma trận A Gọi vector tích của vector X và ma trận
A là Y Theo lý thuyết nhân vector và ma trận cổ điển, ta có:
y
1
(6.2)
Theo lý thuyết tập mờ, phép nhân giữa một vector và một ma trận lại sử dụng toán
tử hợp thành Ký hiệu là dấu tròn "" Toán tử này thực hiện các phép max và min đểnhân ma trận và vector Phép min thay thế cho phép nhân ở trên còn phép max thay chophép tính tổng
Giả sử có luật IF A THEN B Ta sẽ có 2 tập mờ A và B được định nghĩa lần lượttrên X và Y A và B được biểu diễn ở dạng vector đơn giản như sau:
A = (a1, a2, , an) với ai = A(xi)
B = (b1, b2, , bn) với bi = B(xi)
Khi đó, phép nhân vector A với ma trận M được vector B:
Trang 37trong đó
bj = max{min(ai,mij)}
Chẳng hạn, ta có vector A = (0.2, 0.4, 0.6, 1) và ma trận M là:
Theo công thức trên ta sẽ có vector B = (0.6, 0.6, 05)
6.2.2 Suy diễn max-min
Người ta sử dụng toán tử suy diễn min trong chiến lược suy diễn max-min đượcbiểu diễn như sau:
trong đó mij là hệ số ma trận M ứng vị trí i và j, ai là hệ số vector của tập mờ A và bj là
hệ số vector của tập mờ B
Để hiểu rõ hơn, ta quan sát ví dụ sau Gọi X là tập vũ trụ biểu diễn "nhiệt độ" và A
là tập mờ được định nghĩa trên X biểu diễn "nhiệt độ bình thường" Gọi Y là tập vũ trụbiểu diễn "vận tốc" và B là tập mờ được định nghĩa trên Y biểu diễn "vận tốc trungbình" Ta có mối quan hệ giữa chúng theo luật:
IF Nhiệt độ bình thường THEN Vận tốc trung bình
Rõ ràng, luật trên có dạng là IF A THEN B Đồng thời, ta có vector biểu diễn haitập mờ:
Nhiệt độ bình thường = (0/100, 0.5/125, 1/150, 0.5/175, 0/200)
Vận tốc trung bình = (0/10, 0.6/20, 1/30, 0.6/40, 0/50)
Từ đó, ta có được M dựa trên đẳng thức trên mij = min(ai, bj) Chẳng hạn, m00 =min(a0,b0) = min(0, 0) = 0.0
Như vậy, chúng ta đã có được ma trận M để làm nhiệm vụ suy diễn Nếu biết vector
A thì chúng ta có thể biết được vector B thông qua M
Chẳng hạn, có tập con biểu diễn giá trị rõ đọc vào là nhiệt độ ở 125 độ được A':
M = 0.1 0.6 0.8
0.6 0.8 0.60.8 0.6 050.0 0.5 0.5
M = 0.0 0.0 0.0 0.0 0.0
0.0 0.5 0.5 0.5 0.00.0 0.6 1.0 0.6 0.00.0 0.5 0.5 0.5 0.00.0 0.0 0.0 0.0 0.0
Trang 38mờ "nhiệt độ trung bình" Từ đó, tính theo ma trận M có B' = (0, 0.5, 0.5, 0.5, 0)
Một cách khác cho phép tính toán B' mà không cần dùng tới ma trận M Trongnhiều ứng dụng thực tế của các hệ lôgic mờ, ngoài sử dụng các giá trị của tập rõ xk,người ta còn sử dụng trực tiếp các giá trị mờ A(xk) với tập mờ B
6.2.3 Suy diễn max-product
Suy diễn max-product sử dụng toán tử kéo theo dưới đây để thực hiện suy diễn
Trang 396.3 Các luật nhiều tiền đề
Phần trước chúng ta đã nghiên cứu quá trình suy diễn trên các luật một tiền đềdạng:
IF A THEN B
Nhưng với các luật nhiều tiền đề:
IF A AND B THEN C
thì có thể tính được ma trận M để suy diễn được không?
Kosko đã đưa ra một giải pháp cho câu hỏi trên Giả sử tập mờ A được định nghĩatrên tập vũ trụ X, tập B trên Y và tập C trên Z Mỗi suy diễn tiến hành trên từng ma trận
M riêng biệt thể hiện mối quan hệ giữa từng tiền đề và kết luận (MAC và MBC)
Đọc vào
Luật A B
Hình 6.2: Suy diễn max-product
Trang 40C' = [A' MAC] [B' MBC ] = CA' CB' (6.9)
và nếu là OR:
Trong trường hợp đầu vào là các giá trị rõ thì có thể tính theo một cách đơn giảnhơn Gọi giá trị nhận được tại tập A là xi và giá trị nhận được tại B là yj tương ứng cócác độ thuộc là ai và bj Quá trình tính toán theo bảng dưới đây:
6.4 Khử mờ
Sau khi suy diễn từ tập mờ A' (bắt nguồn từ A) thu được tập mờ B', chúng ta cần
chuyển tập mờ B' thành giá trị rõ defuz(B') Đó là quá trình khử mờ Dưới đây trình bày
một số phương pháp khử mờ
6.4.1 Phương pháp cân bằng trọng tâm
Phương pháp này được dùng nhiều nhất
i i A
x
x x B
defuz
1
1
)(
)
()
'(
x B
trong đó B'(xi1) = B'(xi2) = = B'(xin) B'(x) với mọi x
Như vậy, defuz(B') là trung bình cộng các giá trị mờ lớn nhất