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

Xây dựng mô hình biểu diễn tri thức dạng hàm và áp dụng vào bài toán rút gọn biểu thức lượng giác

26 1,6K 2

Đ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 26
Dung lượng 332,78 KB

Nội dung

Qua thời gian tìm hiểu, nghiên cứu tài liệu, em đã đúc kết lại những vấn đề cơ bản, quan trọng nhất của vấn đề nghiên cứu và trình bày lại trong bài tiểu luận này với chủ đề “Xây dựng

Trang 1

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

TIỂU LUẬN

GVHD : PGS TS ĐỖ VĂN NHƠN Học viên: Vũ Đăng Khôi

(CH1101017 – Cao học CNTT K6)

Tháng 01/2013

Trang 2

Em xin chân thành cám ơn PGS TS Đỗ Văn Nhơn về những tri thức và

những kinh nghiệm quý báu mà thầy đã truyền đạt lại cho lớp trong phạm vi

môn học Biểu diễn tri thức và ứng dụng thuộc chương trình đào tạo cao học

ngành Công nghệ thông tin tại trường Đại học Công nghệ thông tin – Đại học Quốc gia Thành phố Hồ Chí Minh

Tác giả cũng xin cám ơn các anh, chị và các bạn trong lớp cao học Công nghệ thông tin khóa 6/2011 về những ý kiến đóng góp trong quá trình học tập

và trao đổi trên lớp và trên diễn đàn

Với khả năng và thời gian có hạn, tiểu luận chắc chắn còn có những thiếu sót nhất định, kính mong thầy và các anh chị góp ý để tác giả có điều kiện hoàn thiện hơn

TP Hồ Chí Minh, 01/2013 Học viên thực hiện

Vũ Đăng Khôi

Trang 3

Trang 4

LỜI NÓI ĐẦU i

DANH MỤC CÁC HÌNH ẢNH ii

PHẦN I DẪN NHẬP 1

PHẦN II NỘI DUNG 3

1 TỔNG QUAN VỀ TRI THỨC VÀ BIỂU DIỄN TRI THỨC 3

1.1 Tri thức 3

1.2 Biểu diễn tri thức 4

1.2.1 Bộ ba Đối tượng – Thuộc tính – Giá trị (Object-Attribute-Value) 4

1.2.2 Các luật dẫn (Rules) 5

1.2.3 Mạng ngữ nghĩa (Semantic Networks) 5

1.2.4 Khung (Frames) 5

1.2.5 Logic 6

1.2.6 Mô hình một đối tượng tính toán (C-Object) 6

1.2.7 Mô hình cơ sở tri thức các đối tượng tính toán (COKB) 7

2 MÔ HÌNH TRI THỨC DẠNG HÀM 8

3 ỨNG DỤNG MÔ HÌNH TRI THỨC DẠNG HÀM ĐỂ GIẢI BÀI TOÁN RÚT GỌN BIỂU THỨC LƯỢNG GIÁC 9

3.1 Phát biểu bài toán 9

3.2 Giải quyết bài toán 10

3.2.1 Chuẩn bị cơ sở tri thức 10

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

3.2.3 Thuật giải suy diễn tiến với Heuristics 10

3.2.4 Xây dựng các thủ tục xử lý trên biểu thức 15

3.3 Chương trình minh họa 16

PHẦN III KẾT LUẬN 19

TÀI LIỆU THAM KHẢO 20

Trang 5

LỜI NÓI ĐẦU

Biểu diễn tri thức và ứng dụng là một môn học bắt buộc thuộc chương

trình đào tạo cao học ngành Công nghệ thông tin tại trường Đại học Công nghệ thông tin – Đại học Quốc gia TP HCM

Ngoài các buổi học được giảng viên truyền đạt trực tiếp trên lớp, các học viên được giao tìm hiểu các chủ đề liên quan đến môn học để thấu hiểu sâu sắc từng vấn đề đó và trình bày lại những hiểu biết thông qua một bài tiểu luận

Qua thời gian tìm hiểu, nghiên cứu tài liệu, em đã đúc kết lại những vấn đề

cơ bản, quan trọng nhất của vấn đề nghiên cứu và trình bày lại trong bài tiểu

luận này với chủ đề “Xây dựng mô hình biểu diễn tri thức dạng hàm và áp

dụng vào bài toán rút gọn biểu thức lượng giác”

Tài liệu tham khảo chính của bài viết là tập tài liệu bài giảng môn Biểu diễn tri thức và ứng dụng của PGS TS Đỗ Văn Nhơn, giảng viên phụ trách

môn học này Ngoài ra, bài viết cũng tham khảo thêm một số tài liệu khác có liên quan đến chủ đề báo cáo được liệt kê ở phần tài liệu tham khảo

Trang 6

DANH MỤC CÁC HÌNH ẢNH

