Tải bản đầy đủ (.doc) (16 trang)

ỨNG DỤNG MẠNG TÍNH TOÁN TRONG HÓA HỌC

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (386.09 KB, 16 trang )

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
BIỂU DIỄN TRI THỨC
VÀ ỨNG DỤNG
ĐỀ TÀI:
ỨNG DỤNG MẠNG TÍNH TOÁN
TRONG HÓA HỌC
Giảng viên hướng dẫn: PGS TS. Đỗ Văn Nhơn
Học viên thực hiện: Ngô Hải Linh
MSHV: CH1101019
Lớp cao học khóa 6
TP Hồ Chí Minh, tháng 12/2012
Ứng dụng mạng tính toán trong hóa học
MỤC LỤC
Mở đầu 2
I. Các phương pháp biểu diễn tri thức cơ bản 3
1. Logic mệnh đề và logic vị từ 3
2. Biểu diễn tri thức bằng luật dẫn 3
3. Biểu diễn tri thức bằng mạng ngữ nghĩa 4
II. Mô hình biểu diễn tri thức COKB 5
1. Đối tượng tính toán (C-Object) 5
2. Mô hình cho một C-Object 6
3. Các thành phần của mô hình COKB 6
III. Mạng các đối tượng tính toán 8
1. Mạng con, đối tượng tính toán 8
2. Mạng các đối tượng tính toán 8
IV. Ứng dụng 11
1. Thiết kế cơ sở tri thức cho miền hóa học vô cơ 11
2. Thiết kế bộ suy diễn tự động của chương trình 12
3. Chương trình demo Hóa học 13
Kết luận 15



Biểu diễn tri thức và ứng dụng Trang 2
Ứng dụng mạng tính toán trong hóa học
MỞ ĐẦU
Trong lĩnh vực trí tuệ nhân tạo, có nhiều phương pháp để biểu diễn tri thức nhưng
những phương pháp này lại không hiệu quả trong việc biểu diễn và suy luận trên các tri
thức phức tạp. Phương pháp biểu diễn tri thức đóng vai trò quan trọng trong thiết kế hệ
thống tri thức phức tạp như hình học phẳng, hình học giải tích, vật lý, hóa học, sinh học…,
nhưng nghững phương pháp suy diễn hiện nay vẫn còn mang tính khái quát cao, chưa thể
mô phỏng được lối tư duy của con người. Trong thực tế, khi giải quyết một bài toán, chúng
ta thường không tìm ngay một lời giải mới mà trước tiên ta sẽ tìm những bài toán liên quan
với bài toán ấy để từ đó có cách giải quyết phù hợp. Trong bài viết này, em xin trình bày
mô hình COKB (Computational Object Knowledge Base), trong đó có sử dụng các bài toán
mẫu như là các tri thức đã có sẵn về bài toán được đặt ra, mô phỏng tối ưu hơn cho tri thức
con người.
Cho các hợp chất hóa học ban đầu A,B,C…, dựa vào các phương trình phản ứng đã
biết, hãy điều chế ra hợp chất hóa học X từ những phương trình phản ứng trên. Bài toán
đơn giản nếu số lượng phương trình phản ứng là nhỏ. Nhưng với số lượng phương trình
phản ứng là rất lớn thì việc tìm ra những phương trình thích hợp để điều chế ra chất X là rất
khó khăn. Từ lý do trên, áp dụng giải bài toán điều chế dựa trên mô hình COKB.
Thông qua những buổi giảng dạy và hướng dẫn của thầy Đỗ Văn Nhơn, giúp em nắm
được kiến thức tổng quát và hiểu hơn về các mô hình biểu diễn tri thức và những ứng dụng
hiện nay. Do khả năng và kiến thức có hạn, nên bài viết còn nhiều sai sót. Em xin chân
thành cảm ơn thầy đã giảng dạy và hướng dẫn để hoàn thành bài viết này.

Biểu diễn tri thức và ứng dụng Trang 3
Ứng dụng mạng tính toán trong hóa học
I. Các phương pháp biểu diễn tri thức cơ bản
1. Logic mệnh đề và logic vị từ
Dạng biểu diễn tri thức cổ điển nhất trong máy tính là logic, với 2 dạng phổ

