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

Bài tiểu luận xây DỰNG mô HÌNH BIỂU DIỄN TRI THỨC CHO bài TOÁN hóa vô 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 (280.17 KB, 12 trang )

Đại học Quốc Gia Tp. Hồ Chính Minh

Trường Đại Học Công Nghệ Thông Tin
Lớp Cao học - Khóa 6
Môn học Biểu diễn tri thức và ứng dụng

Bài tiểu luận
XÂY DỰNG MÔ HÌNH BIỂU DIỄN TRI THỨC
CHO BÀI TOÁN HÓA VÔ CƠ

GVHD: PGS.TS Đỗ Văn Nhơn

Học viên: Lê Hoài Nam
MSHV: CH1101106

Tháng 1 - 2013


Thiết kế mô hình tri thức cho bài toán Hóa Vô Cơ

Mục lục
Mục lục..................................................................................................................................................2

Lê Hoài Nam – CH0110106

Trang 2


Thiết kế mô hình tri thức cho bài toán Hóa Vô Cơ

I.



Giới thiệu:
1. Mô hình COKB
Mô hình COKB được gọi là mô hình tri thức các đối tượng tính toán
(Computational Objects Knowledge Base), trong đó khái niệm cơ bản mà
mô hình đề cập tới là khái niệm đối tượng tính toán (C-Object).
Mỗi C-Object là một đối tượng của mô hình mạng tính toán bao gồm
các tập thành phần:

(Attrs, F, Facts, Rules)
Trong đó:
-

Attrs là tập thuộc tính của đối tượng
F là tập các quan hệ suy diễn tính toán
Facts là tập hợp các tính chất 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.

Từ đó ta có mô hình COKB là một hệ thống (C, H, R, Ops, Rules)
gồm:
-

Một tập hơp C chứa các khái niệm về các C-Object.
Mỗi khái niệm là một lớp C-Object có cấu trúc bên trong như sau:
+ Kiểu đối tượng.
+ Danh sách các thuộc tính.
+ Quan hệ trên cấu trúc thiết lập.
+ Tập hợp các điều kiện ràng buộc trên các thuộc tính.
+ Tập hợp các tính chất nội tại trên các thuộc tính.
+ Tập hợp các quan hệ suy diễn - tính toán.

+ Tập hợp các luật suy diễn có dạng:

{các sự kiện giả thiết}⇒{các sự kiện kết luận}
-

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

Lê Hoài Nam – CH0110106

Trang 3


Thiết kế mô hình tri thức cho bài toán Hóa Vô Cơ

Trên tập C ta có một quan hệ phân cấp theo đó có thể có một số khái
niệm là sự đặc biệt hóa của các khái niệm khác. Có thể nói rằng H là một
biểu đồ Hasse khi xem quan hệ phân cấp trên là một quan hệ thứ tự trên C.
-

Một tập R các loại quan hệ trên các C-Object.

Mỗi quan hệ được xác định bởi <tên quan hệ> và các loại đối tượng của
quan hệ, và quan hệ có thể có một số tính chất nhất định.
-

Một tập hơp Ops các toán tử.

Các toán tử cho ta một số phép toán trên các biến thực cũng như trên các
đối tượng.
-


Một tập hơp Rules gồm các luật được phân lớp.

Mỗi luật cho ta một qui tắc suy luận để đi đến các sự kiện mới từ các sự
kiện nào đó, và về mặt cấu trúc mỗi luật r có thể được mô hình dưới dạng:
r : {sk1, sk2, ..., skn} ⇒ { sk1, sk2, ..., skm }

2. Bài toán Hóa học Vô cơ
Hóa học là một lĩnh vực khoa học về các đơn chất, hợp chất có trong tự
nhiên, cách chúng hình thành, phản ứng với nhau để tạo thành chất mới. Khi
nói tới bài toán hóa học phổ thông, người ta sẽ nghĩ đến các phản ứng và các
bài toán trên các phản ứng đó.
Một số ví dụ về các bài toán trong Hóa học phổ thông:
-

-

-