Hình 1 Biểu diễn tri thức bằng mạng ngữ nghĩa 5

Hình 2 Biểu diễn tri thức bằng frame 5

Hình 3 Giao diện chương trình minh họa Rút gọn biểu thức lượng giác 17

Hình 4 Giao diện chương trình minh họa – Cập nhật cơ sở tri thức 18

Trang 7

PHẦN I DẪN NHẬP

Sự khác biệt giữa các hệ cơ sở tri thức và các chương trình truyền thống nằm ở cấu trúc Trong các chương trình truyền thống, cách thức xử lý hay hành vi của chương trình đã được ấn định sẵn qua các dòng lệnh của chương trình dựa trên một thuật giải đã định sẵn Trong các hệ cơ sở tri thức, có hai chức năng tách biệt nhau,

trường hợp đơn giản có hai khối: khối tri thức hay còn được gọi là cơ sở tri thức và khối điều khiển hay còn được gọi là động cơ suy diễn Với các hệ thống phức tạp, bản

thân động cơ suy diễn cũng có thể là một hệ cơ sở tri thức chứa các siêu tri thức (tri thức về cách sử dụng tri thức khác)

Việc tách biệt tri thức khỏi các cơ chế điều khiển giúp ta dễ dàng thêm vào các tri thức mới trong tiến trình phát triển một hệ thống Đây là điểm tương tự của động cơ suy diễn trong một hệ cơ sở tri thức và não bộ con người (điều khiển xử lý), là không đổi cho dù hành vi của cá nhân có thay đổi theo kinh nghiệm và kiến thức mới nhận được

Giả sử một chuyên gia dùng các chương trình truyền thống để hỗ trợ công việc hàng ngày, sự thay đổi hành vi của chương trình yêu cầu họ phải biết cách cài đặt chương trình Nói cách khác, chuyên gia phải là một lập trình viên chuyên nghiệp Hạn chế này được giải quyết khi các chuyên gia tiếp cận sử dụng các hệ cơ sở tri thức Trong các hệ cơ sở tri thức, tri thức được biểu diễn tường minh chứ không nằm ẩn như trong các chương trình truyền thống Do vậy, có thể thay đổi các cơ sở tri thức, sau đó các động cơ suy diễn sẽ làm việc trên các tri thức mới được cập nhật nhằm thực hiện yêu cầu mới của chuyên gia

Đối với các hệ giải quyết vấn đề dựa trên tri thức như các hệ chuyên gia, các hệ

giải toán tự động hay bán tự động thì việc biểu diễn tri thức và chiến lược tìm kiếm

đóng vai trò quyết định trong quá trình xây dựng và cài đặt hệ thống Như vậy, việc nghiên cứu và phát triển các mô hình biểu diễn tri thức và suy diễn tự động trên tri thức giữ một vị trí rất quan trọng trong khoa học máy tính cũng như trong Trí tuệ Nhân tạo Các kết quả nghiên cứu về biểu diễn tri thức và suy luận tự động dựa trên tri thức sẽ là cơ sở và là công cụ cho việc xây dựng các hệ chuyên gia, các hệ giải toán dựa trên tri thức và các hệ cơ sở tri thức

Trang 8

Tri thức dạng hàm và tính toán hàm là những tri thức khá phổ biến, đặc biệt là

trong toán học Tri thức dạng hàm và tính toán hàm xuất hiện trong các bài toán tính toán phổ thông cũng như đại học Tiểu luận sẽ đề xuất và phát triển một mô hình tri thức dạng hàm, các kỹ thuật suy luận tự động để giải các dạng bài toán tổng quát trên

mô hình và áp dụng vào bài toán cụ thể là rút gọn biểu thức lượng giác Cách tiếp cận

để giải quyết mục tiêu đề ra là kết hợp có phát triển các phương pháp biểu diễn tri thức

đã biết và tích hợp vào một số phần mềm toán học phổ biến (như Maple, Mathematica)

