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

Tiểu luận môn biểu diễn tri thức và suy luận BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG GIẢI BÀI TOÁN TAM GIÁC

42 644 1

Đ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 42
Dung lượng 326,66 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Các tri thức nhân loại đều có thể được xây dựng thành một hệ thốnghoà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

Trang 1

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

BIỂU DIỄN TRI THỨC VÀ SUY LUẬN

Bài thu hoạch:

BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG GIẢI

BÀI TOÁN TAM GIÁC

Khoa đào tạo:

Trang 2

M c l c ụng giải bài toán tam giác ụng giải bài toán tam giác

A LÝ THUYẾT VỀ BIỂU DIỄN TRI THỨC 3

I Lời mở đầu 3

II Giới thiệu về tri thức 4

III Tầm quan trọng của biểu diễn tri thức lên máy tính: 5

IV Một số mô hình biểu diễn tri thức cơ bản 6

1 Logic vị từ 6

2 H lu t dẫnệ luật dẫn ật dẫn 6

3 Biểu diễn tri thức bằng Frame 9

4 Biểu diễn tri thức bằng Script 11

5 Mạng ngữ nghĩa 12

V Mạng suy diễn tính toán: 14

1 Khái ni mệ luật dẫn 14

2 Các quan hệ 15

3 Mạng tính toán và các kí hiệu 16

4 Bài toán trên mạng tính toán 16

5 Thu t toánật dẫn 17

VI Mạng các đối tượng tính toán: 19

1 Khái ni mệ luật dẫn 19

2 Thu t toánật dẫn 21

3 Ưu điểm: 23

4 Khuyết điểm: 23

VII Mô hình COKB: 23

1 Khái ni mệ luật dẫn 23

2 Phương pháp thiết kế 29

VIII Hệ chuyên gia 32

3 Khái niệm 32

4 Ưu khuyết điểm 32

B ỨNG DỤNG MÔ HÌNH MẠNG TÍNH TOÁN TRONG MỘT SỐ BÀI TOÁN HÌNH HỌC 33

I Bài toán về tam giác 33

1 Tam giác 33

Trang 3

2 Tam giác cân 36

3 Tam giác vuông 36

4 Tam giác vuông cân 37

5 Tam giác đều 37

6 Các luật biến đổi 38

II Chương trình 39

C KẾT LUẬN 40

III Tóm tắt kết quả đạt được 40

IV Hướng phát triển 40

D Tài liệu tham khảo 40

Trang 4

A LÝ THUYẾT VỀ BIỂU DIỄN TRI THỨC

I Lời mở đầu

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á đấtnướ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ựcnà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ốnghoà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ìnhphát triển của xã hội

Cuộc cách mạng khoa học kỹ thuật hiện đại bắt đầu giữa những năm 40 thế kỉ 20 Nhữngphát minh trong khoa học - kĩ thuật cuối thế kỉ 19 đầu thế kỉ 20 là tiền đề của cuộc CMKH - KThiện đại Cuộc cách mạng trong giai đoạn này chủ yếu về công nghệ với sự ra đời của máy tínhđiện tử thế hệ mới được sử dụng trong mọi hoạt động kinh tế và đời sống xã hội, về vật liệumới, về những dạng năng lượng mới và công nghệ sinh học, về phát triển tin học

Ngày nay, chúng ta có thể thấy được sự xuất hiện của từ “Robot” ngày càng nhiều, điểmđặc biệt của Robot không phải là hình dáng bên ngoài, hay là những chuyển động của nó màchính là bộ não của Robot

Bộ não của Robot là trung tâm điều khiển mọi hoạt động của nó như là: điều khiển hoạtđộng, cảm xúc và khả năng đưa ra nhiều sự lựa chọn để giải quyết vấn đề Làm thế nào từnhững khối sắt nặng nề, mà con người có thể chế tạo ra được những chú Robot linh hoạt vàthông minh, có những tri thức của con người kỳ diệu đến vậy Ngày nay, việc thể hiện tri thứccủa con người dưới dạng một ngôn ngữ hệ thống gọi là trí tuệ nhân tạo đã không còn xa lạnữa mà thậm chí nó đang đi đến sự phát triển vượt bậc Nhìn những chú Robot phát triển theotừng giai đoạn, thì chúng ta cũng biết khoa học kỹ thuật đang thăng hoa

Khoa học kỹ thuật đã giúp cho chúng ta khám phá và chạm đến những điều kỳ diệu củacuộc sống, để có được những phát minh khoa học, các nhà khoa học vĩ đại cũng trải nghiệmqua rất nhiều phương pháp nghiên cứu để tiếp cận vấn đề, và từ đó họ đút kết và đưa ra đượcnhiều định lý, định nghĩa, công trình khoa học tồn tại vĩnh viễn theo thời gian

Trong bài tiểu luận này, tác giả đưa ra một ví dụng minh hoạ cho việc biểu diễn tri thứctrong 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

Mạng ngữ nghĩa là một khái niệm tri thức được ứng dụng nhiều trong thực tế như các bàitoán về mạng giao thông, luồng việc ứng dụng mạng ngữ nghĩa trong các lĩnh vực của đờisống xã hội không còn xa lạ với con người Và trong bài tiểu luận này, tác giả muốn gửi đếnmột ứng dụng khác, đó là ứng dụng mạng ngữ nghĩa để giải các bài toán phổ thông

Trang 5

II Giới thiệu về tri thức

- “Tri thức là sức mạnh” của Francis Bacon.

Như danh ngôn nổi tiếng của FrancisBacon, ta có thể thấy tri thức được xem như là mộttrong những tài sản lớn nhất của nhân loại, nhưng nó là một cái gì rất mong manh và khó đểghi lại Ghi lại và biểu diễn tri thức của con người với sự giúp đỡ của máy tính là một trongnhững lĩnh vực đã được nghiên cứu rất lâu của khoa học máy tính nhằm mục đích biểu diễncác kiến thức của con người thành một dạng mà máy tính có thể hiểu được Đã có nhiều tiếpcận khác nhau về vấn đề này nhưng gặp thất bại trong quá khứ có thể vì đã không tập trungvào cái quan trọng nhất đó là cách mà tri thức con người được biểu diễn: theo ngôn ngữ tựnhiên

Các mô hình để phần nào có thể biểu diển tri thức con người dựa trên ngôn ngữ tự nhiênlần lượt được đưa ra để giúp con người có thể đưa ra các tri thức của họ theo cách tự nhiênsao cho máy tính có thể hiểu được Các mô hình này đã được nghiên cứu bởi nhiều nhómchuyên gia và nhiều mô hình lần lượt ra đời mặc dù không phải mô hình nào cũng đủ mạnh để

có thể tạo ra ứng dựng thực tế có thể biểu diển được các tri thức trên nhiều lĩnh vực khácnhau

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 đó; đượcxem 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 tamgiá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ạngcấ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ấutrú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ớinhữ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”:

Định nghĩa quan hệ 2 ngôi

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ắccầu

Quan hệ thứ tự

Quan hệ tương đương

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ểudiễ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

Trang 6

Phép toán 2 ngôi T trên tập X là ánh xạ

Các thực thể hay đối tượng, một phần tử cụ thể (objects)

III Tầm quan trọng của biểu diễn tri thức lên máy tính:

Chúng ta đang sống trong một thế giới mà máy tính ngày càng trở nên phổ biến hơn Sốlượng người phải làm việc với máy tính trong cuộc sống hàng ngày đã gia tăng một cách đáng

kể trong thập kỷ qua Sẽ không phải quá nếu nói rằng chúng ta không còn xa thời điểm mà hầunhư tất cả mọi người đều phụ thuộc vào máy tính trong cả ngày và đêm

Tuy nhiên số lượng người được đào tạo về khoa học máy tính lại không theo kịp với đàphát triển Tỷ lệ người có trình độ về khoa học máy tính chỉ chiếm tỷ lệ rất thấp trên dân số cóviệc làm Nghĩa là trong khi càng ngày càng nhiều người phải làm việc với máy tính trong cuộcsống hàng ngày của họ, tỷ lệ người có trình độ cao trong khoa học máy tính lại duy trì với mứcrất thấp Kết quả là càng ngày càng nhiều người không có đủ kiến thức cụ thể cần thiết tronglĩnh vực khoa học máy tính để có thể giao tiếp được với máy tính

Tình trạng này làm tăng lên sự cần thiết của việc liên lạc với máy tính theo cách dễ dàng

