1. Trang chủ
  2. » Luận Văn - Báo Cáo

DÙNG MẠNG NGỮ NGHĨA ĐỂ BIỂU DIỄN TRI THỨC - ỨNG DỤNG GIẢI BÀI TOÁN TAM GIÁC VÀ HÌNH THANG

24 2,3K 12

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 24
Dung lượng 2,49 MB

Nội dung

Đại Học Quốc Gia TP.HCMTrường Đại Học Công Nghệ Thông Tin BÁO CÁO CHUYÊN ĐỀ BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG TÊN ĐỀ TÀI: DÙNG MẠNG NGỮ NGHĨA ĐỂ BIỂU DIỄN TRI THỨC - ỨNG DỤNG GIẢI BÀI TOÁN

Trang 1

Đại Học Quốc Gia TP.HCM

Trường Đại Học Công Nghệ Thông Tin

BÁO CÁO CHUYÊN ĐỀ BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG

TÊN ĐỀ TÀI:

DÙNG MẠNG NGỮ NGHĨA ĐỂ BIỂU DIỄN TRI THỨC - ỨNG DỤNG GIẢI BÀI TOÁN TAM GIÁC VÀ HÌNH

Trang 2

MỤC LỤC



MỤC LỤC 1

LỜI MỞ ĐẦU 2

ĐẶT VẤN ĐỀ 3

PHẦN I - TỔNG QUAN VỀ MẠNG NGỮ NGHĨA 4

PHẦN II – MẠNG NGỮ NGHĨA CHO BÀI TOÁN TAM GIÁC VÀ HÌNH THANG 7

PHẦN III – XÂY DỰNG ỨNG DỤNG MẠNG NGỮ NGHĨA VÀ HỆ LUẬT DẪN GIẢI BÀI TOÁN TAM GIÁC VÀ HÌNH THANG 18

KẾT LUẬN 22

TÀI LIỆU THAM KHẢO 23

Trang 3

LỜI MỞ ĐẦU



Cùng với sự phát triển của con người và khoa học kỹ thuật, tri thức ngày càngnhiều nên việc biểu diễn tri thức là một vấn đề vô cùng cần thiết và tất yếu Biểu diễntri thức là một trong những công đoạn cực kỳ quan trọng trong quá trình xây dựng các

hệ thống thông tin sử dụng trí tuệ nhân tạo trên máy vi tính Nó chính là nền tảng để đềxuất cách mà tri thức được lưu trữ trên bộ nhớ hay trong cơ sở dữ liệu máy tính cũngnhư các kỹ thuật và thuật toán để thao tác, xử lý tri thức đó phục vụ cho các mục tiêuđược đặt ra khi thiết kế hệ thống

Mạng ngữ nghĩa là một trong những phương pháp biểu diễn tri thức có hiệu

quả, được áp dụng phổ biến trong nhiều hệ thống thông tin hiện đại Trong bài báo cáonày em đã trình bày sơ lược về lý thuyết mạng ngữ nghĩa và hệ luật dẫn Và dùngmạng ngữ nghĩa để giải bài toán tam giác và hình thang cũng sẽ được mô tả cụ thể.Cùng với đó em có xây dựng ứng dụng thử nghiệm: kết hợp mạng ngữ nghĩa và hệluật dẫn để giải bài toán tam giác và hình thang Chương trình được xây dựng sẽ giúpcho người dùng có thể tính toán nhanh chóng các cạnh các góc cụ thể nào đó dựa trêncác luật – các công thức – tức là các tri thức đã có sẵn

Em xin gửi lời chân thành cám ơn sâu sắc tới thầy PGS TS Đỗ Văn Nhơn đã tận

tình giảng dậy cho chúng em trong suốt thời gian qua để chúng em có được những kiến thức quý báu, những kinh nghiệm trong cuộc sống và những kinh nghiệm trong học tập Xin kính chúc thầy luôn luôn khỏe mạnh, hạnh phúc

