ạ ọ
ố
Đ i H c Qu c Gia TP.HCM
ạ ọ
ệ
Đ i H c Công Ngh Thông Tin
BÁO CÁO CHUYÊN ĐỀ
Ứ
Ụ
Ể
Ễ
Ứ BI U DI N TRI TH C VÀ NG D NG
Ề
Đ TÀI:
Ứ
Ụ
MÔ HÌNH COKB VÀ NG D NG VÀO
Ọ
Ả
GI I TOÁN HÌNH H C
Ơ
ự ệ ầ ố i th c hi n: Mã s : CH1301082
GVHD: ườ Ng L p: ớ Ỗ PGS.TS. Đ VĂN NH N ố ườ Tr n Qu c C ng ọ Cao h c khóa 8
NHA TRANG – 2014
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
Ụ
Ụ
M C L C
Ụ
Ụ
1 M C L C ................................................................................................................................
Ầ 3 PH N 1.MÔ HÌNH COKB .....................................................................................................
ề ố ượ ệ Khái ni m v đ i t 3 ng tính toán COKB ................................................................
ứ ề ố ượ Mô hình tri th c v các đ i t 5 ng tính toán .............................................................
ổ ứ ơ ở ứ T ch c c s tri th c COKB 10 ................................................................................
ả ố ượ Gi i toán trên đ i t 11 ng tính toán ..........................................................................
Ọ
Ẳ
Ụ
Ả
Ầ
15 PH N 2: ÁP D NG MÔ HÌNH COKB GI I TOÁN HÌNH H C PH NG ..................
ớ I.Gi ệ i thi u 15 ..............................................................................................................
ế ế ệ ơ ở ứ ứ ề ẳ ọ Thi 15 t k h c s tri th c cho mi n tri th c hình h c ph ng ...............................
ế ế ộ ễ ự ộ ủ ươ Thi t k b suy di n t đ ng c a ch ng trình 17 ...................................................
Ọ
Ẳ
Ứ
Ụ
Ậ
Ả
Ầ
19 PH N 3: L P TRÌNH NG D NG COKB GI I TOÁN HÌNH H C PH NG ..........
ớ I.Gi ệ i thi u: 19 .............................................................................................................
ạ ọ II.T o package đ c File: 19 .........................................................................................
ử ủ ươ III.Code x lý chính c a ch 22 ng trình: ...................................................................
ả ươ ế IV.K t qu ch 28 ng trình: .......................................................................................
ẫ ử ụ ướ ươ V.H ng d n s d ng ch 29 ng trình: .....................................................................
Ế
Ậ
31 K T LU N .............................................................................................................................
Ả
Ệ
TÀI LI U THAM KH O
33 .....................................................................................................
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 1
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
Ờ Ở Ầ L I M Đ U
ọ ề ề ạ ươ ể ể ễ ệ Trong khoa h c v 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. Bên c nh đó, các ph ễ ng pháp suy di n cũng đóng
ệ ơ ở ứ ư ữ ọ ộ ươ m t vai trò quan tr ng trong các h c s tri th 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 ườ Trong th c t i. , 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. Mô hình m u COKB, m t h ộ ướ ng
ế ệ ậ ượ ứ ứ ể ả ạ ti p c n hi n đ i, đã và đang đ ụ c nghiên c u phát tri n do kh năng ng d ng
ứ ệ ể ễ ể ử ụ ủ c a nó trong vi c bi u di n các tri th c. Mô hình COKB là mô hình có th s d ng
ệ ệ ả ế ế ệ ơ ở ứ ư ạ ấ r t hi u qu trong vi c thi ề ứ t k các h c s tri th c ph c t p, nh các mi n
ứ ề ọ ả tri th c v Hình h c, Gi ậ i tích, V t lý…
ủ ẽ ệ ề ạ ạ ỏ Trong ph m vi c a bài thu ho ch nh này, em s trình bày khái ni m v mô hình
ừ ứ ụ ự ệ ươ ả COKB t đó ng d ng mô hình này trong vi c xây d ng ch ng trình gi i toán
ẳ ấ ọ hình h c ph ng c p THCS.
ượ ử ờ ả ơ ỹ ỗ ư ế ế Qua đây, em cũng xin đ c g i l i c m n đ n Phó Giáo S Ti n s Đ Văn
ơ ườ ứ ề ả ơ ả ữ ề ạ ậ Nh n , ng ế i đã t n tâm truy n đ t nh ng ki n th c n n t ng c b n cho em v ề
ứ ứ ụ ể ễ ạ ọ môn h c “Bi u di n tri th c và ng d ng”. Bên c nh đó tôi cũng xin chân thành
ể ậ ạ ọ ớ ỡ ả ơ c m n toàn th các b n bè h c viên trong l p đã t n tình giúp đ cho tôi trong
ữ ể ể ể ậ ờ nh ng th i đi m khó khăn khi tìm hi u ti u lu n này.
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 2
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
Ầ
PH N 1.MÔ HÌNH COKB
ề ố ượ ệ Khái ni m v đ i t ng tính toán COKB
ớ
ệ
1. Gi
i thi u
ề ả ấ ứ ự ườ ề ậ ế ề 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 giúp ta th c hi n s suy di n, tính toán.
ố ượ ấ ả ấ ị ể ạ 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.
ể ượ ề ễ ể ướ ạ 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 ny có th đ c áp d ng m t cách có hi u qu trong các h ệ
2. Đ nh nghĩa
ả ệ ả ư ẳ ọ gi ạ i toán, ch ng h n nh các h gi i các bài toán hình h c.
ị
ộ ố ượ ố ượ ấ ồ M t đ i t ng tính toán là đ i t ng O có c u trúc g m:
ộ ộ ỗ - M t danh sách các thu c tính Attr(O) = (cid:0) x1, x2,..., xn(cid:0) 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.
ế ự ộ ủ - 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 :
(cid:0) ộ ậ ủ ợ ộ ị Xác đ nh bao đóng c a m t t p h p thu c tính A Attr(O).
(cid:0) ị ả ượ ủ ạ Xác đ nh tính gi ễ c c a bài toán suy di n tính toán có d ng A i đ B v i Aớ
(cid:0) Attr(O) và B (cid:0) Attr(O).
ự ệ Th c hi n các tính toán.
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 3
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
ủ ố ượ ị ộ ự ệ ủ Xem xét tính xác đ nh c a đ i t ng, hay c a m t s ki n.
Ví d :ụ
ế ố ấ ồ ư ạ ươ ứ C u trúc tam giác g m các y u t nh : 3 c nh a, b, c; 3 góc t ớ ng ng v i 3
(cid:0) ườ ươ ứ ủ ạ c nh : , (cid:0) , (cid:0) ; 3 đ ng cao t ệ ng ng : ha, hb, hc; di n tích S c a tam giác,
ệ ữ ẽ ở ứ ớ v.v … cùng v i các công th c liên h gi a chúng s tr thành m t đ i t ộ ố ượ ng
ử ế ấ ợ ệ ớ tính toán khi ta tích h p c u trúc ny v i các hành vi x lý liên quan đ n vi c
ả ộ ự ệ ư gi i bài toán tam giác cũng nh các hành vi xem xét m t s ki n nào đó liên
ố ượ ế ả ộ quan đ n các thu c tính hay chính b n thân đ i t ng.
ộ ố ượ
ơ
ố
3. M hình cho m t đ i t
ng tính t n
ộ ố ượ ể ượ M t đ i t ng tính toán có th đ ở ộ c mô hình b i b :
(Attrs, F, Facts, Rules)
ủ ố ượ ậ ợ ộ 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 “TAM_GIAC” đ c bi u di n theo mô hình trên g m có:
- Attrs = (cid:0) GocA, GocB, GocC, a, b, c, ha, hb, hc, ma, mb, mc, pa, pb, pc, S, p,
R, r, ra, rb, rc (cid:0)
- F = (cid:0) GocA + GocB + GocC = Pi, a*sin(GocB) = b*sin(GocA), a^2 = b^2 +
c^2 2*b*c*cos(GocA), ... (cid:0)
(cid:0) - Facts = (cid:0)
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 4
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
- Rules = (cid:0) {GocA = GocB}(cid:0) {a = b}, {a = b} (cid:0) {GocA = GocB},
{GocA=pi/2} (cid:0) {a^2 = b^2+c^2, b(cid:0) c}, ... (cid:0)
ớ ấ ư ạ ộ Xét m t lo i Comobject, v i c u trúc nh sau:
(Attrs, F, Facts, Rules)
(cid:0) (cid:0) ướ ị Cho tr c (gt) A Attrs, Xác đ nh B Attrs.
(cid:0) ệ ề ấ Ký hi u v n đ là: A B.
Algorithm:
ộ ờ ự ế ễ GĐ 1: Tìm m t l i gi i ạ ả Solution d a trên suy di n ti n; Solution có d ng
ậ ượ ệ ễ ụ danh sách các quan h suy di n tính toán hay các lu t đ c áp d ng.
ạ ướ ự ệ ừ ố GĐ 2: Th c hi n lo i b c th a trong c Solution đ đ ể ượ Solution cu i cùng .
ứ ề ố ượ Mô hình tri th c v các đ i t ng tính toán
ớ
ệ
4. Gi
i thi u
ạ ố ượ ỗ ệ ỉ ể ệ ượ ầ ộ M i lo i đ i t ng tính toán khi xét riêng bi t ch th hi n đ c m t ph n tri
ấ ụ ộ ứ ủ ứ ụ ứ ế th c có tính ch t c c b trong ng d ng trong khi ki n th c c a con ng ườ ề ộ i v m t
ự ứ ế ạ ộ ườ ệ ề ồ lĩnh v c hay m t ph m vi ki n th c nào đó th ng bao g m các khái ni m v các
ạ ố ượ ữ ữ ệ ầ ớ ố lo i đ i t ng khác nhau v i nh ng m i quan h v nh ng thành ph n khác liên
quan.
ủ ố ượ ụ ạ ủ ộ ộ ộ Ví d : c nh a c a m t tam giác là m t thu c tính c a đ i t ng tam giác, khi
ư ộ ố ượ ạ ố ượ ộ ậ ẳ ộ ộ xét nh m t đ i t ạ ng đ c l p thì nó l m t “đo n th ng”, là m t lo i đ i t ng có
ữ ủ ậ nh ng lu t riêng c a nó.
ể ử ụ ứ ộ ệ ễ ể ể ơ Đ có mot mô hình bi u di n tri th c r ng h n có th s d ng trong vi c xây
ộ ệ ơ ở ứ ả ạ ố ượ ề ự d ng m t h c s tri th c và gi i toán v các lo i đ i t ầ ng khác nhau ta c n
ố ượ ệ ả ệ ph i xem xét khái ni m đ i t ố ộ ệ ố ng tính toán trong m t h th ng khái ni m các đ i
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 5
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
ạ ự ệ ệ ạ ậ ạ ớ ượ t ng cùng v i các lo i s ki n, các lo i quan h khác nhau và các d ng lu t liên
ế quan đ n chúng.
ứ ề ố ượ ộ ạ là mô hình cho m t d ng c s ơ ở Mô hình tri th c v các đ i t ng tính toán
ố ượ ứ ệ ề ồ ấ ạ ớ tri th c bao g m các khái ni m v các đ i t ng có c u trúc cùng v i các lo i quan
5. Mô hình
ứ ệ h và các công th c tính toán liên quan.
ố ượ ứ ề ọ ộ Ta g i m t mô hình tri th c v các đ i t ng tính toán, vi ế ắ t t ộ t là m t mô
ộ ệ ố hình COKB (Computational Objects Knowledge Base), là m t h th ng (C, H, R,
Ops, Rules) g m:ồ
ơ ố ượ ề ộ ậ - M t t p h p ng tính toán khái ni mệ v các đ i t C các
ạ ố ượ ệ ỗ ộ ấ ượ - M i khái ni m là m t lo i đ i t ng tính toán có c u trúc và đ c phân
ứ ự ế ậ ủ ấ ố ượ ự ồ m c theo s thi t l p c a c u trúc đ i t ế ng, g m: bi n th c, đ i t ố ượ ng
ố ượ ố ượ ứ ơ ả c b n, đ i t ng m c 1 và đ i t ứ ng m c 2.
ố ượ ộ ố ơ ả ấ ấ ỗ ồ - Các đ i t ộ ặ ng c b n có c u trúc r ng ho c có c u trúc g m m t s thu c
ố ượ ự ể ộ ự ể ề ạ tính thu c ki u th c. Các đ i t ng lo i ny có th làm n n cho s thi ế t
ố ượ ở ứ ơ ậ l p các đ i t ng m c cao h n.
ố ượ ứ ạ ộ ộ - Các đ i t ng tính toán m c 1 có m t thu c tính lo i
ế ậ ừ ộ ố ượ ề ượ đ c thi t l p t m t danh sách n n các đ i t ơ ả ng c b n.
ố ượ ứ ạ ộ ộ Các đ i t ng tính toán m c 2 có các thu c tính lo i real và các thu c tính
ạ ố ượ ộ ố ượ ứ ể ượ ế ậ thu c lo i đ i t ng m c 1, và đ i t ng có th đ c thi ộ t l p trên m t danh sách
ố ượ ề n n các đ i t ơ ả ng c b n.
ơ ạ ố ượ ệ ấ ữ ộ ậ - M t t p h p ng quan h phân c p gi a các lo i đ i t H các
ộ ố ệ ể ấ ậ ợ ộ Trên t p h 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 a các khái ni m khác, ch ng h n nh m t tam giác cân ặ ự đ c bi t hóa
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 6
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
ộ ứ ộ ộ ể ằ cũng là m t tam giác, m t hình bình hành cũng là m t t giá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 h p ệ trên các lo i đ i t ng ạ ề R các khái ni m v các lo i quan h
ệ ượ ỗ ạ ố ượ ệ ở ị M i quan h đ c xác đ nh b i
ộ ố ệ ể ấ ấ ấ ệ h , và quan h có th có m t s tính ch t trong các tính ch t sau đây: tính ch t
ấ ắ ầ ấ ố ứ ả ứ ả ạ ấ ph n x , tính ch t đ i x ng, tính ch t ph n x ng và tính ch t b c c u.
ơ toán tử ộ ậ các Ops - M t t p h p
ử ộ ố ư ự ế 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, ch ng h n các phép toán s h c và tính toán trên các đ i t ng đo n và góc
ự ư ố ớ ự ế ươ t ng t nh đ i v i các bi n th c.
- M t t p
ộ ậ ồ g m các h p ơ Rules lu tậ
ể ệ ứ ệ ậ ổ Các lu t th hi n các tri th c mang tính ph quát trên các khái ni m và các
ể ế ắ ậ ậ ỗ ộ ự ệ ự ệ khác nhau. M i lu t cho ta m t qui t c suy lu n đ đi đ n các s ki n lo i ạ s ki n
ớ ừ ề ặ ấ ự ệ ầ ồ m i t ầ các s ki n nào đó, và v m t c u trúc nó g m 2 thành ph n chính là: ph n
ả ế ủ ậ ủ ế ầ ậ ầ ậ ả ế ầ ậ gi thi t c a lu t và ph n k t lu n c a lu t. Ph n gi thi ề ế t và ph n k t lu n đ u
ợ ự ệ ố ượ ậ là các t p h p s ki n trên các đ i t ấ ị ng nh t đ nh.
ể ượ ậ ộ ướ ạ M t lu t r có th đ c mô hình d i d ng:
r : (cid:0) sk1, sk2, ..., skn(cid:0) (cid:0) (cid:0) sk1, sk2, ..., skm (cid:0)
ạ ự ệ * Phân lo i s ki n:
ấ ề ộ ỗ ự ệ ể ẳ ộ ộ ị M i s ki n là m t phát bi u kh ng đ nh m t tính ch t v m t hay m t s ộ ố
Ở ạ ự ệ ư ố ượ đ i t ng tính toán. đây chúng ta xem xét 6 lo i s ki n khác nhau nh sau:
ộ ố ượ ề ạ ủ ể ấ ạ ụ Lo i 1: Phát bi u v lo i (hay tính ch t) c a m t đ i t ộ ng. Ví d : Ob là m t
tam giác.
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 7
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
ộ ố ượ ủ ể ề ạ ị Lo i 2: Phát bi u v tính xác đ nh c a m t đ i t ộ ng (các thu c tính coi nh ư
ế ủ ụ ộ ả ử ạ đã bi ộ t) hay c a m t thu c tính. Ví d : Gi s đo n AB trong tam giác ABC đ ượ c
cho tr c.ướ
ộ ố ượ ề ự ủ ể ạ ộ ộ ị Lo i 3: Phát bi u v s xác đ nh c a m t thu c tính hay m t đ i t ng thông
ứ ằ ộ ể qua m t bi u th c h ng.
(cid:0) ụ ạ ớ ượ ướ Ví d : đo n AB = 2*m^2 + 1 (v i m đ c cho tr c), góc ABC = / 3.
ề ự ằ ộ ố ượ ự ệ ữ ạ ộ ộ Lo i 4: S ki n v s b ng nhau gi a m t đ i t ớ ng hay m t thu c tính v i
ộ ố ượ ộ ộ m t đ i t ng hay m t thu c tính khác.
ố ượ ụ ủ ộ ạ ạ ộ Ví d : thu c tính a c a đ i t ố ng Ob thu c lo i tam giác = đo n CD, đ i
ố ượ ượ t ng Ob1 = đ i t ng Ob2.
ộ ố ượ ộ ủ ự ệ ề ự ụ ạ ủ ộ Lo i 5: S ki n v s ph thu c c a m t đ i t ộ ng hay c a m t thu c tính
ố ượ ứ ộ ộ ữ theo nh ng đ i t ng hay các thu c tính khác thông qua m t công th c tính toán.
ụ Ví d : O1.a = O2.a + 2*O2.b
ự ệ ề ộ ố ượ ệ ạ ộ 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.
ụ ể ạ ạ ạ ộ ớ Ví d : đo n AB song song v i đo n CD, đi m M thu c đo n AB.
ụ
ụ 6. Ví d p d ng
ứ ề ế ầ ứ ẳ Ph n ki n th c v các tam giác và các t ể ọ giác trong hình h c ph ng có th
ượ ứ ề ố ượ ễ ể ư ướ đ c bi u di n theo mô hình tri th c v các đ i t ng tính toán nh d i đây.
ố ượ ề ệ - Các khái ni m v các đ i t ồ : ng g m
ườ ẳ ng th ng ể o Đi m, đđ
ẳ ạ o Đo n th ng. tia
o Góc.
ạ ứ ạ giác. o Các lo i tam giác và các lo i t
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 8
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
- Các quan h phân c p gi a các lo i đ i t
ạ ố ượ ữ ệ ấ : ng
ạ ứ ữ ề ệ ạ Gi a các khái ni m v các lo i tam giác và các lo i t ệ giác có các quan h
ự ặ ấ ệ ủ ệ ượ ể ệ ể phân c p theo s đ c bi t hóa c a các khái ni m, đ ồ ở c th hi n b i các bi u đ
sau đây:
ệ ữ ạ ồ ệ ư - Các quan h gi a các khái ni m bao g m các lo i quan h nh : ệ
ộ ề ủ ố ớ ệ ể ạ ẳ ộ o Quan h thu c v c a 1 đi m đ i v i m t đo n th ng.
ố ớ ủ ể ệ ể ạ ẳ ộ ộ o Quan h trung đi m c a m t đi m đ i v i m t đo n th ng.
ữ ệ ạ ẳ o Quan h song song gi a 2 đo n th ng.
ữ ệ ẳ ạ o Quan h vuông góc gi a 2 đo n th ng.
- Các toán tử :
ệ ằ ữ o Quan h b ng nhau gi a 2 tam giác.
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 9
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
ử ố ọ ố ớ ố ự ơ ấ ụ ạ Các toán t s h c và các hàm s c p cũng áp d ng đ i v i các đ i t ng lo i
- Các lu tậ :
ố ượ ẳ ạ ạ “đo n th ng” và các đ i t ng lo i “góc”.
ạ ự ệ ể ệ ễ ậ ị ắ Các lu t th hi n các đ nh lý hay qui t c suy di n trên các lo i s ki n khác
nhau.
ụ ạ ằ ộ Ví d : M t tam giác ABC có 2 c nh AB và AC b ng nhau thì tam giac là tam
(cid:0) ạ ế ẳ ạ ớ giác cân t i A. V i 3 đo n th ng a, b và c, n u a // b và a c thì ta có b (cid:0) c.
ổ ứ ơ ở
ứ
T ch c c s tri th c COKB
ầ ủ
7. Các thành ph n c a COKB:
ộ ơ ở ứ ề ố ượ ể ượ ổ ứ ở M t c s tri th c v các đ i t ng tính toán có th đ ch c b i m t h ộ ệ c t
ấ ồ ố th ng file text có c u trúc g m:
ư ậ ữ ọ ị - T p tin “Concepts.txt” l u tr các đ nh danh (hay tên g i) cho các khái
ạ ố ượ ề ệ ỗ ị ộ ươ ứ ni m v các lo i đ i t ng; m i đ nh danh có m t file t ư ng ng l u
ạ ố ượ ủ ấ thông tin c u trúc c a lo i đ i t ng.
ư ữ ề ệ ạ ậ - T p tin “RELATIONS.txt” l u tr thông tin v các lo i quan h khác nhau
ạ ố ượ trên các lo i đ i t ng.
ư ạ ậ ể ệ ệ ể ồ - 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 hóa trên các khái ni m.
ố ượ ệ ạ ậ ậ ớ - Các t p tin v i tên t p tin có d ng “
ạ ố ượ ữ ấ ủ ố ượ ệ tr c u trúc c a lo i đ i t ng
ư ậ ữ ề ử - T p tin “Operators.txt” l u tr các thông tin v các toán t ố trên các đ i
ượ t ng.
ạ ự ệ ữ ư ề ậ - T p tin “FACTS.txt” l u tr thông tin v các lo i s ki n khác nhau.
ữ ệ ậ ủ ơ ở ứ ư ậ - T p tin “RULES.txt” l u tr h lu t c a c s tri th c.
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 10
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
ố ượ ư - File “objects.txt” l u các đ i t ụ ể ặ ị ng c th m t đ nh.
ể ồ
ầ ủ
ệ ữ
8. Bi u đ liên h gi a các thành ph n c a COKB
ả
ố ượ
Gi
i toán trên đ i t
ng tính toán
ề ơ ả
ố ượ
ấ
9. Các v n đ c b n cho hành vi đ i t
ng
ề ấ : - V n đ 1
(cid:0) ả ượ ủ ậ Xét tính gi c c a bài toán GT i đ ợ KL, trong đó GT và KL là các t p h p
ủ ố ượ ự ệ ữ ộ nh ng s ki n trên các thu c tính c a đ i t ng.
ề ấ : - V n đ 2
(cid:0) ộ ờ ả ậ Tìm m t l i gi i cho bài toán GT ợ KL, trong đó GT và KL là các t p h p
ủ ố ượ ự ệ ữ ộ nh ng s ki n trên các thu c tính c a đ i t ng.
ề ấ : - V n đ 3
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 11
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
ự ệ ậ ợ ừ ự ệ ộ Th c hi n tính toán các thu c tính trong t p h p KL t các s ki n trong GT
(cid:0) ườ ợ ậ trong tr ng h p bài toán GT KL gi ả ượ i đ ợ c, trong đó GT và KL là các t p h p
ủ ố ượ ự ệ ữ ộ nh ng s ki n trên các thu c tính c a đ i t ng.
ề ấ : - V n đ 4
ố ượ ủ ộ ậ ự ệ ự ướ ị Xét tính xác đ nh c a đ i t ng d a trên m t t p s ki n cho tr c trên các
ủ ố ượ ộ thu c tính c a đ i t ng.
ả
10. Gi
ế ấ i quy t v n đ
ề
ề ự ợ ự ệ ủ ấ ị - Đ nh nghĩa v “s h p nh t” c a các s ki n.
ự ệ ấ ớ ụ ề ợ Ví d v các s ki n h p nh t v i nhau:
DOAN[A,B] và DOAN[A,B].
TAM_GIAC[A,B,C]. a và DOAN[B,C].
Ob.a = (m+1)^2 và Ob.a = m^2 + 2*m + 1.
Ob1 = Ob2 và Ob2 = Ob1.
a^2 = b^2 + c^2 và b^2 = a^2 – c^2.
“a song song b” và “b song song a”.
ị ướ ộ ướ ề ộ b - Đ nh nghĩa v m t c gi ả là m t b i ự ệ c suy ra s ki n m i t ớ ừ ộ ố ự m t s s
ệ ế ộ ư ễ ậ ặ ki n đã bi ộ t thu c m t trong các ạ d ng suy lu n nh : suy di n m c nhiên,
ụ ụ ễ ệ ậ áp d ng lu t suy di n, áp d ng quan h tính toán, gi ả ệ ươ i h ph ng trình, …
ướ ả ụ ề Ví d v các b c gi i:
(cid:0)
(cid:0)
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 12
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
If
(cid:0)
then (cid:0)
ị ờ ủ ộ ự i gi i ề ộ l - Đ nh nghĩa v m t ả c a m t bài toán và tính gi ả ượ i đ c d a trên
ệ ấ ợ quan h “bao hàm h p nh t”.
ự ệ ờ ả ớ ự ụ ễ - Th c hi n quá trình tìm l i gi ủ ế i theo cách suy di n ti n v i s áp d ng c a
ạ ỏ ớ ỹ ộ ố ậ ắ ế ợ m t s qui t c heuristic, k t h p v i k thu t lo i b các b ướ ư ừ ể c d th a đ
ọ ờ ả rút g n l i gi i.
(cid:0) ụ ố ượ ớ Ví d 1: Xét bài toán GT KL trên đ i t ng “TAM_GIAC”, v i
GT = (cid:0) a, b=1, c, GocA = m*(b+c), GocA = 2*GocB(cid:0) ,
KL = (cid:0) GocB, GocC(cid:0) .
ế ả K t qu : bài toán gi ả ượ i đ c.
(cid:0) ụ ố ượ Ví d 2: Xét bài toán GT KL trên đ i t ớ ng “TAM_GIAC”, v i
GT = (cid:0) a, b=5, GocA = m*(b+c), GocA = 2*GocB, a^2=b^2+c^2(cid:0) , KL = (cid:0)
GocB, GocC(cid:0) .
ờ L i gi ả : i
1. Suy ra töø
2. Suy ra ừ t
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 13
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
3. Suy ra ừ t
4. Suy ra ừ t
5. Suy ra từ và
6. Suy ra ừ t .
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 14
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
Ầ
Ụ
Ọ
Ẳ
Ả PH N 2: ÁP D NG MÔ HÌNH COKB GI I TOÁN HÌNH H C PH NG
ớ
ệ
I. Gi
i thi u
ơ ở ệ ẳ ậ ậ ố ọ ề Trên c s h th ng bài t p v hình h c ph ng và Kĩ thu t thi ế ế ệ ả t k h gi i
ự ộ ệ ơ ở ứ ự ể ộ toán t ễ đ ng , ta dùng mô hình COKB đ xây d ng h c s tri th c và b suy di n
ụ ứ ươ ả ự ộ ẳ ọ cho ng d ng: “Ch ng trình gi i toán t đ ng các bài toán hình h c ph ng trong
ươ ấ ch ng trình toán c p THCS.”
ế ế ệ ơ ở
ứ
ứ
ọ
ề
ẳ
Thi
t k h c s tri th c cho mi n tri th c hình h c ph ng
ơ ở ệ ậ ẳ ậ ố ọ ề Trên c s h th ng bài t p v hình h c ph ng và Kĩ thu t thi ế ế ệ ả t k h gi i
ự ộ toán t đ ng , ta dùng mô hình COKB
ố ượ
ệ
ậ
ậ
11. T p C – t p các khái ni m đ i t
ng tính toán
ườ ệ ể ẳ ạ ậ ồ T p C g m các khái ni m: “Đi m”, “Tia”, “Đo n”, “Góc”, “Đ ng th ng”,
ườ “Tam giác”, “Hình thang”, “Đ ng tròn”…
ố ượ ể - “Đi m” là đ i t ơ ả ng c b n.
ố ượ ạ - “Tia”, “Đo n” là các đ i t ấ ng c p 1.
ố ượ ườ - “Tam giác” , “Đ ng tròn” là các đ i t ấ ng c p 2.
ố ượ
ữ
ệ
ậ
ậ
ấ
12. T p H t p quan h phân c p gi a các đ i t
ng
ề ố ượ ừ ậ ệ ợ ở ệ T t p h p các khái ni m v đ i t ng tính toán trên ta có quan h phân
ượ ụ ư ữ ấ c p gi a các t ng, ví d nh :.
ủ ủ ữ ệ ạ ọ - “Góc nh n”, “Góc tù” là nh ng d ng c a khái ni m c a “Góc”.
ủ ữ ề ạ -
ệ “Tam giác cân”, “Tam giác vuông”, “Tam giác đ u” là nh ng d ng c a khái ni m “Tam Giác”.
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 15
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
ệ ữ
ố ượ
ậ
ậ
13. T p R – t p quan h gi a các đ i t
ng tính toán
ệ ạ Ta có các lo i quan h sau:
ệ ữ ố ự ệ ề - Quan h n n: là quan h gi a các s th c.
ệ ữ ơ ả ệ ấ ố ượ ề - Quan h c p c b n: là quan h gi a các đ i t ệ ữ ng n n và quan h gi a
ố ượ các đ i t ấ ng c p 1.
ệ ữ ệ ấ ố ượ ơ ả ố ượ - Quan h c p 1: là quan h gi a các đ i t ng c b n, đ i t ấ ng c p 1 và
đ iố
ậ ợ
ậ
14. T p Ops – t p h p các toán t
ử
ề ẳ ọ ở ấ ử ệ ữ ứ Trong mi n tri th c hình h c ph ng c p THCS, toán t là quan h gi a các
ư ể ố ự s th c nên ta có th xem nh Ops = {}.
ậ ợ
ậ
15. T p Funcs – t p h p các hàm
ậ ồ T p Func g m các hàm sau:
ủ ể ẳ ạ - Trung đi m c a đo n th ng.
ế ủ ể ộ ườ - Hình chi u c a m t đi m trên đ ẳ ng th ng.
ố ứ ộ ườ ủ ể ộ - Hàm đ i x ng c a m t đi m qua m t đ ẳ ng th ng.
ậ ợ
ậ 16. Rules – t p h p các lu t
ề ị ứ ệ ẳ ấ ọ Các tính ch t, m nh đ , đ nh lý trong tri th c toán hình h c ph ng ở ấ c p
ể ượ ố ượ ể ễ ậ ằ THCS có th đ c bi u di n b ng các lu t trên các đ i t ẳ ng tính toán. Ch ng
h n:ạ
┴ ┴ {a: DOAN, b: DOAN, c: DOAN, a // b, c a} => {c b}.
ạ {A: DIEM, B: DIEM, C: DIEM, BC = AC} => {ABC là tam cân t i C}.
o}.
┴ {A: DIEM, B: DIEM, C: DIEM, AB BC} => { góc ABC = 90
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 16
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
ậ
ẫ
ậ ợ 17. T p Sample – t p h p các bài toán m u
ề ệ ạ ủ ố ượ ẫ ị ị - Bài toán m u v vi c xác đ nh lo i c a đ i t ng: Xác đ nh tam giác
ữ ậ ườ vuông, Hình ch nh t, đ ng tròn.
ẫ ề - Bài toán m u v :
ả i tam giác vuông. o Gi
ả i tam giác cân. o Gi
ệ ữ ườ ườ ng kính và dây cung trong đ ng tròn. o Quan h gi a đ
ế ế ộ
ễ ự ộ
ủ
ươ
Thi
t k b suy di n t
đ ng c a ch
ng trình
ứ ề ẳ ọ ượ ị Mô hình bài toán trên mi n tri th c hình h c ph ng đ c đ nh nghĩa nh ư
sau:
(O, F, Goal)
ớ ả ế ạ Bài toán P: “Cho tam giác ABC v i các gi thi t sau: đo n AH = 6, BC = 211,
ạ Góc A = 50o. Tìm đo n AB?”
- Mô hình bài toán:
O = { TAM_GIAC[A,B,C], [H, DIEM]}
F = { H = HINHCHIEU(A, DOAN[B,C]),
DOAN[A,H].dai = 6, DOAN[B,C].dai = 211
GOC[C,A,B] = 50;}
Goal = {DOAN[A,B].dai}.
ả ủ ươ ờ - L i gi i c a ch ng trình:
ướ o B c 1:
{ H = HINHCHIEU(A, DOAN[B,C]), DOAN[B,C].dai,
GOC[C,A,B] }
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 17
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
{GOC[B,C,A]}
ấ ủ ễ ậ ở B i “Lu t suy di n”: [“Tính ch t c a tam giác”]
ướ o B c 2:
{ GOC[C,A,B], GOC [B,C,A] }
{GOC[A,B,C]}
ấ ủ ễ ậ ở B i “Lu t suy di n”: [“Tính ch t c a tam giác”]
ướ o B c 3:
{ DOAN[A,C], GOC[C,A,B] }
{[“DUONGCAO”, DOAN[C,H], TAMGIAC[A,B,C]]}
ấ ủ ễ ậ ở B i “Lu t suy di n”: [“Tính ch t c a tam giác”]
ướ o B c 4:
{[“DUONGCAO”, DOAN[C,H], TAMGIAC[A,B,C]],
DOAN[A,B,C] }
{DOAN[B,C]}
ấ ủ ễ ậ ở B i “Lu t suy di n”: [“Tính ch t c a tam giác”]
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 18
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
Ầ
Ụ
Ọ
Ẳ
Ả Ứ Ậ PH N 3: L P TRÌNH NG D NG COKB GI I TOÁN HÌNH H C PH NG
I. Gi
ớ ệ i thi u:
ể ế ươ ả ẳ ọ Đ vi t ch ng trình demo gi i toán hình h c ph ng theo mô hình COKB, em
ữ ư ử ụ ế ị ữ ậ ể quy t đ nh s d ng ngôn ng l p trình Maple vì nh ng u đi m sau:
ụ ệ ề ầ ồ - Maple là ph n m m chuyên d ng cho công vi c tính toán bao g m các tính
ệ ằ ầ ố ọ toán thu n túy b ng ký hi u toán h c, các tính toán s và các tính toán
ồ ị ằ b ng đ th .
ễ ử ụ ỏ ấ ứ ầ ớ - Maple d s d ng, đòi h i c u hình không l n, đáp ng nhu c u tính toán
ố ượ ề ủ c a nhi u đ i t ng.
II. T o package đ c File:
ọ ạ
ấ 2. Danh sách các files theo c u trúc COKB
ề ậ ở ụ ư ấ Danh sách các files theo c u trúc COKB nh đã đ c p m c III.1
- TIA.txt
- DIEM.txt
- DOAN.txt
- DUONG_THANG.txt
- GOC.txt
- HINH_BINH_HANH.txt
- HINH_VUONG.txt
- TAM_GIAC.txt
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 19
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
- TU_GIAC.txt
- OBJECTS.txt
- Hierarchy.txt
- RELATIONS.txt
- RULES.txt
ọ ạ 3. T o package đ c files:
Readrules := proc()
local read_1Rule;
read_1Rule := proc()
local loai, tens, kieus, ten1, n1, kieu1, gt_kl, k;
loai := ""; tens := []; kieus := []; gt_kl := [{},{}];
line := readline(fd);
# bo qua dong begin_rule
while line <> 0 and SearchText("begin_rule", line) = 0 and
SearchText("end_rules", line) = 0 do
line := readline(fd);
end do;
# thoat khoi ham neu den dong cuoi cung end_rules
if SearchText("end_rules", line) > 0 then
RETURN (NULL);
fi;
line := readline(fd);
# doc den dong end_rule thi dung lai
ể ọ ẫ Đây là code m u đ đ c file Rules.
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 20
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
while line <> 0 and SearchText("end_rule", line) = 0 do
if SearchText("kind_rule", line) > 0 then
loai := rhs(parse(line));
else
k := SearchText(":", line);
# doc phan hypothesis_part va gan vao bien hypothesis_part = gt_kl[1]
if SearchText("hypothesis_part", line) > 0 then
gt_kl[1] := substring(line, (k+1)..length(line));
line := readline(fd);
while line <> 0 and SearchText("end_hypothesis_part", line) = 0 do
gt_kl[1] := cat (gt_kl[1], line);
line := readline(fd);
end do;
gt_kl[1] := parse(gt_kl[1]);
# doc phan goal_part va gan vao bien goal_part = gt_kl[2]
elif SearchText("goal_part", line) > 0 then
gt_kl[2] := substring(line, (k+1)..length(line));
line := readline(fd);
while line <> 0 and SearchText("end_goal_part", line) = 0 do
gt_kl[2] := cat (gt_kl[2], line);
line := readline(fd);
end do;
gt_kl[2] := parse(gt_kl[2]);
# doc phan A,B,C : DIEM; tens = A,B,C; kieus = DIEM
elif k > 0 then
ten1 := [parse( substring(line, 1..(k1)) )]; n1 := nops(ten1);
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 21
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
kieu1 := convert ( parse( substring(line, (k+1)..length(line)) ), string);
tens := [op(tens), op(ten1)]; kieus := [op(kieus), kieu1 $ n1];
fi;
fi;
line := readline(fd);
end do; # while
if gt_kl[1] <> {} or gt_kl[2] <> {} then
Rule := [op(Rule), [loai, tens, kieus, gt_kl] ];
fi;
end: # Read_1Rule
while line <> 0 and SearchText("end_rules", line) = 0 do
read_1Rule();
end do; # while
end: # Readrules
ử ủ ươ III.Code x lý chính c a ch ng trình:
ọ ự ệ
1. Hàm đ c s ki n Facts:
GetFacts:=proc(nameObj)
local facts,f;
facts := {};
for f in ObjStruct(nameObj)[6] do
facts := `union`(facts, {f[6]});
end do;
return facts
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 22
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
end proc:
ọ
2. Hàm đ c Rules:
GetRules:=proc(nameObj)
local rules,r;
rules := {};
for r in ObjStruct(nameObj)[7] do
rules := `union`(rules, {{r[4][1][1], r[4][2][1]}});
end do;
return rules;
end proc:
ử
3. Hàm x lý chính cho bài toán:
Tinh:=proc(GT,KL,nameObj)
local
knownVar,knownVal,r,flag,Vnew,findResultPath,flag1,exactResult,
checked,knowVar1,r1,rr1,rules,g,u,M,F,s,conditions,v;
M := ObjStruct(nameObj)[2];
F := GetFacts(nameObj);
findResultPath := [];
knownVal := GT;
knownVar := {};
# start of bo them vao F dua vao rules
for g in GT do
if evalb(SetVars(rhs(g),nameObj) = {}) then
knownVar := {lhs(g), op(knownVar)};
else
# duyet rules va gan vao cho F
rules := GetRules(nameObj);
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 23
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
for u in rules do
if evalb(u[1] = g) then
F := `union`(F, {convert(g, name), convert(u[2], name)});
elif evalb(u[2]=g) then
F := `union`(F, {convert(g, name), convert(u[1], name)});
else
F := `union`(F, {convert(g, name)});
end if;
end do;
end if;
end do;
# end of bo them vao F dua vao rules
while not(KL subset knownVar) do
flag := false;
for r in F do
if nops(SetVars(parse(r),nameObj) minus knownVar) = 1 then
flag := true; Vnew := `minus`(SetVars(parse(r), nameObj), knownVar);
break;
end if;
end do;
if not flag then
return printf(" Khong tim ra duoc ket qua \n");
end if;
knownVar := `union`(knownVar, Vnew);
# sub: thay the KnownVal trong ctrinh r
knownVal := `union`(knownVal, solve(subs(knownVal, parse(r)), Vnew));
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 24
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
findResultPath := [op(findResultPath), [parse(r), Vnew[1]]];
end do;
# viet thuat giai loai bo luat thua
# danh sach tham so tinh ra ket qua minus tham so gia thiet
knowVar1 := `minus`(knownVar, map(proc (x) options operator, arrow; lhs(x) end proc, GT));
# danh sach ket qua da rut gon
exactResult := [findResultPath[nops(findResultPath)]];
# truy vet lai ket qua vi du: p=2⋅a+2⋅b suy ra duoc qua 2 tham so a va b
checked := `minus`(SetVars(findResultPath[nops(findResultPath)][1], nameObj), KL);
# lap lai cho den khi ket qua truy vet la {}
while not evalb(nops(checked) = 0) do
for r1 in checked[1] do
for rr1 in findResultPath do
if (evalb(rr1[2] = r1)) and not ({r1} subset map(x>lhs(x),GT)) then
checked := `minus`(`union`(checked, SetVars(rr1[1], nameObj)), {rr1[2]});
checked := `minus`(checked, {r1});
exactResult := [op(exactResult), rr1];
end if;
end do;
end do;
if (not (checked subset knowVar1)) and evalb(nops(checked)=nops(GT)) then
checked := `minus`(checked, map(proc (x) options operator, arrow; lhs(x) end proc, GT));
end if;
if (not (checked subset knowVar1)) then
checked := `minus`(checked, map(proc (x) options operator, arrow; lhs(x) end proc, GT));
end if;
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 25
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
end do;
# Xuat ket qua
XuatKQ(exactResult, GT, nameObj);
# In gia tri ket qua
for s in knownVal do
if evalb(lhs(s)=KL[1]) then
printf("_ Ket qua %s \n", convert(s, string));
end if;
end do;
end proc:
XuatKQ:=proc(Results,GT,nameObj)
local i,j,xuat,temp,temp1,deduces,l,temp2,temp3,temp4,temp5,m;
j := 1;
deduces := [];
for i from nops(Results) by 1 to 1 do
deduces := [op(deduces), [Results[i], j]];
j := j+1;
end do;
j := 1;
for i from nops(Results) by 1 to 1 do
temp := convert(Results[i][1], string);
temp1 := convert(j, string);
printf("_ Buoc thu %s : %s \n", temp1, temp);
# Xet tung bien ben ve phai
for l in SetVars(Results[i][1],nameObj) do
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 26
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
# Chi xet truong hop khong phai la ket qua
if not evalb(l = Results[i][2]) then
# Kiem tra co thuoc tap gia thiet
if {l} subset map(x>lhs(x),GT) then
temp2 := convert(l, string);
printf(" %s : gia thiet \n", temp2);
else # Kiem tra co thuoc tap suy dien
for m in deduces do
if evalb(m[1][2] = l) then
temp3 := convert(m[1][2], string);
temp4 := convert(m[2], string);
printf(" %s : suy ra tu buoc thu %s \n", temp3, temp4);
end if;
end
end if;
end if;
end do;
# In ket qua
temp5 := convert(Results[i][2], string);
printf(" Tinh duoc %s \n", temp5);
j := j+1;
end do;
return deduces;
end proc:
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 27
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
ả ươ
ế
IV.K t qu ch
: ng trình
ớ ả ế - Bài toán 1: Cho tam giác ABC, v i các gi thi t GT sau: bán kính đ ườ ng
ộ ế ạ ườ tròn n i ti p r = 3, chu vi p = 4, đo n AC = 21. Tính đ ng cao HB.
ươ ư ng trình nh sau: ậ o Nh p vào ch
Tinh({b = 21, p = 4, r = 3}, {hb}, "TAM_GIAC")
_ Buoc thu 1 : S = p*r p : gia thiet r : gia thiet Tinh duoc S _ Buoc thu 2 : S = 1/2*b*hb S : suy ra tu buoc thu 1 b : gia thiet Tinh duoc hb _ Ket qua hb = 8/7
ế ấ ả o K t qu xu t ra:
ớ ả ế ạ - Bài toán 2: Cho tam giác ABC v i các gi thi t sau: đo n AH = 6, BC =
ạ 211, Góc A = 50o. Tính đo n AB.
ươ ư ng trình nh sau: ậ o Nh p vào ch
Tinh({b = 211, ha = 6, GocA = 50}, {a}, "TAM_GIAC")
_ Buoc thu 1 : ha = b*sin(GocC) b : gia thiet ha : gia thiet Tinh duoc GocC _ Buoc thu 2 : GocA+GocB+GocC = Pi GocA : gia thiet GocC : suy ra tu buoc thu 1 Tinh duoc GocB _ Buoc thu 3 : hc = b*sin(GocA) b : gia thiet GocA : gia thiet Tinh duoc hc _ Buoc thu 4 : hc = a*sin(GocB) hc : suy ra tu buoc thu 3
ế ấ ả o K t qu xu t ra:
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 28
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
GocB : suy ra tu buoc thu 2 Tinh duoc a _ Ket qua a = 211*sin(50)/sin(Pi50arcsin(6/211))
o, AC = 69.
ớ ả ế - Bài toán 3: Cho tam giác ABC v i các gi thi t sau: góc A = 50
ạ Tính đo n BC.
ươ ư ng trình nh sau: ậ o Nh p vào ch
Tinh({b = 69, GocA = 50}, {a}, "TAM_GIAC")
ế ấ ả o K t qu xu t ra:
Khong tim ra duoc ket qua
ẫ ử ụ
ướ
ươ
V. H ng d n s d ng ch
: ng trình
ề ầ - Download ph n m m Maple 13.
ư ụ ạ - T o th m c CObject_Knowledge t ạ ổ i đĩa D, và chép các files TIA.txt,
DIEM.txt, DOAN.txt, DUONG_THANG.txt, GOC.txt,
HINH_BINH_HANH.txt, HINH_VUONG.txt, TAM_GIAC.txt,
TU_GIAC.txt, OBJECTS.txt, Hierarchy.txt, RELATIONS.txt, RULES.txt
ư ụ ư ụ ủ ặ - Chép file package “TriangleLib.m” vào th m c lib c a th m c cài đ t
ườ Maple (th ng là C:\Program Files\Maple 13\lib).
ể ở ử ụ - S d ng maple đ m file “TieuLuan_Triangle.mw”.
ể ượ ể ự ươ - Click vào bi u t ng đ th c thi ch ng trình.
ỏ ế ư ủ ố ươ ự ệ - Đ a con tr đ n cu i dòng c a ch ng trình và th c hi n tính toán nh ư
ướ b c II.4.
ứ ớ ả ế giác ABCD, v i các gi thi ạ t sau: Góc A = 60, c nh o Bài toán: Cho t
ạ ạ AB = 110, c nh BC = 10, c nh CD = 120, chu vi p = 190, Góc C =
ệ 30, Góc D = 140. Tính di n tích S.
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 29
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
ươ ư ng trình nh sau: ậ o Nh p vào ch
tugiac := Tinh({GA = 60, GC = 30, GD = 140, a = 110, b = 10, c = 120,
p = 190}, {S}, "TU_GIAC")
_ Buoc thu 1 : a+b+c+d = p a : gia thiet b : gia thiet c : gia thiet p : gia thiet Tinh duoc d _ Buoc thu 2 : GA+GB+GC+GD = 2*Pi GA : gia thiet GC : gia thiet GD : gia thiet Tinh duoc GB _ Buoc thu 3 : 2*S = a*b*sin(GB)+c*d*sin(GD) GB : suy ra tu buoc thu 2 GD : gia thiet a : gia thiet b : gia thiet c : gia thiet d : suy ra tu buoc thu 1 Tinh duoc S _ Ket qua S = 550*sin(2*Pi230)3000*sin(140)
ế ấ ả o K t qu xu t ra:
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 30
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
Ế
Ậ
K T LU N
M
ệ ợ ế ế ộ ơ ở ứ ớ ô hình COKB là mô hình 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 ng tính toán, c u trúc t ng minh giúp
ế ế ơ ở ệ ợ ứ ệ ế ế ễ d dàng thi ậ t k các môđun truy c p c s tri th c. Ti n l i cho vi c thi t k các
ả ự ộ ữ ệ ợ ộ ị mô đun gi i toán t đ ng. Thích h p cho vi c đ nh ra m 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. Các mô hình và thu t gi ả ượ i đ ấ ề c đ xu t
ệ ả ự ụ ể ệ ứ ự có th làm công c cho vi c xây d ng các h gi i bài toán d a trên tri th c, các h ệ
ọ ớ ự ỗ ợ ả ứ ề ạ ầ ơ ở c s tri th c, và các ph m m m d y h c v i s h tr gi i toán thông minh.
ấ ố ứ ủ ể ễ ệ ườ ệ Là 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.
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 31
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
ươ ả ự ộ ề ẳ ọ ở ượ Ch ng trình gi i toán t đ ng v Toán Hình H c ph ng THCS đ ự c xây d ng
ứ ụ ứ ứ ể ề ệ ễ ằ b ng ng d ng mô hình COKB cho vi c bi u di n tri th c trên mi n tri th c này.
ả ủ ố ự ủ ờ L i gi ệ i c a h n th ng t ợ nhiên, chính xác và phù h p cách suy nghĩ c a con
ng i.ườ
̀ ́ ́ ệ ứ ụ ự ế ễ ậ ́ ư Tuy nhiên vi c ng d ng các thu t toán vào th c ti n là bai toan kho, ki n th c
̀ ̀ ̀ ̃ ư ươ ư ẫ ̉ ̣ ̣ ̣ ̉ ̣ cua hoc viên con ch a sâu vi vây ch ̀ ng trinh cung nh nôi dung tiêu luân v n con
́ ̃ ́ ́ ́ ̀ ư ượ ể ậ ̉ ̣ nh ng khiêm khuyêt, rât mong đ c Thây nh n xét và góp y đê hoc viên hi u bi ế t
́ ề ệ ́ ư ề thêm nhi u kiên th c v công ngh này.
ả ơ ả ầ ỗ ơ Em xin chân thành c m n Th y PGS.TS Đ Văn Nh n, gi ng viên chuyên đ ề
Ứ ữ ứ ứ ụ ể ề ế ễ ạ ề Bi u Di n tri th c và ng d ng, đã truy n đ t nh ng ki n th c quý báu v các
ạ ơ ộ ượ ậ ể ể ề ơ thu t toán và t o c h i đ c làm chuyên đ này đ hi u sâu h n
ả ơ ậ ầ ọ Tr n tr ng c m n Th y.
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 32
Ứ
ụ
ọ
ễ
ể
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
Ệ
Ả
TÀI LI U THAM KH O
ỗ ơ . Slide COKB(2011) – 5 components. PGS.TS Đ Văn Nh n
ươ ự ứ ễ ẫ Ph ứ ng pháp suy di n trên mô hình COKB d a trên tri th c bài toán m u và ng
ơ ỗ ụ d ng. PGS.TS Đ Văn Nh n
ự ự ể ệ ơ ỗ Đ Văn Nh n, Xây d ng h tính toán thông minh – Xây d ng và phát tri n các
ệ ả ứ ễ ể ự ộ ế ậ mô hình bi u di n tri th c cho các h gi i toán t ạ đ ng, Lu n án ti n sĩ, Đ i
ố ọ h c qu c gia – HCM (20012002).
ở ộ ứ ể ế ơ ỗ ố Hoàng Ki m & Đ Văn Nh n, M r ng và phát tri n mô hình tri th c các đ i
ộ ố ấ ề ọ ọ ủ ỷ ế ả ộ ố ượ t ng tính toán, K y u H i th o Qu c Gia M t s v n đ ch n l c c a CNTT,
ậ ọ ỹ NXB Khoa h c k thu t (2005).
ệ ả ế ơ ỗ ậ ườ ọ ậ Đ Văn Nh n, Ki n trúc h gi i bài t p cho ng ỹ i h c và k thu t thi ế ế ạ t k , T p
ạ ọ ư ụ ậ ậ ạ ọ ố ỹ ỹ chí Khoa. H c Giáo d c k thu t, Đ i h c s ph m k thu t TpHCM, S 2(4)
2007.
ụ ậ ạ ộ ớ ọ B Giáo d c và Đào t o, Sách Giáo khoa Bài h c và Bài t p các l pTHCS, NXB
Giáo d c.ụ
ế ả ư ế ậ ộ Hoàng Ki m, Gi ụ i m t Bài toán trên Máy tính nh th nào, t p 1, NXB Giáo D c
(2000).
ả ư ế ấ ả ụ G. Polya, Gi i bài toán nh th nào, Nhà xu t b n Giáo d c (1997).
Frank van Harmelem & Vladimir & Bruce, 2008, “Handbook of Knowledge,
Representation”, Elsevier.
Stuart Russell & Peter Norvig, Artificial Intelligence – A modern approach
(second edition), Prentice Hall (2003).
John F. Sowa. Knowledge Representation: Logical, Philosophical and
Computational Foundations, Brooks/Cole (2000).
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 33
Ứ
ụ
ọ
ể
ễ
ơ
ỗ
Báo cáo môn h c: Bi u Di n TT Và ng D ng
GVHD: PGS.TS Đ Văn Nh n
Nhon Do, An ontology for knowledge representation and Applications,
Proceeding of World Academy of science, engineer and technology, vol. 32, August
2008, ISSN: 2070370
Nhon Van Do, Computational Networks for Knowledge Representation, World
Academy of Science, Engineering and Technology, Volume 56, August 2009,
ISSN 2070 – 3724 (ICCSISE 2009), Singapore, 2009.
Nhon Do & Hien Nguyen, Model for Knowledge Representation using Sample
Problems and Designing a Program for automatically solving algebraic problems,
World Academy of Science, Engineering and Technology, (ICEEEL 2010), Paris,
2010.
Nhon Do, Hien Nguyen, “A reasoning method on Computation Network and Its
applications.”, 2011 International MultiConference of Engineers and Computer
Scientists, IMECS 2011, ISBN: 9789881821034, pp. 137141, Hongkong , March
2011.
http://www.maplesoft.com.
http://maplevn2008.wordpress.com
ố ườ
ầ HVTH: Tr n Qu c C
ng
Trang: 34