If you can't read please download the document
Upload
nghiapickup1
View
81
Download
12
Embed Size (px)
DESCRIPTION
XÂY DỰNG MÔ HÌNH BIỂU DIỄN TRI THỨCHÌNH HỌC PHẲNGỨNG DỤNG GIẢI BÀI TOÁN VECTOR
Citation preview
I H C QU C GIA TP. H CH MINH
I H C CNG NGH THNG TIN
KHOA KHOA H C MY TNH
N
L P TRNH SYMBOLIC TRONG TR TU NHN T O
XY D NG M HNH BI U DI N TRI TH C
HNH H C PH NG
NG D NG GI I BI TON VECTOR
Gi ng d n: THS. NGUY N
Sinh vin th c hi n:
NGUY N TR H I 11520094
NGUY 11520603
L p: KHTN2011
L p mn h c: CS314.E2 1 .KHTN
Kho: 2011
TP. H
M U
Tr tu nhn t o l m c l n v quan tr ng trong cng
ngh thng tin hi n nay. V i nhi ng nghin c u khc nhau cng
m c tiu xy d ng, m ph ng l i tr tu
x l v m t cch thng minh. c l m t ph n
quan tr nh c a con
i. D n vi c c n thi t ph i bi u di n tri th i trn
c th suy lu n gi i quy t v . T
bi u di n tri th c xy d c th gi i q uy t v n trn.
C r t nhi u cc m hnh bi u di n tri th
gi i quy t v bi u di n tri th c m t
cch t ng qut nh t. Hi c s d ng v
ti p t c m r ng ph h p c th m hnh ho a
tri th c ton h c. Cng v u cch bi u di n
tri th c c i v xy d ng cc chi c tm ki m l i gi i
cho b suy di c th c m t h th ng thng minh c kh
i bi ton thng minh i. ng d ng
nh ng tri th n s xy d ng m hnh bi u di n tri th c cho
mi n tri th c hnh h c ph ng (c gi i h n mi n tri th c) v p d ng
suy lu c th xy d i ton trn mi n tri th c
ny.
L I C M
hS. N , K hoa My tnh
Thng tin -HCM,
v
CS314 .E21.KHTN cng
TP. H Ch Minh, Ngy 10 thng 05 4
Nguy n Tr H i Nguy
Bo c n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
A
M C L C
T N ............................................................................................................. 1
I. M hnh tri th c hnh h c ph ng v h gi i ton t ng ................................................ 2
1. M hnh tri th c hnh h c ph ng ................................................................................................. 2
2. H gi i ton vector t ng .......................................................................................................... 2
II. Thu th p tri th c ................................................................................................................. 2
1. Tri t h c v vector .......................................................................................................................... 2
2. Cc v c n gi i quy t trong mi n tri th c vector ................................................................ 5
III. Bi u di n tri th c ............................................................................................................... 6
ng tnh ton (C-object) ..................................................................................................... 6
2. M hnh COKB khy t ................................................................................................................... 7
2.1. T p C cc khi ni m v ng tnh ton ................................................................. 8
2.2. T p R cc quan h ng .................................................................................. 8
2.3. T p Rules cc lu ng phn c p ................................................................. 9
3. M hnh bi ton ......................................................................................................................... 10
IV. Thu t gi i suy di n .......................................................................................................... 11
1. Rt g n bi u th c vector ............................................................................................................ 11
2. Ch ng th c vector ................................................................................................... 13
3. T i gi i .............................................................................................................................. 14
V. Xy d ng ng d ng ........................................................................................................... 15
1. C .......................................................................................................................... 15
2. Cng c h tr , l p trnh ............................................................................................................ 16
2.1. K t n i C# v i Maple ........................................................................................................... 17
2.2. Th hi n k hi u, bi u th c ton h c .................................................................................. 17
2.3. Nh bi theo ngn ng t nhin .................................................................................. 18
3. Xy d .............................................................................................................. 20
3.1. L p trnh tnh ton ............................................................................................................... 20
3.2. L p trnh giao di n ............................................................................................................... 21
VI. Ki m tra k t qu .............................................................................................................. 25
VII. T ng k t .......................................................................................................................... 30
TI LI U THAM KH O ..................................................................................................... 32
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
1
T N
1. ti
Xy d ng m hnh biu di n tri th c hnh h c ph ng ng d ng gi i bi ton
vector.
2. Gi ng d n
ThS. Nguy n.
3. Sinh vin th c hi n
Nguy n Tr H i, Nguy
4. Kho h c
Kho 2011 (Ngy nhp h c: Thng 09/2011).
5. Thng tin lin l c c a sinh vin
STT Tn MSSV Email
1 Nguy n Tr H i 11520094 [email protected]
2 Nguy 11520603 [email protected]
6. ng d ng s d ng
trnh l p trnh, h tr : Maple 13.0, Microsoft Visual Studio 12.
ng l p trnh: Windows Forms, Maple.
7. Phn cng th c hi n
Phn cng Th c hi n
Tm ki m, t ng h p ti li u
C nhm Ln n i dung c ti, tm ki m ti li u:
- Th i gian th c hi n.
- T ng h p ti c li u lin quan.
- Tm hi u c ng d ng h tr .
Th c hi n
Nguy n Tr H i - Tm hi u, xy d ng n i dung ng d ng
Nguy - T ng h p, xy d ng n i dung l thuy t.
C nhm - Vi t bo co, trnh by slide
- S a l i
mailto:[email protected]:[email protected]n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
2
I. M hnh tri th c hnh h c ph ng v h gi i ton t ng
1. M hnh tri th c hnh h c ph ng
Tr tu nhn t o (Artificial Intelligent) l khoa hc my tnh gii quy t v
my tnh c th c tr tu gi i. Trong tr tu i, tri
th ng. V bi u di n tri th c (Knowledge representation) trn
my tnh t c nghin c xu i quy t v n
ny.
n s tm hi u m hnh tri thc hnh h c ph ng c gi i h n mi n tri th c. M c
d l ki n th c ph n tri th c hnh h c ph ng kh r ng v nhiu v n
khc nhau cn gi i quy t. n mn h c s gi i h n mi n
tri th c l i v tm hi u m hnh biu di n cho n.
2. H gi i ton vector t ng
T cc m hnh biu di n tri th c, chng ta s thi t k cc thut gi i suy di
gi i quy t cc v n mi n tri th c bi u di n. Trong c th xy
d c cc h tri th c (Knowledge Based Systems) s d ng tri th gi i
quy t v h gi i quy t v c a m t chuyn gia, cc h
gi h tr cng vi c tnh v gi i cc bi ton. c bi gi i ton
t ng trong gio dc, ngoi cc yu cu c a h gi i ton cn ph i cung c i
dng l i gi i chi ti t cho bi ton. M t h gi y c cc yu c n v
vi c gi i quy t cc dng ton tng qut trong min tri th
ph n quan tr tri th c v b suy di n.
y, bo co s ng d ng xy d ng m t h gi i ton ton gio dc v mi n tri
th c vector c bi u di n. ng d ng s gi i quy t cc bi ton c th trn vector v
cung cp l i gi i chi ti t cho bi ton m t cch d hi i dng.
II. Thu th p tri th c
u tin d xy d ng m t h tri th c c n ph i thu th p tri th c. D a
trn s hi u bi t, kh c tiu c i thi t k , ta s thu th p v l a ch n tri
th c ph h p. c p t i ph n I, mi n tri th c v bi ton cn gi i quy t v
vector s c gi i h n trong mi n tri th c ph h p.
1. Tri th c v vector
Cc khi nim (concepts) v lut (rules) l cc thnh ph n c u thnh nn
m t tri th c. M t mi n tri th c xy d ng trn cc thnh ph n t
n ph c t p v cc mi lin h gi a cc thnh ph . Ta s thu th p v t ng
h p ki n th c t cc thnh ph n ph c t p. Ph n thu th p tri th c
c tham kho v trch ra t [5]:
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
3
m m l khi ni n nh t c a hnh hc. N l m t c u trc r c
nh m t ch m nh trn trang gi y (m t ph ng) c
k hi u thng qua cc ch ci in hoa
ng th ng ng th n v i hnh nh l mp bn, hay si
ch
n th ng:
n th ng th ng b gi i h n b m.
m c n th ng l di m thu c n th ng v chia n th ng thnh
2 ph n b ng nhau.
Tam gic:
Tam gic l hnh gm n th ng n i gi a m khng th ng hng v i nhau.
c t o thnh t m A, B, C g i l tam gic ABC.
Trung tuy n ng v i 1 c nh c n th ng n i t m c a
i di n n. M ng trung tuyn.
ng trung tuy n c a tam gic ct nhau t m. Giao c ng
trung tuy n g i l tr ng tm c a tam gic.
Hnh bnh hnh: Hnh bnh hnh l t gic c cc c i song song vi nhau. Trong
ng cho ct nhau t i trung m m ng, h i l tm c a hnh
bnh hnh.
Vector:
Khi ni m:
- Vector l m n th ng. T u, 1
m l cu i.
- Vector m cu i l B g i l vector AB. K hi u: ho c
vector c th k hi u l .
- ng th u v cu i c a vector c g i l gi c a vector
ng c a vector:
- ng c a vector nh l chi u t m cu i c a
vector.
- 2 vector c g u gi c a chng song song vi nhau.
Vector b ng nhau:
- di c a vector l kho ng cch gi u v cu i c a vector
hi u: .
- Vector di b c g i l vector .
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
4
- Hai vector c g i l b ng nhau nu chng c ng v ng
nhau.
- Vector khng l vector m cu i trng nhau. K hiu: .
T ng c a 2 vector:
- Cho 2 vector v . L y m m A tu , v v . Vector
c g i l t ng c a hai vector v . K hi u: .
- Quy t m A, B, C tu ta lun c .
- Quy t c hnh bnh hnh: Nu ABCD l hnh bnh hnh th
( ).
Tnh ch t:
V i 3 vector , , tu :
- Tnh giao hon: ;
- Tnh k t h p: ;
- Tnh ch t c a vector khng: .
Hi u 2 vector:
Vector i:
- Vector ng v i g i l vector i c a . K hi u:
.
- M i vector u c vector i.
- Vector i c a l .
- Cho 2 vector v . Ta g i hi u c a 2 vector v l vector . K
hi u: .
- V m tu , ta c: .
- m c n th ng AB khi v ch khi .
- G l tr ng tm ca tam gic ABC khi v ch khi .
Tch c a vector v i 1 s :
- Cho s a vector v i s k l m t vector, k hi u l k , cng
ng v i v n ng v i n di b ng
|k|| |.
- .
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
5
Tnh ch t:
- ;
- ;
- ;
- .
- N m c a AB, th ta c v i m i M: .
- N u G l tr ng tm ca tam gic A, B, C th ta c vi m i M:
.
2. Cc v c n gi i quy t trong mi n tri th c vector
T mi n tri th c ta s nh cc v c n gi i quy t (cc bi ton)
trn mi n tri th i v i mi n tri th c vector c 2 d ng g
l rt g n bi u th c vector v ch ng th c vector. Ta s x l 2 d ng bi ton
ny:
D ng ton rt gn bi u th c vector: bi t ng qut cho mt bi u th c vector
v yu c i gi i dng cc cng thc vector t nh m rt g n nh t cc
thnh phn (t i gi n) c th .
V d 2.1: Rt g n bi u th c vector:
D ng ton ch ng th c vector r ng bao gm:
- Bi ton ch u ki bi cung cp m ng th c
v yu cu ch ng th c t n t i.
- Bi ton chng minh u ki n l quan h: bi cung cp m ng
th c v quan h gi a cc thnh ph ng th
c u ch ng th c t n t i.
- Bi ton ch u ki : bi cung cp m t
ng th c v quan h d a cc thnh phn lin quan
ng th u ch ng th c t n t i.
- Bi ton chng minh t ng qut: L dng t ng h p cc d bi
cung c p m ng th u ki n d ng quan h ho c tnh ton. Yu
c u ch ng th c t n t i.
V d 2.2: n AB. Ch ng
minh:
V d 2.3: m n AB,
n EF. Ch ng minh r ng :
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
6
III. Bi u di n tri th c
Nhi m v c a tr tu nhn t o l bi u di n tri th c v tm ki m tri th c trong
mi n bi u di u di n tri th n kh
hi u qu c a h th ng tri th c. C nhi bi u di n, m hnh
tri th c. V l a ch n, p d c ph h u quan trng.
Vi c l a ch n v s d ng m hnh tri thc ph m b o cc yu cu v m t bi u di n
p trnh:
M hnh tri th c ph i ph h p v i mi n tri th n ch c ch n
khng th gi i quy c vi c bi u di n tri th c nh. Cn cc m hnh
tri th c qu phc t p gy t n th i gian trong vi c tm hi u, bi u di
m t l p trnh v i cc thnh phn khng s d n.
S c l p c a m hnh tri thc v thut gi i suy di n u c n thi t. Vi c
l p s gip tch r i hai khu trong qu trnh xy dng h tri th c i xy
d ng s t n c a mnh ng th i, vi c m r ng v c i ti n
s th c hi c l p.
Trong [1 c p cc m hnh biu di n tri th c ph h p v i cc h gi
ng tnh ton (C Object) v m hnh tri th ng tnh ton
COKB. p d ng cc m hnh trn vi vi c rt g ph
h p v i mi n tri th c
1. ng tnh ton (C-object)
c p d ng trong biu di n tri
th c. Khi m i thnh phn c a tri th ng v i nh ng thnh phn
thu c tnh (states) v hnh vi (behavious) ca n. Ta s s d ng ph h nh a
[1], [4]: G ng tnh ton (C object) l m ng O c cu trc:
(1) M t danh sch cc thuc tnh Attr(O) = {x1, x2 n i thu c
tnh l y gi tr trong m t mi nh nh nh, v gi a cc thuc tnh ta c
cc quan h th hi n qua cc s ki n, cc lut suy di n hay cc cng thc tnh
ton.
n s suy di n v tnh ton trn cc thuc tnh c i
ng hay trn cc s ki
- a A Attr(O) (Cc thuc tnh c th c t A).
- nh tnh gi c c a bi ton suy din c d ng A
Attr(O), B Attr(O).
- Cho bi nh l i gi i cho bi ton trn (A B).
- Cho bi t gi tr cc thu c tnh c a n c yu cu.
V d 3.1: v i gc nh A, B, C; 3 c ng
c bi cng v i cc cng thc lin h gi a chng (quan h) xc
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
7
nh m t c u trc bi u di n tam gic. Cu trc ny kt h p v i cc hnh vi c a n bao
g m gi nh gi tr cc thuc tnh v x n
n i b c xem l mt bi u di n c a ng tam gic.
M t C c m hnh ho bi 1 b :
(Attr, F, Facts, Rules)
Attr l t p h p cc thuc tnh c ng;
F l t p h p cc quan h suy di n tnh ton;
Facts l tp h p cc tnh cht, s ki n v n c c ng;
Rules l tp h p cc lu t suy di n trn cc s ki n thu
c bi u di n b ng m hnh lut d n theo
d ng {A} => {B}, v i A Attr(O), B Attr(O).
V d 3.2: c bi u di
- Attr = {A, B, C, a, b, c, ha, hb, hc, S, }.
- F = { A + B + C = Pi; S = a.ha/2; S = b.hb/2 S = c.hc }.
- Facts = { };
- Rules = { {A = B} => {a = b}, {A + B = Pi/2} => {hc = 1/2.c} .
2. M hnh COKB khy t
M hnh COKB (Computational Objects Knowledge Base) bao g m cc khi
ni m v ng c cu trc v i cc lo i quan h v cc tnh ton lin quan. M t
g m cc thnh phn:
(C, H, R, Ops, Rules)
C l t p h p cc khi nim v cc C object;
H l t p cc quan h phn cp gi a cc lo ng;
R l t p cc khi nim v cc lo i quan h trn cc C Object;
Ops l tp cc ton t;
Rules l tp cc lu c phn l p.
i v i mi n tri th c xt n tri th c v vector) ta th y
cc quan h phn c n, c p th p v cc ton t s d ng 2 ton t
thng d ng l `+ , `-` v `*` v i 1 s th c xem xt ta khng cn ph i
xy d ng t p phn cp v ton t ring nh n thao tc biu di n v l p
trnh khi ng d ng. T ng m t m hnh COKB khuyt (rt g n) d a trn
nh ng rt g n trn. M t m hnh COKB khuyt g m c cc thnh phn:
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
8
(C, R, Rules)
C l t p cc khi nim v cc C Ojects;
R l t p cc quan h ng;
Rules l tp cc lu t c phn l p d a trn cc s ki n c d ng
r: {f 1, f2 n} => {f 1, f2 m} . Trong , cc fi l cc s ki n.
2.1. T p C cc khi ni m v ng tnh ton
M i khi ni m l m t l p C Oject v i c u trc v phn cp theo thi t l p c ng:
ng c p th p nh t: Cc bi n th c.
n c c u trc r ng ho c c c u trc t m t thu c tnh ki u
th c.
ng C Object cp 1, c thuc tnh th c v c th c danh sch
n n.
ng C Object cp 2, c thuc tnh th c v c th c danh sch
n ng c p 1.
C u trc bn trong m ng g m:
- Ki ng.
- Danh sch cc thuc tnh.
- Quan h trn c u trc thi t l p.
- T p h u ki n rng buc trn cc thuc tnh.
- T p h p cc tnh cht n i t n cc thu c tnh c ng.
- T p h p cc quan h suy di n tnh ton.
- T p h p cc lu t suy di n trn cc loi s ki n cc
thu c tnh c ng hay b ng.
Trong mi n tri th c vector hi n t i t p C bi u di n cc khi ni m g m: m
Vector
- n, c u trc r ng.
- Vector ng c c xy d ng t danh sch
n n ng n.
- ng c c xy d ng
t danh sch n ng c p 1.
2.2. T p R cc quan h ng
M t quan h nh b i v cc lo ng lin quan. Trong
quan h nh cc tnh cht c th c: tnh cht ph n x , tnh ch i x ng, tnh
ch t ph n x ng v tnh cht b c c u.
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
9
Trong mi n tri th c vector hi n t i t p R bi u di n cc quan h g m:
-
- Vector
- Tr ng tm
-
- Trung tuy
2.3. T p Rules cc lu ng phn c p
Cc lu t th hi n tri th c ph qut trn cc khi nim v cc loi s ki n khc nhau.
M i lu t cho qua mt quy lu c th c 1 s ki n m i t m t s s ki
bi t. M t lu t r c th c m hnh dng:
{f 1, f2 n} => {f 1, f2 m}.
i l cc s ki n.
ki n c c m t m t cch chi ti t v c th c th m hnh ho
v gi i quy t bi ton d i s ki n khc nhau cho m hnh
ny:
(1) S ki n thng tin v lo i c ng. C u trc s ki n:
[, ] .
(2) S ki n v tnh xc nh c a m ng (thu t) hay c a m t
thu c tnh. C u trc s ki n:
| . .
ng h c c u thnh t ng khc th
c th vi t theo dng c u trc.
(3) S ki n v s b ng nhau gi a m ng hay mt thu c tnh v i m i
ng hay mt thu c tnh khc (thu ng c a chng bng nhau). C u
trc s ki n:
| . = | ..
(4) S ki n v s ph thu c c a m ng hay mt thu c tnh theo nhng
ng hay thuc tnh khc thng qua mt cng th c tnh ton. Cu trc s
ki n:
| . = .
(5) S ki n v m t quan h ng hay trn cc thuc tnh c a cc
ng. C u trc s ki n c d ng danh sch:
[
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
10
Ta th y, khng c s ki nh c a m t thu c tnh thng qua biu th c h ng
do ta khng tnh ton h ng s trong mi n tri th
Trong mi n tri th c vector hi n t i t p Rules bi u di n cc lu t g m m t s lu :
- { [A , i m ] ,
Hnh bnh hnh[ A, B, C, D] } =>
{ Vector [A, B] + Vector [A, D] = Vector [A, C] ,
Vector [C, B] + Vector [C, D] = Vector [C, A] ,
Vector [B, A] + Vector [B, D] = Vector [B, D],
Vector [D, A] + Vector [D, C] = Vector [D, B],
Vector [B, C] = Vector [A, D],
Vector [A, B] = Vector [D, C]} .
- { [A , [M
m", M, n[A,B]] } =>
{Vector[M, A] + Vector[M, B] = Vector[0],
Vecto[A, M] + Vecto[B, M] = Vecto[0],
Vecto[A, B] = 2*Vecto[A, M],
Vecto[A, B] = 2*Vecto[M, B],
Vecto[B, A] = 2*Vecto[B, M],
Vecto[B, A] = 2*Vecto[M, A]} .
3. M hnh bi ton
Ta s d ng m hnh m ng cc C xy d ng m hnh bi ton, m hnh
gi i quy t v c d ng:
(O, Facts), Goal
O l t ng tnh ton trong bi ton;
Facts l tp cc s ki n thu c cc lo trn;
Goal l m c tiu c a bi ton c dng m t bi u th .
V d 3.3: M hnh bi ton:
O = {A,B,C,D,E,F};
D] + Vecto[B, E] + Vecto[C, F] = Vecto[A,
E] + Vecto[B, F] + Vecto[C, D]}.
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
11
IV. Thu t gi i suy di n
Hi n n di n chnh c dng ph bi n cho vi c suy di n
trn cc biu di n tri th c l suy din ti n (Forward chaining) v suy din li (Backward
chaining) suy di n ti n l qu trnh suy lun t i m c ta s tm c th t
t t c cc lu t c th p d s d n khi c k t qu t qu trnh
suy di n t nhin gi ng v i cch gi i quy t v c i. Ta s s d
php ny thi t k thu t gi i suy di n.
1. Rt g n bi u th c vector
Bi ton
Cho m t bi u th n. Yu c u rt g n bi u th
Input
M hnh bi ton.
Output
Bi u th c rt g i gi n nh t c th ) v cc thao tc rt g n.
Thu t gi i
i v i d ng bi t p rt g n ny, ta ch c n s d ng quy t m v quan
i nn ta khng cn p d ng thao tc tm kim lu p d t gi i
suy di n ti c l i l tm cc thnh phn c th p d c lu
x l.
N i dung thut gi i m i thao tc chnh, thut gi i s gom nhm cc cp
vector c th rt g c v x l. Thu t gi i k t thc khi khng gom nhm
c n a. Ta c l i cch gom nhm v kt qu gom nhm.
Cc bi n s d ng:
exp: D ng bi u th c, cc bi u th bi.
sol : D ng b ng cc danh sch, danh c gom t i m i
c.
solVal : D ng b ng (m ng) , k t qu gom nhm ti m c.
count : D ng s t m s thao tc thc hi n.
flag : D ng logic, c hi u: true cn c th rt g c, false khng th rt
g c n a.
c 1: X bi.
exp = Bi u th bi;
sol = [ ];
solVal = [ ];
count = 0 ;
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
12
;
c 2: Gi i ton.
flag = true ;
While flag = true do
f lag = false; c gom.
count = count + 1;
solVal count = [ ]; //K t qu c a thao tc th count .
for i from 1 to do //L y t ng thnh
ph n vector trong exp
if
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
13
2. Ch ng th c vector
D ng bi ton chn ng th c vector c nhiu d ng khc nhau. Ta s x l d ng
t ng qut nh gi i quy c ton b cc dng.
Bi ton
Cho m ng (thu c mi n tri th c vector) v cc quan h gi a cc
u ch ng minh m ng th c.
Input
M hnh bi ton.
Output
K t qu ch ng minh bi ton v cc thao tc chng minh.
Thu t gi i
Thu t gi i suy di n ti c p d ng. Ta c i danh sch cc lu c p d ng
v k t qu .
Cc bi n s d ng:
exp: D ng th c, ng th c c n ch ng minh. exp c dng exp.L =
exp.R . v i L v R l cc biu th c vector.
sol : D ng danh sch, danh sch cc lu c p d ng. Bao g m c danh sch
ng tham gia trong lut.
facts : D ng danh sch, danh sch cc lut.
flag : D ng logic. C dnh du: true C th c lu p d ng, false
c lu t p d ng.
c 1: X bi.
exp = ng th bi;
sol = [ ];
exp.L = exp.L exp.R; exp.R = ; //Chuy n v ph i qua v tri
flag = true;
c 2: Gi i ton.
while flag = true do
flag = false;
;
sol = sol + ;
for i in facts do
if then
sol = sol ng tham
gia>;
flag = true;
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
14
if exp.L = then break; end if;
end if;
end for;
end while ;
c 3: Xu t k t qu .
// Xu t k t qu v thao tc x l trol sol.
if exp.L = 0 then
Xu t sol;
else
Xu ng th c sai ;
end if;
3. T i gi i
t nh ph n t a v cch m sol thm cc quan h c h t,
ta th y sol l m t t p cc f F. Gi s t c th i ta p d ng lu t f i: u(fi) v(f i)
gi i bi ton. Th m t quan h f i a khi H G. Ta s d
php ca [1]. V i:
newSol: D ng danh sch, Danh sch t
Gi s sol sau khi p dng gi i thu c k quan h p d ng.
c 1: Kh i t o
newSol = [];// Danh sch t thm t ng quan h .
V = G;// T p x u l G.
c 2: X l
for i from k downto 1 do
if (V v(f i )
newSol = f k + newSol;
V = V\ v(f k) u(f k) \ H;
end if ;
end for;
c 3: Xu t k t qu .
Xu t newSol;
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
15
V. Xy d ng ng d ng
Sau khi thu th p tri th c v xy dng m hnh, c u trc c th ta ti n hnh xy
d ng ng d ng. Cc v c n quan tm khi tin hnh lp trnh l s d ng
c u trc d li u bi u di n tri th c; ngn ng, cng c l p trnh ph hp v gi i quy t
cc v v k thu t l p trnh.
1. C
u tin ta cn xy d ng c u trc t tri th u di n. C u
trc d li u c n c vi c tri n khai thut gi
bi u di n t c kh c l p trong
l gi i quy t cc v khc nhau s gy n t v c th v
n c
C c tham kh o t [1] g m h th ng cc t p tin:
(1) T p tin nh danh (hay tn gi) cho cc khi nim
v cc lo ng C-Object. C u trc:
begin_Objects
ng 1>
ng 2>
end_Objects
(2) T p tin thng tin v cc lo i quan h khc nhau trn
cc lo i C-Object.
begin_Relations
[, ,
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
16
begin_constraints
end_constraints
begin_properties
end_properties
begin_computation_relations
begin_relation
end_relation
end_computation_relations
begin_rules
begin_rule
i lu
hypothesis_part:
{Cc s ki n gi thi t c a lu t}
goal_part:
{Cc s ki n k t lu n c a lu t ho c l
end_rule
end_rules
end_object
(4) T p tin h lu t c tri th c.
begin_rules
begin_rule
i lu
ng>: ;
ng>: ;
hypothesis_part:
{Cc s ki n gi thi t c a lu t}
goal_part:
{Cc s ki n k t lu n c a lu t ho
end_rule
end_r ules
2. Cng c h tr , l p trnh
Ph n m m Maple c s d ng l cng c h tr gi i ton h tr s n cc cu
trc l p trnh c p cao v cc thut ton gi i ton c sn v s d ng l p trnh Windows
Forms l p trnh giao din.
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
17
2.1. K t n i C# v i Mapl e
Qu trnh thc hi n l i gi i m c thi t k t trn Maple, tuy
nhin l i gi c theo mt c u trc d li
i s d c i thi n v ny, c n m n tr c
quan, d n th hi hi n l i gi i bi ton. V C#
l m t trong nh ng ngn ng l p trnh m nh c th u y. T t c k t qu v
c u trc d li u l i gi i nh n t c chuy th hi n l i
gi i bi ton mt cch t nhin.
Ph n l n ch c c c vi t b ng ngn ng c
thng dch b c vi t b ng C. V v y vi c k t n i C# v i
n l xm nhp C.dlls t t k t n i C# v i Maple c th tm t t
MapleEngine v c StartMaple, StopMaple,
EvalMapleStatement v IsMapleStop c ny g i tr c ti p t i C
OpenMaple API t n i v i Maple c th xm nh t t c nh ng ch c
a b my tnh ton Maple.
OpenMaple v c Open, Run th c hi n chi ti t
k t n i C# v c trong class MapleEngine .
c Open: ki m tra vi c k t n i v m OpenMaple.
c Run: truy n l nh t C# sang Maple v ly k t qu tr v t Maple.
V d 5.1 sau minh ha vi c k t n i C# v i Maple:
Cu truy vn: - (x -
Th c hi n k t n i:
OpenMaple openMaple = new OpenMaple();
openMaple.Open();
openMaple.Run( query);
K t qu tr v :
2.2. Th hi n k hi u, bi u th c ton h c
C nhi u cch th hi n cc k hiu, bi u th c ton hc, d ng
MimeTex.dll l m n lin k ng kh mnh trong vi c th hi n k hi u, bi u
th c ton hc.
c v cc k hi u, bi u th c ton h n MimeTex.dll theo 1
nh d ng ph bi nh d ng LaTex. Sau khi vi nh d ng LaTex,
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
18
cc k hi u v bi u th c s c chuy n sang dng nh .gif gip d dng khi thm mt
hnh nh s d ng ny, cn nhng n vo ng d ng v s d ng 2
c sau:
GetFilePath() : kh i t ng d nh
WriteEquation() : chuy c k hi u, bi u th c LaTex v file nh .gif
c Latex v th hi n Vecto r : \ vec{x} => k t qu hi n th
2.3. Nh bi theo ngn ng t nhin
X t nhin c i l m t v i v i cc
h gi i ton, do tnh cht c a ngn ng ng th i h n ch c a cng c h tr ng
cc h gi i ton ch t p trung vo vic gi i ton l chnh. Tuy nhin, do min tri th c
gi i h n v cc dng ton x l t (2 d ng bi ton) nn ta c th p d ng m t thu t gi i
c th x bi theo ngn ng t nhin v i nh u ki n nh nh.
Vi c x b i s theo cc tiu ch: T x l nhanh, khng n th i
gian ch t gi n trong gi i h n cho php (thi gian tm
hi u, ki n th c).
c dng d a trn cu trc chung c bi v b t n c
s n. Ta s n m hnh bi ton: (O, Facts),Goal. Ta xt cc yu t u vo v cc
c:
T ng tnh ton g ng c a mi n tri th c v i cc tn gi
c n th ng, vector, tam gic, hnh bnh hnh.
V d 5.2:
Nh p vo: m: A, B, C, s x l thnh:
A,B,C,D: Diem .
T p Facts thuc 1 trong 5 loi s ki c ng v i
gi thi t) n quan h g m 5 quan h v i 3 tn g i c nh:
m, tr ng tm, tm v trung tuyn.
V d 5.3:
- Nh p vo: n AB. n thnh:
["TrungDiem",J,Doan[A,B]] ;
- Nh p vo: K l tr n thnh:
["TrongTam",K,TamGiac[D,E,F]] ;
- Nh p vo: O l tm hnh bnh hnh ABCD n thnh:
["Tam",O,HinhBinhHanh[A,B,C,D]] ;
- Nh p vo: NA = - n thnh: Vecto[N,A]= -
2*Vecto[N,B] .
T p Goal c dng bi u th c ho ng v i gi thi t).
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
19
V d 5.4:
Nh p vo: Ch ng th c: AB+AC+AD-
chuy n thnh:
Vecto[A,B] + Vecto[A,C] + Vecto[A,D] 4*Vecto[A,K] = Vecto[0] .
M t s c: Danh sch cc thnh phn d ng sau du `:`. T i yu c bi,
m n lc nh p l vector.
M t s v d v i d li u nh p vo:
V d 5.5 n AB, F l
n EF. Ch ng minh :
AB + AC + AD - 4*AK = 0
begin_exercise
kind_ex = "Chung_minh_Dang_thuc_Vecto"
begin_hypothesis
objects:
A,B,C,D,E,F,K: Diem
end_objects
facts:
["TrungDiem",E,Doan[A,B]]
["TrungDiem",F,Doan[C,D]]
["TrungDiem",K,Doan[E,F]]
end_facts
end_hypothesis
begin_goals
Vecto[A,B] + Vecto[A,C] + Vecto[A,D] 4*Vecto[A,K] = Vecto[0]
end_goals
end_exercise
V d 5.6: n AB. Ch ng minh
ng th c:
AB + CD + BC + DA = 0, JD + JC = AD + BC
begin_exercise
kind_ex = "Chung_minh_Dang_thuc_Vecto"
begin_hypothesis
objects:
A,B,C,D,J: Diem
end_objects
facts:
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
20
["TrungDiem",J,Doan[A,B]]
end_facts
end_hypothesis
begin_goals
Vecto[A,B] + Vecto[C,D] + Vecto[B,C] + Vecto[D,A] = Vecto[0]
Vecto[J,D] + Vecto[J,C] = Vecto[A,D] + Vecto[B,C]
end_goals
end_exercise
3. Xy d g trnh
3.1. L p trnh tnh ton
Ta s s d ng ngn ng l p trnh hnh th c h
tr l p trnh v x l tnh ton. C n v thao tc xy dng
Ph n 1: Xy d n, h tr c
Cc hm x c file cc thnh phn bi u di n): S d c
nh d n c c cc
c u trc ph h x l.
Cc hm h tr x l chung trong l p trnh): Cc hm
h tr x l c u trc t ng qut c c tn
cc bi n ra kh i bi u th c, l y tn cc thnh phn trong danh sch, cc hm x
l trn list (m Maple khng h tr
Hm x l m hnh bi ton (mng tnh ton): Cc hm h tr suy di n trn m
hnh m ng tnh ton: Kim tra tn ca m t thu nh cc thnh phn
c ng, tm ki m cc dng s ki
Hm nhn d ng, phn loi s ki n: nh n bi cc lo i s ki
c phn loi trong m hnh (5 loi s ki ta o dng x l.
Cc hm h tr xu t n i dung ra mn hnh: Cc n
thi t, k t lu n, l i gi i, tm t t, c n c cc hm h tr nh d ng, thm ni dung
ph h p.
Ph n 2: Gi i bi ton
X bi: N c t s c x l
nh n di n v phn lo n ( hm) ph h
ti n hnh gii ton gi i.
Xy d ng b suy di n: S d ng gi i thu t suy di i IV) v cc
hm h tr xy d ng b suy di n.
X l gi i hon chnh: Cc hm x l v h tr s c k t h p l i thnh m t
thnh phn hon chnh x c cc v c
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
21
3.2. L p trnh giao di n
bi
:
class MapleEngine v hm LoadMapleEngine() .
:
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
22
Bi ton : ch a 2 menu con l M, Gi i:
- M m bi ton b c v t t p tin v i c u
nh s n ho c nh p b ng tay b ng ngn ng t nh d ng
c u trc cu sn.
T t p xu t hi n h p tho i m t p, ch n t p .txt
ph h m bi ton:
Nh p vo : Nh p b ng ngn ng t nhin c bt bu c v c php
cu:
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
23
- SubMenu Gi i : sau khi m t p ho c nh bi thnh cng th khung
hi n th bi s hi n th bi v tm tt l bi b ng ngn ng t
nhin, k hi u ton hc:
Khi ta ch gi i v xu t k t qu khung
hi n th l i gi i.
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
24
Thng tin : cung cp thng tin v ph n m m.
: ph s d u trc t nh p
bi v m t s bi ton m nh p b ng tay.
Thot
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
25
VI . Ki m tra k t qu
K t qu th nghi m so snh gi a l i gi i t nhin v gi i my :
V d 6.1 m n AB Ch ng minh :
L i gi i t nhin L i gi i c
Ch ng minh :
VT =
=
=
= VP
Ch ng minh :
Ta ch ng minh :
=
VT =
=
=
=
m AB
Nn
Suy ra
Ch ng minh :
_____________________ Bi gii _____________________
c 1:
VT =
=
=
=
=
=
*K t lu n:
____________________________________________________
Ch ng minh :
_____________________ Bi gii _____________________
c 1:
VT =
=
=
=
c 2:
n AB Nn:
VT =
*K t lu n:
n mn h c L p trnh Symbolic GVHD: Ths. Nguy n
26
V d 6.2 m A, B, C, D, E, F. Chng minh :
L i gi i t nhin L i gi i c
Ch ng minh :
VT =
=
=
=
= VP
Ch ng minh :
VT =
= ( ) + (
)
= ( ) + ( )
=
= VP
Ch ng minh :
______________ Bi gi i ________________
c 1:
VT =
=
=
=
=
=
=
=
*K t lu n:
______________________________________
Ch ng minh :
_______________ Bi gi i ________________
c 1:
VT =
=
=
=
=
=
=
=
*K t lu n: