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:
Top Related