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

Tiểu luận môn CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG Mô hình biểu diễn tri thức Mạng Các Đối Tượng Tính Toán Và Ứng dụng giải bài toán hình học trên một số đối tượng hình học cơ bản

37 777 3

Đ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 37
Dung lượng 252,91 KB

Nội dung

BÀI THU HOẠCH MÔN: CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG ĐỀ TÀI: Mô hình biểu diễn tri thức Mạng Các Đối Tượng Tính Toán Và Ứng dụng giải bài toán hình học trên một số đối tượng hình học cơ bản

Trang 1

BÀI THU HOẠCH MÔN:

CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG

ĐỀ TÀI:

Mô hình biểu diễn tri thức Mạng Các

Đối Tượng Tính Toán

Và Ứng dụng giải bài toán hình học trên một số đối tượng hình học cơ bản

Giảng viên phụ trách: GS.TSKH Hoàng Kiếm

Học viên thực hiện: LÂM HÀN VŨ

Mã học viên: CH1301119

Trang 2

MỤC LỤ

Trang 3

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

2 TỔNG QUAN VỀ CÁC HỆ GIẢI TOÁN VÀ PHẠM VI TIỂU LUẬN 3

II MÔ HÌNH MẠNG TÍNH TOÁN 6

1 ĐỊNH NGHĨA 6

2 CÁC VẤN ĐỀ 7

3 VÍ DỤ 11

III MÔ HÌNH MẠNG CÁC ĐỐI TƯỢNG TÍNH TOÁN 13

1 ĐỊNH NGHĨA 13

2 CÁC VẤN ĐỀ 15

3 VÍ DỤ 20

IV ỨNG DỤNG GIẢI BÀI TOÁN HÌNH HỌC TRÊN MỘT SỐ ĐỐI TƯỢNG HÌNH HỌC CƠ BẢN 21

1 MÔ TẢ BÀI TOÁN 21

2 TỔ CHỨC CƠ SỞ TRI THỨC 22

3 MÔ SỐ QUY ƯỚC TRONG GÓI PHẦN MỀM 22

3.1 Quy ước cho các đối tượng hình học cơ bản 22

3.2 Quy ước cho tên các đối tượng hình học cơ bản 25

4 CÀI ĐẶT VÀ THỬ NGHIỆM 25

V KẾT LUẬN 28

1 CÁC KẾT QUẢ ĐẠT ĐƯỢC 28

2 HẠN CHẾ & HƯỚNG PHÁT TRIỂN 29

Tài liệu tham khảo 30

Trang 4

LỜI NÓI ĐẦU

Để có thể hoàn thành tốt bài báo cáo, trước tiên tôi gởi lời chân thành cảm ơn đến PGS TSH Hoàng Kiếm đã tận tình giảng dạy và giúp

đỡ trong thời gian thực hiện bài tiểu luận

Xin gửi lời cảm ơn đến gia đình, cảm ơn các anh chị, bạn bè, những người luôn sát cánh, động viên tôi trên bước đường học tập cũng như trong cuộc sống Xin chân thành biết ơn sự tận tình dạy dỗ và sự giúp đỡcủa tất cả quý thầy cô tại trường Đại học Công Nghệ Thông Tin, đặc biệt

là các thầy cô trong khoa Khoa học Máy tính, cảm ơn các thầy cô thuộc

bộ phận quản trị thiết bị đã tạo điều kiện thuận lợi về mặt tinh thần,

điều kiện học tập trong quá trình học tập môn học Tất cả các kiến thức

mà nhà trường và quý thầy cô đã truyền đạt là hành trang to lớn để tôi mang theo trên con đường học tập, làm việc và nghiên cứu cũng như trong quá trình hoàn thiện nhân cách của mình

TP HCM, ngày 10 tháng 10 năm 2014

Học viênLâm Hàn Vũ

Trang 5

I MỞ ĐẦU

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

Ngày nay khoa học máy tính và Công nghệ Thông tin phát triển mạnh mẽ, thâm nhập vào mọi lĩnh vực hoạt động của con người Trí tuệ Nhân tạo là một lĩnh vực của khoa học máy tính nhằm nghiên cứu phát triển các hệ thống ngày càng thông minh hơn, hỗ trợ tốt hơn cho hoạt động xử lý thông tin và xử lý tri thức, tính toán và điều khiển, Có thể

