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 Mô hình tri thức cho bài toán tam giác

25 422 0

Đ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 25
Dung lượng 890,5 KB

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

Nội dung

Những liên hệ cho phép ta có thể suy ra được một số yếu tố từ giả thiết để biết một số yếu tố khác để giải các bài toán trong các lĩnh vực của khoa học như toán học, vật lý và hóa học...

Trang 1

LỜI MỞ ĐẦU

Lời đầu tiên xin chân thành cảm ơn thầy PGS.TS Đỗ Văn Nhơn đã giảng dạy tận tình và cung cấp cho em nhiều kiến thức chuyên sâu về môn học Từ vốn hiểu biết rộng rãi của mình thầy đã định hướng, diễn giảng và giới thiệu nhiều vấn đề liên quan đến biểu diễn tri thức, qua đó góp phần hoàn thiện thêm kiến thức cũng như hình thành cho người học những hiểu biết sâu thêm về tri thức và các phương pháp biểu diễn tri thức trên máy tính

Mặc dù rất cố gắng, song bài viết chắc không tránh khỏi những hạn chế, thiếu sót rất mong được thầy thông cảm

Trang 2

MỤC LỤC HÌNH ẢNH

Hình 1: Quan hệ 3 góc trong tam giác ABC 6

Hình 2: Minh họa bài toán điều chế hợp chất hóa học 21

Hình 3: Thể hiện tam giác ABC với các yếu tố cần xét 22

Hình 4: Minh họa bài toán tam giác 27

Trang 3

MỤC LỤC

LỜI MỞ ĐẦU 1

MỤC LỤC HÌNH ẢNH 2

MỤC LỤC 3

1.Mạng tính toán 4

1.1Khái niệm 4

1.2Các quan hệ 4

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

B Áp dụng 13

1.Bài toán hóa học 13

1.4 Thiết kế bộ suy diễn và cài đặt 16

2.Bài toán hình học – bài toán tam giác 18

TÀI LIỆU THAM KHẢO 25

A.Cơ sở lý thuyết

Một trong những vấn đề đang được quan tâm của Trí tuệ nhân tạo là nghiên cứu các phương pháp biểu diễn và xử lý tri thức Trên cơ sở đó có thể tạo ra những chương trình “thông minh” ở một mức độ nào đó Trong nhiều lĩnh vực chúng ta thường gặp những vấn đề đặt ra dưới dạng như sau: Thực hiện những tính toán hay suy diễn ra những yếu tố cần thiết nào đó từ một số yếu tố đã được biết trước Để giải quyết vấn đề đó, người ta phải vận dụng một số hiểu biết (tri thức) liên quan tới các yếu tố đang được xem xét Những liên hệ cho phép ta có thể suy ra được một số yếu

tố từ giả thiết để biết một số yếu tố khác để giải các bài toán trong các lĩnh vực của khoa học như toán học, vật lý và hóa học

Trang 4

Để giải quyết vấn đề trên ta xét đến một mô hình biểu diễn và xử lý tri thức có thể

áp dụng giải tự động các bài toán trên và ta gọi mô hình này là “Mạng tính toán”

1 Mạng tính toán

1.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ác vấ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ỗi mạ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ùng vớ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ụ 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

1.2 Các quan hệ

ký hiệu là R(x1,x2, ,xm) hay vắn tắt là R(x) (ký hiệu x dùng để chỉ bộ biến

xạ fR ,,u v với u v = x, và ta viết : fR ,,u v: u → v, hay vắn tắt là f : u → v

Đố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ộc u

Trang 5

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

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

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); ta gọ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:

Trang 6

f: u(f) → v(f)thì ta có: M(f) = u(f) v(f).

1.4 Ưu điểm & khuyết điểm của mạng tính toán

những bài toá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ệc xây dựng lại thuật toán là một việc tương đối khó khăn nên đòi hỏi phải bảo trì lại toàn bộ hệ thống

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

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

Cho một mạng tính toán (M,F), M là tập các biến và F là tập các quan hệ Giả sử

Các vấn đề xảy ra là:

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 ?

thuộc B như thế nào ?

Trang 7

• 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

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

A→Btrong đó 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:

Bài toán A→B được gọi là giải được khi có thể tính toán được giá trị các biến

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