và trực quan nhất mà không cần phải yêu cầu kiến thức chuyên sâu từ người dùng Tuy nhiêntrên thực tế con người và máy tính dùng các loại ngôn ngữ hoàn toàn khác biệt đó là một trongnhững trở ngại lớn nhất trong việc giao tiếp giữa con người với máy tính Máy tính sử dụng cácngôn ngữ hình thức như ngôn ngữ lập trình hay ngôn ngữ logic trong khi con người thể hiện họbằng ngôn ngữ tự nhiên

Giải pháp đơn giản nhất cho vấn đề này là viết các chương trình máy tính sao cho chúng

có khả năng xử lý ngôn ngữ tự nhiên sao cho hợp lý nhất Mặc dù đã có nhiều thành côngbước đầu trong lĩnh vực nghiên cứu này, việc xử lý ngôn ngữ tự nhiên trở thành một vấn đề vôcùng khó khăn Từ những cố gắng đầu tiên, một lượng lớn các nghiên cứu đã trực tiếp làm việctrên vấn đề này trong vài thập kỷ trở lại đây Mặc dù thực tế là có những tiến triển trên một sốkhía cạnh, máy tính vẫn thất bại trong việc xử lý ngôn ngữ tự nhiên một cách tổng quát và đángtin cậy nhất

Trong khi máy tính thất bại trong việc hiểu ngôn ngữ tự nhiên, thì con người được biết làgặp rất nhiều khó khăn trong việc học ngôn ngữ hình thức Ví dụ rất nhiều người sử dụng webthất bại trong việc dùng chính xác các toán tử vô cùng đơn giản trong các công cụ tìm kiếm.Ngoài ra việc sử dụng các ngôn ngữ logic cũng gặp rất nhiều khó khăn

Nhìn chung, kết quả hiển nhiên là con người và máy tính có thể giao tiếp nhau nhưngkhông thể dùng ngôn ngữ của hai bên Một số mô hình đã ra đời để giải quyết vấn đề này trên

Trang 7

một số khía cạnh nhất định đó là có thể phần nào biểu diễn những tri thức quý giá của conngười lên máy tính và có thể tự phân tích được dựa vào những tri thức đó Chúng ta hãy cùng

đi vào tìm hiểu một số mô hình biểu diễn tri thức phổ biến

IV Một số mô hình biểu diễn tri thức cơ bản

1 Logic vị từ

Mô hình: (Predicates, Clauses)

- Predicates là tập gồm các vị từ, mỗi vị từ biểu diễn cho phát biểu nói về một tính chấtcủa đối tượng hay một quan hệ giữa các đối tượng Mỗi vị từ xác định bởi tên vị từ và các kiểutham biến Vídụ: gioi(x:sinhvien)Vídụ:vg(v:vector,P:plane)

- Clauses là tập gồm các biểu thức vị từ gồm 2 dạng fact và rule

2 Hệ luật dẫn

a) Khái ni m ệm

Hệ luật dẫn bao gồm một tập hợp các quy tắc nếu-thì hợp với nhau tạo thành một môhình xử lý thông tin cho một số công việc liên quan đến biểu diễn tri thức Hệ luật dẫn có một sốthuộc tính đặc biệt làm cho nó có tính phù hợp cao để có thể mô hình được tri thức Từ môhình ban đầu chỉ dùng để giải quyết vấn đề, hệ luật dẫn đã phát triển lên trở thành một hìnhthức có thể mô hình các tri thức của con người và các khía cạnh trong máy học

Hệ luật dẫn là một mô hình xử lý tri thức, bao gồm một tập hợp các quy tắc (được gọi làluật dẫn) Mỗi luật gồm hai phần: phần điều kiện và phần hành động Ý nghĩa của luật này là khiđiều kiện đúng, thì một hành động sẽ được thực thi Hãy xem xét một ví dụ đơn giản sau đâyvới hai luật dẫn để mô tả hành vi của một hệ thống làm ấm

Luật 1: nếu nhiệt độ < 20 C -> bật chế độ làm ấm

Luật 2: nếu nhiệt độ > 20 C -> tắt chế độ làm ấm

Khi nhiệt độ trong phòng nhỏ hơn 20 C, phần điều kiện của luật 1 đúng, vì thế máy điềuhoà nhiệt độ thực hiện hành động cụ thể theo luật vào bật chế độ làm ấm Khi nhiệt độ trên 20