Trang 4

ĐẶT VẤN ĐỀ



Trong một vài năm gần đây, ngành công nghệ thông tin trên toàn thế giới đã phát triển mạnh mẽ với một tốc độ rất nhanh Song song với điều đó chúng ta cũng phải đối mặt với một thách thức mới là sự bùng nổ về lượng thông tin Đặc biệt, khi những ứng dụng công nghệ thông tin ngày càng phát triển Con người có nhu cầu đưa những tri thức, những hiểu biết trong mọi lĩnh vực của đời sống vào máy tính để nó có thể giúp con người nhận thức được và đưa ra hành động hợp lý Muốn máy tính làm được những việc như vậy, con người cần phải có phương pháp đưa tri thức vào máy tính gọi

là biểu diễn tri thức Tri thức và suy diễn là hai thành phần trong bất kỳ một hệ dựa trên tri thức nào Phương pháp biểu diễn tri thức sẽ quyết định phương pháp suy diễn tương ứng, nhưng ngược lại phương pháp suy diễn chỉ có thể phù hợp cho một phươngpháp biểu diễn tri thức nhất định Tri thức là sự hiểu biết của con 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

Có rất nhiều phương pháp để biểu diễn tri thức như biểu diễn tri thức sử dụng luậtdẫn xuất, biểu diễn tri thức sử dụng mạng ngữ nghĩa, biểu diễn tri thức bằng frame, biểu diễn tri thức bằng script,… Không một kỹ thuật riêng lẻ nào có thể giải quyết đầy

đủ cách tổ chức tri thức trên máy tính, mà để giải quyết vấn đề, ta chỉ chọn dạng biểu diễn nào thích hợp.Xuất phát từ thực tế đó mà trong một vài năm gần đây các nhà nguyên cứu và ứng dụng tin học phải nguyên cứu, tìm kiếm những phương pháp mới

để khai thác triệt để nhưng thông tin có trong cơ sở dữ liệu Từ cuối những năm của thập kỷ 1980 khái niệm phát hiện tri thức trong cơ sở dữ liệu lần đầu tiên được nói đến, đây là quá trình phát hiện tri thức tiềm ẩn, không biết trước và hữu ích trong các

cơ sở dữ liệu lớn

Trong lĩnh vực toán học, con người cũng cần có sự trợ giúp của máy tính để giải rất nhiều bài toán từ đơn giản đến phức tạp Một trong những phương pháp biểu diễn tri thức để giải quyết bài toán trong lĩnh vực toán học đó là dùng mạng ngữ nghĩa

và hệ luật dẫn để có thể giải quyết các bài toán đó Trong khuôn khổ của bài tiểu luận này em sẽ trình bày cách dùng mạng ngữ nghĩa và hệ luật dẫn để giải các bài toán tam giác và hình thang Tiểu luận sẽ được chia làm 3 phần chính:

- Phần I Cơ sở lý thuyết về mạng ngữ nghĩa và hệ luật dẫn

- Phần II Bài toán tam giác và hình thang

- Phần III Chương trình demo

Trang 5

PHẦN I - TỔNG QUAN VỀ MẠNG NGỮ NGHĨA

1 Khái niệm cơ bản

Mạng ngữ nghĩa là một trong những phương pháp biểu diễn tri thức đơn giản và

dễ hiểu nhất để trình bày khá nhiều vấn đề Phương pháp này biểu diễn tri thức dưới dạng một đồ thị Trong đó, các đỉnh là các đối tượng (khái niệm), còn các cung cho biết mối quan hệ giữa các đối tượng (khái niệm) này

Quan hệ là phần chính trong mạng ngữ nghĩa Không có quan hệ, tri thức chỉ là tập hợp các sự kiện không liên quan với nhau Với quan hệ, tri thức trở thành một cấu trúc nối liền với các tri thức khác có liên quan

Có một cung nối giữa hai đối tượng a và đối tượng b, ký hiệu a→b nếu có một quan hệ nào đó giữa hai đối tượng a, b

