Tối ưu hóa lịch trình mạng sử dụng thuật toán di truyền với nhiễm sắc thể có chiều dài thay đổ

Một phần của tài liệu Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm biến 100 (Trang 132 - 134)

- 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

4.5.Tối ưu hóa lịch trình mạng sử dụng thuật toán di truyền với nhiễm sắc thể có chiều dài thay đổ

di truyền với nhiễm sắc thể có chiều dài cố định

4.5.Tối ưu hóa lịch trình mạng sử dụng thuật toán di truyền với nhiễm sắc thể có chiều dài thay đổ

với nhiễm sắc thể có chiều dài thay đổi

Trên nền tảng học thuyết tiến hóa Một cách tiếp cận khác giải thuật di truyền có chiều dài nhiễm sắc thể thay đổi (Variable Length Chromosome Genetic Algorithm - VLC-GA) [157] được phát triển và ứng dụng thể hiện các ưu điểm Độ dài của nhiễm sắc thể có thể thay đổi rất linh hoạt nên tiết kiệm tài nguyên và thời

gian yêu cầu bộ nhớ tối thiểu Nhiễm sắc thể hoàn toàn được phát triển với độ dài cần thiết phù hợp với yêu cầu cụ thể trong quá trình giải bài toán tối ưu hóa [158]

Thực tế đã có các nghiên cứu và ứng dụng thuật toán di truyền có độ dài nhiễm sắc thể thay đổi mang lại kết quả khả quan như sử dụng trong bài toán điều phối giao thông hỗn hợp đa luồng [159] tối ưu hóa cho mạng cảm biến không dây với mục tiêu tối đa hóa vùng phủ sóng và tối thiểu hóa chi phí triển khai mạng [160] tối ưu hóa việc thu thập dữ liệu trong mạng cảm biến không dây [161] Đây cũng là cơ sở để luận án lựa chọn và phát triển thuật toán di truyền có độ dài nhiễm sắc thể thay đổi cho bài toán tối ưu hóa lịch trình mạng cho lớp bài toán ứng dụng

4.5.1.Mô hình hóa bài toán tối ưu hóa lịch trình mạng cảm biến sử dụng thuật toán di truyền với nhiễm sắc thể có chiều dài thay đổi

Đối với bài toán tối ưu hóa lịch trình mạng cũng giống như trong thuật toán di truyền có nhiễm sắc thể chiều dài cố định nhiễm sắc thể cần mã hóa lịch trình mạng Sˆ biểu diễn là và được định nghĩa như biểu thức 4 9

1 12 2 2 2 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 1 1 2 2 1 1 2 2 , , , , ,..., , , , , , , ,..., , , ..., , , , , ,..., n, n . s s s s n n n n n n n s s C s m t m t m t s m t m t m t s m t m t m t � � � � (4 9) Số gen của nút là 2si 1 và của toàn mạng là 1 2 n i i s n  �  � � � �� � Vì si thay đổi nên độ dài của cũng thay đổi Điều quan trọng cần lưu ý là trong VLC-GA hàm mục tiêu không phải là một hàm toán học theo cách hiểu thông thường mà là một hàm lập trình lấy nhiễm sắc thể làm đầu vào và trả về giá trị hàm mục tiêu làm đầu ra sau một quá trình thực thi Ngược lại với các nhiễm sắc thể có chiều dài cố định nơi các gen nằm ở vị trí cố định trong nhiễm sắc thể có chiều dài thay đổi chúng không như vậy Vì lý do này si được đưa vào để các chương trình máy tính có thể diễn giải các gen một cách chính xác nếu không sẽ không thể biết thông tin lịch trình cho mỗi nút bắt đầu và kết thúc ở đâu

Về cơ bản vì khác nhau giữa các cá thể (ở đây một cá thể tương ứng với một cấu hình lịch trình mạng) và từ thế hệ này sang thế hệ khác do đó để biểu thị sự phụ thuộc của nó vào cá thể nên trong luận án dùng kí hiệu qC k  để biểu thị

nhiễm sắc thể của cá thể trong thế hệ Tương tự tất cả các biến phụ thuộc cá thể khác cũng tuân theo quy ước ký hiệu này Ví dụ q i 

j m k

là trạng thái của nút của cá thể trong thế hệ Khi đó nhiễm sắc thể của cá thể sẽ được biểu diễn như biểu thức 4 10

(4 10) Ngoài ra biểu thị qCi là đoạn gen trong qC tương ứng với lịch trình của nút và được biểu diễn bằng biểu thức 4 11

1, 1, 2, 2,..., q i, q i .

q i q i q i q i q i q i q i

s s

C ��m t m t m t ��

(4 11) Trong đó độ dài của qCi là 2q isqC sẽ được đơn giản hóa thành biểu thức 4 12

1, 1, 2, 2,..., , .

qC ��qs Cq qs qC q n qs Cn��

(4 12) Để dễ hình dung có thể được minh họa bằng đồ thị như trong Hình 4 8 Các sự kiện chuyển đổi chế độ được thực hiện bởi nút được điều chỉnh theo trục thời gian trong đó các phân đoạn ở mức cao hơn tương ứng với các giai đoạn khi nút ở chế độ làm việc và các phân đoạn mức thấp hơn biểu diễn khoảng thời gian nút ở chế độ ngủ

Hình 4 8 Biểu đồ biểu diễn lịch trình của một nút cảm biến

Để triển khai thuật toán VLC-GA bây giờ cần phải điều chỉnh các hoạt động tạo thế hệ mới Rõ ràng hoạt động “Lựa chọn” không cần bất kỳ sửa đổi nào để thích ứng chỉ có hai thao tác còn lại là “Lai ghép” và “Đột biến” cần được thực hiện và thay đổi trong quá trình tiến hóa

Hoạt động lai ghép: về nguyên tắc mỗi nút cảm biến trong mạng có thể thực hiện một vai trò khác nhau việc lai ghép hai nút khác nhau có rất ít sự liên quan nhưng sẽ làm tăng rất cao độ phức tạp của thuật toán Do đó trong nghiên cứu này việc lai ghép được thực hiện trên nút cơ sở Tức là phép toán lai ghép được áp dụng cho các đoạn gen từ cùng một nút ở hai cá thể chứ không phải các đoạn gen thuộc hai nút khác nhau Trong các ứng dụng khác người ta có thể dễ dàng tiến xa hơn với lai ghép giữa các nút như phần mở rộng nếu đặc biệt quan tâm Tại thời điểm này hoạt động lai ghép trên các cá thể được chia nhỏ thành hoạt động trên các nút tương ứng

Nguyên tắc của phép toán “Lai ghép” được minh họa bằng ví dụ trong Hình 4 9 trong đó q1C ki 

Một phần của tài liệu Nghiên cứu giải pháp tối ưu hóa hiệu quả sử dụng năng lượng trong mạng cảm biến 100 (Trang 132 - 134)