Hoàn thành chuỗi phản ứng hóa học.
Ví dụ: Na-> NaOH -> NaCl -> NaClO v.v…
Tính khối lượng (thể tính) của các chất tạo thành khi biết khối
lượng (thể tích) của một vài chất tham gia và điều kiện phản ứng
nếu có.
Ví dụ: cho lượng dư dung dịch AgNO3 tác dụng với 100ml dung
dịch NaF 0.05M và NaCl 0.1M. Tính khối lượng kết tủa thu được.
Nhận biết hóa chất
Ví dụ: Hãy trình bày cách nhận biết các chất sau: Al, Mg, Ca, Na
bằng phương pháp hóa học
V.v…


Lê Hoài Nam – CH0110106

Trang 4


Thiết kế mô hình tri thức cho bài toán Hóa Vô Cơ

Đối tượng cơ bản trong bài toán Hóa học là các Nguyên tố và Chất.
Chất được cấu tạo từ 1 hoặc nhiều Nguyên tố. Nếu Chất cấu tạo từ 1 nguyên tố
ta gọi là Đơn chất, còn lại ta gọi là Hợp chất.
Kiến thức quan trọng khi giải bài toán Hóa học phổ thông là các dạng
phương trình phản ứng, điều kiện để phản ứng xảy ra, chất tham gia và chất
tạo thành có tính chất, cấu trúc v.v… như thế nào. Dựa trên phản ứng hóa học
để tính khối lượng (thể tích) các chất tham gia và tạo thành, tính được hiện
tượng xảy ra khi cho các chất tác dụng với nhau.
Như vậy khi thiết kế mô hình tri thức để giải quyết bài toán Hóa học Vô
cơ, ta cần phải chú ý biểu diễn và xử lý được các thông tin: Nguyên tố, Chất và
Phản ứng hóa học.

3. Áp dụng mô hình COKB cho tri thức Hóa học vô cơ.
Theo lý thuyết của mô hình COKB được trình bày ở trên ta thấy mô hình
COKB có thể biểu diễn khá rõ ràng và tường minh các tri thức có dạng “đối
tượng tính toán” như trong Toán học và Vật lý. Ví dụ như trong hình học có
các “đối tượng tính toán” như điểm, đoạn thẳng, đường thẳng, hình tam giác
v.v… Trong vật lý điện, ta có các “đối tượng tính toán” là Điện trở, nguồn
điện, cuộn cảm, tụ điện v.v…
Xét lĩnh vực hóa học, ta thấy cũng có các “đối tượng tính toán” là Chất,
Đơn chất, Hợp chất v.v… Nhưng nó còn có các đối tượng khác không thể biểu
diễn như một “Đối tượng tính toán” được đó là các Nguyên tố và Phản ứng hóa

học.
Trong Hóa học, Nguyên tố được xem là thành phần đơn vị cơ bản nhất
để tạo nên các chất, không tồn tại một chất mà công thức của nó có một kí hiệu
không tồn tại trong tập các Nguyên tố đã biết.
Phản ứng hóa học là một khái niệm nói về sự tác dụng của các hóa chất.
Có thể xem Phản ứng hóa học là một “đối tượng tính toán” vì nó cũng có các
thuộc tính tính toán được như: chất tham gia, chất tạo thành, nhiệt tỏa ra, hiệu
xuất v.v…. Và cũng có thể xem Phản ứng hóa học là một “luật” vì khi biết tập
các chất tham gia ta sẽ tìm được tập các chất tạo thành. Do đó, khi thiết kế tri
thức cho Hóa học vô cơ, ta sẽ tách Phản ứng hóa học ra như một khái niệm độc
lập thỏa mãn đầy đủ các điều kiện ở trên.

II.

Thiết kế cơ sở tri thức.
1. Mô hình tổng quát:
Khi phân tích tri thức hóa học vô cơ ta đưa ra mô hình tương tự mô hình
COKB với 5 thành phần như sau:

(C, H, T, P, Rules)
Trong đó:

Lê Hoài Nam – CH0110106

Trang 5


Thiết kế mô hình tri thức cho bài toán Hóa Vô Cơ

C: Tập khái niệm về cơ bản trong hóa học.