biến là logic mệnh đề và logic vị từ. Cả 2 dạng này đều dùng ký hiệu để biểu diễn
tri thức và các toán tử áp lên các ký hiệu để suy luận logic. Logic đã cung cấp
cho các nhà nghiên cứu những công cụ hình thức để biểu diễn và suy luận tri
thức. Các phép tóan logic được sử dụng phổ biến của dạng là: and ( Λ ), or ( V ),
not ( ~ ) và phép kéo theo ( → ), tương đương ( ≡ ).
Kiểu biểu diễn tri thức vị từ giống như hàm trong các ngôn ngữ lập trình,
đối tượng tri thức là tham số của hàm, giá trị mệnh đề chính là kết quả của hàm.
Biểu diễn tri thức bằng mệnh đề gặp khó khăn là không thể can thiệp vào
cấu trúc của một mệnh đề → đưa ra khái niệm lượng từ, vị từ. Với vị từ có thể
biểu diễn tri thức dưới dạng các mệnh đề tổng quát.
2. Biểu diễn tri thức bằng luật dẫn
Phương pháp biểu diễn tri thức bằng luật dẫn được phát minh bởi Newell và Simon,
trong lúc hai ông đang cố gắng xây dựng một hệ giải bài toán tổng quát. Đây là một kiểu
biểu diễn tri thức có cấu trúc. Ý tưởng cơ bản là tri thức có thể được cấu trúc bằng một cặp
giả thiết và kết luận dưới dạng: nếu <giả thiết> thì <kết luận>. Đây là dạng biểu diễn tri
thức rất phổ biến. Mô hình biểu diễn tri thức dạng này thường bao gồm: tập các ký hiệu mô
tả các sự kiện (có cấu trúc đơn giản) và tập luật dẫn. Trong đó phần giả thiết và kết luận
của luật là tập các sự kiện. Mỗi sự kiện được mô tả có cấu trúc đơn giản như (tên đối tượng
- thuộc tính - giá trị). Ví dụ: quả cam – màu vàng.
Phương pháp suy luận trong cách biểu diễn tri thức dạng này là sử dụng suy diễn tiến
và suy diễn lùi:
Suy diễn tiến: là quá trình suy luận xuất phát từ một số sự kiện ban đầu, xác định các
sự kiện có thể được “sinh” ra từ sự kiện này.
Suy diễn lùi: là quá trình suy luận ngược xuất phát từ một số sự kiện ban đầu, ta tìm
kiếm các sự kiện đã “sinh” ra sự kiện này. Một ví dụ thường gặp trong thực tế là xuất phát
từ các tình trạng của máy tính, từ đó ta chẩn đoán xem máy tính đã bị hỏng hóc ở đâu.
Các luật có ưu điểm là dễ hiểu nên dễ dàng dùng để trao đổi với người dùng. Có thể
dễ dàng xây dựng được cơ chế suy luận và giải thích từ các luật. Ngòai ra, các luật được

Biểu diễn tri thức và ứng dụng Trang 4

Ứng dụng mạng tính toán trong hóa học
biểu diễn theo mô hình này thường độc lập nhau nên việc cập nhật luật, hiệu chỉnh và bảo
trì hệ trì hệ thống thuận lợi. Tuy nhiên, từ những đặc điểm trong cách biểu diễn tri thức
dạng này tạo nên ưu điểm thì nó cũng tạo ra các khuyết điểm sau: chính vì các sự kiện có
cấu trúc đơn giản, trong khi tri thức của một số lĩnh vực lại trừu tượng và phức tạp, các khái
niệm của lĩnh vực có quan hệ ràng buộc lẫn nhau nên mô hình biểu diễn này không thể hiện
được hết tất cả những yếu tố trừu tượng đó.
3. Biểu diễn tri thức bằng mạng ngữ nghĩa
Mạng ngữ nghĩa là một phương pháp biểu diễn tri thức dùng đồ thị. Trong đó nút biểu
diễn đối tượng, và cung biểu diễn quan hệ giữa các đối tượng.
Hình 1: Ví dụ về mạng ngữ nghĩa
Người ta có thể mở rộng mạng ngữ nghĩa bằng cách thêm các nút và nối chúng vào đồ
thị. Các nút mới ứng với các đối tượng bổ sung. Thông thường có thể mở rộng mạng ngữ
nghĩa theo ba cách:
- Thêm một đối tượng tương tự
- Thêm một đối tượng đặc biệt hơn
- Thêm một đối tượng tổng quát hơn
Cơ chế suy diễn thực hiện theo thuật toán “loang” đơn giản:
Bước 1: Kích hoạt những đỉnh hình tròn đã cho ban đầu (những yếu tố đã có giá trị).
Bước 2: Lặp lại bước sau cho đến khi kích hoạt được tất cả những đỉnh ứng với
những yếu tố cần tính hoặc không thể kích hoạt được bất kỳ đỉnh nào nữa.