C, luật 2 tương tự sẽ được thực thi và tắt chế độ làm ấm Cùng với nhau, hai nguyên tắc nàyxác định một quá trình mô tả hành vi của một máy điều hoà nhiệt độ

Một hệ luật dẫn cho mô hình tri thức có nhiều hơn hai luật, thậm chí cả ngàn luật Hệthống hoạt động theo kiểu chu kỳ Trước hết một luật có các điều kiện được thoả sẽ được xácđịnh, khi đó luật này sẽ được thực thi Thường hành động này sẽ thay đổi trạng thái hiện tạisang trạng thái khác do đó một luật khác với điều kiện của nó sẽ được thoả, và vòng quay lạiđược lặp lại

Mô hình biểu diễn tri thức của hệ luật dẫn

Mô hình biểu diễn tri thức của hệ luật dẫn gồm có hai thành phần chính (Facts, Rules).Trong đó Facts bao gồm các phát biểu chỉ các sự kiện hay các tác vụ nào đó, còn Rules gồmcác luật dẫn có dạng “if…then….”

Ví dụ: Một phần cơ sở tri thức của tam giác

Các yếu tố của tam giác ví dụ cạnh a, b, c; góc A, B, C, chu vi p, diện tích S, đường cao

ha, hb, hc…

Đưa vào Facts = {a, b, c, A, B, C, p, S, ha, hb, hc, …}

Trang 8

Các luật sinh ví dụ: nếu có góc A, góc B thì có góc C,…

Đưa vào Rules = {

a: cạnh a của tam giác

b: cạnh b của tam giác

Cơ chế suy luận trên luật dẫn

Với một hệ luật dẫn K = {Facts, Rules} cho trước Giả sử ta có một tập sự kiện GT đã xácđịnh, ta xét một tập sự kiện mục tiêu KL Có thể suy ra được KL từ tập GT không, và nếu đượcthì KL được suy ra từ các luật sinh nào?

b) Suy di n ti n: ễn tiến: ế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 Ví dụ: Trong ví dụ trên nếu ban đầu ta có các sự kiện A, B Ta cóthể suy ra C nhờ luật R1

Thuật giải suy diễn tiến:

B1: Ghi nhận các sự kiện giải thiết và mục tiêu của bài toán

B2: Khởi tạo lời giải là rỗng

B3: Kiểm tra mục tiêu

If mục tiêu đáp ứng then goto B8

B4: Nếu mục tiêu chưa nằm trong know tìm luật có thể phát sinh sự kiện mới

B5: If không tìm được luật then

Trang 9

Dừng không tìm được lời giải

B6: If B4 thành công then

Ghi nhận thông tin về luật vào lời giải và sự kiện mới vào giả thiết được phát sinh từ cácluật

B7: Goto B4

B8: Tìm được lời giải trong danh sách luật solution

c) Suy di n lùi: ễn tiến:

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 Ví dụ: Trong ví dụ trên nếu ban đầu ta cần tìm C Ta xem trong cácluật sinh ra C để tìm sự kiện nào đã có trong đề bài Nếu tìm được thì kết thúc còn không tìmđược thì lại truy ngược lên đối với các sự kiện đã sinh ra C Ở đây nhờ luật R1 ta tìm ra được

sự kiện A, B mà đề bài đã cho trước

Thuật giải suy diễn lùi:

B1: Giả sử mục tiêu đúng

B2: Phát sinh các mục tiêu con

B3: Kiểm tra các mục tiêu con

If mục tiêu đáp ứng then goto B8

B4: Tìm luật có thể phát sinh sự kiện mới

B5: If không tìm được luật then

Dừng không tìm được lời giải

B6: If B4 thành công then

Ghi nhận thông tin về luật vào lời giải và sự kiện mới vào giả thiết được phát sinh từ cácluật

B7: Goto B4

B8: Tìm được lời giải trong danh sách luật solution

d) T i u lu t ối ưu luật ưu luật ậ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ứcthườ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, tavẫn có một số thuật toán đơn giản để loại bỏ các vấn đề này như

Trang 10

A  B  C sẽ trở thành A  C, B  C

Luật thừa

Một luật là thừa nếu có thể suy ra từ luật khác ví dụ A  B, B  C, A  C thì luật thứ 3

bị thừa

