Thuật toán leo đồi ngẫu nhiên

Một phần của tài liệu (Luận án tiến sĩ) Tối ưu hóa thời gian sống của một lớp mạng cảm biến không dây theo hướng tiếp cận xấp xỉ (Trang 111 - 118)

Phần này đề xuất một thuật toán gọi là tìm kiếm cục bộ dựa trên luồng (flow capacity local search - FCLS) lấy ý tưởng từ thuật toán leo đồi ngẫu nhiên [77]. Thuật toán leo đồi chọn lời giải tốt nhất trong tất cả các lời giải láng giềng của nó trong mỗi lần lặp. Điều này phụ thuộc khá nhiều vào lời giải ban đầu. Thuật toán leo đồi ngẫu nhiên thêm một yếu tố lựa chọn ngẫu nhiên để tăng độ lệch và giúp quá trình tìm kiếm thoát khỏi tối ưu cục bộ.

FCLS bắt đầu với một lời giảiΨ0. Tại mỗi lần lặp k của quá trình tìm kiếm, một tập các lời giải láng giềngQ củaΨk được tạo ra bằng cách áp dụng ba phép dịch chuyển trình bày ở phần trên. Đối với mỗi lời giải láng giềng ta tính hàm mục tiêu sử dụng thuật toán tìm luồng cực đại với chi phí cực tiểu (maximum flow binary search - MFBS) (đã trình bày ở phần trên). Chúng ta sẽ chọn tối đaCa lời giải láng giềng có giá trị hàm mục tiêu cải thiện hơn so với Ψk cho vào danh sách Q. Nếu Q rỗng, quá tình tìm kiếm kết thúc và lời giải tốt nhất tìm

Thuật toán 3.1: Thuật toán FCLS Đầu vào: Đồ thị G= (V, E, cap)

Đầu ra : Lời giải tối ưu Ψk

1 Sắp xếp các cạnh trong đồ thịG;

/* Khởi tạo lời giải ban đầu và tính giá trị hàm mục tiêu */ 2 Khởi tạo cá thể ban đầu Ψ0;

3 Tính giá trị thích nghi của Ψ0 dựa vào thuật toán MBFS;

4 Tìm tập Q các láng giềng của Ψ0; 5 k ←0; 6 while Q6=∅ do 7 k ←k+ 1; 8 Ψk← Chọn ngẫu nhiên từ tập Q; 9 Q← Tập các láng giềng củaΨk ;

10 Sắp xếp Qtheo giá trị giảm dần của hàm thích nghi;

11 Chọn tối đaCa lời giải từ Q;

12 end

13 return Ψk ;

3.3.6 Thực nghiệm

3.3.6.1 Dữ liệu thực nghiệm

Dữ liệu thực nghiệm của luận án được thực hiện trên địa hình độ cao số DEM thu thập từ các vùng miền của Việt Nam bằng phần mềm EarthExplorer. Bộ dữ liệu độ cao số này được sử dụng trong tài liệu [48] và [50]. Mô tả về các loại địa hình được trình bày trong bảng 3.1 và hình 3.3.

Hai bộ dữ liệu được sinh ra trên địa hình độ cao số là tập dữ liệu lớn (kích thước 500m×500m) và tập dữ liệu nhỏ (kích thước 200m×200m). Các tham số cho các bộ dữ liệu được đưa ra trong bảng 3.2. Hầu hết các bộ dữ liệu nhỏ có thể được giải bằng quy hoạch nguyên trong thời gian chấp nhận được.

Bảng 3.1: Mô tả tóm tắt các hình thái địa hình.Địa hình Vị trí Hình thái Địa hình Vị trí Hình thái

T1 Hồ Chí Minh Thành phố với nhiều tòa nhà cao tầng, không có đồi núi sông

T2 Vũng Tàu Thành phố với nhiều tòa nhà độ cao cân đối, có đồi núi và một vùng biển nằm về một hướng T3 Phú Quốc Đảo với những ngọn đồi thấp

T4 Đồng Tháp Đồng bằng với những tòa nhà thưa thớt, dọc theo nhiều con sông và kênh rạch, không có đồi. T5 Vĩnh Long Đồng bằng có nhiều sông, kênh rạch, không có đồi.

