BÁO CÁO TỔNG KẾT
ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CỦA SINH VIÊN
THAM GIA XÉT GIẢI THƯỞNG "TÀI NĂNG KHOA HỌC TRẺ VIỆT NAM"
NĂM 2014 DÀNH CHO SINH VIÊN
CÂN BẰNG TẢI TRONG ĐỊNH TUYẾN VƯỢT HỐ CHO
MẠNG CẢM BIẾN KHÔNG DÂY
SỬ DỤNG YẾU TỐ NGẪU NHIÊN
Thuộc nhóm ngành khoa học: Kỹ thuật và Công nghệ 3 (KT3)
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
BÁO CÁO TỔNG KÊT
ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CỦA SINH VIÊN
THAM GIA XÉT GIẢI THƯỞNG "TÀI NĂNG KHOA HỌC TRẺ VIỆT NAM"
NĂM 2014 DÀNH CHO SINH VIÊN
-2-
CÂN BẰNG TẢI TRONG ĐỊNH TUYẾN VƯỢT HỐ CHO
MẠNG CẢM BIẾN KHÔNG DÂY
SỬ DỤNG YẾU TỐ NGẪU NHIÊN
Thuộc nhóm ngành khoa học: Kỹ thuật và Công nghệ 3 (KT3)
Sinh viên thực hiện:
Dân tộc:
Lớp, khoa:
Năm thứ:
Ngành học:
Người hướng dẫn:
Nguyễn Đức Trọng
Giới tính: Nam
Kinh
CNTT3, Viện Công nghệ thông tin và truyền thông
5
/ Số năm đào tạo: 5
Công nghệ phần mềm
TS. Nguyễn Khanh Văn, ThS. Nguyễn Phi Lê
-3-
MỤC LỤC
-4-
DANH MỤC HÌNH ẢNH
-5-
DANH MỤC BẢNG BIỂU
-6-
DANH MỤC TỪ VIẾT TẮT
Thuật ngữ / Từ viết tắt
Ý nghĩa
Sensor
Cảm biến
WSN
Wireless Sensor Network
Mạng cảm biến không dây
NS2
Network Simulator – 2
Tên một phần mềm mô
phỏng mạng
Hố mạng
Vùng mạng không tồn tại
cảm biến còn khả năng hoạt
động
Hole
Chú thích
-7-
1
TỔNG QUAN ĐỀ TÀI NGHIÊN CỨU & KẾT QUẢ THU ĐƯỢC
Cảm biến là thiết bị điện tử có khả năng thu nhận tín hiệu từ môi trường xung quanh và
qua đó thu thập số liệu về các yếu tố môi trường như ánh sáng, âm thanh, nhiệt độ, độ ẩm,…
Dữ liệu thu được từ cảm biến thường được gửi về các máy tính hoặc thiết bị xử lý khác, trở
thành đầu vào cho các quy trình nghiệp vụ khác nhau. Có nhiều cách để các thiết bị cảm
biến kết nối và truyền dữ liệu với nhau và với các thiết bị xử lý khác; một trong số đó là kết
nối thông qua thu phát sóng vô tuyến, tức liên lạc không dây. Các cảm biến sử dụng kết nối
không dây được gọi là cảm biến không dây. Mạng cảm biến không dây là mạng được thiết
lập bởi các kết nối không dây giữa những nút mạng mang thiết bị cảm biến.
Với sự phát triển nhanh của kỹ thuật vi xử lý, giá thành cảm biến đã trở nên rẻ, mạng
cảm biến ngày càng được sử dụng rộng rãi trong nhiều lĩnh vực phát triển kinh tế xã hội và
quân sự, an ninh rất đa dạng. Mạng cảm biến giúp chúng ta thu thập thông tin, qua đó theo
dõi và giám sát môi trường, và trở nên đặc biệt hữu ích khi môi trường là khắc nghiệt cho
điều kiện sống của con người. Có thể kể một số ví dụ như sau: trong khí tượng, nông
nghiệp để theo dõi độ ẩm, ánh sáng, nhiệt độ…, trong ngôi nhà thông minh để điểu khiển và
tối ưu hiệu quả các các thiết bị môi trường…, trong công nghiệp để giám sát phóng xạ, theo
dõi áp lực…, trong quân sự để giám sát sự bố trí lực lượng và vũ khí của quân địch trên
chiến trường.
Nút mạng cảm biến là các thiết bị có khả năng tính toán rất hạn chế, bộ nhớ nhỏ và hoạt
động nhờ nguồn năng lượng dự trữ bởi pin. Từ các yếu tố kỹ thuật riêng biệt này mà quá
trình truyền tin trong mạng cảm biến không dây có những đặc thù riêng so với các mạng
truyền thống thường gặp như mạng cục bộ hay mạng Internet. Do khả năng thu phát yếu,
việc truyền tin của một nút mạng (thiết bị cảm biến) về đến máy tính xử lý ở trung tâm dựa
trên cơ chế lan truyền qua các nút mạng trung gian. Đây là một đặc thù riêng của truyền tin
trên mạng cảm biến, gây nên những khó khăn và thách thức cho việc đảm bảo tốc độ truyền
tin và tiết kiệm năng lượng. Hơn nữa mỗi nút chỉ có khả năng nhận biết trong một vùng bán
kính rất hẹp, thường chỉ bao gồm một vài nút lân cận. Vì mỗi nút chỉ có thông tin cục bộ
hạn chế và có khả năng tính toán rất giới hạn, việc định tuyến – xác lập đường truyền tin
giữa các cặp nút nguồn và đích – trở nên không đơn giản. Đặc biệt bài toán truyền tin trên
mạng không dây, mà trung tâm của nó là vấn đề định tuyến, sẽ trở nên rất khó khăn, thách
thức khi mạng được bố trí ở vùng môi trường có địa hình phức tạp.
Hiện nay ứng dụng mạng cảm biến đang thu hút mối quan tâm rất lớn, do đó các hoạt
động nghiên cứu về công nghệ truyền tin cảm biến không dây đang được thúc đẩy mạnh.
Đặc biệt, bài toán định tuyến được coi là một vấn đề nóng do những đặc thù khó khăn riêng
biệt của mạng cảm biến đã kể trên. Tuy nhiên cho đến nay phần lớn các nghiên cứu học
thuật trong lĩnh vực này có xu hướng giả định một môi trường lý tưởng; chưa có nhiều
những đề xuất về giải thuật định tuyến có tính đến những yếu tố liên hệ địa hình phức tạp.
Trong thực tế, mạng cảm biến không dây thường được triển khai trên những địa hình phức
tạp, và còn phải chịu nhiều điều kiện khắc nghiệt từ bên ngoài. Trên các địa hình thực tế,
thường tồn tại nhiều vật cản như sông, hồ, đầm lầy,… dẫn tới việc không thể bố trí đều đặn
-8-
nút mạng cảm biến. Thậm chí, tại các vùng ảnh hưởng thiên tai như núi lửa, động đất, lũ lụt,
… các nút mạng dễ bị hỏng, bị phá hủy do tác động bên ngoài. Những trường hợp như trên
sẽ dẫn tới sự tồn tại các vùng mạng có mật độ cảm biến rất thấp, thậm chí không tồn tại cảm
biến có khả năng hoạt động; đây là các vùng thường được gọi là các “hố” hay “hố mạng”.
Sự tồn tại của các hố mạng sẽ dẫn tới ảnh hưởng không tốt tới hoạt động truyền tin trong
mạng, làm giảm hiệu quả hay thậm chí làm tê liệt hoạt động của toàn mạng.
Với các giải thuật định tuyến truyền thống đã có, sự tồn tại các hố mạng sẽ dẫn đến hiện
tượng một lượng lớn gói tin sẽ được truyền men theo biên của hố. Mà hố có thể có hình
dạng khúc khuỷu phức tạp dẫn tới đường đi của các gói tin này bị kéo dài, dài gấp nhiều lần
so với đường đi tối ưu. Một hiệu ứng khác từ hiện tượng tập trung giao thông trên biên hố là
tình trạng mất cân bằng tải: các nút trên biên hố sẽ phải làm việc nhiều hơn so với các nút
thông thường. Các nút chịu tải cao này sẽ nhanh bị hết băng thông, cạn kiệt tài nguyên; dĩ
nhiên hiện tượng quá tải này sẽ gây tắc nghẽn các đường truyền. Đồng thời, các nút quá tải
này sẽ nhanh chóng cạn kiệt năng lượng, không còn khả năng hoạt động và trở thành một
nút chết. Sự chết đi của các nút quá tải trên biên hố, vô hình chung, làm hố mở rộng thêm
ra. Khi hố rộng ra, số lượng đường truyền tin cắt qua hố tăng lên, số gói tin truyền qua các
nút trên biên cũng vì thế tăng lên theo. Toàn bộ quá tình trên tạo thành một vòng luẩn quẩn
mà hậu quả là mạng cảm biến không dây sẽ bị chia cắt và mất đi tính liên thông giữa các
khu vực khác nhau, thậm chí sẽ dẫn đến tê liệt (tức là cái chết của toàn mạng).
Trong nghiên cứu về mạng cảm biến không dây, chúng tôi đặc biệt chú ý tới vấn đề địa
hình phức tạp và tác động từ đó đến chất lượng của quá trình định tuyến và truyền tin.
Chúng tôi đã định hướng giải quyết các vấn đề nảy sinh do địa hình tạo hố mạng dựa trên
hướng tiếp cận bằng định tuyến địa lý. Nhiệm vụ trọng tâm trong nghiên cứu của chúng tôi
là đưa ra những giải pháp thông minh, hiệu quả cho bài toán định tuyến khắc phục hố
mạng trong truyền tin mạng cảm biến. Có thể nói, một giải pháp thành công, hiệu quả cao
cho bài toán định tuyến khắc phục hố mạng sẽ là một đóng góp mang tính then chốt, chìa
khóa cho một giải pháp chung cho việc sử dụng mạng cảm biến không dây một cách có hiệu
quả trên các địa hình xấu và trong các điều kiện thời tiết khắc nghiệt. Đặc biệt trong một
tương lại không xa, những nghiên cứu của chúng tôi có thể góp một tiếng nói quan trọng
trong việc xây dựng giải pháp theo dõi và giám sát vùng thiên tai đang xảy ra.
-9-
1.1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Việt Nam là một nước nông nghiệp; tuy nhiên vì chưa phải có một nền nông nghiệp
phát triển, hiệu quả của các mùa màng trồng trọt, chăn nuôi tại Việt Nam còn phụ thuộc rất
nhiều vào điều kiện tự nhiên. Một trong những nguyên nhân của sự phụ thuộc này là do
chúng ta chưa có hay chưa triển khai tốt các phương thức theo dõi các điều kiện tự nhiên,
môi trường một cách hiệu quả. Các yếu tố như độ ẩm, ánh sáng, côn trùng, tình trạng xâm
nhập mặn… hầu hết được theo dõi và đánh giá dựa trên kinh nghiệm. Một trong những giải
pháp hiệu quả là ứng dụng mạng cảm biến không dây, cho phép theo dõi, đánh giá được các
điều kiện tự nhiên trên những diện tích nông nghiệp rộng lớn.
Như đã phân tích, việc ứng dụng mạng cảm biến không dây trong thực tế, đặc biệt là
trong hoàn cảnh nước ta, nơi có nhiều mặt nước, địa hình và khí hậu phức tạp, chỉ đem lại
chất lượng và hiệu quả kinh tế khi chúng ta giải quyết tốt bài toán truyền tin mạng cảm biến
trong địa hình phức tạp. Chìa khóa then chốt ở đây chính là bài toán xây dựng cơ chế định
tuyến khắc phục hố mạng. Đóng góp nghiên cứu ở đây sẽ đem lại những giải pháp thực tiễn
mang tính kinh tế cao, tiết kiệm chi phí ban đầu, chi phí bảo trì và phát sinh. Thiếu những
đóng góp này, mạng cảm biến sẽ làm việc kém hiệu quả mà thời gian sống ngắn, gây sự
triển khai đi lại nhiều lần, tốn phí tiền của và thời gian.
Việt Nam cũng là một trong những nước chịu ảnh hưởng nặng nề từ tình trạng biến đổi
khí hậu của trái đất, chúng ta thường xuyên hứng chịu những điều kiện thời tiết cực đoan và
các dạng thiên tai khác nhau (như triều cường, giông bão, lũ đầu nguồn,... ). Mặc dù có thể
còn hơi sớm, nhưng khả năng sử dụng mang cảm biến không dây để theo dõi, giám sát vùng
thiên tai đang xảy ra là một tiềm năng thấy trước được. Rất khó cho con người có thể trực
tiếp lao vào khảo sát biến đổi vùng đang trải qua thiên tai, điều mà mạng cảm biến không
dây có thể thay thế vừa hiệu quả, vừa tránh mất mát tính mạng. Các nghiên cứu của chúng
tôi hứa hẹn đưa ra giải pháp hiệu quả cho việc theo dõi sự biến đổi nhanh chóng của hố
mạng, điều mà có thể ứng dụng vào để theo dõi và giám sát vùng “hố thiên tai” trong thực
tế. Tất nhiện đây là một bài toán thách thức, vì sự biến đổi nhanh của “hố thiên tai” sẽ phá
hủy mọi thiết bị liên lạc trên đường đi của nó. Tuy nhiên các thuật toán định tuyến xấp xỉ
thông minh có thể khắc phục được khó khăn này. Việc luôn biết trước hướng phát triển của
“hố thiên tai” sẽ giúp con người đưa ra phương án phòng tránh và đối phó hiệu quả, làm
giảm thiểu thiệt hại do thiên tai gây ra.
Một giải pháp thông minh cho bài toán định tuyến trong mạng cảm biến không dây trên
địa hình xấu, đặc biệt là bài toán định tuyến khắc phục hố, sẽ cho phép nâng cao khả năng
thích nghi của mạng cảm biến không dây với các địa hình đa dạng, phức tạp trong thực tế.
Đóng góp nghiên cứu tốt trong vấn đề này sẽ là điểm tựa then chốt giúp chúng ta xây dựng
giải pháp chung cho việc ứng dụng các mạng cảm biến không dây đạt hiệu quả cao trong
các ứng dụng thực tế.
- 10 -
1.2 PHƯƠNG PHÁP NGHIÊN CỨU
Mô hình hóa: Một phương châm nghiên cứu cơ bản của chúng tôi là cố gắng tìm cách
khái quát hóa và mô hình hóa để đưa một vấn đề phức tạp về một mô hình bài toán mà ta có
thể đưa ra các phát biểu tường minh về các đặc tính của mô hình và các yếu tố cần khảo sát.
Phương châm mô hình hóa này đã dẫn đến những bước tiến chiến lược cơ bản. Thứ nhất, từ
một bình diện quan tâm nghiên cứu rộng, chúng tôi đã xác định được hướng nghiên cứu sâu
bằng cách đề xuất mô hình hố mạng với những chủ đề nghiên cứu xoay quanh vấn đề định
tuyến khắc phục hố, rút ra từ những quan sát thực tế. Thứ hai, như một sự đột phá về
phương pháp, chúng tôi đã tiếp tục mô hình hóa việc khảo sát hố mạng bằng việc đưa về
hình học Euclide (các hố mạng như là các đa giác, và định tuyến là xác định các đường gấp
khúc nối 2 điểm cho trước mà tránh cắt các đa giác hố). Nhờ đó chúng tôi có thể sử dụng
các công cụ hình học Euclide vốn rất đầy đủ và trực quan để khảo sát và giải quyết vấn đề.
Mô phỏng: Để có thể đánh giá chính xác được hiệu quả thực tế của một giải pháp kỹ
thuật thì ta cần thông qua triển khai và thử nghiệm trên thực tế. Tuy nhiên việc thử nghiệm
trên thực địa với một tập hợp cảm biến số lượng lớn (có thể lên tới hàng nghìn) sẽ rất tốt
kém, chưa kể việc nghiên cứu đòi hỏi sự thử nghiệm triển khai nhiều lần theo nhiều bố trí đa
dạng với những tham số hệ thống biến đổi; thực tế đó sẽ dẫn đến những chi phí rất lớn,
khiến cho giải pháp thực nghiệm trên thực tế là không thể khả thi. Vì vậy, giải pháp duy
nhất thích hợp ở đây là thực nghiệm thông qua mô phỏng trên hệ thống máy tính. Phương
pháp thực nghiệm mô phỏng đã trở nên rất phổ biến và phát triển trên thế giới. Nhiều hệ
công cụ mô phỏng mạng rất mạnh đã được xây dựng và phổ biến trên thế giới. Tuy nhiên
việc áp dụng một hệ công cụ như vậy, được thiết kế mang tính đa năng cho mọi loại mạng,
vào một hình thức đặc thù có nhiều điểm riêng biệt (mạng không dây trong địa hình xấu, có
hố mạng, kích thước lớn), cũng là một vấn đề không hề đơn gian, thậm chí thách thức chẳng
kém việc tự tạo ra một hệ thống mô phỏng riêng (nhưng qui mô nhỏ). Chúng tôi đã đưa ra
một phương pháp mô phỏng của riêng mình dựa trên một hệ công cụ có sẵn, nhưng cần
thêm những nỗ lực mở rộng chức năng công phu để có thể áp dụng hiệu quả.
Kỹ thuật phần mềm hệ thống: Phương pháp thực nghiệm của chúng tôi là xây dựng
một hệ thống mô phỏng chuyên dụng cho khảo sát định tuyến trên mạng không dây, với
những công cụ mạnh về tạo kịch bản trực quan và tự động, quản lý số nút mạng lớn với khả
năng thiết lập theo vùng, cho phép thiết lập các thuật toán định tuyến kiểu mới của người sử
dụng. Để xây dựng được một hệ thống phần mềm chuyên dụng này, chúng tôi dựa vào một
hệ công cụ mạnh đa năng đã phổ biến là NS2. Ý tưởng kiến trúc hệ thống của chúng tôi là
xây dựng những mô-đun hỗ trợ đa dạng để khai thác phần máy xử lý chính (engine) là lõi
thực hiện mô phỏng truyền tin do NS2 cung cấp. Ở đây, chúng tôi đã áp dụng nhiều kỹ thuật
phần mềm đa dạng để phát triển một hệ thống chuyên dụng kiểu mới trên cơ sở khai thác lõi
tính toán của một hệ đa năng có sẵn.
1.3 CÁC KẾT QUẢ ĐẠT ĐƯỢC – NỘI DUNG KỸ THUẬT CỦA BÁO CÁO
Những kết quả chính trong công trình nghiên cứu này của chúng tôi là như sau:
- 11 -
(i) Chúng tôi đề xuất mới một giao thức định tuyến vượt hố dựa trên thông tin địa lý,
khắc phục được những khó khăn gây ra do địa hình xấu gây ra. Đây là giao thức đầu
tiên có thể giải quyết tốt đồng thời 2 vấn đề nghiên cứu chuyên sâu:
− Sự kéo dài đường định tuyến: do các gói tin có xu hướng truyền men theo đường biên hô. Đường đi
của gói tin dài ra mức O(c2), c là độ dài đường đi tối ưu [1].
− Sự mất câng bằng tải của mạng: các nút biên hố và vùng lần cận phải chịu tải cao. Mất cân bằng tải
không những làm nút mạng tại vùng chịu tải cao hết băng thông dẫn tới tắc nghẽn đường truyền, mà
còn khiến chúng hoạt động liên tục, nhanh chóng cạn kiệt năng lượng và nút không còn khả năng
hoạt động (“nút chết”).
Một trong những ý tưởng cơ bản được đề xuất là sử dụng yếu tốt ngẫu nhiên để tạo ra
cơ chế định tuyến động, từ đó làm tăng tính cân bằng tải cho mạng. Chúng tôi tiến hành
đồng thời cả phân tích lý thuyết và thực nghiệm để đánh giá hiệu năng của giải thuật được
đề xuất. Qua phân tích lý thuyết, chúng tôi chứng mình được rằng hệ số kéo dài đường định
tuyến không vượt quá hằng số , có nghĩ rằng, độ dài đường định tuyến tìm được khi áp dụng
giải thuật mới của chúng tôi khi so với đường định tuyến tối ưu không vượt quá lần. Đây đã
là một kết quả hết sức tốt so với các nghiên cứu trước đây. Các kết quả thực nghiệm còn cho
thấy hiệu năng tốt hơn các giải thuật khác dựa trên nhiều tiêu chí: hệ số kéo dài đường đi, sự
tiết kiệm năng lượng và cân bằng tải.
Với những kết quả thu được bước đầu (chúng tôi vẫn tiếp tục triển khai nghiên cứu trên
định hướng này), chúng tôi đã có công bố khoa học trên bình diện quốc tê và được đánh giá
cao. Bài báo với tiêu đề sau đây đã được trao giải thưởng Bài báo nghiên cứu xuất sắc nhất
tại hội nghị (Best Paper Award): “Load Balanced Routing with Constant Stretch for
Wireless Sensor Network with Holes”, trình bày tại hội nghị IEEE International Conference
on Intelligent Sensors, Sensor Networks and Information, tổ chức lần thứ 9, diễn ra tại
Singapore vào tháng 4/2014.
(ii) Chúng tôi đề xuất một hệ phần mềm đặc hiệu, chuyên dùng để mô phỏng định
tuyến địa lý trên mạng cảm biến không dây với địa hình xấu (có hố mạng lớn)
Do điều kiện thực tế, các hoạt động nghiên cứu trên đối tượng mạng cảm biến không
dây còn gặp rất nhiều khó khăn. Một trong những khó khăn lớn nhất là thực nghiệm và áp
dụng thử các giải thuật mới. Khó khăn này xuất phát từ việc mạng cảm biến không dây
thường có số nút mạng lớn và triển khai trên địa bàn rộng và phức tạp. Từ đó dẫn tới khó
theo dõi hoạt động của toàn mạng khi thử nghiệm thực tế, việc thu thập số liệu của từng nút
mạng tại mỗi thời điểm bất kỳ là không thể thực hiện được. Ngoài ra, thực nghiệm với mạng
cảm biến không dây cũng đòi hỏi chi phí lớn cho thiết bị cảm biến, địa hình thực nghiệm
phải đủ rộng lớn, nhân lực cho việc triển khai… Đây là khó khăn chung mà các nhà khoa
học trên thế giới cũng phải đối mặt.
Một trong những giải pháp hiệu quả cho vấn đề thực nghiệm với mạng cảm biến không
dây là sử dụng các hệ thống mô phỏng. Các hệ thống mô phỏng cho phép các nhà nghiên
cứu thử nghiệm, theo dõi và đánh giá hoạt động của mạng khi áp dụng các giải thuật mới
theo cách đơn giản và tiết kiệm hơn, trong khi vẫn phản ánh tương đồng tốt với quá trình
- 12 -
thực tế Một phần mềm mô phỏng mạng được sử dụng phổ biến trên toàn thế giới là NS2 [2].
NS2 là một phần mềm mã nguồn mở, phần lõi được viết bằng ngôn ngữ C++ kết hợp với
ngôn ngữ kịch bản Tcl. NS2 giao tiếp với người sử dụng thông qua giao diện dòng lệnh và
file. Đầu vào của NS2 là kịch bản mô phỏng dưới dạng dòng lệnh hoặc file chứa dòng lệnh
Tcl. Đầu ra của NS2 là file kết quả – trace file – dưới dạng văn bản có cấu trúc. Mặc dù
được đánh giá cao về tính chính xác và khả năng tùy biến, NS2 lại không dễ dàng sử dụng.
Các công đoạn viết kịch bản và xử lý kết quả mô phỏng không được hỗ trợ nhiều, người sử
dụng phải tự viết mã kịch bản, khá dài và phức tạp, bằng tay hoặc thông qua các chương
trình cung cấp bởi bên thứ ba. Vì vậy việc mô phỏng các hoạt động của một mạng lớn đến
hàng nghìn nút là gần như bất khả thi.
Để phục vụ việc thực nghiêm trong công trình này, cũng như đóng góp chung cho cộng
đồng nghiên cứu quốc tế về định tuyến cho mạng cảm biến không dây, chúng tôi đã xây
dựng bộ công cụ mô phỏng, phát triển trên nền tảng NS2, hướng tới bài toán chuyên biệt:
mô phỏng và phân tích hoạt động của mạng cảm biến không dây. Trong đó tập trung cho
việc phục vụ phân tích và đánh giá các giải thuật định tuyến khi áp dụng thực tế. Hệ mô
phỏng của chúng tôi cung cấp các công cụ tạo kịch bản trực quan, giúp cho ngay cả những
người mới làm quen với mô phỏng mạng (và NS2) cũng có thể tạo được kịch bản mô phỏng
trong một thời gian ngắn (có thể rút gọn từ nhiều tuần xuống còn một vài ngày). Kích thước
mạng mô phỏng có thể lên tới hàng nghìn nút. Đồng thời cũng cung cấp các công cụ phân
tích kết quả, hướng tới các phân tích chuyên biệt, đánh giá các yếu tố thường được quan tâm
trong các nghiên cứu về định tuyến trong mạng cảm biến không dây.
Ngoài hai kết quả chính nói trên, chúng tôi cũng xin giới thiệu ngắn gọn về những công
việc đang thực hiện và kết quả dự kiến sẽ thu được, dựa trên việc phát triển những kết quả
đã thu được trên. Trong giai đoạn triển khai mới này, chúng tôi tập trung cho việc nâng cao
hiệu quả sử dụng của mạng cảm biến không dây khi áp dụng cho những bài toán thực tế khá
đặc biệt. Dựa trên phương pháp nghiên cứu riêng, các thuật toán định tuyến mới của chúng
tôi có sự phù hợp rất cao, thích ứng rất hiệu quả với các mạng cảm biến được triển khai trên
địa hình phức tạp, có nhiều vật cản như sông hồ, miệng nút lửa, nhà cao tầng,… Vì vậy, ý
tưởng chủ đạo tiếp theo trong giai đoạn nghiên cứu mới của chúng tôi là tìm cách mở rộng
các thuật toán này để có thể đáp ứng mô hình mạng có tính động cao, khi các nút có thể chết
hàng loạt, và các hố mạng có thể sinh mới và lan ra liên tục. Đây là một vấn đề mới, hoàn
toàn còn chưa có nghiên cứu đi trước, vì có độ khó cao. Nếu giải quyết được bài toán
nghiên cứu mới này, một triển vọng ứng dụng thực tiễn mới sẽ mở ra: phương pháp định
tuyến và các phần mềm công cụ của chúng tôi có thể được đưa vào để ứng dụng hỗ trợ
theo dõi và khảo sát vùng, miền bị thiên tai vừa xảy ra, đang phát triển và lan rộng . Giải
quyết bài toán định tuyến trong mạng cảm biến động chính là chìa khóa của bài toán thực
tiễn thách thức này.
1.4 BỐ CỤC CÁC NỘI DỤNG TRÌNH BÀY CỦA BÁO CÁO
Trong mục 2, chúng tôi phát biểu bài toán định tuyến vượt hố trong mạng cảm biến
không dây và giới thiệu các vấn đề liên quan. Chúng tôi cũng trình bày ý nghĩa của việc giải
- 13 -
quyết bài toán định tuyến vượt hố. Một số nghiên cứu với những kết quả khả quan hiện có
được chúng tôi giới thiệu tại mục 3 của báo cáo.
Hai mục 4 và 5 trình bày giải thuật được chúng tôi đề xuất, cùng với những phân tích
chi tiết cho thấy hiệu quả khi áp dụng giải thuật này trong thực tế.
Tại mục 6 và mục 7, chúng tôi giới thiệu bộ công cụ mô phỏng mạng đã được chúng tôi
phát triển và kết quả thực nghiệm có được khi áp dụng giải thuật đã đề xuất, cùng với sự so
sánh với các giải thuật định tuyến vượt hố khác trong cùng một điều kiện.
Toàn bộ mục 8 được dành để nói về một hướng phát triển rất tiền năng: hố mạng động
và ứng dụng khảo sát vùng thiên tai. Đây là hướng nghiên cứu mới với tiền năng ứng dụng
mạnh mẽ trong việc phát hiện, cảnh báo và theo dõi thiên tai.
- 14 -
2
BÀI TOÁN ĐỊNH TUYẾN CHO MẠNG CẢM BIẾN KHÔNG DÂY
Cùng với việc có nhiều ứng dụng mạnh mẽ trong thực tiễn, mạng cảm biến không dây
cũng là một lĩnh vực thu hút nhiều sự quan tâm của các nhà khoa học. Một trong các chủ đề
nghiên cứu chính là các giao thức định tuyến. Mạng cảm biến không dây có các đặc thù rất
riêng biệt như: nút mạng có khả năng tính toán hạn chế (bộ vi xử lý < 20 MHz), bộ nhớ nhỏ
(< 4KB), nguồn năng lượng giới hạn (khoảng 0.3 – 0.5 Ah, 1.2 – 3 V, tùy loại cảm biến),
mạng lại thường có quy mô rất lớn, từ vài trăm đến vài nghìn nút mạng. Vì vậy, việc định
tuyến trong mạng cảm biến không dây không thể áp dụng các giải thuật định tuyến thường
thấy ở các mạng truyền thống như ethernet, Lan hay Internet. Một hướng tiếp cận rất hiệu
quả và thường được sử dụng là định tuyến địa lý. Hướng tiếp này được sử dụng rộng rãi vì
tính đơn giản và hiệu quả của nó.
Định tuyến địa lý là giao thức định tuyến dựa trên thông tin vị trí của các nút mạng.
Trong đó, mỗi nút mạng biết tọa độ của mình, tọa độ của các nút mạng lân cận trong vùng
phủ sóng của nó và tọa độ của nút đích, thông qua các dịch vụ định vị (ví dụ: GPS hay các
dịch vụ khác [3] [4]). Hướng tiếp cận sử dụng thông tin địa lý này hoạt động tốt với mạng
cảm biến không dây được bố trí tương đối dày đặc, khi đó có thể đạt được đường định tuyến
tối ưu và gần tối ưu. Với các địa hình xấu, hướng tiếp cận sử dụng thông tin địa lý phải đối
mặt với bài toán định tuyến vượt hố. Trong đó “hố” được định nghĩa là những vùng không
tồn tại nút mạng cảm biến còn khả năng hoạt động [5] [6]. Tồn tại hố trong mạng cảm biến
không dây có thể do nguyên nhân khách quan như: địa hình xấu, có chướng ngại vật, sông
hồ, miệng núi lửa… Hoặc do nguyên nhân chủ quan như: bố trí nút mạng không tốt để trống
vùng không có nút mạng; Sử dụng thuật toán định tuyến không tốt làm nút mạng ở một số
vùng chịu tải cao, dẫn tới nhanh chóng cạn kiệt năng lượng và không còn khả năng hoạt
động. Sự tồn tại của hố trong mạng cảm biến không dây dẫn đến việc truyền tin theo các
chiến thuật cố điển gặp nhiều vấn đề, trong đó có:
− Sự kéo dài của đường định tuyến: Trong định tuyến vượt hố, khi nút nguồn và nút đích nằm về hai
phía của hố mạng, thì các gói tin được định tuyến men theo các nút trên biên hố. Vì vậy, đường đi của
gói tin sẽ dài hơn rất nhiều so với đường đi tối ưu (Hình 1)
− Mất cân bằng tải quanh biên hố: Do tất cả các gói tin giữa các cặp nguồn-đích nằm trên hai phía của
hố mạng đều đi qua các nút mạng trên biên hố, khiến các nút mạng này phải chịu tải cao hơn so với
các nút khác. Điều này kiến các nút mạng trên biên hố nhanh chóng cạn kiệt năng lượng, không còn
khả năng hoạt động và trở thành các nút chết, dẫn tới hiện tượng hố bị mở rộng dần (Hình 2).
Các giải thuật hiện có giải quyết vấn đề định tuyến vượt hố có tư tưởng chính là sau khi
xác định hố trong mạng, nút mạng sẽ phát tán thông tin này tới các nút khác trong mạng
thông qua một gói tin quảng bá. Các nút mạng nhận được gói tin quảng bá sẽ lưu giữ thông
tin về hố và sử dụng thông tin này để định tuyến.
- 15 -
Đường định tuyến
Đường đi tối ưu
Hình 1: Sự khéo dài đường đi
Hình 2: Mở rộng hố do nút chết
Hố mạng có hình dạng phức tạp, việc gửi tọa độ của toàn bộ các nút mạng tên biên hố
tới các nút trong mạng sẽ đòi hỏi chi phí lớn cho việc quảng bá và lưu giữ thông tin hố.
Không những gói tin quảng bá sẽ có dung lượng lớn mà bộ nhớ tại mỗi nút mạng cần để lưu
trữ thông tin về hố mạng cũng lớn. Vì thế, hố mạng thường được biểu diễn bởi một hình xấp
xỉ nào đó trước khi thông tin về hố được phát tán, nhằm làm giảm chi phí cho việc phát tán
và lưu trữ thông tin về hố.
Một số nghiên cứu sử dụng hình bao lồi để miểu tả hố [7] [8]. Các nghiên cứu này có
thể giải quyết rất tốt vấn đề kéo dài đường định tuyến, đảm bảo hệ số đường đi (tỉ lệ giữa
đường định tuyến thực tế và đường định tuyến tối ưu) không vượt quá hằng số. Tuy nhiên,
- 16 -
vì hình xấp xỉ rất gần với biên hố nên các nút trên biên hố vẫn chịu tải cao hơn các nút
thông thường, nên các đề xuất này chưa giải quyết được vấn đề mất cân bằng tải. Hơn nữa,
hố là một đa giác phức tạp, không thể biết trước số đỉnh của hình bao lồi, vì thế, việc sử
dụng bao lồi để biểu diễn hố dẫn tới việc đòi hỏi chi phí lớn để phát tán và lưu giữ thông tin
về hố tại các nút mạng. Trong trường hợp hố mạng là một đa giác lồi, bao lồi của hố sẽ
chính là đa giác tạo bởi các nút trên biên hố. Khi đó, các giải thuật sử dụng hình bao lồi để
biểu diễn hố sẽ không giảm được dung lượng gói tin quảng bá cũng như dung lượng bộ nhớ
đòi hỏi để lưu trữ thông tin về hố tại mỗi nút.
Một số nghiên cứu khác như [9] [10] [11] đề xuất việc sử dụng một “vùng cấm” là hình
cố định đủ lớn để bao trùm toàn bộ hố trước khi phát tán thông tin. Việc sử dụng “vùng
cấm” là một hình cố định để miêu tả hố cho phép giam chi phí phát tán thông tin và giảm
dung lượng bộ nhớ đòi hỏi ở mỗi nút mạng để lưu trữ thông tin về hố. Tuy nhiên, một số
giải thuật có đường định tuyến bị kéo dài hơn rất nhiều so với đường định tuyến tối ưu
(Hình 3). Hơn nữa, các giải thuật này đó chưa hiệu quả khi xét tới tính cân bằng tải của
mạng. Vì khi sử dụng một hình cố định để làm “vùng cấm” thì hình này chính là một hố ảo
với kích thước lớn hơn. Các nút trên biên của vùng cấm vẫn chịu tải nhiều hơn các nút
thông thường.
Hình 3: Đường định tuyến bị kéo dài trong một số nghiên cứu hiện tại
- 17 -
3
CÁC NGHIÊN CỨU LIÊN QUAN
Định tuyến dựa trên thông tin địa lý [12] [13] rất phổ biến cho mạng không dây nói
chung và mạng cảm biến không dây nói riêng do tính đơn giản và hiệu quả của nó. Trong
[13], các tác giả đã đề xuất thuật toán định tuyến kết hợp giữa định tuyến tham lam và định
tuyến vành đai.
D
x
Hình 4: Tuyền tin theo tư tưởng tham lam
Khi gói tin cần được chuyển tới nút đích nằm ở phía bên kia hố. Các nút mạng chuyển
tiếp gói tin bằng giải thuật tham lam cho tới khi nó đi tới một nút biên hố mà không có bất
kỳ nút mạng lân cận nào ở gần nút đích hơn bản thân nút đó. Nút mạng này sẽ sử dụng quy
tắc “bàn tay phải” để gửi gói tin đi men theo biên của hố cho tới khi tiếp tục đi về phía nút
đích được bằng giải thuật tham lam. Nhược điểm của thuật toán này là gây ra sự mất cân
bằng tải quanh biên hố do tất cả các gói tin giữa các cặp nguồn – đích cắt qua hố sẽ được
định tuyến đi vòng quanh biên hố. Khi gói tin phải đi vòng quanh hố có thể khiến đường đi
của gói tin bị dài ra mức O(c2) với c là độ dài của đường đi tối ưu [1]. Đồng thời, việc này
làm cho mật độ chịu tải trên những nút trên đường biên hố cao hơn so với các nút khác
trong mạng. Việc chịu tải cao dẫn tới việc các nút này thường xuyên hết đường truyền, tràn
bộ nhớ đệm, dẫn đến tắc nghẽn các gói tin truyền qua. Đồng thời, chịu tải cao cũng khiến
các nút trên đường biên hố nhanh chóng cạn kiệt năng lượng. Khi chúng hết hoàn toàn năng
lượng và chết đi, hố sẽ trở nên rộng hơn. Số lượng các gói tin phải vòng tránh hố tăng lên và
trình trạng mất câng bằng càng trở lên trầm trọng. Cuối cùng dẫn đến mất tính liên thông
của mạng.
Trong [7], các tác giả đề xuất một thuật toán định tuyến tránh hố có thể đảm bảo hệ số
đường đi không vượt quá hằng số. Trong nghiên cứu này, nút mạng tìm ra hố sẽ tìm hình
bao lồi nhỏ nhất của hố và phát tán thông tin này ra các nút xung quanh. Khi có được hình
bao lồi của hố, các nút cần gửi gói tin vượt hố sẽ tìm các điểm neo là đỉnh của hình bao lồi
này và gửi gói tin tới một số điểm neo để vượt hố. Bằng cách này, đường định tuyến cho các
gói tin là tối ưu. Tuy nhiên đề xuất này vẫn gặp phải vấn đề mất cân bằng tải khi các nút
trên biên của hình bao lồi chịu tải nhiều hơn. Hơn nữa, việc thể hiện hố bằng bao lồi còn đòi
hỏi phải sử dụng tập hợp các điểm với số lượng lớn và không biết trước, dẫn tới gói tin
- 18 -
quảng bá có dung lượng lớn. Đồng thời, các nút mạng sẽ phải sử dụng bộ nhớ lớn cho việc
lưu trữ thông tin về hố.
Một số đề xuất khác sử dụng các hình cố định để biểu diễn hố như [9] [10] cho phép
đưa lượng thông tin miêu tả hố thành hằng số, đòi hỏi ít bộ nhớ để lưu trữ và cho phép dễ
dàng truyền tải rộng trong mạng. Tuy vậy, việc sử dụng một hình cố định để biểu diễn hố
vẫn không giải quyết triệt để vấn đề mất câng bằng tải. Khi tất cả các nút mạng sử dụng
chung hình xấp xỉ để định tuyến, vô hình chung, hình xấp xỉ này giống như một hố mạng
lớn hơn, các nút mạng trong khu vực biên của hình xấp xỉ phải chịu tải cao hơn so với các
nút thông thường trong mạng.
M. Choi đưa ra một đề xuất sử dụng hình tròn để bao quanh hố [11], thông tin về tọa độ
tâm và bán kính sẽ được gửi tới mỗi nút nguồn. Nút nguồn tìm hình lục giác đều tiếp xúc
ngoài với đường tròn và có một cặp cạnh song song với đường thẳng đi qua nút nguồn và
nút địch. Đề xuất này cho phép mỗi cặp nguồn – đích sử dụng một hình xấp xỉ khác nhau
của hố. Tuy nhiên, vì các hình lục giác cùng nhận một đường tròn cố định duy nhất làm
đường tròn nội tiếp nên đường định tuyến của các gói tin vẫn đi qua khu vực biên đường
tròn này với mật độ lớn hơn so với các khu vực khác.
Trong nghiên cứu này, chúng tôi đề xuất một thuật toán định tuyến vượt hố mới trong
mạng không dây, trong đó sử dụng yếu tố ngẫu nhiên làm tăng tính cấn băng trọng mạng.
Sau khi xác định được hố, nút mạng sẽ xấp xỉ hố thành một đường tròn – gọi là đường tròn
cơ bản và được phát tán thông tin về đường tròn cơ bản, gồm tọa độ tâm và bán kính đường
tròn, tới các nút trong mạng. Tại mỗi nút mạng có thông tin về đường tròn cơ bản, khi gửi
đi 1 gói tin, nút sẽ kiểm tra xem đoạn thẳng nối chính nó với nút đích có cắt với đường tròn
cơ bản không. Nếu có, nút sẽ xấp xỉ hố thành hình lục giác – gọi là hố lục giác – và chọn
một trong hai hướng đi vòng qua hố lục giác bằng cách gửi gói tin tới cá điểm neo là đỉnh
của hố lục giác.
Thay vì tất cả các nút mạng sử dụng chung một hố lục giác tĩnh để miêu tả hố thật, mỗi
nút trong mạng sẽ tính hố lục giác dựa vào thông tin từ đường tròn cơ bản kết hợp với tọa
độ tương đối của nó cùng với tọa độ tương đối của nút đích nó sẽ gửi tin tới so với đường
tròn cơ bản này. Từ đó, mối cặp Nguồn – Đích sẽ sử dụng hố lục giác khác nhau để miêu tả
về hố thật và định tuyến dựa vào thông tin đó.
Nhận xét rằng, mặc dù mỗi cặp Nguồn – Đích đã sử dụng các hố lục giác khác nhau, tuy
nhiên, các gói tin được gửi đi giữa cùng một cặp nút Nguồn – Đích vẫn sử dụng chung một
hố lục giác, chưa giải quyết triệt để vấn đề mất cân bằng tải. Để giải quyết vấn đề này, hố
lục giác được xậy dựng từ đường tròn cơ bản, tọa độ tương đôi của nút Nguồn và nút Đích
so với đường tròn cơ bản cùng với các yếu tố ngấu nhiên. Việc sử dụng các yếu tố ngẫu
nhiên cho phép mỗi gói tin được định tuyến với một hố lục giác khác nhau, giúp phân tán
đều dung lượng truyền tải tại vùng biên và lân cận với hố ban đầu. Hố lục giác vẫn phải
đảm bảo phủ kín được hố thật để đảm bảo có thể định tuyến vượt hố.
- 19 -
4
ĐỊNH TUYẾN TRÁNH HỐ SỬ DỤNG VÙNG CẤM ĐỘNG
Cũng như tất cả các giao thức định tuyến địa lý khác, trong giao thức định tuyến đề
xuất, chúng tôi giả thiết rằng: mỗi nút mạng có thông tin về vị trí của nó trong mạng (tọa độ
địa lý, tọa độ tương đối…), có thông tin về vị trí của các nút mạng lân cân mà nó có thể gửi
trực tiếp gói tin tới (Sử dụng GPS hay các dịch vụ định vị khác [3] [4]), và mỗi nút mạng
biết tọa độ của nút đích mà nó sẽ gửi gói tin tới.
Giao thức định tuyến của chúng tôi gồm hai pha như sau:
− Pha định biên: Các nút mạng xác định vị trí của các nút trên biên hố và từ đó xác định đường tròn cơ
bản. Thông tin về đường tròn cơ bản gồm tọa độ tâm và bán kính , sẽ được phát tán tới các nút
trong mạng bằng một gói tin quảng bá. Các nút mạng nhận được gói tin quảng bá sẽ lưu giữ thông tin
về đường tròn cơ bản để phục vụ cho quá trình định tuyến, sau đó tiếp tục phát tán gói tin quảng bá
tới các nút hàng xóm. Kết thúc quá trình định biên, toàn bộ các nút trong mạng có được thông tin về
đường tròn cơ bản.
− Pha định tuyến: khi các nút mạng đã có thông tin về đường tròn cơ bản, mỗi khi gửi đi một gói tin,
nút sẽ kiểm tra xem đoạn thẳng nối bản thân nó với nút đích có cắt qua đường tròn cơ bản hay
không. Nếu có, nó sẽ tính hố lục giác và tạo ra bảng định tuyến gồm tọa độ của nút đích và một hoặc
hai điểm neo là đỉnh của lục giác, theo một thứ tự nhất định. Trong trường hợp ngược lại, bảng định
tuyến sẽ chỉ có tọa độ của nút đích. Bảng định tuyến được gắn vào phần header của gói tin, phục vụ
việc chuyển tiếp gói tin tại các nút trong mạng.
Khi gói tin được chuyển tiếp tại mỗi nút, nút đó sẽ kiểm tra trong bảng định tuyến của
gói tín, lấy được tọa độ của điểm neo đang đứng đầu trong bảng định tuyến – có thể là nút
đích của gói tin hoặc đỉnh của hố lục giác. Nút sẽ gửi gói tin về phía điểm neo này bằng giải
thuật tham lam [13]. Trong trường hợp không có bất kỳ hàng xóm nào ở gần điểm neo hơn
chính nút đó, điểm neo sẽ bị loại ra khỏi bảng định tuyến và nút sẽ gửi gói tin tới điểm neo
tiếp theo trong bảng. Quá trình chuyển tiếp gói tin sẽ thực hiện liên tục cho tới khi gói tin
tới được nút đích.
Trong phần sau đây, chúng tôi sẽ trình bày chi tiết giải thuật cho hai pha: Pha định biên
và pha định tuyến.
- 20 -
4.1 PHA ĐỊNH BIÊN
Pha này có thể chia ra làm 3 bước nhỏ như sau:
-
Bước 1: xác định biên hố.
-
Bước 2: tìm đường tròn cơ bản bao quanh biên hố.
-
Bước 3: phát tán thông tin của đường tròn cơ bản cho các nút trong mạng.
Các nút mạng sẽ xác định hố trong mạng bằng cách sử dụng thuật toán BoundHole [6].
Thuật toán BoundHole cho phép xác định được tập hợp các nút nằm trên biền hố, tạo thành
một đa giác. Dựa vào thông tin về tọa độ các nút hàng xóm, mỗi nút sẽ kiểm tra xem nó có
phải là nút trên biên của hố hay không. Khi một nút xác định được nó là nút trên biên hố, nó
sẽ gửi gói tin thăm dò HBD đi vòng quanh biên hố theo quy tắc tay phải [14]. Khi mỗi nút
trên biên hố nhận được gói tin HBD, nó sẽ ghi lại tọa độ của mình vào phần dữ liệu của gói
tin này. Sau đó áp dụng quy tắc tay phải để tìm nút tiếp theo trên biên hố và chuyển tiếp cho
nút đó. Gói tin được chuyển tiếp cho tới khi nó trở về với nút xuất phát.
Sau khi gói tin thăm dò đi hết một vòng quan hố, nút gửi gói tin này sẽ xác định được
tập các nút nằm trên biên hố, từ đó nút này sẽ tính đường tròn cơ bản thông qua Giải thuật
1. Tập hợp các nút trên biên hố tạo thành một đa giác với các đỉnh là các nút trong tập. Từ
đa giác này, bốn điểm lần lượt có: Hoành độ nhỏ nhất; Hoành độ lớn nhất; Tung độ nhỏ
nhất; Tung độ lớn nhất được tìm ra. Bốn đường thẳng đi qua bốn điểm này và tương ứng
song song với trục tung và trục hoành tạo thanh một hình chữ nhật. Tâm của hình chữ nhật
này được chọn làm tâm . Bán kính chính bằng khoảng cách lớn nhất từ một điểm trên đa
giác tới tâm C. Giải thuật này cũng được trình bày tương tự tại [11] [15].
Hình 5: Xác định đường tròn cơ bản
Thông tin về hố sẽ thu gọn lại chỉ còn tâm , và bán kính của đường tròn cơ bản ( Hình
5). Ta cũng ký hiệu cho đường tròn cơ bản. Sau khi tìm được nút sẽ phát tán gói tin quảng
bá BCH chưa tới các nút lân cận. Mỗi nút mạng nhận được gói tin BCH sẽ lưu lại tọa độ
- 21 -
tâm và bán kính này phục vụ cho quá trình định tuyến, đồng thời quảng bá gói tin này tới
các nút hàng xóm của nó.
Giải thuật 1: xác định đường tròn cơ bản (C, rC)
Input: là nút nằm trên biên hố, n là tổng số nút trên biên.
Output:
Begin
1.
2.
3.
4.
5.
6.
7.
8.
End
Return (
- 22 -
4.2 PHA ĐỊNH TUYẾN
Tại pha này, nút mạng cần gửi gói tin đi sẽ kiểm tra xem gói tin có cần được định tuyến
vượt hố hay không. Nếu có, nút mạng sẽ tính đường định tuyến cho gói tin từ các thông tin
đã có về hố mạng.
Khi một nút nguồn – gọi là nút S, toạ độ – muốn gửi gói tin đi, trước hết, nút S kiểm tra
xem đoạn thẳng nối nút đó và nút đích – gọi là nút D, tọa độ – có cắt qua đường tròn cơ bản
không. Trong trường hợp SD không cắt đường tròn cơ bản, gói tin được gửi tới nút đích
bằng giải thuật Tham lam. Trong trường hợp ngược lại, nút S sẽ tính hố lục giác và định
tuyến dựa trên hố lục giác.
Hố lục giác là một hình lục giác đều, tạo thành từ tập sáu điểm , có tọa độ lần lượt là ,.
Hố lục giác có hai cạnh và song song với SD. Hố lục giác có đường tròn nội tiếp là .
Hình 6: Xác định đường tròn mở rộng
Trong trường hợp nút nguồn hoặc nút đích nằm trong hoặc nằm trên đường tròn cơ bản,
hố lục giác sẽ nhận đường tròn cơ bản làm đường tròn nội tiếp, . Trong trường hợp ngược
lại, nút S sẽ xác định một đường tròn mở rộng từ đường tròn cơ bản , tọa độ tương đối của
chính nó với đường tròn cơ bản, tọa độ tương đối của nút đích D với đường tròn cơ bản,
cùng với một số yếu tố ngẫu nhiên. Sau đó, xác định hố lục giác với là đường tròn nội tiếp.
(Hình 6).
Nút S xây dựng đường tròn mở rộng bằng cách chọn tâm , tọa độ , và bán kính ngẫu
nhiên thỏa mãn thỏa mãn:
Từ (1) ta có hai nhất xét:
− Đường tròn cơ bản luôn nằm trong hoặc tiếp xúc trong với đường tròn mở rộng.
− S, D luôn nằm ngoài hoặc nằm trên đường tròn mở rộng.
- 23 -
Việc sử dụng đường tròn mở rộng cho phép đưa yếu tố ngẫu nhiên vào quá trình định
tuyến, từ đó tạo ra cơ chế sinh đường định tuyến động, gói tin trao đổi giữa các cặp S-D cố
định không đi trên cùng một đường, giúp phân tán tốt việc chịu tải cho vùng lân cận với hố.
Hình 7: Định tuyên vượt hố lục giác
Sau khi xác định được đường tròn nội tiếp , việc xác định hố lục giác trở thành bài toán
nhỏ: Xác định hình lục giác đều biết tâm và bán kính đường tròn nội tiếp của lục giác đó và
biết rằng hình lục giác cần tìm có một cặp cạnh song song với một đường thẳng cho trước.
Đây là bài toán hình học đơn thuần. Giải thuật 2 trình bày một phương pháp xác định hình
lục giác này dựa trên phép xoay trục tọa độ.
Nhận xét rằng: có hai đường định tuyến vượt qua hố lục giác, đường thứ nhất đi qua
cạnh V1V2 tạo thành đường SV1V2D. Đường thứ hai đi qua cạnh V 4V5 tạo thành đường
SV5V4D. Như vậy, để chọn được đường định tuyến, chỉ cần xác định tọa độ của bốn đỉnh
(Hình 7). Giải thuật 2 không tìm sáu đỉnh của lục giác mà chỉ tìm lần lượt là toạ độ các đỉnh
.
Sau khi có được tọa độ bốn đỉnh , nút S sẽ chọn một trong hai đường SV 1V2D và
SV5V4D để tạo thành đường định tuyến cho gói tin. Việc lựa chọn dựa trên tiêu chí khoảng
cách, S sẽ lựa chọn đường đi có độ dài Euclid nhỏ hơn bằng cách so sánh:
Nếu , bảng định tuyến của gói tin sẽ gồm:
Ngược lại, nếu , bảng định tuyến sẽ gồm:
Khi gói tin được chuyển tiếp đi qua các nút, mỗi nút sẽ sử dụng giải thuật tham lam –
Greedy [13] để gửi gói tin tới hàng xóm gần với điểm neo nhất. Trong trường hợp không có
- 24 -
hàng xóm nào gần hơn chính nó, nút sẽ loại bỏ một điểm neo đó khỏi bảng định tuyến của
gói tin và lặp lại với điểm neo tiếp theo (Hình 7).
Giải thuật 2: Xác định hố lục giác
Input: , ,
Output:
Begin
1
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Return
End
- 25 -
5
ĐÁNH GIÁ HIỆU NĂNG
Thuật toán được đề xuất được đánh giá bằng cả lý thuyết và thực nghiệm. Bằng lý
thuyết, thuật toán được chứng mình là có đường định tuyến không dài quá một hằng số lần
so với đường định tuyến tốt nhất có thể tìm được. Bằng thực nghiệm, thuật toán được đề
xuất cho thấy hiệu quả rõ rệt về tinh cân bằng tai của mạng. Kết quả được so sánh với các
thuật toán đã biết cho thấy chên lệch rõ rệt.
Độ dài đường đi của gói tin được đánh giá qua chỉ số Stretch – chỉ số cho biết tỷ lệ giữa
độ dài đường đi thực tế khi áp dụng giải thuật định tuyến, so với độ dài đường đi ngắn nhất
có thể tìm được:
Trong đó:
−
−
: độ dài đường đi thực tế của gói tin khi áp dụng thuật toán định tuyến.
: độ dài đường đi ngắn nhất có thể tìm được.
Chỉ số Stretch phản ánh việc áp dụng một thuật toán định tuyến nào đó sẽ khiên cho
đường đi của gói tin bị kéo dài ra bao nhiều lần so với đường đi ngắn nhất có thể tìm được.
Tuy nhiên, Stretch chỉ có thể tính thông qua khảo sát quá trình truyền tin thực tế của cá
gói tin (hoặc mô phỏng truyền tin thực tế). Để dễ dàng hơn trong việc đánh giá mức tăng độ
dài dường đi của gói tin bằng lý thuyết, người ta còn sử dụng một chỉ số khác là E_Stretch.
E_Stretch đánh giá mức tăng của độ dài đường định tuyến của gói tin tìm được khi áp dụng
thuật toán định tuyến đang khảo sát, so với đường định tuyến ngắn nhất có thể tìm được
giữa nút nguồn và nút đích. Đường định tuyến ngắn nhất là đường tìm được khi áp dụng
thuật toán GOAL [7]. Công thức của E_Stretch:
Trong đó:
−
: độ dài đường định tuyến thực tế khi áp dụng giải thuật định tuyến.
−
: độ dài đường định tuyến ngắn nhất có thể tìm được.
Bài báo này sẽ đưa ra đánh giá cho cả Stretch và E_Stretch. Đánh giá Stretch sẽ được
tính trên số bước gói tin đi qua, dựa vào kết quả khảo sát quá trình mô phỏng truyền tin
trong thức tế, chi tiết được giới thiệu trong các phần sau. Dưới đây, E_Stretch sẽ được
chứng mình là luôn giới hạn bởi hằng số trong mọi trường hợp.
5.1 ĐÁNH GIÁ CẬN DƯỚI CỦA E_STRETCH
Hiển nhiên rằng: