Nói chung, các tri thức bất định, không chính xác và không đầy đủ xuất hiệ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ó
Trang 1ỨNG DỤNG CÔNG NGHỆ TRI THỨC XÂY DỰNG PHẦN
MỀM ĐÁNH GIÁ XẾP LOẠI NHÂN VIÊN.
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Thái Nguyên, 2014
Trang 2u e d u v n /
Số hóa bởi Trung tâm Học
liệu
ii
MỤC LỤC
MỤC LỤC i
LỜI CẢM ƠN iv
LỜI CAM ĐOAN v
DANH SÁCH CÁC HÌNH vi
LỜI MỞ ĐẦU vii
CHƯƠNG 1: TỔNG QUAN VỀ CÔNG NGHỆ TRI THỨC VÀ HỆ CHUYÊN GIA 1
1.1 Công nghệ tri thức là gì 1
1.2 Phân loại tri thức 1
1.3 Các cấp độ tri thức 2
1.4 Phân biệt tri thức và dữ liêu 3
1.5 Khái niệm chuyên gia và hệ chuyên gia 4
1.6 Các đặc tính của chuyên gia và hệ chuyên gia 6
1.7 Các lĩnh vực ứng dụng của hệ chuyên gia 8
1.8 Kiến trúc tổng quát của các hệ chuyên gia 9
1.9 Các dạng tri thức và cách thể hiện 13
1.10 Cơ chế suy diễn trong hệ chuyên gia 24
CHƯƠNG 2: XÂY DỰNG CƠ SƠ TRI THỨC GIẢI QUYẾT BÀI TOÁN 37
2.1 Xây dựng bài toán 37
2.3 Các bước tiến hành xây dựng và phát triển hệ chuyên gia 40
2.3 Giải quyết bài toán 44
CHƯƠNG 3: XÂY DỰNG PHẦN MỀM 54
3.1 Môi trường xây dựng phần mềm 54
3.2 Một số bảng dữ liệu chính của chương trình 54
3.3 Giới thiệu các Form chính của chương trình 57
3.4 Đánh giá kết quả chương trình 61
Trang 3u e d u v n /
Số hóa bởi Trung tâm Học
liệu
3
KẾT LUẬN 62
1 Kết luận 62
2 Hướng phát triển đề tài 62
TÀI LIỆU THAM KHẢO 63
1 Tài liệu trong nước 63
2 Tài liệu nước ngoài 63
Trang 4Tôi cũng xin chân thành bày tỏ lòng biết ơn tới tất cả các Giáo sư, Tiến sĩ đãgiảng dạy tôi trong hai năm vừa qua Các Giáo sư, Tiến sĩ đã truyền đạt cho tôinhững kiến thức quý báu về ngành học khoa học máy tính và các chuyên ngànhhẹp như trí tuệ nhân tạo, hệ chuyên gia,… Giúp tôi có thể tích lũy nhiều kiến thức
và các phương pháp quý báu để có thể nghiên cứu giải quyết những vấn đề trongluận văn của mình
Bản luận văn này được hoàn thành với sự động viên giúp đỡ của các bạn tronglớp cao học CK11I trường Đại học Công nghệ thông tin và Truyền thông khóa2012-2014 Tôi xin bày tỏ lòng cám ơn chân tình tới tất cả các bạn, nhất là các bạn
đã dành nhiều thời gian quý báu của mình để trao đổi, giúp đỡ tôi khi gặp nhữngvướng mắc trong suốt thời gian thực hiện luận văn này
Hà Xuân TrườngLớp cao học CK11I
Trang 5LỜI CAM ĐOAN
Tôi cam đoan luận văn này là do bản thân tự nghiên cứu và thực hiện theo sự
hướng dẫn khoa học của PGS.TS Ngô Quốc Tạo.
Tôi hoàn toàn chịu trách nhiệm về tính pháp lý quá trình nghiên cứu khoa họccủa luận văn này
Thái Nguyên, ngày tháng năm 2014
Người cam đoan
Hà Xuân Trường
Trang 6Hình 1 Một số lĩnh vực ứng dụng của trí tuệ nhân tạo.
Hình 2 Hoạt động của hệ chuyên gia
Hình 3 Những thành phần cơ bản của một hệ chuyên gia
Hình 4 Quan hệ giữa máy suy diễn và cơ sở tri thức
Hình 5 Kiến trúc hệ chuyên gia theo J L Ermine
Hình 6 Kiến trúc hệ chuyên gia heo C Ernest
Hình 7 Kiến trúc hệ chuyên gia theo E V Popov
Hình 8 Biểu diễn tri thức nhờ mạng ngữ nghĩa
Hình 9 Mở rộng mạng ngữ nghĩa biểu diễn tri thức
Hình 10 Biểu diễn tri thức nhờ bộ 3 liên hợp OAV
Hình 11 Biểu diễn tri thức nhờ ngôn ngữ nhân tạo trong MYCIN
Hình 12 Cấu trúc danh sách luật của hệ thống suy diễn tập trung
Hình 13 Cấu trúc danh sách các sự kiện của hệ thống suy diễn tập trung.Hình 14 Quá trình quản lý dự án phát triển một hệ chuyên gia
Hình 15 Tiếp nhận tri thức trong một hệ chuyên gia
Hình 16 Trình bày các giai đoạn cơ bản để phát triển một hệ chuyên gia.Hình 17 Mô tơ suy diễn tiến giải quyết bài toán
Hình 18 Mô hình hệ chuyên gia giải quyết bài toán
Hình 19 Giao diện chính của chương trình
Hình 20 Giao diện thêm nhân viên
Hình 21: Giao diện quản lý tiêu chí đánh giá
Hình 21 Giao diện quản lý tiêu chí đánh giá
Hình 22 Giao diện thêm công việc cho nhân viên
Hình 23: Giao diện chức năng cho điểm của nhân viên
Hình 24 Giao diện xuất báo cáo đánh giá
Hình 25 Giao diện xuất báo cáo xếp loại
Trang 7Ngày nay, sự phát triển mạnh mẽ của Công nghệ tri thức các ứng dụng phongphú của nó đã tạo ra và cung cấp cho con người những công cụ, phương tiện hếtsức thuận tiện để tạo ra những hệ chuyên gia giúp con người
Xuất phát từ những vấn đề nêu trên nhằm góp phần hoàn thiện công tác đánh giá
và xếp loại nhân viên, học viên đã chọn đề tài “Ứng dụng công nghệ tri thức xâydựng phần mềm đánh giá xếp loại nhân viên” làm đề tài tốt nghiệp của mình
Nội dung của luận văn gồm:
Chương 1: Tổng quan về Công nghệ tri thức và Hệ chuyên gia
Chương 2: Xây dựng cơ sơ tri thức giải quyết bài toán
Chương 3: Xây dựng phần mềm
Trang 8hệ chuyên gia.
1.1 Công nghệ tri thức là gì
Công nghệ tri thức (Knowledge Engineering): có thể xem là một nhánh nghiêncứu của trí tuệ nhân tạo, phân tích tri thức lĩnh vực và chuyển nó thành những môhình tính toán đưa vào máy tính để phục vụ những nhu cầu cần thiết.[5]
Công nghệ tri thức (Knowledge Engineering): là các phương pháp, kỹ thuậtđược những kỹ sư tri thức (knowledge engineers) dùng để xây dựng những hệthống thông minh như: hệ chuyên gia, hệ cơ sở tri thức, hệ hỗ trợ quyết định.[4]
1.2 Phân loại tri thức
Tri thức tồn tại dưới 2 dạng cơ bản :
- Tri thức đinh lượng
- Tri thức đinh tính
Tri thức định lượng thường gắn với các loại kinh nghiệm khác nhau
Ở đây chúng ta xét về tri thức định tính.Tri thức đinh tính được chia thành 3loại:
Tri thức mô tả
Tri thức thủ tục
Tri thức điều khiển
Tri thức thủ tục: mô tả cách thức giải quyết một vấn đề Loại tri thức này đưa ragiải pháp để thực hiện một công việc nào đó
Trang 9Tri thức heuristic: mô tả các "mẹo" để dẫn dắt tiến trình lập luận Tri thứcheuristic còn được gọi là tri thức nông cạn do không bảm đảm hoàn toàn chính xác
về kết quả giải quyết vấn đề
Tri thức có cấu trúc: mô tả tri thức theo cấu trúc Loại tri thức này mô tả môhình tổng quan hệ thống theo quan điểm của chuyên gia, bao gồm khái niệm, kháiniệm con, và các đối tượng; diễn tả chức năng và mối liên hệ giữa các tri thức dựatheo cấu trúc xác định
1.3 Các cấp độ tri thức
Tri thức gồm 2 cấp độ
a) 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 thức mô tả, tri thức thức thủ tục, tri thức điều khiển không phụthuộc và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ạinày tạ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 khoa học Ví
dụ : “Nếu một đường thẳng vuông góc với một trong hai đường thẳng song songthì 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 qua các tham
số thời gian và không gian có thể xuất hiện tường minh hoặc không tường minhtrong 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êncủa tổ chức WTO” chỉ đúng ở thời điểm trước năm 2008, còn hiện nay Việt Nam
đã gia nhập tổ chức WTO Chính yếu tố đó, mà quá trình suy 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 giaohoán bộ phận, đơn điệu hay không đơn điệu
b)Tri thức bất định, tri thức không đầy đủ :
Trang 10Trong nhiều trường hợp các tri thức có thể đúng hoặc sai Tuy vậy trong thự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 được chúng đúng haysai Ví dụ : “Trời có thể mưa”, trong trường hợp này không thể quyết định 100% làtrời mưa hay không mưa ; Các tri thức không chính xác là các mệnh đề phát biểu
mà giá trị chân lý của chúng không thể chỉ ra một cách chính xác, tương ứng vớithang đo quy ước Ví dụ : “Anh ta cao khoảng lm70”
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átbiể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ất hiệ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ạitri 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
1.4 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 tri thức và
dữ liệu :
+ Khả năng tư giải thích nôi dung : Dữ liệu đưa vào máy tính không tự giảithí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 trithức có thể tự giải thích nội dung của minh với người sử dụng bất kỳ
+ Tính cấu trúc : Một trong những đặc tính cơ bản của hoạt động nhận thứccủa con người đối với thế giới xung quanh là khả năng phân tích cấu trúc củacá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ái niệ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ối liên hệ
Trang 11khá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 được kế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ọi vấn đề mà chứng taquan tâm
+ Đối với các tri thức biểu diễn trong máy cũng vậy, chúng chủ động hướngngười sử dụng biết khai thác tri thức Đó chính là quá trình kích hoạt tri thức đượcthể 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ện ngay trong quá trình hoạtđộng của hệ Tính chủ động của tri thức còn thể hiện sinh động thông qua các ngônngữ 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
1.5 Khái niệm chuyên gia và hệ chuyên gia
Định nghĩa 1.1: Chuyên gia là một hoặc một nhóm có kiến thức sâu về chuyênngành và có kỹ năng giải các vấn đề (của chuyên ngành đó) một cách có hiệu quả.Định nghĩa 1.2: Hệ chuyên gia
Một số định nghĩa về hệ chuyên gia:
+ Hệ chuyên gia là một hệ thống dựa trên tri thức, nó mô hình hóa các tri thứccủa chuyên gia và dùng tri thức này để giải vấn đề phức tạp thuộc lĩnh vực đó
Trang 12+ Hệ chuyên gia là một hệ thống bao gồm máy tính và chương trình được dùng
để mô phỏng và bắt chước cách giải quyết vấn đề của chuyên gia.[2]
Trong đó:
+ Tri thức của hệ chuyên gia bao gồm các sự kiện và các luật Các sự kiện đượccấu thành bởi một số nhiều các thông tin, được thu thập rộng rãi, công khai vàđược sự đồng tình của các chuyên gia trong lĩnh vực đó Các luật biểu thị sự quyếtđoán chuyên môn của các chuyên gia trong lĩnh vực
+ Mức độ hiệu quả của một hệ chuyên gia phụ thuộc vào kích thước và chấtlượng của cơ sở tri thức mà hệ đó có được
+ Mỗi hệ chuyên gia chỉ đặc trưng cho một lĩnh vực vấn đề nào đó
Hệ chuyên gia là một trong những lĩnh vực ứng dụng của trí tuệ nhân tạo.Dưới đây là một số các lĩnh vực của Trí tuệ nhân tạo:
Robotic
Artificial Neural Systems Natural Lannguage
Expert System Understanding
Hình 1 Một số lĩnh vực ứng dụng của trí tuệ nhân tạo
Hệ chuyên gia sử dụng các tri thức của những chuyên gia để giải quyết các vấn
đề (bài toán) khác nhau trong nhiều lĩnh vực Trong hệ chuyên gia có các khối cơbản sau:
+ Khối lưu tri thức cơ sở: chúng được sử dụng để lưu các tri thức bao gồm các
sự kiện, các quan hệ và các luật
Trang 13+ Khối suy luận hay motor suy luận: là bộ xử lý được mô hình hóa theo cáchlập luận và xử lý của chuyên gia Motor nhận thông tin về sự kiện, so sánh chúngvới các kiến thức đã có trong khối lưu tri thức cơ sở rồi rút ra kết luận hay bìnhluận Như vậy, motor cần có kỹ thuật về suy luận.
Phạm vi ứng dụng
+ Hỗ trợ ra quyết định
+ Sử dụng trong các dây chuyền sản xuất, khai thác độ hại và nguy hiểm+ Hỗ trợ chuyên gia khi cần sử dụng lại các tri thức không còn nhớ hoặc khuyếtthiếu
+ Giải hoặc hỗ trợ chuyên giả để “giải các vấn đề” phức tạp
1.6 Các đặc tính của chuyên gia và hệ chuyên gia
a Tri thức và các lập luận
Định nghĩa 1.3:
(1) Cơ sở tri thức của chuyên gia lĩnh vực là các kiến thức sẵn có được sử dụng
để giải quyết vấn đề đã cho thuộc lĩnh vực đó
(2) Cơ sở tri thức của hệ chuyên gia là bộ nhớ tri thức lĩnh vực
Một hệ chuyên gia gồm ba thành phần chính là cơ sở tri thức, máy suy diễnhay môtơ suy diễn và hệ thống giao tiếp với người sử dụng
Cơ sở tri thức chứa các tri thức có sẵn
Máy suy diễn tạo ra câu trả lời cho người sử dụng qua hệ thống giao tiếp dựatrên cơ sở tri thức
Người sử dụng cung cấp các thông tin, dữ liệu cần được xử lý thông qua hệchuyên gia Sau quá trình xử lý, hệ chuyên gia đưa ra kết quả cần thiết cho người
sử dụng nhờ giao diện tương tác
Hoạt động của một hệ chuyên gia dựa trên tri thức được minh họa như sau :
Trang 14Người sử dụng
Hệ thốnggiaotiếp
Cơ sở tri thức
Máy suy diễn
Hình 2 Hoạt động của hệ chuyên gia
Mỗi một hệ chuyên gia chỉ xử lý cho các vấn đề trong một lĩnh vực xác địnhdựa trên các tri thức có sẵn được tạo ra từ trước của lĩnh vực đó và các dữ liệu phụtrợ đi cùng
Tùy theo yêu cầu người sử dụng mà có nhiều cách nhìn nhận khác nhau về một
hệ chuyên gia
Nó có đáng tin cậy không?
b Các đặc trưng của hệ chuyên gia
Có bốn đặc trưng cơ bản của một hệ chuyên gia:
+ Hiệu quả cao: Hiệu quả đưa ra kết quả trả lời và độ chính xác cao
+ Thời gian trả lời thoả đáng: Khả năng truy xuất kết quả thông qua dữ liệuđầu vao cho trước nhanh hơn so với các chuyên gia Hệ chuyên gia là một hệthống thời gian thực
Trang 15+ Độ 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, không giống như cách trả lời bí ẩn của các hộp đen
c 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ới hiệu quả
+ Đa lĩnh vực: Hệ chuyên gia có thể sử dụng cho nhiều lĩnh vực khác nhau và
có thể sử dụng nhiều tri thức cơ sở của nhiều lĩnh vực khác nhau Trong khi cácchuyên gia thông thường chỉ thành thạo trong một lĩnh vực xác định
+ Độ tin cậy: Luôn đảm bảo độ tin cậy khi khai thác
+ Khả năng giảng giải: Các vấn đề được giải quyết thông qua các cơ chế rõràng
+ Khả năng trả lời: Trả lời theo thời gian thực, khách quan
+ 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.7 Các lĩnh vực ứng dụng của hệ chuyên gia
Hệ chuyên gia thể hiện thể hiện được tầm quan trong của nó trong các lĩnh vựccủa đời sống Sau đây là một số các ứng dụng quan trọng nhất của hệ chuyên gia:
Trang 16Dạy học kiểu thông minh sao cho sinh viên có thể
hỏi vì sao, như thế nào và cái gì nếu giống như hỏi
một người thầy giáoGiải thích
Giải thích những dữ liệu thu nhận được
môn để đánh giá hiệu quả
đoán, kiểm tra, lập kế hoạch, dự đoán và chữa trị
1.8 Kiến trúc tổng quát của các hệ chuyên gia
a) Các thành phần cơ bản của một hệ chuyên gia
Một hệ chuyên gia kiểu mẫu gồm bảy thành phần cơ bản như sau:
Trang 17Chuyên gia Người dùng
Bộ thu nạp
Mô tơ suy diễn
Cơ sở tri thức
Bộ nhớ làm việc
Hình 3 Những thành phần cơ bản của một hệ chuyên gia
+ Cơ sở tri thức: Gồm các phần tử (hay đơn vị) tri thức, thông thường được gọi
là luật, được tổ chức như một cơ sở dữ liệu
+ Máy duy diễn: Công cụ (chương trình, hay bộ xử lý) tạo ra sự suy luận bằngcách quyết định xem những luật nào sẽ làm thỏa mãn các sự kiện, các đối tượng ,chọn ưu tiên các luật thỏa mãn, thực hiện các luật có tính ưu tiên cao nhất
+ Lịch công việc: Danh sách các luật ưu tiên do máy suy diễn tạo ra thoả mãncác sự kiện, các đối tượng có mặt trong bộ nhớ làm việc
+ Bộ nhớ làm việc: Cơ sở dữ liệu toàn cục chứa các sự kiện phục vụ cho các
Trang 18+ Giao diện người sử dụng: Là nơi người sử dụng và hệ chuyên gia trao đổivới nhau.
Trong một cơ sở tri thức, người ta thường phân biệt hai loại tri thức là tri thứcphán đoán và tri thức thực hành
+ Các tri thức phán đoán mô tả các tình huống đã được thiết lập hoặc sẽ đượcthiết lập
+ Các tri thức thực hành thể hiện những hậu quả rút ra hay những thao tác cầnphải hoàn thiện khi một tình huống đã được thiết lập hoặc sẽ được thiết lập tronglĩnh vực đang xét Các tri thức thực hành thường được thể hiện bởi các biểu thức
dễ hiểu và dễ triển khai thao tác đối với người sử dụng
Máy
suy diễn
Tri thức phán đoánTri thức thực hành
Hình 4 Quan hệ giữa máy suy diễn và cơ sở tri thức
b) Một số mô hình kiến trúc của hệ chuyên gia
Có nhiều mô hình kiến trúc hệ chuyên gia theo các tác giả khác nhau Sau đây
là một số mô hình:
■ Mô hình J L Ermine
Trang 19Cơ sở tri thức
Người sử dụngyêu cầu
Hệ thống thu
nhận tri thức
Giao diện
Dữ liệu vấn đềcần giải quyết
Trang 20sử dụng
Bộ nhớ làm việc
Khả năngthích nghi
Diễndịch
Sở hữutri thức
Cơ sở trithức
Hình 7 Kiến trúc hệ chuyên gia theo E V Popov
1.9 Các dạng tri thức và cách thể hiện
a Định nghĩa 1.4:
+ Lĩnh vực là miền mà chủ đề quan tâm
+ Thể hiện tri thức là phương pháp cho phép mã hóa tri thức trong cơ sở trithức của hệ thống
b) Các dạng tri thức
Tri thức có thể được mô tả thông qua rất nhiều dạng một cách đa dạng Bảngsau đây mô tả các dạng cơ bản của tri thức:
đối tượng
Trang 21c) Thể hiện của tri thức
Tri thức của một hệ chuyên gia có thể được biểu diễn theo nhiều cách khácnhau Thông thường người ta sử dụng các cách sau đây:
+ Biểu diễn tri thức bởi các luật sản xuất
+ Biểu diễn tri thức nhờ mệnh đề logic
+ Biểu diễn tri thức nhờ mạng ngữ nghĩa
+ Biểu diễn tri thức nhờ ngôn ngữ nhân tạo
Ngoài ra, người ta còn sử dụng cách biểu diễn tri thức nhờ các sự kiện khôngchắc chắn, nhờ bộ ba: đối tượng, thuộc tính và giá trị (O-A-V: Object-Attribute-Value), nhờ khung (frame), v.v Tuỳ theo từng hệ chuyên gia, người ta có thể sửdụng một cách hoặc đồng thời cả nhiều cách Sau đây sẽ trình bày một số cáchbiểu diễn tri thức:
■ Biểu diễn tri thức bởi các luật sản xuất
Hiện nay, hầu hết các hệ chuyên gia đều là các hệ thống dựa trên luật, bới lý donhư sau :
+ Bản chất đơn thể: Có thể đóng gói tri thức và mở rộng hệ chuyên gia mộtcách dễ dàng
+ Khả năng diễn giải dễ dàng: Dễ dàng dùng luật để diễn giải vấn đề nhờ cáctiền đề đặc tả chính xác các yếu tố vận dụng luật, từ đó rút ra được kết quả
+Tương tự quá trình nhận thức của con người: Dựa trên các công trình của
Newell và Simon, các luật được xây dựng từ cách con người giải quyết vấn đề.Cách biểu diễn luật nhờ IF THEN đơn giản cho phép giải thích dễ dàng cấu trúctri thức cần trích lọc
Luật là một kiểu sản xuất được nghiên cứu từ những năm 1940 Trong một hệthống dựa trên luật, công cụ suy luận sẽ xác định những luật nào là tiên đề thỏamãn các sự việc
Các luật sản xuất thường được viết dưới dạng IF THEN Có hai dạng:
IF < điều kiện > THEN < hành động > hoặc
Trang 22IF < điều kiện > THEN < kết luận > DO < hành động >
Tuỳ theo hệ chuyên gia cụ thể mà mỗi luật có thể được đặt tên Chẳng hạn mỗi
luật có dạng Rule: tên Sau phần tên là phần IF của luật.
Phần giữa IF và THEN là phần trái luật, có nội dung được gọi theo nhiều tên
khác nhau, như tiền đề, điều kiện, mẫu so khớp
Phần sau THEN là kết luận hay hậu quả Một số hệ chuyên gia có thêm phần hành động được gọi là phần phải luật.
Ví dụ :
1 Rule: Đèn đỏ
IF Đèn đỏ sáng THEN Dừng
2 Rule: Đèn-xanh
IF Đèn xanh sáng THEN Đi
Trong ví dụ trên, Đèn đỏ sáng và Đèn xanh sáng là những điều kiện, hay nhữngkhuôn mẫu Sau đây là một số ví dụ khác :
3 Rule: Điều trị sốt
IF Bệnh nhân sốt THEN cho uống thuốc Aspirin
4 Hệ thống chẩn đoán xe máy (OPS5)
IF
máy xe nổ không ổn định, OR máy xe nổ rồi lại tắt, AND bugi khôTHEN
Dự đoán : Xe đã bị nghẹt xăng
Trang 23Xử lý : nên xúc rửa bình xăng và bộ khoá xăng của xe.
■ Biểu diễn tri thức nhờ mệnh đề logic
Người ta sử dụng các ký hiệu để thể hiện tri thức và các phép toán lôgic tácđộng lên các ký hiệu để thể hiện suy luận lôgic Kỹ thuật chủ yếu thường được sửdụng là lôgic vị từ
Các ví dụ dưới đây minh hoạ cách thể hiện các phát biểu (cột bên trái) dướidạng vị từ (cột bên phải) :
Tom là cha của
Tất cả mọi người
đều chết
MAN(X) → MORTAL(X)với quy ước MAN(X) có nghĩa “X là một người” và
MORTAL(X) có nghĩa “X chết” MAN vàMORTAL được
gọi là các vị từ đối với biến X
Các vị từ thường có chứa hằng, biến hay hàm Người ta gọi các vị từ không
chứa biến (có thể chứa hằng) là các mệnh đề Mỗi vị từ có thể là một sự kiện hay
một luật Luật là vị từ gồm hai vế trái và phải được nối nhau bởi một dấu mũi tên(→) Các vị từ còn lại (không chứa mũi tên) được gọi là các sự kiện Trong ví dụtrên đây, MAN và FATHER là các mệnh đề và là các sự kiện Còn MAN(X) →MORTAL(X) là một luật
Ví dụ từ các tri thức sau:
Marc có tóc vàng hoe, còn Jean có tóc màu nâu Pierre là cha của Jean Marc làcha của Pierre Jean là cha của René Marc là con của Georges
Trang 24Giả sử X, Y và là Z những người nào đó, nếu Y là con của X thì X là cha của
Y Nếu X là cha của Z và Z là cha của Y thì X là ông của Y
ta có thể biểu diễn thành các sự kiện và các luật như sau :
a BLOND (marc)
b BROWN (jean)
c FATHER (pierre, jean)
d FATHER (marc, pierre)
e FATHER (jean, rené)
f SON (marc, georges)
g FATHER (X, Y) ← SON (Y, X)
h GRANDFATHER (X, Y) ← FATHER (X, Z), FATHER (Z, Y)
Người ta gọi tập hợp các sự kiện và các luật là một cơ sở tri thức
Trong logic vị từ, một mệnh đề được cấu tạo bởi 2 thành phần là các đối tượngtri thức và mối liên hệ giữa chúng (gọi là vị từ)
Ví dụ: Cam có vị ngọt Vị (cam, ngọt)
Cam có màu xanh Màu(cam, xanh)
phụ thuộc vào các hạng thức x, y, z,
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ực quan và ưu điểmcăn bản của nó là có một cơ sở lý thuyết vững chắc cho những thủ tục suy diễnnhằm tìm kiếm và sản sinh ra những tri thức mới, dựa trên các sự kiện và các luật
đã cho
* Ưu điểm
- 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
Trang 25- 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
- Tính module cao, do vậy các tri thức có thể thêm bớt sửa đổi khá độc lập vớinhau và các cơ chế suy diễn
■ 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ác cung
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ínhcủa đối tượng và giá trị của thuộc tính Còn cung dùng để thể hiện cá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ết bay”, người ta vẽ
Trang 26Bằng cách thêm vào đồ thị các 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 nút mới được thêm thể hiện các đối tượng tươ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ết lặn“, người ta vẽ
thêm như sau :
Một trong những tính chất quan trọng của mạng ngữ nghĩa là tính thừa kế Khi
sử dụng mạng ngữ nghĩa để biểu diễn tri thức, người ta phải xây dựng các phéptoán tương ứng
có cánhSẻ
Cánh
là
là biết
Loài chim là
biết bay
Động đẻvật
Đẻ trứng
cụt Lặn
* Ưu điểm:
Hình 9 Mở rộng mạng ngữ nghĩa biểu diễn tri thức
- Cho phép biểu diễn một cách trực quan các sự kiện và mối quan hệ giữachúng
- Tính mô đun cao, theo nghĩa các tri thức thêm vào hoàn toàn độc lập với cáctri thức cũ
- Là ngôn ngữ biểu diễn dạng mô tả
- Mạng ngữ nghĩa rất linh động, ta có thể dễ dàng thêm vào mạng các đỉnh hoặccung mới để bổ sung các tri thức cần thiết
- Mạng ngữ nghĩa cho phép các đỉnh có thể thừa kế các tính chất từ các đỉnhkhác thông qua các cung loại “là”, từ đó, có thể tạo ra các liên kết “ngầm” giữanhững đỉnh không có liên kết trực tiếp với nhau
Trang 27- Mạng ngữ nghĩa hoạt động khá tự nhiên theo cách thức con người ghi nhậnthông tin.
* Nhược điểm:
- Không có một phương pháp suy diễn chung cho mọi loại mạng ngữ nghĩa
- Khó kiểm soát được quá trình cập nhật tri thức, dễ dẫn đến mâu thuẫn trong
cơ sở tri thức Cho đến nay, vẫn chưa có một chuẩn nào quy định các giới hạn chocác đỉnh và cung của mạng Nghĩa là bạn có thể gán ghép bất kỳ khái niệm nào chođỉnh hoặc cung Tính thừa kế (vốn là một ưu điểm) trên mạng sẽ có thể dẫn đếnnguy cơ mâu thuẫn trong tri thức
■ 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ủamộ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 độ giaodiệ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ếuphươ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 thức thủ tục thì các FRAME là kếthợ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ạngngữ 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, )
<tên slot 2>
Ví dụ về 1 FRAME mô tả tập HOCSINH :
Frame HOCSINH
Trang 28Nói tiếng : Việt/Anh/Pháp
=> cấu trúc này cho ta một khung dữ liệu để khoanh vừng các đối tượng là họcsinh 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
- FRAME không chỉ sử dụng để mô tả tri thức mà còn được dùng thể hiện cácthuật toán suy diễ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ôngnhấ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ức cũng nhưngười sử dụng có trình độ cao, nhưng lại là sự quá tải đối với những người sử dụngthô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àm cho việcthu nạp và cập nhật tri thức trở nên phức tạp và làm khả năng mềm dẻo, phù hợpvớ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ện phápkhá cầu kỳ Vì vậy làm mất đi tính trực quan trong phương pháp biểu diễn
Trang 29- Đố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ụngFRAME sẽ phức tạp lên rất nhiều so với các phương pháp biểu diễn khác.
■ Biểu diễn nhờ bộ ba liên hợp OAV(object-attribute-value)
Biểu diễn tri thức nhờ bộ ba liên hợp OAV là sử dụng bộ ba “Đối
tượng”-“Thuộc tính”-“Giá trị” (Object-Attribute-Value) để chỉ ra rằng đối tượng với thuộctí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)
=>Có thể mô tả dưới dạng mạng ngữ nghĩa và các bộ liên hợp như sau :
Tiếng Việt 64 kg
nói nặng Nguyễn văn A
râu cao Không 167 cmHình 10 Biểu diễn tri thức nhờ bộ 3 liên hợp OAV
Đối tượng trong bộ ba liên hợp được chia thành 2 loại: đối tượng tĩnh và đốitượng động
Các đối tượng tĩnh được lưu trong bộ nhớ ngoài (băng từ, đĩa ) và khi cầnđược nạp vào bộ nhớ trong để xử lý
Trang 30Các đối tượng động được khởi tạo trong quá trình làm việc và được lưu giữ ở
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ới nhaucũng giống như trong liên kết các FRAME Tuy vậy, không thể biết một cáchchính xác và tường minh bản chất của từng liên kết Vì vậy người ta thườ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
* Nhược điểm: Tuy vậy, cách biểu diễn này thực chất là một dạng đặc biêt củaphươ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
■ Biểu diễn tri thức nhờ ngôn ngữ nhân tạo
Theo quan điểm của người sử dụng, các hệ chuyên gia cần có phương thức giaotiếp bằng ngôn ngữ tự nhiên Điều này giúp cho quá trình tương tác giữa người sửdụng và các chuyên gia trở nên dễ dàng hơn rất nhiều Tuy nhiên, hiện nay, các hệthống chỉ có khả năng đối thoại trên ngôn ngữ là tiếng Anh và hạn chế trong lĩnhvực chuyên môn
Hình dưới đây thể hiện một đơn vị tri thức (luật) trong hệ chuyên gia MYCINdùng để chẩn đoán các bệnh virut Cột bên trái là một luật được viết bằng tiếng
Anh, cột bên phải là mã hoá nhân tạo của luật đó.
Trang 31nếu 2) Hình thái của cơ thể là bị (SAME CNTXT MORPH
COCCI)nhiễm trùng (SAME CNTXT DEVELvà
nếu 3) Kiểu phát triển của cơ thể
là khuẩn lạctồn tại một khả năng (0.7) là cơ
COLONY)
(CONCLUDE CNTXT IDENTSTAPHYLOCOCCUS
MEASURE 0.7))
Hình 11 Biểu diễn tri thức nhờ ngôn ngữ nhân tạo trong MYCIN
1.10 Cơ chế suy diễn trong hệ chuyên gia
Cơ chế suy diễn là các cơ chế liên kết các tri thức đã có để suy dẫn ra những trithức mới Nó là bộ phận điều khiển logic cho toàn bộ hệ thống đảm nhiệm việc suyluận và đưa ra kết luận chứng minh
a.Cơ chế suy diễn thường sử dụng trong thực tế
■ Cơ chế suy diễn tiến
Tư tưởng chung của cơ chế suy diễn tiến là ở điểm: xuất phát từ tập các giảthiết, sẽ làm “ Nở dần” bằng cách thêm vào các sự kiện mới, cho đến khi một trongcác kết luận cần chứng minh được phát hiện.[3]
Giải thuật:
Vào:
Sự kiện đích : {f0}
Ra :
Thông báo “ thành công“ nếu suy ra đến sự kiện đích
Trang 32else exit(“Không thành công”);
}
■ Cơ chế suy diễn lùi
Tư tưởng chung của cơ chế suy diễn lùi là ở điểm: để đưa ra kết luận B ta thử
nếu mọi Ai đều dẫn xuất được từ giả thiết thì quá trình ra B đã thành công.[3]
Trang 33Sau đây là giải thuật:
Vào:
Trang 34b, Suy diễn tập trung.[3]
■ Suy diễn tại máy đơn
- Cấu trúc dữ liệu của cơ chế suy diễn
OPERNODEptr=^OPERNODE;
XORNODEptr=^XORNODE;
Trang 35// Phần khai báo danh sách các luật (Rules)
RULENODEptr= ^RULENODE;
RULENODE = record
Name:string;// Tên của sự kiện
style:byte; //xác định kiểu cùa sự kiện trong luật
//0: khẳng định; 1: phủ địnhNext:RULENODEptr; //Trỏ tới sự kiện tiếp theo trong luậtJump:RULENODEptr; //Trỏ tơí sự kiên cùng tên Dùng để truyền ứngptn:RULENODEptr;// Trỏ tới luật tiếp theo
NumRuletreal;// Số luật
NumLeft:integer; //Số các phần tử vế trái trong luật =-1 default;=-2 sau khi đãtruyền ứng,>l vế phải
CF:real; // Độ chắc chắn Hiện tại chưa sử dụng
Ref:string;// Dòng text dùng để chỉ luật này đo đâu mà có (Reference)
end;
// Phần khai báo danh sách các sự kiện (facts)
FACTNODEptr=AFACTNODE;
FACTNODE=record
Name:string;//Tên của sự kiện
style:byte;//0:đúng ; l:sai; 2:đã hỏi nhưng không biết;3: chưa hỏi
Jump:RULENODEptr;//Trỏ đến sự kiện có cùng tên đầu tiên trong luật
ptr:FACTNODEptr;//Trỏ đến sự kiện tiếp theo
Ques:string;//Định nghĩa câu hỏi sự kiện
Expl:string;// Định nghĩa câu giải thích