T6 Lâm Đồng Khu vực cao nguyên, nhiều núi đồi. T7 Tây Nguyên Nhiều đồi núi cao

T8 Đà Nẵng Thành phố với những tòa nhà thưa thớt và những ngọn núi giáp biển. T9 Hà Nội Thành phố với nhiều tòa nhà và số lượng lớn hồ.

Hình 3.3: Minh họa một số địa hình.

Bảng 3.2: Tham số cho các địa hình.

Tham số Địa hình nhỏ Địa hình lớn Diện tích 200m×200m 500m×500m

Số lượng nút cảm biến 100 200

Số lượng vị trí nút chuyển tiếp 100 200

Trên địa hình nhỏ, năm loại dữ liệu được tạo ra từ (Type 1s đếnType 5s). Trên địa hình lớn, các loại dữ liệu từ Type 1l đến Type 5l được tạo ra. Chi tiết các loại dữ liệu như sau:

ˆ Type 1s (ga25s_1 - ga25s_10) và Type 1l (ga25l_1 - ga25l_10): Các nút cảm biến và nút chuyển tiếp được tạo ra trên địa hình nhỏ và địa hình lớn từ T1 đến T10 theo phân phối Gamma. Bán kính cảm biến được đặt là 25m.

ˆ Type 2s (no25s_1 - no25s_10) và Type 2l (no25l_1 - no25l_10): Các nút cảm biến và nút chuyển tiếp được tạo ra trên địa hình nhỏ và địa hình lớn từ T1 đến T10 theo phân phối Gaussian. Bán kính cảm biến được đặt là 25m.

Uniform.

ˆ Type 4s (uu30s_1 - uu30s_10) vàType 4l(uu30l_1 - uu30l_10): Tương tự như Type 3, tuy nhiên bán kính của các nút cảm biến là 35m.

ˆ Type 5s (uu45s_1 - uu45s_10) vàType 5l(uu45l_1 - uu45l_10): Tương tự như Type 3 và Type 4, tuy nhiên bán kính của các nút cảm biến là 45m.

3.3.6.2 Các cài đặt thực nghiệm

Thuật toán được cài đặt bằng ngôn ngữ Python và thư viện NumPy. Các thực nghiệm được thực hiện trên máy tính với CPU Intel Core i5 3.4 GHz, RAM 8GB chạy trên hệ điều hành Ubuntu 16.04. Các tiêu chí đánh giá chất lượng thuật toán được đưa ra trong bảng 3.3.

Bảng 3.3: Tiêu chí đánh giá.Tiêu chí Mô tả Tiêu chí Mô tả

avg Năng lượng trung bình trên tất cả các lần chạy

best Giá trị năng lượng tiêu thụ tốt nhất tìm được trên tất cả các lần chạy

sd Độ lệch chuẩn tìm được trong tất cả các lần chạy

3.3.6.3 Kết quả thực nghiệm

Để đánh giá hiệu quả của thuật toán đề xuất cho bài toán ORP3D, những thử nghiệm sau được cài đặt:

ˆ Đánh giá hiệu quả của phương pháp khởi tạo trong thuật toán đề xuất.

ˆ Đánh giá hiệu quả của thuật toán đề xuất khi áp dụng đầu vào là các phân phối khác nhau.

ˆ Đánh giá hiệu quả của thuật toán đề xuất với các bán kính khác nhau. Thực nghiệm 1: đánh giá hiệu quả của thuật toán với các phương pháp khởi tạo khác nhau

Thực nghiệm này so sánh hiệu của của phương pháp khởi tạo MBFS và khởi tạo ngẫu nhiên. Trong thực nghiệm này, tất cả các nút cảm biến và các nút chuyển tiếp có cùng bán kính truyền thông là25m. Các nút được sinh theo phân phối Uniform. Chi tiết kết quả thực nghiệm được đưa ra trong bảng 3.4 và 3.5. Phương pháp khởi tạo MBFS tốt hơn khởi tạo ngẫu nhiên trên bộ dữ liệu nhỏ khoảng11.8% và trên bộ dữ liệu lớn khoảng1.5%. Lý do cho kết quả này là, khởi tạo dùng luồng sẽ tạo ra cá thể tốt trong lần đầu tiên. Cách khởi tạo này có thể

