15
MOÂ HÌNH TRI THÖÙC VEÀ CAÙC ÑOÁI TÖÔÏNG TÍNH TOAÙN Hoaøng Kieám – Ñoã Vaên Nhôn Tröôøng Ñaïi hoïc Khoa hoïc Töï nhieân TPHCM E-mail: [email protected] - Toùm taét : Trong baøi naøy seõ neâu leân moät moâ hình bieåu dieãn tri thöùc ñöôïc goïi laø moâ hình tri thöùc veà caùc ñoái töôïng tính toaùn. Moâ hình naøy ñöôïc xaây döïng theo caùch tieáp caän höôùng ñoái töôïng trong ñoù keát hôïp caùc kyõ thuaät bieåu dieãn caáu truùc, bieåu dieãn thuû tuïc, bieåu dieãn maïng, bieåu dieãn theo ñoái töôïng vaø caùc kyõ thuaät tính toaùn symbolic treân maùy tính. Kieán thöùc veà hình hoïc giaûi tích vaø kieán thöùc veà hình hoïc phaúng laø nhöõng ví duï minh hoïa cho moâ hình. Ta coù theå thöïc hieän bieåu dieãn tri thöùc hình hoïc theo moâ hình tri thöùc caùc ñoái töôïng tính toaùn. Moâ hình naøy ñaõ ñöôïc söû duïng trong vieäc xaây döïng phaàn cô sôû tri thöùc cho caùc öùng duïng: heä giaûi baøi toaùn hình hoïc giaûi tích 3 chieàu, vaø heä giaûi baøi toaùn hình hoïc phaúng, caøi ñaët trong C++ vaø trong MAPLE. I. GIÔÙI THIEÄU Trong nhieàu vaán ñeà giaûi toaùn döïa treân tri thöùc ta thöôøng ñeà caäp ñeán caùc ñoái töôïng khaùc nhau vaø moãi ñoái töôïng coù caáu truùc bao goàm moät soá thuoäc tính vôùi nhöõng quan heä nhaát ñònh. Nhöõng quan heä naày giuùp ta thöïc hieän söï suy dieãn, tính toaùn vaø giaûi moät soá baøi toaùn suy dieãn-tính toaùn treân caùc thuoäc tính cuûa ñoái töôïng. Ví duï: trong giaûi toaùn hình hoïc, moät tam giaùc vôùi caùc thuoäc tính nhö 3 caïnh, 3 goùc trong, dieän tích, nöûa chu vi, baùn kính voøng troøn ngoaïi tieáp, v.v … cuøng vôùi caùc coâng thöùc lieân heä giöõa caùc thuoäc tính ñoù seõ cho ta moät caáu truùc cuûa moät ñoái töôïng nhö theá. Theo caùch tieáp caän höôùng ñoái töôïng (xem [8] vaø [9]) trong bieåu dieãn tri thöùc vaø giaûi toaùn, ta tích hôïp vaøo caáu truùc ñoái töôïng treân moät soá haønh vi giaûi toaùn nhaát ñònh ñeå taïo ra moät ñoái töôïng, ñöôïc goïi laø ñoái töôïng tính toaùn. Döïa treân caùc ñoái töôïng naày, nhieàu baøi toaùn khaùc nhau coù theå ñöôïc bieåu dieãn döôùi daïng maïng caùc ñoái töôïng. Caùch bieåu dieãn naày coù theå ñöôïc aùp duïng moät caùch coù hieäu quaû trong caùc heä giaûi

Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

Embed Size (px)

DESCRIPTION

Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

Citation preview

Page 1: Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

MOÂ HÌNH TRI THÖÙC VEÀ CAÙC ÑOÁI TÖÔÏNG TÍNH TOAÙN

Hoaøng Kieám – Ñoã Vaên NhônTröôøng Ñaïi hoïc Khoa hoïc Töï nhieân TPHCM

E-mail: [email protected]

- Toùm taét : Trong baøi naøy seõ neâu leân moät moâ hình bieåu dieãn tri thöùc ñöôïc goïi laø moâ hình tri thöùc veà caùc ñoái töôïng tính toaùn. Moâ hình naøy ñöôïc xaây döïng theo caùch tieáp caän höôùng ñoái töôïng trong ñoù keát hôïp caùc kyõ thuaät bieåu dieãn caáu truùc, bieåu dieãn thuû tuïc, bieåu dieãn maïng, bieåu dieãn theo ñoái töôïng vaø caùc kyõ thuaät tính toaùn symbolic treân maùy tính. Kieán thöùc veà hình hoïc giaûi tích vaø kieán thöùc veà hình hoïc phaúng laø nhöõng ví duï minh hoïa cho moâ hình. Ta coù theå thöïc hieän bieåu dieãn tri thöùc hình hoïc theo moâ hình tri thöùc caùc ñoái töôïng tính toaùn. Moâ hình naøy ñaõ ñöôïc söû duïng trong vieäc xaây döïng phaàn cô sôû tri thöùc cho caùc öùng duïng: heä giaûi baøi toaùn hình hoïc giaûi tích 3 chieàu, vaø heä giaûi baøi toaùn hình hoïc phaúng, caøi ñaët trong C++ vaø trong MAPLE.

I. GIÔÙI THIEÄU

