Tải bản đầy đủ (.docx) (39 trang)

ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG VẤN ĐỀ TÌM ĐƯỜNG ĐI NGẮN NHẤT

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (629.18 KB, 39 trang )

ĐẠI HỌC QUỐC GIA TPHCM
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG
TẠO KHOA HỌC TRONG VẤN ĐỀ TÌM
ĐƯỜNG ĐI NGẮN NHẤT
Môn : Phương pháp nghiên cứu khoa học
Giáo
viên
hướng
dẫn:
GS.TS
KH
Hoàng
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC
Mục lục
 
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
A. Khoa học và nghiên cứu khoa học
I Khái niệm khoa học
Khoa học là cả một quá trình mày mò nghiên cứu nhằm khám phá ra những kiến
thức mới, học thuyết mới ở một lĩnh vực nhất định. Những kiến thức hay học thuyết mới
này có thể được áp dụng để thay thế dần những cái cũ không còn phù hợp theo giời gian
và sự phát triển của xã hội.
Khoa học bao gồm một hệ thống tri thức về qui luật của vật chất và sự vận động
của vật chất, những quy luật của tự nhiên, xã hội và tư duy. Hệ thống tri thức có thể chia
ra làm 2 loại: tri thức kinh nghiệm và tri thức khoa học.
* Tri thức kinh nghiệm: là những hiểu biết được tích lũy qua hoạt động sống hàng
ngày trong mối quan hệ giữa người với người và giữa con người với thiên nhiên. Tuy
nhiên, tri thức kinh nghiệm chưa thật sự đi sâu vào bản chất, chưa thấy được hết các
thuộc tính của sự vật và mối quan hệ bên trong giữa sự vật và con người. Vì vậy, tri thức


kinh nghiệm chỉ phát triển đến một hiểu biết giới hạn nhất định, nhưng tri thức kinh
nghiệm là cơ sở cho sự hình thành tri thức khoa học.
* Tri thức khoa học: là những hiểu biết được tích lũy một cách có hệ thống nhờ
hoạt động nghiên cứu khoa học, các họat động này có mục tiêu xác định và sử dụng
phương pháp khoa học. Không giống như tri thức kinh nghiệm, tri thức khoa học dựa trên
kết quả quan sát, thu thập được qua những thí nghiệm và qua các sự kiện xảy ra ngẫu
nhiên trong hoạt động xã hội, trong tự nhiên. Tri thức khoa học được tổ chức trong khuôn
khổ các ngành và bộ môn khoa học như: triết học, sử học, kinh tế học, toán học, sinh học,

II Nghiên cứu khoa học
Nghiên cứu khoa học là hoạt động tìm kiếm, xem xét, điều tra, hoặc thử nghiệm.
Dựa trên những số liệu, tài liệu, kiến thức… đạt được từ các thí nghiệm nghiên cứu khoa
 
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
học để phát hiện ra những cái mới về bản chất sự vật, về thế giới tự nhiên, xã hội và để
sáng tạo phương pháp và phương tiện kĩ thuật mới cao hơn, giá trị hơn.
III Đề tài nghiên cứu khoa học
1 Khái niệm đề tài
Đề tài !"#nghiên cứu khoa học$ !%& !
' %()*()+,+-./%012 3
4'-+-5+6)$7.+!(6
2 Đối tượng nghiên cứu và phạm vi nghiên cứu
* Đối tượng nghiên cứu: là bản chất của sự vật hay hiện tượng cần xem xét và làm
rõ trong nhiệm vụ nghiên cứu.
* Phạm vi nghiên cứu: đối tượng nghiên cứu được khảo sát trong trong phạm vi
nhất định về mặt thời gian, không gian và lĩnh vực nghiên cứu.
3 Mục đích và mục tiêu nghiên cứu
Khi viết đề cương nghiên cứu, một điều rất quan trọng là làm sao thể hiện được
mục tiêu và mục đích nghiên cứu mà không có sự trùng lấp lẫn nhau. Vì vậy, cần thiết để
phân biệt sự khác nhau giữa mục đích và mục tiêu.