dễ dẫn đến tối ưu cục bộ. Tuy nhiên, do trong thuật toán đề xuất sử dụng ba phép dịch chuyển nên sẽ giúp vượt qua được nhược điểm này.

Bảng 3.4:So sánh kết quả khởi tạo của thuật toán MBFS và khởi tạo ngẫu nhiên trên Type 3s.

.

Khởi tạo MBFS Khởi tạo ngẫu nhiên Cận dưới

Địa hình avg best sd avg best sd

uu25s_1 0.187 0.183 0.006 0.217 0.195 0.015 0.165 uu25s_2 0.198 0.191 0.004 0.215 0.206 0.007 0.177 uu25s_3 0.196 0.187 0.008 0.213 0.205 0.006 0.164 uu25s_4 0.194 0.188 0.006 0.211 0.192 0.011 0.169 uu25s_5 0.248 0.246 0.004 0.257 0.239 0.010 0.227 uu25s_6 0.179 0.175 0.004 0.200 0.184 0.011 0.170 uu25s_7 0.188 0.177 0.004 0.197 0.185 0.012 0.170 uu25s_8 0.182 0.164 0.007 0.188 0.177 0.006 0.159 uu25s_9 0.164 0.164 0.000 0.222 0.214 0.009 0.159 uu25s_10 0.169 0.164 0.006 0.239 0.214 0.018 0.159 Trung bình 0.190 0.184 0.005 0.216 0.201 0.011 0.172

Bảng 3.5:So sánh kết quả khởi tạo của thuật toán MBFS và khởi tạo ngẫu nhiên trên Type 3l.

Khởi tạo MBFS Khởi tạo ngẫu nhiên Cận dưới

Địa hình avg best sd avg best sd

uu25l_1 0.362 0.362 0.000 0.362 0.362 0.006 0.332 uu25l_2 0.535 0.526 0.007 0.545 0.541 0.015 0.521 uu25l_3 0.504 0.504 0.007 0.510 0.504 0.015 0.489 uu25l_4 0.571 0.563 0.003 0.575 0.568 0.005 0.548 uu25l_5 0.367 0.357 0.005 0.380 0.372 0.005 0.357 uu25l_6 0.441 0.427 0.007 0.442 0.437 0.007 0.417 uu25l_7 0.582 0.570 0.007 0.586 0.580 0.006 0.565 uu25l_8 0.511 0.497 0.008 0.526 0.517 0.006 0.496 uu25l_9 0.509 0.495 0.006 0.499 0.495 0.005 0.470 uu25l_10 0.715 0.704 0.007 0.712 0.709 0.005 0.689 Trung bình 0.511 0.501 0.006 0.514 0.509 0.008 0.488

Thực nghiệm 2: đánh giá hiệu quả của thuật toán với các phân phối khác nhau

và bảng 3.7 cho thấy thuật toán FCLS cho kết quả tốt với cả 3 phân phối của các nút cảm biến. Các kết quả thu được khá gần so với cận. Ví dụ, trên bộ dữ liệu nhỏ, kết quả thu được là 0.172 cho phân phối Gaussian, trong khi cận dưới là 0.160. Các kết quả thu được đối với phân phối Gamma và Uniform là 0.171 và 0.184. Trong khi đó, các kết quả của hai phân phối này thu được khi giải quy hoạch nguyên lần lượt là 0.162 và 0.172. Trên bộ dữ liệu lớn, kết quả trên ba phân phối Gaussian, Gamma và Uniform lần lượt là 0.34, 0.454 và 0.498. Cận dưới trên bộ dữ liệu lớn của 3 phân phối này là 0.316, 0.431 và 0.386. Điều này cho thấy rằng, thuật toán đề xuất cho kết quả khá tốt trên các phân phối khác nhau.

Trên bộ dữ liệu lớn, thuật toán FCLS cho kết quả khá tốt với phân phối Gaussian. Điều này có thể do trong thực tế, các nút trong phân phối này có xu hướng phân cụm với nhau, dẫn đến đồ thị dày hơn, cho phép thuật toán FCLS có nhiều phương án lựa chọn tối ưu hơn.

Bảng 3.6: So sánh kết quả thu được trên các tập dữ liệu Type 1s, Type 2s, Type 3s.

Type 2s Type 1s Type 3s

Địa hình avg best sd cận dưới avg best sd cận dưới avg best sd cận dưới

T1 0.165 0.165 0.002 0.153 0.140 0.138 0.002 0.137 0.187 0.183 0.006 0.165 T2 0.192 0.187 0.004 0.164 0.176 0.176 0.000 0.172 0.198 0.191 0.004 0.177 T3 0.180 0.176 0.002 0.167 0.168 0.166 0.004 0.163 0.196 0.187 0.008 0.164 T4 0.181 0.180 0.002 0.158 0.177 0.175 0.004 0.163 0.194 0.188 0.006 0.169 T5 0.168 0.164 0.005 0.159 0.178 0.175 0.006 0.167 0.248 0.246 0.004 0.227 T6 0.172 0.169 0.004 0.160 0.176 0.164 0.008 0.163 0.179 0.175 0.004 0.170 T7 0.185 0.170 0.015 0.161 0.174 0.171 0.002 0.170 0.188 0.177 0.004 0.170 T8 0.179 0.170 0.003 0.157 0.182 0.182 0.000 0.169 0.182 0.164 0.007 0.159 T9 0.177 0.177 0.000 0.159 0.176 0.176 0.000 0.160 0.164 0.164 0.000 0.159 T10 0.164 0.164 0.000 0.159 0.163 0.163 0.000 0.159 0.169 0.164 0.006 0.159 Trung bình 0.176 0.172 0.004 0.160 0.171 0.169 0.003 0.162 0.190 0.184 0.005 0.172

Bảng 3.7: So sánh kết quả thu được trên các tập dữ liệu Type 1l, Type 2l, Type 3l. Type 2l Type 1l Type 3l

Địa hình avg best sd cận dưới avg best sd cận dưới avg best sd cận dưới

T1 0.498 0.485 0.006 0.475 0.372 0.360 0.006 0.345 0.362 0.362 0.000 0.332 T2 0.423 0.412 0.005 0.397 0.341 0.332 0.009 0.327 0.535 0.526 0.007 0.521 T3 0.240 0.230 0.008 0.220 0.509 0.495 0.006 0.485 0.446 0.433 0.006 0.489 T4 0.166 0.154 0.008 0.139 0.410 0.398 0.006 0.378 0.514 0.504 0.007 0.548 T5 0.172 0.158 0.006 0.143 0.556 0.547 0.005 0.537 0.367 0.357 0.005 0.357 T6 0.535 0.523 0.008 0.513 0.502 0.490 0.008 0.475 0.441 0.427 0.007 0.417 T7 0.183 0.169 0.012 0.154 0.227 0.221 0.004 0.206 0.582 0.570 0.007 0.007 T8 0.307 0.297 0.010 0.281 0.393 0.382 0.006 0.367 0.511 0.497 0.008 0.496 T9 0.461 0.448 0.009 0.443 0.528 0.516 0.007 0.506 0.509 0.509 0.495 0.006 T10 0.411 0.402 0.007 0.392 0.701 0.693 0.006 0.683 0.715 0.704 0.007 0.689 Trung bình 0.340 0.328 0.008 0.316 0.454 0.443 0.006 0.431 0.498 0.489 0.006 0.435

Thực nghiệm 3: đánh giá hiệu quả của thuật toán với các bán kính khác nhau

Thực nghiệm này đánh giá hiệu quả của thuật toán khi áp dụng trên ba loại bán kính truyền thông khác nhau của các nút cảm biến: 25m, 30m và 45m. Chi tiết kết quả được đưa ra trong bảng 3.8 và bảng 3.9.

Bảng 3.8 cho thấy rằng kết quả trung bình của thuật toán với bán kính 25m là 0.190 trên bộ dữ liệu nhỏ. Khi bán kính tăng lên, đồ thị sẽ dày đặc hơn, do đó có nhiều lựa chọn hơn cho lời giải tối ưu. Do đó, giá trị của hàm mục tiêu giảm xuống còn 0.180 và 0.178 với bán kính 30m và 45m. Kết quả ở hình 3.4 và 3.5 cũng chỉ ra rằng, khi bán kính truyền thông tăng lên, năng lượng tiêu thụ cũng tăng nhưng số lượng các nút chuyển tiếp sử dụng giảm khá nhanh.