Ưu và khuyết điểm của hệ luật dẫn:

e) Ưu điểm: u đi m: ểm:

Các luật rất dễ hiểu nên có thể dễ dàng dùng để trao đổi với người dùng (vì nó là mộttrong những dạng tự nhiên của ngôn ngữ)

Có thể dễ dàng xây dựng được cơ chế suy luận và giải thích từ các luật

Việc hiệu chỉnh và bảo trì hệ thống là tương đối dễ dàng

Có thể cải tiến dễ dàng để tích hợp các luật mờ

Các luật thường ít phụ thuộc vào nhau

f) Khuy t đi m: ến: ểm:

Các tri thức phức tạp đôi lúc đòi hỏi quá nhiều (hàng ngàn) luật sinh Điều này sẽ làmnảy sinh nhiều vấn đề liên quan đến tốc độ lẫn quản trị hệ thống

Thống kê cho thấy, người xây dựng hệ thống trí tuệ nhân tạo thích sử dụng luật sinh hơntất cả phương pháp khác (dễ hiểu, dễ cài đặt) nên họ thường tìm mọi cách để biểu diễn tri thứcbằng luật sinh cho dù có phương pháp khác thích hợp hơn! Đây là nhược điểm mang tính chủquan của con người

Cơ sở tri thức luật sinh lớn sẽ làm giới hạn khả năng tìm kiếm của chương trình điềukhiển Nhiều hệ thống gặp khó khăn trong việc đánh giá các hệ dựa trên luật sinh cũng như gặpkhó khăn khi suy luận trên luật sinh

3 Biểu diễn tri thức bằng Frame

a) Khái ni m ệm

Frame là một cấu trúc dữ liệu chứa đựng tất cả những tri thức liên quan đến một đốitượ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 raframe 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ễntri 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ộtvấ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ốilượng tương đối lớn tri thứ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ểu diễn tri thức bằ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 tri thức, ta sẽ "gắn kèm" những thao tác thường gặp trên tri thứ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ểu diễn những tri thức "chuẩn" hoặc những tri thức đượcxâ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

Trang 11

của con người chúng ta vẫn luôn "lưu trữ" rất nhiều các tri thứ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íchhợp để biểu diễn những kiểu tri thức này

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

Máy (tham chiếu đến frame Máy)

Kiểu : In-line, overhead cam

Mã lực : 140 hp

Cấu trúc một Frame xe hơi

b) C u trúc c a Frame ấu trúc của Frame ủ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ểu diễ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ạikhá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 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

Trang 12

- 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

c) Tính k th a ến: ừ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ếtvớ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 Đặctí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ínhchấ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

Quan hệ giữa các đối tượng hình học phẳng

4 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ộtscript 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

Trang 13

- 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

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ộtscript, 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ínhxá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ứctươ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à conngười vẫn thực hiện mỗi ngày hoặc đã nắm bắt chính xác

5 Mạng ngữ nghĩa

a) Đ c đi m ặc điểm ể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ươngphá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ệcgán một ý nghĩa cho các cung Cung nối giữa hai đỉnh 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ủamạ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ôngtin 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

b) Ưu điểm: u đi m: ể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ổ sungcá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

Trang 14

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ôngqua 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ếttrự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

c) Nh ưu luậtợc điểm: c đi m: ể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

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, trithứ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-1 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

Xét ví dụ bên dưới,

Trang 15

4 góc

Hình chữ nhật

Tứ giác Hình bình hành

HÌNH 1- 2 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ạnhbằ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 đưavà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ạngnhữ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ĩathườ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ậthoặ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ápbiểu diễn khác

V Mạng suy diễn tính toán:

1 Khái niệm

Mạng tính toán là một dạng biểu diễn tri thức có thể dùng biểu diễn các tri thức về cácvấn đề tính toán và được áp dụng một cách có hiệu quả để giải một số dạng bài toán Mỗimạng tính toán là một mạng ngữ nghĩa chứa các biến và những quan hệ có thể cài đặt và sửdụng được cho việc tính toán Chúng ta xét một mạng tính toán gồm một tập hợp các biến cùngvới một tập các quan hệ (chẳng hạn các công thức) tính toán giữa các biến Trong ứng dụng cụ

Trang 16

