Luận án tập trung nghiên cứu và thiết kế giải thuật phân cụm kết hợp các giải thuật định tuyến đa chặng giữa các cụm nhằm giải quyết các mục tiêu cụ thể như: i Giảm thiểu độ phức tạp tín
TỔNG QUAN
Tổng quan về mạng cảm biến không dây
Sự phát triển nhanh chóng trong công nghệ vi điều khiển và truyền thông không dây trong những năm qua đã cho ra đời những thiết bị cảm biến siêu nhỏ, rẻ, có khả năng truyền thông không dây và tiêu tốn ít năng lƣợng Mỗi thiết bị cảm biến (còn gọi là nút cảm biến) có khả năng cảm biến các thành phần trong môi trường xung quanh, thực hiện một số tính toán đơn giản, và có khả năng truyền thông với các nút cảm biến khác thông qua môi trường vô tuyến [5]
Một mạng cảm biến không dây (WSN) có từ hàng trăm đến hàng ngàn nút cảm biến như thế được liên kết với nhau qua môi trường không dây [6] Việc phát triển một WSN có thể đƣợc thực hiện theo nhiều cách, chẳng hạn nhƣ triển khai một WSN trên một bãi chiến trường bằng cách thả ngẫu nhiên các nút cảm biến từ trên máy bay để thu thập thông tin về kẻ thù, hoặc lắp đặt chúng theo một sơ đồ nào đó trong căn phòng để thực hiện chức năng giám sát… Kiến trúc truyền thông phổ biến của một WSN đƣợc minh họa nhƣ trong hình 2.1
Hình 2.1 Kiến trúc truyền thông của mạng cảm biến không dây Trong mô hình này, các nút cảm biến đƣợc rải khắp nơi trong vùng cần lấy thông tin, và sẽ phối hợp với nhau để cung cấp cho người dùng các thông tin cần thiết về môi trường xung quanh chúng Mỗi nút cảm biến có khả năng tập hợp dữ liệu và chuyển dữ liệu đến trạm gốc (sink hoặc base station) Trạm gốc có khả năng kết nối mạng cảm
Trạm gốc (sink) Vùng giám sát
7 biến không dây này với Internet hoặc với một kiến trúc truyền thông khác với mục đích giúp người dùng có thể truy xuất để lấy thông tin cần thiết từ WSN
2.1.1 Các thành phần của một nút cảm biến
Một nút cảm biến đƣợc tạo thành từ bốn thành phần cơ bản sau:
Bộ cảm biến: đƣợc tạo nên từ hai thành phần là cảm biến và bộ chuyển đổi tương tự - số (ADC) Thành phần cảm biến nhận các tín hiệu tương tự từ môi trường bên ngoài Thông qua ADC, nó chuyển thành tín hiệu số rồi mới đưa vào bộ vi xử lý
Bộ vi xử lý: gồm vi xử lý kết hợp với một đơn vị lưu trữ có dung lượng nhỏ, thực hiện các tính toán đơn giản, đồng thời giúp nút cảm biến cộng tác với những nút cảm biến khác để thực hiện những nhiệm vụ đƣợc chỉ định
Bộ thu phát: kết nối nút cảm biến với mạng qua hoạt động truyền nhận dữ liệu
Bộ nguồn: đây là một trong những thành phần quan trọng nhất của một nút cảm biến Nó đƣợc hỗ trợ bởi bộ phận lọc năng lƣợng, chẳng hạn nhƣ các tế bào năng lƣợng mặt trời
Hình 2.2 Các thành phần của một nút cảm biến, đƣợc vẽ lại từ nghiên cứu [5]
Ngoài ra, một nút cảm biến còn có các thành phần ứng dụng kèm theo, đó là những thành phần phụ thuộc nhƣ: hệ thống định vị, bộ tạo nguồn, và bộ di động
Những thành phần này có hay không là tùy thuộc vào yêu cầu và cấu trúc của từng loại thiết bị cảm biến Các thành phần này đƣợc thể hiện đầy đủ trong hình 2.2
8 Hình 2.3 cho ta một cái nhìn thực tế của một vài loại nút cảm biến đang có mặt trên thị trường hiện nay
Hình 2.3 Một vài loại nút cảm biến phổ biến hiện nay Hình 2.3(a) là nút cảm biến ga, dùng trong các ứng dụng kiểm soát ô nhiểm trong thành phố, phát hiện các khí ga phát ra từ các nông trại, kiểm soát khí hóa học phát ra trong các nhà máy công nghiệp, và trong các ứng dụng cảnh báo cháy rừng Hình 2.3(b) là nút cảm biến nước thông minh dùng trong các ứng dụng giám sát nồng độ các thành phần trong nước, phát hiện các khí hóa học bị rò rỉ trên các dòng sông, quản lý chất lượng nước trong hồ bơi, và trong các ứng dụng kiểm soát mức độ ô nhiểm trong các vùng biển Hình 2.3(c) là nút cảm biến thành phố thông minh, dùng trong các ứng dụng giám sát thời gian thực các mức độ âm thanh trên các tuyến đường trong thành phố, phát hiện mức độ khí thải và các hạt phóng xạ trong không khí, và quản lý việc thu gôm rác thải trong các thành phố Hình 2.3(d) là nút cảm biến nông nghiệp, dùng
9 trong các ứng dụng nông nghiệp chính xác, hệ thống tưới tiêu thông minh, ứng dụng nông nghiệp nhà kính, và các ứng dụng trạm thông tin thời tiết
2.1.2 Chồng giao thức trong mạng cảm biến không dây
Chồng giao thức đƣợc dùng bởi trạm gốc (sink) và các nút cảm biến đƣợc tổ chức theo kiến trúc phân lớp nhƣ hình 2.4
Hình 2.4 Chồng giao thức trong mạng cảm biến không dây Mô hình chồng giao thức trên kết hợp hai vấn đề năng lƣợng và định tuyến, hợp nhất dữ liệu với các giao thức lớp mạng, truyền thông với việc tối ƣu hóa nguồn năng lượng trong môi trường không dây và tăng cường sự cộng tác giữa các nút cảm biến
Cụ thể, kiến trúc này bao gồm năm lớp thuộc vào cả ba mặt phẳng nhƣ sau:
Lớp vật lý: hỗ trợ việc truyền, nhận cũng nhƣ các kỹ thuật điều chế đơn giản
Lớp này chịu trách nhiệm chọn và tạo tần số sóng mang, phát hiện tín hiệu, điều chế và mã hóa dữ liệu Dãy tần 915 MHz và 2.4 GHz hiện đang đƣợc sử dụng rộng rãi trong các mạng cảm biến không dây WSN
Lớp truy cập môi trường: chịu trách nhiệm liên kết các luồng dữ liệu, cung cấp cơ chế truy cập đường truyền và điều khiển lỗi Nút cảm biến cần phải di
Lớp truy cập môi trường Lớp vật lý Lớp ứng dụng Mặt phẳng quản lý năng lƣợng Mặt phẳng quản lý di động Mặt phẳng quản lý tác vụ
10 chuyển được khi môi trường có nhiễu, do đó giao thức lớp liên kết dữ liệu phải quan tâm đến vấn đề năng lƣợng và giảm thiểu sự đụng độ
Lớp mạng: quan tâm đến vấn đề định tuyến dữ liệu đƣợc hỗ trợ từ lớp giao vận
Lớp giao vận: giúp duy trì luồng dữ liệu nếu ứng dụng của mạng cảm biến yêu cầu
Lớp ứng dụng: tùy thuộc vào từng loại tác vụ cảm biến mà các phần mềm ứng dụng khác nhau sẽ đƣợc xây dựng và sử dụng ở lớp này
Các mặt phẳng quản lý giúp theo dõi nguồn năng lƣợng, việc di chuyển và phân phối công việc giữa các nút cảm biến Các mặt phẳng này giúp nút cảm biến kết hợp giữa việc thực thi nhiệm vụ với việc giảm tiêu thụ năng lƣợng cho toàn bộ quá trình truyền nhận dữ liệu
Tổng quan về tình hình nghiên cứu
2.2.1 Các nghiên cứu nhằm cân bằng giữa độ trễ và năng lượng tiêu thụ ở lớp truy cập môi trường truyền
Truyền thông trong mạng cảm biến không dây đƣợc chia thành nhiều lớp Giao thức lớp truy cập môi trường truyền (Media Access Control – MAC) cố gắng tránh xung đột bằng cách không cho phép hai nút bị nhiễu lần nhau cùng truyền một lúc Điều này sẽ cho phép các hoạt động của mạng đƣợc thực hiện thành công Mục tiêu chính của các giao thức lớp MAC truyền thống là cung cấp thông lƣợng cao và đảm bảo chất lƣợng dịch vụ QoS Trong khi đó, các giao thức lớp MAC của mạng cảm biến không dây đƣợc ƣu tiên trong việc tiết kiệm năng lƣợng hơn là các yêu cầu về chất lượng dịch vụ QoS Tại lớp MAC, có nhiều yếu tố ảnh hưởng đến cả năng lượng và độ trễ Chúng thường liên quan đến phương pháp điều chế, các kỹ thuật truy cập môi trường truyền, và các dịch vụ thời gian (được xác định bởi các chiến lược hàng đợi)
Các yếu tố như nghe trộm, xung đột, overhead của các gói điều khiển cùng ảnh hưởng đến cả tiết kiệm năng lƣợng cũng nhƣ độ trễ chuyển tiếp Mặt khác, có những yếu tố ảnh hưởng đến năng lượng và độ trễ theo hướng ngược nhau Các yếu tố như chu kỳ công việc cao, chiến lƣợc truy cập đồng bộ, và lắng nghe nhàn rỗi góp phần làm lãng
16 phí năng lƣợng, trong khi chu kỳ công việc thấp, chiến lƣợc truy cập không đồng bộ và chế độ ngủ làm ảnh tăng độ trễ end-to-end
Các giao thức lớp MAC hiệu quả năng lƣợng dựa trên việc tranh chấp trong mạng cảm biến không dây có thể đƣợc phân thành các giao thức đồng bộ và không đồng bộ Giao thức MAC đồng bộ phối hợp các giai đoạn đánh thức/ngủ (wake- up/sleep) để giảm thời gian không cần thiết trong lúc nghe nhàn rỗi Các nút cảm biến định kỳ trao đổi các gói SYNC để đồng bộ hóa và giao tiếp trong lịch trình hoạt động chung Tuy nhiên, chi phí overhead cũng đƣợc sinh ra do việc đồng bộ này, dẫn đến tiêu thụ nhiều năng lƣợng, tài nguyên tính toán và băng thông hơn Mặt khác, giao thức MAC không đồng bộ không có chi phí overhead để đồng bộ hóa như các phương pháp đồng bộ, nên cải thiện hiệu quả năng lƣợng hơn Tuy nhiên, các nút truyền thông bị tách rời hoàn toàn, điều này có thể làm tăng đáng kể độ trễ cho nút gửi để đáp ứng thời gian hoạt động của nút nhận
Có một số giao thức lớp MAC đã đƣợc phát triển riêng cho các mạng cảm biến không dây Mỗi giao thức tạo ra sự cân bằng khác nhau giữa độ trễ và năng lƣợng tiêu thụ Trong nhóm các giao thức MAC dựa trên việc tranh chấp mà đại diện cho nhóm này là giao thức S-MAC [7], độ trễ do ngủ là một nhƣợc điểm nghiêm trọng làm tăng độ trễ truyền thông Độ trễ này là thời gian mà một nút đợi cho đến thời điểm đánh thức (wake-up) của các nút chuyển tiếp trên mỗi chặng Nhiều cải tiến cũng đã đƣợc đề xuất để giảm thiểu độ trễ do việc ngủ này [8] [9]
Các nút cảm biến với lịch trình hoạt động/ngủ tĩnh nhƣ S-MAC thực thi công việc theo một lịch trình chung được cố định trước và không thay đổi theo lưu lượng mạng Bên cạnh đó, chúng còn thể hiện sự thiếu linh hoạt vì chúng dùng một giá trị cố định được định nghĩa trước cho khoảng thời gian hoạt động Điều đó làm cho các giao thức này cần phải giải quyết vấn đề để giảm thời gian nghe nhàn rỗi và tăng xung đột
Các khoảng thời gian hoạt động ngắn làm giảm thời gian nghe nhàn rỗi nhƣng tăng khả năng tranh chấp và do đó làm tăng tỷ lệ xung đột cũng nhƣ độ trễ Mặt khác, các khoảng thời gian hoạt động dài làm tăng thời gian nghe nhàn rỗi, ảnh hưởng đến mức tiêu thụ năng lƣợng Lịch trình hoạt động/ngủ tĩnh định kỳ nhƣ S-MAC có thể chỉ làm giảm độ trễ một chặng bởi vì tất cả các nút láng giềng đƣợc đồng bộ hóa với một lịch trình chung Tuy nhiên, với sự hiện diện của sự gián đoạn chu kỳ, chúng có thể tạo nên
17 độ trễ end-to-end lớn hơn, đặc biệt là trong các mạng đa chặng Các giao thức lịch trình hoạt động/ngủ tĩnh rất thích hợp cho các mạng nhỏ với lưu lượng tải mạng được dự đoán trước
Các cách tiếp cận dựa trên lịch trình thích nghi để giải quyết vấn đề độ trễ do ngủ gây ra bởi các giao thức theo lịch trình tĩnh Lịch trình đƣợc gôm nhóm thích nghi sử dụng các khoảng thời gian đồng bộ (SYNC), hoạt động (Active), và ngủ (Sleep) nhƣ trong lịch trình tĩnh Các khoảng thời gian hoạt động theo lịch trình đƣợc nhóm vào đầu của mỗi khung Để thích nghi với những biến động lưu lượng và bảo tồn năng lƣợng, các kỹ thuật nhƣ thời gian chờ (T-MAC [10]) và lắng nghe thích nghi (MRPM
[11]) cho phép thời gian ngủ của các nút cảm biến được kéo dài hơn nếu không có lưu lượng gói tin tới, và chúng cho thêm thời gian đánh thức khi có nhiều lưu lượng gói tin được gửi đi Tuy nhiên vì vấn đề ngủ sớm, các nút cảm biến thường ở trạng thái ngủ khi những nút khác cần gửi dữ liệu cho chúng Việc sử dụng kỹ thuật nghe trộm cho phép các giao thức thích nghi có thể giữ cho nút kế tiếp thức bằng cách gửi một tín hiệu đặc biệt khi nhận đƣợc một gói RTS Các giao thức thích nghi cải thiện độ trễ truyền dẫn so với S-MAC và đảm bảo giảm độ trễ trong hai chặng (đối với T-MAC) và k chặng (đối với MR-MAC [12]), với k phụ thuộc vào khoảng thời gian chờ timeout Mặc dù vậy, cả T-MAC và MR-MAC cũng không đảm bảo giảm độ trễ end- to-end và do đó không thể đáp ứng yêu cầu cho các ứng dụng đòi hỏi sự nhạy cảm về độ trễ
Các giao thức lịch trình đƣợc lặp lại nhƣ SCP-MAC [13] giải quyết vấn đề ngủ sớm và xung đột gây ra bởi các giao thức lịch trình gôm nhóm trước đó Thay vì lịch trình đƣợc gôm nhóm ở đầu mỗi khe thời gian, các khoảng thời gian hoạt động nhỏ đƣợc lặp đi lặp lại nhiều lần trong mỗi khe thời gian để tạo nhiều cơ hội hơn cho các gói tin đƣợc chuyển tiếp với ít tranh chấp và độ trễ đƣợc giảm thiểu Trong SCP-MAC, các nút cảm biến chỉ có thể phân phối một gói mỗi khe thời gian và còn gây ra sự gián đoạn chu kỳ cho dữ liệu nhạy cảm độ trễ trong các nút trung gian Vì vậy, loại giao thức này nếu bỏ qua ảnh hưởng của xung đột sẽ chỉ đảm bảo giảm độ trễ trong k chặng với k là số chu kỳ hoạt động trong mỗi khe thời gian
Giảm độ trễ end-to-end là điều tất yếu để đảm bảo dữ liệu chuyển giao kịp thời cho ứng dụng Để làm đƣợc điều này, các giao thức lập lịch so le thích nghi nhƣ
18 DMAC [14] cố gắng để thiết lập lịch đánh thức của các nút chuyển tiếp một cách so le, do đó thời gian hoạt động của mỗi nút là sự chồng chéo thời gian hoạt động của nút kế trước và nút kế sau của nó Nhưng để đảm bảo điều này, thông tin định tuyến về các nút kế tiếp trên mỗi đường đi là cần thiết Tuy nhiên, các nút so le ở mỗi cấp có thể dẫn đến nhiều tranh chấp và xung đột, do đó ảnh hưởng đến hiệu suất năng lượng và độ trễ chuyển tiếp của mỗi nút Từ quan điểm sử dụng thực tế, các giao thức lập lịch so le là phù hợp hơn cho các ứng dụng yêu cầu sự nhạy cảm về độ trễ, vì chúng có thể đảm bảo giảm độ trễ end-to-end cho các ứng dụng có tốc độ dữ liệu rất thấp, nơi mà lưu lượng dữ liệu trong các nút trung gian là không quan trọng và xung đột do tranh chấp ít xảy ra hơn Để giải quyết vấn đề xung đột ở mỗi cấp và các vấn đề ngủ đa chặng, phương pháp đặt trước lịch trình như giao thức SPEED-MAC [15] đã được đề xuất Các nút cảm biến đàm phán khi gửi và nhận các gói tin với các nút chuyển tiếp của chúng trong một cửa sổ đã đặt trước, sau đó chúng đi ngủ và được đánh thức ở thời gian đã định Tuy nhiên, các nút cần phải biết trước các nút chuyển tiếp của chúng, và thông tin xuyên lớp thường là cần thiết Ngoài ra, một trật tự phải thường được thành lập, trong đó các nút đầu tiên trong mỗi đường đi phải bắt đầu trao đổi khung lập lịch của chúng trước các nút chuyển tiếp kế sau chúng Điều này làm cho các giao thức loại này phức tạp hơn so với các loại khác Nếu kích thước của cửa sổ đặt trước là đủ lớn để bao phủ nút chuyển tiếp trên toàn bộ đường đi, loại giao thức này có thể đảm bảo giảm độ trễ end-to-end và có thể đƣợc sử dụng cho các ứng dụng mạng cảm biến có ràng buộc độ trễ và lưu lượng mạng
2.2.2 Các nghiên cứu nhằm tiết kiệm năng lượng tiêu thụ và giảm độ trễ end-to- end ở lớp mạng Để giảm độ trễ mạng đồng thời tiết kiệm năng lƣợng tiêu thụ cho toàn hệ thống, nhiều giải pháp đã đƣợc đề xuất dựa trên các kỹ thuật lôgíc mờ (Fuzzy Logic) và kỹ thuật di truyền (Genetic) [16] [17] [18] [19] Tuy nhiên, đóng góp của những nghiên cứu này không thực sự mang lại hiệu quả khi triển khai trong các mạng cảm biến thực tế do độ hội tụ mạng quá lớn Nhiều giải thuật định tuyến đa đường (multi-path) cũng đã đƣợc giới thiệu nhằm đảm bảo yếu tố độ trễ nhƣng lại làm giảm hiệu quả sử dụng năng lƣợng trong toàn mạng [17] [18] [20] [21] [22] [23] Bên cạnh đó, nhiều giải
19 pháp khác cũng đƣợc đề xuất [24] [25] [26] [27] [28] [2] [29] [30] nhằm cân bằng năng lƣợng tiêu thụ và độ trễ đầu cuối Trong khi đó, phân cụm [31] [32] là một trong những kỹ thuật đƣợc sử dụng rất hiệu quả để giải quyết bài toán tiết kiệm năng lƣợng tiêu thụ trong các mạng cảm biến không dây Tuy vậy, nhiều báo cáo khoa học [23]
[33] [34] [35] [36] [37] [38] đến thời điểm này vẫn còn nhiều hạn chế khi không giải quyết đƣợc vấn đề chất lƣợng dịch vụ đặc biệt là thời gian đáp ứng thông tin trong mạng là khá cao [39] [40] [41] Các giao thức được trình bày dưới đây là những giải pháp nổi bật đến thời điểm hiện tại nhằm giải quyết bài toán giảm năng lƣợng tiêu thụ có quan tâm đến yếu tố độ trễ đầu cuối
LEACH (Low-energy adaptive clustering hierarchy) [42] [43] là giao thức phân cụm nổi bật nhất nhằm tiết kiệm năng lƣợng và kéo dài thời gian sống của toàn mạng
GIẢI THUẬT PHÂN CỤM HIỆU QUẢ NĂNG LƯỢNG VÀ ĐỘ TRỄ - TED
Mô hình mạng
Xét một tập các nút cảm biến được phân bố trong một môi trường mạng cảm biến không dây Mô hình mạng phân cấp nhƣ trong hình 3.1 đƣợc đề xuất với các giả sử sau đây:
- Các nút cảm biến là tĩnh, có khả năng và mức độ quan trọng nhƣ nhau
- Mỗi nút cảm biến nhận biết đƣợc năng lƣợng còn lại của nó và có hoạt động với nhiều công suất phát khác nhau
- Dữ liệu được chuyển tiếp qua các nút cảm biến trung gian trong trường hợp các nút cảm biến nằm ngoài vùng phủ sóng của nhau
- Các nút cảm biến có thể hoạt động với chức năng chuyển tiếp dữ liệu hoặc/và cảm nhận môi trường
- Kỹ thuật tổng hợp dữ liệu được sử dụng để làm giảm kích thước và số lượng gói tin đƣợc gửi đi
- Mỗi nút cảm biến gửi dữ liệu theo khe một thời gian xác định
- Các nút cảm biến lân cận nhau cảm nhận các dữ liệu tương tự nhau
(a) Cụm một chặng (1-hop cluster) để tối thiểu độ trễ và tổng hợp dữ liệu trên mạng r S in k r C H
(b) Trưởng cụm có thể truyền thông với các trưởng cụm khác ở khoảng cách xa hơn trên đường đi đa chặng
: nút thành viên : trưởng cụm : sink
: liên kết từ thành viên đến trưởng cụm : liên kết từ trưởng cụm đến trưởng cụm (hoặc sink) r CH : dải truyền thông của trưởng cụm r Sink : dải truyền thông của sink
Hình 3.1 Mô hình kiến trúc truyền thông đa chặng của mạng cảm biến không dây
Mô hình năng lƣợng
Nghiên cứu này sử dụng mô hình tiêu thụ năng lƣợng đƣợc đề xuất trong nghiên cứu [43] Để truyền l-bit dữ liệu trên khoảng cách d, năng lƣợng tiêu tốn đƣợc xác định bởi công thức sau:
𝑙 × 𝐸 𝑒𝑙𝑒𝑐 + 𝑙 × 𝜀 𝑚𝑝 × 𝑑 4 𝑖𝑓 𝑑 ≥ 𝑑 0 (3.1) Trong đó, E elec là hệ số tiêu hao năng lƣợng điện fs và mp là hệ số khuếch đại để đảm bảo tỷ lệ tín hiệu trên nhiễu chấp nhận đƣợc 𝑑 0 = ε ε fs mp là khoảng cách tham chiếu giữa nút phát và nút nhận Để nhận l-bit dữ liệu, năng lƣợng tiêu tốn đƣợc tính bởi công thức sau:
𝐸 𝑅𝑋 𝑙 = 𝐸 𝑒𝑙𝑒𝑐 × 𝑙 (3.2) Với giả sử rằng dữ liệu cảm nhận được tại các nút cảm biến lân cận là tương tự nhau, một nút trưởng cụm bất kỳ nhận dữ liệu từ các nút cảm biến thành viên và tổng
29 hợp thành một gói dữ liệu duy nhất Năng lƣợng tiêu tốn cho việc tổng hợp dữ liệu từ m nút thành viên đƣợc xác định bởi công thức sau:
𝐸 𝐹 𝑙, 𝑚 = 𝑚 × 𝐸 𝑓𝑢𝑠𝑒 × 𝑙 (3.3) Trong đó, E fuse là hệ số tổng hợp dữ liệu.
Mô hình độ trễ
Độ trễ liên kết 𝐷 𝑙 𝑖, 𝑗 là thời gian trôi qua để một gói dữ liệu l bits di chuyển trên liên kết giữa hai nút cảm biến i và j Độ trễ này là tổng các độ trễ thành phần gồm độ trễ hàng đợi d Q tại nút cảm biến, độ trễ chuyển phát dữ liệu d T và độ trễ lan truyền d P Nói cách khác, 𝐷 𝑙 𝑖, 𝑗 đƣợc xác định bởi công thức sau:
𝛾 ; l là kích thước gói dữ liệu (bits), là băng thông của liên kết (bps), d ij là chiều dài liên kết giữa nút i và nút j, là tốc độ lan truyền trong môi trường (m/s) d Q được tính dựa vào mô hình M/M/1 trong lý thuyết hàng đợi [64] Trong mô hình hàng đợi này, đầu vào là phân bố Poisson, đầu ra là biến ngẫu nhiên theo số mũ, số dịch vụ là 1 Do vậy, độ trễ hàng đợi d Q đƣợc tính theo công thức sau:
Trong đó, là tốc độ dịch vụ đƣợc phân bố theo biến ngẫu nhiên dạng số mũ, là tốc độ đến của các gói dữ liệu mới đƣợc phân bố theo biến ngẫu nhiên dạng Poisson
Khi đó, độ trễ liên kết 𝐷 𝑙 𝑖, 𝑗 đƣợc viết lại nhƣ công thức sau:
𝛾 (3.6) Độ trễ đầu cuối D ete (x,s) là thời gian trôi qua từ lúc gói dữ liệu đƣợc cảm nhận từ một nút cảm biến bất kỳ x đến khi nó đến đƣợc nút gốc sink s Độ trễ đầu cuối của một đường đi từ một nút trưởng cụm x đến nút gốc sink s được xác định theo công thức sau:
30 Trong đó, U là tập các nút trung gian giữa nút trưởng cụm x và nút gốc sink s.
Giải thuật phân cụm cân bằng năng lƣợng tiêu thụ và độ trễ - TED
Giải thuật bắt đầu với pha khám phá nút láng giềng Trong pha này, nút gốc sink sẽ gửi quảng bá một thông điệp gọi là BEA đến tất cả các nút Mỗi nút cảm biến sẽ tính khoảng cách xấp xỉ d toSink từ nó đến nút gốc sink dựa theo cường độ tín hiệu RSSI mà nó nhận đƣợc theo công thức sau [65]:
𝑅𝑆𝑆𝐼 𝑑𝐵𝑚 = −10𝑛 log 10 𝑑 𝑡𝑜𝑆𝑖𝑛𝑘 +𝐴 (3.8) Trong đó, n là là hằng số lan truyền, A là cường độ tín hiệu nhận chuẩn trong khoảng cách một mét Trong không gian tự do n = 2 và A = -95 (dBm)
Mỗi nút cảm biến sẽ đợi một khoảng thời gian 𝜏 = 1
𝐸 trước khi gửi quảng bá thông điệp ADV(ID,E) đến các nút cảm biến lân cận, trong đó ID và E tương ứng là số nhận dạng và năng lƣợng còn lại của nút cảm biến Mỗi nút sẽ so sánh năng lƣợng của nó với năng lƣợng của các nút cảm biến khác mà nó nhận gói ADV Nút cảm biến có năng lƣợng nhỏ hơn năng lƣợng của một trong các nút cảm biến khác, nó sẽ không tiếp tục chờ mà ngay lập tức trở thành nút thành viên
Các nút có khả năng trở thành nút trưởng cụm sẽ là các nút đã gửi thông điệp
ADV nhƣng hoặc sau đó không nhận bất kỳ thông điệp ADV nào từ các nút cảm biến khác hoặc năng lƣợng của nó cao hơn năng lƣợng E đƣợc lấy từ thông điệp ADV của các gói nút cảm biến khác
Có khả năng là sẽ có nhiều hơn một nút có cùng mức năng lƣợng mà nằm trong cùng dải truyền thông với nhau Để giải quyết trường hợp này, chỉ số TED được sử dụng để cân bằng giữa năng lượng độ trễ cho mỗi nút có khả năng trở thành nút trưởng cụm Chỉ số này đƣợc xác định bởi công thức sau:
Trong đó, E i là năng lượng còn lại của nút ứng viên trưởng cụm i, E total là năng lƣợng tổng của các nút đã gửi thông điệp ADV cho nút i, d is là khoảng cách từ nút ứng viên trưởng cụm i đến nút gốc sink s và là các tham số điều khiển dùng để điều chỉnh sự phụ thuộc vào năng lượng còn lại của các nút ứng viên trưởng cụm dùng
31 để điều khiển sự phụ thuộc vào khoảng cách của các nút ứng viên trưởng cụm và nút gốc sink Giá trị của α và β thuộc đoạn [0,1] và α + β 0
Mỗi nút ứng viên trưởng cụm sẽ đợi một khoảng thời gian 𝜔 = 1
𝑇𝐸𝐷 𝑖 trước khi gửi đi một thông báo rằng nó chính thức là nút trưởng cụm Các nút ứng viên trưởng cụm khác nếu nhận đƣợc thông báo này, chúng sẽ không tiếp tục chờ theo giá trị trên, mà sẽ trở thành nút thành viên của vòng hiện tại
Sau khi các cụm đã được thiết lập, các nút trưởng cụm sẽ gửi quảng bá thông điệp TDMA đến các nút thành viên để xác định khe thời gian gửi dữ liệu cho chúng
Mã giả của giải thuật đƣợc thể hiện trong hình 3.2
Algorithm 1 Xác đinh vai trò của các nút cảm biến trong mỗi cụm Đầu vào: thông điệp BEA từ nút gốc sink Đầu ra: Vai trò của nút trong cụm (NodeRole) 1 Tính khoảng cách xấp xỉ từ nút cảm biến tới nút gốc sink d toSink
3 Gửi quảng bá thông điệp ADV đến các nút lân cận 4 if nhận thông điệp ADV từ các nút lân cận then
5 for j = 0 to N i do 6 if E i E j then //Ei và Ej là năng lượng còn lại của nút i và nút j
12 NodeRole = Cluster-member 13 end if
16 if nhận thông điệp JCR then
17 Gửi thông điệp ACK tới nút trưởng cụm của nó 18 NodeRole = Cluster-member
20 Gửi quảng bá thông điệp JCR tới các nút lân cận 21 NodeRole = Cluster-head
23 Gửi quảng bá thông điệp NCR đến các nút trưởng cụm khác 24 Cập nhật năng lượng còn lại của nút
Hình 3.2 Mã giả của giải thuật phân cụm TED cho mỗi nút cảm biến
Phân tích độ phức tạp của giải thuật phân cụm TED
O(n), với n là số nút trung bình trong mỗi cụm của một WSN
Chứng minh: Dễ thấy rằng mỗi nút chỉ thực thi một số lƣợng cố định các phép tính đơn giản (tính khoảng cách xấp xỉ d toSink tại dòng 1, tính giá trị định thời đầu tiên τ tại dòng 2, tính giá trị định thời thứ hai ω tại dòng 15, và cập nhật năng lƣợng còn lại của nút tại dòng 24) cũng nhƣ một số lƣợng hữu hạn các thao tác truyền thông (gửi quảng bá thông điệp ADV đến các nút lân cận tại dòng 3, gửi thông điệp ACK trả lời cho nút trưởng cụm của nó tại dòng 17, gửi quảng bá thông điệp JCR đến các nút lân cận tại dòng 20 để xác định một nút cảm biến thành viên, và gửi quảng bá thông điệp
NCR tại dòng 23 để xác định nút trưởng cụm lân cận) Bên cạnh đó, nó chỉ thực hiện kiểm tra một số lƣợng cố định các điều kiện đơn giản (dòng 4, 6, 11, và 16) Vòng lặp
FOR đƣợc thực thi lặp lại trong 𝑁 𝑖 = 𝑁
𝐾 lần, trong đó N là số lƣợng nút cảm biến, K là số lƣợng cụm mong đợi, và N i là số lƣợng nút cảm biến trung bình cho mỗi cụm trong một mạng cảm biến không dây Vì vậy, độ phức tạp tính toán của giải thuật 1 đƣợc xác định là một hàm tuyến tính O(N i ) hay O(n) với n là số lƣợng nút cảm biến trung bình cho mỗi cụm trong một mạng WSN Định lý 3.2: Độ phức tạp trao đổi thông điệp của giải thuật TED là một hàm đa thức O(n 2 ), với n là số lƣợng nút cảm biến trong một WSN
Chứng minh: Dễ thấy rằng số lƣợng thông điệp cần để thiết lập các cụm phụ thuộc vào các thông điệp ADV, JCR và ACK (dòng 3, 17, và 20) Cho mạng có kích thước N nút cảm biến và K cụm mong đợi Xét thao tác nút cảm biến tại dòng 3, số lƣợng tối đa thông điệp ADV đƣợc gửi quảng bá đến các nút lân cận là 𝑁 𝑖 × 𝑁 𝑖 +1
𝑁 𝑖 2 × 𝐾, trong đó N i là số lƣợng nút trung bình trong mỗi cụm Bởi vì 𝑁 𝑖 ≈ 𝑁
𝐾, số lƣợng tối đa thông điệp ADV xấp xỉ là 𝑁
𝐾 Ngoài ra, xét một thao tác khác tại dòng 17, số lượng thông điệp ACK được gửi đến các nút trưởng cụm là (N - K) Tương tự, xét thao tác tại dòng 20, số lƣợng tối đa thông điệp JCR đƣợc gửi quảng bá tới các nút lân cận là K N i Bởi vì 𝑁 𝑖 ≈ 𝑁
𝐾, số lƣợng tối đa thông điệp JCR xấp xỉ là 𝐾 × 𝑁
𝐾 hay N Ngoài ra, xét thao tác tại dòng 23, số lƣợng thông điệp NCR đƣợc gửi quảng bá tới các nút trưởng cụm lân cận là 𝐾× 𝐾−1
2 ≈ 𝐾 2 Do vậy, tổng số thông điệp đƣợc trao đổi trong toàn bộ tiến trình thiết lập các cụm là 𝑁 2
33 nhất Nói cách khác, chi phí trao đổi thông điệp của giải thuật 1 là O(n 2 ) với n là số lƣợng nút cảm biến trong một WSN.
Đánh giá hiệu quả giải thuật phân cụm
Để đánh giá hiệu quả của giải thuật phân cụm TED, công cụ Castalia [66] đƣợc sử dụng để thực hiện mô phỏng cho một WSN với 100 nút cảm biến trong một trường kích thước 100m×100m Nút gốc sink định vị ở tọa độ (0,0), năng lượng khởi tạo cho mỗi nút cảm biến là 1 Joule Ngoài ra, để tận dụng khả năng cân bằng năng lƣợng tiêu thụ và độ trễ nhƣ phân tích trong phần 2.2.1, tất cả các mô phỏng trong luận án đƣợc cấu hình để sử dụng giao thức truy cập môi trường truyền T-MAC [10] với các tham số nhƣ trong bảng 3.1 sau:
Tham số Giá trị Giải thích maxTxRetries 2 Số lần truyền lại tối đa resyncTime 6 (s) Thời gian đồng bộ giữa các gói tin quảng bá contentionPeriod 10 (ms) Khoảng thời gian tranh chấp giữa các lần truyền ngẫu nhiên listenTimeout 15 (ms) Khoảng thời gian đợi nghe môi trường truyền waitTimeout 5 (ms) Thời gian tối đa để chờ nhận hồi đáp từ nút khác frameTime 610 (ms) Thời gian cho mỗi frame của tất cả các nút collisionResolution 0 Phương pháp xử lý tranh chấp:
0 – Thử lại ngay lập tức 1 – Thử lại khi nghe đƣợc gói CTS hoặc RTS 2 – Thử lại ở frame kế tiếp phyDelayForValidCS 0.128 Độ trễ cảm nhận sóng mang phyDataRate 250 Tốc độ dữ liệu vật lý phyFrameOverhead 6 Overhead cho frame vật lý
Bảng 3.1 Các tham số tiêu biểu đƣợc dùng với T-MAC trong mô phỏng Để thấy ảnh hưởng của hai tham số α và β đối với chỉ số TED, mô phỏng thiết lập các giá trị của α và β trong đoạn [0,1] một cách tương ứng thành các cặp Với α = 0 và β = 1, sự biến động giá trị chỉ số TED trong công thức 3.9 sẽ phục thuộc vào
34 khoảng cách từ trưởng cụm đến nút gốc sink nhiều hơn là vào năng lượng còn lại của nút cảm biến Điều này chỉ ra rằng độ trễ end-to-end quan trọng hơn đối với ứng dụng so với năng lƣợng tiêu hao
Hình 3.3 Phân cụm theo TED với α = 0 và β = 1
Hình 3.4 Phân cụm theo TED với α = 0.5 và β = 0.5 Trong các hình từ 3.3 đến 3.8, mem of CH-i có ý nghĩa là nút thành viên của cụm ứng với nút trưởng cụm CH-i CH-i (bigger) có ý nghĩa là nút có hình lớn hơn các nút
35 còn lại trong cùng một cụm sẽ là nút trưởng cụm SINK là trạm gốc, Ucnclustered là các nút chƣa đƣợc phân bố vào bất kỳ cụm nào
Hình 3.3 cho thấy kết quả phân cụm với α = 0 và β = 1 Kết quả này cho thấy mạng được phân nhiều cụm hơn so với các trường hợp khác (bảy cụm so với sáu cụm trong trường hợp α = 0.5, β = 0.5 như trong hình 3.4 và năm cụm trong trường hợp α 1, β = 0 như hình 3.5) Trong trường hợp nhiều cụm, việc phân phối dữ liệu đến nút gốc sink sẽ có thiên hướng đi qua nhiều chặng và mỗi chặng sẽ ngắn hơn hai trường hợp còn lại Điều này giúp mạng cân bằng năng lƣợng tốt hơn
Hình 3.5 Phân cụm theo TED với α = 1 và β = 0
Trong hình 3.5, khi α = 1 và β = 0, sự biến động giá trị chỉ số TED phụ thuộc vào năng lượng nhiều hơn là vào khoảng cách từ nút trưởng cụm đến nút gốc sink nên tạo ra ít cụm hơn hai trường hợp kia Điều này kiến gói tin được phân phối đến nút gốc sink sẽ có xu hướng đi qua ít chặng hơn, từ đó độ trễ end-to-end sẽ được kéo giảm xuống Trường hợp α = 0.5 và β = 0.5, số cụm được phân chia cân bằng hơn giữa hai yếu tố năng lượng và khoảng cách và các nút trưởng cụm cũng được phân bố đồng đều hơn nhƣ trong hình 3.4
Mặc dù có nhiều phương pháp đã được đề xuất gần đây nhằm cải tiến các giao thức LEACH nhƣ [67] [68] [69] [70] [71] [72] [73] [74] và HEED nhƣ [75] [76] [77]
[78] [79] Và không ít trong số đó tự xƣng là là hiệu quả hơn so với LEACH [43] hoặc
36 HEED [45] – là hai phương pháp phân cụm điển hình trong mạng cảm biến không dây cho đến thời điểm hiện tại Nhưng hầu hết những phương pháp này đều được ước lượng trong các môi trường mô phỏng với nhiều tham số giả định khác nhau, vì vậy rất khó để đánh giá những hiệu quả thực sự của chúng so với hai giao thức LEACH và HEED Do vậy, để đánh giá hiệu quả phân cụm so với các giải thuật tương tự, mô phỏng được thực hiện với cùng một môi trường cho cả ba giải thuật LEACH, HEED, và TED Các kết quả phân cụm đƣợc thể hiện trong các hình 3.6, 3.7, và 3.8
Trong giải thuật phân cụm LEACH [43], mỗi nút cảm biến i thực hiện tự bầu chọn chính nó trở thanh nút trưởng cụm tại thời điểm t với xác suất 𝑃 𝑖 𝑡 𝑚𝑖𝑛 𝐸 𝑖 𝑡
𝐸 𝑡𝑜𝑡𝑎𝑙 × 𝑘 𝑜𝑝𝑡 , 1 , trong đó E i (t) là năng lƣợng còn lại của nút i, E total là tổng năng lượng của các nút cảm biến tại thời điểm t, và số lượng nút trưởng cụm tối ưu được xác định bởi 𝑘 𝑜𝑝𝑡 = 𝑁
𝑑 𝑡𝑜𝑆𝑖𝑛𝑘 2 với N là tổng số nút cảm biến trong mạng, M là chiều dài cạnh vuông của vùng cảm biến, d toSink là khoảng cách các nút cảm biến đến nút gốc sink, fs và mp là các hệ số khuếch đại
Hình 3.6 Phân cụm theo giải thuật LEACH Trong giải thuật phân cụm HEED [45], mỗi nút cảm biến i tự bầu chính nó để trở thành nút trưởng cụm với xác suất 𝐶𝐻 𝑝𝑟𝑜𝑏 𝑖 = 𝐶 𝑜𝑝𝑡 𝐸 𝑖
𝐸 𝑚𝑎𝑥 , trong đó E i là năng lƣợng
37 còn lại của nút i, E max là năng lƣợng tối đa tham chiếu của nút cảm biến i, C opt là số lượng nút trưởng cụm tối ưu được thiết lập dựa trên tỷ lệ phần trăm nút trưởng cụm trong số N nút cảm biến
Hình 3.7 Phân cụm theo giải thuật HEED
Hình 3.8 Phân cụm theo giải thuật TED Đối với trường hợp của LEACH và HEED, vì việc xác định các nút trưởng cụm dựa vào tỷ lệ phần trăm nút trưởng cụm trên tổng số nút cảm biến trong toàn mạng,
38 nên kết quả chọn các nút trưởng cụm phụ thuộc vào kích thước mạng và việc chọn tỷ lệ phần trăm tối ƣu này Trong kịch bản mô phỏng, giá trị 5% đƣợc sử dụng để xác định số lượng nút trưởng cụm tối ưu cho kích thước mạng 100 nút Kết quả ở hình 3.6 và 3.7 cho thấy các nút trưởng cụm được phân bố khá gần với nút gốc sink với mục tiêu tiết kiệm năng lượng cho các nút trưởng cụm Trong khi đó, kết quả phân cụm của giải thuật TED thể hiện trong hình 3.8 cho thấy các nút trưởng cụm được phân bố xa hơn nhƣng đều hơn hai giải thuật LEACH và HEED Điều này giúp cho năng lƣợng tiêu thụ của các nút cảm biến đƣợc cân bằng tốt hơn
Một số tiêu chí đƣợc chỉ ra trong bảng 3.2 và bảng 3.3 nhằm đánh giá tính hiệu quả của các giao thức phân cụm điển hình liên quan
Khoảng cách từ nút trưởng cụm đến nút gốc
Overhead để chọn nút trưởng cụm
Năng lƣợng còn lại Độ trễ
HEED Phân tán Không Thấp Có Cao
TED Phân tán Có Thấp Có Thấp
Bảng 3.2 So sánh giữa các giải thuật phân cụm điển hình liên quan đến việc chọn nút trưởng cụm
Khoảng cách từ nút thành viên đến nút trưởng cụm
Tương quan kích thước các cụm
Số chặng Overhead để tham gia cụm
Bảng 3.3 So sánh giữa các giải thuật phân cụm điển hình liên quan đến việc thiết lập cụm của các nút thành viên
Kết luận
Trong chương này, luận án đã giải quyết vấn đề cân bằng năng lượng tiêu thụ và độ trễ end-to-end bằng cách thiết kế một chỉ số cân bằng TED giúp cho mỗi nút cảm
39 biến có thể tự quyết định trở thành nút trưởng cụm cho mỗi vòng hay là thành viên của một cụm nào đó Kết quả phân cụm cho thấy sự hiệu quả phân cụm phụ thuộc vào việc điều chỉnh hợp lý các tham số điều khiển và sự phân bố các nút thành viên vào các cụm đều hơn hai phương pháp phân cụm tương tự trước đó Trong chương kế tiếp, luận án tiếp tục áp dụng mô hình phân cụm để chọn ra các nút trưởng cụm chuyển tiếp dữ liệu cho các nút cảm biến đến nút gốc sink theo mô hình định tuyến đa chặng nhằm cân bằng tổng năng lƣợng tiêu thụ của các nút cảm biến trong toàn mạng và độ trễ end-to-end
GIẢI THUẬT ĐỊNH TUYẾN CÂN BẰNG NĂNG LƯỢNG TIÊU THỤ VÀ ĐỘ TRỄ ĐẦU CUỐI - DEM
Tính chi phí đường đi ban đầu
Mỗi nút trưởng cụm ước lượng khoảng cách d toSink từ nó đến nút gốc sink s dựa vào thông điệp BEA nhận đƣợc từ nút sink s trong giai đoạn thiết lập cụm nhƣ mô tả trong phần 3.4 Bên cạnh đó, mỗi nút trưởng cụm cũng ước lượng năng lượng tiêu thụ cho việc gửi trực tiếp dữ liệu từ nó đến nút gốc sink Mức năng lƣợng này sẽ đƣợc dùng để xác định chi phí đường đi ban đầu cho mỗi nút trưởng cụm Giá trị chi phí này sẽ được gửi quảng bá đến các nút trưởng cụm lân cận bằng thông điệp INI Chi phí đường đi ban đầu để mỗi nút trưởng cụm i (CH i ) gửi dữ liệu trực tiếp đến nút gốc sink s đƣợc xác định bởi công thức sau:
Trong đó, 𝐸 𝑇𝑋 𝑖 𝑙, 𝑑 𝑡𝑜𝑆𝑖𝑛𝑘 là năng lƣợng dùng để truyền l bit dữ liệu trực tiếp từ nút trưởng cụm i đến nút gốc sink trên khoảng cách d toSink Dựa vào mô hình năng lƣợng đã định nghĩa trong phần 3.2, giá trị năng lƣợng này đƣợc xác định theo công thức sau:
D l (i,s) là độ trễ liên kết trực tiếp giữa nút trưởng cụm i và nút gốc s Dựa vào mô hình độ trễ đã định nghĩa trong phần 3.3, giá trị này đƣợc xác định theo công thức sau:
Cập nhật chi phí đường đi
Dựa vào thông tin trong thông điệp INI nhận được từ các nút trưởng cụm lân cận, mỗi nút trưởng cụm ước lượng khoảng cách từ nó đến các nút trưởng cụm khác Từ đó, nó tính ra chi phí đường đi chuyển tiếp khi nó sử dụng các nút trưởng cụm khác làm nút chuyển tiếp dữ liệu để đến nút gốc sink Nếu giá trị chi phí này nhỏ hơn giá trị chi phí đường đi ban đầu để gửi dữ liệu từ chính nó trực tiếp đến nút gốc sink, nó sẽ cập nhật lại chi phí đường đi là giá trị của chi phí đương đi chuyển tiếp Bằng cách này, mỗi nút trưởng cụm có thể có nhiều đường đi chuyển tiếp có chi phí chuyển tiếp nhỏ hơn giá trị chi phí đường đi ban đầu Trong trường hợp này, nó chọn đường đi chuyển tiếp có chi phí thấp nhất làm đường đi chuyển tiếp mặc định và quảng bá giá trị này như là chi phí đường đi mới đến các nút trưởng cụm lân cận
Chi phí đường đi của nút trưởng cụm i sử dụng nút trưởng cụm j như là nút chuyển tiếp kế tiếp được xác định bởi hệ phương trình đệ quy sau:
𝑐𝑜𝑠𝑡 𝐹 𝑙, 𝐶𝐻 𝑗 = 𝐸 𝑅𝑋 𝑗 𝑙 + 𝑐𝑜𝑠𝑡 𝑙, 𝐶𝐻 𝑗 (4.5) Trường hợp nút trưởng cụm j là nút chuyển tiếp cuối cùng đến nút gốc sink, thì:
𝑐𝑜𝑠𝑡 𝐹 𝑙, 𝐶𝐻 𝑗 = 𝐸 𝑅𝑋 𝑗 𝑙 + 𝑐𝑜𝑠𝑡 0 𝑙, 𝐶𝐻 𝑗 (4.6) Trong đó, 𝐸 𝑇𝑋 𝑖 𝑙, 𝑑 𝑖𝑗 là năng lƣợng tiêu thụ để truyền l bits dữ liệu từ nút i đến nút j trên khoảng cách d ij , 𝐷 𝑙 𝑖, 𝑗 là độ trễ liên kết giữa hai nút trưởng cụm liền kề nhau i và j, 𝑐𝑜𝑠𝑡 𝐹 𝑙, 𝐶𝐻 𝑗 là chi phí chuyển tiếp l bits dữ liệu của nút trung gian j đến nút lân cận khác 𝐸 𝑅𝑋 𝑗 𝑙, 𝑑 𝑖𝑗 là năng lƣợng tiêu thụ của nút j để nhận l bits dữ liệu từ nút lân cận i
Bằng phương pháp tính chi phí đệ quy như trên, mỗi nút trưởng cụm xác định đƣợc một danh sách các nút chuyển tiếp tối ƣu đƣợc sắp xếp ƣu tiên theo giá trị chi phí thấp để chuyển tiếp dữ liệu đến nút gốc sink Mã giả của thuật toán đƣợc thể hiện trong hình 4.1
Algorithm 2 Xác định chi phí tối ưu năng lượng tiêu thụ và độ trễ để gửi dữ liệu đến nút gốc sink từ một nút trưởng cụm i Đầu vào: thông điệp BEA từ nút gốc sink Đầu ra: chi phí tối ưu năng lượng tiêu thụ và độ trễ leastCost(i)
1 Tính khoảng cách xấp xỉ từ nút cảm biến tới nút gốc sink d toSink 2 Tính chi phí đường đi ban đầu trực tiếp đến sink cost 0 (l,CH i )
4 Gửi quảng bá thông điệp INI đến các nút lân cận 5 while nhận thông điệp INI từ một nút lân cận j do
6 Tính khoảng cách d ij từ nó đến nút j 7 Tính chi phí cost(l,CH i ) gửi dữ liệu chuyển tiếp qua nút j
8 If cost(l,CH i ) < leastCost(i) then
11 Lưu danh sách nút chuyển tiếp ưu tiên theo leastCost(i) 12 end while
13 Gửi quảng bá giá trị leastCost(i) đến các nút lân cận 14 return leastCost(i)
Hình 4.1 Mã giả của giải thuật DEM
Truyền dữ liệu
Sau khi các thông tin định tuyến đã đƣợc xác định, việc truyền dữ liệu bắt đầu
Mỗi nút thành viên tắt bộ nhận/phát cho đến khi khe thời gian truyền của nó bắt đầu
Mỗi nút thành viên sau đó sẽ gửi dữ liệu đến nút trưởng cụm của nó trong khoảng thời gian đã được gán Các nút trưởng cụm luôn mở bộ nhận để sẵn sàng nhận dữ liệu từ các nút thành viên Để loại bỏ những dữ liệu dư thừa, mỗi nút trưởng cụm tổng hợp dữ liệu từ các nút thành viên thành một gói dữ liệu duy nhất để gửi đến nút gốc sink thông qua các nút trưởng cụm chuyển tiếp khác Sau một khoảng thời gian định trước, vòng tiếp theo sẽ bắt đầu với pha thiết lặp cụm trở lại
Trong giai đoạn thu thập dữ liệu từ các nút thành viên, bởi vì nút thành viên chỉ cần gửi dữ liệu đến nút trưởng cụm của nó nên năng lượng tiêu thụ tại mỗi nút cảm biến thành viên E mem đƣợc xác định theo công thức sau:
𝐸 𝑚𝑒𝑚 𝑗 = 𝑙 × 𝐸 𝑒𝑙𝑒𝑐 + 𝑙 × 𝜀 𝑓𝑠 × 𝑑 𝑗 2 (4.7) Trong đó, d(j) là khoảng cách từ nút thành viên j đến nút trưởng cụm của nó
Trong khi đó, vì nút trưởng cụm cần tổng hợp dữ liệu từ các nút thành viên và chuyển tiếp dữ liệu này đến các nút trưởng cụm khác nên năng lượng tiêu thụ tại mỗi nút trưởng cụm E CH được xác định theo công thức sau:
𝑙 × (𝐸 𝑒𝑙𝑒𝑐 + 𝜀 𝑚𝑝 × 𝑑 4 𝑛𝑒𝑥𝑡 𝑖 ) × 1 + 𝑟𝑒𝑙𝑎𝑦𝑠 𝑖𝑓 𝑑 𝑛𝑒𝑥𝑡 𝑖 ≥ 𝑑 0 (4.11) Trong đó, 𝐸 𝑅 𝑖 là năng lƣợng mà nút i dùng để nhận tất cả các dữ liệu từ các nút thành viên, 𝐸 𝐹 𝑖 là năng lƣợng mà nút i dùng để tổng hợp dữ liệu từ tất cả các nút thành viên, 𝐸 𝑆 𝑖 là năng lượng mà nút i dùng để gửi dữ liệu đến nút trưởng cụm kế tiếp hoặc nút gốc sink, 𝑠𝑖𝑧𝑒 𝐶𝐻 𝑖 là số lượng nút thành viên của cụm có nút trưởng cụm i, relays là số lần chuyển tiếp, d next (i) là khoảng cách từ nút trưởng cụm i đến nút trưởng cụm kế tiếp hoặc nút gốc sink
Khi đó, tổng năng lƣợng tiêu thụ cho cả vòng là:
Trong đó, N là số lƣợng nút cảm biến trong toàn mạng và K là số lƣợng nút trưởng cụm tại vòng đó.
Đánh giá hiệu quả giải thuật DEM
Sử dụng công cụ Castalia [66], giải thuật DEM đƣợc thực hiện mô phỏng cho một WSN với 200 nút cảm biến trong một trường kích thước 100m×100m Nút gốc sink định vị ở tọa độ (0,0), kích thước gói dữ liệu là 30 bytes, = 3, = 6, năng lượng khởi tạo cho mỗi nút cảm biến là 1 Joule, Eelec = 50 nJ/bit, fs = 10 pJ/bit/m 2 , mp 0.0013 pJ/bit/m 4 , E fuse = 5 nJ/bit, = 250 bps, = 3.10 8 m/s Bên cạnh đó, để thực hiện quá trình phân phối dữ liệu từ các nút cảm biến đến nút gốc cho giải thuật DEM và các giải thuật sẽ được mô tả trong các chương sau, chương trình mô phỏng sử dụng các tham số để khai báo kích thước các loại gói tin và một số tham số khác tương ứng ở các lớp khác nhau trong mỗi nút cảm biến nhƣ trong bảng 4.1 Để thấy rõ sự ảnh hưởng của số lượng nút chuyển tiếp đến yếu tố tiêu thụ năng lƣợng và độ trễ, mô phỏng đánh giá cả tổng năng lƣợng tiêu thụ E total (đƣợc xác định bởi công thức 4.12) và D ete (x,s) (đƣợc xác định bởi công thức 3.7) trên cùng một mặt phẳng Các hình 4.2, 4.3 và 4.4 mô tả năng lƣợng tiêu thụ và độ trễ phụ thuộc nhƣ thế nào vào sự thay đổi số lượng nút chuyển tiếp Điều này giúp những người thiết kế ứng dụng cho WSN có đƣợc sự hiểu biết về tầm quan trọng của số lượng nút chuyển tiếp,
44 là một tham số hữu ích đƣợc sử dụng để cân bằng năng lƣợng tiêu thụ và độ trễ end-to- end Trong hình 4.2, với = 1 và = 0, một nút cảm biến nguồn có thể sử dụng k = 3 (bốn chặng) nhƣ là giải pháp chuyển tiếp tối ƣu để tối thiểu cả năng lƣợng tiêu thụ và độ trễ end-to-end Trong hai hình 4.3 và 4.4 tương ứng đối với ( = 0.5 và = 0.5) và ( = 0 và = 1), hoặc k = 2 hoặc k = 3 đều đƣợc xem là lựa chọn tối ƣu
Tham số Giá trị Lớp Giải thích packetHeaderOverhead 5 bytes Ứng dụng
Overhead của gói tin lớp ứng dụng constantDataPayload 30 bytes Kích thước gói tin lớp ứng dụng packet_rate 1 packet/s Tốc độ sinh gói tin lớp ứng dụng startupDelay 0 Độ trễ sinh gói tin lớp ứng dụng ackPacketSize/ syncPacketSize
11 bytes Điều khiển truy cập môi trường truyền
Kích thước gói tin ACK/SYNC rtsPacketSize/ ctsPacketSize
13 bytes Kích thước gói tin RTS/CTS macPacketOverhead 0 Không giới hạn kích thước gói tin mà lớp MAC có thể xử lý macPacketOverhead 11 bytes Overhead của gói tin sinh ra bởi lớp MAC macBufferSize 32 bytes Kích thước buffer của lớp MAC carrierFreq 2400MHz
CCAthreshold -95dbm Ngƣỡng xác định kênh truyền đang trống maxPhyFrameSize 1024 bytes Kích thước frame lớp vật lý phyFrameOverhead 6 bytes Overhead của frame lớp vật lý state RX Trạng thái ban đầu của mỗi nút cảm biến là “nhận”
TxOutputPower -5dbm Công suất phát mặc định của mỗi nút cảm biến Bảng 4.1 Tham số mô phỏng ở các lớp tại mỗi nút cảm biến
45 Hình 4.2 Cân bằng năng lƣợng tiêu thụ và độ trễ end-to-end với = 1 và = 0
Hình 4.3 Cân bằng năng lƣợng tiêu thụ và độ trễ end-to-end với = = 0.5
46 Hình 4.4 Cân bằng năng lƣợng tiêu thụ và độ trễ end-to-end với = 0 và = 1
Bên cạnh đánh giá việc cân bằng năng lƣợng tiêu thụ và độ trễ, mô phỏng cũng thực hiện thu thập số liệu và số gói tin nhận đƣợc tại sink ứng với các giá trị độ trễ tương ứng Từ đó rút kết được một nhận xét về cận dưới và cận trên về độ trễ ứng với mỗi kích thước mạng tương ứng Cho một WSN với 200 nút cảm biến trong một trường kích thước 100m×100m và nút gốc sink định vị ở tọa độ (0,0) Thực hiện truyền thông 50 vòng, mỗi vòng 20s, mô phỏng thu đƣợc kết quả về số lƣợng gói tin nhận đƣợc sau 50 vòng nhƣ hình 4.5
Hình 4.5 cho thấy hầu hết các gói tin nhận đƣợc đều rơi vào khoảng độ trễ nhỏ hơn bẳng 6s nhƣng không có gói tin nào đến trong khoảng nhỏ hơn 2s Đặc biệt, trong khoảng từ 3s đến 5s, lƣợng gói tin nhận đƣợc tại sink là nhiều nhất Tuy nhiên, vẫn có một lƣợng nhỏ các gói tin nhận đƣợc tại sink sau khoảng thời gian trễ khá lớn (lớn hơn 10s) Kết quả này cho phép rút ra kết luận về cận dưới và cận trên của độ trễ trong trường hợp cụ thể Nghĩa là, ứng với kích thước mạng 200 nút cảm biến, nút sink đặt tại biên (0,0) của vùng mạng kích thước 100m×100m, biên độ về thời gian trễ cho phép tối ƣu của việc chuyển phát gói tin nên nằm trong khoảng từ 2s đến 10s Điều này là rất cần thiết để các nhà thiết kế và ứng dụng mạng cảm biến có đƣợc thông số
47 tham khảo trong các thiết lập giá trị ràng buộc độ trễ để gia tăng hiệu quả về độ tin cậy phân phối dữ liệu của giải thuật áp dụng
Hình 4.5 Số lƣợng gói tin nhận đƣợc ứng với các khoảng giá trị độ trễ
Kết luận
Chương này đã thực hiện nghiên cứu tiết kiệm năng lượng tiêu thụ và giảm độ trễ end-to-end bằng cách thiết kế hàm chi phí tổng hợp với hai giai đoạn Trong giai đoạn đầu, chi phí đƣợc tính dựa trên mức năng lƣợng và khoảng cách trực tiếp mà mỗi nút cảm biến nhận đƣợc từ thông điệp quảng bá của nút gốc sink Ở giai đoạn hai, hàm chi phí này được cập nhật lại dựa vào thông tin có được từ các nút trưởng cụm lân cận sau pha thiết lập cụm Hàm chi phí đƣợc tính dựa vào sự tổng hợp hai nhân tố năng lƣợng tiêu thụ và độ trễ liên kết để truyền dữ liệu giữa hai nút trưởng cụm lân cận nhau
Ngoài ra, các phân tích về năng lƣợng tiêu thụ cũng đƣợc trình bày trong phần này để áp dụng trong các kịch bản mô phỏng sau đó Các kết quả mô phỏng cho thấy sự kết hợp hiệu quả giữa phương pháp phân cụm TED được đề xuất trong chương ba với giải thuật cập nhật hàm chi phí tổng hợp tạo sự cân bằng tốt cho cả năng lƣợng tiêu thụ và độ trễ end-to-end Bên cạnh đó, với sự điều chỉnh hợp lý các tham số và , mô
48 phỏng cũng cho thấy số lượng chặng tối ưu ứng với một kích thước mạng cụ thể Tuy nhiên, hạn chế trong phương pháp này là vẫn chưa tìm ra công thức tối ưu chung cho mạng với kích thước bất kỳ Điều này cũng cho thấy rõ việc tìm giải pháp tối ưu cho bài toán đa mục tiêu là một vấn đề khó
Trên quan điểm đó, luận án đề xuất hướng giải quyết bài toán theo dạng tối ưu một mục tiêu có ràng buộc Cách giải các bài toán dạng này sẽ đơn giản hơn và việc tìm lời giải với độ phức tạp tính toán thấp sẽ phù hợp hơn với các mạng cảm biến không dây Và những giải pháp được trình bày trong hai chương tiếp theo sẽ tiếp cận bài toán theo hướng này
GIẢI THUẬT ĐỊNH TUYẾN HIỆU QUẢ NĂNG LƯỢNG VỚI K ĐƯỜNG NGẮN NHẤT ĐẢM BẢO ĐỘ TRỄ ĐẦU CUỐI - DCEM
Tính chi phí liên kết và chi phí đường đi
Hàm chi phí về năng lượng tiêu thụ trên một liên kết giữa hai nút trưởng cụm i và j đƣợc xác định theo công thức sau:
Trong đó, 𝐸 𝑅𝑥 𝑖 được xác định bằng công thức 3.2, là năng lượng mà nút trưởng cụm i dùng để nhận dữ liệu từ các nút thành viên, 𝐸 𝐹𝑢 𝑖 đƣợc xác định bằng công thức
3.3, là năng lượng mà nút trưởng cụm i dùng để tổng hợp dữ liệu từ m thành viên, 𝐸 𝑇𝑥 𝑖𝑗 được xác định bởi công thức 3.1, là năng lượng mà nút trưởng cụm i dùng để truyền dữ liệu đến nút trưởng cụm j kế tiếp là hệ số điều chỉnh sự phụ thuộc của hàm chi phí vào mức năng lƣợng còn lại E Re của mỗi nút cảm biến
Với mục đích cân bằng năng lƣợng giữa các nút cảm biến, hàm chi phí 𝑐𝑜𝑠𝑡 𝐸 𝑅𝑒 𝑖 đƣợc thiết kế dựa trên nguyên tắc sao cho thay đổi nhỏ về năng lƣợng còn lại của nút cảm biến dẫn đến thay đổi lớn trong hàm chi phí Theo nghiên cứu [80], hàm số mũ 𝑓 𝑥 = 𝑒𝑥𝑝 1 𝑥 2 thỏa nguyên tắc này Thay x bằng năng lƣợng còn lại 𝐸 𝑅𝑒 𝑖 của nút cảm biến i, ta có hàm chi phí sau:
Theo nghiên cứu [82], trong số các hàm cơ bản gồm x , e x , ln(x), sin(x), arctan(x)…, hàm e x là hàm có sự biến động rõ rệt nhất khi x thay đổi trong một khoảng nhỏ nhƣ minh họa trong hình 5.1 Hơn nữa, để cân bằng năng lƣợng giữa các nút cảm biến và kéo dài thời gian sống của mạng, hàm chi phí f(x) phải thỏa hai điều kiện sau:
- Khi x giảm dần về 0 thì hàm f(x) tăng dần đến +, và - Khi x càng giảm gần về 0 thì hàm f(x) càng tăng nhanh nhất
Hình 5.1 Sự biến thiên của các hàm cơ bản Vì vậy, hàm 𝑓 𝑥 = 𝑒 1 𝑔 𝑥 đƣợc chọn Trong đó, hàm 𝑔 𝑥 = 𝑥 𝛼 giảm nhanh về 0 khi x càng giảm về 0 Hình 5.2 minh họa sự biến thiên của hàm 𝑓 𝑥 = 𝑒 1 𝑥 𝛼 so với hàm 𝑓 𝑥 = 𝑒 1 𝑠𝑖𝑛 𝑥 , trong đó = 2 để giảm thời gian tính toán cho các nút cảm biến Trong hình 5.2, hàm 𝑓 𝑥 = 𝑒 1 𝑥 2 biến động mạnh hơn hàm 𝑓 𝑥 = 𝑒 1 𝑠𝑖𝑛 𝑥 , đặc biệt trong trường hợp x thuộc đoạn [0, 1]
51 Hình 5.2 Sự biến thiên của hàm lũy thừa x và hàm lƣợng giác sin(x) khi kết hợp với hàm số mũ e x
Hàm chi phí của một đường đi từ nút trưởng cụm x đến nút gốc sink s được xác định bởi công thức sau:
Trong đó, U là tập các nút trung gian từ nút trưởng cụm x đến nút gốc sink s.
Giải thuật định tuyến đa chặng
Mục đích của giải thuật này là tìm đường đi có chi phí thấp nhất (hiệu quả nhất về năng lượng) từ một nút trưởng cụm bất kỳ x đến nút gốc sink s sao cho độ trễ đầu cuối trên đường đi đó không vượt quá ràng buộc về độ trễ Nghĩa là, tìm:
Trong đó, R k là đường đi thứ k, Â(x,s) là tập các đường đi từ nút trưởng cụm x đến nút gốc sink s mà độ trễ đầu cuối bị chặn bởi giá trị Nghĩa là:
𝐷 𝑒𝑡𝑒 𝑅 𝑘 ≤ ∆, 𝑅 𝑘 ∈ ℜ 𝑥, 𝑠 (5.5) Để giải bài toán trên, giải thuật tìm đường ngắn nhất thứ k thỏa ràng buộc độ trễ đầu cuối đƣợc trình bày nhƣ trong hình 5.3
Algorithm 3 Xác định đường có năng lượng tiêu thụ thấp nhất thứ k thỏa ràng buộc độ trễ đầu cuối Đầu vào: thông điệp ADV từ nút gốc sink Đầu ra: đường có năng lượng tiêu thụ thấp nhất thứ k thỏa ràng buộc độ trễ đầu cuối 1 SeR = //là đường được chọn để phân phối dữ liệu từ nút x đến nút gốc sink
2 NoSa = //là tập các đường không thỏa ràng buộc độ trễ 3 Tính chi phí năng lượng tiêu thụ cost ij , i,j // là tập các nút trưởng cụm, j có thể là nút sink
4 Tính số đường khả thi K từ nút trưởng cụm x đến nút gốc sink s 5 Tìm K đường đi có chi phí năng lượng tiêu thụ thấp nhất từ nút trưởng cụm x đến nút gốc sink s kSR(x,s,K)
7 R k = kSR(x,s,k) \ NoSa 8 Tính độ trễ D ete (R k ) của đường R k 9 if D ete (R k ) then
Hình 5.3 Mã giả của giải thuật DCEM Đầu tiên, chi phí cost ij cho mỗi liên kết từ nút trưởng cụm i đến nút trưởng cụm hoặc nút gốc j đƣợc xác định (dòng 3) dựa vào hàm chi phí cho bởi công thức 5.1 Sau đó, tính số lượng đường đi có thể có K từ nút trưởng cụm x đến nút gốc s (dòng 4) dùng giải thuật tìm kiếm theo chiều sâu [83]
Gọi self là ID của nút cảm biến, k là số lượng đường ngắn nhất của mỗi nút trưởng cụm, path_struct là dãy ID của nút cảm biến để đi đến nút gốc sink, neig_paths là mảng gồm k đường của các nút lân cận, shortest_paths là mảng gồm k đường ngắn nhất từ mỗi nút đến sink, cấu trúc thông điệp SRM (Sink’s Ripple Cluster-head
Mapping) có dạng (Sink_ID, shortest_paths) Dựa vào [84], giải thuật tìm k đường ngắn nhất nhƣ đƣợc mô tả trong hình 5.4 Tại dòng 5 của giải thuật 3, giải thuật 4 đƣợc sử dụng để tìm k đường đi có chi phí thấp nhất dựa trên các công thức 5.1, 5.2 và 5.3
Sau khi tìm được đường đi có chi phí thấp nhất với k = 1, giải thuật tính độ trễ đầu cuối 𝐷 𝑒𝑡𝑒 𝑅 𝑘 cho đường đó sử dụng công thức 3.7 Sau đó sẽ kiểm tra xem độ trễ này có thỏa điều kiện ràng buộc về độ trễ hay không Nếu thỏa, đường R k được chọn (chính là SeR, dòng 9 và 10) Nếu không, đường R k bị loại bỏ và được đưa vào tập
NoSa (dòng 7 và 13) Tại dòng 7, các đường đi hiệu quả năng lượng nhưng không thỏa ràng buộc độ trễ đều bị loại bỏ
Algorithm 4 Tìm k đường ngắn nhất từ một nút x đến nút gốc sink s Đầu vào: thông điệp SRM, x, s, k Đầu ra: k đường ngắn nhất đến nút sink
1 if self thuộc shortest_paths trong thông điệp SRM then
2 loại bỏ thông điệp SRM 3 else
4 thêm đường trong shortest_paths vào neig_paths 5 while đường neig_paths do
6 gắn thêm self vào cuối path_struct 7 end while
8 sắp xếp neig_paths theo giá trị chi phí 9 gửi quảng bá thông điệp SRM mới với shortest_paths gồm k path_struct trong neig_paths
10 return mảng k path_struct trong neig_paths
Hình 5.4 Mã giả của giải thuật tìm k đường ngắn nhất
Phân tích tính hội tụ và độ phức tạp của giải thuật DCEM
Phần này sẽ phân tích để chứng minh rằng giải thuật đề xuất sẽ luôn kết thúc sau một khoảng thời gian hữu hạn và có độ phức tạp tính toán là một hàm đa thức Định lý 5.1: Nếu K đường đi từ nút trưởng cụm x đến nút gốc s, k : 1 k
K, giải thuật 3 hoặc tìm được k đường đi có chi phí ngắn nhất thỏa ràng buộc độ trễ đầu cuối hoặc không tìm ra đường đi nào trong một khoảng thời gian hữu hạn
Chứng minh: Nếu không tồn tại đường đi từ nút trưởng cụm x đến nút gốc sink s, giải thuật dừng ngay lập tức sau dòng 5 Ngược lại, nếu k đường đi có chi phí thấp nhất đƣợc tìm thấy tại dòng 5, nghiên cứu [84] đã chứng minh rằng giải thuật tìm k đường ngắn nhất luôn dừng sau một thời gian hữu hạn Khi đó, k: 1 k K, nếu
R k : D ete (R k ) , giải thuật sẽ dừng với SeR=R k (dòng 9) thỏa ràng buộc độ trễ đầu cuối Nếu không, giải thuật sẽ dừng mà không tìm được đường đi nào có độ trễ đầu cuối thỏa điều kiện ràng buộc (k = K, SeR = ) Nghĩa là dữ liệu sau đó sẽ không đƣợc phân phối đến nút gốc sink Định lý 5.2: Thời gian thực thi của giải thuật để tìm được đường đi từ một nút trưởng cụm cho trước đến nút gốc sink là O(n 2 )
Chứng minh: Giải thuật tìm kiếm theo chiều sâu trong [83] đã chứng minh rằng độ phức tạp tính toán của nó là O(N) với N là số lƣợng nút mạng Tại dòng 5, theo
54 [84], giải thuật tìm kiếm k đường ngắn nhất có độ phức tạp là O(n 2 ) với n là số nút trưởng cụm Tại dòng 6, vòng lặp For có độ phức tạp là O(cK) O(K), trong đó K là số lượng đường đi có thể có Rõ ràng là, tại dòng 5, độ phức tạp tính toán của cost ij cho bởi các công thức 5.1 và 5.2 là cố định với O(1) bởi vì nó đƣợc thực hiện trong một thời gian xác định Tương tự, tại dòng 8, độ phức tạp tính toán của D ete (x,s) cho bởi công thức 3.7 là cố định với O(1) Hơn nữa, tập các bước thực thi trong giải thuật 3 có dạng tuần tự không lồng nhau, nên độ phức tạp tính toàn của nó là O(N) + O(n 2 )+
O(K) O(1) O(n 2 ) Nói cách khác, độ phức tạp tính toán của giải thuật 3 là một hàm đa thức Điều này là hoàn toàn phù hợp để cài đặt giải thuật phân tán với một số lƣợng hữu hạn n nút cảm biến.
Đánh giá hiệu quả giải thuật DCEM
Sử dụng công cụ Castalia [66], giải thuật DCEM đƣợc thực hiện mô phỏng cho một WSN với 200 nút cảm biến trong một trường kích thước 100m×100m Nút gốc sink định vị ở tọa độ (0,0), kích thước gói dữ liệu là 30 bytes, = 3, = 6, năng lượng khởi tạo cho mỗi nút cảm biến là 1 Joule, Eelec = 50 nJ/bit, fs = 10 pJ/bit/m 2 , mp 0.0013 pJ/bit/m 4 , E fuse = 5 nJ/bit, = 250 bps, = 3.10 8 m/s Mô phỏng này cũng sử dụng các tham số dùng trong giao thức lớp T-MAC và các tham số khác đƣợc mô tả trong các bảng 3.1 và 4.1
Trong phần 5.1, hàm chi phí dựa trên năng lƣợng tiêu thụ đã đƣợc đề xuất để xác định đường đi có chi phí thấp nhất cho việc chuyển tiếp dữ liệu từ các nút trưởng cụm đến nút gốc sink Trong mô phỏng này, tính ƣu việt của hàm chi phí này (đƣợc chỉ ra trong các công thức 5.1, 5.2, và 5.3 được so sánh với các hàm chi phí trước đó Trong nghiên cứu [85], thay vì sử dụng năng lƣợng tiêu hao e ij nhƣ là hàm chi phí theo nghiên cứu trong [86], khi một gói dữ liệu đƣợc truyền đi giữa nút i và nút j, chi phí liên kết về cơ bản là tương đương với hàm chi phí cost ij = e ij /E i , trong đó e ij là năng lƣợng tiêu hao để truyền dữ liệu từ nút i đến nút j, E i là năng lƣợng còn lại của nút i
Phần này so sánh thời gian sống của mạng sử dụng các hàm chi phí khác nhau gồm cost ij = e ij , cost ij = e ij /E i và cost ij đƣợc đề xuất trong các công thức 5.1 và 5.2 Mô phỏng này đƣợc dùng để ƣớc lƣợng số lƣợng nút chết thông qua mỗi vòng (nút chết là nút đã sử dụng nhiều hơn 95% năng lƣợng của nó)
55 Hình 5.5 Số lƣợng nút cảm biến chết theo thời gian
Hình 5.6 Tổng năng lƣợng tiêu thụ của toàn mạng theo thời gian Theo kết quả trong hình 5.5, đường kẻ biểu diễn cho công thức 𝑐𝑜𝑠𝑡 𝑖𝑗 = 𝑒 𝑖𝑗 +𝑒𝑥𝑝 1 𝐸 𝑖 2 cho thấy rằng số lƣợng nút chết tăng chậm trong những vòng đầu nhƣng
56 tăng nhanh trong các vòng cuối Trong khi đó, số lượng nút chết trên các đường kẻ biểu diễn cho các công thức cost ij = e ij và cost ij = e ij /E i tăng đều đặn theo thời gian
Trong hình 5.6, đường kẻ biểu diễn cho công thức 𝑐𝑜𝑠𝑡 𝑖𝑗 = 𝑒 𝑖𝑗 + 𝑒𝑥𝑝 1 𝐸 𝑖 2 cho thấy rằng tổng năng lƣợng tiêu thụ tăng dốc đứng trong những vòng đầu nhƣng tăng chậm dần trong những vòng cuối Trong khi đó, tổng năng lượng tiêu thụ trong các đường kẻ biểu diễn cho các công thức cost ij = e ij và cost ij = e ij /E i tăng đều đặn theo thời gian
Các kết quả này đƣợc diễn giải bởi hàm số mũ theo năng lƣợng còn lại của nút cảm biến 𝑐𝑜𝑠𝑡 𝐸 𝑅𝑒 𝑖 trong công thức 5.2 đã đƣợc áp dụng trong hàm chi phí cho bởi các công thức 5.1 và 5.3 Giá trị của hàm số mũ này thay đổi một cách đáng kể khi năng lƣợng còn lại của nút thay đổi một lƣợng nhỏ Nếu sử dụng công thức cost ij = e ij , hàm chi phí cost ij đơn giản chỉ phụ thuộc vào khoảng cách giữa hai nút i và j bất chấp năng lƣợng còn lại của nút Tuy nhiên, nếu sử dụng công thức cost ij = e ij /E i , năng lƣợng còn lại của nút sẽ có tác động nhiều đến giá trị của hàm chi phí (trọng số của tham số năng lượng còn lại của nút E i tương đương với trọng số của tham số e ij Trong khi đó, hàm chi phí 𝑐𝑜𝑠𝑡 𝑖𝑗 = 𝑒 𝑖𝑗 + 𝑒𝑥𝑝 1 𝐸 𝑖 2 quan tâm tham số năng lƣợng còn lại của nút cảm biến E i nhƣ là một tham số chính Nghĩa là, E i chiếm một trọng số lớn hơn tham số e ij Vì vậy, năng lƣợng tiêu thụ giữa các nút cảm biến đƣợc cân bằng hơn
Mặc dù có nhiều giải pháp định tuyến hiệu quả năng lƣợng quan tâm đến độ trễ nhƣ đã trình bày trong phần 2.2.2, nhƣng hầu hết ƣớc lƣợng tính hiệu quả của các giải pháp này được thực thi trong các môi trường mô phỏng và nhiều tham số giả định khác nhau nên rất khó để đánh giá chính xác hiệu quả của chúng Trong khi đó, Gen- LEACH (Generalized Low Energy Adaptive Clustering Hierarchy) trong nghiên cứu [43] và Multihop-HEED trong nghiên cứu [45] có mô hình và giải thuật định tuyến gần tương tự với DCEM Vì vậy, trong phần này, hiệu suất thực thi của giải thuật
DCEM đƣợc ƣớc lƣợng để so sánh với hai giải thuật này Mô phỏng đƣợc thực thi năm lần, mỗi lần 50 vòng, mỗi vòng 20 giây Mỗi lần chạy được gán tương ứng với một giá trị ràng buộc độ trễ end-to-end khác nhau (∆ đƣợc gán từ 2s đến 10s, mỗi lần tăng 2s)
Các kết quả đƣợc trình bày trong các hình 5.7 và 5.8
Trong hình 5.7, kết quả là giá trị trung bình của năm lần chạy Trong Gen-LEACH, mỗi nút cảm biến i tự bầu chính nó để trở thành nút trưởng cụm với xác suất
57 𝐶𝐻 𝑝𝑟𝑜𝑏 𝑖 = 𝐸 𝑖 𝐸 𝑡𝑜𝑡𝑎𝑙 × 𝑘, 1 , trong đó E i là năng lƣợng còn lại của nút i và
𝐸 𝑡𝑜𝑡𝑎𝑙 = 𝑁 𝑖=1 𝐸 𝑖 Với Multihop-HEED, số lượng nút trưởng cụm tối ưu C opt được xác định và sử dụng như là tỷ lệ khởi tạo các nút trưởng cụm Điều này có thể giúp các nút cảm biến chết chậm hơn Gen-LEACH và Multihop-HEED đƣợc cài đặt cho các mạng đa chặng, tuy nhiên, không giao thức nào quan tâm đến ràng buộc độ trễ end-to-end
Bởi vậy, các nút cảm biến chỉ gửi dữ liệu đến nút gốc sink theo các khe thời gian đã được gán trong giai đoạn thiết lập cụm trước đó mà không quan tâm đến yêu cầu độ trễ có thể chấp nhận của ứng dụng Vì vậy, tổng năng lƣợng tiêu thụ bởi việc truyền dữ liệu với DCEM ít hơn đáng kể so với cả Gen-LEACH và Multihop-HEED Đó là lý do vì sao các nút cảm biến chết nhanh hơn sau mỗi vòng cho cả Gen-LEACH và Multihop-HEED so với DCEM nhƣ đƣợc thể hiện trong hình 5.7
Hình 5.7 Hiệu suất thực thi của các giao thức Gen-LEACH, Multihop-HEED và DCEM dựa trên số lƣợng nút cảm biến còn sống theo thời gian với cùng một giá trị ràng buộc độ trễ end-to-end Trong hình 5.8, tổng năng lƣợng tiêu thụ cho cả Gen-LEACH và Multihop-HEED luôn không đổi với bất kỳ giá trị nào của ràng buộc độ trễ ∆ (92J với Multihop-HEED và 129J với Gen-LEACH) Trong khi đó, với DCEM, tổng năng lƣợng tiêu thụ tăng lên khi ràng buộc độ trễ ∆ tăng Đặc biệt, khi ∆ ≥ 6s, tổng năng lƣợng tiêu thụ của
58 toàn mạng tăng lên một cách nhanh chóng Lý do đƣợc giải thích ở đây là vì khi giá trị ràng buộc độ trễ đầu cuối nhỏ hơn một ngưỡng nhất định với một kích thước mạng tương ứng (trong trường hợp này là 6s với 200 nút cảm biến trong một trường kích thước 100m×100m) thì khả năng thỏa mãn được ràng buộc này của ứng dụng là khá thấp nên số lượng các đường đi tìm được là rất ít Vì thế, việc chuyển tiếp dữ liệu đến nút gốc sink bị hạn chế Điều này cũng ảnh hưởng nhiều đến hiệu quả của việc nhận dữ liệu tại nút gốc sink Để giải quyết hạn chế này, trong từng ứng dụng cụ thể, việc chọn tham số ràng buộc độ trễ ∆ là yếu tố quan trọng ảnh hưởng đến khả năng thu thập dữ liệu tại nút gốc
Hình 5.8 Hiệu suất thực thi của các giao thức Gen-LEACH, Multihop-HEED và DCEM dựa trên tổng năng lượng tiêu thụ tương ứng với các giá trị ràng buộc độ trễ end-to-end khác nhau
Kết luận
Chương này đã nghiên cứu vấn đề cân bằng năng lượng tiêu thụ giữa các nút cảm biến và đã phân tích thiết kế hàm chi phí dựa trên mức năng lƣợng còn lại của các nút cảm biến Bên cạnh đó, giải thuật xác định k đường đi ngắn nhất theo chi phí được xác định trước đó với đảm bảo về ràng buộc độ trễ end-to-end của ứng dụng cũng đã được đề xuất Các phân tích toán học và kết quả mô phỏng cho thấy năng lƣợng tiêu thụ ở
59 các nút cảm biến đạt đƣợc sự cân bằng tốt và thời gian sống của toàn mạng vì thế cũng được kéo dài khi so sánh với các đề xuất tương tự Số chặng tối ưu cho một kích thước mạng cụ thể cũng đƣợc chỉ ra qua mô phỏng với sự điều chỉnh thích hợp một số tham số nhưng việc đưa ra một phương pháp xác định số chặng tối ưu trong trường hợp tổng quát cần đƣợc nghiên cứu thêm Ngoài ra, việc các nút cảm biến (đặc biệt là các nút trưởng cụm) bị chết do hết năng lượng hoặc hư hỏng trong quá trình truyền dữ liệu sẽ ảnh hưởng đến độ tin cậy của việc truyền Nghĩa là tỷ lệ phần trăm số lượng gói dữ liệu nhận được tại nút gốc sink so với số lượng gói đã truyền đi sẽ bị ảnh hưởng bởi việc các nút trưởng cụm này chết Điều này có thể khắc phục bằng cách điều chỉnh tham số thời gian phân phối dữ liệu cho mỗi vòng một cách phù hợp khi triển khai ứng dụng thực tế trong từng môi trường triển khai cụ thể
GIẢI THUẬT ĐỊNH TUYẾN PHÂN TÁN HIỆU QUẢ NĂNG LƢỢNG RÀNG BUỘC ĐỘ TRỄ ĐẦU CUỐI - DCEER
Giải thuật khám phá đường đi
Mỗi nút trưởng cụm phải có những thông tin sau để tìm đường đi tốt nhất và phân phối dữ liệu đến nút gốc sink
nextCH le : là nút trưởng cụm kế tiếp (gọi là nút j) làm cho nút i tiêu thụ ít năng lƣợng nhất để gửi dữ liệu đến nó (nút j) Nghĩa là:
𝑗 ∈𝑁 𝑖 𝐸 𝑇𝑥 𝑖, 𝑗 (6.2) Trong đó, N i là các nút trưởng cụm lân cận của nút trưởng cụm i, E Tx (i,j) là năng lượng dùng để truyền l bits dữ liệu từ nút trưởng cụm i đến nút trưởng cụm j trên khoảng cách d ij và đƣợc xác định bởi công thức sau:
nextCH ld : là nút trưởng cụm kế tiếp (gọi là nút j) làm cho nút i tốn ít thời gian nhất để gửi dữ liệu đến nó (nút j) Nghĩa là:
Trong đó, N i là các nút trưởng cụm lân cận của nút trưởng cụm i, Delay(i,j) là thời gian trễ để một gói dữ liệu l bits di chuyển trên liên kết từ nút trưởng cụm i đến nút trưởng cụm j và được xác định như công thức 3.6
ld(i,SINK): là thời gian ngắn nhất để nút trưởng cụm i gửi dữ liệu trực tiếp đến nút gốc sink Thời gian này đƣợc xác định nhƣ công thức 3.6, trong đó d ij đƣợc thay bằng d toSink , là khoảng cách vật lý trực tiếp giữa nút trưởng cụm i và nút gốc sink Khoảng cách này được xác định dựa vào giá trị RSSI có được trong bước đầu tiên của pha thiết lập cụm
Tại một thời điểm bất kỳ, nếu nút trưởng cụm i có dữ liệu gửi đến nút gốc sink, nó khởi động việc khám phá đường đi bằng cách kiểm tra giá trị ld(i,SINK) Nếu giá trị này lớn hơn ràng buộc độ trễ đầu cuối, không tồn tại bất kỳ đường đi nào giữa nút i và nút gốc sink thỏa mãn yêu cầu độ trễ Giải thuật sẽ dừng ngay việc khám phá và nút i sẽ không gửi dữ liệu đi Tuy nhiên, nếu giá trị ld(i,SINK) nhỏ hơn hoặc bằng ràng buộc độ trễ đâu cuối , nghĩa là tồn tại đường đi giữa nút i và nút gốc sink thỏa mãn yêu cầu độ trễ Giải thuật sẽ tiếp tục khám phá đường đi cho đến khi tìm thấy Trong trường hợp này, nút trưởng cụm i sẽ xác định nút trưởng cụm kế tiếp j thỏa mãn công thức 6.2 nhƣ là nút kế tiếp có mức tiêu thụ năng lƣợng thấp nhất để chuyển tiếp dữ liệu Sau đó, nút i sẽ gửi thông điệp LDR đến nút j để thu thập giá trị ld(j,SINK) Nút trưởng cụm j trả lại giá trị ld(j,SINK) mới nhất về cho nút trưởng cụm i Sau đó, nút trưởng cụm i kiểm tra bất đẳng thức sau:
𝐷𝑒𝑙𝑎𝑦(𝑐𝑢𝑟𝑟) + 𝐷𝑒𝑙𝑎𝑦(𝑖, 𝑗) + 𝑙𝑑(𝑗, 𝑆𝐼𝑁𝐾) ≤ ∆ (6.5) Trong đó, Delay(curr) là thời gian trễ từ nút bắt đầu của đường đi này đến nút trưởng cụm hiện tại Trong trường hợp này, nút hiện tại là nút trưởng cụm i
Nếu bất đẳng thức này thỏa mãn, tồn tại đường đi từ nút trưởng cụm i đến nút gốc sink đảm bảo ràng buộc độ trễ và sử dụng liên kết từ i đến j để chọn đường đi có
62 mức năng lượng thấp nhất Khi đó, nút trưởng cụm i sẽ chọn nút trưởng cụm j làm nút kế tiếp để chuyển tiếp dữ liệu đến nút gốc sink Nếu bất đẳng thức 6.5 không thỏa mãn, nút i sẽ chọn nút trưởng cụm khác gọi là k thỏa mãn công thức 6.4 như là nút kế tiếp có thời gian trễ ít nhất để chuyển tiếp dữ liệu Lựa chọn này đảm bảo rằng đường đi từ nút trưởng cụm hiện tại i đến nút gốc sink là một phần của ít nhất một đường đi thỏa ràng buộc độ trễ từ nút khởi tạo đến nút gốc sink, nếu không thì nút trưởng cụm hiện tại đã không được chọn trong bước trước đó
Sau khi chọn đường liên kết (nút trưởng cụm kế tiếp) để chuyển tiếp dữ liệu, nút trưởng cụm i tạo một mục trong bảng định tuyến cho đường đi này Nó chứa những thông tin nhƣ thể hiện trong hình 6.1: routeCODE initCH prevCH nextCH Delay(curr)
Hình 6.1 Một mục trong bảng định tuyến của một nút trưởng cụm Với một nút trưởng cụm hiện tại i (CH i ) của đường đi này được xác định bởi routeCODE, initCH là nút khởi tạo của đường đi này, prevCH là nút trưởng cụm lân cận đứng ngay trước nút CH i của đường đi này, và nextCH là nút trưởng cụm lân cận đứng ngay sau nút CH i của đường đi này nextCH là nextCH le nếu công thức 6.5 được thỏa, ngược lại nextCH là nextCH ld Delay(curr) là độ trễ từ nút initCH đến nút trưởng cụm hiện tại của đường đi này
Sau đó, nút trưởng cụm hiện tại tạo một giá trị mới gọi là Delay(nextCH) Đây là độ trễ của đường đi đã được hình thành từ nút trưởng cụm khởi tạo đến nút trưởng cụm kế tiếp Giá trị này đƣợc xác định bằng cách cộng giá trị Delay(currCH, nextCH) vào Delay(curr) Nghĩa là:
Sau cùng, nó gửi thông điệp CCR đến nút trưởng cụm kế tiếp Thông điệp này chứa các thông tin nhƣ thể hiện trong hình 6.2 routeCODE initCH Delay(nextCH) Delay(curr)
Hình 6.2 Cấu trúc thông điệp CCR
Trong hình 6.2, là giá trị độ trễ ràng buộc của đường đi được xác định bởi routeCODE Nếu bất kỳ nút trưởng cụm j nào không phải là sink nhận thông điệp CCR, nó trở thành nút trưởng cụm hiện hành của đường đi này Nút trưởng cụm j này
63 chọn một nút trưởng cụm kế tiếp, tạo ra một mục trong bảng định tuyến và khám phá đường đi theo cách tương tự như mô tả bên trên Vào lúc này, giá trị prevCH trong mục của bảng định tuyến của nút trưởng cụm j là nút trưởng cụm i, là nút đã gửi thông điệp CCR cho nút j Khi nút sink nhận thông điệp CCR, nó gửi một thông điệp ACK ngược trở lại cho nút trưởng cụm khởi tạo đường đi này Khi nút khởi tạo nhận được thông điệp ACK, nó bắt đầu truyền dữ liệu đến nút gốc sink theo đường đi vừa mới khám phá được trước đó Chi tiết của giải thuật chọn nút trưởng cụm kế tiếp được mô tả trong hình 6.3
Algorithm 5 Tìm nút trưởng cụm kế tiếp tiêu thụ ít năng lượng nhất và thỏa ràng buộc độ trễ đầu cuối – Find_NextCH(Input,Output)
Input: prevCH, initCH, SINK, ∆, Delay(curr) Output: nextCH
Nút trưởng cụm hiện hành là nút khởi tạo
1 if (prevCH = null | Delay(curr) = 0 | initCH = i) then
2 if ld(i, SINK) > then 3 nextCH = null
Tất cả các nút trưởng cụm tham gia cấu trúc đường đi
7 for j=0 to N i -1 do 8 nextCH le = minE Tx (i, j)
11 if (Delay(curr)+Delay(i,temp)+ld(temp, SINK)) then 12 nextCH = temp
14 for j=0 to N i -1 do 15 nextCH ld = minDelay(i,j) 16 end for
19 Delay(nextCH)ay(curr)+Delay(i,nextCH)
Hình 6.3 Mã giả của giải thuật DCEER
Phân tích tính hội tụ và độ phức tạp của giải thuật DCEER
Phần này sẽ phân tích để chứng minh rằng giải thuật đề xuất sẽ luôn kết thúc sau một khoảng thời gian hữu hạn Ngoài ra, chi phí trao đổi thông điệp đƣợc chứng minh là một hàm đa thức, trong khi độ phức tạp tính toán của DCEER là một hàm tuyến tính Đường đi được tạo bởi k nút trưởng cụm được biểu diễn là R k R k : CH 0 → → CH k Đường đi R k+1 được tạo bằng cách thêm một liên kết vào R k Gọi k = {CH 0 , ,
CH k } là tập các nút trưởng cụm của đường đi R k Cũng gọi k = {R 0 , , R k } là tập các đường đi đã được hình thành đến bước thứ k Ta có các định lý sau: Định lý 6.1: Giải thuật DCEER luôn hoặc tìm được đường đi tiêu thụ năng lượng ít nhất đảm bảo ràng buộc độ trễ đầu cuối nếu tồn tại một đường như thế hoặc không tìm được đường đi nào trong một khoảng thời gian hữu hạn
Chứng minh: Nếu không tồn tại đường đi nào từ một nút trưởng cụm i cho trước đến nút gốc sink, nghĩa là ld(i, SINK) > ∆ (dòng 2), giải thuật dừng ngay sau dòng 4 mà không khám phá được đường đi Ngược lại, nghĩa là ld(i, SINK) ≤ ∆, giải thuật tiếp tục thực hiện cho đến khi một đường đi được tìm thấy Điều này được chứng minh bằng phương pháp quy nạp như sau:
Với k=0, nút trưởng cụm i là nút trưởng cụm khởi tạo và nó kết nối trực tiếp đến nút gốc sink, nghĩa là R 0 =CH 0 , ℜ 0 = R 0 Bởi vì Delay(R 0 )=0 và ld(CH 0 , SINK) ∆, nên giải thuật dừng ngay tức thì với nextCH = SINK
𝐷𝑒𝑙𝑎𝑦 𝑅 𝑘 + 𝑙𝑑(𝐶𝐻 𝑘 , 𝑆𝐼𝑁𝐾) ≤ ∆ (6.7) Có hai trường hợp sau xảy ra
Trường hợp 1: R k+1 mở rộng một đường đi R k ∈ ℜ k bằng cách thêm liên kết đã chọn nextCH le như là nút trưởng cụm kế tiếp từ nút CH k để đi theo đường đi có năng lượng tiêu thụ ít nhất Khi đó, bất đẳng thức sau phải đƣợc thỏa mãn:
Trường hợp 2: R k+1 mở rộng một đường đi R j ∈ℜ k (0 ≤ j ≤ k) bằng cách thêm liên kết đã chọn nextCH ld như là nút trưởng cụm kế tiếp từ nút CH j để đi theo đường đi có độ trễ ngắn nhất: Nghĩa là:
𝑙𝑑 𝐶𝐻 𝑗 , 𝑆𝐼𝑁𝐾 = 𝐷𝑒𝑙𝑎𝑦 𝐶𝐻 𝑗 , 𝐶𝐻 𝑘+1 + 𝑙𝑑 𝐶𝐻 𝑘+1 , 𝑆𝐼𝑁𝐾 (6.10) Vì vậy, bất đẳng thức sau phải đƣợc thỏa mãn:
65 Trong cả hai trường hợp trên, rõ ràng là độ trễ đầu cuối của đường đi R k+1 luôn nhỏ hơn hoặc bằng giá trị độ trễ ràng buộc ∆ vì bất đẳng thức 6.9 và bất đẳng thức
6.12 là nhƣ nhau Vì vậy, định lý 6.1 đƣợc chứng minh Định lý 6.2: Đường đi được xác định bởi giải thuật DCEER từ một nút trưởng cụm i cho trước đến nút gốc sink không bị lặp đường vòng
Chứng minh: Gọi ℑ j là tập các nút trưởng cụm của đường đi R j Một vòng lặp chỉ được tạo ra nếu tồn tại một liên kết được thêm vào bằng cách kết nối nút trưởng cụm j với một nút trưởng cụm k khác, trong đó CH k CH j và CH k ∈ ℑ j Tuy nhiên, một mục của bảng định tuyến của nút trưởng cụm k chỉ ra rằng đã tồn tại một liên kết giữa nút j và nút k cho đường đi này Vì vậy, mục mới này sẽ không được thêm vào bảng định tuyến Nói cách khác, đường đi được tạo bởi giải thuật DCEER không sinh ra đường lặp vòng Định lý 6.2 được chứng minh Định lý 6.3: Độ phức tạp tính toán của giải thuật DCEER là một hàm tuyến tính
O(n) với n là ƣớc số của số lƣợng nút cảm biến trong một WSN
Chứng minh: Nhƣ đã chứng minh trong định lý 3.1, độ phức tạp tính toán của giải thuật 1 đƣợc xác định là một hàm tuyến tính O(m) với m là số lƣợng nút trung bình của mỗi cụm trong một WSN
Bên cạnh đó, độ phức tạp tính toán của giải thuật 5 tại mỗi nút trưởng cụm để cấu trúc một đường đi giữa một nút trưởng cụm i cho trước và nút gốc sink cũng là một hàm tuyến tính O(N i ) với N i là số nút trưởng cụm lân cận của nút i Bởi vì mỗi lần một nút trưởng cụm nhận thông điệp CCR, nó chỉ thực hiện kiểm tra điều kiện về giá trị độ trễ (dòng 1, 2, và 11) và tính toán các giá trị nhỏ nhất của độ trễ và năng lƣợng tiêu thụ cho mỗi liên kết đầu ra (dòng 8, 15, và 19) để chọn nút trưởng cụm kế tiếp với một số lượng hữu hạn các nút lân cận N i Trong trường hợp xấu nhất, các tính toán tại dòng 8 và dòng 15 tốn N i lần cho mỗi dòng Vì vậy, số lượng phép tính được xác định tương ứng sẽ là O(N i ) + O(N i ) O(N i )
Kết quả là, độ phức tạp tính toán của giải thuật DCEER là một hàm tuyến tính
O(m) + O(N i ) O(n) với n là ƣớc số của số lƣợng nút cảm biến trong một WSN Định lý 6.3 đƣợc chứng minh Định lý 6.4: Độ phức tạp trao đổi thông điệp của giải thuật DCEER là một hàm đa thức O(n 2 ), với n là ƣớc số của số lƣợng nút cảm biến trong một WSN
Chứng minh: Nhƣ đã chứng minh trong định lý 3.2, chi phí trao đổi thông điệp của giải thuật 1 là O(n 2 ) với n là ƣớc số của số lƣợng nút cảm biến trong một WSN
Bên cạnh đó, trong giải thuật 5, dễ thấy rằng số lƣợng thông điệp cần để cấu trúc một đường đi tỷ lệ thuận với số lượng liên kết của đường đi đó Cho mạng với mong muốn có K cụm, đường đi dài nhất không có lặp vòng chứa nhiều nhất K nút trưởng cụm và (K – 1) liên kết Vì vậy, cấu trúc đường đi không có lặp vòng cần O(K) thông điệp trong trường hợp xấu nhất
Kết quả là chi phí trao đổi thông điệp của giải thuật DCEER là một hàm đa thức
O(n 2 ) + O(K) O(n 2 ) Định lý 6.4 đƣợc chứng minh.
Đánh giá hiệu quả giải thuật DCEER
Độ trễ một chặng tối đa phụ thuộc vào độ trễ nhỏ nhất từ nút xa nhất đến nút gốc sink Để đảm bảo các nút trưởng cụm có thể tìm được đường đi phù hợp đến nút gốc, ràng buộc độ trễ end-to-end không đƣợc nhỏ hơn giá trị độ trễ nhỏ nhất này Ngoài ra, để giảm nhiễu giữa các nút lân cận và đảm bảo các nút trưởng cụm có thể tìm được đường đi phù hợp đến nút gốc sink mà không bị thất bại, dải truyền thông tối đa được thiết lập dựa vào giá trị RSSI theo công thức 3.8
Mô phỏng này đƣợc thực hiện cho các WSN dạng cụm dùng công cụ Castalia
[66] Các tham số sau đây đƣợc thiết lập chung cho các kịch bản mô phỏng Kích thước gói dữ liệu là 30 bytes, = 3, = 6, năng lượng khởi tạo cho mỗi nút cảm biến là 1 Joule, Eelec = 50 nJ/bit, fs = 10 pJ/bit/m 2 , mp = 0.0013 pJ/bit/m 4 , E fuse = 5 nJ/bit,
= 250 bps, = 3.10 8 m/s, và α = β = 0.5 Mô phỏng này cũng sử dụng các tham số dùng trong giao thức lớp T-MAC và các tham số đƣợc mô tả trong các bảng 3.1 và 4.1
Các tham số khác sẽ đƣợc thiết lập theo từng kịch bản mô phỏng cụ thể
Trong kịch bản mô phỏng đầu tiên, số lƣợng thông điệp trung bình để cấu trúc các đường đi hiệu quả năng lượng đáp ứng ràng buộc độ trễ end-to-end được ước lượng Mô phỏng này được thực hiện lặp lại bằng cách tăng dần kích thước mạng khởi đầu từ 100 nút cảm biến (100, 200, 300, 400, và 500) Với mỗi kích thước mạng, kịch bản mô phỏng thay đổi giá trị ràng buộc độ trễ từ 2s đến 10s (với các kích thước mạng, độ trễ được thiết lập tương ứng là 2s, 4s, 6s, 8s, và 10s) Với mỗi giá trị ràng buộc độ trễ của cùng một kích thước mạng, mô phỏng được thực hiện năm lần Áp dụng với
67 giải thuật DCEER, mô phỏng đo số lƣợng thông điệp trung bình đƣợc chuyển qua lại giữa các nút cảm biến Với mức tin cậy 95%, các khoảng tin cậy đƣợc chỉ ra cho mỗi giá trị ràng buộc độ trễ tương ứng
Hình 6.4 cho thấy số lượng thông điệp trung bình theo kích thước mạng cho năm giá trị ràng buộc độ trễ khác nhau Tất cả năm đường cong của hình 6.4 chỉ ra rõ ràng rằng số lƣợng thông điệp trung bình tăng lên rất đều và không đột biến theo sự lớn lên của kích thước mạng Điều này cho thấy DCEER rất phù hợp để triển khai cho các mạng với kích thước lớn
Hình 6.4 Số lượng thông điệp trung bình theo kích thước mạng Hơn nữa, dễ thấy rằng ràng buộc độ trễ end-to-end càng nhỏ thì số lƣợng liên kết trên mỗi đường đi càng ít đi mặc dù số lượng thông điệp trung bình được trao đổi giữa các nút trưởng cụm để cấu trúc đường đi có thể không ít hơn một cách tương ứng
Thậm chí, trong vài trường hợp, số lượng thông điệp trao đổi trung bình có thể còn nhiều hơn Tuy nhiên, một cách trung bình, số lƣợng thông điệp đƣợc trao đổi giữa các nút trưởng cụm sẽ giảm khi ràng buộc độ trễ end-to-end được điều chỉnh giảm Đó là
68 bởi vì các nút trưởng cụm bị ép đi theo hướng đường đi có độ trễ ngắn nhất hầu hết các trường hợp khi ràng buộc độ trễ có giá trị nhỏ Với mạng có kích thước 400 nút cảm biến, khi ràng buộc độ trễ ∆ có giá trị 2s, số lƣợng thông điệp trao đổi giữa các nút trưởng cụm là nhỏ nhất, chẳng hạn, khoảng trên dưới 133 thông điệp như trong hình 6.4 Khi giá trị ràng buộc độ trễ ∆ đƣợc tăng lên 6s, số lƣợng thông điệp trao đổi là lớn nhất, nhiều hoặc ít hơn 253 thông điệp Tuy nhiên, khi giá trị độ trễ ∆ đƣợc tăng lên 10s, số lƣợng thông điệp trao đổi lại giảm xuống, nhiều hoặc ít hơn 232 thông điệp
Lý do ở đây là 6s là một giá trị hợp lý của ràng buộc độ trễ ∆, và DCEER có thể đi theo hướng chọn đường đi có năng lượng tiêu thụ ít nhất ở một vài nút trưởng cụm và đi theo hướng chọn đường đi có độ trễ ngắn nhất ở một vài nút trưởng cụm khác Điều này làm tăng số lượng thông điệp trung bình được trao đổi giữa các nút trưởng cụm để chọn nút trưởng cụm kế tiếp Bên cạnh đó, với một giá trị lỏng lẻo hơn của ràng buộc độ trễ ∆, 10s, một nút trưởng cụm có thể sẽ đi theo hướng chọn đường đi tiêu tốn ít năng lượng nhất hầu hết các trường hợp mà không vi phạm yêu cầu về độ trễ end-to- end của ứng dụng Vì vậy, số lƣợng thông điệp trung bình đƣợc trao đổi giữa các nút trưởng cụm được giảm xuống
Hình 6.5 Hiệu suất thực thi của các giao thức Multihop-HEED, DEM và DCEER dựa trên số lƣợng nút cảm biến còn sống ứng với giá trị ràng buộc độ trễ tối ƣu
69 Trong kịch bản mô phỏng thứ hai, hiệu suất thực thi của giao thức DCEER đƣợc ƣớc lƣợng để so sánh với giao thức Multihop-HEED trong nghiên cứu [45] và giao thức DEM trong nghiên cứu [1] dựa trên thời gian sống của mạng Cả ba giao thức đều được thiết lập chung một môi trường với năm lần thực thi lặp lại cho mỗi kịch bản mô phỏng Kích thước mạng gồm 200 nút cảm biến được phân bố trong một trường kích thước 100m × 100m Nút gốc sink được định vị ở tọa độ (0,0) Với mức tin cậy 95%, kết quả mô phỏng đƣợc trình bày với các khoảng tin cậy trong hình 6.5 Để đánh giá thời gian sống của mạng giữa các giao thức, kịch bản mô phỏng ƣớc lƣợng số lƣợng nút cảm biến còn sống sau mỗi vòng bằng cách cài đặt 50 vòng lặp cho mỗi lần chạy và cố định ràng buộc độ trễ end-to-end với giá trị 6s
Trong hoạt động của giao thức Multihop-HEED, giao thức định tuyến nguồn động DSR (Dynamic Source Routing) nhƣ trong nghiên cứu [88] đƣợc dùng để truyền thông giữa các nút trưởng cụm, hoặc giữa các nút trưởng cụm và nút gốc sink Tuy nhiên, giao thức này chọn các đường đi hiệu quả năng lượng nhất để chuyển tiếp thông điệp định tuyến bất chấp yêu cầu độ trễ end-to-end của ứng dụng
Mặt khác, cả DCEER và DEM là các giao thức định tuyến đa chặng giữa các cụm có quan tâm đến yếu tố độ trễ end-to-end trong quyết định chọn đường Tuy nhiên, để giảm không gian tìm kiếm và tiết kiệm nhiều năng lƣợng hơn, giao thức DCEER sử dụng các đường đi kết hợp thay vì các tham số kết hợp như cách mà giao thức DEM đã sử dụng Nghĩa là, với DEM, hàm chi phí là sự kết hợp của độ trễ và năng lƣợng tiêu thụ Vì vậy, tổng năng lƣợng tiêu thụ do việc truyền dữ liệu đối với DCEER ít hơn đáng kể so với Multihop-HEED nhƣng ít hơn không nhiều so với DEM Điều này dẫn tới việc các nút cảm biến chết nhanh hơn sau mỗi vòng đối với cả
Multihop-HEED và DEM khi so với DCEER nhƣ đƣợc trình bày trong hình 6.5 Vì vậy, DCEER kéo dài thời gian sống của mạng tốt hơn cả Multihop-HEED và DEM
Trong kịch bản mô phỏng thứ ba, hiệu quả năng lƣợng và độ tin cậy truyền dữ liệu đƣợc đánh giá, năm lần chạy cho cùng một kịch bản mô phỏng với cùng kích thước mạng nhưng nhiều giá trị ràng buộc độ trễ end-to-end khác nhau Mỗi lần chạy đƣợc gán một giá trị ràng buộc độ trễ khác nhau, nghĩa là, giá trị ∆ chạy từ 2s đến 10s với khoảng cách 2s cho mỗi lần chạy một cách tương ứng Với mức tin cậy 95%, kết quả đƣợc trình bày với các khoảng tin cậy trong các hình 6.6 và 6.7
70 Hình 6.6 Hiệu quả năng lƣợng của các giao thức Multihop-HEED, DEM và
Kết luận
Chương này đã nghiên cứu và đề xuất một giải thuật định tuyến phân tán để tìm đường đi hiệu quả năng lượng đảm bảo ràng buộc độ trễ end-to-end Các phân tích toán học đã chứng minh giải thuật đề xuất có độ phức tạp tính toán và trao đổi thông điệp điều khiển thấp và vì thế có thể đƣợc áp dụng cho các mạng cảm biến không dây với số lƣợng lớn các nút cảm biến Qua mô phỏng, nếu giá trị ràng buộc độ trễ end-to- end đƣợc điều chỉnh hợp lý, giải thuật đƣợc đề xuất cho thấy khả năng cân bằng năng lƣợng tiêu thụ tốt các nút cảm biến cũng nhƣ khả năng kéo dài thời gian sống của toàn mạng tốt hơn khi so sánh với các giải thuật tương tự Mặc dù vậy, độ phức tạp trong trao đổi thông điệp điều khiển vẫn là một hàm đa thức nên việc cải tiến để số lƣợng thông điệp trao đổi trong quá trình khám phá đường đi đạt độ phức tạp tuyến tính cần đƣợc nghiên cứu thêm