Phương pháp sáng tạo khoa học tìm đường đi ngắn nhất
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
Khoa: Khoa Học Máy TínhLớp: CNTN01
-Phương Pháp Luận Nghiên Cứu Sáng Tạo Khoa Học
Sinh Viên Thực Hiện:Nguyễn Bích Vân – 06520560
Giảng viên: GS.TS.KH Hoàng Văn Kiếm
Trang 2Lời cảm ơn
Trong thời gian qua, với sự chỉ dạy tận tình về mặt kiến thức môn học Phương Pháp Luận Nghiên Cứu Sáng Tạo Khoa Học của thầy GS.TS.KH Hoàng Kiếm, sự
hướng dẫn nhiệt tình các thầy cô trong khoa Khoa Học Máy Tính và cùng sự hỗ trợ đầy đủ về cơ sở vật chất kỹ thuật của nhà trường đã giúp em được tiếp thu những kiến thức,
hiểu biết tốt nhất về Nghiên Cứu Sáng Tạo Khoa Học để có thể hoàn thành tốt bài báo cáo này.
Em xin gởi lời cảm ơn chân thành nhất đến quí thầy cô !!!
Trang 3Mục lục
A NGHIÊN CỨU KHOA HỌC
I Nghiên cứu khoa học? Trang 4 II Đối tượng và phạm vi nghiên cứu khoa học? Trang 4
III Mục đích và mục tiêu nghiên cứu khoa học? Trang 4 IV Một số thông tin khoa học công nghệ trong và ngoài nước 2009… Trang 5 V Tình hình nghiên cứu khoa học ở các trường Đại Học ……… Trang 5
B ÁP DỤNG MỘT SỐ THỦ THUẬT SÁNG TẠO CƠ BẢN VÀO ỨNG DỤNGTHỰC TẾ GIẢI QUYẾT VẤN ĐỀ
I Đặt vấn đề……… ……….… Trang 7
II Giải quyết vấn đề……… …… Trang 7
C TRIỂN KHAI ỨNG DỤNG
I Cơ sở lý thuyết ……… … …… Trang 8
1 Giới thiệu thuật toán Dijkstra……….….…… ….…Trang 8 2 Mô tả thuật toán Dijkstra……… … Trang 9 II Thực thi chương trình ……….…… ……….…Trang 10
1 Đặc tả và mô phỏng tri thức……….…….…… … Trang 10 2 Đặc tả chương trình thực thi……… Trang 11 3 Mở rộng……… Trang 12
Trang 4Mở đầu
Để đáp ứng nhu cầu cuộc sống ngày càng tăng cao của con người, các nhà tri
thức đã không ngừng tìm tòi, khám phá, sáng tạo Bằng các hoạt động nghiên cứu của mình, các nhà tri thức không chỉ góp phần làm giàu nguồn tri thức cho nhân loại, mà còn cho ra đời những ứng dụng thiết thực phục vụ cho lợi ích con người.
Bên cạnh việc tìm hiểu một cách khái quát các hoạt động nghiên cứu trong và
ngoài nước nhằm có những kiến thức nền tảng, bài báo cáo còn đưa ra một số thủ
thuật sáng tạo cơ bản nhằm áp dụng thuật toán Dijkstra vào cuộc sống thực tế.
Nội dung báo cáo
Tìm hiểu sơ lược về hoạt động nghiên cứu khoa học trong và ngoài nước.
Áp dụng một số thủ thuật sáng tạo nhằm tiến hành triển khai tìm hiểu thuật toán
Dijkstra để giải quyết vấn đề tìm đường đi ngắn nhất trên một miền tri thức.
Trang 5A NGHIÊN CỨU KHOA HỌCI.Nghiên cứu khoa học? [1]
Nghiên cứu khoa học là một 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 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 và xã hội để 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.
Con người muốn làm nghiên cứu khoa học phải có kiến thức nhất định về lĩnh vực
nghiên cứu và phải rèn luyện cách làm việc tự lực, có phương pháp.
* Đố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.
III.Mục đích và mục tiêu nghiên cứu khoa học? [1]
Khi viết một báo cáo nghiên cứu khoa học, 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 Nói cách khác, mục đích là sự sắp đặt công việc
hay điều gì đó được đưa ra trong nghiên cứu 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 điều gì hoặc 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 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ì?”.
Trang 6IV.Một số thông tin khoa học công nghệ trong và ngoài nước 2009 [2]
Đề mục
Các tác giả Nguyễn Văn Khang, Nguyễn Quang Hoàng, Lê Đức Đạt
(Trường ĐH Bách khoa Hà Nội), Trần Hoàng Nam (Trường CĐ Sư
phạm kỹ thuật Vĩnh Long) thực hiện trình bày phương pháp điều khiển trượt áp cho rôbôt dư dẫn động.
ThS Phan Xuân Bằng (Tổng Cty đầu tư phát triển đường cao tốc Việt Nam - VEC) thực hiện trình bày về thiết kế, trình tự công nghệ thi công kết cấu nhịp dầm và phần hệ dây văng trong cầu vượt Ngã
Tư Sở, có KCN dạng Extradosed đầu tiên áp dụng tại Việt Nam.
Các tác giả Đỗ Quang Huy, Hồ Thị Thoa, Trần Anh Tuấn, Phùng Mạnh Quân, Lê Kim Long, Đỗ Thị Việt Hương (Trường ĐH Khoa học tự nhiên), Phạm Văn Khiển (Tạp chí Dược học), Trần Đình Thắng (Trường ĐH Vinh) thực hiện sử dụng tin – sinh học dự đoán hoạt tính sinh học một số chất trong tinh dầu long não Việt Nam Trong nước
Các tác giả Ngô Đình Trí, Lê Thị Minh Nghĩa (Viện KH&CN tính toán TP.HCM) thực hiện nhằm ước lượng (nhận dạng) các tham số
ổn định và điều khiển của máy bay từ dữ liệu bay thử nghiệm bằng 2 phương pháp Equation Error (EE), Maximum Likelihood (ML).
Với hy vọng tạo nên bản sắc riêng trên thị trường TV đông đúc, Toshiba sẽ sớm xuất xưởng mẫu TV đầu tiên dựa trên nền vi xử lý Multimedia cực mạnh Cell - loại chip hiện đang được dùng trong dòng máy chơi game PlayStation 3.
Công ty NEC Nhật Bản vừa giới thiệu “Kính phiên dịch” có thể hiển thị những dòng chữ nhỏ trên mặt trong của kính, giúp khách du lịch nhanh chóng giao tiếp với người địa phương bằng ngôn ngữ bản địa Một nhóm các nhà khoa học quốc tế do Đại học Lund ở Thụy Điển
đứng đầu đã phát triển thành công một “bàn tay thông minh” không
chỉ tái tạo các động tác chính xác của bàn tay thực mà còn giúp
người sử dụng lấy lại được cảm giác Ngoài nước
Apple ngày 20/10 đã giới thiệu con chuột đa chạm không dây đầu
Trang 7tiên trên thế giới với tên gọi “Magic Mouse” Giống như tất cả các thiết kế của Apple, “Chuột ma thuật” là một sản phẩm theo triết lý thiết kế tối thiểu, không phím bấm, bánh xe trượt hay núm điều chỉnh.
V Tình hình nghiên cứu khoa học ở các trường Đại Học [3]
Hoạt động nghiên cứu khoa học công nghệ (KHCN) và chuyển giao KHCN là một trong những hoạt động chính của các trường đại học Nghiên cứu KHCN góp phần nâng cao chất lượng đào tạo đại học Trong đó tăng nguồn thu từ hoạt động KHCN của các trường đại học là một trong những dấu hiện thể hiện sự phát triển KHCN Tuy nhiên, trong thời gian qua nguồn thu từ hoạt động KHCN tại các trường
đại học chưa nhiều.
Trong giai đoạn 2006-2008, tỷ lệ nguồn thu từ hoạt động KH&CN trong nguồn
tài chính ngân sách của trường đại học theo 7 khối ngành chỉ đạt 3,92% Tỷ lệ này cho thấy, khó có thể đạt được mục tiêu của Nghị quyết 14/2005/NQ-CP ngày 1/11/2005 của Chính phủ: Các trường đại học lớn phải là các trung tâm nghiên cứu khoa học mạnh của cả nước; nguồn thu từ các hoạt động khoa học và công nghệ, sản xuất dịch vụ đạt tối thiểu 15% tổng nguồn thu của các cơ sở giáo dục đại học vào
năm 2010 và 25% vào năm 2020.
Trang 8B ÁP DỤNG MỘT SỐ THỦ THUẬT SÁNG TẠO CƠ BẢN VÀO ỨNG DỤNGTHỰC TẾ GIẢI QUYẾT VẤN ĐỀ
Hiện nay nhu cầu về đi lại trở nên rất cấp bách, đặc biệt là với những khu trung tâm thành phố - một khu vực rộng lớn với nhiều ngã đường thì việc định hướng con đường
nên đi trước khi xuất phát là một vấn đề cần thiết Đặc biệt hơn là trước mỗi chuyến
xuất hành, chúng ta thường phải suy nghĩ và chọn ra cho mình một hành trình “tiết kiệm” nhất theo nghĩa tốn ít thời gian, tốn ít nhiên liệu hoặc tốn ít tiền nhất
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 đề:
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.
Nội dung nguyên tắc: 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 đó.
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.
Nội dung nguyên tắc: 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 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.
Nội dung nguyên tắc: 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.
một kí hiệu hay hình vẽ đặc trưng.
Nội dung nguyên tắc: 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.
Trang 9C TRIỂN KHAI ỨNG DỤNGI Cơ sở lý thuyết [4]
Trong đời sống, chúng ta thường gặp những tình huống như sau: để đi từ địa điểm A đến địa điểm B trong thành phố, có nhiều đường đi, nhiều cách đi; có lúc ta chọn đường đi ngắn nhất (theo nghĩa cự ly), có lúc lại cần chọn đường đi nhanh nhất (theo nghĩa
thời gian) và có lúc phải cân nhắc để chọn đường đi rẻ tiền nhất (theo nghĩa chi phí), v.v
Có thể coi sơ đồ của đường đi từ A đến B trong thành phố là một đồ thị, với đỉnh là các giao lộ (A và B coi như giao lộ), cạnh là đoạn đường nối hai giao lộ Trên mỗi cạnh của đồ thị này, ta gán một số dương, ứng với chiều dài của đoạn đường, thời gian đi
đoạn đường hoặc cước phí vận chuyển trên đoạn đường đó,
1 Giới thiệu thuật toán Dijkstra
Bài toán: Cho một đồ thị liên thông G=(V,E), một hàm trọng số w: E → [0, ∞) và
một đỉnh nguồn s Cần tính toán được đường đi ngắn nhất từ đỉnh nguồn s đến mỗi
đỉnh của đồ thị.
Ví dụ: Chúng ta dùng các đỉnh của đồ thị để mô hình các thành phố và các cạnh
để mô hình các đường nối giữa chúng Khi đó trọng số các cạnh có thể xem như độ
dài của các con đường (và do đó là không âm) Chúng ta cần vận chuyển từ thành phố s đến thành phố t Thuật toán Dijkstra sẽ giúp chỉ ra đường đi ngắn nhất chúng ta có thể đi.
Năm 1959 nhà khoa học máy tính người Hà Lan Edsger Dijkstra đã đưa ra một
thuật toán rất hiệu quả để giải quyết bài toán tìm đường đi ngắn nhất trong một đồ thị liên thông không có cạnh mang trọng số âm và thuật toán chính là thuật toán Dijkstra.
2 Mô tả thuật toán Dijkstra
Ý tưởng: thực hiện một quá trình duyệt đồ thị xuất phát từ S0 trong đó với mỗi
đỉnh S được xem xét ta tính số đo lộ trình từ S đến S0: I(S)
Các đỉnh đã được xem xét có thể được lưu ở 2 danh sách: C = các đỉnh không xem xét lại
Trang 10 Mô tả các bước trong thuật toán Dijkstra:
2.1 Chọn N thuộc O sao cho I(N) nhỏ nhất 2.2 Loại N khỏi O và thêm vào C
2.3 Nếu (N==G) Dừng và kết luận tìm thấy
Trang 11II Thực thi chương trình
Cài đặt thuật toán tìm đường đi ngắn nhất Dijsktra trên phạm vi khu vực ĐHQG – Thủ Đức - nơi hội tụ nhiều trường Đại Học, địa hình phức tạp với nhiều ngã đường.
1 Đặc tả và mô phỏng tri thức
Phạm vi tri thức ứng dụng là khu vực ĐHQG – Thủ Đức.
Hiển thị sơ đồ khu vực ĐHQG – Thủ Đức trên đồ thị Ứng với mỗi địa điểm trọng yếu sẽ được xác định là một đỉnh trên đồ thị và các khoảng cách mặt đất
được nối giữa các địa điểm trọng yếu này là trọng số của đồ thị.
Mô hình ứng dụng cho thuật toán Dijkstra là khu vực ĐHQG – Thủ Đức với các địa điểm trọng yếu như sau:
ĐH Quốc Tế (1)
ĐH Bách Khoa (2)
Ký túc xá ĐHQG (3)
ĐH Công Nghệ Thông Tin (4)
Thư viện Trung Tâm và Nhà Điều Hành ĐHQG (5)
ĐH Khoa Học Xã Hội và Nhân Văn (6)
ĐH Khoa Học Tự Nhiên (8)
Mô hình hóa sơ đồ khu vực ĐHQG trên đồ thị với các cạnh là các đường nối
giữa các điểm trọng yếu và các trọng số là khoảng cách mặt đất giữa các điểm trọng yếu đó.
Trang 12 Bảng dữ liệu mô tả trọng số của các cạnh từ đồ thị trên
- Chương trình được cài đặt trên ngôn ngữ C# (visual studio 2008) - Các gói phần mềm hỗ trợ giao diện như SkinButton.
Đặc tả chức năng
Input:
Trang 13Chương trình sẽ yêu cầu người sử dụng nhập vào hệ thống vị trí xuất phát và điểm đích cần đến.
Output:
Với nguồn dữ liệu có sẵn bên trong, chương trình sẽ hiển thị cho người dùng kết quả đường đi ngắn nhất từ vị trí xuất phát tới điểm đích cần đến và khoảng
cách ước tính thực tế trên đoạn đường cần đến.
3 Mở rộng
Do thời gian có hạn nên chương trình chỉ áp dụng trên một phạm vi tri thức nhỏ (mô hình ĐHQG – Thủ Đức) Với một phạm vi tri thức lớn hơn, khi cài đặt thuật toán Dijkstra ta có thể sử dụng kết hợp cấu trúc heap để làm giảm độ phức tạp của thuật toán.
Trang 14TÀI LIỆU THAM KHẢO