Biểu diễn tri thức và ứng dụng Trang 5
Động
vật có

Con
mèo
lông
trên cạn


sống
đuôi


Ứng dụng mạng tính toán trong hóa học
Nếu một đỉnh hình chữ nhật có cung nối với n đỉnh hình tròn mà n-1 đỉnh hình
tròn đã được kích hoạt thì kích hoạt đỉnh hình tròn còn lại (và tính giá trị đỉnh còn lại
này thông qua công thức ở đỉnh hình chữ nhật).
II. Mô hình biểu diễn tri thức COKB
1. Đối tượng tính toán (C-Object)
Trong nhiều vấn đề giải toán dựa trên tri thức ta thường đề cập đến các đối tượng
khác nhau và mỗi đối tượng có cấu trúc bao gồm một số thuộc tính với những quan hệ nhất
định. Những quan hệ này giúp ta thực hiện sự suy diễn, tính toán và giải một số bài toán
suy diễn-tính toán trên các thuộc tính của đối tượng. Ví dụ: trong giải toán hình học, một
tam giác với các thuộc tính như 3 cạnh, 3 góc trong, diện tích, nửa chu vi, bán kính vòng
tròn ngoại tiếp, v.v … cùng với các công thức liên hệ giữa các thuộc tính đó sẽ cho ta một
cấu trúc của một đối tượng như thế. Theo cách tiếp cận hướng đối tượng trong biểu diễn tri
thức và giải toán, chúng ta tích hợp vào cấu trúc đối tượng trên một số hành vi giải toán
nhất định để tạo ra một đối tượng. Dựa trên các đối tượng này, nhiều bài toán khác nhau có
thể được biểu diễn dưới dạng mạng các đối tượng. Cách biểu diễn này có thể được áp dụng
một cách có hiệu quả trong các hệ giải toán, chẳng hạn như các hệ giải các bài toán hình
học. So với các phương pháp được trình bày ở trên, cách mô hình này tỏ ra có nhiều ưu
điểm, đặc biệt là khả năng biểu diễn hầu như toàn bộ tri thức và các dạng bài toán tổng quát
thuận tiện cho việc phát triển các thuật toán giải tự động và cung cấp những lời giải tự
nhiên và phù hợp với cách nghĩ và viết của con người. Ngoài ra, nó còn giúp ích cho việc
thiết kế và cài đặt phần cơ sở tri thức cũng như ngôn ngữ qui ước để đặc tả bài toán.
Định nghĩa 1: Ta gọi một đối tượng tính toán (C-Object) là một đối tượng O có cấu
trúc bao gồm:
(1) Một danh sách các thuộc tính Attr(O) = {x

1
, x
2
, , x
n
} trong đó mỗi thuộc tính lấy
giá trị trong một miền xác định nhất định, và giữa các thuộc tính ta có các quan hệ thể hiện
qua các sự kiện, các luật suy diễn hay các công thức tính toán.
(2) Các hành vi liên quan đến sự suy diễn và tính toán trên các thuộc tính của đối
tượng hay trên các sự kiện như:

Biểu diễn tri thức và ứng dụng Trang 6
Ứng dụng mạng tính toán trong hóa học
 Xác định bao đóng của một tập hợp thuộc tính A ⊂ Attr(O), tức là đối tượng O có
khả năng cho ta biết tập thuộc tính lớn nhất có thể được suy ra từ A trong đối
tượng O.
 Xác định tính giải được của bài toán suy diễn tính toán có dạng A → B với A ⊂
Attr(O) và B ⊂ Attr(O). Nói một cách khác, đối tượng có khả năng trả lời câu hỏi
rằng có thể suy ra được các thuộc tính trong B từ các thuộc tính trong A không.
 Thực hiện các tính toán
 Thực hiện việc gợi ý bổ sung giả thiết cho bài toán
 Xem xét tính xác định của đối tượng, hay của một sự kiện