H: Tập các quan hệ thừa kế giữa các thành phần trong C.
T: Tập các nguyên tố trong bản tuần hoàn
P: Tập các dạng phương trình phản ứng
Rules: Tập các luật dựa trên các thành phần ở trên.
2. Phân tích mô hình:
a. Tập C: các khái niệm cơ bản trong hóa học
Các khái niệm trong hóa học bao gồm: nguyên tố, chất, đơn chất, hợp
chất, điều kiện phản ứng, bazo, axit, muối, kim loại, phi kim, kiềm, kiềm
thổ, halogen, nhóm oxi, nhóm nito, nhóm cac-bon, nhóm nitơ, ion
dương, ion âm.
Mỗi khái niệm trong C được định nghĩa bằng 4 tập thành phần chính:
Properties: tập các thuộc tính. Mỗi thuộc tính thể hiện cho một tính chất
của khái niệm. Giá trị của thuộc tính có thể là số, chuỗi, tập hợp hoặc
các khái niệm khác trong C.
Facts: tập các sự kiện. Mỗi sự kiện thể hiện cho một ràng buộc, điều
kiện hoặc trường hợp riêng cho các thuộc tính.
Rules: Tập các luật liên hệ các thuộc tính. Các luật có dạng suy diễn IF
…THEN…. Dùng để tìm ra giá trị của 1 thuộc tính dựa trên các thuộc
tính đã có.
Funcs: Tập các hàm, dùng để tính giá trị của thuộc tính dựa trên 1 hoặc
nhiều thuộc tính khác.
b. Tập H: Tập các quan hệ phân cấp giữa các đối tượng trong
C:
Thể hiện mối quan hệ phân cấp, kế thừa của các đối tượng trong C. Đối
tượng “con” sẽ kế thừa toàn bộ thuộc tính và luật có trong đối tượng
“cha”.

Lê Hoài Nam – CH0110106

Trang 6



Thiết kế mô hình tri thức cho bài toán Hóa Vô Cơ

c. Tập T: Tập hợp các nguyên tố phổ biến trong bản tuần hoàn.
Mỗi phần tử là một đối tượng thuộc khái niệm Nguyên tố được định
nghĩa trong tập C, các phần tử này sẽ có đầy đủ các thuộc tính, sự kiện
và luật cụ thể.
Mỗi nguyên tố có các thuộc tính sau đây:
-

So_hieu: Số hiệu nguyên tố
Chu_ky: Chu kì trong bản tuần hoàn
Nhom: Nhóm trong bản tuần hoàn.
Khoi_luong_rieng: Khối lượng riêng.
Ion_hoa: tập các số ion hóa
Nhietdo_soi: nhiệt độ sôi.
Nhietdo_nongchay: nhiệt độ nóng chảy.

20 nguyên tố phổ biến trong bảng tuần hoàn là: Na, K, Mg, Ca, Ba, Cr,
Mn, Fe, Cu, Ag, Zn, Al, C, N, P, O, S, F, Cl, Br.
d. Tập P: Tập các dạng phản ứng hóa học
Tập P chứa danh sách các dạng phản ứng hóa học có trong chương trình
Hóa học vô cơ phổ thông. Mỗi phản ứng sẽ chứa đẩy đủ các thông tin cơ
bản như sau:
-

Chất tham gia
Chất tạo thành
Điều kiện phản ứng

Phương pháp cân bằng
Hiện tượng của phản ứng

Các thông tin trên cũng được chia thành 4 nhóm chính:
-

Tập các thuộc tính: thuộc tính về chất tham gia, chất tạo thành,
hiện tượng phản ứng.
Tập các sự kiện: điều kiện phản ứng
Tập các hàm: tính các chất tham gia từ các chất tạo thành
Tập các luật: các luật liên hệ giữa các thuộc tính

Các dạng phản ứng được học trong chương trình phổ thông bao gồm:
-

Phản ứng oxi hóa – khử
Phản ứng trung hòa
Phản ứng cháy
Phản ứng thủy phân
Phản ứng trao đổi
Phản ứng phân hủy
Phản ứng hóa hợp

Lê Hoài Nam – CH0110106

Trang 7


Thiết kế mô hình tri thức cho bài toán Hóa Vô Cơ


