Chương 5– MÔ HÌNH BIỂU DIỄN TRI THỨC BÀI TOÁN HÓA HỌC

Một phần của tài liệu MÔ HÌNH BIỂU DIỄN TRI THỨC BÀI TOÁN HÓA HỌC (Trang 27)

TOÁN HÓA HỌC

4.1. Mô hình biểu diễn tri thức

Tri thức được mô hình hóa bằng mô hình COKB gồm 4 thành phần:

(C, H, Funcs, Rules)

1.1. Tập C - tập hợp các khái niệm đối tượng

Tập C bao gồm các khái niệm: “Axit”, “Bazơ”, “Muối”, “Oxit”, “Kim loại”...

- “Axit”: phân tử axit gồm có một hay nhiều nguyên tử H liên kết gốc axit.

- “Bazơ”: phân tử bazơ gồm có một nguyên tử kim loại liên kết với một hay nhiều nhóm OH.

- “Muối”: phân tử muối gồm có một hay nhiều nguyên tử kim loại liên kết với một hay nhiều gốc axit.

1.2. Tập H - tập hợp các quan hệ phân cấp giữa các loại đối tượng

- “Axit có oxi” và “Axit không có oxi” là các khái niệm của “Axit”.

- “Bazơ tan” và “Bazơ không tan” là các khái niệm của “Bazơ”.

- “Muối trung hòa” và “Muối axit” là các khái niệm của “Muối”.

1.3. Tập Funcs - tập hợp các hàm

Cân bằng phương trình phản ứng hóa học.

1.4. Tập Rules – tập hợp các luật

Các loại phản ứng hóa học cơ bản: - “Axit” + “Bazơ” → “Muối” + “Nước”.

- “Kim loại kiềm” + “Nước” → “Bazơ” + H2

4.2. Thuật giải của bài toán hóa học:

4.2.1. Thuật giải tìm lời giải cho bài toán A → B:

Nhập : các fle chưa tri thức cho bài toán hóa học, tập giả

thiết A, tập biến cần tính B.

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

Thuật toán :

1. F ← empty.

2. F ← các quan hệ giữa các thuộc tính hóa học bằng cách đọc fle tri thức HoaHoc.txt.

3. Solution ← empty; // Solution là dãy các quan hệ sẽ áp dụng

4. if B ⊆ A then begin

Solution_found ← true; // bài toán là giải được goto 4; end else Solution_found ← false; 5. Repeat Aold ← A; 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

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

A ← A ⋃ M(f);

end; if B ⊆ A then

Solution_found true; 

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

end; {while}

Until Solution_found or (A = Aold); 6. 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;

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

D ← {f1, f2, ..., fm}; // {f1, f2, ..., fm} của bài toán A → B for i=m downto 1 do

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

D ← D \ {f}; D là một lời giải tốt.

8. Tính giá trị cho từng thuộc tính được suy ra trong từng bước giải.

9. In từng bước giải của bài toán.

4.2.2. Thuật giải bổ sung giả thiết cho bài toán:

Nhập :F là tập hợp các quan hệ của đề bài, H là tập hợp phần giả thiết, G là

tập hợp phần mục tiêu.

Xuất : giả thiết cần bổ sung.

Thuật toán :

1. Fset ← F;

2. Aset ← empty; 3. for f in Fset do

Aset ← Aset ⋃ M(f); # M(f) = (f[2] ⋃ f[3]) 4. Aset ← Aset \ (G ⋃ Baodong(Fset,H));

5. ans ← false; 6. k ← 0;

7. while (ans = false) and k<= số phần từ của Aset do for H1 in tập con có k phần tử của Aset do

BaoH ← Baodong(Fset, H H1); 

if G\BaoH = {} then ans ← true;

break;

if ans ≠ true then k ← k+1; 8. RETURN ([ans, H1]);

Một phần của tài liệu MÔ HÌNH BIỂU DIỄN TRI THỨC BÀI TOÁN HÓA HỌC (Trang 27)

Tải bản đầy đủ (DOCX)

(37 trang)
w