2. Mô hình cho một C-Object
Một C-Object có thể được mô hình hóa bởi một bộ:
(Attrs, F, Facts, Rules)
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) thuộc loại “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,
R, r, ra, rb, rc }
 F = { GocA + GocB + GocC = Pi, a*sin(GocB) = b*sin(GocA),
a^2 = b^2 + c^2 - 2*b*c*cos(GocA), . . . }
 Facts = {}
 Rules = { {GocA = GocB}⇒ {a = b},
{a = b} ⇒ {GocA = GocB},
{a^2 = b^2+c^2}⇒{GocA=pi/2},
{GocA=pi/2} ⇒ {a^2 = b^2+c^2, b ⊥ c}, }
3. Các thành phần của mô hình COKB
Mô hình cơ sở tri thức của các đối tượng tính toán (mô hình COKB) gồm 6
thành phần:

Biểu diễn tri thức và ứng dụng Trang 7
Ứng dụng mạng tính toán trong hóa học
(C, H, R, Ops, Funcs, Rules)
Trong đó,
(1) C là tập hợp các khái niệm về C-Object.
(2) H là tập hợp các quan hệ phân cấp giữa các loại đối tượng.
(3) R là tập hợp các khi niệm về các loại quan hệ trên C-Object.
(4) Ops là tập hợp các toán tử.
(5) Funcs là tập hợp các hàm.
(6) Rules là tập hợp các luật.
Trong mô hình này mỗi đối tượng tính toán (C-Object) có cấu trúc và được phân cấp
dựa trên các thiết lập của đối tượng.
Ngoài ra, mô hình này có 11 loại sự kiện sau:
- Sự kiện loại 1: Sự kiện thông tin loại của đối tượng.
- Sự kiện loại 2: Sự kiện về tính xác định của một đối tượng hay của một thuộc tính
của đối tượng.

- Sự kiện loại 3: Sự kiện về tính xác định của một đối tượng hay của một thuộc tính
của đối tượng thông qua biểu thức hằng.
- Sự kiện loại 4: Sự kiện về sự bằng nhau của một đối tượng hay một thuộc tính của
đối tượng với một đối tượng hay một thuộc tính khác.
- Sự kiện loại 5: Sự kiện về sự phụ thuộc giữa các đối tượng và các thuộc tính của
các đối tượng thông qua một công thức tính toán hay một đẳng thức theo các đối
tượng hay các thuộc tính.
- Sự kiện loại 6: Sự kiện về một quan hệ trên các đối tượng hay trên các thuộc tính
của các đối tượng.
- Sự kiện loại 7: Sự kiện về tính xác định của một hàm.
- Sự kiện loại 8: Sự kiện về tính xác định của một hàm thông qua một biểu thức
hằng.
- Sự kiện loại 9: Sự kiện về sự bằng nhau giữa một đối tượng với một hàm.
- Sự kiện loại 10: Sự kiện về sự bằng nhau giữa một hàm với một hàm khác.
- Sự kiện loại 11: Sự kiện về sự phụ thuộc của một hàm theo các hàm hay các đối
tượng khác thông qua một công thức tính toán.

Biểu diễn tri thức và ứng dụng Trang 8
Ứng dụng mạng tính toán trong hóa học
Mô hình biểu diễn này sử dụng cách tiếp cận hướng đối tượng để biểu diễn tri thức.
Do đó, sử dụng mô hình này giúp dễ thiết kế các mô hình cho những ứng dụng cụ thể vá
thiết kế các giải thuật.
III. Mạng các đối tượng tính toán
1. Mạng con, đối tượng tính toán
Là một dạng biểu diễn 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 quyết một số dạng bài tóan. Mỗi mạng tính tóan là một mạng ngữ nghĩa
chứa các biến và những quan hệ có thể cài đặt sử dụng cho việc tính toán.
Một mạng tính toán (M,F) được gọi là một mạng con của mạng tính toán (M’,F’) nếu
thỏa các điều kiện sau đây :
(1) M ⊆ M’,

