TRƯỜNG ĐẠI HỌC CÔNG NGHIỆ THÔNG TIN
LẬP TRÌNH SYMBOLIC CHO TRÍ TUỆ NHÂN TẠO
ỨNG DỤNG MAPLE GIẢI BÀI TOÁN
TÌM ĐƯỜNG ĐI NGẮN NHẤT
PGS. TS. ĐỖ VĂN NHƠN
LÊ CUNG TƯỞNG (CH1101152)
Tp. Hồ Chí Minh, 2013
LỜI MỞ ĐẦU
!"
#$"%
&# # '()'&# )*#+,
)'/)
01
-*
2!3
)43#
5675
08# 9:)
5;<=#'
215->65?#@';*A@BC# -D5E)'D-F)-GH5'*(6I6;5$3)43#
5&# 2*(593A#'J55K# L'&# # 3F*<(9
!"#$"%5A55&# 5CB!#'4*M# 5'3)3A#'J54:)@'NO*P##'G$)'QR$)*5$%
$)<$O%$@<Q%9992!#'*>65'GS# )4T#'5'6"M#BC# 5'3)U# O7RV$)3A#'J5
L'A59'W# @'?#R>R)4M# *X@Y5'4:)#'*>65'32*(5 *;# BF")3A#%'J5)3A#5K#
#'G2*(5Z# BC# )3A#)43# 5A5# !#'L[)'6/)%L*#')P%2!2T)'P)F*5A5#G\5@'A)
)4*D#5'X# )4])'!#'5^R#$# 5V$#'*>60*#'2*M#%L[0G2!5A5# !#'# '*M#5Z6
L'3$'J59
43# O!*)'6'3F5'%)&*)TR'*D62>Z# BC# 5V$$@<Q)43# )TR-G_# -*# `#
#':)2\*)'6/))3A#*aL0)4$9
b
Mục lục
c
1.1. Giới thiệu bài toán
43# <d)'6"P)-e)'f%O!*)3A#-G_# -*# `##':)<!O!*)3A#)TRR7)-G_# -*
*W$'$*-g#')43# R7)-e)'f0$35'3)N# 5A5)4J# 085V$5A55F#')F3#M#-G_# -*
-E<!#'h#':)9f#'# '=$R7)5A5''T#')'Z5%5'3)4G\5R7)-e)'fGi+V, E,5E
)4J# 08+# '=$<!R7))/@-g#'V%R7))/@5F#'E%2!R7)'!R)43# 085E *A)4f)'15
f: E → R,%5'3)4G\5R7)-g#'v)'675V%)TRR7)-G_# -*P)Uv)\*Rj*-g#'v')'675
V0$35'3<!#'h#':))43# ):)5;5A5-G_# #8*)Uv)\*v'9!*)3A#-G_# -*# `#
#':) *W$RJ*5k@-g#'<!R7)O!*)3A#)GS# )1%)43# -E)$@';*)TR5A5-G_# -*
# `##':)5'3RJ*5k@-g#'v2!v'9
Ví dụl5'X# )$Bm# 5A5-g#'5V$-e)'f-DR&'T#'5A5)'!#'@'82!5A55F#'-D
R&'T#'5A5-G_# #8* *W$5'X# 9n'*-E)4J# 085A55F#'5E)'DoQR#'G-7B!*
5V$5A553#-G_# +2!B3-E<!L'&# pR,9'X# )$5?#B*5'6"D#)U)'!#'@'8s-P#
)'!#'@'8t9!*)3A#)TR-G_# -*# `##':)0q *X@5'g4$-G_# -*# `##':)5'X#
)$5E)'D-*9
3!*4$%)4J# 085V$5A55F#'5V$-e)'f5r#R$# )Y#'5':))N# I6A)'S#L'3;#
5A5''T#''J5 *W$'$*-g#'-?6RX)5V$5'X# 9YBC%2\*c-g#'A%B%C-G_# -*A-
B-C5E)'D)8#Y))'_* *$#'3k5-7@'Z5)F@'S#032\*-G_# -*)415)*P@A-C9
1.2. Thuật toán Dijkstra
1.2.1. Cấu trúc dữ liệu
:6)4X5BW<*(65V$)'6/))3A#O$3 eRl
s Graph GlO$3 eR)/@-g#'+,%5F#'+t,2!)4J# 08)GS# Z# 5V$Rj*
5F#'9
s g#'0<!-g#'o6:)@'A)9
s <!)/@-g#'
s u<!)/@5'Z$)4J# 08#'h#':)-*)U-g#'o6:)@'A))\*5A5-g#'L'A59
s v<!)/@<G62P)5A5-g#'
w
1.2.2. Giải thuật
#@6)le)'f5E'G\# 2!5E)4J# 08G2!-g#'O`)-?6s
Bước 1lL*DR)4$
s n*DR)4$)Y#'<*M#)'&# 5V$-e)'f
s n*DR)4$)Y#'5E)4J# 085V$-e)'f
s n*DR)4$)Y#'5E'G\# 5V$-e)'f
s n*DR)4$-g#'05E)'675-e)'f'$"L'&#
Bước 2ln']*)F3
Ri0xx-g#'o6:)@'A)
i9yz0{xx)/@-g#')4U-*-g#'o6:)@'A)
u|m}i~2\*•€R€i90*•Qxx)4J# 08
v|m}i‚6#BQƒ*#QB„2\*•€R€i90*•Qxx5F#'
u|0}i•xx A#)4J# 085V$-g#')'Z0O…# •
Bước 3l)43# L'*T†∅)'T
Siz#'W# -*DR5E)'D-*-P#)UR{∩
*ƒ‡†∅)'Q#
ƒ34Q$5'i)'675‡
P6u|i}ˆu|i}%u|m}‰vQ* ')|m%i})'T
u|i}liR*#+u|i}%u|m}‰vQ* ')|m%i},
v|i}im
nP))'X5*ƒ
Š
nP))'X5ƒ34Q$5'
TRm)43## T0$35'3u|m}<!#'h#':)
TiTym
nP))'X5Q<0Q
1.2.3. Thủ tục
‹
T#'Œ9'V)C5)'6/))3A#*aL0)4$
1.2.4. Dữ liệu thử nghiệm
Thử nghiệm 1:
'3-e)'f eR•-g#'2!R$)4/#)4J# 08]'T#'b9nP)I6;5V$)'6/))3A#)'6-GH5]
T#'c9
•
T#'b9$)4/#)4J# 085V$)'Ž# '*(RŒ
T#'c9e)'f)'Ž# '*(RŒ2!-e)'fLP)I6;5V$)'6/))3A#*aL0)4$
Thử nghiệm 2:
'3-e)'f eR•-g#'2!R$)4/#]'T#'w9nP)I6;5V$)'6/))3A#)'6-GH5]'T#'Š9
T#'w9$)4/#)4J# 085V$)'Ž# '*(Rb
•
T#'Š9e)'f)'Ž# '*(Rb2!-e)'fLP)I6;
Thử nghiệm 3:
'3-e)'f eRŒ•-g#'2!R$)4/#]'T#'‹9nP)I6;5V$)'6/))3A#)'6-GH5]'T#'•9
T#'‹9$)4/#)4J# 085V$)'Ž# '*(Rc
•
T#'•9e)'f)'Ž# '*(Rc2!-e)'fLP)I6;
Υ
TÀI LIỆU THAM KHẢO
|Œ} ‡9‡j‘#'S#%!* *;# u/@4T#'‡"RO3<*55'34Y6('p#F39
|b} Q)Q4B$RsnQ#‡R*)'s’6B3<ƒ"O34#"%#)43B65)*3#)3$)'QR$)*50“*)'$@<Q%
b••Š
|c} 6"”#W6*D#% *A3)4T#'$@<Q9
ŒŒ