5 Kết luận
2.19 Tổng dung lượng của các gói tin sử dụng trong quá trình xấp xỉ
nhở hơn1.3. Điều này chứng tỏ rằng, thuật toán xấp xỉ hố bằng bao lồi có lợi thế hơn so với thuật toán xấp xỉ hố bằng lưới ô vuông, tuy nhiên sự khác biệt này là không quá lớn.
Ngoài ra, chúng ta có thể thấy rằng hệ số đường đi của thuật toán G-offline luôn nhỏ hơn hệ số đường đi của thuật toán G-online. Nguyên nhân là do sai số diện tích của đa giác xấp xỉ trong trường hợp G-offline nhỏ hơn trong trường hợp G-online. Tuy nhiên, sự khác nhau về stretch của hai thuật toán này giảm dần khi khoảng cách giữa nút nguồn và nút đích tăng lên và khi khoảng cách này lớn hơn500m, thì hệ số đường đi của hai thuật toán này gần như bằng nhau.
Tổng dung lượng của các gói tin sử dụng trong quá trình xấp xỉ
Hình 2.19 cho thấy tổng dung lượng của tất cả các gói tin mà các nút trên biên hố đã trao đổi trong quá trình thực hiện thuật toán xấp xỉ. Có thể thấy rõ ràng rằng, tổng dung lượng gói tin của thuật toán G-offline là rất nhỏ so với hai thuật toán còn lại. Trong trường hợp
tốt nhất, thuật toán G-offline có thể tiết kiệm tới60%tổng dung lượng gói tin và thậm chí trong trường hợp tồi nhất thì nó cũng có thể tiết kiệm tới40%. Hơn thế nữa, ta có thể tháy rằng tổng dung lượng các gói tin của thuật toán G-offline hoàn toàn không phụ thuộc vào số đỉnh của đa giác xấp xỉ trong khi tổng dung lượng gói tin của hai thuật toán còn lại thì tăng rất nhanh khi số đỉnh của đa giác xấp xỉ tăng.
2.3 Thuật toán xấp xỉ hố bằng đa giác lồi động
2.3.1 Giới thiệu
Trong chương trước chúng tôi đã trình bày các thuật toán xấp xỉ hố dựa trên lưới ô vuông. Thuật toán xấp xỉ hố dựa trên lưới ô vuông có ưu điểm là đa giác xấp xỉ có thể diễn tả được cả vùng lồi cũng như vùng lõm của hố và ta có thể giảm sai số giữa đa giác xấp xỉ và hố nhỏ đến tùy ý bằng các tăng độ mịn của lưới ô vuông (tức là giảm độ dài cạnh đơn vị của đa giác xấp xỉ) và vì thế nó có thể được ứng dụng rộng rãi không chỉ cho các thuật toán định tuyến mà còn cả đối với các ứng dụng theo dõi và quan sát môi trường. Tuy nhiên, thuật toán xấp xỉ này có nhược điểm là đường định tuyến (khi sử dụng hình xấp xỉ trong định tuyến tránh hố) có thể bị kéo dài nếu ra lưới ô vuông được chọn quá thô hoặc ngược lại hình xấp xỉ có thể sẽ có quá nhiều đỉnh nếu lưới ô vuông được chọn quá mịn. Tức là, tồn tại một tradeoff giữa độ phức tạp của hình xấp xỉ và độ dài đường định tuyến. Hình xấp xỉ càng bao sát hố (đồng nghĩa với việc càng phức tạp và chi tiết) thì đường định tuyến càng có xu hướng ngắn lại. Đổi lại, thông tin cần đề biểu diễn hình xấp xỉ lại tăng lên. Ngược lại, hình xấp xỉ càng cách xa hố (đồng nghĩa với việc càng đơn giản và thô) thì đường định tuyến càng có xu hướng bị kéo dài, tuy nhiên thông tin cần đề biểu diễn hình xấp xỉ lại giảm đi. Một câu hỏi đặt ra là độ chi tiết, bao sát hố của hình xấp xỉ bao nhiêu là vừa đủ.
Trong chương này, chúng tôi sẽ nghiên cứu tradeoff giữa kích thước của đa giác xấp xỉ và hệ số đường định tuyến và đề xuất một thuật toán xấp xỉ hố bằng một hình động, theo nghĩa hình xấp xỉ sẽ thay đổi tùy theo vị trí tương đối của nút mạng so với hố. Thuật toán này của chúng tôi được xây dựng dựa trên quan sát rằng, đối với một nút mạng ở rất xa hố thì những chi tiết nhỏ nhặt của biên hố không còn ý nghĩa với nó nữa, ngược lại đối với những nút mạng ở rất gần hố thì kể cả những chi tiết rất nhỏ cũng có ý nghĩa rất lớn với nó. Giống như khi ta đứng gần một một con sông thì ta có thể nhìn thấy rõ vết uốn lượn trên bờ sông, còn khi ta ở rất xa thì chỉ có thể nhìn được bao quát toàn bộ con sông là hình tròn, hay hình ellipse, ... Vì thế, hình xấp xỉ không nhất thiết phải giống nhau cho tất cả các nút mạng. Ngược lại, tùy vào khoảng cách từ nút mạng đến hố, hình xấp xỉ nên có độ tinh/thô khác nhau.
Một vấn đề đặt ra ở đây là chọn hình xấp xỉ là hình có hình dáng như thế nào. Thực tế là có rất nhiều nghiên cứu đã chọn những hình có hình dáng cố định như: hình tròn, ellipse, lục giác, ... để làm hình xấp xỉ. Tuy nhiên, cách làm này có nhược điểm đó là các hình đạng cố định này không thể phù hợp với tất cả mọi loại hố, do đó với những hố có hình dạng quá khác biệt hình dạng của hình xấp xỉ, sai số giữa hố và hình xấp xỉ sẽ rất lớn như chúng tôi đã chỉ ra trong chương 2.1.
Trong thuật toán này của chúng tôi, đa giác lồi được chọn làm hình xấp xỉ vì chúng tôi cho rằng nó có thể biểu diễn được mọi loại hình dạng của biên hố. Thuật toán của chúng tôi đảm bảo rằng, với một hằng sốα > 1cho trước, các thông số trong thuật toán có thể được cài đặt sao cho hệ số đường đi Ơclit của tất cả các gói tin giữa các nút trong mạng không vượt quáα.
Phần còn lại của chương này sẽ được trình bày như sau: Chương 2.3.2 sẽ trình bày mô hình hình học của lược đồ cơ bản của thuật toán chúng tôi đề xuất. Phân tích lý thuyết của lược đồ đề xuất được trình bày trong chương 2.3.3. Chương 2.3.4 mô tả thuật toán chi tiết cũng như đánh giá hiệu năng của thuật toán chi tiết bằng mô phỏng.
2.3.2 Mô hình lý thuyết và lược đồ cơ bản
2.3.2.1 Mô hình lý thuyết
Cũng giống như trong các chương trước, trong phần này chúng tôi sẽ đưa bài toán cần giải quyết về mô hình hình học Ơclit. Chúng tôi giả sử rằng, mạng đang xét có mật độ nút tương đối dày đặc (ngoại trừ vùng có hố), và với giả thiết này chúng tôi có thể mô hình hóa đường đi ngắn nhất từSđếnDtrong trường hợpS,Dnằm về hai phía của hốHbằngđường gấp
khúc nốiS,Dvà các nút trên biên hố(hình 2.13). HốH được biểu diễn bằng một đa giác
với các đỉnh là các nút mạng trên biên hố. Để ý rằng số đỉnh của hốH có thể rất lớn và vì vậy, mục đich của chúng tôi là tìm ra một giải pháp để xấp xỉ hốHbởi một đa giácP đơn giản hơn (có ít đỉnh hơn) sao cho hệ số đường đi Ơclit (xem định nghĩa 2.4.1) củaP đối với
H đủ nhỏ, trong khi vẫn đảm bảo chi phí cho việc quảng bá và lưu trữ thông tin của hố là không quá lớn.
Trước khi đi vào mô hình lý thuyết, chúng tôi thấy có một số điểm lưu ý như sau. Trước hết, nếu lấy tiêu chí đảm bảo đường đi ngắn nhất qua 1 hốH, chúng ta chỉ cần xem xét các đa giác xấp xỉ là đa giác lồi. Thứ hai, Ngoài tiêu chí đảm bảo đường đi ngắn đa giác xấp xỉ cũng cần đảm bảo chi phí phát tán và lưu trữ thông tin của nó là nhỏ nhất có thể. Từ hai tiêu chí này, ta thấy rằng số đỉnh của đa giác xấp xỉ đối với các nút nguồn ở gần hố nên lớn và số đỉnh của nút nguồn ở xa hố thì nên nhỏ. Cụ thể hơn, để đảm bảo hệ số đường đi Ơclit không vượt quá một hằng sốα > 1cho trước, nút nguồn gần đích sẽ cần sử dụng một đa
β β β β β β β Hình 2.20:bao phủ-β
giác xấp xỉ chính xác hơn (sai số so với hố nhỏ ) trong khi nút xa đích hơn thì chỉ cần một đa giác xấp xỉ không quá chính xác (sai số so với hố là lớn). Vì vây, khoảng cách từ nút nguồnS đến hố sẽ là yếu tố chính để quyết định mức độ chính xác của thông tin về hố mà
Scần biết để đảm bảo rằng hệ số đường đi của đường định tuyến vượt hố không vượt quá hằng sốα.
Một câu hỏi tự nhiên là, đối với hốH được biểu diễn như là một đa giác vớinđỉnh thì trong số các đa giác cók đỉnh (k < n) bao ngoài H, đa giác nào sẽ cho hệ số đường đi Ơclit nhỏ nhất (đối với một cặpS-Dcho trước). Mặc dù chúng tôi không tìm được câu trả lời đầy đủ cho câu hỏi này nhưng như sẽ phân tích sau đây, chúng tôi thấy rằng đa giác có chu vi nhỏ hơn sẽ có xu hướng cho hệ số đường đi nhỏ hơn. Trước khi đi vào mô hình lý thuyết chi tiết, chúng tôi đưa ra một số định nghĩa sau: Rõ ràng, đối với một nútN bất kỳ nằm ngoàiP chỉ có đúng hai đỉnh giới hạn từN đối vớiP.
Định nghĩa 2.3.1 (bao phủ-β) Giả sửP là một đa giác vàβlà một số dương. Thế thì, bao
phủ-βcủaP là một đa giác bao phủP và có mỗi một cạnh của nó song song với một cạnh
củaP sao cho khoảng cách giữa các cặp cạnh song song đó đều bằngβ (hình 2.20).
Định nghĩa 2.3.2 (Khoảng cách từ một đỉnh đến đa giác) Giả sử P là một đa giác lồi,
N là một điểm nằm ngoàiP.d >0được định nghĩa là khoảng cách từ N đến P nếu và chỉ
nếu N nằm trên biên của bao phủ-d của P.
Nhắc lại định nghĩa 2.4.1 (Hệ số đường đi Ơclit)Giả sửP, Qlà hai đa giác sao choP
bao phủQ. Thế thì, với một cặp nguồn-đích ngẫu nhiên (S,D) nằm ngoàiP, hệ số đường đi Ơclit ( hay viết tắt là E-stretch ) củaP đối vớiQcho cặp (S,D) là tỉ số củalP(S, D)và
lQ(S, D). Và, E-stretch củaP với Qlà giá trị nhỏ nhất của E-stretch củaP đối vớiQcho tất cả các cặp nguồn-đích (hình 2.13).
Đường gấp khúcP1, P2, ..., Pnđược ký hiệu ngắn gọn bởi P1P2...Pn và độ dài của nó được ký hiệu bởiP1P2...Pn. Giả sửPi vàPj là các đỉnh của đa giácP, thế thì−−−−→
Pi...Pj là ký hiệu của đường gấp khúc nối các đỉnh kề nhau của đa giácP từ Pi đếnPj theo chiều ngược chiều kim đồng hồ; độ dài của đường này được ký hiệu bởi−−−−→
Pi...Pj.
2.3.2.2 Lược đồ xấp xỉ và phát tán cơ bản
Chúng tôi sử dụng các thuật toán [18][57] để xác định biên hố cũng như xác định bao lồi của hố. Giả sử rằng, sau khi sử dụng hai thuật toán trên hố và bao lồi của hố đã được xác định, trong đó bao lồi của hố là đa giác lồiHvới số đỉnh làn. Dựa trên kết quả này chúng tôi sẽ xây dựng một lược đồ xấp xỉ và phát tán biên hố sao cho thông tin về hố mà mỗi nút mạng nhận được làvừa đủđể đảm bảo hệ số đường đi Ơclit không vượt quá hằng sốαđịnh trước. Lược đồ của chúng tôi có thể đảm bảo được hệ số đường đi Ơclit của tất cả các cặp nguồn-đích không vượt quáα.
Ý tưởng của chúng tôi là xây dựng một dãy các đa giác xấp xỉ của H là P(0) =
H, P(1), P(2). . . , P(n−3) có số đỉnh lần lượt là n, n− 1, n −2. . . ,3, đồng thời, tìm ra một dãy khoảng cách Ơclitg1 < g2 < . . . < gn−3 sao cho điều kiện sau thỏa mãn: Đối với một nút bất kỳ ở khoảng cách ít nhất làgi đối vớiP(i), thì E-stretch củaP(i)đối vớiH
không vượt quáα. Nghĩa là, nếu nút có khoảng cách tới hố≥githì sẽ sử dụngP(i)làm đa giác xấp xỉ trong định tuyến, và E-stretch luôn luôn được đảm bảo không vượt quáα. Tất nhiên là, để tiết kiêm tài nguyên mạng thì chúng tối muốngi càng nhỏ càng tốt.
Chúng tôi tin rằng việc tìm ra một dãyP(i)’s vàgi tối ưu là một vấn đề phức tạp và khó giải quyết. Như chúng tôi đã nói ở trên, ( và sẽ chứng minh bằng định lý 2.3.1 ở sau đây), khi cố định số đỉnh, thì đa giác xấp xỉ tối ưu ( cho E-stretch nhỏ nhất) nên là đa giác có chu vi nhỏ nhất. Xác định đa giác có chu vi nhỏ nhất trong số các đa giác bao ngoài một đa giác cho trước lại cũng là một vấn đề rất khó trong hình học tính toán, cho đến nay thì thuật toán tốt nhất cũng có độ tính là ... [40], và không thích hợp với các đặc tính của mạng cảm biến không dây. Tuy không tìm được lời giả tối ưu, nhưng ở đây chúng tôi sẽ đề xuất một giải pháp tương đối tốt, sử dụng kỹ thuật heuristic đơn giản.
Trước hết, chúng tôi xem xét thuật toán để tinh giản đa giác P ( với các đỉnh là
{P1, P2, ..., Pn}) thành một đa giác có số đỉnh ít hơn 1 đỉnh, ta gọi đa giác này là P-tinh giản. Thuật toán này sẽ cố gắng tìm ra một đa giácP-tinh giản có chu vi nhỏ nhất có thể. Dưới đây là định nghĩa của đa giácP-tinh giản.
Thuật toán 2.3.1 (Tinh giản đa giác) Cho trước: đa giác lồiP ={P1, P2, ..., Pn}.
1 − i P i Q i P 2 + i P 1 + i P 1 P 2 P
Hình 2.21:Thuật toán tinh giản biên hố xấp xỉ
1. Tìmisao cho giá trị của PiQi+Pi+1Qi−PiPi+1là nhỏ nhất, trong đóQi là
giao điểm củaPi−1PivàPi+1Pi+2.
2. Đa giác{P1, P2, . . . , Pi−1, Qi, Pi+2, . . . , Pn}là đa giác cần tìm.
Hình 2.21 mô tả thuật toán tinh giản đa giác của chúng tôi. Một cách tự nhiên, sử dụng thuật toán tinh giản này một cách đệ quy chúng ta sẽ nhận được một chuỗi các đa giác xấp xỉP(0) = H, P(1), P(2), . . . , P(n−3), trong đóP(i+1) là đa giác tinh giản củaP(i). Vì vậy, ta chỉ cần tìmgi càng nhỏ càng tốt sao cho E-stretch của P(i) đối vớiH cho một nút bất kỳ có khoảng cách đếnP(i) lớn hơn hoặc bằnggikhông vượt quáα. Giả sử chúng ta đã có cách tínhgithỏa mãn các điều kiện nêu trên, dưới đây chúng tôi sẽ trình bày lược đồ xấp xỉ và phát tán thông tin biên hố mà ở đó tất các các nútSnằm ngoài hốH chỉ nhận thông tin vừa đủ để cho đường định tuyến vượt quaHcó hệ số đường đi Ơclit không vượt quá hằng sốα >1định trước.
Thuật toán 2.3.2 (Lược đồ xấp xỉ và phát tán thông tin biên hố)
1. Các nút trên biên hốHxác định bao lồi của hố dùng thuật toán mô tả trong [57].
2. Các nút trên biên hố tínhg1 và bắt đầu phát tán thông tinP(0) = H, g0 = 0và g1
cho các nút bên ngoài hố.
3. Với i = 0 đến n −4 : Sau khi nhận được (P(i), gi, gi+1), nút ở khoảng cách d ∈
[gi, gi+1) từ hố sẽ lưu thông tin củaP(i) vào bộ nhớ , trong khi nút ở khoảng cách
gi+1 tínhP(i+1) và gi+2, bằng cách sử dụng thuật toán tinh giản đa giác xấp xỉ, và
Quá trình trên đây sẽ kết thúc khi nút ở khoảng cáchgn−3nhận được đa giácP(n−3)(là một đa giác). Kết quả phân tích của chúng tôi trong chương tiếp theo sẽ chỉ ra cách tínhgi. Dựa vào quá trình phát tán thông tin đa giác xấp xỉ trình bày trên đây, thuật toán định tuyến sẽ được tiến hành theo hướng như sau: gói tin xuất phát từ nút nguồn có khoảng cách đến hố nằm trong khoảngd∈[gi, gi+1),i≤n−4, sẽ sử dụng thông tin củaP(i), trong khi các gói tin xuất phát từ khoảng cách lớn hơngn−3 sẽ chỉ đơn giản được truyền đi bằng thuật toán định tuyến tham ăn cho đến khi nó đến được một nút có thông tin củaP(n−3).
2.3.3 Phân tích lý thuyết
Trong chương này chúng tôi sẽ chỉ ra lý do tại sao đa giác xấp xỉ lại nên có chu vi bé nhất có thể (trong trường hợp số đỉnh bị cố định) và phân tích quan hệ giữa thông tin của đa giác xấp xỉ mà nút nguồn nhận được với khoảng cách từ nút nguồn đến hố cũng như E-stretch của các gói tin xuất phát từ nút nguồn đấy.
Nhắc lại bổ đề 2.2.5P là một đa giác, (S,D) là một cặp nguồn-đích nằm ngoài P. (Pl1,Pl2)
và (Pr1,Pr2) là các đỉnh giới hạn của S và D theo thứ tự nằm bên trái và bên phải của tia