3.3.4 Khởi tạo lời giải
Các lời giải ban đầu được khởi tạo bằng cách sử dụng hai chiến lược khởi tạo như sau:
Khởi tạo ngẫu nhiên: xét tất cả các nút cảm biến, với mỗi nút cảm biến si, chọn ngẫu nhiên một nút chuyển tiếp mà nó có thể kết nối được đến.
Khởi tạo theo luồng: khả năng thông qua trên mỗi cung của đồ thị luồng sẽ được sửa đổi như sau:
cap(u, v) = 1, u=s0, v=si, ∀1≤i≤n, 1, u=si, v =lj, ∀1≤i≤n, j≤m, cij = 1, Φj, u=lj, v =t0, ∀1≤j ≤m.
trong đó, Φj là số lượng nút cảm biến tối đa có thể kết nối được đến lj. Cách khởi tạo này sẽ bỏ qua mục tiêu giảm thiểu số lượng các nút chuyển tiếp sử dụng. Do đó, lời giải tạo ra có xu hướng giảm mức tiêu thụ năng lượng và tăng số lượng các nút chuyển tiếp sử dụng.
3.3.5 Thuật toán leo đồi ngẫu nhiên
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ồ.