các hoạt động đo, truyền thông và thu thập năng lượng
Mục đích thử nghiệm là mô phỏng quá trình năng lượng của các nút cảm biến khi hoạt động kết hợp giữa các chế độ đo lường, truyền thông, thu thập năng lượng mặt trời và sạc cho pin.
Một mạng được thiết lập với 150 nút cảm biến trong phạm vi 30m×30m. Trong đó, nút 1 là nút chủ và có tọa độ là (15,15), các nút còn lại sẽ được gán tọa độ ngẫu nhiên khi chạy mô phỏng. Tọa độ của các nút cũng như định tuyến truyền thông từ các nút đến nút chủ được cố định trong suốt quá trình mô phỏng.
Kịch bản được cài đặt cho tất cả các nút trong mạng đều hoạt động với các chế độ đo lường, truyền thông, thu thập năng lượng mặt trời và sạc cho pin. Trong kịch bản để đơn giản, giả sử cường độ ánh sáng giữa các ngày là ổn định và giống nhau.
Các nút sử dụng cùng một loại pin có dung lượng lớn nhất là 3500mAh và ban đầu có cùng dung lượng là 2500mAh. Các nút hoạt động luân chuyển giữa hai chế độ đo lường và truyền thông theo chu kỳ thời gian được cài đặt trước. Việc thu thập năng lượng được hoạt động liên tục trong khoảng thời gian là ban ngày. Hoạt động truyền thông trong mạng có định tuyến theo cấu trúc hình cây.
Kết quả mô phỏng hoạt động truyền thông của mạng được thể hiện như trong Hình 3.32, đồng thời quá trình diễn biến về dung lượng pin cũng như thu thập năng lượng mặt trời được thể hiện như trong Hình 3.33.
Hình 3.32. Quá trình truyền thông của các nút đến nút chủ theo định tuyến có cấu trúc hình cây
Kết quả mô phỏng truyền thông, theo quan sát trên Hình 3.32 cho thấy các nút được đinh tuyến truyền thông có cấu trúc hình cây. Các bản tin đều được truyền về nút chủ (nút 1) ở trung tâm có tọa độ (15, 15) theo các tuyến đường cố định. Các nút có màu càng đậm thể hiện số bản tin nhận được càng nhiều. Điều này có thể cũng có nghĩa vai trò, mức độ quan trọng về truyền thông của nút trong mạng càng cao. Ví dụ như nút 30, nút 69 và nút 62… Tuy nhiên, hình ảnh trực quan chỉ thị về màu cho ý nghĩa này chỉ mạng tính tương đối, không đúng cho tất cả các nút. Ví dụ, trường hợp của nút 31, vai trò của nút có mức độ quan trọng rất cao thể hiện có nhiều định tuyến qua nó, nhưng trong mô phỏng này màu của nó lại nhạt. Nguyên nhân do nút này đã sớm bị hết pin thể hiện trên Hình 3.33, nên số lượng bản tin nhận được trong cả quá trình mô phỏng sẽ không nhiều.
Kết quả mô phỏng trên Hình 3.33 biểu diễn quá trình năng lượng của các nút mạng trong khoảng thời gian 6 ngày (144h). Các khoảng nền màu trắng thể hiện thời gian ban ngày và các khoảng nền màu xám là ban đêm. Đồ thị ở phần dưới cùng biểu diễn cường độ bức xạ ánh sáng theo thời gian trong ngày. Phần đồ thị ở trên cùng và ở giữa biểu diễn dung lượng pin và năng lượng thu được từ mặt trời của từng nút. Để dễ quan sát, kết quả mô phỏng được trích xuất cho 7 nút đại diện cho các nút với vị trí và vai trò cơ bản trong mạng bao gồm các nút 1, 30, 31, 69, 77, 82, 107. Số liệu cơ bản về quá trình hoạt động của các nút này được biểu diễn như trong Bảng 3.5.
Bảng 3.5. Số liệu quá trình hoạt động của các nút
Số liệu quá trình
hoạt động Nút 1 Nút 30 Nút 31 Nút 69 Nút 77 Nút 82 Nút 107 Số nút có định tuyến qua 149 30 47 24 16 0 0 Số bản tin truyền 0 15608 3431 13437 9020 668 662 Số bản tin nhận 57550 16646 3698 14200 9356 0 0 Dung lượng pin lớn nhất
(mAh) 3500 3444,1 2500 3500 3500 3500 3500 Dung lượng pin nhỏ nhất
(mAh) 1149,3 1268,5 0 1796,1 2160,2 2417,0 2410,5 Nút 1 là nút chủ phải tham gia công việc truyền thông và nhận tất cả các bản tin của các nút gửi về nên tiêu thụ năng lượng lớn và dung lượng pin luôn giảm nhanh. Các nút gần nút chủ và đóng vai trò trung gian truyền thông cho nhiều nút khác nên mức tiêu thụ cũng rất lớn như các nút 30, 31, 69. Các nút tiêu thụ năng lượng lớn thì mức thu năng lượng cũng sẽ lớn được biểu thị trên phần hình ở giữa tương ứng.
Kết quả cho thấy nút 30 và nút 69 đảm nhiệm truyền thông cho các nhánh mạng và tiêu tốn nhiều năng lượng. Nhưng do các hoạt động đo lường và truyền thông của các nút trong các nhánh này theo một chu kỳ phù hợp, dẫn đến các thời điểm pin của hai nút này giảm xuống thấp thì cũng đúng vào lúc trời sáng nên thu thập được năng lượng đủ dùng cho ban đêm. Mặt khác, nhánh do nút 31 đảm nhiệm trung gian truyền thông có thể sự hoạt động truyền thông quá lớn, chu kỳ hoạt động của các nút trong nhánh này không phù hợp nên nút 31 đã bị giảm dung lượng pin nhanh vào thời điểm gần bắt đầu ban đêm và không thu được năng lượng nên nút đã bị dừng hoạt động.
Kết quả của thử nghiệm này cho thấy nền tảng có thể mô phỏng được hoạt động của một mạng cảm biến với các hoạt động của các nút trong mạng, đồng thời mô phỏng được quá trình năng lượng của nút cũng như quá trình thu thập năng lượng từ môi trường với các yếu tố ràng buộc về thời gian và môi trường. Qua đó cũng cho thấy nếu mạng được định tuyến tốt, các nút trong mạng có sự hoạt động theo một chu kỳ hợp lý thì các nút mạng có thể sẽ được bổ sung năng lượng kịp thời và không rơi vào trạng thái hết pin giúp cho mạng có thể hoạt động ổn định lâu dài.
3.5. Kết luận chương
Nghiên cứu, phát triển tối ưu hóa mạng cảm biến, đặc biệt là các vấn đề liên quan đến năng lượng của nút mạng cũng như toàn mạng. Một phần mềm mô phỏng mạng cảm biến hỗ trợ trong mô phỏng tính đến năng lượng của các nút mạng và toàn mạng là rất cần thiết. Tuy nhiên, đây lại là vấn đề tồn tại của các phần mềm mô phỏng mạng cảm biến sẵn có. Luận án đã đề xuất và xây dựng nền tảng mô phỏng mạng cảm biến với sự quan tâm đặc biệt đến mức tiêu thụ năng lượng, quá trình năng lượng và trạng thái năng lượng của từng nút cảm biến ở từng chế độ hoạt động. Để thực hiện mục tiêu đề xuất, nghiên cứu trong chương này đã thực hiện các công việc như sau:
▪ Phân tích, thiết kế các chức năng hệ thống cho nền tảng mô phỏng quan tâm
đặc biệt đến vấn đề năng lượng. Điều này được thể hiện trong các đặc tả chức năng thiết lập mạng, thiết lập môi trường đặt mạng với các thành phần, yếu tố liên quan đến năng lượng.
▪ Mô hình hóa nút cảm biến theo quan điểm về năng lượng với năm mô đun
cơ bản tương đồng với cấu trúc và chức năng của các nút cảm biến trong thực tế. Điều này thuận lợi cho việc xem xét và mô phỏng về năng lượng cho từng chế độ hoạt động của nút, đồng thời đây cũng là một điểm khác biệt với các phần mềm mô phỏng sẵn có khác. Việc phân tích chức năng nhiệm vụ của các mô đun cấu thành nút và mạng cảm biến dựa trên năm mô đun sẽ giúp thuận lợi và rõ ràng hơn trong việc xây dựng nền tảng mô phỏng mạng cảm biến tính đến yếu tố năng lượng.
▪ Lập các sơ đồ chức năng cho nền tảng mô phỏng và xây dựng các sơ đồ lớp
đối tượng phục vụ việc thiết kế và viết chương trình mô phỏng theo hướng đối tượng và hướng sự kiện.
▪ Bước đầu xây dựng thư viện tối thiểu với các mô đun cần thiết cho mục
đích nghiên cứu của đề tài. Các mô đun được xây dựng dựa trên các mô hình sẵn có là các kết quả của các nghiên cứu đã được công nhận và áp dụng trong thực tiễn, như thư viện mô đun pin, mô đun nguồn, mô đun cảm biến, mô đun truyền thông.
▪ Nền tảng mô phỏng thể hiện được tính đúng đắn trong mô phỏng năng lượng qua các kết quả thử nghiệm. Bên cạnh đó, nghiên cứu đã thực nghiệm chế tạo nút cảm biến đo thông số môi trường với cấu trúc gồm các mô đun độc lập tương đồng mô hình nút trong nền tảng và hoạt động theo các chế độ như ngủ, chờ, đo lường và truyền thông. Nút được chế tạo nhằm phục vụ mục đích thử nghiệm nền tảng mô phỏng với mối quan tâm đến năng lượng như các quá trình năng lượng, mức tiêu thụ năng lượng trong từng chế độ hoạt động của nút cảm biến. Từ đó, phát triển mô phỏng tính toán, giám sát năng lượng của nút và toàn mạng theo một kịch bản.
▪ Nền tảng đã được chạy thử mô phỏng với các thử nghiệm mô phỏng hoạt
động của mạng đồng thời thể hiện khả năng mô phỏng về năng lượng của mạng như sau:
-Mô phỏng mô đun pin của nút cảm biến với quá trình năng lượng như sạc,
xả, mức năng lượng tiêu hao hay năng lượng còn lại của pin.
-Mô phỏng giám sát quá trình, trạng thái và mức tiêu thụ năng lượng ở từng
chế độ hoạt động của nút cảm biến.
-Mô phỏng quá trình truyền thông trong mạng theo một số kịch bản với giao
thức định tuyến, cấu trúc liên kết mạng và các ràng buộc do người dùng cài đặt cho kết quả khả quan.
-Nghiên cứu cũng đã thực hiện mô phỏng một mạng với các hoạt động của
các nút mạng gắn liền với hoạt động thu năng lượng từ mặt trời và đưa ra các kết quả giám sát về năng lượng của từng nút trong mạng.
Các kết quả này thể hiện nền tảng được phát triển có khả năng mô phỏng mạng cùng các quá trình năng lượng, mức tiêu thụ năng lượng của từng nút mạng với độ chính xác cao. Nền tảng sẽ hỗ trợ tích cực trong công việc nghiên cứu, phát triển và giải bài toán tối ưu hóa mạng cảm biến xem xét đến yếu tố năng lượng, cụ thể trong luận án nền tảng mô phỏng sẽ hỗ trợ tính toán, mô phỏng quá trình năng lượng của từng nút mạng theo lịch trình, mức tiêu thụ năng lượng của các nút và tính giá trị hàm mục tiêu để làm đầu vào cho thuật toán tối ưu hóa lịch trình mạng. Tuy nhiên, việc thiết kế và viết chương trình xây dựng nền tảng mô phỏng cũng cần nhiều công sức và thời gian nên hiện tại nền tảng mới thực hiện được từng phần nhằm phục vụ mục tiêu hỗ trợ công việc tối ưu hóa mạng cảm biến của đề tài và sẽ được làm rõ trong chương tiếp theo của cuốn luận án.
Chương 4. Tối ưu hóa lịch trình mạng cảm biến
Tối ưu hóa có vai trò quan trọng trong nghiên cứu, phát triển và ứng dụng mạng cảm biến. Một mạng cảm biến trong thực tế có thể không đồng nhất về loại cảm biến, số lượng nút mạng lớn, môi trường triển khai rộng và phức tạp. Do đó, các vấn đề tối ưu hóa mạng cảm biến thường phức tạp vì chúng liên quan đến nhiều yếu tố và nhiều đối tượng. Tối ưu hóa mạng cảm biến cơ bản xoay quanh các vấn đề về vùng phủ sóng, định tuyến truyền thông, năng lượng tiêu thụ, chất lượng dịch vụ mạng và tuổi thọ mạng. Vấn đề năng lượng tiêu thụ luôn được đặc biệt quan tâm vì nó liên quan, ảnh hưởng lớn và trực tiếp đến các vấn đề còn lại. Một nút hết năng lượng có thể làm thay đổi vùng phủ sóng, các tuyến truyền thông qua nút đó bị mất nên cần phải định tuyến lại có thể làm mất chất lượng dịch vụ mạng, gây ra hệ lụy không tốt như làm tiêu hao năng lượng và giảm tuổi thọ mạng. Hơn nữa, các bài toán tối ưu hóa mạng cảm biến cũng rất đa dạng và phong phú về mục tiêu. Như trong việc tối đa hóa thời gian tồn tại của mạng, các tiêu chí có thể được xác định theo cách khác nhau, mạng được coi là tồn tại khi chỉ một số nút còn hoạt động hoặc khi phạm vi cảm biến của nó trên một ngưỡng nhất định [129][130]. Vì vậy, bài toán tối ưu sử dụng năng lượng trong mạng cảm biến là một vấn đề rất quan trọng và cần được nghiên cứu.
Trong số các bài toán tối ưu hóa sử dụng năng lượng cho mạng cảm biến, tối ưu hóa lịch trình thường được sử dụng trong việc triển khai mạng cảm biến nhằm giảm mức tiêu thụ năng lượng của từng nút mạng và tăng tuổi thọ mạng, đồng thời đảm bảo các hoạt động của mạng thỏa mãn các ràng buộc do từng ứng dụng quy định. Về cơ bản, điều này đạt được dựa trên việc lập trình theo thời gian thực các chế độ làm việc trong từng nút riêng lẻ để chúng hợp tác và hoàn thành các nhiệm vụ đã định theo kịch bản. Tuy nhiên, trong khi tất cả các chiến lược đều có một mục tiêu thiết kế chung để tối đa hóa tuổi thọ mạng, thì các cơ chế để tìm ra giải pháp tối ưu lại rất đa dạng [131]. Các kỹ thuật được sử dụng trong triển khai mạng cảm biến sẽ khác nhau khi có các giả định khác nhau. Hơn nữa, các giả định dù có thể giống nhau nhưng được xem xét trong bối cảnh của các ứng dụng khác nhau thì cơ chế tìm ra giải pháp tối ưu cũng khác nhau.
Bài toán tối ưu hóa lịch trình của mạng cảm biến trong các ứng dụng là rất phổ biến và cần thiết. Vấn đề đặt ra là làm thế nào để lập lịch hoạt động tối ưu nhằm thực hiện mục tiêu cho lớp bài toán tối ưu hóa mạng cảm biến. Trong một loạt các ứng dụng giám sát, các nút cảm biến cần được triển khai trong các môi trường thiếu điều kiện cung cấp điện hoặc các yêu cầu về tính di động của các nút. Ngoài ra, ngay cả trong môi trường trong nhà, các cảm biến nhỏ phổ biến ngày nay đã được giải phóng khỏi cáp truyền thông nhờ các công nghệ truyền dẫn không dây như ZigBee, LoRa, Wi-Fi, Bluetooth, di động, …, cáp nguồn trở thành một trở ngại cho ứng dụng của chúng trong thực tế. Vì những lý do này, việc cung cấp và tiêu thụ năng lượng của mạng cảm biến nói chung rất cần được tối ưu hóa.
Lập lịch hoạt động tối ưu là bài toán tối ưu hóa tổ hợp đa mục tiêu với nhiều ràng buộc và độ phức tạp cao. Các bài toán này sẽ có nhiều giải pháp khả thi và mục đích là cần tìm ra giải pháp gần tối ưu. Vấn đề này thường rất phức tạp, các tham số có thể luôn biến động nên rất khó khăn thậm chí là không thể giải quyết bằng các phương pháp thống kê hoặc phương pháp xác định. Các thuật toán di truyền (GA) thuộc nhóm
phương pháp suy nghiệm có khả năng tìm kiếm ra các giải pháp gần tối ưu tương đối nhanh cho các bài toán tối ưu hóa phức tạp và đa mục tiêu [132][133]. Vì vậy, trong nghiên cứu của luận án lựa chọn thuật toán di truyền để phát triển giải bài toán tối ưu hóa lịch trình mạng và được trình bày trong các phần tiếp theo.