Trong nhieàu vaán ñeà giaûi toaùn döïa treân tri thöùc ta thöôøng ñeà caäp ñeán caùc ñoái töôïng khaùc nhau vaø moãi ñoái töôïng coù caáu truùc bao goàm moät soá thuoäc tính vôùi nhöõng quan heä nhaát ñònh. Nhöõng quan heä naày giuùp ta thöïc hieän söï suy dieãn, tính toaùn vaø giaûi moät soá baøi toaùn suy dieãn-tính toaùn treân caùc thuoäc tính cuûa ñoái töôïng. Ví duï: trong giaûi toaùn hình hoïc, moät tam giaùc vôùi caùc thuoäc tính nhö 3 caïnh, 3 goùc trong, dieän tích, nöûa chu vi, baùn kính voøng troøn ngoaïi tieáp, v.v … cuøng vôùi caùc coâng thöùc lieân heä giöõa caùc thuoäc tính ñoù seõ cho ta moät caáu truùc cuûa moät ñoái töôïng nhö theá. Theo caùch tieáp caän höôùng ñoái töôïng (xem [8] vaø [9]) trong bieåu dieãn tri thöùc vaø giaûi toaùn, ta tích hôïp vaøo caáu truùc ñoái töôïng treân moät soá haønh vi giaûi toaùn nhaát ñònh ñeå taïo ra moät ñoái töôïng, ñöôïc goïi laø ñoái töôïng tính toaùn. Döïa treân caùc ñoái töôïng naày, nhieàu baøi toaùn khaùc nhau coù theå ñöôïc bieåu dieãn döôùi daïng maïng caùc ñoái töôïng. Caùch bieåu dieãn naày coù theå ñöôïc aùp duïng moät caùch coù hieäu quaû trong caùc heä giaûi toaùn, chaúng haïn nhö caùc heä giaûi caùc baøi toaùn hình hoïc. So vôùi moät soá phöông phaùp ñöôïc trình baøy trong caùc taøi lieäu [11], [12] vaø [13], caùch moâ hình naày toû ra coù nhieàu öu ñieåm, ñaëc bieät laø khaû naêng bieåu dieãn haàu nhö toaøn boä tri thöùc vaø caùc daïng baøi toaùn toång quaùt thuaän tieän cho vieäc phaùt trieån caùc thuaät toaùn giaûi töï ñoäng vaø cung caáp nhöõng lôøi giaûi töï nhieân phuø hôïp vôùi caùch

Page 2: Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

nghó vaø vieát cuûa con ngöôøi. Ngoaøi ra, noù coøn giuùp ích cho vieäc thieát keá vaø caøi ñaët phaàn cô sôû tri thöùc cuõng nhö ngoân ngöõ qui öôùc ñeå ñaëc taû baøi toaùn.

Moãi loaïi C-Object khi xeùt rieâng bieät chæ theå hieän ñöôïc moät phaàn tri thöùc coù tính chaát cuïc boä trong öùng duïng trong khi kieán thöùc cuûa con ngöôøi veà moät lónh vöïc hay moät phaïm vi kieán thöùc naøo ñoù thöôøng bao goàm caùc khaùi nieäm vaø caùc loaïi ñoái töôïng khaùc nhau vôùi nhöõng moái quan heä höõu cô. Ví duï nhö caïnh a cuûa moät tam giaùc laø moät thuoäc tính cuûa ñoái töôïng tam giaùc, khi xeùt nhö moät ñoái töôïng ñoäc laäp thì noù laø moät “ñoaïn thaúng”. “ñoaïn thaúng” laø moät loaïi ñoái töôïng coù moät thuoäc tính giaù trò thöïc chính laø ñoä daøi cuûa noù vaø giaù trò naày seõ ñöôïc duøng trong caùc coâng thöùc tính toaùn hay caùc quan heä tính toaùn; maët khaùc ñoaïn thaúng cuõng coù caùc quan heä phi tính toaùn nhö quan heä song song hay quan heä vuoâng goùc. Caùc loaïi quan heä tính toaùn vaø nhöõng quan heä phi-tính toaùn giöõa caùc ñoaïn thaúng cuõng coù nhöõng luaät cuûa rieâng noù maø khoâng phaûi laø nhöõng luaät noäi taïi trong moät tam giaùc. Nhö vaäy, ñeå coù moät moâ hình bieåu dieãn tri thöùc roäng hôn coù theå söû duïng trong vieäc xaây döïng moät heä cô sôû tri thöùc vaø giaûi toaùn veà caùc C-Object ta caàn phaûi xem xeùt khaùi nieäm C-Object trong moät heä thoáng khaùi nieäm caùc C-Object cuøng vôùi caùc loaïi söï kieän, caùc loaïi quan heä khaùc nhau vaø caùc daïng luaät khaùc nhau lieân quan ñeán chuùng. Chuùng ta seõ xem xeùt moät moâ hình tri thöùc nhö theá vaø goïi noù laø moâ hình tri thöùc veà caùc C-Object. Kieán thöùc veà hình hoïc giaûi tích vaø kieán thöùc veà hình hoïc phaúng laø nhöõng ví duï minh hoïa cho moâ hình. Ta coù theå thöïc heän bieåu dieãn tri thöùc hình hoïc theo moâ hình tri thöùc caùc ñoái töôïng tính toaùn.

Moâ hình naøy ñaõ ñöôïc söû duïng trong vieäc xaây döïng phaàn cô sôû tri thöùc cho caùc öùng duïng: heä giaûi baøi toaùn hình hoïc giaûi tích 3 chieàu, vaø heä giaûi baøi toaùn hình hoïc phaúng (xem [10] vaø [14]). Caùc öùng duïng naøy ñöôïc caøi ñaët baèng ngoân ngöõ C++ vaø MAPLE.

II. MOÂ HÌNH

4.1 Moâ hình moät ñoái töôïng tính toaùn

Ta goïi moät ñoái töôïng tính toaùn (C-object) laø moät ñoái töôïng O coù caáu truùc bao goàm

(1)Moät danh saùch caùc thuoäc tính Attr(O) = x1, x2,..., xn trong ñoù moãi thuoäc tính laáy giaù trò trong moät mieàn xaùc ñònh nhaát ñònh, vaø giöõa caùc thuoäc tính ta coù caùc quan heä theå hieän qua caùc söï kieän, caùc luaät suy dieãn hay caùc coâng thöùc tính toaùn.

Page 3: Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

(2)Caùc haønh vi lieân quan ñeán söï suy dieãn vaø tính toaùn treân caùc thuoäc tính cuûa ñoái töôïng hay treân caùc söï kieän nhö: Xaùc ñònh bao ñoùng cuûa moät taäp hôïp thuoäc tính A

Attr(O), töùc laø ñoái töôïng O coù khaû naêng cho ta bieát taäp thuoäc tính lôùn nhaát coù theå ñöôïc suy ra töø A trong ñoái töôïng O.

Xaùc ñònh tính giaûi ñöôïc cuûa baøi toaùn suy dieãn tính toaùn coù daïng A B vôùi A Attr(O) vaø B Attr(O). Noùi moät caùch khaùc, ñoái töôïng coù khaû naêng traû lôøi caâu hoûi raèng coù theå suy ra ñöôïc caùc thuoäc tính trong B töø caùc thuoäc tính trong A khoâng.

Thöïc hieän caùc tính toaùn Thöïc hieän vieäc gôïi yù boå sung giaû thieát cho baøi toaùn Xem xeùt tính xaùc ñònh cuûa ñoái töôïng, hay cuûa moät söï

kieänVí duï 1: Moät caáu truùc tam giaùc vôùi caáu truùc goàm caùc yeáu toá

nhö : 3 caïnh a, b, c; 3 goùc töông öùng vôùi 3 caïnh : , , ; 3 ñöôøng cao töông öùng : ha, hb, hc; dieän tích S cuûa tam giaùc; nöûa chu vi p cuûa tam giaùc; baùn kính ñöôøng troøn ngoaïi tieáp R cuûa tam giaùc, v.v … cuøng vôùi caùc coâng thöùc lieân heä giöõa chuùng nhö ñònh lyù goùc trong tam giaùc, ñònh lyù sin, ñònh lyù cosin, caùc coâng thöùc tính dieän tích, … seõ trôû thaønh moät ñoái töôïng C-object khi ta tích hôïp caáu truùc naày vôùi caùc haønh vi xöû lyù lieân quan ñeán vieäc giaûi baøi toaùn tam giaùc cuõng nhö caùc haønh vi xem xeùt moät söï kieän naøo ñoù lieân quan ñeán caùc thuoäc tính hay chính baûn thaân ñoái töôïng. Nhö vaäy ta coù moät ñoái töôïng tam giaùc. Khi ñoái töôïng tam giaùc naày ñöôïc yeâu caàu cho moät lôøi giaûi cho baøi toaùn a,B,C S noù seõ cung caáp moät lôøi giaûi goàm 3 böôùc sau ñaây:

Böôùc 1: Xaùc ñònh A bôûi coâng thöùc A = -B-C;Böôùc 2: Xaùc ñònh b bôûi coâng thöùc b = a.sin(B)/sin(A);Böôùc 3: Xaùc ñònh S bôûi coâng thöùc S = a.b.sin(C)/2;

Neáu yeâu caàu laø giaûi baøi toaùn a,B S thì ñoái töôïng seõ traû lôøi raèng “khoâng giaûi ñöôïc” vaø noù coù theå ñeà nghò cung caáp theâm thoâng tin nhö A, C, b hay c.

Ví duï 2: Moät caáu truùc töù giaùc vôùi caáu truùc goàm caùc yeáu toá nhö : 4 caïnh a, b, c, d; 2 ñöôøng cheùo; 4 goùc, v.v … cuøng vôùi caùc coâng thöùc lieân heä giöõa chuùng vaø caùc söï kieän veà caùc quan heä seõ trôû thaønh moät ñoái töôïng C-object khi ta tích hôïp caáu truùc naày vôùi caùc haønh vi xöû lyù lieân quan ñeán vieäc giaûi baøi toaùn töù giaùc cuõng nhö caùc haønh vi xem xeùt moät söï kieän naøo ñoù lieân quan ñeán caùc thuoäc tính hay chính baûn thaân ñoái töôïng. Nhö vaäy ta coù moät ñoái töôïng töù giaùc.

Moät C-Object coù theå ñöôïc moâ hình hoùa bôûi moät boä: (Attrs, F, Facts, Rules)

Page 4: Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

trong ñoù: Attrs laø taäp hôïp caùc thuoäc tính cuûa ñoái töôïng, F laø taäp hôïp caùc quan heä suy dieãn tính toaùn, Facts laø taäp hôïp caùc tính chaát hay caùc söï kieän voán coù cuûa ñoái töôïng, vaø Rules laø taäp hôïp caùc luaät suy dieãn treân caùc söï kieän lieân quan ñeán caùc thuoäc tính cuõng nhö lieân quan ñeán baûn thaân ñoái töôïng. Ví duï 3: Ñoái töôïng tính toaùn thuoäc loaïi “tam giaùc” ñöôïc bieåu