(2) F ⊆ F’,
(3) M(f) ⊆ M’(f), với mọi f∈ F.
Đối với mỗi đối tượng tính toán O, có một tập biến và một tập các quan hệ tương ứng.
Tập các biến và tập các quan hệ của đối tượng O lần lượt được ký hiệu là M(O), F(O). Từ
đó ta có thể viết :
O = ( M(O), F(O) )
Ngoài ra đối tượng tính toán, giả sử là O, còn có khả năng đáp ứng lại một số thông
điệp yêu cầu từ bên ngoài. Trong các khả năng đó của đối tượng tính toán ta có thể kể đến
những điểm sau đây :
(1) Xác định bao đóng (trong đối tượng O) của một tập A ⊆ M(O).
(2) Xác định tính giải được của một bài toán A → B,
trong đó A ⊆ M(O), B ⊆ M(O).
(3) Tìm một lời giải tốt cho bài toán A → B trên mạng ( M(O), F(O) ),
trong đó A ⊆ M(O), B ⊆ M(O).
2. Mạng các đối tượng tính toán
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 :
O = {O
1
,O
2
, , O
n
}
và một tập hợp các quan hệ tính toán :
F = {f
1
,f
2
, , f
m

}.

Biểu diễn tri thức và ứng dụng Trang 9
Ứng dụng mạng tính toán trong hóa học
Đặt :
M(f
i
) = tập hợp các biến có liên quan với nhau bởi quan hệ f
i.
M(F) =
M(f
i
i 1
m
)
=

.
M(O) =
M(O
i
i 1
n
)
=

.
M là tập hợp những biến được xem xét trên mạng, kể cả các biến thuộc
các tập M(f
i

).
M
i
= M ∩ M(O
i
),i=1,2, , m.
Theo cách ký hiệu trên, M
i
là tập hợp những biến của đối tượng O
i
được xem xét trên
mạng các đối tượng tính toán. Ngoài ra ta còn có :
M(O
i
i 1
n
)
=

⊇ M ⊇
M(f
i
i 1
m
)
=

,
hay M(O) ⊇ M ⊇ M(F).
Mô hình biểu diễn tri thức dạng này cho phép ta thực hiện tính toán các biến của một

hay hiều đối tượng dựa trên tập biến của các đối tượng khác.
Thuật toán: Thuật toán tìm một lời giải cho bài toán A → B trên mạng các đối tượng
tính toán (O, F) có tập biến được xem xét là M.
Nhập : Mạng các đối tượng tính toán (O,F), với tập biến là M,
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.
1. Solution ← empty; // Solution là dãy các quan hệ giữa các đối tượng
// hay các đối tượng sẽ áp dụng
2. if B ⊆ A then
begin
Solution_found ← true; // khi bài toán là giải được
goto 5;
end
else
Solution_found ← false;
3. Repeat

Biểu diễn tri thức và ứng dụng Trang 10
Ứng dụng mạng tính toán trong hóa học
Ao ← A;
Chọn ra một f ∈ F;
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 ← f(A);
Solution ← Solution ∪ {f};
end;

if B ⊆ A then
Solution_found ← true;
Chọn ra một f ∈ F;
end; // { while }
Until Solution_found or (A = Ao);
4. if not Solution_found then
begin
Chọn ra một O
i
∈ O (theo thứ tự ưu tiên đã nói ở trên) sao cho
O
i
(A) ≠ A;
if (chọn được O
i
) then
begin
A ← O
i
(A);
Solution ← Solution ∪ { O
i
};
if (B ⊆ A) then
begin
Solution_found ← true;
goto 5;
end;
else
goto 3;

end;
end;
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;

Biểu diễn tri thức và ứng dụng Trang 11
Ứng dụng mạng tính toán trong hóa học
IV. Ứng dụng
Chúng ta biết rằng trong hóa học, việc xem xét các phản ứng hóa học là một trong
những vấn đề quan trọng. 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. Và áp dụng để giải
2 loại bài toán sau:
- Nhận diện loại phương trình phản ứng?
- Cho một số chất, hỏi có điều chế được một vài chất nào đó không?
- Tìm các phương trình phản ứng để biểu diễn dãy các biến hóa sau:
Zn → ZnO → ZnSO
4
1. Thiết kế cơ sở tri thức cho miền hóa học vô 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ơ” + H
2

Biểu diễn tri thức và ứng dụng Trang 12
Ứng dụng mạng tính toán trong hóa học
2. Thiết kế bộ suy diễn tự động của chương trình
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.
(O, F, G)
Bài toán 1

: Viết phương trình phản ứng (PTPU) biểu diễn các biến hóa sau:
Zn → ZnO → ZnSO
4
Mô hình bài toán:
O = { [Zn, ZnO, ZnSO
4
] }
F = { tập các phương trình phản ứng hóa học }

G = {}
Bài toán 2

: Từ lưu huỳnh (S) và nước (H
2
O) ta có thể điều chế được axit sunfuaric
(H
2
SO
4
) không ?
Mô hình bài toán:
O = { [S, H
2
O ? H
2
SO
4
] }
F = { tập các phương trình phản ứng hóa học }
G = {}
Bài toán 3

: Viết các PTPU để thực hiện các biến hóa theo các sơ đồ sau đây:
ZnS → SO
2
→ H
2
SO
4

ZnS → ZnO → ZnCl
2
Mô hình bài toán:
O = { [ZnS, SO
2
, H
2
SO
4
], [ZnS, ZnO, ZnCl
2
] }
F = { tập các phương trình phản ứng hóa học }
G = {}
Bài toán 4

: Hoàn thành các phương trình phản ứng sau:
Mg + H
2
SO
4
→ . . .
Fe(OH)
3
+ H
2
SO
4
→ . . .
K

2
CO
3
+ H
2
SO
4
→ . . .
Ba(NO
3
)
2
+ H
2
SO
4
→ . . .
Mô hình bài toán:
O = { [Mg + H
2
SO
4
= …],

Biểu diễn tri thức và ứng dụng Trang 13
Ứng dụng mạng tính toán trong hóa học
[Fe(OH)
3
+ H
2

SO
4
= …],
[K
2
CO
3
+ H
2
SO
4
= …],
[Ba(NO
3
)
2
+ H
2
SO
4
= …] }
F = { tập các phương trình phản ứng hóa học }
G = {}
Bài toán 5

: Viết PTPU theo các sơ đồ sau:
FeS + ? → FeCl
2
+ ?
CuSO

4
+ ? → ? + Na
2
SO
4
Mô hình bài toán:
O = { [FeS + ? = FeCl
2
+ ?],
[CuSO
4
+ ? = ? + Na
2
SO
4
] }
F = { tập các phương trình phản ứng hóa học }
G = {}
3. Chương trình demo Hóa học
Chương trình được xây dựng trên môi trường Visual studio 2010, ngôn ngữ C#. Sau
đây là hình ảnh chương trình và chạy thử một số bài toán ở trên:
- Viết phương trình phản ứng (PTPU) biểu diễn các biến hóa (dạng bài tập 1, 3)

Biểu diễn tri thức và ứng dụng Trang 14
Ứng dụng mạng tính toán trong hóa học
- Từ lưu huỳnh (S) và nước (H
2
O) ta có thể điều chế được axit sunfuaric (H
2
SO

4
)
- Hoàn thành các phương trình phản ứng (dạng bài tập 4)

Biểu diễn tri thức và ứng dụng Trang 15
Ứng dụng mạng tính toán trong hóa học
- Viết PTPU theo các sơ đồ (dạng bài tập 5)
KẾT LUẬN
Qua bài viết trên cho chúng ta có cái nhìn khái quát về các phương pháp biểu diễn tri
thức.Với mô hình COKB là một mô hình rất tốt cho việc biểu diễn các tri thức của con
người, đặc biệt là các tri thức về Toán học, Vật lý, Hóa học Hơn nữa, sự mở rộng của mô
hình COKB bằng việc thêm bớt các thành phần đối tượng một cách dễ dàng để phù hợp với
từng bài toán cụ thể.
Trong chương trình demo Hóa học trên, em chỉ dừng lại ở mức cơ bản do thời gian có
hạn. Quá trình suy diễn để tìm ra được các phương trình phản ứng cần cho quá trình điều
chế, nhưng các phương trình đó chưa được tối ưu (phản ứng đắt tiền trong thực tế, chưa
nhận ra được chất kết tủa ). Hướng phát triển của chương trình là:
- Tối ưu được phương trình phản ứng cần cho quá trình điều chế.
- Kế thừa để phát triển thành bài toán Nhận biết chất hóa học.
Tài liệu tham khảo chính:
(1) Giáo trình Các hệ cơ sở tri thức - GS.TSKH Hoàng Kiếm, TS. Đỗ Phúc, TS. Đỗ Văn Nhơn
(2) Model for Knowledge Bases of Computational Objects – PGS TS. Đỗ Văn Nhơn .

Biểu diễn tri thức và ứng dụng Trang 16

×