Ta có thể thấy rằng quan hệ Rx có thể được biểu diễn bởi mộtánh xạ fR,u,v với u ∪ v = x, và ta viết : fR,u,v : u → v, hay vắn tắt là f : u → v.Đối với các quan hệ dùng cho việc tính toán
Trang 1MỤC LỤC
- -MỤC LỤC 1
LỜI MỞ ĐẤU 3
NỘI DUNG 4
A.TÌM HIỂU BÊN TRONG MỘT HỆ CƠ SỞ TRI THỨC 4 I.H Ệ CƠ SỞ TRI THỨC ( KNOWLEDGE - BASED SYSTEMS ) 4 II C ẤU TRÚC CHUNG CỦA MỘT HỆ CSTT 4 III C Ơ SỞ TRI THỨC 5 V X ÂY DỰNG HỆ CSTT 5 1 Tổng quan quá trình xây dựng hệ CSTT 5
2 Một số buớc cơ bản để xây dựng hệ cơ sở tri thức 6
3 Cài đặt hệ CSTT bằng ngôn ngữ lập trình thông thuờng 6
I B IỂU DIỄN TRI THỨC BẰNG LUẬT DẪN ( LUẬT SINH ) 6 1.Khái niệm: 6
2 Biễu diễn tri thức dưới dạng luật dẫn 7
3 Lưu trữ và phân loại biến 8
4 Lưu trữ luật 9
5 Hàm kích hoạt luật 10
6 Cài đặt thuật toán suy diễn lùi 10
7 Cài đặt thuật toán suy diễn tiến 11
8 Vấn đề tối ưu luật 11
9.Ưu điểm và nhược điểm của biểu diễn tri thức bằng luật dẫn 13
II B IỂU DIỄN TRI THỨC BẰNG M ẠNG SUY DIỄN TÍNH TOÁN 13 1.Khái niệm: 13
2.Các quan hệ 13
3.Mạng tính toán và các kí hiệu 14
4.Bài toán trên mạng suy diễn tính toán 14
5.Ưu điểm & khuyết điểm của mạng suy diễn tính toán 15
III B IỂU DIỄN TRI THỨC BẰNG F RAME 15 1.Khái niệm: 15
2.Cấu trúc của Frame 16
IV.M Ô HÌNH COKB 17 1.Định nghĩa về mô hình COKB 17
2.Tổ chức cơ sở tri thức theo COKB 19
Sơ đồ tổ chức cơ sở tri thức 23
3.Ngôn ngữ đặc tả theo mô hình COKB: 23
C.ĐÁNH GIÁ ƯU ĐIỂM, KHUYẾT ĐIỂM CỦA CÁC MÔ HÌNH BIỂU DIỄN TRI THỨC 24
I.GIỚI THIỆU CHƯƠNG TRÌNH 26 II SỬ DỤNG CHƯƠNG TRÌNH 26 III CÁC CHỨC NĂNG CỦA CHƯƠNG TRÌNH: 29 D XÂY DỰNG CƠ SỞ TRI THỨC HỆ LUẬT DẪN “REVIEW TENSES” và “TEST” 29
Trang 2Bài Thu Hoạch Môn Biểu Diễn Tri Thức Và Ứng Dụng GVHD: PGS TS Đỗ Văn Nhơn
1 Tập sự kiện: Fact ={Thì (Simple Present) 29
II.T HÌ S IMPLE P AST 30 4.7-TRANG LINK: LIÊN KÉT VỚI CÁC TRANG WEB ĐỂ NGƯỜI HỌC CÓ THỂ HỌC VÀ TEST ONLINE 49
E.XÂY DỰNG CƠ SỞ TRI THỨC “HÌNH HỌC GIẢI TÍCH 2D” 49 I.Mô hình tri thức về Hình học giải tích hai chiều 49
II.Tổ chức lưu trữ 52
III.Mô hình bài toán 58
IV.Đặc tả bài toán 58
V.Thuật giải 59
VI Giao diện chương trình HÌNH HỌC GIẢI TÍCH 2D 62
KẾT LUẬN 71
TÀI LIỆU THAM KHẢO 72
Trang 3LỜI MỞ ĐẤU
- -Trong lịch sử phát triển của nền văn minh nhân loại, tri thức có vai trò rất quantrọng trong việc góp phần tạo nên mọi thành tựu và tiến bộ của xã hội Sự phongphú về thông tin, dữ liệu cùng với khả năng khai thác tri thức đã làm nền tảngthiết kế nên những chương trình phục vụ cho công tác quản lý, hoạt động kinhdoanh, phát triển sản xuất và các loại hình dịch vụ từ quảng cáo, thương mại,giáo dục, cho đến nhà đất, giao dịch bất động sản, ngân hàng… đạt hiệu quảngày càng cao hơn! Không những thế, việc ứng dụng Công nghệ thông tin đãchuyển sang một bước mới mà nội dung là trợ giúp con người nhiều hơn trongviệc tìm kiếm tri thức và trong các hoạt động trí tuệ, tức là chuyển đổi từ sự giàu
có thông tin thành sự giàu có tri thức, vận dụng tri thức để nâng cao giá trị cuộcsống
Hiện nay, nền kinh tế thế giới đang bước vào giai đoạn kinh tế tri thức Vì vậy,việc nâng cao hiệu quả chất lượng giáo dục - đào tạo sẽ là nhân tố quyết định
sự phát triển của mỗi quốc gia dẫn đến việc học tập không chỉ gói gọn trong việchọc phổ thông, học đại học mà là học suốt đời, học bắng bất cứ phương tiện,loại hình đào tạo nào có thể đem lại kết quả cao nhất cho người học
E-Learning chính là một giải pháp hữu hiệu giải quyết vấn đề này E-Learning
đã và đang trở thành xu thế tất yếu trong nền kinh tế tri thức Hình thức giáo dục điện
tử (E - education) và đào tạo từ xa (Distance Learning) gọi chung là E-Learning, dựa trên công cụ máy tính và môi trường Web ra đời như là một hình thức học tập mới đã mang đến cho người học một môi trường học tập hiệu quả với tinh thần tự giác và tích cực Hiệu quả của E-Learning đạt được cao hơn so với cách học truyền thống vì E-Learning
có tính tương tác cao dựa trên multimedia, tạo điều kiện cho người học trao đổi thông tin dễ dàng hơn, cũng như đưa ra nội dung học tập phù hợp với khả năng và sở thích của từng người Đặc biệt nhất, người học chủ động học bất cứ lúc nào có thời gian, mà không cần phải đến lớp
Từ những hiệu quả thiết thực đó, em đã vận dụng kiến thức môn học Biểudiễn tri thức và ứng dụng để thiết kế web “E-Learning_Grammar English” và “Hệ
hổ trợ giải toán Hình Học Giải Tích 2D” với mong muốn hiểu rõ thêm môn học và
có thể áp dụng chương trình này vào việc ôn tập, mở rộng nâng cao kiến thứccho các đối tượng người học
Thông qua bài thu hoạch, em xin gửi lời cảm ơn đến Phó Giáo sư - Tiến sỹ Đỗ Văn Nhơn Với kiến thức sâu rộng, sự nhiệt tình, cách giảng giải rõ ràng, sinh
động, thầy đã tận tâm truyền đạt những kiến thức nền tảng cơ bản cho chúng
em về môn học “Biểu Diễn Tri Thức Và Ứng dụng” giúp em thấy rõ ứng dụng
của môn học _ Việc biểu diễn tri thức, một hướng nghiên cứu mới đang phát triển mạnh hiện nay đang chi phối nhiều lĩnh vực khác trong cuộc sống là nhờ con người ứng dụng tri thức, trí tuệ để hướng tới nghiên cứu sáng tạo “các sản phẩm” không những giúp cho cuộc sống ngày càng tiện nghi mà còn giúp việc
mở mang kiến thức ngày càng hiệu quả hơn!
Trang 4NỘI DUNG
- -A. TÌM HIỂU BÊN TRONG MỘT HỆ CƠ SỞ TRI THỨC
I Hệ cơ sở tri thức (knowledge-based systems)
Có thể biểu diễn một hệ cơ sở tri thức như sau:
Hệ cơ sở tri thức = Cơ sở tri thức + Ðộng cơ suy diễn
Hệ giải toán = Tiên đề, định lý + Lập luận logic (toán học)
II Cấu trúc chung của một hệ CSTT
Kỹ sư khai thác tri thức (KE )
CHUYÊN GIA ĐỘNG CƠ SUY DIỄN
Trang 5III Cơ sở tri thức
V Xây dựng hệ CSTT
1 Tổng quan quá trình xây dựng hệ CSTT
Trang 62 Một số buớc cơ bản để xây dựng hệ cơ sở tri thức
- Tiếp cận chuyên gia
- Tổ chức thu thập tri thức
- Chọn lựa công cụ phát triển hệ cơ sở tri thức
+ Các ngôn ngữ lập trình trí tuệ nhân tạo (LISP, PROLOG, …)
+ Các ngôn ngữ lập trình thông dụng như C, C++, C#, VB, Java
+ Các hệ cở sở tri thức rỗng (shell): là một công cụ lai giữa hai loại trên
- Cài dặt hệ CSTT
3 Cài đặt hệ CSTT bằng ngôn ngữ lập trình thông thuờng
- Giả sử hệ CSTT của chúng ta hoạt động theo cây quyết định sau:
Hình 1
B CÁC MÔ HÌNH BIỂU DIỄN TRI THỨC
I Biểu diễn tri thức bằng luật dẫn (luật sinh)
1.Khái niệm:
Phương pháp biểu diễn tri thức bằng luật sinh đượ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 điều kiện & hành động: "NẾU điều kiện xảy ra THÌ
hành động sẽ được thi hành" Ví dụ: NẾU đèn giao thông là đỏ THÌ bạn khôngđược đi thẳng, NẾU máy tính đã mở mà không khởi động được THÌ kiểm tranguồn điện, v.v…
Ngày nay, các luật dẫn (luật sinh) đã trở nên phổ biến và được áp dụng rộngrãi trong nhiều hệ thống trí tuệ nhân tạo khác nhau Luật sinh có thể là một công
cụ mô tả để giải quyết các vấn đề thực tế thay cho các kiểu phân tích vấn đềtruyền thống Trong trường hợp này, các luật được dùng như là những chỉ dẫn(tuy có thể không hoàn chỉnh) nhưng rất hữu ích để trợ giúp cho các quyết địnhtrong quá trình tìm kiếm, từ đó làm giảm không gian tìm kiếm Một ví dụ khác là
Trang 7luật sinh có thể được dùng để bắt chước hành vi của những chuyên gia Theocách này, luật sinh không chỉ đơn thuần là một kiểu biểu diễn tri thức trong máytính mà là một kiểu biễu diễn các hành vi của con người
Một cách tổng quát luật sinh có dạng như sau:
P1∧ P2∧ ∧ Pn QTùy vào các vấn đề đang quan tâm mà luật sinh có những ngữ nghĩa hay cấutạo khác nhau:
- Trong logic vị từ: P1, P2, , Pn, Q là những biểu thức logic
- Trong ngôn ngữ lập trình, mỗi một luật sinh là một câu lệnh
IF (P1 AND P2 AND AND Pn) THEN Q
- Trong lý thuyết hiểu ngôn ngữ tự nhiên, mỗi luật sinh là một phép dịch:
f1 ^ f2 ^ ^ fi qTrong đó, các fi, q đều thuộc F
Ví dụ: Cho 1 cơ sở tri thức được xác định như sau :
2 Biễu diễn tri thức dưới dạng luật dẫn
Tập luật dẫn ban đầu được xây dựng từ cây quyết định Hình 1 (trang 6) như sau:
1 IF (KHOIDONG = DUOC) AND (IN = DUOC) THEN HONG = KHONG
2 IF (KHOIDONG = DUOC) AND (IN = KHONG) THEN HONG = IN
Trang 83 IF (KHOIDONG = KHONG) AND (THONGBAO = HDD)
THEN HONG = HDD
4 IF (KHOIDONG = KHONG) AND (THONGBAO = GENERAL)
THEN HONG = CMOS
5 IF (KHOIDONG = KHONG) AND (THONGBAO = KHONG) AND
(AMTHANH = CO) THEN HONG = RAM
6 IF (KHOIDONG = KHONG) AND (THONGBAO = KHONG) AND
(AMTHANH = KHONG) THEN HONG = UNKNOWN
Tập luật có thể viết lại như sau :
(không khởi động và không thông báo → KH_KDTB )
• IF (KHOIDONG = DUOC) AND (IN = DUOC) THEN HONG = KHONG
• IF (KHOIDONG = DUOC) AND (IN = KHONG) THEN HONG = IN
• IF (KHOIDONG = KHONG) AND (THONGBAO = HDD) THEN HONG = HDD
• IF (KHOIDONG = KHONG) AND (THONGBAO = GENERAL) THEN HONG = CMOS
• IF (KHOIDONG = KHONG) AND (THONGBAO=KHONG) THEN
KH_KDTB = DUNG
• IF (KH_KDTB = DUNG) AND (AMTHANH = CO) THEN HONG = RAM
• IF (KH_KDTB = DUNG) AND (AMTHANH = KHONG)
• THEN HONG = UNKNOWN
3 Lưu trữ và phân loại biến
Biến nhập: là các biến chỉ xuất hiện ở vế trái của các luật
Biến trung gian: là các biến xuất hiện ở cả vế trái lẫn vế phải ở các luật Biến xuất: các biến chỉ xuất hiện ở vế phải ở các luật
Trang 9Để mô tả vế trái của luật, ta dùng bảng Vế Trái với 3 cột như sau:
Sau đây là các ký hiệu :
<luật>.Chay: cho biết luật có cháy hay chưa
<luật>.VePhai.Bien: biến ở vế phải của luật
<luật>.VePhai.GiaTriChay: giá trị cháy ứng với biến ở
vế phải của luật
<luật>.VeTrai.SoBien: số lượng biến trong vế trái của luật
<luật>.VeTrai.Bien[i]: biến thứ i ở vế trái của luật
<luật>.VeTrai.GiaTriChay[i]: giá trị cháy ứng với biến thứ
i ở vế trái của luật
Trang 105 Hàm kích hoạt luật
FUNCTION KichHoatLuat(L: Luat): BOOLEAN
BEGIN
IF L.Chay = TRUE THEN
RETURN FALSE; { Luật đã cháy rồi, không kích hoạt được}
6 Cài đặt thuật toán suy diễn lùi
FUNCTION TinhGiaTriBien(V : Bien, L : Luat)
{ Tính giá trị của biến V trong trái của luật L}
BEGIN
IF (V.KhoiTao = TRUE) THEN RETURN;
ELSE BEGIN
IF V.Loai = INPUT THEN BEGIN
<Hỏi người dùng giá trị biến V>;
RETURN;
END;
ELSE BEGIN
FOR EACH LT IN TapLuat DO
IF (LT.VePhai = V) THEN BEGIN
FOR i = 1 TO LT.VeTrai.SoBien DO BEGIN
Để biết giá trị biến HONG, ta có thể thực hiện như sau :
{ Khởi động trạng thái ban đầu cho tập biến và tập luật }
V = HONG;
{ Luật 0 là một luật rỗng, dùng để "đệm" cho lần đệ quy đầu tiên, luôn cháy}
Trang 11TinhGiaTriBien(V, 0);
IF V.KhoiTao = FALSE THEN
<Không tính được giá trị biến>;
ELSE
<Hiển thị giá trị V>;
7 Cài đặt thuật toán suy diễn tiến
Thuật toán suy diễn tiến rất đơn giản Chẳng hạn, xuất phát từ ba trạng thái làKHOIDONG = KHONG, THONGBAO = KHONG, AMTHANH = CO ta có thể kếtluận được điều gì ?
<Cập nhật các trạng thái khởi tạo là TRUE và giá trị của các biến đã biết>;
CapNhat = TRUE;
LSET = TapLuat;
WHILE CapNhat DO BEGIN
CapNhap = FALSE;
IF KichHoatLuat(LT) = TRUE THEN BEGIN{Bỏ những luật đã cháy ra khỏi tập luật.}
LSET = LSET \ LT;
CapNhap = TRUE;
END;
END
Mục đích thường gặp của quá trình suy diễn tiến là xác định giá trị của tất
cả biến xuất Do đó, ta có thể xem đây là một trường hợp đặc biệt của suydiễn lùi
Như vậy, chỉ cần bỏ dòng <Hỏi người dùng giá trị biến V>;
Trong cài đặt ở phần suy diễn lùi là ta có thể dùng lại hàm TínhGiaTriBien để
cài đặt thuật toán suy diễn tiến như sau :
<Cập nhật các trạng thái khởi tạo là TRUE và giá trị của các biến nhập đã biết>;
TinhGiaTriBien(LT.VePhai.Bien,LT);
8 Vấn đề tối ưu luật
Tập các luật trong một cơ sở tri thức rất có khả năng thừa, trùng lắp hoặc mâu
thuẫn Dĩ nhiên là hệ thống có thể đổ lỗi cho người dùng về việc đưa vào hệ
thống những tri thức như vậy Tuy việc tối ưu một cơ sở tri thức về mặt tổng quát
là một thao tác khó (vì giữa các tri thức thường có quan hệ không tường minh),nhưng trong giới hạn cơ sở tri thức dưới dạng luật, ta vẫn có một số thuật toánđơn giản để loại bỏ các vấn đề này
Trang 12Quy tắc rút gọn: Có thể loại bỏ những sự kiện bên vế phải nếu những sự
kiện đó đã xuất hiện bên vế trái Nếu sau khi rút gọn mà vế phải trở thành rỗngthì luật đó là luật hiển nhiên Ta có thể loại bỏ các luật hiển nhiên ra khỏi tri thức
Với quy tắc này, ta có thể loại bỏ hoàn toàn các luật có phép nối HOẶC Các luật
có phép nối này thường làm cho thao tác xử lý trở nên phức tạp
8.4 Thuật toán tối ưu tập luật dẫn
Thuật toán này sẽ tối ưu hóa tập luật đã cho bằng cách loại đi các luật có phépnối HOẶC, các luật hiển nhiên hoặc các luật thừa
Thuật toán bao gồm các bước chính:
B1: Rút gọn vế phải
Với mỗi luật r trong R
Với mỗi sự kiện A ∈ Vế Phải(r)
Nếu A ∈ Vế Trái(r) thì Loại A ra khỏi vế phải của R
Nếu Vế Phải (r) rỗng thì loại bỏ r ra khỏi hệ luật dẫn: R = R \{r}
B2: Phân rã các luật
Với mỗi luật r: X1 ∨ X2 ∨ … ∨ Xn Y trong R
Với mỗi i từ 1 đến n R:= R + { Xi Y }
R:= R \ {r}
B3: Loại bỏ luật thừa
Với mỗi luật r thuộc R
Nếu Vế Phải(r) ∈ BaoĐóng(VếTrái(r), R-{r}) thì R := R \ {r}
B4: Rút gọn vế trái
Với mỗi luật dẫn r: X: A1 ∧A2, …, An Y thuộc R
Với mỗi sự kiện Ai∈ r
Trang 13Gọi luật r1 : X - Ai Y
S = (R - {r}) ∪{r1}
Nếu BaoĐóng (X - Ai , S) ≡ BaoĐóng (X, R) thì loại sự kiện A ra khỏi X
9 Ưu điểm và nhược điểm của biểu diễn tri thức bằng luật dẫn
Ưu điểm:
Biểu diễn tri thức bằng luật đặc biệt hữu hiệu trong những tình huống hệ thốngcần đưa ra những hành động dựa vào những sự kiện có thể quan sát được Nó
có những ưu điểm chính yếu sau đây:
Các luật rất dễ hiểu nên có thể dễ dàng dùng để trao đổi với người dùng(vì nó là một trong những dạng tự nhiên của ngôn 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
Việc hiệu chỉnh và bảo trì hệ thống là tương đối dễ dàng
Có thể cải tiến dễ dàng để tích hợp các luật mờ
Các luật thường ít phụ thuộc vào nhau
Nhược điểm:
Các tri thức phức tạp đôi lúc đòi hỏi quá nhiều (hàng ngàn) luật dẫn Điềunày sẽ làm nảy sinh nhiều vấn đề liên quan đến tốc độ lẫn quản trị hệthống
Thống kê cho thấy, người xây dựng hệ thống trí tuệ nhân tạo thích sửdụng luật dẫn hơn tất cả phương pháp khác (vì dễ hiểu, dễ cài đặt) nên họthường tìm mọi cách để biểu diễn tri thức bằng luật dẫn cho dù có phươngpháp khác thích hợp hơn! Đây là nhược điểm mang tính chủ quan của conngười
Cơ sở tri thức luật dẫn lớn sẽ làm giới hạn khả năng tìm kiếm của chươngtrình điều khiển Nhiều hệ thống gặp khó khăn trong việc đánh giá các hệdựa trên luật dẫn cũng như gặp khó khăn khi suy luận trên luật dẫn
II Biểu diễn tri thức bằng Mạng suy diễn tính toán
2 Các quan hệ
Cho M = {x1,x2, ,xm} là một tập hợp các biến có thể lấy giá trị trong các miềnxác định tương ứng D1,D2, ,Dm Đối với mỗi quan hệ R ⊆ D1xD2x xDm trên cáctập hợp D1,D2, ,Dm ta nói rằng quan hệ nầy liên kết các biến x1,x2, ,xm, và kýhiệu là R(x1,x2, ,xm) hay vắn tắt là R(x) (ký hiệu x dùng để chỉ bộ biến <
Trang 14x1,x2, ,xm >) Ta có thể thấy rằng quan hệ R(x) có thể được biểu diễn bởi mộtánh xạ fR,u,v với u ∪ v = x, và ta viết : fR,u,v : u → v, hay vắn tắt là f : u → v.
Đối với các quan hệ dùng cho việc tính toán, cách ký hiệu trên bao hàm ýnghĩa như là một hàm: ta có thể tính được giá trị của các biến thuộc v khi biếtđược giá trị của các biến thuộc u
Trong phần sau ta xét các quan hệ xác định bởi các hàm có dạng f : u → v,trong đó u ∩ v = ∅ (tập rỗng) Đặc biệt là các quan hệ đối xứng có hạng (rank)
bằng một số nguyên dương k Đó là các quan hệ mà ta có thể tính được k biếnbất kỳ từ m-k biến kia (ở đây x là bộ gồm m biến < x1,x2, ,xm >) Ngoài ra, trongtrường hợp cần nói rõ ta viết u(f) thay cho u, v(f) thay cho v Đối với các quan hệkhông phải là đối xứng có hạng k, không làm mất tính tổng quát, ta có thể giả sửquan hệ xác định duy nhất một hàm f với tập biến vào là u(f) và tập biến ra làv(f); ta gọi loại quan hệ nầy là quan hệ không đối xứng xác định một hàm, hay
gọi vắn tắt là quan hệ không đối xứng.
Ví dụ: quan hệ f giữa 3 góc A, B, C trong tam giác ABC cho bởi hệ thức:
4 Bài toán trên mạng suy diễn tính toán
Cho một mạng tính toán (M,F), M là tập các biến và F là tập các quan hệ Giả
sử có một tập biến A ⊆ M đã được xác định và B là một tập biến bất kỳ trong M
Các vấn đề đặt ra là:
Có thể xác định được tập B từ tập A nhờ các quan hệ trong F hay không?Nói cách khác, ta có thể tính được giá trị của các biến thuộc B với giả thiết
đã biết giá trị của các biến thuộc A hay không?
Nếu có thể xác định được B từ A thì quá trình tính toán giá trị của các biếnthuộc B như thế nào?
Trong trường hợp không thể xác định được B, thì cần cho thêm điều kiện
gì để có thể xác định được B
Bài toán xác định B từ A trên mạng tính toán (M,F) được viết dưới dạng:
A → B,
Trang 15trong đó A được gọi là giả thiết, B được gọi là mục tiêu tính toán của bài toán.
5 Ưu điểm & khuyết điểm của mạng suy diễn tính toán
Đối với các bài toán mà sử dụng nhiều các đối tượng tính toán bài toán trởnên phức tạp, việc giải quyết bài toán bằng mạng tính toán trở nên khókhăn cho người lập trình
III Biểu diễn tri thức bằng Frame
1 Khái niệm:
Frame là một cấu trúc dữ liệu chứa đựng tất cả những tri thức liên quan đếnmột đối tượng cụ thể nào đó Frames có liên hệ chặt chẽ đến khái niệm hướngđối tượng (thực ra frame là nguồn gốc của lập trình hướng đối tượng) Ngược lạivới các phương pháp biểu diễn tri thức đã được đề cập đến, frame "đóng gói"toàn bộ một đối tượng, tình huống hoặc cả một vấn đề phức tạp thành một thựcthể duy nhất có cấu trúc Một frame bao hàm trong nó một khối lượng tương đốilớn tri thức về một đối tượng, sự kiện, vị trí, tình huống hoặc những yếu tố khác
Do đó, frame có thể giúp ta mô tả khá chi tiết một đối tượng
Dưới một khía cạnh nào đó, người ta có thể xem phương pháp biểu diễn trithức bằng frame chính là nguồn gốc của ngôn ngữ lập trình hướng đối tượng Ý
tưởng của phương pháp này là "thay vì bắt người dùng sử dụng các công cụ phụ như dao mở để đồ hộp, ngày nay các hãng sản xuất đồ hộp thường gắn kèm các nắp mở đồ hộp ngay bên trên vỏ lon Như vậy, người dùng sẽ không bao giờ phải lo lắng đến việc tìm một thiết bị để mở đồ hộp nữa!" Cũng vậy, ý
tưởng chính của frame (hay của phương pháp lập trình hướng đối tượng) là khibiểu diễn một tri thức, ta sẽ "gắn kèm" những thao tác thường gặp trên tri thức
này Chẳng hạn như khi mô tả khái niệm về hình chữ nhật, ta sẽ gắn kèm cách tính chu vi, diện tích
Frame thường được dùng để biểu diễn những tri thức "chuẩn" hoặc những trithức được xây dựng dựa trên những kinh nghiệm hoặc các đặc điểm đã đượchiểu biết cặn kẽ Bộ não của con người chúng ta vẫn luôn "lưu trữ" rất nhiều cáctri thức chung mà khi cần, chúng ta có thể "lấy ra" để vận dụng nó trong nhữngvấn đề cần phải giải quyết Frame là một công cụ thích hợp để biểu diễn nhữngkiểu tri thức này
Trang 16Hình 1: Cấu trúc một Frame xe hơi
2 Cấu trúc của Frame
Mỗi một frame mô tả một đối tượng (object) Một frame bao gồm 2 thành phần
cơ bản là slot và facet Một slot là một thuộc tính đặc tả đối tượng được biểu
diễn bởi frame Ví dụ: trong frame mô tả xe hơi, có hai slot là trọng lượng và loại máy
Mỗi slot có thể chứa một hoặc nhiều facet Các facet (đôi lúc được gọi là slot
"con") đặc tả một số thông tin hoặc thủ tục liên quan đến thuộc tính được mô tảbởi slot Facet có nhiều loại khác nhau, sau đây là một số facet thường gặp
- Value (giá trị): cho biết giá trị của thuộc tính đó (như xanh, đỏ, tím vàng
nếu slot là màu xe)
- Default (giá trị mặc định): hệ thống sẽ tự động sử dụng giá trị trong facet
này nếu slot là rỗng (nghĩa là chẳng có đặc tả nào!) Chẳng hạn trong
frame về xe, xét slot về số lượng bánh Slot này sẽ có giá trị 4 Nghĩa là,
mặc định một chiếc xe hơi sẽ có 4 bánh!
- Range (miền giá trị): (tương tự như kiểu biến), cho biết giá trị slot có thể
nhận những loại giá trị gì (như số nguyên, số thực, chữ cái, )
- If added: mô tả một hành động sẽ được thi hành khi một giá trị trong slot
được thêm vào (hoặc được hiệu chỉnh) Thủ tục thường được viết dướidạng một script
- If needed: được sử dụng khi slot không có giá trị nào Facet mô tả một
hàm để tính ra giá trị của slot
Trang 17Hình 2: Quan hệ giữa các đối tượng hình học phẳng
IV Mô hình COKB
1 Định nghĩa về mô hình COKB
Mô hình biểu diễn tri thức COKB (Computational Objects Knowledge Base) là
một mô hình tri thức của các đối tượng tính toán Mô hình COKB là một hệ thốnggồm 6 thành phần chính được ký hiệu bởi bộ 6 như sau:
(C,H,R,Opts, Funcs, Rules)
- Tập hợp C (các khái niệm về các C_Object):
Các khái niệm được xây dựng dựa trên các đối tượng Mỗi khái niệm là mộtlớp các đối tượng tính toán có cấu trúc nhất định và được phân cấp theo sự thiếtlập của cấu trúc đối tượng, bao gồm:
- Các đối tượng (hay khái niệm) nền: là các đối tượng (hay khái niệm)
được mặc nhiên thừa nhận Ví dụ: như một số đối tượng kiểu boolean(logic), số tự nhiên (natural), số nguyên (integer), số thực (real), tập hợp(set), danh sách (list) hay một số kiểu tự định nghĩa
- Các đối tượng cơ bản (hay khái niệm) cơ bản cấp 0: có cấu trúc rỗng
hoặc có cấu trúc thiết lập trên một số thuộc tính kiểu khái niệm nền: Cácđối tượng(hay khái niệm) này làm nền cho các đối tượng(hay các kháiniệm) cấp cao hơn Ví dụ: đối tượng DIEM có kiểu mô tả không có cấutrúc thiết lập
- Các đối tượng (hay khái niệm) cấp 1: Các đối tượng này chỉ có các
thuộc tính kiểu khái niệm nền và có thể được thiết lập trên một danh sáchnền các đối tượng cơ bản Ví dụ: đối tượng DOAN[A,B] trong đó A, B làcác đối tượng cơ bản loại DIEM, thuộc tính a biểu thị độ dài đoạn thẳng cókiểu tương ứng là “real”
- Các đối tượng (hay khái niệm) cấp 2: Các đối tượng này có các thuộc
tính kiểu khái niệm nền và các thuộc tính loại đối tượng cấp 1, có thể đượcthiết lập trên một danh sách nền các đối tượng cơ bản Ví dụ: đối tượngTAMGIAC[A,B,C] trong đó A, B, C là các đối tượng cơ bản loại DIEM, các
Trang 18thuộc tính như GocA, a, S có kiểu tương ứng là “GOC[C,A,B]”,
“DOAN[B,C]”, “real”
- Các đối tượng (hay khái niệm) cấp n >0: Các đối tượng này có các
thuộc tính kiểu khái niệm nền và các thuộc tính loại đối tượng cấp thấphơn, có thể được thiết lập trên một danh sách nền các đối tượng cấp thấphơn
Cấu trúc bên trong của mỗi lớp đối tượng:
- Kiểu đối tượng: Kiểu này có thể là kiểu thiết lập trên một danh sách nềncác đối tượng cấp thấp hơn
- Danh sách các thuộc tính của đối tượng: Mỗi thuộc tính có kiểu thực, kiểuđối tượng cơ bản hay kiểu đối tượng cấp thấp hơn Phân ra làm 2 loại làtập các thuộc tính thiết lập của đối tượng và tập các thuộc tính khác (còngọi là tập thuộc tính)
- 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 hay sự kiện vốn có liên quan đến các thuộctính của đối tượng
- Tập hợp các quan hệ suy diễn - tính toán trên các thuộc tính của đốitượng Các quan hệ này thể hiện các luật suy diễn và cho phép ta có thểtính toán một hay một số thuộc tính từ các thuộc tính khác của đối tượng
- Tập hợp các luật suy diễn trên các loại sự kiện khác nhau liên quan đếncác thuộc tính của đối tượng hay bản thân đối tượng Mỗi 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ô hình cho một đối tượng tính toán (C-Object)
Một C-Object có thể được mô hình hóa bởi một bộ 6 thành phần chính:
(BasicO,Attrs, CRela, Rules, Prop,Cons)
Trong đó:
- BasicO: là tập hợp các đối tượng nền của một đối tượng
- Attrs: là tập hợp các thuộc tính của đối tượng
- CRela: là tập hợp các quan hệ suy diễn tính toán
- 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
- Prop: là tập hợp các tính chất hay sự kiện vốn có của đối tượng
- Cons: là tập hợp các điều kiện ràng buộc
Tập hợp H (các quan hệ phân cấp giữa các đối tượng)
Trong tập C, ta có các quan hệ mà theo đó có thể có những khái niệm là sựđặc biệt hoá của những khái niệm khác Có thể nói, H là một biểu đồ Hasse trên
C khi xem quan hệ phân cấp là một quan hệ thứ tự trên C
Cấu trúc của một quan hệ phân cấp:
[<tên lớp đối tượng cấp cao>, <tên lớp đối tượng cấp thấp> ]
Tập hợp R các khái niệm về 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à danh sách các loại đối tượngcủa quan hệ Đối với quan hệ 2 hay 3 ngôi thì quan hệ có thể có các tính chấtnhư tính phản xạ, tính phản xứng, tính đối xứng và tính bắc cầu
Cấu trúc của một quan hệ:
[ < tên quan hệ > , < loại đối tượng > , < loại đối tượng > ,…] , {< tính chất
> , < tính chất >}
Trang 19Tập hợp Opts các toán tử
Các toán tử thể hiện các qui tắc tính toán nhất định trên các biến thực cũngnhư trên các đối tượng Chẳng hạn như các phép toán số học, các phép tínhtoán trên các đối tượng đoạn, góc tương tự như đối với các biến thực hay cácphép tính toán vecto, tính toán ma trận,… Trong trường hợp các phép toán 2ngôi thì phép toán có thể có các tính chất như tính giao hoán, tính kết hợp,tínhnghịch đảo, tính trung hoà
Tập hợp Funcs các hàm
Tập hợp Funcs trong mô hình COKB thể hiện tri thức về các hàm hay nói cáchkhác là thể hiện tri thức về các khái niệm và các qui tắc tính toán trên các biếnthực cũng như trên các loại C-Object, được xây dựng thông qua các quan hệ tínhtoán dạng hàm Mỗi hàm được xác định bởi <tên hàm>, danh sách các đối số vàmột qui tắc định nghĩa hàm về phương diện toán học
Tập hợp Rules các luật
Mỗi luật cho ta một qui tắc suy luận để từ các sự kiện đang biết suy ra đượccác sự kiện mới thông qua việc áp dụng các định luật, định lý hay các qui tắc tínhtoán nào đó Mỗi luật suy diễn r có thể được mô hình hoá dưới dạng :
r : {sk 1 , sk 2 , , sk m } ⇒ {sk m+1 , sk m+2 , , sk n }.
Cấu trúc của một luật:
[ Kind, BasicO, Hypos, Goals]
Trong đó:
Kind: loại luật
BaseO: tập các đối tượng cơ bản
Hypos: tập các sự kiện giả thiết của một luật
Goals: tập các sự kiện kết luận của một luật
2 Tổ chức cơ sở tri thức theo COKB
Cơ sở tri thức được tổ chức bởi một hệ thống tập tin văn bản có cấu trúc dựatrên một số từ khoá và qui ước về cú pháp, thể hiện các thành phần trong môhình tri thức COKB Hệ thống này bao gồm các tập tin như sau:
- Tập tin OBJECT.txt : Lưu trữ tất cả các khái niệm đối tượng của cơ sở tri
thức
- Tập tin HIERARCHY.txt: Lưu lại các biểu đồ Hasse thể hiện quan hệ phân
cấp đặc biệt hoá giữa các loại đối tượng C-Object
- Tập tin RELATIONS.txt: Lưu trữ tất cả các quan hệ cũng như các tính
chất giữa các loại đối tượng C-Object
- Tập tin OPERATORS.txt: lưu trữ các thông tin, cơ sở tri thức của thành
phần toán tử trên các đối tượng C-Object
- Tập tin OPERATORS_DEF.txt: Lưu trữ định nghĩa về các loại toán tử hay
định nghĩa của các thủ tục tính toán phục vụ toán tử
- Tập tin RULES.txt: Lưu trữ các hệ luật trên các loại đối tượng và các sự
kiện trong cơ sở tri thức
- Tập tin FUNCTIONS.txt: Lưu trữ cách khai báo hàm, thông tin về hảm trên
các C-Object
- Tập tin FUNCTIONS_DEF.txt: Lưu trữ định nghĩa về các hàm trên các đối
tượng và các sự kiện
- Các tập tin có tên <tên các C-OBJECT>.txt: Lưu trữ cấu trúc của đối
tượng <tên khái niệm C-Object>
Trang 20Cấu trúc của các tập tin lưu trữ các thành phần trong mô hình COKB
Cấu trúc tập tin “OBJECTS.txt”
begin_objects
<tên loại đối tượng 2>
end_objects
-Cấu trúc tập tin “RELATIONS.txt”
[<tên lớp đối tượng cấp cao>,<tên lớp đối tượng cấp thấp>]
[<tên lớp đối tượng cấp cao>,<tên lớp đối tượng cấp thấp>]
end_hierarchy
-Cấu trúc tập tin “OPERATORS.txt”
-Cấu trúc tập tin “OPERATORS_DEF.txt”
begin_operators_def
begin_define_operator: <toán tử 1(ký hiệu)>(<toán hạng 1>,<toán hạng
2 >,…)
<các tên toán hạng > : <kiểu toán hạng>
<các tên toán hạng > : <kiểu toán hạng>
return <kiểu đối tượng trả về>
Trang 21<kiểu trả về của hàm 2> <tên hàm 2>(<loại của đối số 2>,….) {tínhchất của hàm}
end_functions
-Cấu trúc tập tin “<FUNCTIONS_DEF.txt>”
begin_functions begin_function 1: <tên hàm>(<đối số 1>,….)
<các tên đối số > : <kiểu của đối số>
<các tên đối số > : <kiểu của đối số>
result <đối tượng>: kiểu của đối tượng trả về
kind_rule = “<loại luật>”
<các tên đối tượng > : <kiểu đối tượng>;
<các tên đối tượng > : <kiểu đối tượng>;
Cấu trúc tập tin “<Tên khái niệm C-Object>.txt”
begin_object: <tên khái niệm C-Object>[<đối tượng nền 1>,<đối tượngnền 2>,…]
<các đối tượng nền> : <kiểu đối tượng>
<các đối tượng nền> : <kiểu đối tượng>
Trang 22
<các tên thuộc tính > : <kiểu thuộc tính>
<các tên thuộc tính> : <kiểu thuộc tính>
-end_variables
begin_constraints
-end_constraints
begin_construct_relations
<sự kiện quan hệ thiết lập>
<sự kiện quan hệ thiết lập>
<các tên đối tượng > : <kiểu đối tượng>;
<các tên đối tượng > : <kiểu đối tượng>;
Trang 23Sơ đồ tổ chức cơ sở tri thức
Mối liên hệ về cấu trúc thông tin trong cơ sở tri thức có thể được minh hoạ trên
sơ đồ sau đây:
Hình 3: Sơ đồ tổ chức theo mô hình COKB
3 Ngôn ngữ đặc tả theo mô hình COKB:
Ngôn ngữ đặc tả theo mô hình COKB được xây dựng để biểu diễn cho các trithức có dạng COKB Ngôn ngữ này bao gồm các thành phần :
- Cú pháp quy định cho các thành phần của mô hình COKB
Một số cấu trúc của các định nghĩa cho các biểu thức, C-Object,relations, facts
và functions
Mô hình bài toán
Dựa trên việc nghiên cứu các bài toán cụ thể ta có thể đề xuất mô hình bàitoán tổng quát trên mô hình tri thức COKB gồm các thành phần như sau:
(O, M, F, Facts, FFacts), Goal
Trong đó:
O là tập các đối tượng tính toán trong bài toán,
M là tập các thuộc tính của các đối tượng được đề cập tới trong bài toán,
F là tập các hàm được đề cập trong bài toán,
Facts là tập các sự kiện thuộc 6 lọai [1]-[6], và
FFacts là tập các sự kiện thuộc các lọai khác liên quan đến tri thức hàm
Goal là mục tiêu hay yêu cầu của bài toán
Trang 24Ví dụ : Xét bài toán sau đây: Cho đường thẳng (d): x + 2y - 7 = 0.
a Xác định A, B là giao điểm của Ox, Oy với (d)
b Tìm toạ độ hình chiếu H của gốc O lên (d)
c Viết phương trình (d’) đối xứng với (d) qua O
Bài toán có thể được mô hình hóa theo mô hình trên như sau:
O:= {d: đường thẳng, Ox: đường thẳng, Oy: đường thẳng, A: điểm,
B: điểm, O: điểm, H: điểm, d’: đường thẳng } M:= {d.ptdt, Ox.ptdt, Oy.ptdt, H.x, H.y}
F:= {GiaoĐiểm(đường thẳng, đường thẳng), HìnhChiếu(điểm, đường thẳng),
ĐốiXứng(đường thẳng, điểm)}
Fact : = { d.ptdt: 3x + 4y -12 =0, Ox.ptdt: y=0, Oy.ptdt: x = 0, O(0,0)}
FFacts:= { A = GiaoĐiểm(d, Ox),
B = GiaoĐiểm (d, Oy),
H = HìnhChiếu (O,d), d’ = ĐốiXứng (d, O)}
Rất khó theo dõi sựphân cấp, không hiệuquả trong những hệthống lớn, không thểbiểu diễn được mọi loạitri thức, rất yếu trongviệc biểu diễn các trithức dạng mô tả, có cấutrúc
Trang 25Mạng tính
toán
Giải được hầu hết các bài toán GT
KL nếu như đáp ứng đầy đủ cácgiả thiết cần thiết
Thuật toán đơn giản dễ cài đặt chonên việc bảo trì hệ thống tương đốiđơn giản
Có thể xây dựng hệ thống suy luận
và giải thích một cách rõ ràng và
dễ hiểu
Không giải được các trithức phức tạp, lưu trữkhó khăn và nhậpnhằng khi quản lý
Đồng thời việc xây dựnglại thuật toán là một việctương đối khó khăn bảo trì lại toàn bộ hệthống
Frame
Có sức mạnh diễn đạt tốt, dễ càiđặt các thuộc tính cho các slotcũng như các mối liên hệ, dễ dàngtạo ra các thủ tục chuyên biệt hóa,
dễ đưa vào các thông tin mặc định
và dễ thực hiện các thao tác pháthiện các giá trị bị thiếu sót
Khó lập trình, khó suydiễn, thiếu phần mềm
hỗ trợ
COKB
Cấu trúc tường minh giúp dễ dàngthiết kế các môđun truy cập cơ sởtri thức
Thích hợp cho việc thiết kế một cơ
sở tri thức với các khái niệm có thểđược biểu diễn bởi các đối tượngtính toán
Tiện lợi cho việc thiết kế cácmôđun giải bài toán tự động
Thích hợp cho việc định dạng ramột ngôn ngữ khai báo bài toán vàđặc tả bài toán một cách tự nhiên
Với những ưu điểm trên mô hìnhCOKB là mô hình lý tưởng để biểudiễn tri thức thay thế cho các môhình biểu diễn tri thức thôngthường Ngoài ra, với sự hỗ trợ củacông cụ Maple phần mềm đại sốtính toán là ngôn ngữ lập trìnhchính đã hỗ trợ một phần rất lớncho mô hình COKB Và dựa vào
mô hình COKB được trình bày ởtrên sẽ là nền tảng để xây dựngcho đề tài sẽ được trình bày vàochương tiếp theo
Bảng 6: Bảng liệt kê các ưu khuyết của các phương pháp biễu diễn tri thức
GRAMMAR ENGLISH
Trang 26I GIỚI THIỆU CHƯƠNG TRÌNH
Chương trình “GRAMMAR ENGLISH” được viết bằng ngôn ngữ VBA (Visual
Basic For Application), trên cơ sở lý thuyết “Ứng dụng các lập luận suy diễn từ
Hệ Cơ Sở Tri Thức Kết Hợp các luật dẫn để xây dựng tập luật cho chương trình”.
Chương trình “HÌNH HỌC GIẢI TÍCH 2D” được viết bằng C# và kết nối với
Maple trên cơ sở lý thuyết mô hình “COKB” Sau đó link cả 2 chương trình vào
Web E-LEARNING HỖ TRỢ HỌC TIẾNG ANH VÀ TOÁN (viết bằng Flash vàcode Java Script) với mục đích làm cho chương trình có giao diện sinh động,người học dễ sử dụng tại nhà hay đưa lên mạng nội bộ của các phòng Lab hayMultimedia của các trường dễ dàng
II SỬ DỤNG CHƯƠNG TRÌNH
Cách 1: Mở thư mục NGUYENTHIKIMPHUONG-CH1101031-WEB HO TRO HOC TIENG ANH VA TOAN thư mục WEB-AV thư mục MAIN
thư mục HTML, nhấp phải lên tập tin index.html chọn Open with
chọn Internet Explorer (Lưu ý: nếu mở bằng Firefox hay GoogleChrome, một số hiệu ứng của JavaScript như bông tuyết rơi, sao rơi, hoa
và lá thu rơi , bắn pháo hoa sẽ bị chặn lại không nhìn thấy)
Hay có thể nhấp phải lên shortcut index.htm chọn Open with chọn Internet Explorer.
Chọn tiếp Allow blocked content
- Click vào các hyperlink, để xem các đề mục theo yêu cầu
Trang 27- Để mở chương trình chính “English Grammar Review” , Click vào
hyperlink trên trang Web, chọn tiếp Open
Trang 28Lưu ý: Khi cần duyệt Web, Click vào các địa chỉ trang Web và click chọn Yes hay Run trên hộp thoại, Chọn tiếp Allow blocked content nếu có thông báo,
để tiếp tục duyệt trang Web yêu cầu
Cách 2: Mở thư mục NGUYENTHIKIMPHUONG-CH1101031-WEB HO TRO
HOC TIENG ANH VA TOAN, Double Click vào tập tin Grammar Review, Click vào các option theo yêu cầu hay Click tại hyperlink WEB-
AV\MAIN\HTML\INDEX.html để mở trang Web và chọn học các chương trình
nâng cao kiến thức (TOEIC,TOEF, ADVANCED GRAMMAR ) hay luyện các kỷnăng nghe, nói, đọc, viết theo yêu cầu
Lưu ý: Nên duyệt Web bằng Internet Explorer, nếu duyệt web bằng FireFox hay
Google Chrome, một số hiệu ứng của JavaScript sẽ bị chặn lại
Khi mở các trang Web, nếu có thông báo
Click chọn Allow blocked content trên hộp thoại để có thể thực thi các hiệu ứng của JavaScript (hoa nở,
tuyết, sao rơi, lá thu rơi, chuột đổi màu, bắn pháo hoa, đồng hồ hiện giờ theo hệthống máy tính….)
Trang 29III CÁC CHỨC NĂNG CỦA CHƯƠNG TRÌNH:
Gồm 3 chức năng chính tương ứng với 3 tùy chọn:
1 Review Tenses (Ôn tập 12 thì cơ bản trong Tiếng Anh)
2 Input Questions (Nhập các câu hỏi trắc nghiệm vào hệ thống ngân
hàng câu hỏi trắc nghiệm)
3 Test (Học viên tự kiểm tra và đánh giá kiến thức bằng cách làm toàn bộ
câu hỏi trắc nghiệm hay chọn câu hỏi trắc nghiệm theo số câu đượcchọn ngẫu nhiên)
D XÂY DỰNG CƠ SỞ TRI THỨC HỆ LUẬT DẪN “REVIEW TENSES” và
“TEST”
Cơ sở tri thức “REVIEW TENSES” được xây dựng gồm tập Fact từ 4 sự
kiện: Thì(Tense), Dạng câu (Affirmative – Khẳng định); (Negative – Phủ
định); (Interrogative/Question – Nghi vấn), Chủ từ (subject), Động từ (verb) – và tập luật Structure (Cấu trúc câu –hay viết tắt CT)
Fact={Thì, Dạng câu, Chủ từ, Động từ)
Rule={R1,R2, ……,Rn} (với Rule là Cấu trúc câu của mổi thì)
I.Thì Simple Prsent
1 Tập sự kiện: Fact ={Thì (Simple Present)
Dạng khẳng định (Affirmative) Subject (I,He/She/It,We/You/They) Verb (am/is/are, infinitive) (verb là động từ to be hay động từ
thường)}
Tập luật Rule=
{R1: Nếu (S là I và V là động từ To Be) thì (CT=I+am)
R2: Nếu (S là He/She/It và V là động từ To Be) thì (CT= He/She/It+is)
R3: Nếu (S là We/You/They và V là động từ To Be) thì (CT= We/You/They + are)
R4: Nếu (S là I/You/We/They và V là động từ thường) thì (CT= I/We/You/They+ V bare infinitive)
R5: Nếu (S là He/She/It và V là động từ thường) thì (CT= He/She/It +Verb + s/es )}
Ta có R={R1, R2, R3, R4, R5}
2 Tập sự kiện: Fact = {Thì (Simple Present)
Dạng phủ định (Negative) Subject (I,He/She/It,We/You/They) Verb (am/is/are, infinitive) (verb là động từ to be hay động từ
Trang 30Tập luật Rule=
{R1: Nếu (S là I và V là động từ To Be) thì (CT= I + am not)
R2: Nếu (S là He/She/It và V là động từ To Be) thì (CT= He/She/It + is not) R3: Nếu (S là We/You/They và V là động từ To Be) thì (CT= We/You/They + are not)
R4: Nếu (S là I/You/We/They và V là động từ thường) thì (CT= I/We/You/They+ do not + V bare infinitive)
R5: Nếu (S là He/She/It và V là động từ thường) thì (CT= He/She/It + does not + Verb bare infinitive )}
Hay viết dưới dạng tập hợp R={R1, R2, R3, R4, R5}
3 Tập sự kiện: Fact={Thì (Simple Present)
Dạng nghi vấn (Question) Subject (I,He/She/It,We/You/They) Verb (am/is/are, infinitive) (verb là động từ to be hay động từ
thường)
Tập luật Rule=
{R1: Nếu (S là I hay You và V là động từ To Be) thì (CT= Are you…?)
R2: Nếu (S là He/She/It và V là động từ To Be) thì (CT= Is + He/She/It… ?)R3: Nếu (S là We/They và V là động từ To Be) thì (CT= Are + You/They….? R4: Nếu (S là I/You/We/They và V là động từ thường) thì (CT= Do +
You/They + V bare infinitive?)
R5: Nếu (S là He/She/It và V là động từ thường) thì (CT= Does He/She/It + Verb bare infinitive? )}
Hay viết dưới dạng tập hợp ta có R={R1, R2, R3, R4, R5}
II.Thì Simple Past
1.Tập sự kiện: Fact={Thì (Simple Past)
Dạng khẳng định (Affirmative) Subject (I,He/She/It,We/You/They)
Trang 31Verb (was/were, infinitive regular or irregular ) (verb là động từ to
be hay động từ thường có quy tắc hay bất quy tắc) }
Tập luật Rule=
{R1: Nếu (S là I/He/She/It và V là động từ To Be) thì (CT=I/He/She/It + was) R2: Nếu (S là We/You/They và V là động từ To Be) thì (CT= We/You/They + were)
R3: Nếu (S là I/ / You/We/They và V là động từ thường có quy tắc) thì (CT= I/ He/She/It We/You/They + V bare infinitive + (ed))
R4: Nếu (S là I/ He/She/It/ You/We/They và V là động từ thường bất quy tắc)
thì (CT= I/ He/She/It We/You/They + V cột 2 trong bảng động từ bất quy tắc)}
Hay viết dưới dạng tập hợp ta có R={R1, R2, R3, R4}
2.Tập sự kiện: Fact={Thì (Simple Past)
Dạng phủ định (Negative) Subject (I,He/She/It,We/You/They) Verb (was/were, regular infinitive) (verb là động từ to be hay
Hay viết dưới dạng tập hợp ta có R={R1, R2, R3}
3.Tập sự kiện: Fact={Thì (Simple Past)
Dạng nghi vấn (Question) Subject (I,He/She/It,We/You/They) Verb (was/were, infinitive) (verb là động từ to be hay động từ
Trang 32R3: Nếu (S là I/ He/She/It /You/We/They và V là động từ thường) thì (CT= Did + He/She/It You/They + V bare infinitive?)}
Hay viết dưới dạng tập hợp ta có R={R1, R2, R3}
Tương tự ta biểu diễn tri thức cho 10 thì còn lại.
Cơ sở tri thức “TEST” – Để tính điểm cho bài thi Trắc nghiệm, ta xây dựng
tập Fact gồm 2 sự kiện: tổng số câu và tổng số điểm và tập luật Structure
Hay viết dưới dạng tập hợp ta có R={R1, R2, R3}
Khi mở chương trình chính “Grammar English”, Click chọn các option trên
MAINFORM để chọn các đề mục ôn tập hay kiểm tra theo yêu cầu người dùng
R1
R2
R3
Trang 331 Giới thiệu Form Review Tense
Clich chọn Review Tenses để mở Form ôn tập 12 thì trong Tiếng Anh
Trang 36Khi cần ôn tập thì nào, click chọn vào option theo yêu cầu, Ví dụ: Chọn Future Perfect Tense.