Mục tiêu ban đầukhi xây dựng hệ chuyên gia chính là để hỗ trợ khi mà ta không có chuyên giabên cạnh, đó là nhờ cơ sở tri thức mà hệ chuyên gia sử dụng là những tri thứccủa các chuyên gia
Trang 1BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
- -BÀI TẬP LỚN Môn: Hệ Chuyên Gia
Đề Tài: Xây dựng hệ chuyên gia sử dụng suy diễn mờ và ứng
dụng trong điều khiển máy giặt.
Giảng viên HD: Th.S Trần Hùng Cường
Lớp: ĐH CNTT4-K12
Thực hiện: Nguyễn Cảnh Nguyên
Hà nội: ngày 10 tháng 11 năm 2020
Trang 2Mục lục
LỜI MỞ ĐẦU 4
Chương 1: Tổng quan về Hệ chuyên gia 5
1 Tổng quan về Hệ chuyên gia 5
1.1 Hệ chuyên gia là gì? 5
1.2 Đặc trưng và ưu điểm của hệ chuyên gia 5
1.3 Các lĩnh vực ứng dụng của hệ chuyên gia 6
1.4 Cấu trúc của hệ chuyên gia 7
1.5 Một số mô hình kiến trúc hệ chuyên gia 9
2 Cơ sở tri thức 10
2.1 Phân biệt tri thức và dữ liệu 10
2.2 Phân loại tri thức 12
2.3 Các cấp độ tri thức 13
2.4 Các phương pháp biểu diễn tri thức 14
3 Mô tơ suy diễn 22
3.1 Cơ chế suy diễn 22
3.2 Cơ chế điều khiển 24
Chương 2: Logic mờ 28
2.1 Lý thuyết tập mờ 28
2.1.1 Tập mờ 28
2.1.2 Các phép toán trên tập mờ 29
2.2 Các quan hệ và suy luận xấp xỉ, suy diễn mờ 32
2.2.1 Quan hệ mờ 32
2.2.2 Suy luận xấp xỉ và suy diễn mờ 34
Trang 32.3 Bộ mờ hoá 35
2.4 Hệ luật mờ 35
2.5 Động cơ suy diễn 36
2.6 Bộ giải mờ 37
Chương 3: Xây dựng bài toán ứng dụng 39
3.1 Hệ chuyên gia và bài toán dự đoán lượng thuốc cần cấp cho bệnh nhân 39
3.2 Mô tả cách áp dụng thuật toán vào bài toán cụ thể 39
3.3 Thiết kế một số giải thuật 47
3.4 Cài đặt chương trình 48
3.4.1 Môi trường cài đặt 48
3.4.2 Giao diện chương trình 49
3.4.3 Mã nguồn chương trình 49
3.4.4 Chạy chương trình 57
KẾT LUẬN 58
TÀI LIỆU THAM KHẢO 59
Trang 4LỜI MỞ ĐẦU
Hệ chuyên gia
(Expert System)-một lĩnh vực ứng dụng của trí tuệ nhân tạo, cụ thể hơn
thì hệ chuyên gia sử dụng các tri thức của những chuyên gia để giải quyết cácvấn đề (bài toán) khác nhau thuộc mọi lĩnh vực
Trí tuệ nhân tạo nói chung và hệ chuyên gia nói riêng đã và đang ngàycàng phát triển để dáp ứng nhu cầu của con người Một cuộc sống càng hiệnđại thì lượng dữ liệu càng lớn hơn, yêu những phương pháp xử lý phức tạphơn, khi mà nhân lực con người thì chỉ có giới hạn, thì hệ chuyên gia càngcho thấy khả năng của nó Là chương trình máy tính nhưng lại có khả nănggiải quyết được những bài toán của chuyên gia con người Mục tiêu ban đầukhi xây dựng hệ chuyên gia chính là để hỗ trợ khi mà ta không có chuyên giabên cạnh, đó là nhờ cơ sở tri thức mà hệ chuyên gia sử dụng là những tri thứccủa các chuyên gia đã được chuẩn hóa và cài đặt, mà nhờ đó có thể giải quyếtđược những bài toán cần phải tham khảo ý kiến từ các chuyên gia con người
Dù chưa có khả năng thay thế hoàn toàn cho các chuyên gia ở nhiều lĩnh vựcnhưng nếu có một cơ sở tri thức đủ tin cậy, có khả năng suy diễn được chứngthực bởi chuyên gia thì hệ chuyên gia vẫn là một nguồn tham khảo tốt và hỗtrợ đắc lực cho con người trong cuộc sống
Với bài toán dự điều khiển máy giặt, một bài toán thực tiễn rất phù hợpcho sinh viên áp dụng những điều đã học vào thực tế Điều khiển máy giặt tốtgiúp người dùng tối ưu được lượng nước sạch – thứ sẽ rất khan hiếm trongtương lai mà vẫn giặt đồ sạch và hiệu quả Dựa trên các thông số đầu vào mà
em đã xây dựng thành công một hệ chuyên gia điều khiển máy giặt dựa vàothông số cụ thể ở đây là độ bẩn quần áo, chất liệu vải, lượng quần áo cần giặt.Trong quá trình thực hiện đề tài có thể vẫn còn có nhiều thiếu sót, mongthầy tiếp tục góp ý giúp em hoàn thiện tốt hơn Em xin chân thành cảm ơn
Trang 5Người dùng
Hệ thống giao tiếp Cơ sở tri thức
Máy suy diễn
Chương 1: Tổng quan về Hệ chuyên gia
1 Tổng quan về Hệ chuyên gia
1.1 Hệ chuyên gia là gì?
Hệ chuyên gia là một hệ thống chương trình máy tính chứa các thông tin,tri thức và các quá trình suy luận về một lĩnh vực cụ thể nào đó để giải quyếtcác vấn đề khó hoặc bài toán đòi hỏi các chuyên gia con người Nói một cáchkhác hệ chuyên gia là dựa trên tri thức của các chuyên gia con người giỏi nhấttrong lĩnh vực nhất định
Tri thức (knowledge) trong hệ chuyên gia được thu thập và chuẩn hóadựa trên tri thức, hiểu biết các chuyên gia trong ngành
Mức độ hiệu quả của một hệ chuyên gia phụ thuộc vào kích thước vàchất lượng của cơ sở tri thức mà hệ đó có được
Một hệ chuyên gia chỉ đặc trưng cho một lĩnh vực vấn đề cụ thể, trong yhọc, tài chính, khoa học hay công nghệ, vv…, mà không phải là cho mọi lĩnhvực vấn đề nào
Ví dụ: hệ chuyên gia về lĩnh vực y học để phát hiện các căn bệnh lâynhiễm sẽ có nhiều tri thức về một số triệu chứng lây bệnh, lĩnh vực tri thức yhọc bao gồm các căn bệnh, triệu chứng và chữa trị
Hoạt động của một hệ chuyên gia dựa trên tri thức được minh họa như sau:
1.2 Đặc trưng và ưu điểm của hệ chuyên gia
Hệ chuyên gia có 4 đặc trưng cơ bản:
Trang 6- Hiệu quả cao: Khả năng trả lời với mức độ tinh thông bằng hoặc caohơn so với chuyên gia (người) trong cùng lĩnh vực.
- Thời gian trả lời thỏa đáng: Thời gian trả lời hợp lý, bằng hoặc nhanhhơn so với chuyên gia (người) để đi đến cùng một quyết định
- Độ tin cậy cao: Không thể xảy ra sự cố hoặc giảm sút độ tin cậy khi sửdụng
- Dễ hiểu: Hệ chuyên gia giải thích các bước suy luận một cách dễ hiểu
và nhất quán
Những ưu điểm của hệ chuyên gia:
- Phổ cập: Là sản phẩm chuyên gia, được phát triển không ngừng vớihiệu quả sử dụng không thể phủ nhận
- Khả năng giảng giải: Câu trả lời với mức độ tinh thông được giảng giải
rõ ràng, chi tiết, dễ hiểu
- Khả năng trả lời nhanh
- Tính ổn định, suy luận có lý và đầy đủ mọi lúc mọi nơi
- Trợ giúp thông minh như một người hướng dẫn
- Có thể truy cập như là một cơ sở dữ liệu thông minh
1.3 Các lĩnh vực ứng dụng của hệ chuyên gia
Tính đến thời điểm này, hàng trăm hệ chuyên gia đã được xây dựng vàbáo cáo thường xuyên trong các tạp chí, sách báo và hội thảo khoa học Ngoài
Trang 7ra còn các hệ chuyên gia được sử dụng trong các công ty, các tổ chức quân sự
mà không được công bố vì lí do bảo mật
Dưới đây là một số lĩnh vực ứng dụng diện rộng của các hệ chuyên gia:Lĩnh vực Ứng dụng diện rộng
Cấu hình Tập hợp thích đáng những thành phần của một hệ
thống theo cách riêngChẩn đoán Lập luận dựa trên những chứng cứ quan sát đượcTruyền đạt Dạy học kiểu thông minh sao cho sinh viên có thể hỏiGiải thích Giải thích những dữ liệu thu nhận được
Kiểm tra So sánh dữ liệu thu lượm được với chuyên môn để
đánh giá hiệu quảLập kế hoạch Lập kế hoạch sản xuất theo yêu cầu
Dự đoán Dự đoán hậu quả từ một tình huống xảy ra
Chữa trị Chỉ định cách thụ lý một vấn đề
Điều khiển Điều khiển một quá trình, đòi hỏi diễn giải, chẩn
đoán, kiểm tra, lập kế hoạch, dự đoán và chữa trị1.4 Cấu trúc của hệ chuyên gia
Một hệ chuyên gia kiểu mẫu gồm các thành phần cơ bản sau :
Trang 8 Giao diện người, máy: Thực hiện giao tiếp giữa hệ chuyên gia và người
sử dụng Nhận các thông tin từ người dùng (các câu hỏi, các yêu cầu về lĩnhvực) và đưa ra các lời khuyên, các câu trả lời, các giải thích về lĩnh vực đó
Bộ giải thích: Giải thích các hoạt động của hệ khi có yêu cầu của người
sử dụng
Bộ thu nạp tri thức: Làm nhiệm vụ thu nhận tri thức từ chuyên gia conngười, từ kỹ sư tri thức và cả người sử dụng thông qua các câu hỏi và yêu cầucủa họ, sau đó lưu trữ vào cơ sở tri thức
Cơ sở tri thức: Lưu trữ, biểu diễn các tri thức trong lĩnh vực mà hệ đảmnhận, làm cơ sở cho các hoạt động của hệ Cơ sở tri thức bao gồm các sự kiện
và các luật
Trang 9 Mô tơ suy diễn: Làm nhiệm vụ sử lý và điều khiển các tri thức đượcbiểu diễn trong cơ sở tri thức nhằm đáp ứng các câu hỏi, các yêu cầu củangười sử dụng.
(*) Để thực hiện được các công việc của các thành phần trên trong cấu
trúc hệ chuyên gia phải có một hệ điều khiển và quản lý việc tạo lập, tích lũytri thức cho lĩnh vực hệ đảm nhận gọi là “Hệ quản trị cơ sở tri thức” Hệ quảntrị cơ sở tri thức thực chất là quản lý và điều khiển công việc của Bộ thu nạptri thức, Bộ giải thích, Mô tơ suy diễn Nó phải đảm bảo các yêu cầu :
- Giảm dư thừa tri thức, dữ liệu
- Tính nhất quán và phi mâu thuẫn của tri thức
- Tính toàn vẹn và an toàn
- Giải quyết các vấn đề cạnh tranh
- Chuyển đổi tri thức
- Ngôn ngữ xử lý tri thức
1.5 Một số mô hình kiến trúc hệ chuyên gia
1.5.1 Mô hình J.L.Ermine
Trang 101.5.2 Mô hình C.Ernest
1.5.3 Mô hình E.V.Popov
2 Cơ sở tri thức
2.1 Phân biệt tri thức và dữ liệu
Chúng ta có thể dựa vào một số đặc trưng sau để phân biệt qui ước trithức và dữ liệu:
Trang 11Khả năng tự giải thích nội dung : Dữ liệu đưa vào máy tính không tựgiải thích nổi, đôi khi còn được mã hóa cho ngắn gọn để dễ cài đặt trong máy.Chỉ có người lập trình đó mới có thể hiểu được nội dung, ý nghĩa của dữ liệu,nhưng tri thức có thể tự giải thích nội dung của mình với người sử dụng bấtkỳ.
Tính cấu trúc : Một trong những đặc tính cơ bản của hoạt động nhậnthức của con người đối với thế giới xung quanh là khả năng phân tích cấu trúccủa các đối tượng Tri thức được đưa vào máy cũng cần có khả năng tạo rađược một sự phân cấp giữa các khái niệm và mối quan hệ giữa chúng
Tính liên hệ : Ngoài các quan hệ về cấu trúc trong mỗi tri thức (kháiniệm, quá trình, hiện tượng, sự kiện) giữa các đơn vị tri thức còn có nhiều mốiliên hệ khác (không gian, thời gian, nhân quả…) Một số nghiên cứu đã chỉ ra
số các liên hệ cơ bản giữa các sự kiện xấp xỉ 200 lần Một cơ sở tri thức đượckết hợp với số liên hệ cơ bản này có thể mô tả và biểu diễn được hầu hết mọivấn đề mà chúng ta quan tâm
Tính chủ động : Như chúng ta đã thấy, dữ liệu có vai trò bị động vì nóphụ thuộc vào sự khai thác của chương trình cụ thể
Trong xã hội loài người khi hoạt động bất kỳ ở đâu và ở trong lĩnh vựcnào thì con người bao giờ cũng bị điều khiển bằng chính tri thức (vốn hiểubiết) của mình Nhờ có tri thức mà con người đã hình thành mục tiêu và cáchành vi để thực hiện mục tiêu đó Quá trình này luôn đi kèm với sự bổ sungtri thức và khắc phục sự mâu thuẫn giữa các tri thức để đi đến hoàn thiện dần
cơ sở tri thức trong mỗi người
Đối với các tri thức biểu diễn trong máy cũng vậy, chúng chủ độnghướng người sử dụng biết khai thác tri thức Đó chính là quá trình kích hoạttri thức được thể hiện trong các hệ chuyên gia được xây dựng trên các cơ sởtri thức biểu diễn ở mức cao có khả năng tiếp nhận, tinh chế, tự hoàn thiệnngay trong quá trình hoạt động của hệ Tính chủ động của tri thức còn thể
Trang 12hiện sinh động thông qua các ngôn ngữ lập trình trí tuệ nhân tạo như Lisp,Prolog…ở đó không còn có sự phân biệt rõ ràng giữa dữ liệu và thủ tục.
2.2 Phân loại tri thức
Tri thức tồn tại dưới 2 dạng cơ bản:
Ví dụ: Khẳng định “Việt Nam là đất nước tươi đẹp” Đây là một khẳngđịnh bất biến, không phụ thuộc vào tình huống, không gian và thời gian Cáctri thức phụ thuộc không gian và thời gian đòi hỏi những mô hình biểu diễnđặc biệt, cho phép thể hiện các tương quan giữa các sự kiện, quá trình khônggian và thời gian
Ngoài ra các tri thức mô tả còn cho phép miêu tả các mối liên hệ, cácràng buộc giữa các đối tượng, các sự kiện và các quá trình Ví dụ: “Tôi muốnmua bút” miêu tả mối quan hệ giữa đối tượng “tôi” và “bút” thông qua quan
hệ “muốn mua”
2.2.2 Tri thức thủ tục
Cho ta những phương pháp cấu trúc tri thức, ghép nối và suy diễn các trithức mới từ những tri thức đã có Các tri thức loại này tạo nên cơ sở của kỹnghệ xử lý tri thức
Trang 13Một số thủ tục tri thức cơ bản:
- Tổng hợp tri thức: Suy diễn, Quy diễn, Quy nạp
- Học tự động: 2 cách suy diễn logic thường được sử dụng trong các
hệ thống là:
Modus Ponens
A , A→ B B
Nghĩa là nếu A đúng, A suy ra B thì B cũng đúng
Tri thức động phụ thuộc vào tình huống không gian và thời gian
Các tri thức mô tả, tri thức thủ tục, tri thức điều khiển không phụ thuộcvào yếu tố không gian, thời gian được gọi là tri thức tĩnh Các tri thức loại nàytạo nên phần lõi trong các cơ cấu trí thức Nguồn các cơ cấu trí thức nàythường phát sinh từ các tài liệu chuyên môn các nguyên lý chung của khoahọc Ví dụ : “Nếu một đường thẳng vuông góc với một trong hai đường thẳngsong song thì nó vuông góc với đường thẳng còn lại”
Tuy vậy, có những tri thức lại phụ thuộc vào yếu tố lịch sử, thông quacác tham số thời gian và không gian có thể xuất hiện tường minh hoặc khôngtường minh trong các phát biểu Chẳng hạn, phát biểu: “Việt Nam không phải
là thành viên của tổ chức WTO” chỉ đúng ở thời điểm trước năm 2008, cònhiện nay Việt Nam đã gia nhập tổ chức WTO Chính yếu tố đó, mà quá trìnhsuy diễn trong các cơ sở tri thức được phụ thuộc không gian, thời gian có thểgiao hoán hay không giao hoán bộ phận, đơn điệu hay không đơn điệu
Trang 14Tri thức bất định, tri thức không đầy đủ
Trong nhiều trường hợp các tri thức có thể đúng hoặc sai Tuy vậy trongthực tế ta gặp phải các phát biểu không phải lúc nào cũng xác định đượcchúng đúng hay sai Ví dụ: “Trời có thể mưa”, trong trường hợp này khôngthể quyết định 100% là trời mưa hay không mưa; Các tri thức không chínhxác là các mệnh đề phát biểu mà giá trị chân lý của chúng không thể chỉ ramột cách chính xác, tương ứng với thang đo quy ước Ví dụ: “Anh ta caokhoảng 1m70”
Cũng có thể xuất hiện các tri thức không đầy đủ trong các phát biểu, các
mô tả Ví dụ: “Thông thường nếu anh ta đi thì nói chung chị ấy cũng đi” , đây
là phát biểu bất định, song chỉ có tác dụng nếu biết được một chút về sự kiện
“anh ta có đến hay không”
Nói chung, các tri thức bất định, không chính xác và không đầy đủ xuấthiện là do trong các phát biểu, người ta sử dụng các yếu tố ngôn ngữ không rõràng, như : có thể, có lẽ, khoảng, nói chung…Một trong những cách tiếp cận
để xử lý các loại tri thức trên là sử dụng cách tiếp cận lý thuyết mờ Các lýthuyết lập luận xấp xỉ đã và đang được quan tâm, nghiên cứu rất nhiều
2.4 Các phương pháp biểu diễn tri thức
Biểu diễn tri thức nhờ logic
Dựa vào các khái niệm cơ bản về logic mệnh đề và logic vị từ, với một
số bài toán, các trạng thái được mô tả qua các biểu thức logic Khi đó bài toánđược phát biểu lại dưới dạng :
1 Chứng minh : Từ GT 1 ¿ GT 2 ¿ … ¿ GT m suy ra mộttrong các kết luận : KL 1 ,…,KL n
Ở đây: GT i ,KL j là các biểu thức logic (mệnh đề hoặc vị từ)
2 Tìm phép gán θ cho các biến tự do sao cho từ GT 1 ,…,GT m
suy ra một trong các kết luận KL 1 ,…,KL n
Cơ sở tri thức bằng logic mệnh đề: Cơ sở tri thức gồm 2 phần :
- Các sự kiện
Trang 15Các luật ở dạng chuẩn Horn: p 1∧ ∧ ¿ ¿ p n→ q
Cơ sở tri thức bằng logic vị từ: Cơ sở tri thức được cấu tạo bởi 2phần
- Tập các sự kiện F
- Tập các luật R
Các sự kiện được cho bởi Δ→ q i (x,y,z,…), I = 1,k ,ở đây q i
(x,y,z,…) là các vị từ phụ thuộc vào các hạng thức x, y, z,…
Các luật có dạng p 1∧ ∧ ¿ ¿ p n → q(.)
Logic vị từ cho phép biểu diễn hầu hết các khái niệm và các phát biểuđịnh lý, định luật trong các bộ môn khoa học Cách biểu diễn này khá trựcquan và ưu điểm căn bản của nó là có một cơ sở lý thuyết vững chắc chonhững thủ tục suy diễn nhằm tìm kiếm và sản sinh ra những tri thức mới, dựatrên các sự kiện và các luật đã cho
Logic vị từ và logic mệnh đề có các ưu điểm sau
- Là ngôn ngữ biểu diễn kiểu mô tả
- Có khả năng suy diễn đối với các cơ chế quen thuộc: Pronens &Tollens
- Khá trực quan với người sử dụng
- Khá gần gũi về cú pháp với các lệnh lập trình logic, chẳng hạn nhưPROLOG
- Có thể dùng để mô tả cấu trúc mô hình và xử lý động mô hình
- Có thể kiểm tra tính mâu thuẫn trong cơ sở tri thức
Trang 16- Tính mô đun cao, do vậy các tri thức có thể thêm bớt sửa đổi khá độclập với nhau và các cơ chế suy diễn.
Một số điểm yếu của logic vị từ và logic mệnh đề
- Mức độ hình thức hóa cao, dẫn tới khó hiểu ngữ nghĩa của các vị từ khixét chương trình
- Năng xuất xử lý thấp Một trong những khó khăn cơ bản của quá trìnhsuy diễn là cơ chế hợp và suy diễn vét cạn
- Do các tri thức được biểu diễn nhờ các vị từ, nên ưu thể sử dụng cấutrúc dữ liệu không được khai thác triệt để
Biểu diễn tri thức nhờ mạng ngữ nghĩa
Trong phương pháp này, người ta sử dụng một đồ thị gồm các nút và cáccung nối các nút để biểu diễn tri thức Nút dùng để thể hiện các đối tượng,thuộc tính của đối tượng và giá trị của thuộc tính Còn cung dùng để thể hiệncác quan hệ giữa các đối tượng Các nút và các cung đều được gắn nhãn
Ví dụ để thể hiện tri thức “sẻ là một loài chim có cánh và biếtbay” ,người ta vẽ một đồ thị như sau :
Bằng cách thêm vào đồ thị nút mới và các cung mới người ta có thể mởrộng một mạng ngữ nghĩa Các cung mới được thêm thể hiện các đối tượngtương tự (với các nút đã có trong đồ thị), hoặc tổng quát hơn Chẳng hạn đểthể hiện “chim là một loài động vật đẻ trứng” và “cánh cụt là loài chim biếtlặn”, người ta vẽ thêm như sau:
Trang 17- Là ngôn ngữ biểu diễn dạng mô tả.
- Có thể áp dụng một số cơ chế trên mạng : Cơ chế truyền và thừahưởng thông tin giữa các đối tượng
Biểu diễn tri thức nhờ các luật sản xuất
Để có thể tận dụng những điểm mạnh trong suy diễn logic nhờ nguyên lýModun Ponens, các hệ chuyên gia trí tuệ nhân tạo đưa ra các luật sản xuất códạng :
Điều kiện 2 ……
Trang 18Điều kiện m
……
Kết luận nTrong đó các điều kiện và các kết luận có thể có dạng khá thoải mái.Trường hợp mỗi điều kiện i, mỗi kết luận j là vị từ hay mệnh đề thì ta có thểsuy diễn logic thông thường
Ưu điểm:
- Cách biểu diễn khá đơn giản và trực quan
- Có thể suy diễn theo chiến lược khác nhau: suy diễn tiến, suy diễnlùi, và suy diễn hỗn hợp
- Khá gần gũi về cú pháp
- Có thể kiểm tra tính mâu thuẫn giữa các luật
- Tính mô đun cao, có nghĩa là việc thêm, sửa đổi hoặc loại bỏ cácluật hoàn toàn không có ảnh hưởng tới các luật khác và cơ chế suydiễn
Nhược điểm:
- Năng suất xử lý thấp
- Không sử dụng được các cấu trúc dữ liệu
Biểu diễn tri thức bằng FRAME
Phương pháp biểu diễn tri thức bằng FRAME có tất cả các tính chất vốn
có của một ngôn ngữ biểu diễn tri thức Nghĩa là nó có thể biểu diễn tri thức ởgóc độ giao diện người-máy, góc độ mô tả mô hình, điều khiển hệ thống.Đồng thời nó cũng là một cơ sở cho một phương pháp xử lý thông tin mới –hướng đối tượng Nếu phương pháp nhờ logic và mạng ngữ nghĩa dùng đểbiểu diễn tri thức mô tả và phương pháp luật sản xuất dùng để biểu diễn tri
Trang 19thức thủ tục thì các FRAME là kết hợp của cả 2 dạng biểu diễn: mô tả và thủtục.
FRAME tận dụng được các ưu điểm của luật sản xuất, vị từ, cũng nhưmạng ngữ nghĩa
Cấu trúc của FRAME :
<tên FRAME>
<tên slot 1>
<thuộc tính thừa kế> (như trên, duy nhất, miền…)
<kiểu slot> (text, integer, real, pointer…)
<giá trị slot> (tên, giá trị, thủ tục,…)
Chiều cao : 80-170 cm
Có râu: khôngNói tiếng: Việt/Anh/PhápCấu trúc này cho ta một khung dữ liệu để khoanh vùng các đối tượng làhọc sinh Trường hợp gặp 1 người cao 180 cm, nặng 45 kg ta có thể khẳngđịnh rằng đó không phải học sinh, vì không thỏa mãn các ràng buộc đã có
Ưu điểm:
- Đáp ứng tất cả các yêu cầu về biểu diễn tri thức
- Cho phép người sử dụng khá tự do khi biểu diễn tri thức
Trang 20- FRAME không chỉ sử dụng để mô tả tri thức mà còn được dùng thểhiện các thuật toán suy dẫn.
- Tận dụng được những điểm mạnh của biểu diễn thủ tục và mô tả
- Quá trình xử lý trên các FRAME độc lập theo nghĩa kế thừa thông tin,không nhất thiết phải tuần tự
Nhược điểm:
- Phương pháp biểu diễn quá phức tạp và cồng kềnh
- Phương pháp biểu diễn FRAME tiện lợi đối với kỹ sư xử lý tri thứccũng như người sử dụng có trình độ cao, nhưng lại là sự quá tải đối vớinhững người sử dụng thông thường
- Các giá trị của slot có thể gán qua thực hiện các thủ tục, điều này làmcho việc thu nạp và cập nhật tri thức trở nên phức tạp và làm khả năngmềm dẻo, phù hợp với những thay đổi của môi trường bên ngoài bịgiảm xuống
- Do cấu trúc của FRAME nên khi biểu diễn cần phải sử dụng các biệnpháp khá cầu kỳ Vì vậy làm mất đi tính trực quan trong phương phápbiểu diễn
- Đối với các bài toán phức tạp thì việc mô tả và điều khiển hệ thống sửdụng FRAME sẽ phức tạp lên rất nhiều so với các phương pháp biểudiễn khác
Biểu diễn nhờ bộ ba liên hợp O.A.V
Biểu diễn tri thức nhờ bộ ba liên hợp OAV là sử dụng bộ ba “Đốitượng”-“Thuộc tính”-“Giá trị” (Object-Attribute-Value) để chỉ ra rằng đốitượng với thuộc tính đã cho nào đó có một giá trị nào đó
Ví dụ:
(Nguyễn A, cao, 167)
(Nguyễn A, nặng, 64)
(Nguyễn A, râu, không)
(Nguyễn A, nói, tiếng Việt)
Trang 21Có thể mô tả dưới dạng mạng ngữ nghĩa và các bộ liên hợp như sau :
Đối tượng trong bộ ba liên hợp được chia thành 2 loại : đối tượng tĩnh vàđối tượng động
Các đối tượng tĩnh được lưu trong bộ nhớ ngoài (băng từ, đĩa…) và khicần được nạp vào bộ nhớ trong để xử lý
Các đối tượng động được khởi tạo trong quá trình làm việc và được lưugiữ ở bộ nhớ trong phục vụ cho việc xử lý
Một điều quan trọng là các đối tượng có thể sắp xếp và liên kết lại vớinhau cũng giống như trong liên kết các FRAME Tuy vậy, không thể biết mộtcách chính xác và tường minh bản chất của từng liên kết Vì vậy người tathường sử dụng bộ ba liên hợp để biểu diễn các sự kiện không chắc chắn
Ưu điểm:
- Cho phép biểu diễn các đối tượng một cách trực quan
- Tính mô đun tương đối cao
- Là ngôn ngữ biểu diễn dạng mô tả
- Cho phép diễn đạt tường minh các luật suy diễn
Trang 22Tuy vậy, cách biểu diễn này thực chất là một dạng đặc biêt của phương
pháp mạng ngữ nghĩa nên nó cũng có các nhược điểm của mạng ngữ nghĩa.Ngoài ra khi sử dụng phương pháp này, các quan hệ, liên kết giữa các đốitượng không thể biểu diễn một cách tường minh
3 Mô tơ suy diễn
3.1 Cơ chế suy diễn
Suy diễn tiến
- Suy diễn tiến là lập luận từ các sự kiện, sự việc để rút ra các kết luận.
Ví dụ: Nếu thấy trời mưa trước khi ra khỏi nhà (sự kiện) thì phải lấy áo mưa(kết luận)
Trong phương pháp này, người sử dụng cung cấp các sự kiện cho hệchuyên gia để hệ thống (máy suy diễn) tìm cách rút ra các kết luận có thể Kếtluận được xem là những thuộc tính có thể được gán giá trị Trong số nhữngkết luận này, có thể có những kết luận làm người sử dụng quan tâm, một sốkhác không nói lên điều gì, một số khác có thể vắng mặt
- Các sự kiện thường có dạng: Attribute = Value
- Lần lượt các sự kiện trong cơ sở trí thức được chọn và hệ thống xemxét tất cả các luật mà các sự kiện này xuất hiện như là tiền đề Theo nguyêntắc lập luận trên, hệ thống sẽ lấy ra những luật thỏa mãn Sau khi gán giá trịcho các thuộc tính thuộc kết luận tương ứng, người ta nói rằng các sự kiện đãđược thỏa mãn Các thuộc tính được gán giá trị sẽ là một phần của kết quảchuyên gia Sau khi mọi sự kiện đã được xem xét, kết quả được xuất ra chongười sử dụng dùng
Suy diễn lùi
- Phương pháp suy diễn lùi tiến hành các lập luận theo chiều ngược lại
(đối với phương pháp suy diễn tiến) Từ một giả thuyết (như là một kết luận),
hệ thống đưa ra một tình huống trả lời gồm các sự kiện là cơ sở của giả thuyết
đã cho này
Trang 23- Ví dụ: nếu ai đó vào nhà mà cầm áo mưa và quần áo bị ướt thì giả
thuyết này là trời mưa Để củng cố giả thuyết này, ta hỏi người đó xem cóphải trời mưa không? Nếu người đó trả lời là có thì giả thuyết trời mưa làđúng và trở thành một sự kiện Nghĩa là trời mưa nên phải cầm áo mưa vàquần áo bị ướt
- Suy diễn lùi là cho phép nhận được giá trị của một thuộc tính Đó là
câu trả lời cho câu hỏi “giá trị của thuộc tính A là bao nhiêu?” với A là một
đích
- Để xác định giá trị của A, cần có các nguồn thông tin Những nguồnnày có thể là những câu hỏi hoắc có thể là những luật Căn cứ vào các câuhỏi, hệ thống nhận được một cách trực tiếp từ người sử dụng những giá trị củathuộc tính liên quan Căn cứ vào các luật, hệ thống suy diễn có thể tìm ra giátrị sẽ là kết luận của một trong số các kết luận có thể của thuộc tính liên quan,
- Nếu mỗi lần với câu hỏi đã cho, người sử dụng trả lời hợp lệ, giá trị trảlời này sẽ được gán cho thuộc tính và xem như thành công Nếu nguồn là cácluật, hệ thống sẽ lấy lần lượt các luật mà thuộc tính đích xuất hiện như kếtluận, để có thể tìm giá trị các thuộc tính thuộc tiền đề Nếu các luật thỏa mãn,thuộc tính kết luận sẽ được ghi nhận
Trang 24Cơ chế hỗn hợp
Sử dụng kết hợp cả 2 phương pháp suy diễn trên
3.2 Cơ chế điều khiển
Chọn hướng suy diễn
Cho f gt = # GT GT: tập các sự kiện ban đầu
Luật 1: nếu f sau < f truoc thì chọn suy diễn tiến
Luật 2: nếu f sau > f truoc thì chọn suy diễn lùi
Luật 3: nếu f sau = f truoc và f gt < f kl thì chọn suy diễn tiến
Luật 4: nếu f sau = f truoc và f gt > f kl thì chọn suy diễn lùi
Luật 5: nếu f sau = f truoc và f gt = f kl người thiết kế có thểchọn 1 trong 2 phương pháp suy diễn để sử dụng
Giải quyết các vấn đề cạnh tranh
Cạnh tranh trong suy diễn tiến
Tình huống cạnh tranh xảy ra khi và chỉ khi tồn tại F và r1, r2 ¿ R mà:
r1: left1 → q1, r2: left2 → q2, left1 ¿ F, left2 ¿ F # lọc(F,R) ¿ 2
ta có lọc ({a},R) = {r1,r2}
Đặt vấn đề : làm thế nào để chọn 1 luật r trong số các luật có thể áp dụngđược bằng lọc(F,R) ?
Giải pháp 1 : Tổ chức các luật có thể sử dụng được như một hàng đợi
Giải pháp 2 : Tổ chức các luật có thể sử dụng theo xếp chồng
Giải pháp 3 : Sử dụng heuristic
Trang 25- Đối với mỗi r ¿ R bằng kỹ thuật heuristic ta đánh giá liên
hệ hàm ước lượng h trong KL với một phần vế phải của luật r, r: left → q
Giải pháp 5 : Đồ thị thứ tự luật (RPG – Rule Precedence Graph)
- Một luật r j là sắp thứ tự với luật r i (ký hiệu là r j → r
i ) nếu và chỉ nếu tồn tại một sự kiện f sao cho :
r j : left → f; r i :…f… → q
- Một luật r được gọi “khởi đầu – initial” nếu và chỉ nếu :
r: left → q và left ¿ GT → INITIAL
- Mỗi luật r được gọi là “kết thúc – final” nếu và chỉ nếu :
r: left → q và q ¿ GT → FINAL
- Biểu diễn trong đồ thị RPG:
Mỗi luật khởi đầu được coi là “áp dụng”; APP = {INITIAL}
Cho App(r) ¿ điểm – vào(r) = {r’} tồn tại một đỉnh r’ → rtrong RPG; r : left → q ; mỗi r’ ¿ App(r) có thể áp dụng
Nếu left ¿ {q’/ r’ ¿ App(r)} ¿ GT thì luật r cũng có thểđược áp dụng
- Suy diễn trong đồ thị RPG như sau:
Chọn một luật trong APPLICABLE
Trang 26Thực hiện luật đó.
o Chú ý: đối với
Suy diễn theo chiều rộng APP = hàng đợi
Suy diễn theo chiều sâu APP = xếp chồng
Một số các kinh nghiệm (heuristics):
1 h(r,FINALS) = h(r) # điểm – ra(r) = #{r’ / tồn tại một cung r →
r’ trong RPG}
Luật được chọn h(r) = # điểm – ra(r) → max
2 h(r,FINALS) = # p r→ FINALS
Luật được chọn h(r,FINALS) → min
3 h(r,FINALS) = # {p / p : r → FINALS} (số lượng các đường đi
từ luật r đến FINALS trong đồ thị RPG)
Luật được chọn h(r,FINALS) là lớn nhất
Cạnh tranh trong suy diễn lùi
- Cạnh tranh trong suy diễn lùi xảy ra khi và chỉ khi với một sự kiện
f nào đó tồn tại ít nhất 2 luật r1, r2 :r1 : left1 → f và r2 : left2 →f
Trang 271 Xét luật r: left → q Với mỗi sự kiện f độ_dài(f,GT) = độ dàiđường đi ngắn nhất từ GT đến f.
Trang 28độ không thuộc về còn giá trị 1 chỉ mức độ thuộc về hoàn toàn.
Như vậy tập mờ A hoàn toàn xác định trên tập các bộ đôi:
A=(x,x, A (x,x))))xΩ
Nếu Ω =x 1 ,x 2 , ,x n , là một tập hữu hạn và A là tập mờ xác định trên Ω
thì thông thường ta có ký hiệu:
Trang 29Ví dụ 2: Một số dạng hàm liên thuộc liên tục khác
Triangle(x,x, a, b, c)) = max(min(
x−a b−a ,1,
c−x c−b),0)
Trapezoid(x,x, a, b, c,d)) = max(min(
x−a b−a ,1,
d−x d−c),0)
Gaussian(x,x, σ ,c , ))=
) 2 (x c )
e
Bell(x,x, a, b, c)) =
11+x−c
Định nghĩa 1: (Hàm phủ định): Hàm n: [0,1] không tăng thỏa mãn các điều
kiện n(0) = 1, n(1) = 0 được gọi là hàm phủ định (negation function).
Định nghĩa 2: (Phần bù của một tập mờ): Cho n là hàm phủ định, phần bù Ac của tập mờ A là một tập mờ với hàm thuộc được xác định bởi:
Ac(x) = n(x,A(x,x)), với mỗi x ¿ Ω
Trang 302.1.2.2 Phép giao hai tập mờ
Định nghĩa 3 (T - chuẩn): Hàm T: [0,1]2 [0,1] là một T - chuẩn (phép hội) khi và chỉ khi thoả mãn các điều kiện sau:
1 T(1, x) = x, với mọi 0 x 1.
2 T có tính giao hoán : T(x,y) = T(y,x), với mọi 0 x, y 1.
3 T không giảm: T(x,y)=T(u,v), với mọi x u, y v.
4 T có tính kết hợp: T(x,T(x,y,z)) = T(T(x,y),z), với mọi 0 x,y, z 1.
Ví dụ: T 1(x,y)=min(x,y) là một T-chuẩn, thật vậy:
- T 1 (1,x)=min(1,x)=x, với mọi 0 x 1.
- T 1 có tính giao hoán: min(x,y)=min(y,x), với mọi 0 x, y 1.
- T 1 không giảm: min(x,y)<=min(u,v), với mọi x u, y v.
- T1 có tính kết hợp: min(x,min(y,z))=min(min(x,y),z)= min(x,y,z), với mọi 0 x, y, z 1.
Định nghĩa 4 (Phép giao hai tập mờ): Cho hai tập mờ A, B trên cùng không
gian nền Ω với hàm thuộc A(x), B(x) tương ứng Cho T là một T-Chuẩn Phép giao
của hai tập mờ A,B là một tập mờ (ký hiệu (A T B)) trên Ω với hàm thuộc cho bởi biểu thức:
(A TB)(x) = T(A(x), B(x)), với mỗi x Ω
Ví dụ:
- Với T(x,y)=min(x,y)ta có: (ATB)(x) = min(A(x),B(x))
- Với T(x,y) = x.y ta có (ATB)(x) = A(x).B(x) (tích đại số)
Ta có thể biểu diễn phép giao của hai tập mờ qua hai hàm
T(x,y)=min(x,y) và T(x,y) = x.y theo các đồ thị hình 1.3 sau đây:
- Hình a: Hàm thuộc của hai tập mờ A và B
- Hình b: Giao của hai tập mờ theo T(x,y)=min(x,y)
- Hình c: Giao của hai tập mờ theo T(x,y)=x.y