ạ ọ

Đ 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 Com­object, 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  và có th ể

ế ậ ừ ộ ố ượ ề ượ đ 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  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 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 “.txt” đ  l u

ạ ố ượ ữ ấ ủ ố ượ ệ 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..(k­1)) )];  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(Pi­50­arcsin(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*Pi­230)­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 (2001­2002).

ở ộ ứ ể ế ơ ỗ ố   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: 2070­370

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: 978­988­18210­3­4, pp. 137­141, Hongkong , March

2011.

http://www.maplesoft.com.

http://maplevn2008.wordpress.com

ố ườ

ầ HVTH: Tr n Qu c C

ng

Trang: 34