và giao diện ứng dụng được thiết kế dựa trên môi trường web tương tác (sử dụng ngôn ngữ lập trình php

Trang 9

PHẦN II NỘI DUNG

1 TỔNG QUAN VỀ TRI THỨC VÀ BIỂU DIỄN TRI

THỨC

1.1 Tri thức

Tri thức là sự hiểu biết về một lĩnh vực nào đó Một số dạng tri thức được biết đến là: [4]

 Tri thức thủ tục – procedured knowledge 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 là các luật, chiến lược, lịch trình và thủ tục

 Tri thức khai báo – declared knowledge 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 - metaknowledge Mô tả tri thức về 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 cao hơn

 Tri thức heuristic – heuristic knowledge Mô tả các “mẹo” để dẫn dắt tiến

trình lập luận Tri thức heuristic còn gọi là tri thức nông cạn do không đảm bảo 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, 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 – structured knowledge Mô tả tri thức theo cấu trúc

Loại tri thức này mô tả mô hình tổng quan hệ thống theo quan điểm của chuyên gia, bao gồm khái niệm, khái niệm con và các đối tượng; diễn tả chức năng và mối liên hệ giữa các tri thức dựa theo cấu trúc xác định

Trang 10

Ngoài các dạng tri thức được đề cập ở trên, người ta còn phân tri thức thành 2 loại:

Tri thức tường minh – explicit knowledge Diễn đạt bằng ngôn ngữ hình

thức, dễ trao đổi giữa các cá nhân Có thể biểu diễn bằng các công thức khoa học, các thủ tục tường minh, hoặc nhiều cách khác Bao gồm thông tin, dữ liệu, sách báo, văn bản, tài liệu đã được hệ thống bằng nhiều phương tiện Tri thức tường minh được đặc trưng bởi các cách tiếp cận lý thuyết, các cách giải quyết vấn đề, tài liệu, cơ sở dữ liệu, cơ sở tri thức

Tri thức ngầm – tacit knowledge Có được và ẩn chứa trong kinh nghiệm của

từng cá nhân, mang tính chủ quan, bao gồm những hiểu biết riêng thấu đáo, trực giác, linh cảm, kỹ năng, Khó trao đổi hoặc chia sẻ với người khác Chỉ có thể học được từ người khác nhờ quan hê gần gũi trong một khoảng thời gian nào

đó Tri thức ngầm liên quan đến nhận thức như niềm tin, quan niệm, trực giác,

mô hình ẩn dụ, … và kỹ thuật như các ngón nghề (craft), các bí quyết how)

