Các thuật toán xấp xỉ biên hố

Một phần của tài liệu Thuật toán và phần mềm mô phỏng cho định tuyến không dây trong địa hình phức tạp (Trang 68)

Trước chúng tôi, chưa có một nghiên cứu nào tách bài toán xấp xỉ hố ra thành một vấn đề nghiên cứu độc lập. Tuy nhiên, có rất nhiều nghiên cứu về các thuật toán định tuyến vượt hố đã đề xuất các thuật toán xấp xỉ biên hố như là một phần của thuật toán định tuyến.

Hình 2.31:Thuật toán xấp xỉ hố bằng hình tròn (hình trích dẫn từ [59])

Trong [59, 21], các tác giả đã trình bày thuật toán xấp xỉ hố bằng một đường tròn bao ngoài (hình 2.31). Trong thuật toán này, các nút sẽ sử dụng quy tắc TENT để xác định xem nó có nằm trên biên hố hay không. Nút đầu tiên phát hiện ra biên hố sẽ tạo một gói tin đặc biệt và truyền cho các nút trên biên hố theo thuật toán Boundhole. Gói tin này có nhiệm vụ 4 tọa độxmin, ymin, xmax, ymax lần lượt là tọa độx, y nhỏ nhất, lớn nhất của các nút trên biên hố. Đường tròn xấp xỉ hố là đường tròn có đường kính là đoạn nối hai điểm với tọa độ (xmin, ymin),(xmax, ymax).

Trong [51], tác giả đã trình bày thuật toán xấp xỉ hố bằng một ellipse (hình 2.32). Thuật toán này cũng sử dụng quy tắc TENT và thuật toán Boundhole để xác định biên hố. Nút đầu tiên phát hiện ra biên hố sẽ gửi một gói tin vòng quanh các nút trên biên hố để xác định tọa độ của tất cả các nút trên biên hố. Sau khi thu thập được toàn bộ tọa độ của các nút trên biên hố, nút này sẽ xác định hình chữ nhật ngoại tiếp biên hố, tức là hình chữ nhật bao ngoài hố và có 4 cạnh chứa 4 đỉnh nằm trên biên hố. Giao điểm của các đường phân giác tại các góc của hình chữ nhật này sẽ được chọn làm 2 tiêu cự của hình ellipse xấp xỉ hố như trong hình 2.32.

Trong bài báo [25], các tác giả đã đề xuất giải thuật xấp xỉ hố bằng một hình lục giác đều (hình 2.33). Hình lục giác này là hình lục giác ngoại tiếp hình tròn xấp xỉ hố được nêu trong bài báo [59, 21].

Có thể thấy rằng, cả ba thuật toán đề xuất trên đây đều chọn một hình có hình dạng cố định (hình tròn, hình ellipse, hình lục giác đều) đề xấp xỉ hố. Khác với 3 thuật toán xấp xỉ được đề cập trên đây, nhóm tác giả Myounggyu Won trong bài báo [57] đề xuất xấp xỉ hố bằng bao lồi của hố. Trong đó, bao lồi được định nghĩa là đa giác lồi bao ngoài hố và có các đỉnh là đỉnh của biên hố (xem hình 2.34). Trong thuật toán này, biên hố được xác định bởi thuật toán được nêu trong bài báo [53]. Một nút đươc chọn là nút chủ (initiator) sẽ khởi tạo một gói tin đặc biệt (để cho gắn gọn từ giờ chúng tôi gọi gói tin này làM-message) có nhiệm vụ thu thập thông tin biên hố. Trong gói tin này, có trườngPe là mảng chứa tọa độ của các đỉnh của bao lồi. Gói tin này sẽ được gửi cho các nút trên biên hố theo chiều ngược

Hình 2.32:Thuật toán xấp xỉ hố bằng hình tròn (hình trích dẫn từ [59])

Hình 2.33:Thuật toán xấp xỉ hố bằng hình tròn (hình trích dẫn từ [59])

chiều kim đồng hồ . Khi gói tin này được truyền đến một nútpi trên biên hố, nút này sẽ xác định xem nó có thể là đỉnh của bao lồi hay không, nếu có nó sẽ chèn tọa độ của nó vào mảngPe và chuyển tiếp gói tin cho nút biên hố bên phải; nếu không, nó sẽ chỉ truyền gói tin đi mà không cập nhật mảngPe. (xem hình 2.34(b)). Ý tưởng chính để kiểm tra xem có cập nhật mảngPehay không đó là,pi sẽ kiểm tra xem nó có nằm bên phải củaplepi+1, với một số đỉnhple Pe (0 ≤l ≤ |Pe|, là số phần tử củaPexác định được cho đến thời điểm hiện tại) nào đó không. Nếu tồn tại một số đỉnhpenhư vậy thì chứng tỏpilà đỉnh nhìn thấy xa nhất từpl