kể đến một số lĩnh vực áp dụng của Trí tuệ Nhân tạo như:

- Các trò chơi và lý thuyết tìm kiếm heuristic

- Các hệ chuyên gia

- Mô phỏng các hành vi và hoạt động thông minh của con người

- Robotics

- Máy học, đặc biệt là việc khai khoáng dữ liệu để tìm ra tri thức

- Xử lý song song và phân tán, các hệ lập kế hoạch thông minh

Trong quá trình phân tích và thiết kế các hệ thống Trí tuệ Nhântạo người ta quan tâm đến 2 vấn đề cơ bản nhất là:

- Biểu diễn tri thức

- Phương pháp và kỹ thuật tìm kiếm hay suy diễn

Đối với các hệ giải bài toán dựa trên tri thức (hay một cơ sở 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, 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 địa vị 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 bài toán dựa trên tri thức và các hệ

cơ sở tri thức

Trang 6

Cho tới nay đã có nhiều phương pháp biểu diễn tri thức khác nhau được các chuyên gia nghiên cứu và đề xuất Chúng ta có thể tham khảo các phương pháp biểu diễn tri thức này trong các sách về Trí tuệ Nhân tạo như trong [1], [2], [3] và [4] Người ta có thể phân loại các phương pháp biểu diễn tri thức thành 4 loại như sau:

- Loại 1: Biểu diễn logic như phương pháp biểu diễn tri thức theologic vị từ cấp 1

- Loại 2: Biểu diễn tri thức thủ tục như phương pháp biểu diễn trithức dạng hệ luật dẫn

- Loại 3: Biểu diễn tri thức dạng mạng như mạng ngữ nghĩa

- Loại 4: Biểu diễn tri thức theo cấu trúc như các frames và cácobject (đối tượng)

Mỗi phương pháp biểu diễn tri thức đều có ưu nhược điểm của nó

và có các công cụ lập trình có thể sử dụng cho việc cài đặt các biểu diễn

và xử lý Chẳng hạn như các ngôn ngữ lập trình PROLOG và LISP có thể

sử dụng tiện lợi cho việc cài đặt xử lý các biểu diễn tri thức theo logic vị

từ Các biểu diễn cấu trúc có thể sử dụng các ngôn ngữ C, C++ hay Javacho việc cài đặt Tuy nhiên, mỗi công cụ lập trình cũng có những ưu

nhược điểm của nó

Cùng với các phương pháp biểu diễn tri thức, các nhà nghiên cứu cũng đề xuất một số phương pháp suy luận và kỹ thuật suy diễn để làm

cơ sở cho việc xây dựng các động cơ suy diễn trong các hệ chuyên gia

và các hệ giải bài toán dựa trên tri thức Một số phương pháp suy diễn chung như suy diễn tiến, suy diễn lùi, suy diễn kết hợp tiến và lùi, suy diễn với các heuristics

2 TỔNG QUAN VỀ CÁC HỆ GIẢI TOÁN VÀ PHẠM VI TIỂU LUẬN

Giáo dục đóng một vai trò rất quan trọng trong việc xây dựng và phát triển đất nước Đầu tư cho lĩnh vực giáo dục luôn được đặt lên hàng

Trang 7

đầu Những năm gần đây, việc tin học hóa cho phương pháp học tập và giảng dạy trong giáo dục đang được đầu tư và đẩy mạnh.

Với sự phát triển như vũ bão của tin học thì việc ứng dụng tin học vào các ngành khoa học khác đang phát triển một cách song song Đặc biệt, với toán học là một ngành khoa học được ứng dụng rất nhiều trong các lĩnh vực khác nhau của cuộc sống như kinh doanh, quản lý, giáo

dục… thì việc ứng dụng tin học trong toán học mang lại ý nghĩa vô cùng quan trọng

Hiện nay trên thế giới đã có một số phần mềm dành cho toán học.Một số phần mềm chuyên dụng như: vẽ đồ thị Graph, Geometry,

Mathprof …đến các phần mềm toán học được gọi là “siêu mạnh” như Maple, Mathematica…Các phần mềm toán học này đã giúp ích khá

nhiều trong việc học toán cũng như giải toán, tuy nhiên chúng cũng còn một số hạn chế sau:

- Một số phần mềm chỉ hỗ trợ việc tính toán đơn giản (tính toán số học, tính toántrên các đối tượng cơ bản,…) hay chỉ cung cấp một số công cụ hỗ trợ một yêu cầu

cụ thể nào đó (vẽ đồ thị, cung cấp các công thức toán học,…)

- Một số phần mềm tốt hơn thì hỗ trợ thao tác trên các đối tượng trừu tượng như

ma trận, vector, đạm hàm, tích phân,…nhưng chúng chỉ dừng lại ở việc đưa ra kếtquả hoặc nếu có chỉ là một số bước hướng dẫn nhưng phức tạp

Chính vì vậy, việc xây dựng một chương trình hỗ trợ việc học và giải toán thật sự có ý nghĩa Trong phạm vi của một bài tiểu luận, tôi xintrình bày 2 mô hình biểu diễn tri thức, đó là Mạng Tính Toán và Mạng Các Đối Tượng Tính Toán Từ đó ứng dụng nó vào việc xây dựng 1 gói phần mềm hỗ trợ giải bài toán hình học trên một số đối tượng hình học

cơ bản

Chẳng hạn với bài toán:

Cho tam giác ABC cân tại A có góc A=300 Bên dưới cạnh BC của tam giác ABC có hình vuông BEFH và hình chữ nhật ECDF như hình vẽ

Trang 8

Biết hình chữ nhật ECDF có diện tích bằng 30, chiều dài bằng 5 Tính diện tích của tam giác ABC.

Với yêu cầu bài toán như trên, ta có quy ước nhập dữ liệu đầu vào như sau:

Và gói phần mềm sẽ cho kết quả:

Trang 10

II MÔ HÌNH MẠNG TÍNH TOÁN

Trang 11

trong đó mỗi biến đều có giá trị thuộc tập các số thực dương Giữa các biến ta đã biết có các quan hệ tính toán sau đây:

Bài toán xác định B từ A trên mạng tính toán (M, F) được viết: A 

B, trong đó A được gọi là giả thiết, B được gọi là mục tiêu tính toán của bài toán

Định nghĩa 2.1: Giả sử (M,F) là một mạng suy diễn và A là một

tập con của M Một luật suy diễn u  v được được gọi là áp dụng được trên A khi u  A Một quan hệ suy diễn được gọi là áp dụng được trên A khi nó xác định một luật suy diễn áp dụng được trên A Cho D = f1,

f2, , fk là một dãy các quan hệ suy diễn (hay luật suy diễn) của mạng

Trang 12

suy diễn (M,F), ta nói dãy D là áp dụng được trên tập A khi và chỉ khi ta

có thể lần lượt áp dụng được các quan hệ f1, f2, , fk xuất phát từ giả

thiết A

Trong định nghĩa trên, đặt : A0 = A, A1 = A0  M(f1), , Ak = Ak-1

 M(fk), và ký hiệu Ak là D(A) Trong trường hợp D là một dãy luật suy

diễn tùy ý ta vẫn ký hiệu D(A) là tập biến đạt được khi lần lượt áp dụng các quan hệ trong dãy D (nếu được) Có thể nói rằng D(A) là sự mở rộng của tập A nhờ áp dụng dãy quan hệ D

Thuật toán tính D(A):

Định nghĩa 2 2 : Ta nói rằng một dãy các quan hệ suy diễn D = f1,

f2, , fk  F là một lời giải của bài toán A  B nếu như ta lần lượt ápdụng các quan hệ fi (i=1, ,k) xuất phát từ giả thiết A thì sẽ suy ra đượccác biến thuộc B Nói cách khác D là một lời giải của bài toán khi D(A) 

B Bài toán A  B được gọi là giải được khi nó có một lời giải

Lời giải f1, f2, , fk được gọi là lời giải tốt nếu không thể bỏ bớt một số bước tính toán trong quá trình giải, tức là không thể bỏ bớt một

số quan hệ trong lời giải Lời giải được gọi là một lời giải ngắn nhất khi

Trang 13

nó có số bước suy diễn thấp nhất, tức là số quan hệ suy diễn áp dụng trong suy diễn là ít nhất.

Thuật toán 1: Tìm một lời giải cho bài toán A B

Nhập:

+ Mạng tính toán (M,F)+ Tập giả thiết A  M+ Tập biến cần tính B  M

Xuất: Lời giải cho bài toán A  B

if ( f đối xứng and 0 < Card (M(f) \ A)  r(f) ) or

( f không đối xứng and   M(f) \ A  v(f) ) then

begin

Trang 14

Until Solution_found or (A = Aold);

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 một lời giải tốt từ một lời giải đã biết

Nhập:

+ Mạng tính toán (M,F)+ Lời giải f1, f2, , fm của bài toán A B

Xuất: Lời giải tốt cho bài toán A  B

Thuật toán:

1 D  f1, f2, , fm;

2 for i=m downto 1 do

if D \ fi là một lời giải then D  D \ fi;

3 D là một lời giải tốt

Thuật toán 3: Kiểm tra lời giải cho bài toán

Nhập:

+ Mạng tính toán (M,F)+ Bài toán A B

Trang 15

if ( fi đối xứng and Card (M(fi) \ A)  r(fi) ) or

( fi không đối xứng and M(fi) \ A  v(fi) ) then

Để tìm ra lời giải cho bài toán trước hết ta xét mạng suy diễn của tam giác Mạng suy diễn này gồm :

1 Tập biến M = a, b, c, , , , ha, hb, hc, S, p, R, r, ,

trong đó a,b,c là 3 cạnh; , ,  là 3 góc tương ứng với 3 cạnh; ha, hb, hc

là 3 đường cao; S là diện tích tam giác; p là nửa chu vi; R là bán kính

đường tròn ngoại tiếp tam giác; r là bán kính đường tròn nội tiếp tam giác, v.v

2 Các quan hệ suy diễn thể hiện bởi các công thức sau đây:

f1 :  +  +  = 180

f2 :

asin

bsin

  

f3 :

csin

bsin

  

f4 :

asin

csin

  

f5 : p = (a+b+c) /2

Trang 16

Mục tiêu của bài toán là suy ra S (diện tích của tam giác).

Theo đề bài ta có giả thiết: A = a, , , và tập biến cần xác định:

B = S

Áp dụng thuật toán tìm lời giải sẽ được một lời giải cho bài toán làdãy quan hệ suy diễn sau:

f1, f2, f3, f5, f9

Xuất phát từ tập biến A, lần lượt áp dụng các quan hệ trong lời giải

ta có tập các biến được xác định mở rộng dần đến khi S được xác định :

a, ,  f1

  a, , ,  f2

 a, , , , b f3

  a, , , , b, c5

f

  a, , , , b, c, p  f9 a, , , , b, c, p, S

Có thể nhận thấy rằng lời giải này không phải là lời giải tốt vì có bước suy diễn thừa, chẳng hạn là f5 Dùng thuật toán tìm lời giải tốt để tìm ra một lời giải tốt là:

Trang 17

Theo lời giải này, ta có quá trình suy diễn như sau :

Mạng các đối tượng tính toán bao gồm:

+ Một tập hợp các đối tượng tính toán

Trang 18

Giả sử có 3 đối tượng O1, O2, O3 Giữa thuộc tính a của O1, các thuộc tính

a và b của O2, thuộc tính c của O3 có một quan hệ f xác định bởi hệ thức:

Cho tam giác cân ABC, cân tại A và cho biết trước góc đỉnh , cạnh đáy

a Bên ngoài tam giác có hai hình vuông ABDE và ACFG Tính độ dài EG

Hình 3.2 Một bài toán tính toán hình học.

Bài toán có dạng một mạng các đối tượng tính toán bao gồm :

Trang 19

1 Bốn đối tượng :

O1 : tam giác cân ABC,

O2 : tam giác AEG,

O3 : hình vuông ABDE,

O4 : hình vuông ACFG,trong đó mỗi tam giác có các biến: a, b, c, GocA, GocB, GocC, ha,

hb, hc, S, p, R, r, và mỗi hình vuông có các biến: a (cạnh), c (đườngchéo), S (diện tích),

2 Các quan hệ giữa các đối tượng :

f1 : O1.c = O3.a // cạnh c của tam giác ABC = cạnh của hình vuôngABDE

f2 : O1.b = O4.a // cạnh b của tam giác ABC = cạnh của hình

Trang 20

M =  O1.b, O1.c, O1.GocA, O2.b, O2.c, O2.GocA, O3.a, O4.a, O2.a.Lưu ý rằng O2.a (cạnh EG của tam giác AEG) là biến cần tính.

1 Có thể xác định được tập B từ tập A nhờ các quan hệ trong F và

các đối tượng thuộc O hay không? Nói cách khác, ta có thể tính được giátrị của các biến thuộc B với giả thiết đã biết giá trị của các biến thuộc A hay không?

2 Nếu có thể xác định được B từ A thì quá trình tính toán giá trị

của các biến thuộc B như thế nào?

3 Trong trường hợp không thể xác định được B, thì cần cho thêm

điều kiện gì để có thể xác định được B

Tương tự như đối với một mạng tính toán, bài toán xác định B từ A trên mạng (O,F) được viết dưới dạng: A  B, trong đó A được gọi là giả thiết,

B được gọi là mục tiêu tính toán của bài toán Trường hợp tập B chỉ gồm

có một phần tử b, ta viết vắn tắt bài toán trên là A  b

Tương tự như trong phần 2, ta có thể định nghĩa khái niệm về tính

“áp dụng được” của một dãy D các phần tử trong F  O trên một tập

biến A  M, và cũng ký hiệu D(A) là tập hợp biến mở rộng từ A nhờ áp dụng dãy D trên mạng Từ đó, chúng ta có thể kiểm chứng dễ dàng

mệnh đề sau:

Trang 21

Mệnh đề 3.1: Trên mạng các đối tượng tính toán (O, M, F) cho A

 M, một dãy D = t1, t2, , tm  F  O áp dụng được trên tập hợp A Đặt:

Định nghĩa 3.1: Một dãy t1, t2, , tk gồm các phần tử thuộc F

hay thuộc O được gọi là một lời giải của bài toán A  B trên mạng (O, M,

F) nếu như ta lần lượt áp dụng các ti (i=1, ,k) xuất phát từ giả thiết Athì sẽ suy ra được (hay tính được) các biến thuộc B Lời giải t1, t2, , tk

được gọi là lời giải không thừa nếu không thể bỏ bớt một số “bước tính

toán” trong quá trình giải, theo nghĩa là không thể bỏ bớt một số quan

hệ hay đối tượng trong lời giải

Việc tìm lời giải cho bài toán là việc tìm ra một dãy các quan hệ hay các đối tượng để có thể áp dụng tính ra được B từ A Điều này cũng có nghĩa

là tìm ra được một quá trình tính toán để giải quyết bài toán

 Lời giải cho bài toán A  B trên mạng đối tượng tính toán (M,F)

Thuật toán 1: Tìm lời giải cho bài toán A B

Nhập:

+ Mạng các đối tượng tính toán (O,F)

Trang 22

+ Với tập biến là M, tập giả thiết A  M

Chọn ra một f  F chưa xem xét (trong bước 3 lần nầy);

while not Solution_found and (chọn được f) do

begin

if ( f đối xứng and 0 < Card (M(f) \ A)  r(f) ) or

( f không đối xứng and   M(f) \ A  v(f) ) then

Trang 23

Until Solution_found or (A = Aold);

4 if not Solution_found then

Trang 24

5 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 một lời giải tốt từ một lời giải đã biết

Nhập:

+ Mạng các đối tượng tính toán (O,F)

+ Lời giải t1, t2, , tm của bài toán A B

Xuất: lời giải tốt cho bài toán A  B

Thuật toán:

1 D  t1, t2, , tm;

2 for i=m downto 1 do

Trang 25

if D \ ti là một lời giải then

Trang 26

Như đã trình bày trong ví dụ 3.2, bài toán có thể được biểu diễntrong một mạng các đối tượng (O, F) bởi GT  KL với:

  A5 f4

 A6 O2

 A7trong đó :

A0 = A = O1.a , O1.GocA,

A1 = O1.a , O1.GocA, O2 GocA ,

Ngày đăng: 20/05/2015, 08:39

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

w