dieãn theo moâ hình treân goàm coù: Attrs = GocA, GocB, GocC, a, b, c, ha, hb, hc, ma, mb, mc, pa,

pb, pc, S, p, R, r, ra, rb, rc F = GocA + GocB + GocC = Pi, a*sin(GocB) = b*sin(GocA),

a^2 = b^2 + c^2 - 2*b*c*cos(GocA), . . . Facts = Rules = {GocA=GocB} {a=b}, {a=b} {GocA=GocB},

{a^2 = b^2+c^2}{GocA=pi/2}, {GocA=pi/2} {a^2 = b^2+c^2, b c}, ...

Ví duï 4: Ñoái töôïng (C-Object) thuoäc loaïi “TU_GIAC” ñöôïc bieåu dieãn theo moâ hình treân goàm coù: Attrs = a, b, c, d, c1, c2, GA, GB, GC, GD, . . . F = GA + GB + GC + GD = 2*Pi, a+b+c+d = p,

2*S = a*d*sin(GA)+ b*c*sin(GC), 2*S = a*b*sin(GB)+ c*d*sin(GD), . . .

Facts = Rules = {a // c} {GD=Pi-GA, GB=Pi-GC,

GOC[A,B,D]=GOC[C,D,B], GOC[C,A,B]=GOC[A,C,D]},{GOC[C,A,B]=GOC[A,C,D]} {a // c},{a=c, b=d} {a // c, b // d}, ...

4.2 Moâ hình tri thöùc caùc ñoái töôïng tính toaùn

Ta goïi moät moâ hình tri thöùc caùc ñoái töôïng tính toaùn , vieát taét laø moät moâ hình COKB (Computational Objects Knowledge Base), laø moät heä thoáng (C, H, R, Ops, Rules) goàm:1. Moät taäp hôp C caùc khaùi nieäm veà caùc C-Object .

Moãi khaùi nieäm laø moät lôùp C-Object coù caáu truùc vaø ñöôïc phaân caáp theo söï thieát laäp cuûa caáu truùc ñoái töôïng:[1]Caùc bieán thöïc.[2]Caùc ñoái töôïng cô baûn coù caáu truùc roãng hoaëc coù caáu

truùc goàm moät soá thuoäc tính thuoäc kieåu thöïc. Caùc ñoái töôïng loaïi naày laøm neàn cho caùc ñoái töôïng caáp cao hôn.

[3]Caùc ñoái töôïng tính toaùn caáp 1. Loaïi ñoái töôïng naày coù moät thuoäc tính loaïi <real> vaø coù theå ñöôïc thieát laäp töø moät danh saùch neàn caùc ñoái töôïng cô baûn.

[4]Caùc ñoái töôïng tính toaùn caáp 2. Loaïi ñoái töôïng naày coù caùc thuoäc tính loaïi <real> vaø caùc thuoäc tính thuoäc loaïi ñoái töôïng caáp 1, vaø ñoái töôïng coù theå ñöôïc thieát laäp treân moät danh saùch neàn caùc ñoái töôïng cô baûn.

Caáu truùc beân trong cuûa moãi lôùp ñoái töôïng goàm:

Page 5: Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

- Kieåu ñoái töôïng. Kieåu naày coù theå laø loaïi kieåu thieát laäp treân moät danh saùch neàn caùc ñoái töôïng cô baûn.

- Danh saùch caùc thuoäc tính, moãi thuoäc tính coù kieåu thöïc, kieåu ñoái töôïng cô baûn hay kieåu ñoái töôïng caáp thaáp hôn.

- Quan heä treân caáu truùc thieát laäp. Quan heä naày theå hieän caùc söï kieän veà söï lieân heä giöõa ñoái töôïng vaø caùc ñoái töôïng neàn (töùc laø caùc ñoái töôïng thuoäc danh saùch ñoái töôïng neàn).

- Taäp hôïp caùc ñieàu kieän raøng buoäc treân caùc thuoäc tính.- Taäp hôïp caùc tính chaát noäi taïi lieân quan ñeán caùc thuoäc tính

cuûa ñoái töôïng. Moãi tính chaát naày cho ta moät söï kieän cuûa ñoái töôïng.

- Taäp hôïp caùc quan heä suy dieãn - tính toaùn. Moãi quan heä theå hieän moät qui luaät suy dieãn vaø cho pheùp ta coù theå tính toaùn moät hay moät soá thuoäc tính naày töø moät soá thuoäc tính khaùc cuûa ñoái töôïng.

- Taäp hôïp caùc luaät suy dieãn treân caùc loaïi söï kieän khaùc nhau lieân quan ñeán caùc thuoäc tính cuûa ñoái töôïng hay baûn thaân ñoái töôïng. Moãi luaät suy dieãn coù daïng:

caùc söï kieän giaû thieátcaùc söï kieän keát luaänCuøng vôùi caáu truùc treân, ñoái töôïng coøn ñöôïc trang bò caùc haønh vi cô baûn trong vieäc giaûi quyeát caùc baøi toaùn suy dieãn vaø tính toaùn treân caùc thuoäc tính cuûa ñoái töôïng, baûn thaân ñoái töôïng hay caùc ñoái töôïng lieân quan ñöôïc thieát laäp treân neàn cuûa ñoái töôïng (neáu ñoái töôïng ñöôïc thieát laäp treân moät danh saùch caùc ñoái töôïng neàn naøo ñoù). Caùc haønh vi cô baûn naày cuûa ñoái töôïng tính toaùn seõ ñöôïc xem xeùt chi tieát hôn trong phaàn sau.

2. Moät taäp hôp H caùc quan heä phaân caáp giöõa caùc loaïi ñoái töôïng.Treân taäp hôïp C ta coù moät quan heä phaân caáp theo ñoù coù theå coù moät soá khaùi nieäm laø söï ñaëc bieät hoùa cuûa caùc khaùi nieäm khaùc, chaúng haïn nhö moät tam giaùc caân cuõng laø moät tam giaùc, moät hình bình haønh cuõng laø moät töù giaùc. Coù theå noùi raèng H laø moät bieåu ñoà Hasse khi xem quan heä phaân caáp treân laø moät quan heä thöù töï treân C.

3. Moät taäp hôp R caùc khaùi nieäm veà caùc loaïi quan heä treân caùc C-Object.Moãi quan heä ñöôïc xaùc ñònh bôûi <teân quan heä> vaø caùc loaïi ñoái töôïng cuûa quan heä, vaø quan heä coù theå coù moät soá tính chaát trong caùc tính chaát sau ñaây: tính chaát phaûn xaï, tính chaát ñoái xöùng, tính chaát phaûn xöùng vaø tính chaát baéc caàu. Ví duï: Quan heä cuøng phöông treân 2 ñoaïn thaúng coù caùc tính chaát phaûn xaï, ñoái xöùng vaø baéc caàu.

4. Moät taäp hôp Ops caùc toaùn töû .Caùc toaùn töû cho ta moät soá pheùp toaùn treân caùc bieán thöïc cuõng nhö treân caùc ñoái töôïng, chaúng haïn caùc pheùp toaùn soá

Page 6: Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

hoïc vaø tính toaùn treân caùc ñoái töôïng ñoaïn vaø goùc töông töï nhö ñoái vôùi caùc bieán thöïc.

5. Moät taäp hôp Rules goàm caùc luaät ñöôïc phaân lôùp .Caùc luaät theå hieän caùc tri thöùc mang tính phoå quaùt treân caùc khaùi nieäm vaø caùc loaïi söï kieän khaùc nhau. Moãi luaät cho ta moät qui taéc suy luaän ñeå ñi ñeán caùc söï kieän môùi töø caùc söï kieän naøo ñoù, vaø veà maët caáu truùc noù goàm 2 thaønh phaàn chính laø: phaàn giaû thieát cuûa luaät vaø phaàn keát luaän cuûa luaät. Phaàn giaû thieát vaø phaàn keát luaän ñeàu laø caùc taäp hôïp söï kieän treân caùc ñoái töôïng nhaát ñònh. Nhö vaäy, moät luaät r coù theå ñöôïc moâ hình döôùi daïng:

r : sk1, sk2, ..., skn sk1, sk2, ..., skm Ñeå moâ hình luaät daãn treân coù hieäu löïc trong cô sôû tri thöùc

vaø ta coù theå khaûo saùt caùc thuaät giaûi ñeå giaûi quyeát caùc baøi toaùn, chuùng ta caàn xaùc ñònh caùc daïng söï kieän khaùc nhau coù theå coù trong caùc luaät. ÔÛ ñaây chuùng ta xem xeùt 6 loaïi söï kieän khaùc nhau nhö sau: söï kieän thoâng tin veà loaïi cuûa moät ñoái töôïng, söï kieän veà tính xaùc ñònh cuûa moät ñoái töôïng, söï kieän veà söï xaùc ñònh cuûa moät thuoäc tính hay moät ñoái töôïng thoâng qua moät bieåu thöùc haèng, söï kieän veà söï baèng nhau giöõa moät ñoái töôïng hay moät thuoäc tính vôùi moät ñoái töôïng hay moät thuoäc tính khaùc, söï kieän veà söï phuï thuoäc cuûa moät ñoái töôïng hay cuûa moät thuoäc tính theo nhöõng ñoái töôïng hay caùc thuoäc tính khaùc thoâng qua moät coâng thöùc tính toaùn, vaø söï kieän veà moät quan heä treân caùc ñoái töôïng hay treân caùc thuoäc tính cuûa caùc ñoái töôïng.

III. AÙP DUÏNG: BIEÅU DIEÃN KIEÁN THÖÙC HÌNH HOÏC

Trong phaàn naày chuùng ta neâu leân moät ví duï aùp duïng: Bieåu dieãn tri thöùc veà caùc tam giaùc vaø töù giaùc trong hình hoïc phaúng theo moâ hình COKB. Phaàn kieán thöùc veà caùc tam giaùc vaø caùc töù giaùc trong hình hoïc phaúng coù theå ñöôïc bieåu dieãn theo moâ hình tri thöùc COKB vôùi caùc thaønh phaàn nhö döôùi ñaây.[1]Caùc khaùi nieäm veà caùc ñoái töôïng tính toaùn goàm :- Khaùi nieäm cô baûn laø khaùi nieäm ñieåm.- Caùc ñoái töôïng caáp 1: ñoaïn, goùc. Moãi ñoaïn coù moät thuoäc

tính giaù trò thöïc, ñoù laø ñoä daøi cuûa ñoaïn; Moãi ñoaïn coù theå ñöôïc thieát laäp töø 2 ñieåm. Moãi goùc coù moät thuoäc tính giaù trò thöïc, ñoù laø soá ño cuûa goùc; Moãi goùc coù theå ñöôïc thieát laäp töø 3 ñieåm.

- Caùc ñoái töôïng caáp 2: caùc loaïi tam giaùc vaø caùc loaïi töù giaùc. Caùc loaïi tam giaùc bao goàm “tam giaùc”, “tam giaùc caân”, “tam giaùc vuoâng”, “tam giaùc vuoâng caân” vaø “tam giaùc ñeàu”. Caùc loaïi töù giaùc bao goàm “töù giaùc”, “hình thang”, “hình thang vuoâng”, “hình thang caân”, “hình bình haønh”, “hình chöõ nhaät”, “hình thoi” vaø “hình vuoâng”.

Page 7: Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

[2]Caùc quan heä phaân caáp giöõa caùc loaïi ñoái töôïng :Giöõa caùc khaùi nieäm veà caùc loaïi tam giaùc vaø caùc loaïi töù

giaùc coù caùc quan heä phaân caáp theo söï ñaëc bieät hoùa cuûa caùc khaùi nieäm. Chaúng haïn, moät tam giaùc caân cuõng laø moät tam giaùc, moät hình bình haønh cuõng laø moät töù giaùc. Heä thoáng quan heä phaân caáp caùc khaùi nieäm hình hoïc naøy coù theå ñöôïc theå hieän treân caùc bieåu ñoà thöù töï döôùi ñaây.

Hình 1 Bieåu ñoà Hasse theå hieän quan heä phaân caáp cuûa caùc khaùi nieäm tam giaùc

Hình 2 Bieåu ñoà Hasse theå hieän quan heä phaân caáp cuûa caùc khaùi nieäm töù giaùc

[3]Caùc khaùi nieäm veà caùc loaïi quan heä giöõa caùc loaïi ñoái töôïng:Caùc quan heä giöõa caùc khaùi nieäm bao goàm caùc loaïi quan heä

nhö:- Quan heä thuoäc veà cuûa 1 ñieåm ñoái vôùi moät ñoaïn thaúng.- Quan heä trung ñieåm cuûa moät ñieåm ñoái vôùi moät ñoaïn

thaúng.- Quan heä song song giöõa 2 ñoaïn thaúng.- Quan heä vuoâng goùc giöõa 2 ñoaïn thaúng.- Quan heä baèng nhau giöõa 2 tam giaùc.[4]Caùc toaùn töû :

Page 8: Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

Caùc toaùn töû soá hoïc vaø caùc haøm sô caáp cuõng aùp duïng ñoái vôùi caùc ñoái töôïng loaïi “ñoaïn thaúng” vaø caùc ñoái töôïng loaïi “goùc”.

[5]Caùc luaät :Caùc luaät treân caùc loaïi söï kieän khaùc nhau chaúng haïn nhö caùc luaät ñöôïc lieät keâ beân döôùi. (1)Vôùi 2 ñieåm A, B ta coù ñoaïn AB = ñoaïn BA.(2)Moät tam giaùc ABC coù 2 caïnh AB vaø AC baèng nhau thì tam

giac laø tam giaùc caân taïi A.(3)Vôùi 3 ñoaïn thaúng a, b vaø c, neáu a // b vaø a c thì ta coù b

c.(4)Vôùi 3 ñieåm M, A vaø B, neáu ñieåm M thuoäc ñoaïn AB thì ta coù

(soá ño ñoaïn AB) = (soá ño ñoaïn AM) + (soá ño ñoaïn MB).(5)Neáu 2 tam giaùc coù 3 caïnh töông öùng baèng nhau thì chuùng

baèng nhau.

IV. GIAÛI TOAÙN VEÀ MOÄT ÑOÁI TÖÔÏNG TÍNH TOAÙN

Trong phaàn naày seõ trình baøy thieát keá caùc xöû lyù cô baûn theå hieän caùc haønh vi maø chuùng ta caøi ñaët cho caùc ñoái töôïng C-Object. Caùc haønh vi naày bao goàm:- Khaû naêng giaûi quyeát moät baøi toaùn coù daïng:

GT KLTrong ñoù GT vaø KL laø caùc taäp hôïp nhöõng söï kieän treân caùc thuoäc tính cuûa ñoái töôïng. Khaû naêng naày bao goàm vieäc xem xeùt tính giaûi ñöôïc cuûa baøi toaùn, tìm lôøi giaûi cho baøi toaùn, vaø thöïc hieän vieäc tính toaùn.

- Xeùt tính xaùc ñònh cuûa ñoái töôïng döïa treân moät soá söï kieän cho tröôùc.

- Khaû naêng giaûi quyeát moät baøi toaùn coù daïng môû roäng:GT KL

Trong ñoù GT vaø KL laø caùc taäp hôïp nhöõng söï kieän treân caùc thuoäc tính cuûa ñoái töôïng vaø treân caùc ñoái töôïng thieát laäp treân caùc ñoái töôïng neàn cuûa ñoái töôïng.

Nhö vaäy, ta coù caùc vaán ñeà cô baûn ñöôïc ñaët ra cho vieäc giaûi toaùn moät ñoái töôïng C-Object nhö sau: Vaán ñeà 1 : Xeùt tính giaûi ñöôïc cuûa baøi toaùn GT KL, trong ñoù

GT vaø KL laø caùc taäp hôïp nhöõng söï kieän treân caùc thuoäc tính cuûa ñoái töôïng.

Vaán ñeà 2 : Tìm moät lôøi giaûi cho baøi toaùn GT KL, trong ñoù GT vaø KL laø caùc taäp hôïp nhöõng söï kieän treân caùc thuoäc tính cuûa ñoái töôïng.

Vaán ñeà 3 : Thöïc hieän tính toaùn caùc thuoäc tính trong taäp hôïp KL töø caùc söï kieän trong GT trong tröôøng hôïp baøi toaùn GT KL giaûi ñöôïc, trong ñoù GT vaø KL laø caùc taäp hôïp nhöõng söï kieän treân caùc thuoäc tính cuûa ñoái töôïng.

Page 9: Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

Vaán ñeà 4 : Xeùt tính xaùc ñònh cuûa ñoái töôïng döïa treân moät taäp söï kieän cho tröôùc treân caùc thuoäc tính cuûa ñoái töôïng.

4.1 Giaûi quyeát vaán ñeà cô baûn 1YÙ töôûng cô baûn laø thöïc hieän moät quaù trính suy dieãn tieán keát hôïp vôùi moät soá qui taéc heuristic nhaèm taêng cöôøng toác ñoä giaûi quyeát baøi toaùn vaø ñaït ñöôïc moät lôøi giaûi toát nhanh hôn. Ñeå thieát keá thaät giaûi naày chuùng toâi ñaõ ñònh nghóa moät soá khaùi nieäm lieân quan bao goàm caùc khaùi nieäm: “söï hôïp nhaát” cuûa caùc söï kieän, moät “böôùc giaûi”, moät “lôøi giaûi” vaø söï “giaûi ñöôïc”. Döôùi ñaây laø caùc ví duï minh hoïa.- Caùc ví duï veà caùc söï kieän hôïp nhaát vôùi nhau:

[Ob1, “TAM_GIAC”] vaø [Ob1, “TAM_GIAC”].TAM_GIAC[A,B,C]. a vaø DOAN[B,C].Ob.a = (m+1)^2 vaø Ob.a = m^2 + 2*m + 1.Ob1 = Ob2 vaø Ob2 = Ob1.a^2 = b^2 + c^2 vaø b^2 = a^2 – c^2. a // b vaø b // a.

- Moät soá ví duï veà caùc böôùc giaûi:

1/ , GocA12 GocB

13 ,

:= f [ ], , , , , ," relation 0" 1 { }, ,GocA GocB GocC 1 { } GocA + GocB + GocC = Pi 2

GocC16

2/ S 2 a , := f [ ], , , , , ," relation 11" 1 { }, ,a ha S 1 { } S = a*ha/2 4 ha 4

3/ a2 b2 c2 , := f [ ], , , , , ," relation 1" 0 { }, , ,a b c GocA 1 { }a a^2 = b^2 + c^2 - 2*b*c*cos(GocA) 19

GocA12

4/ b2 a2 c2 , rule : if a2 b2 c2 then GocA12 GocA

12

- Moät soá ví duï veà baøi toaùn GT KL treân ñoái töôïng “TAM_GIAC” vaø keát quaû khaûo saùt tính giaûi ñöôïc cuûa noù:1/ GT = a, b, c, GocA = m*(b+c), KL = GocC: Giaûi ñöôïc.2/ GT = a, b=1, c, GocA = m*(b+c), GocA = 2*GocB, KL = GocB, GocC: Giaûi ñöôïc.3/ GT = GocB, c, KL = S: Khoâng giaûi ñöôïc.4/ GT = GocC, GocA, a, KL = p, R: Giaûi ñöôïc.5/ GT = a, b, c=a^2+m*p, KL = S: Giaûi ñöôïc.

4.2 Giaûi quyeát vaán ñeà cô baûn 2Ñeå giaûi quyeát vaán ñeà naày chuùng ta cuõng coù theå thöïc hieän moät quaù trình suy dieãn tieán vôùi söï vaän duïng moät soá qui taéc heuristic. Trong tröôøng hôïp baøi toaùn giaûi ñöôïc, thì trong quaù trình tìm kieám vaø aùp duïng caùc luaät suy dieãn cuõng nhö tính toaùn ñeå phaùt sinh söï kieän môùi ta ñaõ coù ñöôïc moät lôøi giaûi cho baøi

Page 10: Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

toaùn. Tieáp theo nhöõng böôùc giaûi dö thöøa seõ ñöôïc loaïi boû ñeå coù ñöôïc moät lôøi giaûi töï nhieân hôn.- Ví duï: Giaûi baøi toaùn GT KL treân ñoái töôïng “TAM_GIAC” vôùi

GT = a, b=5, GocA = m*(b+c), GocA = 2*GocB, a^2=b^2+c^2KL = GocB, GocC .

Ta coù moät lôøi giaûi ñöôïc tìm thaáy nhö sau:

1. Suy ra { } GocB12

GocA töø { } GocA 2 GocB

2. Suy ra { } GocA12 töø { } a2 b2 c2 bôûi moät luaät suy dieãn

3. Suy ra { } GocB14 töø { }, GocB

12

GocA GocA12

4. Suy ra { }GocB töø { } GocB14

5. Suy ra { } GocC14 töø { }, GocA

12 GocB

14 vaø quan heä

[ ], , , , , ,"relation 0" 1 { }, ,GocB GocA GocC 1 { } GocA + GocB + GocC = Pi 2

6. Suy ra { }GocC töø { } GocC14 .

4.3 Giaûi quyeát vaán ñeà cô baûn 3Vaán ñeà naày coù theå ñöôïc giaûi quyeát baèng caùch duyeät theo trình töï ngöôïc caùc böôùc giaûi trong moät lôøi giaûi cuûa baøi toaùn, töùc laø ñi töø böôùc giaûi cuoái trôû veà böôùc giaûi 1, vaø xaùc ñònh caùc bieán caàn thay theá trong caùc söï kieän môùi ñeå thöïc hieän pheùp thay theá vaø tính toaùn trong bieåu thöùc tính toaùn caùc thuoäc tính muïc tieâu.- Ví duï: Treân moät ñoái töôïng “TAM_GIAC”, cho baøi toaùn GT KL

vôùi

GT = { }, ,a b 1 GocA12 , KL = { }, ,R S c . Haõy thöïc hieän tính

toaùn.Keát quaû tính toaùn nhö sau:

c a2 1 ,{

S14

( ) a 1 a2 1 ( ) a 1 a2 1 ( ) a 1 a2 1 ( ) a 1 a2 1 ,

R12

a}

4.4 Giaûi quyeát vaán ñeà cô baûn 4Ta coù theå giaûi quyeát vaán ñeà naày baèng moät thuaät giaûi khaù ñôn giaûn nhö sau:

Böôùc 1: Duyeät qua caùc luaät xaùc ñònh ñoái töôïng (neáu coù) trong taäp hôïp caùc luaät trong ñoái töôïng vaø choïn ra moät luaät coù soá thuoäc tính veá traùi chöa bieát laø thaáp nhaát. Ñaët <vars> laø taäp hôïp caùc thuoäc tính nhö theá.

Page 11: Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

Böôùc 2: Neáu khoâng coù luaät xaùc ñònh ñoái töôïng, thì ñaët <vars> laø taäp hôïp taát caû caùc thuoäc tính cuûa ñoái töôïng.

Böôùc 3: Xeùt tính giaûi ñöôïc cuûa baøi toaùn GT vars,If (baøi toaùn giaûi ñöôïc) then ñoái töôïng xaùc ñònhElse ñoái töôïng chöa xaùc ñònh;

V. KEÁT LUAÄN

Moâ hình COKB ñöôïc xaây döïng coù caùc öu ñieåm sau: thích hôïp cho vieäc thieát keá moät côù sôû tri thöùc vôùi caùc khaùi nieäm coù theå ñöôïc bieåu dieãn bôûi caùc ñoái töôïng tính toaùn, Caáu truùc töôøng minh giuùp deã daøng thieát keá caùc moâñun truy caäp cô sôû tri thöùc, tieän lôïi cho vieäc thieát keá caùc moâ ñun giaûi baøi toaùn töï ñoäng, thích hôïp cho vieäc ñònh ra moät ngoân ngöõ khai baùo baøi toaùn vaø ñaëc taû baøi toaùn moät caùch töï nhieân. Caùc moâ hình vaø thuaät giaûi ñöôïc ñeà xuaát coù theå laøm coâng cuï cho vieäc xaây döïng caùc heä giaûi baøi toaùn döïa treân tri thöùc, caùc heä cô sôû tri thöùc, vaø caùc phaàn meàm daïy hoïc vôùi söï hoã trôï giaûi toaùn thoâng minh.TAØI LIEÄU THAM KHAÛO

[1] Hoaøng Kieám – Ñoã Vaên Nhôn, Maïng tính toaùn vaø öùng duïng, Taïp chí Tin hoïc vaø ñieàu khieån hoïc, T.13, S.3 (1997) (10-20).

[2] Hoaøng Kieám (2000), Giaûi moät Baøi toaùn treân Maùy tính nhö theá naøo, taäp 1, NXB Giaùo Duïc.

[3] Baïch Höng Khang & Hoaøng Kieám (1989), Trí Tueä Nhaân Taïo, caùc phöông phaùp vaø öùng duïng, Nhaø Xuaát baûn Khoa hoïc vaø Kyõ thuaät.

[4] Hoaøng Kieám (2000), Giaûi moät Baøi toaùn treân Maùy tính nhö theá naøo, taäp 1, NXB Giaùo Duïc.

[5] Nguyeãn Thanh Thuûy (1997), Trí Tueä Nhaân Taïo, NXB Giaùo Duïc.[6] Ñoã Trung Tuaán (1999), Heä Chuyeân Gia, NXB Giaùo Duïc.[7] Andreù Heck (1996), Introduction to Maple, Springer-Verlag New

York, Inc.[8] Berge, J.M. & Levia, O. & Rouillard, J. (1996), Object-Oriented

Modeling. Netherlands: Kluwer Academic Publishers.[9] J.Bergin (1994), DATA ABSTRACTION: The Object-Oriented Approach

using C++, McGrawHill.[10] Ñoã Vaên Nhôn, A Program for studying and Solving problems in

Plane Geometry, Proceedings of International Conference on Artificial Intelligence 2000, Las Vegas, USA, 26 – 29 June 2000.

[11] Chou, S.C. & Gao, X.S. & Zhang, J.Z. (1994), Machine Proofs in Geometry. Singapore: Utopia Press.

[12] Larrecq, J.G. & Mackie, I. (1997), Proof theory and Automated Deduction. Netherlands: Kluwer Academic Publishers.

Page 12: Mo Hinh Tri Thuc Cac Doi Tuong Tinh Toan COKB

[13] Pfalzgraf, J. & Wang, D. (1995), Automated Practical Reasoning. NewYork: Springer-Verlag.

[14] Ñoã Vaên Nhôn, A system that supports studying knowledge and solving of analytic geometry problems, 16 th World Computer Congress 2000, Proceedings of Conference on Education Uses of Information and Communication Technologies, Beijjing, China, 21-25 August 2000.