Việc tìm lời giải cho bài toán là việc tìm ra một dãy quan hệ để có thể áp dụng suy

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 bài toán

Định nghĩa 2.2:

con của M Ta nói dãy quan hệ D là áp dụng được trên tập A khi và chỉ khi ta có thể

Trang 8

trường hợp D là một dãy quan hệ bất kỳ (không nhất thiết là áp dụng được trên A), 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) Chúng ta 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.

3 Giải quyết bài toán

3.1 Tính giải được của bài toán:

Ta khảo sát một khái niệm của vấn đề trên mạng tính toán: bao đóng của một tập hợp biến trên một mạng tính toán

Định nghĩa 3.1: Cho mạng tính toán (M,F), và A là một tập con của M Ta có thể

và tập hợp B này được gọi là bao đóng của A trên mô hình (M,F) Một cách trực

quan, có thể nói bao đóng của A là sự mở rộng tối đa của A trên mô hình (M,F) Ký

Từ định lý này, ta có thể kiểm tra tính giải được của bài toán A→B bằng cách tính

Định lý 3.2 Cho một mạng tính toán (M,F), A, B là hai tập con của M Ta có các

điều sau đây là tương đương:

a D áp dược trên A

Trang 9

Qua các định lý trên, ta thấy rằng việc xác định bao đóng của một tập biến trên mô hình tính toán là cần thiết Dưới đây là thuật toán cho phép xác định bao đóng của tập

những biến thuộc M có thể tính được từ A; cuối cùng sẽ được bao đóng của A

3.2 Lời giải của bài toán

Do mệnh đề trên, để tìm một lời giải ta có thể làm như sau : Xuất phát từ giả thiết

A, ta thử áp dụng các quan hệ để mở rộng dần tập các biến có giá trị được xác định;

và quá trình này tạo ra một sự lan truyền tính xác định trên tập các biến cho đến khi

mạng tính toán (M,F)

Trang 10

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

Until Solution_found or (A = Aold );

4 if not Solution_found then

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

else

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

Trang 11

Định lý 3.3 Cho D = {f1,f2, ,fm} là một lời giải của bài toán A→ B Ứng với mỗi

m-1, , S2, S1 của dãy D như sau:

Si = {fi}∪ Si+1 nếu Di-1∪ Si+1 không là một lời giải,

với mọi i = m-1, m-2, , 2, 1

Khi đó ta có :

1 Sm ⊆ Sm-1⊆ ⊆ S2⊆ S1.

bài toán A→ B với mọi i

Thuật toán 3.3 Tìm một lời giải tốt từ một lời giải đã biết.

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

Trang 12

Trong thuật toán 3.3 có sử dụng việc kiểm tra một dãy quan hệ có phải là lời giải hay không Việc kiểm tra này có thể được thực hiện nhờ thuật toán sau đây:

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

không

Thuật toán:

1 for i = 1 to m do

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

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

A ← A ∪ M(fi);

2. if A B then { f1,f2, ,fm} là lời giải

else { f1,f2, ,fm} không là lời giải

3.3 Định lý về sự phân tích quá trình giải:

Xét bài toán A→ B trên mạng tính toán (M,F), ta nêu lên một cách xây dựng quá trình giải từ một lời giải đã biết Đối với một lời giải, rất có khả năng một quan hệ nào

đó dẫn tới việc tính toán một số biến thừa, tức là các biến tính ra mà không có sử dụng cho các bước tính phía sau Do đó, chúng ta cần xem xét quá trình áp dụng các quan hệ trong lời giải và chỉ tính toán các biến thật sự cần thiết cho quá trình giải theo lời giải Định lý sau đây cho ta một sự phân tích tập các biến được xác định theo lời giải và trên cơ sỡ đó có thể xây dựng quá trình tính toán các biến để giải quyết bài toán

Định lý 3.4 Cho { f1,f2, ,fm} là một lời giải tốt cho bài toán A→ B trên một mạng tính toán (M,F) Đặt:

A0 = A, Ai = {f1, f2, , fi}(A), 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:

Trang 13

1 Bm = B.

Phản ứng trên có thể được xem như một quan hệ cho chúng ta có được các chất

