CƠ
3.1 Mô hình tri thức
Mô hình gồm 4 thành phần:
(C,H,R, Rules)
- Tập C: tập các khái niệm về các “đối tượng hóa chất”. - Tập H: tập các quan hệ thừa kế giữa 1 số đối tượng trong C. - Tập R: tập các quan hệ giữa các đối tượng trong C.
- Tập Rules: tập các luật
3.1.1 Tập C
Là tập chứa các C-Object với mỗi C-Object là một “khái niệm về các đối tượng hóa chất” có trong chương trình trung học phổ thông, thường xuất hiện trong các bài toán hóa vô cơ. Mỗi C-Object gồm có các thành phần sau:
- Tập các thuộc tính Attrs: Mỗi thuộc tính có 1 kiểu giá trị xác định thể hiện cho 1 thuộc tính của đối tượng.
Ví dụ:
o Nguyên tố có thuộc tính: khối lượng riêng, số thứ tự trong bản tuần hoàn. o Chất có thuộc tính: khối lượng, khối lượng riêng, thể tích, công thức
phân tử v.v….
Bên cạnh loại thuộc tính có kiểu số thực, ta quan tâm tới loại thuộc tính mới là:Thuộc tính kiểu tập hợp, danh sách: dùng để mô tả thông tin về thành phần của 1 dung dịch, hỗn hợp hoặc thành phần chất tham gia/tạo thành trong phản ứng (đã được trình bày cụ thể ở mục 3.2.1).
Ví dụ như công thức tính số mol của 1 chất từ khối lượng và phân tử khối của nó là: n= m/M.
Trong quan hệ tính toán F, ta định nghĩa thêm tập các quan hệ tính toán phụ thuộc DF: là các quan hệ tính toán dựa trên giá trị 1 thuộc tính có kiểu danh sách/tập hợp (đã được trình bày ở mục 3.2.2).
Ví dụ: công thức tính khối lượng phân tử của 1 chất phụ thuộc vào công thức hóa học của nó.
- Tập các sự kiện vốn có của đối tượng Facts: mỗi thành phần là 1 sự kiện liên quan tới các thuộc tính ở trên. Các sự kiện này có thể dùng để giới hạn vùng giá trị của thuộc tính, xác định giá trị cụ thể của thuộc tính hoặc các sự kiện được khai báo kèm với đối tượng
- Tập các luật Rules: chứa các luật suy diễn dựa trên các sự kiện liên quan tới các thuộc tính hoặc bản thân đối tượng. Mỗi luật suy diễn được trình bày dưới dạng luật dẫn có mô hình có dạng
{Tập các sự kiện đã có} ->{Tập các sự kiện mới}
3.1.2 Tập H
Là tập chứa các quan hệ thừa kế giữa các 1 số khái niệm trong C. Các khái niệm có quan hệ thừa kế là những khái niệm về các chất, nhóm chất có trong chương trình THPT. Cụ thể như sau:
• Đơn chất
• Kim loại
Kim loại kiềm
Kim loại kiềm thổ
Kim loại nhóm Boron
• Phi kim
Nhóm Nito
Nhóm Halogen • Hợp chất • Axit • Bazo • Muối • Oxit
Oxit kim loại
Oxit phi kim
• Hidroxit
• Clorua
• Halogenua
Nhờ sử dụng tập H nên các khái niệm tương trong tập C sẽ được thiết kế theo mô hình thừa kế lại các thuộc tính đã có ở đối tượng “cha”. Như vậy, ta chỉ cần tập trung biểu diễn tri thức cho khái niệm Chất để cho các khái niệm “con” của nó kế thừa lại. Đối tượng “con” là 1 trường hợp cụ thể của đối tượng “cha” sẽ có đầy đủ các thuộc tính của “cha” và thêm các sự kiện trong tập Facts để xác định các trường hợp cụ thể.
3.1.3 Tập R
Tập R là tập hợp các khái niệm về các loại quan hệ giữa các đối tượng trong C. Xét nhu cầu giải toán Hóa Vô Cơ THPT ta có các loại quan hệ sau:
(1)Quan hệ "tỉ khối hơi" giữa 2 hỗn hợp khí
[TiKhoiHoi, hh1, hh2, a]
Trong đó:
Hh1, hh2 là 2 hỗn hợp khí
.a là giá trị tỉ lệ giữa hh1 và hh2, nghĩa là hh1.V/hh2.V = a.
(2)Quan hệ đồng dạng của 2 dung dịch trên thể tích
[DongDang, DD1, DD1]
Trong đó
có 1 lít Dung dịch A, lấy 100ml dd A gọi là dd B ta có [DongDang, B, A].
(3)Quan hệ đồng dạng của 2 dung dịch trên tỷ lệ
[ TyLe, DD1, D2,k ] Trong đó DD1, DD2 là 2 dung dịch K là tỉ số đồng dạng Có nghĩa là DD1.V/DD2.V = k. Ví dụ:
có dd A, lấy phân nửa dd A gọi là dd B => [ TyLe, ddA, ddB, 1/2 ]
3.1.4 Tập Rules
Tương tự trong mô hình COKB, mỗi luật trong Rules là một tri thức mang tính phổ quát giữa các khái niệm và các sự kiện đã có. Khi áp dụng một luật ta sẽ tìm ra các sự kiện mới từ các sự kiện đã có. Luật trong Rules có cấu trúc như sau:
{các sự kiện đã có} => {các sự kiện mới}
Danh sách các loại sự kiện được trình bày chi tiết trong mục 2.2.3.
Các luật trong tập Rules dùng để mô tả các định lý, quy tắt tính toán và suy diễn trong hóa vô cơ. Sau đây là 1 số ví dụ:
Luật về quan hệ tỉ khối hơi giữa 2 chất:
- { TyKhoiHoi[A,B,n]; determined(A.M)} => { A.M / B.M = n }
- { TyKhoiHoi[A,B,n]; determined(B.M)} => { A.M / B.M = n }
then { P.Products has {MnO2} }{istype(Metal, M), istype(Salt,S), IsMAbeforeMB(M,S[Metal])}
- if { P.Reactants has {KMnO4} and P[Reactants] has {OH-} } then { P.Products has {K2MnO4} }
3.2 Cách tổ chức lưu trữ
Để lưu trữ tri thức cho lĩnh vực Hóa vô cơ theo mô hình được trình bày ở trên, khóa luận này đưa ra 1 cách lưu trữ mới thay thế cho các cách cũ đã dùng trước đây. Cách mới này sẽ lưu trữ toàn bộ tri thức vào 1 tập tin mang tên Chemistry.KB có cấu trúc như sau:
CHEMISTRY Concepts
<danh sách các đối tượng trong tập C>
Hierarchical
<danh sách các đối tượng trong tập H>
Relations
<danh sách các đối tượng trong tập R>
Rules
<danh sách các đối tượng trong tập Rules>
3.2.1 Tập các khái niệm (C-Object)
Mỗi khái niệm được lưu trữ với cấu trúc:
<tên khái niệm>
attributes
<tên thuộc tính> : <kiểu thuộc tính>
facts
<danh sách các sự kiện>
formularelation
<danh sách các quan hệ tính toán>
dependformularelations
<danh sách các quan hệ tính toán phụ thuộc>
rules
Trong đó:
- Tên thuộc tính là các chuỗi kí tự liên tục không có khoảng trắng và kí tự đầu tiên phải in hoa
- Kiểu thuộc tính là tên kiểu đã được định nghĩa bởi ngôn ngữ lập trình (Maple) hoặc các kiểu đã được định nghĩa trước đó (mỗi khái niệm mới sẽ được định nghĩa là 1 kiểu dữ liệu mới)
- Mỗi sự kiện trong danh sách các sự kiện được trình bày thành từng hàng, mỗi sự kiện phải thuộc 10 trong 10 kiểu sự kiện đã được trình bày ở phần trên. - Các luật trong tập rules được viết dưới dạng
if {<danh sách các sự kiện cần có>} then {<danh sách các sự kiện thu được>}
Mẫu ví dụ về biểu diễn khái niệm Chất (SUBSTANCE): SUBSTANCE
attributes
Symbol : string# ký hiệu
Formula : TChemistryFormula # công thức hóa học