Bảng 3.8: So sánh kết quả thu được trên các tập dữ liệu Type 3s, Type 4s, Type 5s. Type 3s (R=25) Type 4s (R=30) Type 5s (R=45) Địa hình avg best sd cận dưới avg best sd cận dưới avg best sd cận dưới

T1 0.187 0.183 0.006 0.165 0.184 0.183 0.002 0.162 0.155 0.154 0.003 0.151 T2 0.198 0.191 0.004 0.177 0.181 0.181 0.000 0.164 0.150 0.148 0.002 0.147 T3 0.196 0.187 0.008 0.164 0.152 0.150 0.003 0.151 0.152 0.150 0.003 0.146 T4 0.194 0.188 0.006 0.169 0.177 0.170 0.006 0.163 0.149 0.147 0.004 0.146 T5 0.248 0.246 0.004 0.227 0.222 0.222 0.000 0.208 0.152 0.149 0.001 0.146 T6 0.179 0.175 0.004 0.170 0.174 0.171 0.003 0.165 0.156 0.155 0.001 0.148 T7 0.188 0.177 0.004 0.170 0.178 0.176 0.001 0.163 0.156 0.154 0.002 0.152 T8 0.182 0.164 0.007 0.159 0.166 0.157 0.004 0.152 0.150 0.149 0.002 0.148 T9 0.164 0.164 0.000 0.159 0.189 0.178 0.004 0.161 0.152 0.151 0.002 0.145 T10 0.169 0.164 0.006 0.159 0.174 0.164 0.007 0.160 0.403 0.400 0.004 0.396 Trung bình 0.190 0.184 0.005 0.172 0.180 0.175 0.003 0.165 0.178 0.176 0.002 0.173

Bảng 3.9: So sánh kết quả thu được trên các tập dữ liệu Type 3l, Type 4l, Type 5l. Type 3l (R=25) Type 4l (R=30) Type 5l (R=45) Địa hình avg best sd cận dưới avg best sd cận dưới avg best sd cận dưới

T1 0.362 0.362 0.000 0.332 0.404 0.392 0.007 - 0.344 0.331 0.008 - T2 0.535 0.526 0.007 0.521 0.320 0.311 0.003 - 0.446 0.433 0.006 - T3 0.514 0.504 0.007 0.489 0.337 0.327 0.007 - 0.223 0.209 0.009 - T4 0.571 0.563 0.003 0.548 0.344 0.329 0.008 - 0.248 0.234 0.010 - T5 0.367 0.357 0.005 0.357 0.568 0.557 0.005 - 0.406 0.392 0.007 - T6 0.441 0.427 0.007 0.417 0.400 0.389 0.008 - 0.474 0.461 0.006 - T7 0.582 0.570 0.007 0.565 0.618 0.605 0.005 - 0.451 0.437 0.010 - T8 0.511 0.497 0.008 0.496 0.490 0.479 0.007 - 0.282 0.275 0.005 - T9 0.509 0.006 0.495 0.470 0.517 0.508 0.007 - 0.509 0.496 0.007 - T10 0.715 0.704 0.007 0.689 0.676 0.676 0.000 - 0.493 0.480 0.005 - Trung bình 0.511 0.501 0.006 0.488 0.467 0.457 0.006 - 0.388 0.375 0.007 -

(a) Số lượng các nút chuyển tiếp sử dụng. (b) Năng lượng tiêu thụ.

Hình 3.4: So sánh số lượng nút chuyển tiếp và năng lượng tiêu thụ (J) trên các tậpdữ liệu Type 3s, Type 4s, Type 5s. dữ liệu Type 3s, Type 4s, Type 5s.

(a) Số lượng các nút chuyển tiếp sử dụng. (b) Năng lượng tiêu thụ.

Hình 3.5: So sánh số lượng nút chuyển tiếp và năng lượng tiêu thụ (J) trên các tậpdữ liệu Type 3l, Type 4l, Type 5l. dữ liệu Type 3l, Type 4l, Type 5l.

Một phần của tài liệu (Luận án tiến sĩ) Tối ưu hóa thời gian sống của một lớp mạng cảm biến không dây theo hướng tiếp cận xấp xỉ (Trang 111 - 118)

Tải bản đầy đủ (PDF)

(165 trang)