Ta sẽ dùng mạng tính toán để áp dụng giải các loại bài toán sau :

1 Nhận diện loại phương trình phản ứng ?

2 Cho một số chất, hỏi có điều chế được một vài chất nào đó không ?

3 Tìm các phương trình phản ứng để biểu diễn dãy các biến hóa, chẳng hạn như các dãy :

Trang 14

1.3 Mô hình và thuật giải

1.3.1 Mô hình tri thức cho bài toán hóa học

Nhìn vào yêu cầu của bài toán ta thấy rằng đây một dạng của thuật giải mạng tính

Các file chứa tri thức cho bài toán hóa học, tập giả thiết chemical.txt chứa thông tin các nguyên tố hóa học, file tri thức equation.txt chứa các phương trình phản ứng

giữa các chất (quan hệ của các thuộc tính của các nguyên tố có cấu trúc) và tập biến

compound.txt là tập các chất cần tìm, tập biến có thể là tập con của tập giả thiết là

các nguyên tố hay hợp chất của nó Dưới đây là trích dẫn ví dụ mô tả cấu trúc của các file tri thức:

File chemical.txt: <tên nguyên tố>

Trang 15

AlCl3

BaSO3

BaSO4

File equation.txt: <phương trình phản ứng>

Fe + H2O + SO3 = FeSO4 + H2

2NaCl + 2H2O = 2NaOH + H2 + Cl2

Trang 16

Chọn ra một f ∈ F chưa xem xét;

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

Until Solution_found or (A = Aold );

6 if not Solution_found then

Không đủ nguyên liệu để tạo; In kết quả;

else

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

7 Loại bỏ các bước giải không cần thiết

D ← { f1,f2, ,fm};

for i=m downto 1 do

if D\ { fi } là một lời giải then

D ← D \ {fi};

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

8 In từng bước giải của bài toán (Phương trình hóa học)

1.4 Thiết kế bộ suy diễn và cài đặt

Về mặt tri thức người ta đã biết được nhiều chất và các phản ứng hóa học có thể chuyển hóa từ một số chất này thành các chất khác Ta có thể xem tri thức đó như một mạng tính toán mà mỗi phản ứng là một quan hệ của mạng

(M, F)

Trong đó M là tập giả thiết và kết luận, F là tập các quan hệ của các chất

Trang 17

Bài toán 1 : Viết phương trình phản ứng (PTPƯ) biểu diễn các biến hóa sau:

Mô hình bài toán:

F = { tập các phương trình phản ứng hóa học } Lời giải:

Mô hình bài toán:

F = { tập các phương trình phản ứng hóa học }Lời giải:

Solution = {

Điện phân

[H2O →H2↑ + O2↑ ],[S + O2 → SO2 ],

[SO2 + O2 → SO3 ],[SO3 + H2O → H2SO4 ]

}

Trang 18

Chương trình viết bằng ngôn ngữ lập trình C# trên nền tảng Visual Studio 2010 với đối số là các file tri thức và giả thiết, dựa trên tri thức về phương trình phản ứng hóa học để tìm ra chất từ các nguyên tố.

Hình 2: Minh họa bài toán điều chế hợp chất hóa học

2 Bài toán hình học – bài toán tam giác

2.1 Đặt vấn đề

Trong bài này ta sẽ khảo sát bài toán hình học tam giác Mục đích :

- Trình bày phương pháp lưu trữ và giải thuật dựa trên mô hình mạng tính toán

- Xác định giá trị 1 yếu tố của tam giác với những giả thiết đã cho trước

Chúng ta xét một tam giác bao gồm 11 yếu tố:

- a, b, c : 3 cạnh của tam giác

- A, B, C : 3 góc của tam giác

- S : diện tích tam giác

- p : nửa chu vi của tam giác

Trang 19

Hình 3: Thể hiện tam giác ABC với các yếu tố cần xétCác hệ thức cơ bản giữa các yếu tố của tam giác:

sin

Trang 21

Kết luận: Vậy chu vi 2*p = 12.

Ví dụ 2: Trong tam giác ABC giả sử đã biết góc A, cạnh b, góc C, nửa chu vi p

2.3 Mô hình và thuật giải

Trang 22

2.3.1 Mô hình tri thức cho bài toán tam giác

