i
ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
Trần Thị Dƣơng
NGHIÊN CỨUHỆ CHUYÊN GIA VÀ MạNG NGữ NGHĨA Để GIảI BÀI TOÁN TAM GIÁC LƢợNG Chuyên ngành: KHOA HỌC MÁY TÍNH
Mã số chuyên ngành: 60 48 0101
TÓM TẮT LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
NGƢỜI HƢỚNG DẪN KHOA HỌC
PGS.TS. Ngô Quốc Tạo.
Thái Nguyên - 2015
Số hoá bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
ii
LỜI CAM ĐOAN
Tôi xin cam đoan, kết quả của luận văn hoàn toàn là kết quả của tự bản
thân tôi tìm hiểu, nghiên cứu dƣới sự hƣớng dẫn của thầy giáo 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ọc của luận văn này.
Thái Nguyên, tháng 8 năm 2015
Học viên
Trần Thị Dƣơng
Số hoá bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
iii
LỜI CẢM ƠN
Em xin gửi lời cảm ơn chân thành nhất đến thầy giáo PGS.TS. Ngô Quốc
Tạo đã định hƣớng và nhiệt tình hƣớng dẫn, giúp đỡ em trong quá trình làm luận
văn.
Em xin gửi lời biết ơn sâu sắc đến quý thầy cô giáo trƣờng Đại học Công
nghệ thông tin và truyền thông, các thầy giáo, cô giáo ở Viện công nghệ thông tin
Hà Nội đã truyền đạt những kiến thức và kinh nghiệm quý báu cho chúng em
trong thời gian học tập.
Xin chân thành cảm ơn các bạn bè, đồng nghiệp tổ Tin – Công Nghệ
trƣờng THPT Kinh Môn 2, các bạn học viên lớp cao học CK12B, những ngƣời
thân trong gia đình đã động viên, chia sẻ, tạo điều kiện giúp đỡ trong suốt quá
trình học tập và làm luận văn.
Thái Nguyên, tháng 8 năm 2015
Học viên
Trần Thị Dƣơng
Số hoá bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
iv
MỤC LỤC
LỜI CAM ĐOAN ................................................................................................... i
LỜI CẢM ƠN ....................................................................................................... iii
MỤC LỤC ............................................................................................................. iv
DANH MỤC HÌNH .............................................................................................. vi
MỞ ĐẦU ............................................................................................................ - 1 -
Chƣơng I : TỔNG QUAN VỀ HỆ CHUYÊN GIA VÀ MẠNG NGỮ NGHĨA- 3 -
1.1 Hệ chuyên gia. ........................................................................................ - 3 -
1.1.1. Hệ chuyên gia là gì ? ....................................................................... - 3 -
1.1.2 Đặc trƣng và ƣu điểm của hệ chuyên gia. ........................................ - 4 -
1.1.3 Các lĩnh vực ứng dụng của hệ chuyên gia ........................................ - 4 -
1.1.4 Cấu trúc của hệ chuyên gia ............................................................... - 6 -
1.1.5 Một số mô hình kiến trúc hệ chuyên gia .......................................... - 7 -
1.2. Mạng ngữ nghĩa ...................................................................................... - 8 -
1.2.1 Đặc điểm ........................................................................................... - 8 -
1.2.2 Ƣu nhƣợc điểm ................................................................................. - 9 -
1.2.3 Cách biểu diễn tri thức.................................................................... - 10 -
CHƢƠNG II: BIỂU DIỄN TRI THỨC ........................................................... - 12 -
2.1 Giới thiệu về tri thức .............................................................................. - 12 -
2.2 Biểu diễn tri thức bằng luật dẫn(luật sinh) ............................................ - 13 -
2.2.1. Khái niệm ...................................................................................... - 13 -
2.2.2. Cơ chế suy luận trên các luật sinh ................................................. - 14 -
2.2.3. Vấn đề tối ƣu luật .......................................................................... - 15 -
2.2.4. Biểu diễn tri thức bằng Frame ....................................................... - 17 -
2.2.5. Tính kế thừa ................................................................................... - 19 -
2.2.6. Biểu diễn tri thức bằng Script ........................................................ - 20 -
2.2.7. Mô hình COKB ............................................................................. - 21 -
2.3 Cơ sở tri thức ......................................................................................... - 29 -
2.3.1 Phân biệt tri thức và dữ liệu ..................................................... - 29 -
2.3.2 Phân loại tri thức ............................................................................. - 30 -
Số hoá bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
v
2.3.3 Các cấp độ tri thức .......................................................................... - 32 -
2.4. Mô tơ suy diễn ..................................................................................... - 33 -
2.4.1 Cơ chế suy diễn ............................................................................... - 33 -
2.4.2 Cơ chế điều khiển ............................................................................ - 34 -
2.5. Phân loại tri thức .................................................................................. - 38 -
2.6. Các phƣơng pháp biểu diễn tri thức ...................................................... - 39 -
2.6.1. Biểu diễn tri thức nhờ logic .......................................................... - 39 -
2.6.2. Bộ ba đối tƣợng - Thuộc tính – Giá trị .......................................... - 41 -
2.6.3. Các Luật dẫn .................................................................................. - 42 -
2.6.4. Biểu diễn tri thức bằng Frame ....................................................... - 44 -
Chƣơng III: ỨNG DỤNG GIẢI CÁC BÀI TOÁN TAM GIÁC ..................... - 46 -
3.1 Giới thiệu bài toán ................................................................................ - 46 -
3.2 Xây dựng bài toán hình học .................................................................. - 46 -
3.3. Bài toán hình tam giác: ......................................................................... - 46 -
3.3.1 Tam giác .......................................................................................... - 46 -
3.3.2 Tam giác cân ................................................................................... - 50 -
3.3.3 Tam giác vuông .............................................................................. - 51 -
3.3.4 Tam giác vuông cân ....................................................................... - 51 -
3.3.5 Tam giác đều .................................................................................. - 52 -
3.4 Các luật biến đổi .................................................................................... - 53 -
3.4.1.Một số luật liên quan đến tam giác : .............................................. - 53 -
3.4.2 Các luật dẫn: ................................................................................... - 54 -
3.5 Biểu diễn thông tin trên mạng ngữ nghĩa: ............................................. - 55 -
3.6 Ứng dụng : ............................................................................................. - 55 -
3.7 Demo chƣơng trình: ............................................................................... - 57 -
KẾT LUẬN ...................................................................................................... - 58 -
TÀI LIỆU THAM KHẢO ................................................................................ - 59 -
Số hoá bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
vi
DANH MỤC HÌNH
Hình 1.1: Hoạt động của hệ chuyên gia dựa trên tri thức .................................. - 3 -
Hình 1.2: Cấu trúc của hệ chuyên gia ................................................................ - 6 -
Hình 1.3: Mô hình J.L.Ermin ............................................................................. - 7 -
Hình 1.4 :Mô hình C.Ernest ............................................................................... - 8 -
Hình 1.5: Mô hình E.V.Popov ........................................................................... - 8 -
Hình 1.6: Ví dụ về mạng ngữ nghĩa tiêu biểu ..................................................- 10 -
Hình 1.7: Ví dụ về mạng ngữ nghĩa kế thừa ....................................................- 11 -
Hình 2.1: Cấu trúc một Frame xe hơi ..............................................................- 18 -
Hình 2.2: Quan hệ giữa các đối tƣợng hình học phẳng ...................................- 20 -
Hình 2.3: Sơ đồ tổ chức theo mô hình COKB .................................................- 25 -
Hình 2.4: Sơ đồ biểu diễn tri thức theo bộ ba (O-A-V) ...................................- 41 -
Hình 3.1: Mạng ngữ nghĩa cho bài toán hình tam giác ....................................- 55 -
Số hoá bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- 1 -
MỞ ĐẦU
1. Đặt vấn đề.
Trong sự nghiệp công nghiệp hoá, hiện đại hoá đất nƣớc, ngành công nghệ
thông tin là một trong những lĩnh vực có đƣợc những bƣớc tiến lớn và đạt đƣợc những
thành tựu đáng kể. Cùng với sự phát triển của ngành công nghệ thông tin, các vấn đề
phức tạp trong thực tế đƣợc đơn giản đi rất nhiều. Nhờ đó mà quá trình phát triển đƣợc
thúc đẩy nhanh chóng hơn.
Vai trò của của công nghệ thông tin trong thời buổi công nghiệp hoá, hiện đại
hoá đất nƣớc là không thể phủ nhận, tuy nhiên việc ứng dụng công nghệ thông tin vào
những lĩnh vực nào và ứng dụng nhƣ thế nào để có thể khai thác hết đƣợc thế mạnh
của ngành công nghệ thông tin luôn là một câu hỏi lớn. Việc ứng dụng tri thức nhân
loại vào trong ngành công nghệ thông tin để góp phần đƣa ra những lời giải cho nhiều
vấn đề khó đƣợc xem là một giải pháp và cần thiết và có ý nghĩa. Các tri thức nhân
loại đều có thể đƣợc xây dựng thành một hệ thống hoàn chỉnh và ứng dụng trong nhiều
ngành khác nhau dƣới sự hộ trợ của công nghệ thông tin. Việc chuyển đổi tri thức
nhân loại thành các hệ thống hay còn đƣợc gọi là biểu diễn tri thức vẫn đang đƣợc thực
hiện, những tri thức đó đã và đang đƣợc ứng dụng rộng rãi trong quá trình phát triển
của xã hội.
Biểu diễn tri thức đóng vai trò hết sức quan trọng trong việc khảng định khả
năng giải quyết vấn đề của một hệ cơ sở tri thức. Dựa vào cách thức con ngƣời giải
quyết vấn đề, các nhà nghiên cứu đã xây dựng các kỹ thuật biểu diễn các dạng tri thức
khác nhau trên máy tính. Mục tiêu của tiểu luận này là nhằm tìm hiểu và phát triển các
kỹ thuật biểu diễn tri thức dựa trên tri thức theo logic, các luật dẫn, mạng ngữ nghĩa,
Frame, đồng thời trình bày việc ứng dụng giải bài toán tam giác bằng mạng ngữ nghĩa
Trong luận văn này, em nghiên cứu và đƣa ra minh hoạ cho việc biểu diễn tri
thức trong công nghệ thông tin và ứng dụng minh hoạ cho quá trình biểu diễn tri thức
đó. Cho dù phạm vi ứng dụng của hệ thống này còn hạn chế, nhƣng đây là một cơ sở
để phát triển các hệ thống chuyên gia. Và trong luận văn này, em muốn gửi đến một
ứng dụng khác, đó là ứng dụng mạng ngữ nghĩa để giải bài toán tam giác lƣợng của
chƣơng trình phổ thông.
- 2 -
2. Đối tƣợng và phạm vi nghiên cứu:
Luận văn tập trung nghiên cứu các phƣơng pháp giải bài toán lƣợng giác. Để
giải các bài toán hình học là bài toán cơ sở, mà từ đó con ngƣời đã xây dựng rất nhiều
ứng dụng nhƣ: Giải các bài toán tam giác lƣơng, hệ thức lƣợng trong tam giác…
3. Hƣớng nghiên cứu của đề tài:
- Nắm chắc các kiến thức cơ bản về một số bài toán tam giác lƣợng để sử dụng
một số giải thuật .
- Tìm hiểu lịch sử phát triển của cơ sở tri thức trong giải các bài toán tam giác
lƣợng .
- Tìm hiểu và nắm đƣợc những khái niệm cơ bản về tam giác lƣợng và những
ứng dụng thực tế.
4. Nội dung nghiên cứu:
Chương I: Tổng quan về hệ chuyên gia và mạng ngữ nghĩa.
Ở chƣơng này đề tài sẽ đi vào tìm hiểu các khái niệm về hệ chuyên gia và mạng
ngữ nghĩa.
Các ƣu nhƣợc điểm của mạng ngữ nghĩa.
Chương II: Biểu diễn tri thức.
Trong chƣơng này đi tìm hiểu sâu về các luật và cách biểu diễn tri thức.
Chương III: Ứng dung mạng ngữ nghĩa để giải bài toán tam giác lượng.
Chƣơng này sẽ đƣa ra mục đích, yêu cầu cũng nhƣ mô tả chƣơng trình thực
nghiệm đã đƣợc xây dựng
5. Phƣơng pháp nghiên cứu:
- Nghiên cứu các tài liệu và viết tổng quan.
- Phƣơng pháp phân tích, đánh giá bài toán
- Nghiên cứu triển khai thử nghiệm hệ thống
- 3 -
Chƣơng I : TỔNG QUAN VỀ HỆ CHUYÊN GIA
VÀ MẠNG NGỮ NGHĨA
1.1 Hệ chuyên gia.
1.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ết các vấn đề
khó hoặc hóc búa đòi hỏi sự tinh thông đầy đủ của các chuyên gia con ngƣời đối với
các giải pháp của họ. Nói một cách khá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ất trong lĩnh vực quan tâm.
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
đƣợc cấ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 con ngƣời 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ất
lƣợ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 đó, nhƣ y học,
tài chính, khoa học hay công nghệ, vv…, mà không phải là cho bất cứ một lĩnh vự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ây nhiễ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 y họ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:
Cơ sở tri thức
Ngƣời sử dụng
Hệ thống giao tiếp
Máy suy diễn
Hình 1.1: Hoạt động của hệ chuyên gia dựa trên tri thức
- 4 -
1.1.2 Đặc trưng và ưu điểm của hệ chuyên gia.
Có 4 đặc trƣng cơ bản:
Hiệu quả cao: Khả năng trả lời với mức độ tinh thông bằng hoặc cao hơ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 nhanh hơ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ới hiệu quả
sử dụng không thể phủ nhận.
Giảm giá thành.
Giảm rủi ro: Giúp con ngƣời tránh đƣợc rủi ro trong các môi trƣờng nguy
hiểm.
Tính thƣờng trực: Bất kể lúc nào cũng có thể khai thác sử dụng. Trong khi con
ngƣời có thể mệt mỏi, nghỉ ngơi hay vắng mặt.
Đa lĩnh vực: Chuyên gia về nhiều lĩnh vực khác nhau và đƣợc khai thác đồng
thời bất kể thời gian sử dụng.
Độ tin cậy.
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.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 ra còn các hệ
- 5 -
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êng
Chẩn đoán
Lập luận dựa trên những chứng cứ quan sát đƣợc
Truyền đạt
Dạy học kiểu thông minh sao cho sinh viên có thể hỏi
Giả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ị
- 6 -
1.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 :
Chuyên gia con ngƣời
Ngƣời sử dụng
Giao diện ngƣời, máy
Bộ thu nạp tri thức
Bộ giải thích
Mô tơ suy diễn
Suy diễn Điều khiển
Cơ sở tri thức
Bộ nhớ làm việc
Hình 1.2: Cấu trúc của hệ chuyên gia
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ĩnh vự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.
- 7 -
Bộ thu nạp tri thức : Làm nhiệm vụ thu nhận tri thức từ chuyên gia con
ngƣờ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ầu củ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ệ đảm
nhậ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.
Mô tơ suy diễn : Làm nhiệm vụ sử lý và điều khiển các tri thức đƣợc biể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ủa ngƣờ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ũy tri 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ản trị 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ạp tri 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.1.5 Một số mô hình kiến trúc hệ chuyên gia
a)Mô hình J.L.Ermin:
Hình 1.3: Mô hình J.L.Ermin
- 8 -
b)Mô hình C.Ernest :
Hình1.4 :Mô hình C.Ernest
c)Mô hình E.V.Popov :
Hình 1.5: Mô hình E.V.Popov
1.2. Mạng ngữ nghĩa
1.2.1 Đặc điểm
Mạng ngữ nghĩa là một phƣơng pháp biểu diễn tri thức, đƣợc xây dựng dựa trên
phƣơng pháp đồ thị để biểu diễn các mối liên hệ giữa các tri thức tổng quát, các khái
niệm, các sự việc...
Do mạng ngữ nghĩa là một loại đồ thị cho nên ta có thể dùng những thuật toán
của đồ thị trên mạng ngữ nghĩa nhƣ thuật toán tìm liên thông, tìm đƣờng đi ngắn
nhất,… để thực hiện các cơ chế suy luận. Điểm đặc biệt của mạng ngữ nghĩa so với đồ
thị thông thƣờng chính là việc gán một ý nghĩa cho các cung. Cung nối giữa hai đỉnh
- 9 -
cho biết giữa hai khái niệm tƣơng ứng có sự liên hệ nhƣ thế nào. Việc gán ngữ nghĩa
vào các cung của đồ thị đã giúp giảm bớt đƣợc số lƣợng đồ thị cần phải dùng để biễu
diễn các mối liên hệ giữa các khái niệm.
Một đặc điểm quan trọng của mạng ngữ nghĩa là tính kế thừa. Chính đặc tính kế thừa
của mạng ngữ nghĩa đã cho phép ta có thể thực hiện đƣợc rất nhiều phép suy diễn từ
những thông tin sẵn có trên mạng.
Cơ chế suy diễn áp dụng trong mạng ngữ nghĩa là thực hiện theo thuật toán loang
truyền đơn giản theo hai bƣớc sau:
Kích hoạt các đỉnh đã cho ban đầu (các đỉnh đã có giá trị)
Nếu một đỉnh chƣa xác định nối với n đỉnh khác (thông qua những mối liên hệ).
Và trong đó có n-1 đỉnh đã xác định thì đỉnh đó cũng đƣợc xác định. Lặp lại
bƣớc này cho đến khi xác định đƣợc tất cả các đỉnh.
1.2.2 Ưu nhược điểm
1.2.2.1 Ưu điểm:
Mạng ngữ nghĩa rất linh động, có thể thêm vào mạng các đỉnh hoặc cung
mới để bổ sung các tri thức cần thiết
Mạng ngữ nghĩa có tính trực quan cao nên rất dễ hiểu
Mạng ngữ nghĩa cho phép các đỉnh có thể kế thừa các tính chất từ các đỉnh
khá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ữa những
đỉnh không có liên kết trực tiếp với nhau.
Mạng ngữ nghĩa hoạt động khá tự nhiên theo cách thức con ngƣời ghi nhận
thông tin.
1.2.2.2 Nhược điểm:
Vẫn chƣa có một chuẩn nào quy định các giới hạn cho các đỉnh và cung của
mạng. Điều đó đồng nghĩa với ngƣời dùng có thể gắn bất kỳ khái niệm nào cho đỉnh
hoặc cung.
Tính thừa kế trong mạng có thể dẫn đến khả năng mâu thuẩn tri thức
- 10 -
1.2.3 Cách biểu diễn tri thức
Khi biểu diễn một mạng ngữ nghĩa, các đỉnh của đồ thị là các đối tƣợng (khái
niệm, tri thức, sự việc) nào đó, còn các cung giữa các đỉnh thể hiện các mối liên hệ
giữa các đối tƣợng (khái niệm, tri thức, sự việc) này.
Hình 1.6: Ví dụ về mạng ngữ nghĩa tiêu biểu
Trong ví dụ trên, các yếu tố nhƣ “Xe máy, Xe, Động cơ, Xăng, Đƣờng” đƣợc
xem là các đối tƣợng của mạng ngữ nghĩa. Trong khi đó các yếu tố “Là, Di chuyển
trên, chạy bằng hay có” là các mối liên hệ giữa các đối tƣợng.
- 11 -
Xét ví dụ bên dƣới đây:
Hình 1.7: Ví dụ về mạng ngữ nghĩa kế thừa
Trong mạng ngữ nghĩa trên ta có thể thấy đƣợc các mối quan hệ nhƣ sau:
- Hình vuông là hình chữ nhật + là tứ giác + có 4 góc. Từ đó ta có thể suy luận
đƣợc là hình vuông có 4 góc.
- Hình chữ nhật là hình bình hành + hình bình hành có hai cặp cạnh bằng nhau.
Từ đó có thể suy ra hình chữ nhật có hai cặp cạnh bằng nhau.
Dù không có đƣờng liên hệ trực tiếp từ đối tƣợng “Hình vuông” đến đối tƣợng
“4 góc” nhƣng thông qua tính chất kế thừa ta có thể xác định đƣợc là đối tƣợng
“Hìnhvuông” có liên hệ “có” với đối tƣợng “4 góc”.
Tƣơng tự với trƣờng hợp của đối tƣợng “Hình chữ nhật” và đối tƣợng “Hai cặp
cạnh bằng nhau”.
Tuy mạng ngữ nghĩa là một kiểu biểu diễn trực quan đối với con ngƣời nhƣng
khi đƣa vào máy tính, các đối tƣợng và mối liên hệ giữa chúng thƣờng đƣợc biểu diễn
dƣới dạng những phát biểu động từ (nhƣ vị từ). Hơn nữa, các thao tác tìm kiếm trên
mạng ngữ nghĩa thƣờng khó khăn (đặc biệt đối với những mạng có kích thƣớc lớn).
Do đó, mô hình mạng ngữ nghĩa đƣợc dùng chủ yếu để phân tích vấn đề. Sau đó, nó sẽ
đƣợc chuyển đổi sang dạng luật hoặc frame để thi hành hoặc mạng ngữ nghĩa sẽ đƣợc
dùng kết hợp với một số phƣơng pháp biểu diễn khác.
- 12 -
CHƢƠNG II: BIỂU DIỄN TRI THỨC
2.1 Giới thiệu về tri thức
Tri thức (knowledge): là sự hiểu biết của ngƣời trong một phạm vi, lĩnh vực nào
đó; đƣợc xem xét theo các mục tiêu hay các vấn đề nhất định.
Ví dụ:
- Kiến thức về một lĩnh vực y học và khả năng chẩn đoán bệnh là tri thức.
- Biết một tam giác có các yếu tố nào cùng với các công thức liên hệ giữa các
yếu tố là tri thức.
- Biết các dạng cấu trúc dữ liệu thƣờng dùng trong lập trình cùng với các thuật
toán xử lý cơ bản trên các cấu trúc là tri thức.
Các dạng tri thức
- Tri thức mô tả: các khái niệm, các đối tƣợng cơ bản.
- Tri thức cấu trúc: các khái niệm cấu trúc, các quan hệ, các đối tƣợng phức
hợp, ...
- Tri thức thủ tục: các luật dẫn, các thủ tục xử lý, các chiến lƣợc, …
- Tri thức meta: tri thức về các dạng tri thức khác và cách sử dụng chúng.
Tri thức là một hệ thống phức tạp, đa dạng và trừu tƣợng bao gồm nhiều thành
tố với những mối liên hệ tác động qua lại nhƣ:
- Các khái niệm (concepts), với những mối liên hệ cơ bản nhất định
(relationships).
- Các quan hệ (relations): Xem lại kiến thức về quan hệ ở góc độ toán học
trong giáo trình “Toán Rời Rạc”:
o Định nghĩa quan hệ 2 ngôi.
o Các tính chất về một quan hệ 2 ngôi R trên một tập X: phản xạ, đối xứng,
phản xứng, bắc cầu.
o Quan hệ thứ tự.
o Quan hệ tƣơng đƣơng.
o Cách biểu diễn của một quan hệ 2 ngôi R trên tập X: Biểu diễn dựa trên “tập
hợp”,biểu diễn bằng ma trận, biểu đồ (đồ thị).
- Các toán tử (operators), phép toán, các biểu thức hay công thức
- 13 -
o Phép toán 2 ngôi T trên tập X là ánh xạ
T : XxX X
(a,b) a T b ≡ T(a,b)
Ví dụ: T: NxN N
(a,b) a+b
o Phép toán 1 ngôi S trên tập X là
S : X X
o Các tính chất thƣờng đƣợc xem xét: giao hoán, kết hợp, phần tử trung hòa,
phần tử nghịch đảo, phần tử đối, phân phối (hay phân bố), …
- Các hàm (functions).
- Các luật (rules).
- Sự kiện (facts).
- Các thực thể hay đối tƣợng, một phần tử cụ thể (objects).
2.2 Biểu diễn tri thức bằng luật dẫn(luật sinh)
2.2.1. Khái niệm
Phƣơng pháp biểu diễn tri thức bằng luật sinh đƣợc phát minh bởi Newell và
Simon trong lúc hai ông đang cố gắng xây dựng một hệ giải bài toán tổng quát.Đây là
một kiểu biểu diễn tri thức có cấu trúc. Ý tƣởng cơ bản là tri thức có thể đƣợc cấu trúc
bằng một cặp điều kiện và hành động: "NẾU điều kiện xảy ra THÌ hành động sẽ đƣợc
thi hành". Chẳng hạn, NẾU đèn giao thông là đỏ THÌ bạn không đƣợc đi thẳng, NẾU
máy tính đã mở mà không khởi động đƣợc THÌ kiểm tra nguồn điện,…
Ngày nay, các luật sinh đã trở nên phổ biến và đƣợc áp dụng rộng rãi trong
nhiều hệ thống trí tuệ nhân tạo khác nhau.Luật sinh có thể là một công cụ mô tả để giải
quyết các vấn đề thực tế thay cho các kiểu phân tích vấn đề truyền thống.Trong trƣờng
hợp này, các luật đƣợc dùng nhƣ là những chỉ dẫn (tuy có thể không hoàn chỉnh)
nhƣng rất hữu ích để trợ giúp cho các quyết định trong quá trình tìm kiếm, từ đó làm
giảm không gian tìm kiếm.Một ví dụ khác là luật sinh có thể đƣợc dùng để bắt chƣớc
hành vi của những chuyên gia. Theo cách này, luật sinh không chỉ đơn thuần là một
- 14 -
kiểu biểu diễn tri thức trong máy tính mà là một kiểu biễu diễn các hành vi của con
ngƣời.
Một cách tổng quát luật sinh có dạng nhƣ sau:
P1 P2 ... Pn Q
Tùy vào các vấn đề đang quan tâm mà luật sinh có những ngữ nghĩa hay cấu tạo
khác nhau:
- Trong logic vị từ: P1, P2, ..., Pn, Q là những biểu thức logic.
- Trong ngôn ngữ lập trình, mỗi một luật sinh là một câu lệnh.
IF (P1 AND P2AND ..AND Pn) THEN Q.
- Trong lý thuyết hiểu ngôn ngữ tự nhiên, mỗi luật sinh là một phép dịch:
ONE một.
TWO hai.
JANUARY tháng một.
Để biễu diễn một tập luật sinh, ngƣời ta thƣờng phải chỉ rõ hai thành phần chính
sau:
- Tập các sự kiện F(Facts)
F = {f1, f2, ... fn}
- Tập các quy tắc R (Rules) áp dụng trên các sự kiện dạng nhƣ sau :
f1 ^ f2 ^ ... ^ fi q
Trong đó, các fi, q đều thuộc F
2.2.2. Cơ chế suy luận trên các luật sinh
- Suy diễn tiến: là quá trình suy luận xuất phát từ một số sự kiện ban đầu, xác
định các sự kiện có thể đƣợc "sinh" ra từ sự kiện này.
Sự kiện ban đầu: H, K
R3: H A {A, H. K }
R1: A E { A, E, H, K }
R5: E K B { A, B, E, H, K }
R2: B D { A, B, D, E, H, K }
- 15 -
R6: D E K C { A, B, C, D, E, H, K }
- Suy diễn lùi: là quá trình suy luận ngƣợc xuất phát từ một số sự kiện ban
đầu, ta tìm kiếm các sự kiện đã "sinh" ra sự kiện này. Một ví dụ thƣờng gặp trong thực
tế là xuất phát từ các tình trạng của máy tính, chẩn đoán xem máy tính đã bị hỏng hóc
ở đâu.
2.2.3. Vấn đề tối ưu luật
Tập các luật trong một cơ sở tri thức rất có khả năng thừa, trùng lắp hoặc mâu
thuẫn.Dĩ nhiên là hệ thống có thể đổ lỗi cho ngƣời dùng về việc đƣa vào hệ thống
những tri thức nhƣ vậy. Tuy việc tối ƣu một cơ sở tri thức về mặt tổng quát là một thao
tác khó (vì giữa các tri thức thƣờng có quan hệ không tƣờng minh), nhƣng trong giới
hạn cơ sở tri thức dƣới dạng luật, ta vẫn có một số thuật toán đơn giản để loại bỏ các
vấn đề này.
- Rút gọn bên phải:
luật sau hiển nhiên đúng :A B A (1)
do đó luật: A BA C
là hoàn toàn tƣơng đƣơng với: A BC
Quy tắc rút gọn : Có thể loại bỏ những sự kiện bên vế phải nếu những sự kiện
đó đã xuất hiện bên vế trái. Nếu sau khi rút gọn mà vế phải trở thành rỗng thì luật đó là
luật hiển nhiên. Ta có thể loại bỏ các luật hiển nhiên ra khỏi tri thức.
- Rút gọn bên trái:
Xét các luật : (L1) A, B C (L2) A X (L3) X C
Rõ ràng là luật A, B C có thể đƣợc thay thế bằng luật A C mà không làm
ảnh hƣởng đến các kết luận trong mọi trƣờng hợp. Ta nói rằng sự kiện B trong luật (1)
là dƣ thừa và có thể đƣợc loại bỏ khỏi luật dẫn trên.
- Phân rã và kết hợp luật:
Luật: A B C
Tƣơng đƣơng với hai luật: A C và B C
Với quy tắc này, ta có thể loại bỏ hoàn toàn các luật có phép nối HOẶC.Các
luật có phép nối này thƣờng làm cho thao tác xử lý trở nên phức tạp.
- 16 -
- Luật thừa:
Một luật dẫn A B đƣợc gọi là thừa nếu có thể suy ra luật này từ những luật
còn lại.
Ví dụ : trong tập các luật gồm {A B, B C, A C} thì luật thứ 3 là luật
thừa vì nó có thể đƣợc suy ra từ 2 luật còn lại.
- Thuật toán tối ƣu tập luật dẫn:
Thuật toán này sẽ tối ƣu hóa tập luật đã cho bằng cách loại đi các luật có phép
nối HOẶC, các luật hiển nhiên hoặc các luật thừa.
Thuật toán bao gồm các bƣớc chính:
B1: Rút gọn vế phải
Với mỗi luật r trong R
Với mỗi sự kiện A VếPhải(r)
Nếu A VếTrái(r) thì Loại A ra khỏi vế phải của R.
Nếu VếPhải(r) rỗng thì loại bỏ r ra khỏi hệ luật dẫn : R = R \{r}
B2: Phân rã các luật
Với mỗi luật r : X1 X2 … Xn Y trong R
Với mỗi i từ 1 đến n R := R + { Xi Y }
R := R \ {r}
B3: Loại bỏ luật thừa
Với mỗi luật r thuộc R
Nếu VếPhải(r) BaoĐóng(VếTrái(r), R-{r}) thì R := R \ {r}
B4: Rút gọn vế trái
Với mỗi luật dẫn r : X : A1 A2, …, An Y thuộc R
Với mỗi sự kiện Ai r
Gọi luật r1 : X - Ai Y
S = (R - {r}) {r1}
Nếu BaoĐóng (X - Ai , S) BaoĐóng (X, R) thì loại sự kiện A ra khỏi X
- 17 -
2.2.4. Biểu diễn tri thức bằng Frame
2.2.4.1. Khái niệm
Frame là một cấu trúc dữ liệu chứa đựng tất cả những trithức liên quan đến một
đối tƣợng cụ thể nào đó. Frames có liên hệ chặt chẽ đến khái niệm hƣớng đối tƣợng
(thực ra frame là nguồn gốc của lập trình hƣớng đối tƣợng). Ngƣợc lại với các phƣơng
pháp biểu diễn tri thức đã đƣợc đề cập đến, frame "đóng gói" toàn bộ một đối tƣợng,
tình huống hoặc cả một vấn đề phức tạp thành một thực thể duy nhất có cấu trúc. Một
frame bao hàm trong nó một khối lƣợng tƣơng đối lớn trithức về một đối tƣợng, sự
kiện, vị trí, tình huống hoặc những yếu tố khác. Do đó, frame có thể giúp ta mô tả khá
chi tiết một đối tƣợng.
Dƣới một khía cạnh nào đó, ngƣời ta có thể xem phƣơng pháp
biểudiễntrithứcbằngframe chính là nguồn gốc của ngôn ngữ lập trình hƣớng đối tƣợng.
Ý tƣởng của phƣơng pháp này là "thay vì bắt người dùng sử dụng các công cụ phụ như
dao mở để đồ hộp, ngày nay các hãng sản xuất đồ hộp thường gắn kèm các nắp mở đồ
hộp ngay bên trên vỏ lon. Như vậy, người dùng sẽ không bao giờ phải lo lắng đến việc
tìm một thiết bị để mở đồ hộp nữa!". Cũng vậy, ý tƣởng chính của frame (hay của
phƣơng pháp lập trình hƣớng đối tƣợng) là khi biểudiễn một trithức, ta sẽ "gắn kèm"
những thao tác thƣờng gặp trên trithức này. Chẳng hạn nhƣ khi mô tả khái niệm về
hình chữ nhật, ta sẽ gắn kèm cách tính chu vi, diện tích.
Frame thƣờng đƣợc dùng để biểudiễn những trithức "chuẩn" hoặc những trithức
đƣợc xây dựng dựa trên những kinh nghiệm hoặc các đặc điểm đã đƣợc hiểu biết cặn
kẽ. Bộ não của con ngƣời chúng ta vẫn luôn "lƣu trữ" rất nhiều các trithức chung mà
khi cần, chúng ta có thể "lấy ra" để vận dụng nó trong những vấn đề cần phải giải
quyết.Frame là một công cụ thích hợp để biểudiễn những kiểu trithức này.
- 18 -
Frame : XE HƠI
Thuộc lớp :phƣơng tiện vận chuyển.
Tên nhà sản xuất : Audi
Quốc gia của nhà sản xuất : Đức
Model : 5000 Turbo
Loại xe : Sedan Frame MÁY Trọng lượng : 3300lb Xy-lanh : 3.19 inch Số lượng cửa : 4 (default) Tỷ lệ nén : 3.4 inche Hộp số : 3 số tự động Xăng : TurboCharger Số lượng bánh : 4 (default) Mã lực : 140 hp Máy (tham chiếu đến frame Máy)
Kiểu : In-line, overhead cam
Số xy-lanh : 5
Khả năng tăng tốc
0-60 : 10.4 giây
¼ dặm : 17.1 giây, 85 mph.
Hình 2.1: Cấu trúc một Frame xe hơi
2.2.4.2. Cấu trúc của Frame
Mỗi một frame mô tả một đối tượng (object). Một frame bao gồm 2 thành phần
cơ bản là slot và facet. Một slot là một thuộc tính đặc tả đối tƣợng đƣợc biểudiễn bởi
frame. Ví dụ : trong frame mô tả xe hơi, có hai slot là trọng lượng và loại máy.
Mỗi slot có thể chứa một hoặc nhiều facet. Các facet (đôi lúc đƣợc gọi là slot
"con") đặc tả một số thông tin hoặc thủ tục liên quan đến thuộc tính đƣợc mô tả bởi
slot. Facet có nhiều loại khác nhau, sau đây là một số facet thƣờng gặp:
- Value (giá trị) : cho biết giá trị của thuộc tính đó (nhƣ xanh, đỏ, tím vàng
nếu slot là màu xe).
- Default (giá trị mặc định) : hệ thống sẽ tự động sử dụng giá trị trong facet
này nếu slot là rỗng (nghĩa là chẳng có đặc tả nào!). Chẳng hạn trong frame về xe, xét
- 19 -
slot về số lượng bánh. Slot này sẽ có giá trị 4. Nghĩa là, mặc định một chiếc xe hơi sẽ
có 4 bánh!
- Range (miền giá trị) : (tƣơng tự nhƣ kiểu biến), cho biết giá trị slot có thể
nhận những loại giá trị gì (nhƣ số nguyên, số thực, chữ cái, ...)
- If added: mô tả một hành động sẽ đƣợc thi hành khi một giá trị trong slot
đƣợc thêm vào (hoặc đƣợc hiệu chỉnh). Thủ tục thƣờng đƣợc viết dƣới dạng một
script.
- If needed :đƣợc sử dụng khi slot không có giá trị nào. Facet mô tả một hàm
để tính ra giá trị của slot.
2.2.5. Tính kế thừa
Trong thực tế, một hệ thống trí tuệ nhân tạo thƣờng sử dụng nhiều frame đƣợc
liên kết với nhau theo một cách nào đó. Một trong những điểm thú vị của frame là tính
phân cấp. Đặc tính này cho phép kế thừa các tính chất giữa các frame.
Hình sau đây cho thấy cấu trúc phân cấp của các loại hình hình học cơ bản.Gốc
của cây ở trên cùng tƣơng ứng với mức độ trừu tƣợng cao nhất. Các frame nằm ở dƣới
cùng (không có frame con nào) gọi là lá. Những frame nằm ở mức thấp hơn có thể
thừa kế tất cả những tính chất của những frame cao hơn.
Các frame cha sẽ cung cấp những mô tả tổng quát về thực thể. Frame có cấp
càng cao thì mức độ tổng quát càng cao. Thông thƣờng, frame cha sẽ bao gồm các
định nghĩa của các thuộc tính. Còn các frame con sẽ chứa đựng giá trị thực sự của các
thuộc tính này.
- 20 -
Hình 2.2: Quan hệ giữa các đối tượng hình học phẳng
2.2.6. Biểu diễn tri thức bằng Script
Script là một cách biểu diễn tri thức tƣơng tự nhƣ frame nhƣng thay vì đặc tả
một đối tƣợng, nó mô tả một chuỗi các sự kiện.Để mô tả chuỗi sự kiện, script sử dụng
một dãy các slot chứa thông tin về các con ngƣời, đối tƣợng và hành động liên quan
đến sự kiện đó.
Tuy cấu trúc của các script là rất khác nhau tùy theo bài toán, nhƣng nhìn chung
một script thƣờng bao gồm các thành phần sau :
- Điều kiện vào(entry condition): mô tả những tình huống hoặc điều kiện cần
đƣợc thỏa mãn trƣớc khi các sự kiện trong script có thể diễn ra.
- Role (đóng vai): là những con ngƣời có liên quan trong script.
- Prop (tác tố): là tất cả những đối tƣợng đƣợc sử dụng trong các chuỗi sự
kiện sẽ diễn ra.
- Scene(Tình huống): là chuỗi sự kiện thực sự diễn ra.
- Result (Kết quả): trạng thái của các Role sau khi script đã thi hành xong.
- Track (phiên bản): mô tả một biến thể (hoặc trƣờng hợp đặc biệt) có thể xảy
ra trong đoạn script.
- 21 -
Script rất hữu dụng trong việc dự đoán điều gì sẽ xảy đến trong những tình
huống xác định.Thậm chí trong những tình huống chƣa diễn ra, script còn cho phép
máy tính dự đoán đƣợc việc gì sẽ xảy ra và xảy ra đối với ai và vào thời điểm nào.Nếu
máy tính kích hoạt một script, ngƣời dùng có thể đặt câu hỏi và hệ thống có thể suy ra
đƣợc những câu trả lời chính xác mà không cần ngƣời dùng cung cấp thêm nhiều
thông tin (trong một số trƣờng hợp có thể không cần thêm thông tin). Do đó, cũng
giống nhƣ frame, script là một dạng biểu diễn tri thức tƣơng đối hữu dụng vì nó cho
phép ta mô tả chính xác những tình huống "chuẩn" mà con ngƣời vẫn thực hiện mỗi
ngày hoặc đã nắm bắt chính xác.
2.2.7. Mô hình COKB
2.2.7.1. Định nghĩa về mô hình COKB
Mô hình biểu diễn tri thức COKB(Computational Objects Knowledge Base) là
một mô hình tri thức của các đối tƣợng tính toán. Mô hình COKB là một hệ thống gồm
6 thành phần chính đƣợc ký hiệu bởi bộ 6 nhƣ sau:
(C,H,R,Opts, Funcs,Rules)
Tập hợp C (các khái niệm về các C_Object):
Các khái niệm đƣợc xây dựng dựa trên các đối tƣợng. Mỗi khái niệm là một lớp
các đối tƣợng tính toán có cấu trúc nhất định và đƣợc phân cấp theo sự thiết lập của
cấu trúc đối tƣợng, bao gồm:
- Các đối tƣợng (hay khái niệm) nền: là các đối tƣợng (hay khái niệm) đƣợc
mặc nhiên thừa nhận. Ví dụ: nhƣ một số đối tƣợng kiểu boolean (logic), số tự nhiên
(natural), số nguyên (integer), số thực (real), tập hợp (set), danh sách (list) hay một số
kiểu tự định nghĩa.
- Các đối tƣợng cơ bản (hay khái niệm) cơ bản cấp 0: có cấu trúc rỗng hoặc có
cấu trúc thiết lập trên một số thuộc tính kiểu khái niệm nền: Các đối tƣợng(hay khái
niệm) này làm nền cho các đối tƣợng(hay các khái niệm) cấp cao hơn. Ví dụ: đối
tƣợng DIEM có kiểu mô tả không có cấu trúc thiết lập.
- Các đối tƣợng (hay khái niệm) cấp 1: Các đối tƣợng này chỉ có các thuộc
tính kiểu khái niệm nền và có thể đƣợc thiết lập trên một danh sách nền các đối tƣợng
- 22 -
cơ bản. Ví dụ: đối tƣợng DOAN[A,B] trong đó A, B là các đối tƣợng cơ bản loại
DIEM, thuộc tính a biểu thị độ dài đoạn thẳng có kiểu tƣơng ứng là “real”.
- Các đối tƣợng (hay khái niệm) cấp 2: Các đối tƣợng này có các thuộc tính
kiểu khái niệm nền và các thuộc tính loại đối tƣợng cấp 1, có thể đƣợc thiết lập trên
một danh sách nền các đối tƣợng cơ bản. Ví dụ: đối tƣợng TAMGIAC[A,B,C] trong
đó A, B, C là các đối tƣợng cơ bản loại DIEM, các thuộc tính nhƣ GocA, a, S có kiểu
tƣơng ứng là “GOC[C,A,B]”, “DOAN[B,C]”, “real”.
- Các đối tƣợng (hay khái niệm) cấp n >0: Các đối tƣợng này có các thuộc tính
kiểu khái niệm nền và các thuộc tính loại đối tƣợng cấp thấp hơn, có thể đƣợc thiết lập
trên một danh sách nền các đối tƣợng cấp thấp hơn.
Cấu trúc bên trong của mỗi lớp đối tƣợng:
- Kiểu đối tƣợng: Kiểu này có thể là kiểu thiết lập trên một danh sách nền các
đối tƣợng cấp thấp hơn.
- Danh sách các thuộc tính của đối tƣợng: Mỗi thuộc tính có kiểu thực, kiểu
đối tƣợng cơ bản hay kiểu đối tƣợng cấp thấp hơn. Phân ra làm 2 loại là tập các thuộc
tính thiết lập của đối tƣợng và tập các thuộc tính khác (còn gọi là tập thuộc tính).
- Tập hợp các điều kiện ràng buộc trên các thuộc tính.
- Tập hợp các tính chất nội tại hay sự kiện vốn có liên quan đến các thuộc tính
của đối tƣợng.
- Tập hợp các quan hệ suy diễn - tính toán trên các thuộc tính của đối tƣợng.
Các quan hệ này thể hiện các luật suy diễn và cho phép ta có thể tính toán một hay một
số thuộc tính từ các thuộc tính khác của đối tƣợng.
- Tập hợp các luật suy diễn trên các loại sự kiện khác nhau liên quan đến các
thuộc tính của đối tƣợng hay bản thân đối tƣợng. Mỗi luật suy diễn có dạng: {các sự
kiện giả thiết} {các sự kiện kết luận}.
Tập hợp H (các quan hệ phân cấp giữa các đối tượng)
Trong tập C, ta có các quan hệ mà theo đó có thể có những khái niệm là sự đặc
biệt hoá của những khái niệm khác. Có thể nói, H là một biểu đồ Hasse trên C khi xem
quan hệ phân cấp là một quan hệ thứ tự trên C.
Cấu trúc của một quan hệ phân cấp:
- 23 -
[
Tập hợp R các khái niệm về các loại quan hệ trên các C-Object
Mỗi quan hệ đƣợc xác định bởi tên quan hệ và danh sách các loại đối tƣợng của
quan hệ. Đối với quan hệ 2 hay 3 ngôi thì quan hệ có thể có các tính chất nhƣ tính
phản xạ, tính phản xứng, tính đối xứng và tính bắc cầu.
Cấu trúc của một quan hệ:
[ < tên quan hệ > , < loại đối tƣợng > , < loại đối tƣợng > ,…] , {< tính chất > , <
tính chất >}.
Tập hợp Opts các toán tử
Các toán tử thể hiện các qui tắc tính toán nhất định trên các biến thực cũng nhƣ
trên các đối tƣợng. Chẳng hạn nhƣ các phép toán số học, các phép tính toán trên các
đối tƣợng đoạn, góc tƣơng tự nhƣ đối với các biến thực hay các phép tính toán vecto,
tính toán ma trận,… Trong trƣờng hợp các phép toán 2 ngôi thì phép toán có thể có
các tính chất nhƣ tính giao hoán, tính kết hợp,tính nghịch đảo, tính trung hoà.
Tập hợp Funcs các hàm
Tập hợp Funcs trong mô hình COKB thể hiện tri thức về các hàm hay nói cách
khác là thể hiện tri thức về các khái niệm và các qui tắc tính toán trên các biến thực
cũng nhƣ trên các loại C-Object, đƣợc xây dựng thông qua các quan hệ tính toán dạng
hàm. Mỗi hàm đƣợc xác định bởi
nghĩa hàm về phƣơng diện toán học.
Tập hợp Rules các luật
Mỗi luật cho ta một qui tắc suy luận để từ các sự kiện đang biết suy ra đƣợc các
sự kiện mới thông qua việc áp dụng các định luật, định lý hay các qui tắc tính toán nào
đó. Mỗi luật suy diễn r có thể đƣợc mô hình hoá dƣới dạng :
r : {sk1, sk2, ..., skm} {skm+1, skm+2, ..., skn}.
Cấu trúc của một luật:
[ Kind, BasicO, Hypos, Goals]
Trong đó:
- Kind: loại luật.
- BaseO: tập các đối tƣợng cơ bản.
- 24 -
- Hypos: tập các sự kiện giả thiết của một luật.
- Goals: tập các sự kiện kết luận của một luật.
2.2.7.2. Tổ chức cơ sở tri thức theo COKB
Cơ sở tri thức đƣợc tổ chức bởi một hệ thống tập tin văn bản có cấu trúc dựa
trên một số từ khoá và qui ƣớc về cú pháp, thể hiện các thành phần trong mô hình tri
thức COKB. Hệ thống này bao gồm các tập tin nhƣ sau:
- Tập tin OBJECT.txt : Lƣu trữ tất cả các khái niệm đối tƣợng của cơ sở tri
thức.
- Tập tin HIERARCHY.txt: Lƣu lại các biểu đồ Hasse thể hiện quan hệ phân
cấp đặc biệt hoá giữa các loại đối tƣợng C-Object.
- Tập tin RELATIONS.txt: Lƣu trữ tất cả các quan hệ cũng nhƣ các tính chất
giữa các loại đối tƣợng C-Object.
- Tập tin OPERATORS.txt: lƣu trữ các thông tin, cơ sở tri thức của thành
phần toán tử trên các đối tƣợng C-Object.
- Tập tin OPERATORS_DEF.txt: Lƣu trữ định nghĩa về các loại toán tử hay
định nghĩa của các thủ tục tính toán phục vụ toán tử.
- Tập tin RULES.txt: Lƣu trữ các hệ luật trên các loại đối tƣợng và các sự
kiện trong cơ sở tri thức.
- Tập tin FUNCTIONS.txt: Lƣu trữ cách khai báo hàm, thông tin về hảm trên
các C-Object.
- Tập tin FUNCTIONS_DEF.txt: Lƣu trữ định nghĩa về các hàm trên các đối
tƣợng và các sự kiện.
- Các tập tin có tên
tƣợng
2.2.7.3. Sơ đồ tổ chức cơ sở tri thức
Mối liên hệ về cấu trúc thông tin trong cơ sở tri thức có thể đƣợc minh hoạ trên
sơ đồ sau đây:
- 25 -
Hình 2.3: Sơ đồ tổ chức theo mô hình COKB
2.2.7.4. Ngôn ngữ đặc tả theo mô hình COKB
- Ngôn ngữ đặc tả theo mô hình COKB đƣợc xây dựng để biểu diễn cho các tri
thức có dạng COKB. Ngôn ngữ này bao gồm các thành phần :
o Tập hợp các kí tự : chữ, số và các ký tự đặc biệt.
o Từ vựng : từ khóa và tên.
o Các kiểu dữ liệu : Các kiểu dữ liệu cơ bản và các loại có cấu trúc.
o Các biểu thức và câu.
o Các câu lệnh.
o Cú pháp quy định cho các thành phần của mô hình COKB.
2.2.7.5. Các loại sự kiện trong mô hình COKB
- Sự kiện loại 1: Sự kiện thông tin về loại của đối tƣợng.
Cấu trúc sự kiện: [<đối tƣợng>,
- Sự kiện loại 2: Sự kiện về tính xác định của một đối tƣợng hay của một thuộc
tính của đối tƣợng.
Cấu trúc sự kiện:<đối tƣợng>|<đối tƣợng >.
- Sự kiện loại 3: Sự kiện về tính xác định của một đối tƣợng hay của một thuộc
tính của đối tƣợng thông qua biểu thức hằng.
- 26 -
Cấu trúc sự kiện: <đối tƣợng>|<đối tƣợng >.
- Sự kiện loại 4: Sự kiện về sự bằng nhau của một đối tƣợng hay một thuộc tính
của đối tƣợng với một đối tƣợng hay một thuộc tính khác.
Cấu trúc sự kiện: <đối tƣợng> | <đối tƣợng >.
<đối tƣợng >.
- Sự kiện loại 5: Sự kiện về sự phụ thuộc giữa các đối tƣợng và các thuộc tính
của các đối tƣợng thông qua một công thức tính toán hay một đẳng thức theo các đối
tƣợng hay các thuộc tính.
Cấu trúc sự kiện:<đối tƣợng>|<đối tƣợng >. đối tƣợng hay thuộc tính > - Sự kiện loại 6: Sự kiện về một quan hệ trên các đối tƣợng hay trên các thuộc tính của các đối tƣợng. Cấu trúc sự kiện: [ - Sự kiện loại 7: Sự kiện về tính xác định của một hàm. Cấu trúc sự kiện: - Sự kiện loại 8: Sự kiện về tính xác định của một hàm thông qua một biểu thức hằng. Cấu trúc sự kiện: - Sự kiện loại 9: Sự kiện về sự bằng nhau giữa một đối tƣợng hay thuộc tính với một hàm. Cấu trúc sự kiện: <đối tƣợng>|<đối tƣợng >. - Sự kiện loại 10: Sự kiện về sự bằng nhau của một hàm với một hàm khác. Cấu trúc sự kiện: - Sự kiện loại 11: Sự kiện về sự phụ thuộc của một hàm theo các hàm hay các đối tƣợng khác thông qua một công thức tính toán. Cấu trúc sự kiện: - Sự kiện loại 12: Sự kiện về sự phụ thuộc giữa các hàm hay các đối tƣợng thông qua một đẳng thức theo các hàm hay các đối tƣợng. - 27 - Cấu trúc sự kiện:<đẳng thức theo các hàm hay các đối tƣợng> 2.2.7.6. Định nghĩa các bước giải cho mô hình COKB - Deduce_from3s: suy ra các sự kiện loại 2 từ các sự kiện loại - Deduce_from43s: suy ra các sự kiện mới loại 3 từ các sự kiện loại 3 và 4 bằng cách thay thế các biến trong sự kiện loại 3 vào sự kiện loại 4. - Deduce_from53s: suy ra các sự kiện mới loại 3, 4, 5 từ các sự kiện loại 3 và 5 bằng cách thay thế các biến trong sự kiện loại 3 vào sự kiện loại 5. - Deduce_from45s: suy ra các sự kiện mới loại 3 từ các sự kiện loại 4 và 5 bằng cách giải hệ phƣơng trình. - Deduce_from8s: suy ra các sự kiện loại 7 từ các sự kiện loại 8. - Deduce_from983s: suy ra các sự kiện loại 3, 8 từ các sự kiện loại 3, 8, 9 bằng cách thay thế các sự kiện loại 8 (hay sự kiện loại 3) vào các sự kiện loại 9. - Deduce_Objects: thực hiện suy diễn và tính toán bên trong cấu trúc của từng đối tƣợng. Các đối tƣợng tham gia vào bƣớc giải có khả năng tham gia vào các bƣớc giải có khả năng thực hiện các hành vi nhất định để phát sinh sự kiện mới, thực hiện suy diễn tính toán trên các thuộc tính của đối tƣợng, bản thân đối tƣợng hay các đối tƣợng liên quan đƣợc thiết lập trên nền của đối tƣợng. - Deduce_from9s: suy ra các sự kiện loại 2, 3 , 6, 7, 8 từ các sự kiện loại 9 bằng cách thực hiện tính toán hàm. - Deduce_Rules: dò tìm luật có thể áp dụng đƣợc. - Deduce_Funcs: dò tìm hàm có thể áp dụng đƣợc. - Deduce_EqsGoal: giải hệ phƣơng trình đơn giản gồm n phƣơng trình n ẩn. 2.2.7.7. Ưu điểm của mô hình COKB Thông qua những khái niệm về các mô hình biểu diễn tri thức tiêu biểu đã đƣợc biết ta đã thấy đƣợc một số ƣu điểm cũng nhƣ những khuyết điểm của chúng. Để làm rõ hơn ta có bảng liệt kê ƣu khuyết của các phƣơng pháp biểu diễn tri thức: - 28 - P.Pháp Ƣu điểm Nhƣợc điểm Cú pháp đơn giản, dễ hiểu, diễn Rất khó theo dõi sự phân cấp, không Luật dịch đơn giản, tính đơn thể cao, hiệu quả trong những hệ thống lớn, sinh linh động (dễ điều chỉnh). không thể biểu diễn đƣợc mọi loại tri thức, rất yếu trong việc biểu diễn các tri thức dạng mô tả, có cấu trúc. Dễ theo dõi sự phân cấp, sẽ dò Ngữ nghĩa gắn liền với mỗi đỉnh có thể Mạng theo các mối liên hệ, linh động nhập nhằng, khó xử lý các ngoại lệ, ngữ khó lập trình. nghĩa - Giải đƣợc hầu hết các bài toán - Không giải đƣợc các tri thức phức Mạng GT KL nếu nhƣ đáp ứng đầy tạp, lƣu trữ khó khăn và nhập nhằng tính đủ các giả thiết cần thiết. khi quản lý. toán - Thuật toán đơn giản dễ cài đặt - Đồng thời việc xây dựng lại thuật cho nên việc bảo trì hệ thống toán là một việc tƣơng đối khó khăn tƣơng đối đơn giản. bảo trì lại toàn bộ hệ thống. - Có thể xây dựng hệ thống suy luận và giải thích một cách rõ ràng và dễ hiểu. Khó lập trình, khó suy diễn, thiếu phần Frame Có sức mạnh diễn đạt tốt, dễ cài đặt các thuộc tính cho các slot mềm hỗ trợ. cũng nhƣ các mối liên hệ, dễ dàng tạo ra các thủ tục chuyên biệt hóa, dễ đƣa vào các thông tin mặc định và dễ thực hiện các thao tác phát hiện các giá trị bị thiếu sót. Bảng 2-1 Bảng liệt kê các ƣu khuyết của các phƣơng pháp biễu diễn tri thức - 29 - Ta nhận thấy “mô hình biểu diễn tri thức bằng Frame” là mô hình biểu diễn tri thức tƣơng đối đối hoàn thiện nhất trong tất cả các phƣơng pháp. Nhƣng khuyết điểm của mô hình đó là khó lập trình và thiếu phần mềm hỗ trợ. Trong khi ƣu điểm của mô hình COKB là: - Cấu trúc tƣờng minh giúp dễ dàng thiết kế các môđun truy cập cơ sở tri thức. - Thích hợp cho việc thiết kế một cơ sở tri thức với các khái niệm có thể đƣợc biểu diễn bởi các đối tƣợng tính toán. - Tiện lợi cho việc thiết kế các môđun giải bài toán tự động. - Thích hợp cho việc định dạng ra một ngôn ngữ khai báo bài toán và đặc tả bài toán một cách tự nhiên. Với những ƣu điểm trên mô hình COKB là mô hình lý tƣởng để biểu diễn tri thức thay thế cho các mô hình biểu diễn tri thức thông thƣờng. Ngoài ra, với sự hỗ trợ của công cụ Maple phần mềm đại số tính toán là ngôn ngữ lập trình chính đã hỗ trợ một phần rất lớn cho mô hình COKB. 2.3 Cơ sở tri thức 2.3.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 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ả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ấ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ứ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úc củ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á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ệ 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 - 30 - 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 ta quan tâm. Tính chủ động : o 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ể. o Trong xã hội loài ngƣời khi hoạt động bất kỳ ở đâu và ở trong lĩnh vực nào thì con ngƣời bao giờ cũng bị điều khiển bằng chính tri thức (vốn hiểu biết) của mình. Nhờ có tri thức mà con ngƣời đã hình thành mục tiêu và các hành vi để thực hiện mục tiêu đó. Quá trình này luôn đi kèm với sự bổ sung tri 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. o Đối với các tri thức biểu diễn trong máy cũng vậy, chúng chủ động hƣớng ngƣờ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 đƣợ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ệ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ô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.3.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 định lƣợng. Tri thức định 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 định tính đƣợc chia thành 3 loại : Tri thức mô tả. Tri thức thủ tục. Tri thức điều khiển. a)Tri thức mô tả : - 31 - Cho những thông tin về một sự kiện, hiện tƣợng hay quá trình mà không đƣa ra thông tin về cấu trúc bên trong cũng nhƣ phƣơng pháp sử dụng bên trong của tri thức đó. 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ác tri 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ông gian 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ác rà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ốn mua 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”. b)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 tri thứ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 Mộ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à o Modus Ponens Nghĩa là nếu A đúng, A suy ra B thì B cũng đúng o Modus Tollens Nghĩa là nếu B sai, A suy ra B thì A cũng sai c)Tri thức điều khiển : Dùng để điều khiển, phối hợp các nguồn tri thức thủ tục và tri thức mô tả khác nhau. - 32 - 2.3.3 Các cấp độ tri thức 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 mô tả, tri 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ại nà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ày thƣờ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 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 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 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ò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 giao hoá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 đủ : Trong 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 hay sai. 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ới thang đo quy ƣớc. Ví dụ : “Anh ta cao khoả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ấ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ại tri - 33 - 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. Mô tơ suy diễn 2.4.1 Cơ chế suy diễn a)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ết luận đƣợc xem là những thuộc tính có thể đƣợc gán giá trị. Trong số những kế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 xem xé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ên tắ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 cho ngƣời sử dụng dùng. b)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. 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. - 34 - Để xác định giá trị của A, cần có các nguồn thông tin. Những nguồn nà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âu hỏ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ủa thuộ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,… Ý tƣởng của thuật toán suy diễn lùi nhƣ sau : Với mỗi thuộc tính đã cho, ngƣời ta định nghĩa nguồn của nó : o Nếu thuộc tính xuất hiện nhƣ là tiền đề của một luật (phần đầu của luật), thì nguồn sẽ thu gọn thành một câu hỏi. o Nếu thuộc tính xuất hiện nhƣ là hậu quả của một luật (phần cuối của luật), thì nguồn sẽ là các luật mà trong đó, thuộc tính là kết luận. o Nếu thuộc tính là trung gian, xuất hiện đồng thời nhƣ là tiền đề và nhƣ là kết luận, khi đó nguồn có thể là các luật, hoặc có thể là các câu hỏi mà chƣa đƣợc nêu ra. 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ác luậ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ết luậ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. c)Cơ chế hỗn hợp : Sử dụng kết hợp cả 2 phƣơng pháp suy diễn trên. 2.4.2 Cơ chế điều khiển a) Chọn hƣớng suy diễn: Cho f = # GT GT: tập các sự kiện ban đầu f = # KL KL: Tập các sự kiện kết quả f = max #{ r R/ r có thể áp dụng cho 1 tập con F nào đó } = max # lọc (F,R) f = max # { r R/ r có cùng một sự kiện ở vế phải } (*) Các luật heuristic : - 35 - thì chọn suy diễn tiến Luật 1 : nếu f < f thì chọn suy diễn lùi Luật 2 : nếu f > f Luật 3 : nếu f = f và f < f thì chọn suy diễn tiến = f Luật 4 : nếu f và f > f thì chọn suy diễn lùi Luật 5 : nếu f = f và f = f ngƣời thiết kế có thể chọn 1 trong 2 phƣơng pháp suy diễn để sử dụng. b) Giải quyết các vấn đề cạnh tranh : b.1)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) ? o Giải pháp 1 : Tổ chức các luật có thể sử dụng đƣợc nhƣ một hàng đợi. o Giải pháp 2 : Tổ chức các luật có thể sử dụng theo xếp chồng. o Giải pháp 3 : Sử dụng heuristic Đố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 H(r,KL) = h(q,KL) Nguyên tắc : Luật r : left q sẽ đƣợc chọn khi và chỉ khi h(q,KL) min/max o Giải pháp 4 : Thực hiện sắp xếp thứ tự các sự kiện (Đồ thị FPG- Fact Precedence Graph) Cho tập luật R và mỗi sự kiện của R là một nút, các luật là các dây cung trong đồ thị FPG. o Giải pháp 4’ : Sử dụng đồ thị VA/HOĂC Mỗi luật r : p p … p q tƣơng đƣơng với một cụm cung kiểu “VÀ”. o Giải pháp 5 : Đồ thị thứ tự luật (RPG – Rule Precedence Graph) - 36 - Một luật r là sắp thứ tự với luật r (ký hiệu là r r ) nếu và chỉ nếu tồn tại một sự kiện f sao cho : r : left f ; r :…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’ r trong 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. Thực hiện luật đó. 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) : b.1.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 b.1.2/, h(r,FINALS) = # p Luật đƣợc chọn h(r,FINALS) min b.1.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 - 37 - b.2)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 Định nghĩa hàm tìm thấy: Tìm_thấy(f) = {r/ r : left f } Câu hỏi đặt ra : Làm thế nào để chọn một luật sao cho r Tìm_thấy (f) o Giải pháp 1 : Nếu r , r Tìm_thấy (f) Và r , r không đƣợc sử dụng nữa Và i < j Thì r đƣợc chọn o Giải pháp 2 : Sử dụng đồ thì VA/HOAC và đồ thị FPG (*)Một vài phƣơng pháp kinh nghiệm (heuristics) b.2.1/, 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. h(r,GT) = max(độ_dài(f,GT)/ f left) luật r1 đƣợc chọn h(r1,GT) nhỏ nhất b.2.2/, h(r,GT) = # left /* r : left q */ luật đƣợc chọn # left nhỏ nhất b.2.3/, Hàm độ_sâu(f,GT) = 0 nếu f GT Max { max( độ_sâu(q) + 1)} r : left f q left luật đƣợc chọn max{độ_sâu(q)} nhỏ nhất b.2.4/, Hàm h(r,GT) = ( độ_sâu(f) ) f left luật đƣợc chọn h(r,GT) nhỏ nhất c) Việc giới hạn - 38 - Thao tác lọc thƣờng tốn thời gian để tính toán, nên phải lƣớt qua tập luật R để tìm ra tập có thể áp dụng đƣợc APPLICABLE. Để giảm nhẹ con số thử nghiệm, ngƣời ta quyết định chỉ lọc một phần các luật, hoặc sự kiện đƣợc đƣa vào. Đó là việc giới hạn phải làm trƣớc khi lọc. 2.5. Phân loại tri thức Dựa vào cách thức con ngƣời giải quyết vấn đề, các nhà nghiên cứu đã xây dựng các kỹ thuật biểu diễn các dạng tri thức khác nhau trên máy tính, mặc dù vậy không có một kỹ thuật riêng lẻ nào có thể giải thích đầy đủ cơ chế tổ chức tri thức trong các chƣơng trình máy tính. Để giải quyết vấn đề, chúng ta chỉ chọ dạng biểu diễn nào thích hợp nhất, sau đây là các dạng biểu diễn tri thức thƣờng gặp. 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 ra giải pháp để thực hiện một công việc nào đó. Các dạng tri thức thủ tục tiêu biểu thƣờng là các luật, chiến lƣợc, lịch trình, và thủ tục. Tri thức khai báo cho biết một vấn đề đƣợc thấy nhƣ thế nào. Loại tri thức này bao gồm các phát biểu đơn giản, dƣới dạng các khẳng định logic đúng hoặc sai. Tri thức khai báo cũng có thể là một danh sách các khẳng định nhằm mô tả đầy đủ hơn về đối tƣợng hay một khái niệm nào đó. Siêu tri thức mô tả tri thức của tri thức. Loại tri thức này giúp lựa chọn tri thức thích hợp nhất trong số các tri thức khi giải quyết một vấn đề. Các chuyên gia sử dụng tri thức này đề điều chỉnh hiệu quả giải quyết vấn đề bằng cách hƣớng các lập luận về miền tri thức có khả năng hơn cả. Tri thức heuristic mô tả các “mẹo” để dẫn dắt tiến trình lập luận. Tri thức heuristic còn đƣợc gọi là tri thức nông cạn do không bảo đảm hoàn toàn chính xác về kết quả giải quyết vấn đề, các chuyên gia thƣờng dùng các tri thức khoa học nhƣ sự kiện, các luật… sau đó chuyển chúng thành các tri thức heuristic để thuận tiện hơn trong việc giải quyết một số bài toá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 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ựa theo cấu trúc xác định. - 39 - 2.6. Các phƣơng pháp biểu diễn tri thức Nhƣ đã nêu trong mục [II] tƣơng ứng tồn tại các loại tri thức cơ bản sau: - Tri thức mô tả - Tri thức thủ tục - Tri thức điều khiển Tƣơng ứng với hai loại tri thức mô tả và tri thức thủ tục, có hai loại lớp phƣơng pháp biểu diễn tri thức: biểu diễn mô tả và biểu diễn thủ tục. Các cơ chế điều khiển sẽ đƣợc lồng trong bản thân cấu trúc ngôn ngữ biểu diễn tri thức, chẳng hạn trong ngôn ngữ PROLOG để tỉa bớt một số nhánh tìm kiếm trong không gian bài toán, tránh tìm kiếm vét cạn, nếu ta dùng toán tử cắt tỉa (cut). Có thể phân loại sau: - Phƣơng pháp biểu diễn tri thức mô tả: logic, mạng ngữ nghĩa, AOV - Phƣơng pháp biểu diễn tri thức thủ tục: sản xuất - Phƣơng pháp biểu diễn hổn hợp: Frame Mong muốn của các chuyên gia về xử lý tri thức là tạo ra đƣợc các hệ thống cho phép ngƣời sử dụng mô tả bài toán bằng ngôn ngữ mô tả, sau đó giải chúng theo chế độ tƣơng tác và hội thoại cao. 2.6.1. Biểu diễn tri thức nhờ logic Đây là dạng biểu diễn tri thức cổ điển nhất trong máy tính là logic, với hai dạng phổ biến là logic mệnh đề và logic vị từ, cả hai kỹ thuật này đều dùng ký hiệu để thể hiện tri thức và các toán tử áp lên các ký hiệu để suy luận logic. Logic đã cung cấp cho nhà nghiên cứu một công cụ hình thức để biểu diễn và suy luận tri thức. Phép AND OR NOT Kéo theo Tƣơng toán đƣơng Kí hiệu ^, &, v, , + Logic mệnh đề biểu diễn và lập luận với các mệnh đề toán học. Mệnh đề là một câu nhận giá trị hoặc đúng hoặc sai giá trị này gọi là chân trị của mệnh đề. Logic mệnh đề gán một bƣớc ký hiệu vào một mệnh đề, ví dụ A= “Xe sẽ khởi động”. - 40 - Khi cần kiểm tra chân trị của câu trên trong bài toán sử dụng logic mệnh đề ngƣời ta kiểm tra giá trị của A. Nhiều bài toán sử dụng logic mệnh đề để thể hiện tri thức và giải quyết vấn đề, bài toán loại này đƣợc đƣa về bài toán xử lý các luật, mỗi phần giải thiết và kết luận của luật có thể có nhiều mệnh đề. IF Xe không khởi động đƣợc A AND Khoảng cách từ nhà đến chổ làm là xa B THEN Sẽ trể giờ làm C Luật trên có thể biểu diễn lại nhƣ sau: A^B -> C Các phép toán quen thuộc trên các mệnh đề đƣợc cho trong bảng sau: A B A^B A B A B A T T F T T T T F T T T T F F T F F T F F F F F T F T T F Bảng 2-2 Bảng chân tri, với các giá trị đúng (True), sai (False) Logic vị từ là sự mở rộng của logic mệnh đề nhằm cung cấp một cách biễu diễn rõ hơn về tri thức thì logic vị từ dùng ký hiệu để biểu diễn tri thức. Cách biểu diễn này khá trực quan và ƣu điểm că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ễn nhằ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. Logic vị từ cũng giống nhƣ logic mệnh đề, dùng các ký hiệu để thể hiện tri thức, những ký hiệu này gồm: hằng số, vị từ, biến và hàm. Hằng số: Các hằng số dùng để đặt tên các đối tƣợng đặt biệt hay thuộc tính, nhìn chung các hằng số đƣợc ký hiệu bằng chữ viết thƣờng, chẳng hạn An, bình, nhiệt độ. Hằng số An có thể đƣợc dùng để thể hiện đối tƣợng an một ngƣời đang xét. Vị Từ: Một mệnh đề hay sự kiện trong logic vị từ đƣợc chia thành hai phần vị từ và tham số. Tham số thể hiện một khẳng định về đối tƣợng, chẳng hạn mệnh đề, chẳng hạn mệnh đề “Nam thích Mai” viết theo vị từ sẽ có dạng: thích (nam, mai). Với - 41 - cách thể hiện này ngƣời ta dùng từ đầu tiên tức “thích” làm vị từ, vị từ cho biết quan hệ giữa các đối số đặt trong ngoặc, đối số là các ký hiệu thay cho các đối tƣợng của bài toán. Biến: Các biến dùng để thể hiện các lớp tổng quát của các đối tƣợng hay thuộc tính, biến đƣợc viết bằng các ký hiệu bắt đầu là chữ in hoa, nhƣ vậy có thể dùng vị tự có biến để thể hiện nhiều vị từ tƣơng tự. Hàm: Logic vị từ cũng cho phép dùng ký hiệu để biểu diễn hàm, hàm mô tả một ánh xạ từ các thực thể hay một tập hợp đến một phần tử duy nhất của tập hợp khác. Phép toán: Logic vị từ cũng dùng các phép toán nhƣ logic mệnh đề nhƣ: thích (X, Y) AND thích (Z, Y) -> ¬ thích (X, Z), việc lập luận theo cách không hình thức đòi hỏi một khả năng rút ra đƣợc kết luận từ các sự kiện đã có, việc lấy ra thông tin mới từ các thông tin đã biết và các luật là trong tâm của tập luận trong hệ chuyên gia, quá trình lập luận đƣợc hình thức hóa trong bài toán suy luận. 2.6.2. Bộ ba đối tượng - Thuộc tính – Giá trị Cơ chế tổ chức nhận thức của con ngƣời thƣờng đƣợc xây dựng dựa trên các sự kiện (fact), xem nhƣ các đơn vị cơ bản nhất, một sự kiện là một dạng tri thức khai báo. Nó cung cấp một số hiểu biết về một biến cố hay một vấn đề nào đó. Một cách biểu diễn khác là nhờ sử dụng bộ ba đối tƣợng – thuộc tính – giá trị (Object – Attribute – Value) để chỉ sự kiện rằng “Đối tƣợng” với “Thuộc tính” đã cho có một “giá trị” nào đó. Màu Hình 2.4: Sơ đồ biểu diễn tri thức theo bộ ba (O-A-V) Trong các sự kiện O – A – V một đối tƣợng có thể có nhiều thuộc tính với các kiểu giá trị khác nhau hơn nữa một thuộc tính cũng có thể có một hay nhiều giá trị chúng đƣợc gọi là các sự kiện đơn trị (single-value) hoặc đa trị (multi-value), điều này cho phép các hệ tri thức linh động trong việc biểu diễn các tri thức cần thiết, cần phân biệt hai đối tƣợng: đối tƣợng tĩnh và đối tƣợng động các đối tƣợng tĩnh đƣợc lƣu trong nội bộ nhớ dài hạn và khi cần đƣợc đƣa vào bộ nhớ làm việc để xử lý, ngƣợc lại trong - 42 - quá trình làm việc khi cần sẽ khởi tạo các giá trị thuộc tính của các đối tƣợng động và chúng đƣợc lƣu ở bộ nhớ trong phục vụ cho việc xử lý tiếp theo. Các sự kiện không phải lúc nào cũng đảm bảo là đúng hay sai với độ chắc chắn hoàn toàn, vì thế khi xem xét các sự kiện ngƣời ta còn sử dụng thêm một khái niệm là độ tin cậy, phƣơng pháp truyền thống để quản lý thông tin không chắc chắn là sử dụng nhân tố chắc chắn CF (ceratinly factor) đƣợc dùng trong hệ MYCIN (khoảng năm 1975). Ngoài ra, khi các sự kiện mang tính “nhập nhằng” việc biểu diễn tri thức dựa vào một kỹ thuật gọi là logic mờ (do Zadeh đƣa ra năm 1965) các thuật ngữ nhập nhằng đƣợc thể hiện, lƣợng hóa trong tập mờ. 2.6.3. Các Luật dẫn Trong hệ thống dựa trên các luật ngƣời ta thu thập các tri thức lĩnh vực trong một tập và lƣu chúng trong cơ sở tri thức của hệ thống. Hệ thống dùng các luật này cùng với các thông tin trong bộ nhớ để giải bài toán việc xử lý các luật trong hệ thống dựa trên các luật đƣợc quản lý bằng một module gọi là hệ suy diễn, phƣơng pháp này khá trực quan với ngƣời sử dụng, song chỉ phù hợp khi cơ sở tri thức không có quá nhiều luật suy dẫn và do vậy không chứa nhiều loại vị từ khác nhau. Các luật dẫn cơ bản thể hiện tri thức có thể phân loại theo loại tri thức và nhƣ vậy có các lớp luật tƣơng ứng với dạng tri thức nhƣ quan hệ, khuyến cáo, hƣớng dẫn, chiến lƣợc và heuristic. Quan hệ Bình điện hỏng IF THEN Xe sẽ không khởi động đƣợc Lời khuyên Xe không khởi động đƣợc IF THEN Đi bộ Chiến lược IF Xe không khởi động đƣợc THEN Đầu tiên hãy kiểm tra hệ thống nhiên liệu, sau đó kiểm tra hệ thống điện. - 43 - Các luật cũng có thể đƣợc phân loại theo cách thức giải quyết vấn đề, điển hình theo phân loại này các luật theo cách thức diễn giải, chẩn đoán và thiết kế. Diễn giải IF Cao 1m65 AND Nặng 65 kg THEN Phát triển bình thƣờng Chẩn đoán IF Sốt cao AND Ho nhiều AND Họng đỏ THEN Viêm họng Thiết kế IF Cao 1m75 AND Da sẫm THEN Chọn áo vải sáng AND Chọn tấm vải khổ 1m40 Mở rộng cho các luật cần thực hiện cùng một phép toán trên một tập hay các đối tƣợng giống nhau lúc này cần các luạt có biến IF X là nhân viên AND Tuổi của X >65 THEN X có thẻ nghỉ hƣu Khi mệnh đề phát biểu về sự kiện hay bản thân sự kiện có thể không chắc chắn, ngƣời ta dùng hệ số chắc chắn CF, luật thiết lập quan hệ không chính xác giữa các sự - 44 - kiện giải thiết và kết luận đƣợc gọi là luật không chắc chắn ví dụ nếu “lạm phát cao” thì “hầu nhƣ chắc chắn lãi suất sẽ cao” luật này có thể viết lại với giá trị CF có thể nhƣ sau. IF Lạm phát cao THEN Lãi suất cao, CF=0,8 Dạng siêu luật một luật với chức năng mô tả cách thức dùng các luật khác sẽ đƣa ra chiến lƣợt sử dụng các luật theo lĩnh vực chuyên dụng, thay vì đƣa ra thông tin mới. IF Xe không khởi động AND Hệ thống điện làm việc bình thƣờng THEN Có thể sử dụng các luật liên quan đến hệ thống điện Qua thực nghiệm các chuyên gia sẽ đề ra một tập các luật áp dụng cho một bài toán cho trƣớc thí dụ tập luật trong hệ thống chẩn đoán hỏng hóc xe điều này giúp giải quyết các trƣờng hợp mà khi chỉ với các luật riêng. 2.6.4. 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, nó cũng đồng thời cũng là 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 biểu diễn nhờ logic và mạng ngữ nghĩa [III] mang đặc trƣng mô tả và phƣơng pháp dùng các luật sản xuất dùng để biểu diễn tri thức thủ tục, thì Frame lại kết hợp đƣợc những đặc điểm của cả hai dạng biểu diễn: Mô tả và thủ tục hệ biểu diễn Frame do M.Minsky đƣa ra năm 1975. Frame thực chất là sự tổng quát hóa của cấu trúc bản ghi trong PASCAL hoặc danh sách bản thể trong LISP và tƣơng tự nhƣ cấu trúc đối tƣợng trong C++, tận dụng đƣợc các ƣu điểm của các luật sản xuất và vị từ, cũng nhƣ là mạng ngữ nghĩa, một Frame đƣợc mô tả bởi cấu trúc - 45 - Cấu trúc Frame này cho ta một “khung dữ liệu” để khoanh vùng các đối tƣợng, một trong những đặc trƣng quan trọng của biểu diễn nhờ Frame là khả năng thừa kế các thông tin của các slot có cùng tên ở đối tƣợng bậc trên. Khi bài toán trở nên phức tạp hơn thì việc mô tả và điều khiển trong Frame sẽ phức tạp hơn nhiều trong các phƣơng pháp biểu diễn thủ tục khác. - 46 - Chƣơng III: ỨNG DỤNG GIẢI CÁC BÀI TOÁN TAM GIÁC 3.1 Giới thiệu bài toán Trong chƣơng trình phổ thông có hai dạng bài toán hay gặp đó là bài toán hình học và bài toán đại số. Với hai dạng bài toán này, việc biểu diễn trên mạng ngữ nghĩa có tác động tích cực đến ngƣời học. Với tính trực quan của mạng ngữ nghĩa, ngƣời học sẽ dễ dàng tiếp thu và hình thành tri thức nhanh chóng. Có nhiều dạng toán hình học và đại số trong chƣơng trình phổ thông, nhƣng vì hạn chế về thời gian nên ở đây xin giới thiệu dạng cơ bản: Mạng ngữ nghĩa cho bài toán hình học phẳng. 3.2 Xây dựng bài toán hình học Các bài toán hình học phẳng gồm các dạng toán nhƣ giải bài toán hình tam giác, hình vuông, hình thoi,... Các bài toán này đƣợc hình thành dựa trên các tính chất và thuộc tính của hình học phẳng. Do đó có thể xác định đƣợc các đối tƣợng trên mạng ngữ nghĩa của những bài toán này là các đỉnh, các cạnh. Và mối liên hệ giữa các đối tƣợng này là tính chất của các bài toán hình học. 3.3. Bài toán hình tam giác: 3.3.1 Tam giác Về mặt tính toán, chúng ta có thể xem tam giác là một mạng tính toán (hay một đối tƣợng tính toán) bao gồm các biến ghi nhận giá trị của các yếu tố trong tam giác, và các quan hệ là các công thức thể hiện mối liên hệ tính toán giữa các yếu tố đó. Tập các biến trong tam giác gồm : - 47 - 3 đƣờng cao 3 đƣờng trung tuyến - a, b, c : 3 cạnh của tam giác - , , : 3 góc đối diện với 3 cạnh tƣơng ứng trong tam giác - ha, hb, hc : 3 đƣờng cao tƣơng ứng với 3 cạnh của tam giác . - ma, mb, mc : 3 đƣờng trung tuyến tƣơng ứng với 3 cạnh của tam giác - pa, pb, pc : 3 đƣờng phân giác trong tƣơng ứng với 3 cạnh của tam giác. - S : diện tích tam giác. - p : nửa chu vi của tam giác. - R : bán kính đƣờng tròn ngoại tiếp tam giác. - r : bán kính đƣờng tròn nội tiếp tam giác. - ra, rb, rc : các bán kính của các đƣờng tròn bàng tiếp tam giác. Các hệ thức cơ bản giữa các yếu tố của tam giác : - Liên hệ giữa 3 góc : - 48 - (rad ian). f1 : A+ B + C = - Định lý cosin : f2 : f3 : a2 = b2 + c2 - 2.b.c.cosA
b2 = a2 + c2 - 2.a.c.cosB
c2 = a2 + b2 - 2.a.b.cosC f4 : - Định lý Sin : f5 : f6 : f7 : f8 : f9 : f10 : - Liên hệ giữa nửa chu vi và 3 cạnh : 2.p = a + b + c f11 : - Các công thức tính diện tích : f12 : S = a.ha/2 f13 : S = b.hb/2 f14 : S = c.hc/2 f15 : S = p.r f16 : S = f17 : S = b.c.sinA / 2 f18 : S = c.a.sinB/ 2 f19 : S = a.b.sinC/ 2 - Các công thức tính đƣờng cao theo cạnh và góc : - 49 - f20 : ha = b.sinC f21 : ha = c.sinB f22 : hb = a.sinC f23 : hb = c.sinA f24 : hc = a.sinB f25 : hc = b.sinA - Các công thức tính các đƣờng trung tuyến : f26 : 4.ma 2 = 2.b2 + 2.c2 - a2
2 = 2.a2 + 2.c2 - b2
2 = 2.a2 + 2.b2 - c2 f27 : 4.mb f28 : 4.mc - Các công thức tính các đƣờng phân giác trong : f29 : pa = f30 : pb = f31 : pc = - Một số công thức khác liên quan đến bán kính đƣờng tròn ngoại tiếp, đƣờng tròn nội tiếp, và các đƣờng tròn bàng tiếp : f32 : R = f33 : ra = f34 : rb = f35 : rc = f36 : 4.R = ra + rb + rc - r Ghi chú : Trong các công thức trên, có một số công thức có thể đƣợc suy ra từ các công thức khác. Do đó ta có thể bỏ bớt một số công thức. Hơn nữa, chúng ta có thể - 50 - nêu lên một thuật toán để làm tối thiểu hóa các công thức (hay các quan hệ) theo một thứ tự ƣu tiên nào đó. Tuy nhiên, nếu có thể nhớ đƣợc trực tiếp nhiều công thức thì việc tính toán sẽ có lợi hơn. 3.3.2 Tam giác cân Tam giác cân (không làm mất tính tổng quát, ta giả sử cân tại A) là một tam giác có các tính chất sau đây: b = c g1 : g2 : B = C g3 : hb = hc g4 : mb = mc g5 : pb = pc g6 : rb = rc g7 : ma = ha g8 : pa = ha Ngoài ra, một số quan hệ trong tam giác có thể đƣợc viết lại nhƣ sau: f1 : A + 2B = (radian).
a2 = 2b2.(1- cosA) f2 : a = 2.b.cosB f3 : a = 2.c.cosC f4 : 2.p = a + 2b 4.ma f26 : 4.mb f27 : f11 :
f17 : S = b2.sinA / 2
2 = 4.b2 - a2
2 = 2.a2 + b2
2 = 2.a2 + c2 4.mc f28 : f29 : pa = f32 : R = f36 : 4.R = ra + 2.rb - r - 51 - 3.3.3 Tam giác vuông Không làm mất tính tổng quát, ta giả sử tam giác vuông có cạnh huyền là a. Nhƣ thế, ngoài những hệ thức đã biết trong tam giác nói chung ta còn có : ( đã xác định) g1 : A = /2 Ngoài ra một số quan hệ có thể đƣợc viết lại nhƣ sau: f1 : B+ C = /2 (radian). a2 = b2 + c2 (định lý Pitago) f2 : c = a.cosB f3 : b = a.cosC f4 : b = a.sinB f5 : c = a.sinC f7 : a = 2.R f8 : f17 : S = b.c/2 f23 : hb = c f25 : hc = b f26 : 2.ma = a 2 = b2 + 4.c2
2 = c2 + 4.b2 f27 : 4.mb f28 : 4.mc 3.3.4 Tam giác vuông cân Tam giác vuông cân (với cạnh đáy tam giác cân là a) là một tam giác có : b = c, g1 : g2 : A = /2. Ngoài ra một số (nhóm) quan hệ trong tam giác có thể đƣợc thay thế bởi nhóm quan hệ khác có hiệu quả hơn trong việc sử dụng. Các quan hệ từ f1 đến f10 đƣợc thay thế bởi các quan hệ sau : (radian) f1 : B = /4 (radian) f2 : C = /4 a = b f3 : - 52 - a = c f4 : a = 2.R f5 : Các quan hệ từ f11 đến f25 đƣợc thay thế bởi các quan hệ sau : 2.p = a(1+ ) f11 : f12 : ha = a/2 f13 : hb = c f14 :
hc = b
f15 : S = a2 /4
f16 : S = b2 /2
f17 : S = c2 /2 f18 : S = p.r Các quan hệ từ f26 đến f28 đƣợc thay thế bởi các quan hệ sau : 2 = 5a2 /2 f26 : ma = a/2 f27 : 4.mb f28 : mc = mb Quan hệ f29 đến f31 đƣợc thay thế bởi: f29 : pa = a/2 f30 : pb = a f31 : pc = pb 3.3.5 Tam giác đều Tam giác đều là một tam giác có : a = b g1 : b = c g2 : Tất cả các quan hệ từ f1 đến f36 có thể đƣợc thay thế bởi các quan hệ sau : (radian) f1 : A = /3 (radian) f2 : B = /3 (radian) f3 : C = /3 - 53 - f4 : R = p = f5 : S = f6 : f7 : ha = f8 : hb = ha f9 : hc = ha f10 : ma = f11 : mb = ma f12 : mc = ma f13 : pa = f14 : pb = pa f15 : pc = pa r = f16 : f17 : ra = f18 : rb = ra f19 : rc = ra 3.4 Các luật biến đổi Giữa các đối tƣợng hình học trình bày ở trên có một số luật biến đổi mà ta có thể áp dụng trong quá trình tính toán. 3.4.1.Một số luật liên quan đến tam giác : L1 : Tam giác có hai cạnh bằng nhau là tam giác cân L2 : Tam giác có 2 góc bằng nhau là tam giác cân L3 : Tam giác có đƣờng cao và trung tuyến tƣơng ứng bằng nhau là tam giác cân - 54 - L4 : Tam giác có đƣờng cao và đƣờng phân giác trong tƣơng ứng bằng nhau là tam giác cân L5 : Tam giác có trung tuyến và đƣờng phân giác trong tƣơng ứng bằng nhau là tam giác cân L6 : Tam giác có một góc vuông là tam giác vuông. L7 : Tam giác có bình phƣơng một cạnh bằng tổng bình phƣơng của hai cạnh kia là tam giác vuông. L8 : Tam giác có một góc vuông và hai cạnh kề góc vuông bằng nhau là tam giác vuông cân. L9 : Tam giác vuông có hai cạnh kề góc vuông bằng nhau là tam giác vuông cân. L10 : Tam giác cân góc đỉnh là góc vuông là tam giác vuông cân. L11 : Tam giác có 3 cạnh bằng nhau là tam giác đều. L12 : Tam giác có 3 góc bằng nhau là tam giác đều. L13 : Tam giác cân có một góc bằng ( / 3) là tam giác đều. 3.4.2 Các luật dẫn: 3.4.2.1 Các luật của tam giác thường: R1: {a,b,c} --> {P} R2: {a,b,c,P} --> {S} R3: {A,B} --> {C } R4 :{a,S} --> {ha} R5: {a,b,c} --> {A} R6: {b,c, A} --> {a} R7: {a, A} --> {R} 3.4.2.2 Các luật của tam giác vuông R1: {B} --> {C} R2: {a,b} --> {B} R3: {b,c} --> {a} R4: {a} --> {R} R5: (Nếu A= /2 và b = c -> B = C =/4) - 55 - 3.4.2.3 Các luật của tam giác cân R1: {A} --> {B} R2: {C} --> {B} R3: {b, A} --> {a} R4: {c, A} --> {a} R5: (Nếu B= C thì b = c, b = c và B =/3 thì A= C =/3 ) 3.4.2.4 Tam giác đều R1: {a} --> {S} R2: {a} --> {P} 3.5 Biểu diễn thông tin trên mạng ngữ nghĩa: Hình 3.1: Mạng ngữ nghĩa cho bài toán hình tam giác Trong mạng ngữ nghĩa trên, các ô tròn biểu thị cho các đối tƣợng của bài toán và các ô vuông thể hiện mối quan hệ giữa các đối tƣợng. 3.6 Ứng dụng : Nhƣ đã nói ở trên, chúng ta xét một tam giác bao gồm 22 yếu tố.Giữa các yếu tố của tam giác có các quan hệ cho phép ta có thể tính ra đƣợc các yếu tố cần thiết trong - 56 - tam giác từ giả thiết rằng đã biết một số yếu tố nào đó của tam giác.Nhờ vào lý thuyết về mạng tính toán ta có thể cài đặt một chƣơng trình để giải tam giác. Khi ta cho biết một số yếu tố của tam giác và yêu cầu tính ra một số yếu tố khác, chƣơng trình sẽ cho chúng ta một lời giải (nếu bài toán là giải đƣợc).Trong trƣờng hợp bài toán không giải đƣợc thì chƣơng trình sẽ thông báo để ta cho thêm dữ kiện hoặc điều chỉnh lại bài toán. Bài toán Trong tam giác ABC giả sử đã biết cạnh c, góc A, góc B. Hãy tính đƣờng cao hc. Nhƣ vậy ta có : Giả thiết : A,B,c Tính các biến : hc a> Thuật giải suy diễn tiến: Tính góc C : A, B C Tính hb : c, A hb Tính ha : c,B ha Tính a : c, C, A a Tính b : c, C, B b Tính P : a,b,c P Tính S: a,b,c,P S Tính hc : a, B hc b> Thuật giải suy diễn lùi: Bƣớc 1: Tính hc : a, B hc Bƣớc 2 : Để tính đƣợc hc ta cần đi tìm a Ta dùng luật : A,C, c a Bƣớc 3: Để tính đƣợc a, ta cần tính đƣợc C Ta dùng luật : A, B C Tới đây đã đủ dữ kiện để sinh ra C, ta thay C ngƣợc lại biểu thức trƣớc, sau đó tiếp tục thay vào công thức phía trƣớc cho tới khi tìm đƣợc hc. - 57 - 3.7 Demo chƣơng trình: Suy diễn tiến Suy diễn lùi - 58 - KẾT LUẬN Biểu diễn tri thức tính toán dƣới dạng các đối tƣợng rất tự nhiên và gần gũi với cách nhìn và nghĩ của con ngƣời khi giải quyết các vấn đề tính toán có liên quan đến một số khái niệm về các đối tƣợng, ngoài ứng dụng đƣợc nêu trên mạng tính toán có thể áp dụng trong việc biểu diễn và giải một số bài toán trên các phản ứng hóa học và ta có thể xem tri thức đó nhƣ một mạng mạng tính toán mà mỗi phản ứng là một số quan hệ của mạng. Mạng ngữ nghĩa là một dạng công cụ dùng để biểu diễn tri thức. Với những tính chất của loại công cụ này, mạng ngữ nghĩa thích hợp cho việc biểu diễn những tri thức ở dạng dự đoán tính toán dựa trên những cở sở thông tin cố định. Mạng ngữ nghĩa thích hợp nhất cho việc biểu diễn hệ chuyên gia. Hệ thống chuyên gia đƣợc xây dựng trên cơ sở thu thập càng nhiều thông càng tốt. Mạng ngữ nghĩa thích hợp cho việc đó là vì có thể thêm thông tin vào mạng. Với hệ chuyên gia thì việc thêm thông tin vào mạng lƣới thông tin đang có là cần thiết, thông tin càng nhiều càng chi tiết thì hệ chuyên gia càng có giá trị. Ngoài ra mạng ngữ nghĩa còn ứng dụng trong nhiều lĩnh vực khác nhƣ là xây dựng các mạng giao thông, luồng giao thông. Việc biểu diễn tri thức trên mạng ngữ nghĩa rất thuận tiện cho việc biểu diễn thông tin đó trên máy tính. Trong xu hƣớng mới của công cuộc phát triển xã hội, việc biểu diễn tri thức nhân loại trên các phƣơng tiện, công cụ (nhất là trên máy tính) là vô cùng cần thiết. Và để thực hiện việc này, ứng dụng mạng ngữ nghĩa là một phƣơng tiện biểu diễn tri thức là cần thiết. - 59 - TÀI LIỆU THAM KHẢO [1]. Bài giảng – Hệ chuyên gia. Tác giả: GS.TS Vũ Đức Thi. Năm 2009. [2]. GS. TSKH Hoàng Kiếm, TS Đỗ Phúc, TS Đỗ Văn Nhơn. Giáo trình các hệ cơ sở tri thức. Nhà xuất bản Đại Học Quốc Gia TP Hồ Chí Minh, 2009. [3]. GS.TSKH. Hoàng Kiếm, Ths Đinh Nguyễn Anh Dũng. Giáo trình Trí Tuệ Nhân Tạo. Đại học công nghệ thông tin, 2007. [4]. PGS.TS Đỗ Văn Nhơn, bài giảng Biểu diễn tri thức và ứng dụng [5]. Dragan Gasevic, Dragan Djuric, Vladan Devedzic. Model Driven Architecture and Ontology Development. [6]. Các website tham khảo. - http://en.wikipedia.org/wiki/Semantic_network. - http://en.wikipedia.org/wiki/Spreading_activation. - http://tailieu.vn/xem-tai-lieu/chuong-3-cac-phuong-phap-bieu-dien-tri-thuc-va- xu-ly-tri-thuc.752159.htmlNâu
Ghế
Thiếu giả thiết