Mạng ngữ nghĩa là một dạng đồ thị nên nó thừa hưởng được tất cả những mặtmạnh của đồ thị 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à gán một ýnghĩa (có, làm, là, biết,…) cho các cung Trong đồ thị tiêu chuẩn, việc có một cung nốigiữa hai đỉnh chỉ cho biết sự liên hệ giữa hai đỉnh đó và tất cả các cung trong đồ thịbiểu diễn cho cùng một loại liên hệ Trong mạng ngữ nghĩa, cung nối giữa hai đỉnhcòn 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

Ta có thể nới rộng mạng ngữ nghĩa bằng cách thêm các nút và nối chúng vào đồthị Các nút mới ứng với các đối tượng bổ sung Thông thường có thể nới rộng mạngngữ nghĩa theo 3 cách:

+ Thêm đối tượng tương tự

+ Thêm một đối tượng đặc biệt hơn

+ Thêm một đối tượng tổng quát hơn

Điểm đặc biệt của mạng ngữ nghĩa là tính kế thừa Bởi vì ngay từ trong kháiniệm, mạng ngữ nghĩa đã hàm ý sự phân cấp (như các mối liên hệ “là”) nên có nhiềuđỉnh trong mạng mặc nhiên sẽ có những thuộc tính của những đỉnh khác

Trang 6

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ễndướ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ênmạ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 sinh 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

Có 2 loại quan hệ đặc biệt:

+ "a là b" nghĩa là đối tượng a thuộc vào tập đối tượng được biểudiễn bởi khái niệm b hoặc tập các đối tượng biểu diễn bởi khái niệm a là tập con củatập đối tượng biểu diễn khái niệm b (quan hệ is-a)

Ví dụ: Diêu Hồng →cáNgược lại với quan hệ "là" là quan hệ "bao gồm" Khi có <a là b> (hoặc "b bao gồm a"), các thông tin cơ bản về các đối tượng được cho bởi b sẽ truyền lại cho a (nghĩa là

a được thừa hưởng những gì b có)

Trang 7

Như đã thấy trong hình 1, do mạng ngữ nghĩa là một loại đồ thị cho nên ta có thể sử dụng tất cả những kỹ thuật mạnh mẽ đã được phát triển cho công cụ này Điều này có nghĩa là ta có thể áp dụng các 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, v.v… để 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 ta có thể gán các ý nghĩa khác nhau (có, làm, là, biết, ) cho các cung Trong đồ thị thông thường, việc có một cung nối giữa hai đỉnh chỉ cho biết có sự liên hệ giữa

hai đỉnh đó và tất cả các cung trong đồ thị đều biểu diễn cho cùng một loại liên hệ Trong mạng ngữ nghĩa, cung nối giữa hai đỉnh còn 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 Chẳng hạn như trong ví dụ trên, nếu sử dụng đồ thị thông thường, ta phải dùng đến 4 loại đồ thị cho 4 mối liên hệ : một đồ thị để biểu diễn mối liên hệ "là", một đồ thị cho mối liên hệ "làm", một cho "biết" và một cho "có"

Một điểm khá thú vị của mạng ngữ nghĩa là tính kế thừa Bởi vì ngay từ trong khái niệm, mạng ngữ nghĩa đã hàm ý sự phân cấp (như các mối liên hệ "là") nên có nhiều đỉnh trong mạng mặc nhiên sẽ có những thuộc tính của những đỉnh khác Chẳng hạn theo mạng ngữ nghĩa ở trên, ta có thể dễ dàng trả lời "có" cho câu hỏi : "Chích chòe có làm tổ không?" Ta có thể khẳng định được điều này vì đỉnh "chích chòe" có liên kết "là" với đỉnh "chim" và đỉnh "chim" lại liên kết "biết" với đỉnh "làm tổ" nên suy ra đỉnh "chích chòe" cũng có liên kết loại "biết" với đỉnh "làm tổ" Đây là