e, vàpi sẽ chèn tọa độ của nó vàoPe. Tuy nhiên, sau đó, nếu tìm thấy một nút

pj,j > inào đó mà nó cũng là điểm nhìn thấy từpl

ethìpi sẽ bị xóa đi khỏiPe.

(a) Ví dụ về bao lồi (b) Xác định một đỉnh có thuộc

Pekhông

(c) Tinh giản đỉnh của bao lồi

Hình 2.34:Thuật toán xấp xỉ hố bằng bao lồi (hình trích dẫn từ [57])

tài nguyên của mạng cảm biến không dây, các tác giả trong nghiên cứu này cũng đề xuất thuật toán để rút gọn số phần tử củaPe khi số phần tử của Pe vượt quá một giới hạn cho trước như sau. Khi gói tin M-packet đến nútpi, nút này sẽ kiểm tra xem số phần tử hiện tại củaPe có lớn hơn giá trị giới hạn không, nếu có, với mỗi 4 phần tử liên tiếp của Pe

pei−1, pie, pei+1, pie+2, sẽ xác định giao điểmPicrsi giữa hai đườngpie−1piepie+1pie+2. Sau đó, trong sốPicrsi chọn ra điểm có khoảng cách nhỏ nhất tớipiepie+1và sẽ dùng điểm này để thay thếpi

epi+1

e trongPe. Mỗi lần thay thế như vậy số phần tử củaPe sẽ giảm đi1, do đópi

sẽ lập lại quá trình này cho đến khi nào số phần tử củaPebé hơn hoặc bằng giá trị giới hạn. Hình 2.34(c) minh họa thuật toán này.

2.5.3 Các thuật toán xấp xỉ trong hình học tính toán

Trong hình học tính toán, bài toán tìm mộtk−giác có chu vi hoặc diện tích nhỏ nhất bao ngoài một n−giác cho trước là một bài toán nổi tiếng và được nghiên cứu bởi nhiều nhà khoa học. Tất cả các thuật toán đã được đề xuất từ trước tới giờ đều có độ tính toán phức tạp và ngoại trừ một số thuật toán tìm tam giác ngoại tiếp có chu vi/diện tích nhỏ nhất [11], các thuật toán còn lại đều có thời gian tính toán không phải là tuyến tính. Liên quan đến bài toán tìmk−giác có diện tích nhỏ nhất, trong bài báo [2] các tác giả đã đề xuất một thuật toán với thời gian tính toán làO(n2logklogn). Trong khi bài toán tìmk−giác có diện tích

nhỏ nhất bao ngoàin−giác đã được giải (với thời gian tính toán khá lớn), thì bài toán tìm

k−giác có chu vi nhỏ nhất bao ngoài mộtn-giác vẫn là một bài toán mở, được nghiên cứu bởi nhiều nhà nghiên cứu [3, 11, 13, 41, 40], nhưng hiện vẫn chưa có lời giải. Trong bài báo [41], De Pano đề xuất thuật toán xấp xỉ đa giác lồi cho trước bằng một tam giác có chu vi nhỏ nhất. Thời gian tính toán của thuật toán này làO(n3). Sau đó, nhóm tác giả Chang và Yap đã đề xuất một thuật toán ưu việt hơn, thuật toán này xấp xỉ một bao lồi cho trước bằng một tam giác có chu vi nhỏ nhất với thời gian tính toán làO(n2). Cuối cùng, nhóm nghiên cứu cảu Bhattacharya et [11] đã đề xuất một thuật toán với thời gian tính toán làO(n). Gần đây, Mitchell và các cộng sự đã đề xuất một thuật toán tìmk−giác bao ngoàin−giác với chu vi nhỏ nhất, với thời gian tính toán làO(kn3).

2.6 Tổng kết chương

Bài toán xấp xỉ hố trong mạng cảm biến không dây là bài toán quan trọng, không chỉ được ứng dụng trong các ứng dụng về quan sát môi trường mà còn trong các thuật toán định tuyến vượt hố. Trước chúng tôi, tuy có nhiều thuật toán định tuyến đã sử dụng phương pháp xấp xỉ hố để giải quyết bài toán định tuyến nhưng chưa có một nghiên cứu nào độc lập về các thuật toán xấp xỉ hố. Trong phần này chúng tôi đã đề xuất 3 thuật toán xấp xỉ hố, mỗi thuật toán có một đặc trưng riêng.