e. Tập Rules: Tập luật liên hệ giữa các thành phần ở trên
Các luật được trình bày dưới dạng luật dẫn, thể hiện các quy tắc suy
luận để tìm ra chất mới từ những chất đã cho.
Theo đó mỗi luật được phát biểu dưới dạng ngôn ngữ tự nhiên như
sau:
“Nếu ta có các chất A thỏa các điều kiện B, sử dụng phương
trình P ta được thêm các chất C”.
Trong đó 1 chất trong A cùng với 1 điều kiện trong B tạo thành 1 sự
kiện.
Mỗi luật gồm 3 thành phần: Giả thiết, phương trình áp dụng và kết
luận. Trong đó:
- Phần Giả thiết là tập các sự kiện về các đối tượng thuộc tập C.
- Phương trình áp dụng là một đối tượng thuộc tập P.
-Phần Kết luận là tập các đối tượng mới thuộc tập C được tạo ra.
{sự kiện dựa trên các đối tượng đã có}
=> Phương trình phản ứng P + {các đối tượng mới}

3. Các loại sự kiện
a. Sự kiện xác định đối tượng
Loại sự kiện dùng để xác định cụ thể một hóa chất có dạng:
X is A
Trong đó: X là đối tượng, A là 1 khái niệm thuộc tập C hoặc 1
nguyên tố thuộc tập T.
b. Sự kiện xác định thuộc tính của đối tượng
Loại sự kiện dùng để xác định giá trị một thuộc tính nào đó của đối
tượng có dạng.
X.<thuộc tính> = Y
Trong đó: X là đối tượng, dấu chấm (.) dùng để chỉ tới thuộc tính
đang đề cập và Y là giá trị của thuộc tính đó.
Lê Hoài Nam – CH0110106


Trang 8


Thiết kế mô hình tri thức cho bài toán Hóa Vô Cơ

c. Sự kiện so sánh thuộc tính giữa 2 đối tượng
Loại sự kiện dùng để so sánh quan hệ giữa thuộc tính của 2 đối
tượng. Có dạng:
X.<thuộc tính> <quan hệ so sánh> Y.<thuộc tính>
Trong đó quan hệ so sánh có thể là lớn hơn, lớn hơn hoặc bằng, bé
hơn, bé hơn hoặc bằng, bằng nhau, bao hàm nhau, khác nhau.
d. Sự kiện xác định thành phần của đối tượng
Đây là loại sự kiện xác định thành phần cấu tạo của hợp chất.
Có dạng:
A= X1 + X2 + ….
Trong đó: A là đối tượng hợp chất; X1, X2 là các thành phần cấu tạo
nên A, được viết dưới dạng công thức hóa học cụ thể.
4. Thiết kế bộ suy diễn
a. Một số dạng bài toán và cách giải quyết
- Bài toán 1:
Đề bài: Hoàn thành chuỗi phản ứng sau: Na-> NaOH -> NaCl ->
NaHCO3.

-

Cách giải: Tìm phản ứng thích hợp để hoàn thành từng chuỗi
phản ứng con{Na-> NaOH, NaOH-> NaCl, NaCl-> NaHCO3}
Yêu cầu: trình bày được chương trình đã áp dụng loại phản ứng
nào, yêu cầu để phản ứng xảy ra.

Bài toán 2:
Đề bài: cho lượng dư dung dịch AgNO3 tác dụng với 100ml
dung dịch NaF 0.05M và NaCl 0.1M. Tính khối lượng kết tủa thu
được
Cách giải: Tìm được phương trình phản ứng, cân bằng phản ứng,
tìm các phương trình liên hệ giữa thuộc tính các thành phần tham
gia phản ứng để tìm được kết quả.

b. Thiết kế bộ suy diễn
- Chú ý:
Khi thiết kế bộ suy diễn cho CSTT Hóa Vô cơ ta có thể bỏ qua 1 số
thao tác mang tính kĩ thuật như:
Lê Hoài Nam – CH0110106

Trang 9


Thiết kế mô hình tri thức cho bài toán Hóa Vô Cơ

+ Đọc hiểu các công thức hóa học.
+ Đọc hiểu các luật và hàm trong tập tin lưu trữ.
+ Tự động chuyển các đối tượng trong C thành Class để có
thể dễ dàng tính toán.
-