* Mục đích: là hướng đến một điều gì hay một công việc nào đó trong nghiên cứu
mà người nghiên cứu mong muốn để hoàn thành, nhưng thường thì mục đích khó có thể
đo lường hay định lượng. Mục đích trả lời câu hỏi “nhằm vào việc gì?”, hoặc “để phục vụ
cho điều gì?” và mang ý nghĩa thực tiễn của nghiên cứu, nhắm đến đối tượng phục vụ sản
xuất, nghiên cứu.
* Mục tiêu: là thực hiện hoạt động nào đó cụ thể, rõ ràng mà người nghiên cứu sẽ
hoàn thành theo kế hoạch đã đặt ra trong nghiên cứu. Mục tiêu có thể đo lường hay định
 8
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
lượng được. Nói cách khác, mục tiêu là nền tảng hoạt động của đề tài và làm cơ sở cho
việc đánh giá kế hoạch nghiên cứu đã đưa ra và là điều mà kết quả phải đạt được. Mục
tiêu trả lời câu hỏi “làm cái gì?”.
Thí dụ: phân biệt mục đích và mục tiêu của đề tài sau đây.
Đề tài: “Phương pháp gom cụm tài liệu theo ngữ nghĩa trong ứng dụng tin học”.
- Mục đích của đề tài: giúp cho người dùng quản lý tốt tài liệu cá nhân trong máy
tính.
- Mục tiêu của đề tài:
+ Tìm ra được phương pháp cho phép gom cụm tài liệu theo ngữ nghĩa.
+ Hiện thực được phương pháp nêu ra bằng 1 ứng dụng cụ thể .
B. Phương pháp luận sáng tạo và đổi mới trong khoa học
I Khái niệm
Phương pháp luận sáng tạo và đổi mới là phần ứng dụng của Khoa học về sáng
tạo, bao gồm hệ thống các phương pháp và các kĩ năng cụ thể giúp nâng cao năng suất và
hiệu quả, về lâu dài tiến tới điều khiển tư duy sáng tạo của người sử dụng.
II Ý nghĩa
Suốt cuộc đời, mỗi người chúng ta dùng suy nghĩ rất nhiều (có thể nói là hằng
ngày). Từ việc trả lời những câu hỏi bình thường như “Hôm nay ăn gì? Mặc gì? Làm gì?
Mua gì? Xem gì? Đi đâu? ” đến làm các bài tập trên trường lớp, hoặc chọn ngành nghề
đào tạo, lo sức khỏe, việc làm, thu nhập, hôn nhân, nhà ở, giải quyết các vấn đề nảy sinh
trong công việc, trong quan hệ xã hội, gia đình, nuôi dạy con cái… tất tần tật đều đòi hỏi

phải suy nghĩ và chắc chắn rằng ai cũng muốn suy nghĩ tốt, ra những quyết định đúng để
“đời là bể khổ” trở thành “bể sướng”.
Chúng ta tuy được đào tạo và làm những ngành nghề khác nhau nhưng có lẽ có
một nghề chung, giữ nguyên suốt cuộc đời và là cần thiết cho tất cả mọi người. Đó là
“nghề” suy nghĩ và hành động giải quyết các vấn đề gặp phải trong suốt cuộc đời nhằm
 9
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
thỏa mãn các nhu cầu chính đáng của cá nhân mình, đồng thời thỏa mãn các nhu cầu để
xã hội tồn tại và phát triển. Nhìn dưới góc độ này, Phương Pháp Luận Sáng Tạo Và Đổi
Mới giúp trang bị loại nghề chung nói trên, góp phần bổ sung cho giáo dục, đào tạo hiện
nay, chủ yếu chỉ đào tạo các nhà chuyên môn. Nhà chuyên môn có thể giải quyết tốt các
vấn đề chuyên môn nhưng nhiều khi không giải quyết tốt các vấn đề ngoài chuyên môn,
do vậy không thực sự hạnh phúc như ý.
Các nghiên cứu cho thấy, phần lớn mọi người thường suy nghĩ một cách tự nhiên
như đi lại, ăn uống, hít thở mà ít khi suy nghĩ về chính suy nghĩ của mình xem nó hoạt
động ra sao để cải tiến, làm suy nghĩ của mình trở nên tốt hơn như người ta thường cải
tiến các dụng cụ, máy móc dùng trong sinh hoạt và công việc. Cách suy nghĩ tự nhiên nói
trên có năng suất, hiệu quả rất thấp và nhiều khi trả giá đắt cho các quyết định sai. Tóm
lại, cách suy nghĩ tự nhiên ứng với việc lao động bằng xẻng thì Phương Pháp Luận Sáng
Tạo Và Đổi Mới là máy xúc với năng suất và hiệu quả cao hơn nhiều. Nếu xem bộ não
của mỗi người là máy tính tinh xảo – đỉnh cao tiến hóa và phát triển của tự nhiên thì phần
mềm (cách suy nghĩ) tự nhiên đi kèm với nó chỉ khai thác một phần rất nhỏ tiềm năng
của bộ não. Phương Pháp Luận Sáng Tạo Và Đổi Mới là phần mềm tiên tiến giúp máy
tính – bộ não hoạt động tốt hơn nhiều. Nếu như cần “học ăn, học nói, học gói, học mở”
thì “học suy nghĩ” cũng cần thiết cho tất cả mọi người.
Tóm lại, Phương Pháp Luận Sáng Tạo Và Đổi Mới đóng góp rất tích cực trong
việc biến thông tin thành tri thức, tri thức đã biết thành tri thức mới với các ích lợi toàn
diện, không chỉ riêng về mặt kinh tế.
III. Những nội dung chính trong Phương Pháp Luận Sáng Tạo Và Đổi
Mới trong Tin học