Thuật toán xấp xỉ hố dựa trên lưới ô vuông, bao gồm hai thuật toán nhỏ: on-line và offline. Đặc trưng của thuật toán xấp xỉ hố dựa trên lưới ô vuông là hình xấp xỉ có thể miêu tả được cả vùng lồi và vùng lõm của hố. Hơn nữa, ta có thể cho hình xấp xỉ sát với hố tùy ý bằng cách điều chỉnh độ mịn của lưới ô vuông. Vì vậy, thuật toán này rất thích hợp với các ứng dụng về quan sát môi trường Thuật toán này cũng tận dụng được tính đơn giản trong việc lưu trữ các tọa độ của nút lưới ô vuông, nhờ đó việc lưu trữ thông tin của biên hố trở nên dễ dàng, tốn ít bộ nhớ. Phân tích lý thuyết chỉ ra rằng, với cùng số đỉnh, việc lưu trữ thông tin của đa giác xấp xỉ bằng lưới ô vuông chỉ bằng 12 so với đa giác xấp xỉ bằng bao lồi.

Thuật toán xấp xỉ hố dựa dùng đa giác lồi có các góc bằng nhau được thiết kế đặc biệt hướng tới việc sử dụng trong các thuật toán định tuyến. Thuật toán xấp xỉ hố này được đề xuất dựa trên các phân tích về hình xấp xỉ hố có thể đem lại hệ số đường đi tối ưu cho các thuật toán định tuyến tránh hố. Các phân tích lý thuyết chứng minh rằng, hình xấp xỉ hố tạo bởi thuật toán xấp xỉ này đảm bảo hệ số đường định tuyến trong thuật toán định tuyến tránh hố là không vượt quá một hằng số cho trước.

Thuật toán xấp xỉ hố dùng đa giác lồi động đã đề xuất một tư tưởng mới trong việc xấp xỉ hố, đó là đa giác xấp xỉ của hố sẽ thay đổi tùy thuộc vào vị trí của đối tượng cần sử dụng đa giác xấp xỉ. Cụ thể là, khi đối tượng cần sử dụng đa giác xấp xỉ ở xa hố thì hình xấp xỉ hố sẽ thô ráp hơn, ngược lại, khi đối tượng sử dụng đa giác xấp xỉ ở gần hố thì hình xấp xỉ sẽ chi tiết hơn, sát với hố hơn. Phân tích lý thuyết chỉ ra rằng thuật toán này không những có thể đảm bảo các đa giác xấp xỉ sẽ đem lại hệ số đường đi hằng số cho các thuật toán định tuyến mà còn giúp cho việc phát tán, lưu trữ thông tin về hình xấp xỉ được giảm đi đáng kể.

Chương 3 (adsbygoogle = window.adsbygoogle || []).push({});

Các thuật toán định tuyến vượt hố 3.1 Giới thiệu

Định tuyến địa lý [31][30] là giao thức định tuyến dựa trên thông tin về vị trí địa lý của các nút mạng. Định tuyến địa lý được sử dụng rộng rãi trong mạng cảm biến không dây do tính đơn giản và hiệu quả, phù hợp với sự hạn chế về năng lượng và khả năng tính toán của các nút mạng cảm biến. Thông thường, các giao thức định tuyến địa lý hoạt động dựa trên hai điều kiện tiền đề sau: a) mỗi nút mạng biết tọa độ địa lý của nó và của các nút mạng lân cận (tức là nút mạng nằm trong bán kính phủ sóng của nó) và b) nút nguồn của gói tin biết tọa độ của nút đích của gói tin. Các thuật toán định tuyến địa lý thường bắt đầu bằng phương thức định tuyến tham ăn. Tức là mỗi một nút mạng khi nhận được gói tin sẽ truyền gói tin đến nút tiếp theo là nút lân cận gần đích hơn nó và gần đích nhất trong số các nút lân cận của nó. Đối với các mạng có các nút mạng phân bố tương đối dày đặc, không có sự xuất hiện của hố1 thì định tuyến địa lý động rất hiệu quả và đạt được đường đi gần như tối ưu. Tuy nhiên, với những mạng có sự xuất hiện của hố, định tuyến địa lý tham ăn gặp phải một số vấn đề như sau:

Sự mở rộng hố ([51][59]):Các thuật toán định lý cổ điển xử lý vấn đề định tuyến các

gói tin giữa các nút nằm về hai phía của hố bằng cách gửi gói tin men theo biên hố. Phương thức định tuyến này làm cho các nút ở xung quanh biên hố phải chịu tải cao hơn hẳn so với các nút khác, chúng nhanh chóng cạn kiệt năng lượng và trở thành những nút chết. Điều này dẫn tới việc hố ngày càng bị mở rộng ra. Hình 3.1 minh họa vấn đề này.

1Hố có thể xuất hiện do sự có mặt của các vật cản như sông núi, ao hồ; do các phá hủy bên ngoài như động đất, núi lửa, sóng thần hoặc do bản thân các nút mạng cạn kiệt năng lượng và không còn khả năng hoạt động