kiểu "suy luận" bắt nguồn từ thuật toán "dầu loang" hay "tìm liên thông" trên đồ thị 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 ngữ nghĩa đó

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

Trang 8

2 Ưu điểm và nhược điểm của mạng ngữ nghĩa

a Ưu điểm

- 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 có tính trực quan cao nên rất đễ hiểu

- 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 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ậnthông tin

PHẦN II – MẠNG NGỮ NGHĨA CHO BÀI TOÁN TAM GIÁC VÀ HÌNH THANG

1 Bài toán tam giác

1.1 Mạng ngữ nghĩa cho bài toán tam giác thông thường

Bài toán tam giác được phát biểu tổng quát như sau : “cho trước một số yếu tố

đã biết và yêu cầu tìm các yếu tố chưa biết nào đó trong một tam giác”, ví dụ như "cho

3 cạnh của tam giác, tính chiều dài đường cao kẻ từ góc A", "cho góc A, B và cạnh

AC Tính chiều dài trung tuyến AM", … Mỗi bài toán tam giác đơn lẻ như vậy không

Trang 9

phải là vấn đề quá khó khăn khi lập trình vì ta hoàn toàn có thể xác định các bước tínhtoán, sau đó viết các hàm hoặc thủ tục để chuyển nó thành chương trình Tuy vậy, sốlượng các bài toán đơn lẻ tương tự là rất lớn và việc lập trình cho từng bài với các yếu

tố cho trước và yếu tố cần tính toán khác nhau là điều không hợp lý Do đó, yêu cầuđặt ra là một chương trình tổng quát có thể tự động xử lý các yếu tố đầu vào khác nhau

để tính các yếu tố đầu ra cũng khác nhau tương ứng với mỗi lần chạy chương trình trên

cơ sở các công thức toán học đã biết Một cấp độ cao hơn nữa là việc ghi lại quá trìnhtính toán để hướng dẫn người sử dụng các bước giải một bài toán thực tế được nhậpvào

Mạng ngữ nghĩa chính là công cụ hỗ trợ xây dựng mô hình xử lý cho yêu cầunêu trên một cách tương đối tốt, trực quan và đơn giản

Theo thống kê, có khoảng hơn 20 yếu tố mô tả các thành phần khác nhau củamột tam giác (cạnh, góc, đường cao, trung tuyến, chu vi, diện tích v.v…) và khoảnghơn 200 công thức xác định các mối liên quan giữa các yếu tố đó Để mô tả chúngbằng công cụ mạng ngữ nghĩa, ta cần sử dụng khoảng hơn 200 đỉnh để chứa các côngthức và khoảng hơn 20 đỉnh để chứa các yếu tố của tam giác Các cung giữa một đỉnhchứa một yếu tố và một đỉnh chứa công thức được thiết lập khi công thức có chứa đỉnh

đó Mạng ngữ nghĩa rút gọn (gồm 8 yếu tố và 5 công thức) cho bài toán này có cấutrúc như sau :

Trang 10

Hình 2 Mạng ngữ nghĩa cho bài toán tam giácĐỉnh của đồ thị bao gồm hai loại :

+ Đỉnh chứa công thức (các đỉnh hình chữ nhật)

+ Đỉnh chứa yếu tố của tam giác (các đỉnh hình tròn)

Cung : chỉ nối từ đỉnh hình tròn đến đỉnh hình chữ nhật cho biết yếu tố nào củatam giác xuất hiện trong công thức nào (không có trường hợp cung nối giữa hai đỉnhhình tròn hoặc cung nối giữa hai đỉnh hình chữ nhật)

Phương pháp suy diễn được sử dụng ở đây cũng tương đối đơn giản Trong mộtcông thức có chứa n yếu tố của tam giác, nếu đã biết giá trị của n-1 yếu tố thì sẽtính được giá trị của yếu tố còn lại Chẳng hạn như trong công thức tổng 3 góc của tamgiác bằng 180o thì khi biết được hai góc, ta sẽ tính được góc còn lại Nói cách khác, tathực hiện cơ chế suy diễn theo thuật toán “vết dầu loang” đơn giản theo các bước sau :

B1 : Kích hoạt những đỉnh hình tròn đã cho ban đầu (những yếu tố đã biết giátrị)

B2 : Lặp lại bước này cho đến khi kích hoạt được đỉnh ứng với yếu tố cần tínhhoặc không thể kích hoạt được bất kỳ đỉnh nào nữa

Duyệt qua tất cả các đỉnh hình chữ nhật Nếu một đỉnh hình chữ nhật có cungnối với n đỉnh hình tròn mà n-1 đỉnh hình tròn đã được kích hoạt thì kích hoạt đỉnh

Trang 11

hình tròn còn lại (tính giá trị đỉnh còn lại này thông qua công thức ở đỉnh hình chữnhật tương ứng).

Một số ví dụ minh họa cho phương pháp suy diễn “vết dầu loang” dựa trênmạng ngữ nghĩa tam giác ở hình 2 :

1.2 Ứng dụng hệ luật dẫn cho bài toán tam giác đặc biệt

a Vấn đề về trường hợp tam giác đặc biệt

Trong bài toán tam giác, ta vẫn thường gặp các trường hợp tam giác đặc biệtnhư tam giác cân, tam giác vuông, tam giác đều v.v… Những trường hợp đặc biệt nàythường là dữ liệu đầu vào và việc xử lý chúng bằng mạng ngữ nghĩa thường gặp một

số trở ngại

Xét trường hợp “tam giác cân tại C” Trường hợp đặc biệt này được xem nhưtương đương với một cặp công thức “góc A = góc B và cạnh a = cạnh b” Với mạngngữ nghĩa, ta có thể có 2 cách biểu diễn trường hợp đặc biệt này dùng đỉnh hoặc dùngcung như sau :

+ Biểu diễn như một thực thể – công thức (dùng đỉnh) : ở đây, ta có 2 cách gántrường hợp đặc biệt thành một hoặc hai đỉnh (công thức) trong ô vuông như hình vẽsau

Trang 12

a) Biểu diễn bằng 1 công thức b) Biểu diễn bằng 2 công thức

Hình 3 Biểu diễn trường hợp đặc biệt như một thực thểVới cách a), ta thấy rõ ràng là không phù hợp với phương pháp suy diễn docông thức chứa 4 yếu tố nhưng không cần phải biết đủ 3 yếu tố mới suy ra được yếu tốthứ 4 như các công thức thông thường khác Còn với b), ta thấy một vấn đề bất cập làphải dùng 2 công thức để biểu diễn cho cùng một trường hợp, và với trường hợp tamgiác đều thì cần đến 6 công thức như vậy Hơn nữa trường hợp đặc biệt này có thể tồntại hoặc không tồn tại nên việc dùng một đỉnh biểu diễn tương đối không thích hợp vìnếu điều kiện không tồn tại thì đỉnh tương ứng cũng không tồn tại gây xáo trộn mạngngữ nghĩa hoặc nếu có tồn tại thì sẽ gây ra khó khăn khi thực hiện cơ chế suy diễn đãtrình bày ở trên

+ Biểu diễn như một quan hệ (dùng cung) :

Hình 4 Biểu diễn trường hợp đặc biệt như một quan hệViệc dùng một cung giữa hai đỉnh hình tròn là không phù hợp với cấu trúc banđầu ở trên (cung chỉ nối giữa một đỉnh hình tròn và một đỉnh hình chữ nhật) Hơn nữa,

cơ chế suy diễn không duyệt qua cung (chỉ duyệt qua các đỉnh hình chữ nhật để suy racác thực thể nằm trong hình tròn) và do đó sẽ không thể suy ra góc B khi đã có góc A

và ngược lại

Ngày đăng: 10/04/2015, 11:08

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w