1 Vấn đề khoa học
Khái niệm
 :
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
Vấn đề khoa học (scientific problem) còn gọi là vấn đề nghiên cứu (research
problem) là câu hỏi đặt ra khi người nghiên cứu đứng trước mâu thuẫn giữa tính hạn chế
của tri thức khoa học hiện có với yêu cầu phát triển tri thức đó ở trình độ cao hơn.
Phân loại
Nghiên cứu khoa học luôn tại 2 vấn đề:
+ Vấn đề về bản chất sự vật đang tìm kiếm.
+ Vấn đề về phương pháp nghiên cứu để làm sáng tỏ về lý thuyết và thực tiễn
những vấn đề thuộc lớp thứ nhất
Các phương pháp phát hiện vấn đề khoa học
;':<
=>*" 0?@4)0A+, B
>*" 0CA+D
>EFGH) I%
8>J0B K.(LM
9>NKO%
:>;/ <012CAGPA)H()+'
Phương pháp giải quyết vấn đề khoa học về phát minh, sáng chế
;'9/HQ6A+,, 46
• R(SO+TQ+U
• ;Q-VO
• @SO
• WXSO
• N.%
;'8YUZQK>C/4@+1Q[."CQ9UC/
+G\$7,.L
 ]

ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
=>EQK12<CD I)7-
;+^GT+!
N +^G.@K+G
*_ +!12+^G
>EQK`2a
*T1Q`,aZ3A`,a>QGT$QA
`T6aZ3A`T6a>.2+^G
>EQKb A7C!
;Q-+^GZQ I.%C4+!C>'A.c+D
AI+DA
;TU+^G/'_
deTU+^G/@.0+,)XGA+^BI)
8> EQK/+^P
;Q-+^G'"$+^PI+^PZ'f C+^
P>
9> EQK6G
6G+^G+DA&+^G$g+!6
6G, &%+!+DA&6
:>EQK_
h^G() !^_4$+'IT( U
+^G
]> EQK`.a
d!+^G+G+&C.+^GC/1'+^G
Ci
d!+^GQ-+!PQ^C.+^G
 j
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
j> EQK/.G
kg.l.GU+^GCmK'B+^G'(1

kg.l.GU+^GCmB I.%\$7(
UQ+!4X+!i
n> EQK1QAC!
o1QA.BB+^G+-^AIp&I
 ^+^G )Z&1QA.B+- )q$g