(a) Các gói tin được truyền men theo biên hố (b) Các nút trên biên hố chịu tải cao dẫn đến cạn kiệt năng lượng và trở thành nút chết

Hình 3.1:Hiện tượng hố mở rộng do các nút trên biên hố chịu tải cao

Sự kéo dài của đường định tuyến:Định tuyến địa lý có thể đạt được đường đi gần như

tối ưu đối với các mạng có mật độ nút tương đối dày đặc, tuy nhiên với các mạng có sự xuất hiện của hố, đường định tuyến có thể kéo dài thànhθ(c2), trong đóclà độ dài đường đi tối ưu [32].

Để giải quyết được vấn đề thứ nhất, thuật toán định tuyến cần phải đảm bảo cân bằng tải của các nút mạng. Thực tế, đã có rất nhiều nghiên cứu tập trung vào vấn đề này như: [51][59][16]. Hướng giải quyết chung của các nghiên cứu này là tạo ra mộtvùng cấmxung quanh hố. Vùng cấm này thực chất là một hình xấp xỉ của hố và bao trọn hố vì vậy từ giờ về sau chúng tôi sẽ sử dụng thuật ngữvùng cấmhình xấp xỉ hốvới cùng một ý nghĩa. Thông tin về vùng cấm này sẽ được truyền đến một số nút ở lân cận hố. Khi một gói tin được truyền đến một nút có thông tin của vùng cấm, nút đấy sẽ sử dụng thông tin của vùng cấm để định tuyến gói tin vòng tránh qua vùng cấm thay vì đi men theo biên hố. Phương pháp này có thể giải quyết được vấn đề tắc nghẽn trên biên hố, tuy nhiên, do vùng cấm là các vùng tĩnh vì vậy, các nút mạng ở xung quanh biên của vùng cấm sẽ có xu hướng chịu tải cao hơn những nút mạng khác và như vậy lại tạo ra một vùng tắc nghẽn quanh biên của vùng cấm. Ngoài ra, phương pháp này cũng không giải quyết được vấn đề thứ hai (đường định tuyến bị kéo dài) bởi vì đối với một số hình dạng của hố, sự khác nhau giữa vùng cấm và hố là rất lớn và điều đó dẫn đến đường định tuyến bị kéo dài ra rất nhiều (hình 3.2).

Để giải quyết vần đề đường định tuyến kéo dài, một số nghiên cứu như [57][56][60] đã được công bố. Trong các nghiên cứu này, các tác giả sử dụng một đa giác lồi bao quanh

Enlarged routing path > > > > > >> > S V D HOLE

(a) Trường hợp xấu nhất khi vùng cấm là một hình tròn ([59]) HOLE ● S U V D > > > > > > > > > > > > Enlarged routing path

(b) Trường hợp xấu nhất khi vùng cấm là một hình el- lipse ([51])

Hình 3.2:Đường định tuyến bị kéo dài khi sử dụng vùng cấm có hình dạng cố định

hố và có các đỉnh nằm trên biên hố để làm vùng cấm. Các phương pháp này có thể đảm bảo được hệ số đường đi là hằng số ([57][56]) (nghĩa là giải quyết được vấn đề đường định tuyến kéo dài) nhưng không giải quyết được vấn đề hố mở rộng do vùng cấm là một đa giác tĩnh.

Trong phần này, chúng tôi đề xuất hai thuật toán định tuyến hướng tới giải quyết cả hai vấn đề nêu trên. Thuật toán thứ nhất là kết quả chúng tôi đã trình bày ở hội nghịSoict 2012

3.2 ELBAR: Giao thức định tuyến đảm bảo cân bằng tảivà tiết kiệm năng lượng dựa trên truyền tin theo xác và tiết kiệm năng lượng dựa trên truyền tin theo xác xuất

Trong chương này chúng tôi sẽ đề xuất một thuật toán định tuyến có thể giải quyết được vấn đề tắc nghẽn trên biên hố và giải quyết được một phần vấn đề đường định tuyến kéo dài. Đề xuất này của chúng tôi được xuất phát từ một số quan sát như sau:

Hầu hết trong các thuật toán định tuyến tránh hố đã được đề xuất, vấn đề đường định tuyến kéo dài thường xảy ra với các nút ở gần vùng cấm. Hay nói cách khác, đối với các nút ở rất gần hố, việc đi vòng tránh qua các vùng cấm sẽ làm kéo dài đường định tuyến. Chúng tôi giải quyết vấn đề này bằng cách chỉ có những gói tin ở các vị trí vừa đủ xa hố thì mới được định tuyến theo phương pháp tránh hố.

Các thuật toán sử dụng vùng cấm đã được đề xuất gặp phải vấn đề là: Tạo ra một

Một phần của tài liệu Thuật toán và phần mềm mô phỏng cho định tuyến không dây trong địa hình phức tạp (Trang 68)