Bộ suy diễn gồm các thành phần sau:
Thuật giải xác định chất a thuộc nhóm chất nào
Nhomchat(a)
If (SoNguyenTo(a) =1)
Don_chat dc = a

Switch (t.Nhom)
1: return Kiem
2: return Kiem_tho
……..
Else
Hop_chat hc = a
If (hc.Thanh_phan[1] = Kim_loai)
If (hc.Thanh_phan[n]= Hidro)
Return Bazo
Else Return Muoi
If (hc.Thanh_phan[1] = Hidro)
Return Axit

Thuật giải kiểm tra chất a có thỏa điều kiện sk hay không
KT_dk(a,sk)
Switch (LOAI(sk))
Loai 1:
IF (Nhomchat(a) <= VP(sk)) //so sánh quan hệ kế thừa
Return True
Loai 2:
Thuoc_tinh = VT(sk)
IF (a.Thuoc_tinh = VP(sk))
Return True
Loai 3:
Loai 4:
IF (a.Thanh_phan = VP(sk))
Return True

Thuật giải so khớp xem tập các đối tượng trong A có thỏa mãn các
sự kiện bên vế trái của R hay không.

Sokhop(R, A)
Foreach sk in VT(R)
T= False
Foreach a in A
Lê Hoài Nam – CH0110106

Trang 10


Thiết kế mô hình tri thức cho bài toán Hóa Vô Cơ
If (KT_dk(a,sk))
T= True
Break
If (T= False)
Return False

Thuật giải tìm tập chất mới từ những chất đã cho sau khi áp dụng
tất cả các luật có thể
Apdungluat(A)
A’= {}
P’={}
Foreach R in Rules
If (Sokhop(R,A))
A’ = A’ ⋃ VP (R)
P’ = P’ ⋃ PTAP(R)
Return (A’,P’)

-

Thuật giải tìm lời giải cho bài toán hoàn thành chuỗi phản ứng


Dạng đề bài: Hoàn thành chuỗi phản ứng sau a->b->c->d->v.v…
Cách giải: Lần lượt tìm phương trình phản ứng cho từng đoạn a->b, b>c, v.v…
Thuật giải:
-

Input: X ={a,b,c,d,e,….}

Hoanthanhchuoi(X)
Ketqua= {}
For i = 1; i<=X.Count; i++
A=X[i]
(A’,P’) = Apdungluat(A)
IF (X[i+1] ∊ A’)
Phan_ung P = P’[1] //lấy phản ứng đầu tiên làm lời
//giải
String S = Fill (P) //hoàn thiện phản ứng với công
thức
//hóa
//học cụ thể
Ketqua = ketqua ⋃ S
Else
Return “khong tim thay ket qua cho chuoi X[i]>X[i+1]”

III. Nhận xét kết luận
1. Ưu điểm:
Lê Hoài Nam – CH0110106

Trang 11



Thiết kế mô hình tri thức cho bài toán Hóa Vô Cơ

Cách biểu diễn gần giống với tư duy tự nhiên của con người khi làm bài tập
hóa học với đầy đủ các thông tin cần thiết hỗ trợ cho việc xử lý tính toán.
Mô hình có cùng tư tưởng với mô hình KBCO nên dễ dàng khai thác những thế
mạnh của mô hình trước.

2. Nhược điểm:
Do phương pháp giải toán hóa học phổ thông tương đối phức tạp, cần lượng
thông tin khái quát bên cạnh những thông tin cụ thể nên việc thiết kế bộ suy
diễn tương đối phức tạp để giải quyết các bài tập khó.
Mỗi bài toán luôn có nhiều cách giải (dùng phương trình ion, dùng đồ thị,
dùng phương pháp cổ điển, dự đoán, thử sai v.v….) nên việc tìm được lời giải
tốt nhất cho một bài toán là không đơn giản.

TÀI LIỆU THAM KHẢO
[1] Giáo trình Hóa học 10, 11, 12
[2] Mô hình tri thức các đối tượng tính toán – TS. Đỗ Văn Nhơn
[3] Mạng tính toán và ứng dụng – TS. Đỗ Văn Nhơn
[4] Giáo trình hóa vô cơ đại cương

Lê Hoài Nam – CH0110106

Trang 12



×