AG>
=Y> EQK()C!
*().B(Q+#T'4&lT4+^B+^G
;TKP6+^G.B4c'-+!lr.XGA4
I A%$rQ-
==> EQK$(s
kg+K+!LQIBU+^GCmbCr.BL)
C+!44
=> EQK+t6
*Q+#+,) )+-I/1QP^+^G
=> EQK+/G
*Q"+!QTC4+!GZX$74I '
 +^G>
N TQ-+!U+^GZQ I.%C>+Q
G4T+QQ-+!
=8> EQKTZ.s>
;Q-0TtU+^G4 &t &T46A
"!6A"T
u\$7_4C4sPK
 n
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
;Q-Q-+!HQ4\$7(Q1 
=9> EQK+!
;TQ+#+&.U+^GQ I.%Cc^
.l+ )

1+^GlT4'/_$rQ-B
=:> EQK/`6a&`la
E6'+G=YYv)H/T64X&,` !
caNc+'C'-.@+/$M/
=]> EQKQ-,
E0'_$Q-+!ZQKP6>+^GO+%Z !,>q
+GK76+^G/_$Q-. &tZ,>
*(40CH+6Q-+!ZQKP6>+^G.
&tq+G+/Q-IZC,>
;Q-+^G'6A !T,T
h&+^Gm 
u\$7 &U$)3.Bw
u\$7DB$)3C&B &U$)3
.B
=j> EQK\$7$+!
N +^G$+!E6+f'$+!4_T^$+!Z+6T^
1 >
u\$7T^!@
*Q"$gC!.4$gC!.+)
u\$71 6GB.%+)l
=n> EQK+!Ox
 =Y
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
;Q-+!7+!OxZP>
E6+f'+!Ox4fQQ+#xw
u\$7/%0P+-()+!
Y> EQK7+!'X
*()I) !7ZA/TU+^GTII 
)@6+!+U/>
K7I/.