Bài toán cần giải gồm giả thiết là một số thông số (đối tượng, sự kiện) của tam giác cho trước Mục tiêu là xác định một thông số (đối tượng) của tam giác Tri thức trong bài toán này được đưa về mô hình mạng tính toán (M,F) với:

M: danh sách các thuộc tính của tam giác lưu trong file triangle.txt.

F: danh sách các quan hệ giữa các thuộc tính trong M lưu trong file

triangleRelations.txt.

Cấu trúc file triangle.txt : <tên đối tượng> : <mô tả của đối tượng>

Ví dụ:

A : so do goc doi dien canh a

B : so do goc doi dien canh b

C : so do goc doi dien canh c

…(Xem thêm ở thuật giải trong mục 1.3.2 phần Áp dụng)

Bước 7 : Loại bỏ các bước giải không cần thiết

D ← { f1,f2, ,fm};

for i=m downto 1 do

if D\ { fi } là một lời giải then

D ← D \ {fi};

Trang 23

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

Bước 8: Tính giá trị của tập B

Bước 9: In từng bước giải của bài toán và giá trị tìm được

2.4 Cài đặt

Chương trình viết bằng ngôn ngữ lập trình C# trên nền tảng Visual Studio 2010 với đối số là các file tri thức và giả thiết, dựa trên tri thức về công thức hình học của tam giác

Hình 4: Minh họa bài toán tam giác

Trang 24

C Kết luận

Những tiến bộ nhanh chóng và dồn dập của công nghệ thông tin và truyền thông

đã thúc đẩy mạnh mẽ quá trình đưa hoạt động tri thức về gần với cuộc sống hàng ngày Nếu trước đây, việc tìm kiếm tri thức là đặc quyền của các nhà khoa học, và tri thức phải là những điều cao xa hướng tới các qui luật tất yếu và phổ biến, thì giờ đây con người cần tri thức phục vụ cho những công việc cụ thể trong mọi lĩnh vực và gần gũi với đời sống như y tế, giáo dục, thương mại…

Bài thu hoạch đã trình bày lại những kiến thức nắm được về biểu diễn tri thức dựa trên mạng tính toán và xây dựng chương trình minh họa áp dụng mạng tính toán để giái quyết các bài toán trên cơ sở tri thức hóa học và hình học cơ bản

Tuy nhiên, bài thu hoạch không thể tránh khỏi những thiếu sót về kiến thức cũng như về kỹ năng lập trình, rất mong thầy có những ý kiến góp ý

Trang 25

TÀI LIỆU THAM KHẢO

1 PSG.TS Đỗ Văn Nhơn Bài giảng Biểu diễn tri thức và ứng dụng, 2013

2 GS.TSKH Hoàng Kiếm & PSG.TS Đỗ Văn Nhơn, Mạng tính toán và ứng dụng, Tạp chí Tin học và điều khiển học, T.13, S.3(1997)

Ngày đăng: 19/05/2015, 01:57

HÌNH ẢNH LIÊN QUAN

Hình 1 : Quan hệ 3 góc trong tam giác ABC - Tiểu luận môn biểu diễn tri thức và suy luận Mô hình tri thức cho bài toán tam giác
Hình 1 Quan hệ 3 góc trong tam giác ABC (Trang 5)
Hình 2: Minh họa bài toán điều chế hợp chất hóa học - Tiểu luận môn biểu diễn tri thức và suy luận Mô hình tri thức cho bài toán tam giác
Hình 2 Minh họa bài toán điều chế hợp chất hóa học (Trang 18)
Hình 3: Thể hiện tam giác ABC với các yếu tố cần xét Các hệ thức cơ bản giữa các yếu tố của tam giác: - Tiểu luận môn biểu diễn tri thức và suy luận Mô hình tri thức cho bài toán tam giác
Hình 3 Thể hiện tam giác ABC với các yếu tố cần xét Các hệ thức cơ bản giữa các yếu tố của tam giác: (Trang 19)
Hình 4: Minh họa bài toán tam giác - Tiểu luận môn biểu diễn tri thức và suy luận Mô hình tri thức cho bài toán tam giác
Hình 4 Minh họa bài toán tam giác (Trang 23)

TỪ KHÓA LIÊN QUAN

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