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 Ứng dụng Giải bài toán hóa học vô cơ chương trình THCS bằng phương pháp Suy diễn tiến có Heuristic

9 561 2

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 9
Dung lượng 112,48 KB

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

Nội dung

Hỏi có thể điều chế được một chất theo yêu cầu hay không và cho biết các phản ứng nào được sử dụng trong quá trình điều chế.. Trong đó:  M: tập hợp các biến  F: tập hợp các quan hệ tín

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN TP.HCM

Tp.HCM, 03/2014

Tiểu luận Biểu diễn tri

thức và Suy luận

Ứng dụng Giải bài toán hóa học vô cơ chương trình THCS

bằng phương pháp Suy diễn tiến có Heuristic

Phan Hữu Phước (CH1301106)

Trang 2

MỤC LỤC

I Vấn đề 3

II Đề xuất giải pháp 3

III Lưu trữ 3

IV Hàm Heuristic 4

IV.1 Giải thuật xây dựng Heuristic 4

IV.2 Ưu và khuyết điểm 4

V Giải thuật suy diễn tiến có Heuristic 5

VI Giao diện demo 6

VII Công cụ phát triển 6

VIII Nhận xét 6

IX Tài liệu tham khảo 7

Trang 3

NHẬN XÉT

Trang 4

I Vấn đề

Từ các phản ứng có sẵn, cho trước một số chất ban đầu Hỏi có thể điều chế được một chất theo yêu cầu hay không và cho biết các phản ứng nào được sử dụng trong quá trình điều chế

Ví dụ:

Cho trước Na, Cl2, AgNO3 Yêu cầu điều chế NaNO3

Giải

1 Suy luận:

 Na + Cl2 -> NaCl

 NaCl + AgNO3 -> NaNO3 + AgCl

2 Kết luận: Điều chế được

II Đề xuất giải pháp

Sử dụng mạng tính toán với phương pháp suy diễn tiến có Heuristic

Mạng tính toán là một mô hình được biểu diễn bởi 2 thành phần <M,F> Trong đó:

 M: tập hợp các biến

 F: tập hợp các quan hệ tính toán

Trong vấn đề của bài tiểu luận này thì:

 F: danh sách các phản ứng hóa học (dsphanung)

 M: tập hợp các chất (được suy ra từ dsphanung)

III.Lưu trữ

Các phản ứng được lưu trong một tập tin dữ liệu “DuLieu.txt” Mỗi phản ứng được đặt trên một dòng theo cấu trúc tựa HTML như: dùng HTML element <sub> để tạo chỉ số dưới và <sup> để tạo chỉ số trên

Ví dụ:

 Để lưu phản ứng Na + Cl2  NaCl thì phản ứng được lưu trong tập tin

“DuLieu.txt” như sau:

Na + Cl<sub>2</sub> = NaCl

to

 Để lưu phản ứng Cl2 + KOH  KCl + KClO + H2O:

Cl<sub>2</sub> + KOH=KCl + KClO + H<sub>2</sub>O <dk>t<sup>o</sup>

Trang 5

(Điều kiện của phản ứng được đặt ở cuối dòng lưu phản ứng theo mẫu:

<dk>[Nội dung điều kiện]) Theo ví dụ trên thì <dk>t<sup>o</sup> biểu diễn cho điều kiện to của phản ứng

IV Hàm Heuristic

Mỗi phản ứng có một thuộc tính “uutien” để lưu trữ giá trị ưu tiên của phản ứng Quá trình suy diễn sẽ xét các phản ứng theo thứ tự giá trị “uutien” từ nhỏ đến lớn Mặc định, mỗi phản ứng chưa được gán giá trị “uutien” và có giá trị “uutien” ban đầu là 0

IV.1 Giải thuật xây dựng Heuristic

Input: “chatcuoi” là chất cần điều chế

Output: Các phản ứng được sắp xếp tăng dần theo giá trị “uutien”

Ý tưởng:

 Ưu tiên phản ứng có ít chất ở vế trái

 Ưu tiên phản ứng có vế phải chứa “chatcuoi”

B0: Gán giá trị “uutien” của mỗi phản ứng bằng với số chất bên trái của phản ứng

“giatriuutien”=1;

Sắp xếp các phản ứng tăng dần theo giá trị “uutien”

B1: muctieu = {chatcuoi} //lưu các mục tiêu trung gian

B2: Tìm phản ứng (pu) có “uutien”  số chất vế trái và có vế phải  muctieu Nếu

tìm thấy thì đến B3 Nếu không tìm thấy thì đến B4

B3: pu.uutien += giatriuutien; giatriuutien++; Quay lại B2

B4: Với mỗi phản ứng (pu) còn lại:

pu.uutien = pu.uutien + giatriuutien;

giatriuutien++;

B5: Sắp xếp các phản ứng tăng dần theo giá trị “uutien”

IV.2 Ưu và khuyết điểm

Ưu điểm: Ưu tiên được các phản ứng tạo ra chatcuoi và có ít chất ở vế trái.

Khuyết điểm: Do chưa cập nhật muctieu trung gian phù hợp trong quá trình duyệt

các phản ứng nên chưa xây dựng được giá trị heuristic (uutien) tối ưu cho các phản ứng trung gian

Trang 6

V Giải thuật suy diễn tiến có Heuristic

Input:

 Danh sách phản ứng (dsphanung)

 Các chất đầu (chatdau)

 Chất cần điều chế (chatcuoi)

Output:

 Kết luận: Điều chế thành công hay không

 Danh sách các phản ứng được sử dụng trong quá trình điều chế (solve)

Thuật giải

B0:

 dsphanungchuaxet = dsphanung;

 known=chatdau;

 solve={};

B1: Nếu (chatcuoi  known) và tìm thấy phản ứng (pu 

dsphanungchuaxet) (ưu tiên từ nhỏ đến lớn của giá trị uutien) sao cho vetrai

 known thì:

 vephai = {các chất ở vế phải của pu};

 Nếu vephai  known thì

o known=known  vephai;

o solve = sove  pu;

 dsphanungchuaxet = dsphanungchuaxet \ pu;

Ngược lại: đến B3

B2: Quay lại B1

B3: Nếu (chatcuoi  known): Kết luận Điều chế không thành công

Ngược lại: Kết luận Điều chế thành công

Trang 7

VI Giao diện demo

Bước 1: Nhập các các ban đầu (cách nhau bởi dấu phẩy “,”), không cần định dạng

chỉ số dưới vì chương trình tự xử lý

Bước 2: Nhập chất cần điều chế

Bước 3: Click chuột lên nút lệnh

VII Công cụ phát triển

Visual Studio 2010, NET Framework 2.0

Hiển thị các phản ứng: Web Browser Control

VIII Nhận xét

 Chưa phân nhóm được các chất: Axit, Bazơ để tự học tạo ra các phản ứng giữa axit với bazơ

 Chưa phân biệt được mức độ khử của các kim loại để tự tạo ra các phản ứng khử giữa kim loại với muối

 Chưa tự cân bằng các phương trình phản ứng

Trang 8

 Heuristic còn hạn chế, cần phải cải tiến.

 Chưa tìm được các chất cần bổ sung khi không điều chế được

Trang 9

IX Tài liệu tham khảo

 Bài giảng của PGS.TS Đỗ Văn Nhơn

 Luận văn Thạc sĩ Khoa học Tin học (1995) – Phần IVb – Đỗ Văn Nhơn

 MSDN

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

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w