;Q-Q-+!rL6HQ-+!HQ
=> EQK`Ga
SGH+'&Q- B^B
SG+-'+G)T6
> EQKC6G
u\$701'ZX$7+!'U I.%>+-+G
)'G
K71'Cm6G'B1'
*_%1'+6 'Is'0
> EQKH)/D
*6H)/D
E6+f'H)/D4fQQ+#'
8> EQK\$7.
u\$7+^G.4Q-L6
9> EQK(77
h^G/(77Cm()7.G4\0
u\$76)4/4_G$
 ==
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
:> EQKpZQ>
*Q"\$70I+Gp44+KL,4IL)G&$M
y4\$7C/
*Q6+^G&)+^GCmC/HZ/4"q>B
z)T6
E6I-\$7C/H@gC?6Zg"AQ
+GCm K%>4Q-\$7C/D&\
]> EQK`.?aQ`+Ka
*Q6+^G+KL,CmC!+^G.?'AGp ZX$7
,#>
j> *Q6+D

*Q6+DCm+)4H4)41 & gr
u\$7+).%4l.%+)l.%.B+^G
;Q-.%+QQ-+!4.%^+rQ+#O
%4.%+DA'A.cA+r
u\$7.%6GBKl
n> u\$76AX2
*QTU+^G@-.K4\$7AX2<X4
A24+) IX4UQ{4UQ/(
Y> u\$72$?  2
u\$72$?  2Q6A^
;Q+^GB I.%CCm2$?  2
=> u\$7),e
N +^G',e&\$7 0L6',eZ 6+) 4
A U>
 =
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
E6+^G+f',e4C!b 'CmA+'
> EQKQ+# K
*Q+# KU+^GQ I.%C
*Q+#+!.^UU+^GQ I.%C
h-'-H+G0+^G&0H."4\$7A7
 4gQH
E6A7+'+f+G\$74$gQ\+$A
u\$7"q45)XG
> EQK+DA
E0+^G4B+^G.B4/+G lg !
)Z&l)T,3A>B)6+^G.B
8> EQK1UQ&T
T+^G+f) 7&.@I6/(1UQ
Z4CQ>&/C6$

;T A U+^G/+G7D.(L6.H." )
9> *Q+#I^5U+^G
*Q+#.+^G
*Q+#D+!Q+!+ +&
*Q+#+!$?
*Q+#)+!4-3
:> u\$7Q-
u\$7)G/Q.H."Q-<Q+#-34/
QA)Gi
]> u\$7(@)
 =
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
u\$7(@ZQ>)U)
E6+f$g(@)4\$7B)')^@)
j> u\$7APQ 
*QIX%CmIXPQ
*QIXPQCmXPQ
RgCP+!IX&PQ
*QPQ|Z&PQCr>CmX|
n> *Q+#+!.G
*Q I.%I%Cm I.%.
h +^GT4A47.
*()H.".1I
8Y> u\$7)GZ O>
;Q-l)+DA\$70)GZ O>
}Q'4\$7) B
Các phương pháp giải quyết vấn đề tổng quát
1 Các phương pháp phân tích vấn đề
+ Phân chia vấn đề
+ Phân loại vấn đề

+ Phân công vấn đề
+ Phân cấp bài toán
+ Phân tích.
2 Các phương pháp tổng hợp vấn đề
 =8
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
+Tổhợp
+Đối hợp
+ Tích hợp
+ Kết hợp
+ Tổng hợp theo không gian và thời gian
3 Các phương pháp giải quyết vấn đề trong tin học
+ Phương pháp trực tiếp
+ Phương pháp gián tiếp
• Phương pháp Thử Sai
• Phương pháp Heuristic
• Phương pháp Trí Tuệ Nhân Tạo
C.ÁP DỤNG MỘT SỐ THỦ THUẬT SÁNG TẠO CƠ BẢN VÀO
ỨNG DỤNG THỰC TẾ GIẢI QUYẾT VẤN ĐỀ TRONG TIN HỌC.
I.Đặt vấn đề
Từ đó đến giờ việc tìm phương hướng di chuyển sao chi tối ưu nhất luôn luôn là
một vấn đề được đặt ra .Vì sao chúng ta phải quan tâm lưu ý đến điều này, đâu tiên hãy
xem xét trường hợp sau:
 =9
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
Dựa vào hình trên, ta dễ dàng nhận ra rằng con đường đi vô bên trong rùi bo theo
hình chữ U để đi đến điểm mục tiêu không phải là con đường sáng suốt. Thế thì làm thế
nào mà vấn đề có thể được giải quyết một cách ổn thỏa. Hãy xem xét hình minh họa sau:
Rõ ràng ta thấy được con đường lựa chọn ở trong hình này hoàn toàn sáng suốt
hơn bên trên. Việc lựa chọn đường đi sao cho ổn thỏa là mục tiêu đề ra ở bài toán này.

Việc tìm kiếm đường trước giúp cho việc tìm kiếm có thể xác định được tương đối đường
đi tốt để có thể đến được mục tiêu.
II.Giải quyết vấn đề
Áp dụng một số thủ thuật sáng tạo cơ bản để giải quyết vấn đề:
 =:
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
- Nguyên tắc sử dụng trung gian: để chọn một hành trình “tiết kiệm” ta có thể sử
dụng thuật toán tìm đường đi ngắn nhất và cho ra sản phẩm phần mềm hổ trợ tìm đường
đi ngắn nhất cho người dùng. Sử dụng đối tượng trung gian, chuyển tiếp để mang,
truyền tác động. Tạm thời gắn đối tượng cho trước với đối tượng khác, dễ tách rời sau
đó.
- Nguyên tắc linh động: với phần mềm hỗ trợ tìm đường đi ngắn nhất, người dùng
chỉ cần đưa ra vị trí xuất phát và điểm cần đến, chương trình sẽ đưa ra con đường ngắn
nhất từ vị trí xuất phát đến điểm đích cho người dùng. Cần thay đổi các đặc trưng của
đối tượng hay môi trường bên ngoài sao cho chúng tối ưu trong từng giai đoạn làm
việc. Phân chia đối tượng thành từng phần có khả năng dịch chuyển đối với nhau. Nếu
đối tượng nhìn chung bất động, làm nó di động được.
- Nguyên tắc “vượt nhanh”: một số loại Heuristic khi được sử dụng sẽ được áp
dụng phương pháp này nhằm đạt được hiệu quả trong khi tiết kiệm được một khoảng
thời gian và chi phí trong quá trình di chuyển. Điển hình là khả năng di chuyển bằng
đường chéo mỗi khi loại Heuritstic này được áp dụng.
- Nguyên tắc chuyển sang chiều khác: nguyên tắc này khi được áp dụng vào trong
một vấn đề cụ thể sẽ giúp ta thấy được độ linh động cao. Nhất là trong các trường hợp
phải giải quyết vấn đề đường đi đối với các địa hình có vật cản phức tạp. Khả năng linh
động cao cùng kết hợp với các Heuristic sẽ cho phép khả năng tìm kiếm đường đi trở
nen ngắn hơn so với việc chỉ tính toán thông thường.
- Nguyên tắc sao chép: lấy bản đồ khu vực, chọn các địa điểm quan trọng làm điểm
xuất phát và điểm đích. Thay vì sử dụng những cái không được phép, phức tạp, đắt tiền,
không tiện lợi, sử dụng bản sao. Thay thế đối tượng bằng bản sao quang học với các tỷ
lệ phóng to, thu nhỏ cần thiết. Nếu không thể sử dụng bản sao quang học ở vùng khả

kiến, chuyển sang sử dụng bản sao hồng ngoại hoặc tử ngoại.
 =]
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
- Nguyên tắc thay đổi màu sắc: với mỗi điểm xuất phát hoặc điểm đích ta thể hiện
một kí hiệu hay hình vẽ đặc trưng. Thay đổi màu sắc / độ trong suốt của đối tượng hay
môi trường bên ngoài. Sử dụng các hình vẽ, ký hiệu thích hợp.
III.Khái niệm
Thuật giải A* được biết đến như là một thuật toán dùng để tìm kiếm đường đi sao
cho ít tốn kém chi phí nhất giữa 2 điểm cho trước. Điểm khác biệt giữa thuật toán này đối
với thuật toán Dijkstra mà ta đã biết là ở A* có thêm một yếu tố được gọi là Heuristic.
Yếu tố này quyết định đến kết quả thu được của yêu cầu đặt ra. Bởi thế chi phí để tính
toán ở thuật toán này được đặt ra được đưa ra bởi công thức:
Trong đó: g(x) : là chi phí để di chuyển từ điểm đầu tiên cho đến điểm hiện tại.
h(x) : là chi phí ước lượng khoảng cách đến điểm đích.
Trong công thức, ta thấy được h(x) là một con số được ước lượng tính toán. Cho
nên nó có thể sẽ chính xác hoặc không. Vấn đề đặt ra ở đây chính là ta phải biết lựa chọn
con số này cho phù hợp để không bị hụt trong quá trình tính toán. Đối với trường hợp
phải tịnh tiến đường đi giữa các điểm, thì h(x) được coi như là khoảng cách giữa 2 điểm
theo đường thẳng. Vì ta biết được đường thẳng là đường ngắn nhất giữa bất kì 2 điểm nào
cho nên việc lựa chọn h(x) trong trường này hoàn toàn xác đáng.
I.VA* vs Dijkstra
Dijkstra’s Algorithm và Best-First-Search (BFS)
Thuật toán của Dijkstra hoạt động bằng cách xuất phát từ điểm khởi đầu của đồ
thị. Sau đó nó sẽ khảo sát đi khảo sát lại đỉnh kề mà chưa được khảo sát gần nhất, rồi
thêm những đỉnh này vào một tập hợp những điểm đã khảo sát. Nó mở rộng ra ngoài từ
điểm khởi đầu cho đến khi đến được đích. Thuật toán Dijsktra bảo đảm tìm ra được
 =j
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
đường đi ngắn nhất từ điểm khởi đầu đến đích miễn sao các cạnh không có giá trị âm
nào. (Lưu ý: cụm từ “đường đi ngắn nhất” được sử dụng ở đây là vì thường có rất nhiều

đường đi ngắn nhung có chi phí như nhau). Trong biểu đồ dưới đây, hình vuông màu
hồng là điểm khởi đầu, hình vuông xanh là điểm đến, còn những vùng xanh rêu sẽ biểu
thị những nơi mà thuật toán Dijsktra “quét” qua. Vùng xanh rêu nhạt là những vùng xa
điểm khời đầu nhất, và do đó nó hình thành khảo sát.
Thuật toán BFS cũng được thực hiện một cách tương tự như vậy, ngoại trừ việc nó
còn có thể ước lượng xem cái đỉnh khác còn cách đích đến bao xa. Thay vì chọn đỉnh
gần với điểm khởi đầu nhất thì nó lại chọn cái gần với đích đến nhất. Thuật BFS không
chắc chắn là con đường đi ngắn nhất nhưng nó nhanh hơn rất nhiều so với thuật toán của
Dijkstra vì nó sử dụng chức năng heuristic để có thể đi đến đích nhanh nhất. Ví dụ, nếu
đích đến ở phía nam so với điểm xuất phát thì BFS sẽ tập trung hướng đến phía nam.
Trong biểu đồ bên dưới, màu vàng tượng trưng cho những giao điểm có giá trị heuristic
cao (đến đích khó khăn) còn màu đen là những giao điểm có giá trị heuristic thấp (đến
 =n
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
đích dễ dàng). Biểu đồ cho thấy thuật BFS có thể tìm được đường đi nhanh hơn rất nhiều
so với thuật toán của Dijkstra.
Tuy nhiên, cả hai ví dụ này chỉ để minh họa cho một vấn đề đơn giản nhất, đó là
khi bản đồ chẳng hề có chướng ngại vật nào và con đường đi ngắn nhất chỉ đơn giản là
một đường thẳng. Hãy thử cân nhắc một chướng ngại vật như đã đc miêu tả ở phần trc.
Thuật toán của Dijkstra phức tạp hơn nhưng nó đảm bảo có thể tìm ra đc con đường đi
ngắn nhất.
 Y
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
Thuật BFS thì đơn giản hơn nhưng rõ ràng con đường nó chọn thì ko tốt bằng.
 =
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
Vấn đề là ở chỗ thuật BFS “tham lam” và cố gắng cắm cúi đến đích cho bằng đc
cho dù con đường nó đi ko chính xác.
Sẽ tốt hơn nếu như chúng ta kết hợp các đặc điểm tốt nhất của cả hai thuật toán lại
với nhau. Vào năm 1968, A* được mở rộng để kết hợp các phương pháp heuristic như

thuật BFS và các phương pháp chính thống như thuật toán của Dijsktra. Điểm khác biệt ở
đây là phương pháp heuristic như thuật BFS thường cho chúng ta một con đường đi
tương đối ổn để giải quyết vấn đề nhưng lại ko bảo đảm đc rằng đó là con đường đi tốt
nhất. Nhưng dù sao thì A* cũng đc xây dựng trên đỉnh cao của thuyết heuristic và mặc dù
bản thân thuyết heuristic ko thể cho chúng ta đc một sự bảo đảm thì A* vẫn có thể bảo
đảm đc con đường đi ngắn nhất.
The A* Algorithm
A* là thuật toán phổ biến nhất được sử dụng trong vấn đề tìm đường, bởi vì nó khá
linh hoạt và có thể được sử dụng trong nhiều hoàn cảnh.
A* giống các thuật toán tìm kiếm trên đồ thị khác ở chỗ nó có khả năng có thể tìm
kiếm một khu vực rộng lớn của bản đồ:
- Giống thuật toán Dijkstra: ở chỗ nó có thể được sử dụng để tìm một con đường ngắn
nhất.
- Giống thuật toán BFS: ở chỗ nó có thể sử dụng heuristic để dẫn đường cho chính nó.
Trong trường hợp đơn giản, nó nhanh bằng BFS.
 
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
Trong ví dụ với vật cản, A * tìm ra con đường tốt ngang bằng với thuật toán Dijkstra:
 
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
Thuật toán của A* là nó kết hợp các thông tin mà thuật toán Dijkstra sử dụng (ưu tiên
điểm gần với điểm khởi đầu) và các thông tin mà BFS sử dụng (ưu tiên điểm gần với đích
đến).
Các kí hiệu sử dụng trong thuật toán A * gồm có: g (n) đại diện cho khoảng cách từ
điểm khởi đầu đến điểm n, và h (n) đại diện cho khoảng cách ước tính từ điểm n đến
điểm đích. Trong sơ đồ trên, màu vàng (h) đại diện cho điểm ở xa điểm đích và màu xanh
(g) đại diện cho điểm ở xa điểm khởi đầu. A* tính toán cả 2 giá trị trong quá trình di
chuyển từ điểm khỏi đầu đến đích. Qua mỗi bước, nó chọn ra điểm n có giá trị f(n) thấp
nhất với f (n) = g (n) + h (n).
Heuristic

Như ta đã biết, Heuristic được sử dụng ở trong công thức f(x) = g(x) + h(x) là một
con số được ước chừng chi phí thấp nhất giữa các điểm với nhau. Vì thế tính chính xác
cũng như tốc độ của các bước đi hoàn toàn phụ thuộc vô con số h(x) này.
Ở một thời điểm tính toán, nếu như h(x) được chọn bằng 0, khi đó chi phí khoảng
cách giữa 2 điểm chỉ còn là khoảng cách trực tiếp giữa chúng, lúc này thuật toán A* được
biễu diễn như là thuật toán Dijkstra mà ta đã biết.
• Nếu như h(x) luôn luôn nhỏ hơn hoặc bằng với chi phí di chuyển từ điểm hiện
tại cho đến điểm đích. Khi đó ta sẽ bảo đảm được cih phí mà ta đang chọn là
ngắn nhất.
• Nếu như h(x) luôn luôn bằng với chi phí di chuyển từ vị trí hiện tại đang xét
cho đến mục tiêu, lúc này thuật toán A* chỉ đi theo con đường tốt nhất và
không phải tốn thời gian mở rộng ra ở các vị trí không cần thiết, lúc này thuật
toán sẽ được thực hiện rất là nhanh. Tuy nhiên cũng không dễ dàng gì để có thể
luôn luôn đạt h(x) như thê này trong suốt quá trình tìm kiếm.
 8
ỨNG DỤNG PHƯƠNG PHÁP LUẬN SÁNG TẠO KHOA HỌC TRONG TIN HỌC
• Nếu thình thoảng h(x) được chọn lớn hơn chi phí di chuyển từ vị trí hiện tại
đang xét cho đển điểm đích, lúc này ta sẽ không thể bảo đảm được A* đang
thực hiện công việc tìm kiếm đường đi ngắn nhát.
• Trường hợp cuối cùng ( tuy gần như là rất ít khi xảy ra ), lức này h(x) lớn hơn
rất nhiều so với g(x) trong công thức tính toán, khi này công thức f(x) = g(x) +
h(x) hoàn toàn được đóng vai trò quyết định bởi h(x), quá trình tìm kiếm của
A* sẽ trở thành BFS ( Best-First-Search).
Vậy ta thấy rằng chúng ta có nhiều sự lựa chọn trong việc tìm ra con đường ngắn
nhất từ 2 điêm cho sẵn. Vấn để đắt ra ở đây là ta phải biết lựa chọn h(x) như thê nào để
có thể đạt được kêt quả chấp nhận được. Vì có khi ta có thể tìm đường đi ngắn nhất rất là
nhanh, nhưng cũng có lúc ta phải tốn khá nhiều thời gian vô ích trong việc tìm kiếm vì
các vị trí dư thừa mà ta không biết trong suôt quá trình này.
Lựa chọn tốc độ hay sự chính xác ?
Khả năng chính xác của thuật toán A* hoàn toàn dựa trên phương thức Heuristic

mà ta đã lựa chọn. Việc tính toán chi phí có thể hoàn toàn bị thay đổi bởi sự lựa chọn
này. Quá trình tùy biến giữa hai sự lựa chọn này hoàn toàn không xác định, trong một số
trường hợp thì cái này lại hơn cái kia và ngược lại. Bởi vì có nhiều trường hợp lựa chọn
này lạii có vẻ tối ưu hơn cái kia, chỉ để phục vụ cho một mục đích xác định nào đó.
Vậy, việc lựa chọn giữa tốc độ hay sự chính xác hoàn toàn không cố định Một
yếu tố ảnh huỏng đến việc lựa chọn này còn từ bản thân của máy đang thực hiện thuật
toán, ở đây ta có thể hiểu đơn giản chính là tốc độ của CPU. Việc tính toán tìm kiếm
đường đi, số lượng các trường hợp phải xử lý, số lượng các yếu tố trong quá trình tìm,
kích cỡ của không gian tìm, mức độ phức tạp … và nhiều yếu tố khác hoàn toàn ảnh
hưởng bởi tốc độ thực thi hiện tại của CPU. Có thể đối với máy này việc xử lý lại cho ra
kêt quả nhanh hơn nếu phải sử dụng hết tât cả các chi tiết và yếu tố … v.v. Một phương
pháp để ta có thể chủ động trong việc lựa chọn một phương pháp thực hiện này là chủ
độing xem khoảng cách giữa các điểm với nhau dựa trên một tỉ lệ nhất định, theo mội hệ
 9

×