(know-1.2 Biểu diễn tri thức

Biểu diễn tri thức (Kowledge Representation) là phương pháp cho phép mã hóa tri thức trong cơ sở tri thức của hệ thống

Biểu diễn tri thức là một vấn đề được quan tâm trong cả khoa học nhận thức lẫn trí tuệ nhân tạo Trong khoa học nhận thức, người ta quan tâm đến cách thức lưu trữ và

xử lý thông tin Còn trong trí tuệ nhân tạo, mục tiêu chính là lưu trữ tri thức sao cho các chương trình có thể xử lý chúng và đạt được sự thông minh như con người Các nhà nghiên cứu trí tuệ nhân tạo đã mượn các lý thuyết về biểu diễn thông tin từ khoa học nhận thức

Một số kỹ thuật biểu diễn tri thức được biết đến là: [4]

1.2.1 Bộ ba Đối tượng – Thuộc tính – Giá trị (Object-Attribute-Value)

Ví dụ:

Đối tượng Thuộc tính Giá trị

Trang 11

1.2.2 Các luật dẫn (Rules)

Ví dụ:

1.2.3 Mạng ngữ nghĩa (Semantic Networks)

Hình 1 Biểu diễn tri thức bằng mạng ngữ nghĩa

1.2.4 Khung (Frames)

Ví dụ:

Hình 2 Biểu diễn tri thức bằng frame

IF Bình điện hỏng

THEN Xe sẽ không khởi động được

IF Xe không khởi động được

THEN Đi bộ

IF Xe sẽ không khởi động được AND Hệ thống nhiên liệu tốt THEN Kiểm tra hệ thống điện

… Thuộc tính n Giá trị n

Trang 12

1.2.5 Logic

Ví dụ:

A = “Xe không khởi động được”

B = “Khoảng cách từ nhà đến cơ quan

xa”

C = “Sẽ trễ giờ làm”

A ^ B  C = “IF Xe không khởi động

được AND Khoảng cách từ nhà đến cơ

quan xa THEN Sẽ trễ giờ làm việc”

và các heuristic, v.v

Một cách tiếp cận khác được sử dụng là kết hợp các phương pháp biểu diễn tri thức đã có với những phát triển nhất định để tạo ra một số mô hình biểu diễn tri thức mới với phạm vi tri thức bao gồm nhiều dạng kiến thức đa dạng hơn, và như thế các

mô hình biểu diễn tri thức này có thể được sử dụng như là cơ sở và là công cụ cho việc thiết kế cơ sở tri thức, bộ phận suy luận giải toán tự động cũng như thiết kế phần giao diện của chương trình

1.2.6 Mô hình một đối tượng tính toán (C-Object)

Mô hình này được đề xuất bởi Đỗ Văn Nhơn trong công trình luận án tiến sĩ toán

học: “Xây dựng hệ tính toán thông minh: Xây dựng và phát triển các mô hình biểu

diễn tri thức cho các hệ giải toán tự động”

Một C-Object có thể được mô hình hóa bởi một bộ:

(Attrs, F, Facts, Rules)

Trang 13

trong đó: Attrs là tập hợp các thuộc tính của đối tượng, F là tập hợp các quan hệ suy diễn tính toán, Facts là tập hợp các tính chất hay các sự kiện vốn có của đối tượng,

và Rules là tập hợp các luật suy diễn trên các sự kiện liên quan đến các thuộc tính cũng như liên quan đến bản thân đối tượng

Ví dụ: Đối tượng (C-Object) “TAM_GIAC” được biểu diễn theo mô hình trên gồm có:

• Attrs = { GocA, GocB, GocC, a, b, c, ha, hb, hc, ma, mb, mc, pa, pb, pc, S, p,

1.2.7 Mô hình cơ sở tri thức các đối tượng tính toán (COKB)

Mô hình này được đề xuất bởi Đỗ Văn Nhơn trong công trình luận án tiến sĩ toán

học: “Xây dựng hệ tính toán thông minh: Xây dựng và phát triển các mô hình biểu

diễn tri thức cho các hệ giải toán tự động”

Trong mô hình này, ngoài những quan hệ tính toán còn có nhiều luật khác trên các loại sự kiện khác nhau Ở đây không phải chỉ có các loại sự kiện tính toán được quan tâm khảo sát mà ta còn đề cập đến những sự kiện quan hệ khác trên các thuộc

Trang 14

tính và trên các đối tượng Mô hình mạng các C-Object tổng quát sẽ cho ta một phương pháp biểu diễn các dạng bài toán tổng quát trong hệ cơ sở tri thức các C-Object, làm cơ sở cho việc thiết kế các môđun giải toán và trợ giúp giải toán trong các

hệ giải toán thông minh

2 MÔ HÌNH TRI THỨC DẠNG HÀM

Một mô hình tri thức dạng hàm có thể được mô hình hóa bởi bộ:

(Predicate, Facts, Rules)

trong đó:

Predicate là tập hợp chứa các định nghĩa danh mục các hàm, gồm:

o Tên hàm,

o Các đối và kiểu đối của hàm,

o Kiểu kết quả của hàm

Facts là tập hợp các giá trị đặc biệt của các hàm đã được định nghĩa trong tập

Predicate

Rules là tập hợp các công thức biểu diễn mối quan hệ giữa các hàm đã được

định nghĩa trong tập Predicate, Rules gồm các bộ công thức được phân loại theo toán tử hay tên hàm Đặc biệt, nên phân loại như trong thực tế đã phân loại, ví dụ như các công thức lượng giác trong các sách giáo khoa phân thành các bộ công thức: hệ thức cơ bản, cung liên quan đặc biệt, công thức cộng, công thức nhân, công thức hạ bậc, công thức biến đổi tích sang tổng,… thì ta cũng sẽ phân loại như vậy

Ví dụ: Kiến thức về lượng giác có thể được biểu diễn như sau:

Predicate = {sin[Real], cos[Real], tan[Real], cot[Real]}

Facts = {cos[Pi/3] =1/2, sin[Pi/2] = 1, cos[0] = 1, … (liệt kê tất cả các giá trị đặc

biệt của các hàm lượng giác )}

Trang 15

Rules = {{sin[x]2 + cos[x]2 = 1, cot[x]tan[x] = 1, tan[x] = sin[x]/cos[x],

cot[x]=cos[x]/sin[x], …},

{},

(liệt kê tất cả các công thức lượng giác)

{(a+b)2 = a2 + 2ab + b2, a2 – b2 = (a+b)(a-b), (hằng đẳng thức)}}

3 ỨNG DỤNG MÔ HÌNH TRI THỨC DẠNG HÀM ĐỂ GIẢI BÀI TOÁN RÚT GỌN BIỂU THỨC LƯỢNG GIÁC 3.1 Phát biểu bài toán

Giả sử có biểu thức exp

Rút gọn biểu thức exp: Có thể biến đổi biểu thức exp thành một biểu thức

expnew mà expnew gọn hơn exp không?

Định nghĩa: Một biểu thức exp1 được gọi là gọn hơn biểu thức exp2 nếu độ dài

của biểu thức exp1 nhỏ hơn độ dài của biểu thức exp2 Nếu độ dài bằng nhau, giữa các hàm là phép lũy thừa thì gọn hơn phép nhân, chia và phép, nhân chia lại gọn hơn phép cộng, trừ

Độ dài của biểu thức exp được định nghĩa như sau:

Length[exp] = số lượng hàm xuất hiện trong exp

Như vậy, biểu thức hằng có độ dài bằng 0

Ví dụ:

exp = 9 (hay a, a+c) thì Length[exp] = 0

exp = sin[x]cos[x] + tan[x] có Length[exp] = 3

exp = cos[x-y] có Length[exp] = 1

exp = cos[x]cos[y] + sin[x]sin[y] có Length[exp] = 4

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

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w