thể mỗi biến và giá trị của nó thường gắn liền với một khái niệm cụ thể về sự vật, mỗi quan hệthể hiện một sự tri thức về sự vật.

Một mạng tính toán với các biến giá trị đơn giản là một cặp (M,F) trong đó M = {x1, x2,

…,xn} là một tập các biến có giá trị đơn giản (hoặc giá trị không có cấu trúc) và F = {f1, f2, ….,fm} là tập các quan hệ tính toán giữa các biến trọng tập M Mỗi quan hệ tính toán f  F có dạngnhư sau:

+ Một phương trình với một số biến trong M hoặc

+ Một quy tắc suy luận: u(f)  v(f), với u(f)  M, v(f)  M, và có một công thức tương ứng để xác định (hoặc tính toán) các biến trong v(f) từ u(f) Ta có M(f) = u(f)  v(f)

Ví dụ: Tam giác ABC có thể được biểu diễn bởi mạng tính toán như sau M = {a, b, c, A,

Đối với các quan hệ dùng cho việc tính toán, cách ký hiệu trên bao hàm ý nghĩa như làmột hàm: ta có thể tính được giá trị của các biến thuộc v khi biết được giá trị của các biến thuộcu

Trong phần sau ta xét các quan hệ xác định bởi các hàm có dạng f : u  v, trong đó u 

v =  (tập rỗng) Đặc biệt là các quan hệ đối xứng có hạng (rank) bằng một số nguyên dương

k Đó là các quan hệ mà ta có thể tính được k biến bất kỳ từ m-k biến kia (ở đây x là bộ gồm mbiến < x1,x2, ,xm >) Ngoài ra, trong trường hợp cần nói rõ ta viết u(f) thay cho u, v(f) thay cho

v Đối với các quan hệ không phải là đối xứng có hạng k, không làm mất tính tổng quát, ta cóthể giả sử quan hệ xác định duy nhất một hàm f với tập biến vào là u(f) và tập biến ra là v(f); tagọi loại quan hệ nầy là quan hệ không đối xứng xác định một hàm, hay gọi vắn tắt là quan hệkhông đối xứng

Ví dụ: quan hệ f giữa 3 góc A, B, C trong tam giác ABC cho bởi hệ thức:

A+B+C = 180 (đơn vị: độ)

Trang 17

Quan hệ 3 góc trong tam giác ABC

7 Mạng tính toán và các kí hiệu

Như đã nói ở trên, ta sẽ xem xét các mạng tính toán bao gồm một tập hợp các biến M vàmột tập hợp các quan hệ (tính toán) F trên các biến Trong trường hợp tổng quát có thể viết:

M = x1,x2, ,xn,

F = f1,f2, ,fm

Đối với mỗi f  F, ta ký hiệu M(f) là tập các biến có liên hệ trong quan hệ f Dĩ nhiên M(f)

là một tập con của M: M(f)  M Nếu viết f dưới dạng:

f : u(f)  v(f)thì ta có: M(f) = u(f)  v(f)

8 Bài toán trên mạng tính toán

Cho một mạng tính toán (M,F) Vấn đề phổ biến nhất phát sinh từ các ứng dụng thực tế làtìm ra một giải pháp xác định được tập H M từ tập G M Vấn đề này được viết dưới dạng⊆ M từ tập G ⊆ M Vấn đề này được viết dưới dạng ⊆ M từ tập G ⊆ M Vấn đề này được viết dưới dạng

H  G, H là giả thuyết và G là mục tiêu của vấn đề Để giải quyết vấn đề cần phải trả lời haicâu hỏi sau:

Q1: Vấn đề có thể được giải quyết dựa trên tri thức K = (M, F)

Q2: Làm thế nào để đạt được mục tiêu G từ giả thuyết H dựa trên tri thức K = (M, F) trongtrường hợp vấn đề có thể được giải quyết

Ví dụ: Trong tập tri thức K = (M, F) của ví dụ trên giả sử ta có H = { a = 5, b = 4, A = pi/2}tìm giải pháp cho G = {S, R}

Định nghĩa 1

Cho một mạng tính toán K = (M, F)

Cho mỗi A  M và f ¿ F, ta ký hiệu f(A) = A  M(f) là tập thu được từ A bằng cách ápdụng f, cho S = [f1, f2, , fk] là một danh sách chứa các quan hệ trong F, ký hiệu S(A) = fk(fk-1( (f2(f1(A)) )) được dùng để biểu hiện một tập hợp các biến lấy được từ A bằng cách ápdụng các quan hệ f

Danh sách S = [f1, f2, , fk] được gọi là một giải pháp của vấn đề H  G nếu G  S(H).Giải pháp S được gọi là giải pháp tốt nhất nếu không có một danh sách con S’ của S sao cho S’cũng là giải pháp của vấn đề Vấn đề được xem là có thể giải quyết được nếu nó có một giảipháp

Định nghĩa 2

Trang 18

Cho một mạng tính toán K = (M, F) Các dòng sau đây tương đương nhau

Bài toán H  G giải được

H  G

Tồn tại một danh sách các quan hệ S sao cho S(H)  G

Thuật toán 1: Tìm một lời giải cho bài toán H  G

1 Solution  empty; // Solution là dãy các quan hệ sẽ áp dụng

2 if G  H then

begin

Solution_found  true; // biến Solution_found = true khi bài toán là

// giải đượcgoto 4;

Trang 19

Until Solution_found or (H = Hold);

4 if not Solution_found then

Bài toán không có lời giải;

else

Solution là một lời giải;

Thuật toán 2: Tìm lời giải tốt nhất từ một lời giải S = [f1, f2, , fk] của bài toán

Định lý 2: Cho một mạng tính toán K = (M, F) Gọi f1, f2, , fm là một lời giải tốt cho

bài toán H  G Đặt : A0 = H, Ai = f1, f2, , fi(H), với mọi i=1, ,m Khi đó có một dãy B0, B1, , Bm-1, Bm, thỏa các điều kiện sau đây:

(1) Bm = G

(2) Bi  Ai , với mọi i=0,1, ,m

(3) Với mọi i=1, ,m, [fi] là lời giải của bài toán Bi-1  Bi nhưng không phải là lời giải củabài toán B  Bi , trong đó B là một tập con thật sự tùy ý của Bi-1

Cho một mạng tính toán K = (M, F) Các dòng sau đây tương đương nhau

Bài toán H  G giải được

H  G

Tồn tại một danh sách các quan hệ S sao cho S(H)  G

Ví dụ: Cho mạng tính toán biểu hiện tri thức liên quan đến tam giác trong ví dụ trên Tìmmột lời giải cho bài toán {a, B, C}  {S} Từ thuật toán 1 ta có được một lời giải Sol = [f1, f2, f3,f5, f6] Và lời giải này không phải là lời giải tốt nhất vì có một quan hệ thừa là f5 Từ lời giải Solthuật toán 2 sẽ cho lời giải mới NewSol = [f1, f2, f9] và quá trình để giải quyết bài toán nhưsau:

B1: Tính ra A bằng cách áp dụng f1;

B2: Tính ra B bằng cách áp dụng f2;

B3: Tính ra S bằng cách áp dụng f9;

Trang 20

10 Ưu và khuyết điểm của mạng tính toán:

a) Ưu điểm: u đi m: ểm:

Giải được hầu hết các bài toán GT  KL nếu như đáp ứng đầy đủ các giả thiết cần thiết Thuật toán đơn giản dễ cài đặt cho nên việc bảo trì hệ thống tương đối đơn giản

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

b) Khuy t đi m: ến: ểm:

Do hệ thống chỉ bao gồm 1 cặp (M, F) để biểu diễn tri thức nên khi gặp phải những bàitoán phức tạp thì có thể xảy ra việc lưu trữ khó khăn và nhập nhằng khi quản lý Đồng thời việcxây dựng lại thuật toán là một việc tương đối khó khăn  phải bảo trì lại toàn bộ hệ thống Đối với các bài toán mà sử dụng nhiều các đối tượng tính toán bài toán trở nên phức tạp,việc giải quyết bài toán bằng mạng tính toán trở nên khó khăn cho người lập trình

VI Mạng các đối tượng tính toán:

1 Khái niệm

Trong rất nhiều bài toán chúng ta thường gặp rất nhiều loại đối tượng Mỗi một đối tượng

có các thuộc tính và các mối quan hệ bên trong giữa chúng Vì vậy, mạng tính toán được mởrộng sao cho mỗi biến là một đối tượng tính toán

Định nghĩa 1:

Một đối tượng tính toán sẽ có những đặc tính sau:

Nó có các thuộc tính giá trị Một tập hợp các thuộc tính này của đối tượng O sẽ được kýhiệu là M(O)

Có các quan hệ tính toán nội bộ giữa các thuộc tính của đối tượng O Chúng được hiện

ra trong các đặc trưng sau đây của đối tượng:

Cho một tập con A của M(O) Đối tượng O có thể cho chúng ta thấy các thuộc tính có thểxác định được từ tập con A

Đối tượng O sẽ đưa ra giá trị của một thuộc tính

Nó có thể hiện lên các xử lý bên trong để xác định ra các thuộc tính

Ví dụ: 1 tam giác với các tri thức (công thức, định lý, …) là một đối tượng Các thuộc tínhcủa đối tượng tam giác là ba góc, 3 cạnh,… Một đối tượng tam giác có thể trả lời một số câuhỏi ví dụ như là “Có không một lời giải cho một bài toán để tính toán diện tích từ một cạnh vàhai góc?”

Trang 21

M = tập hợp các thuộc tính của đối tượng tính toán được xem xét trong bài toán cụ thể

Mi = M  M(Oi), i=1,2, , m Mi là tập hợp các thuộc tính được xem xét của đốitượng Oi

Cho một mạng các đối tượng tính toán (O,F) Chúng ta quan tâm đến bài toán xác định(hoặc tính toán) các thuộc tính trong tập G từ các đối tượng cho trước trong tập H Bài toán nàyđược viết dưới dạng H  G

Ví dụ: Trong hình dưới, giả sử AB = AC, giá trị của góc A và cạnh BC được cho trước.ABDE và ACFG là hình vuông Tính EG

Bài toán trên có thể được xem làm mạng các đối tượng tính toán như sau:

O = {O1: tam giác ABC với AB = AC, O2: tam giác AEG, O3: hình vuông ABDE, O4: hìnhvuông ACFG} và F = {f1, f2, f3, f4, f5} gồm các quan hệ sau

Giả sử D = [t1, t2, …, tm] là một danh sách các yếu tố trong F  O Ký hiệu Ao = A, A1 =t1(Ao), …., Am = tm(Am-1) và D(A) = Am

Chúng ta có Ao  A1  …  Am = D(A)  M

Một bài toán H  G được gọi là giải được nếu có một danh sách D  F  O sao choD(A)  B Trong trường hợp này, chúng ta gọi D là một lời giải của bài toán

Ngày đăng: 19/05/2015, 00:58

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Đỗ Văn Nhơn; Hoàng Kiếm. Mô hình tri thức về các đối tượng tính toán. Báo cáo toàn văn. Trường Đại học Khoa học Tự nhiên TPHCM, 2001 Khác
[2] Hoàng Kiếm, Đỗ Văn Nhơn, Đỗ Phúc. Giáo trình Các hệ cơ sở tri thức. NXB Đại học Quốc gia TPHCM, 2006 Khác
[3] Đỗ Văn Nhơn. Mạng tính toán và ứng dụng. Luận văn cao học, đại học Khoa học tự nhiên HCM, 1995 Khác
[4] PGS.TS. ĐỖ VĂN NHƠN, Computational Networks for Knowledge Representation Khác
[5] PGS.TS. ĐỖ VĂN NHƠN, Model for Knowledge Bases of Computational Objects Khác
[6] GS.TS HOÀNG KIẾM, PGS.TS. ĐỖ VĂN NHƠN, Mạng tính toán và ứng dụng Khác
[7] Do Van Nhon. An ontology for knowledge representation And Applications. International Conference on Data, Information and Knowledge Management. Singapo, 2008 Khác
[8] Kiem Hoang – Nhon Do Van – Bac Le Hoai – A Knowledgeable Model: Network of C_Object – Proceding of the Asia Pacific Symposium on Technologies (ANSITT 97) – HaNoi – VN 1997 Khác

HÌNH ẢNH LIÊN QUAN

HÌNH 12 VÍ DỤ VỀ MẠNG NGỮ NGHĨA KẾ THỪA - Tiểu luận môn biểu diễn tri thức và suy luận BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG GIẢI BÀI TOÁN TAM GIÁC
HÌNH 12 VÍ DỤ VỀ MẠNG NGỮ NGHĨA KẾ THỪA (Trang 14)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w