3 Đảm bảo an ninh và tính sẵn sàng của dịch vụ đáp ứng QoS
2.2 Mô hình mở rộng dung lượng mạng không dây
Bài toán gồm 2 giai đoạn: ban đầu là khởi tạo các kết nối với các trạm đã có, sau đó là mở rộng dung lượng mạng với các trạm tiềm năng. Để mô hình hóa bài toán, chúng ta qui ước ý nghĩa các ký hiệu được sử dụng trong Bảng 2.1.
Bảng 2.1: Các ký hiệu dùng trong bài toán mở rộng dung lượng mạng
Ký hiệu Ý nghĩa M Tập các trạm di động MS:M ={MSi,∀i= 1..m} N Tập các trạm cơ sở BTS:N =N1∪N2 ={BTSj, ∀j = 1..n} N1là tập các BTS đã có,N2 là tập các BTS tiềm năng P Tập các trạm điều khiển BSC:P =P1∪P2 ={BSCk,∀k= 1..p} P1là tập các BSC đã có,P2 là tập các BSC tiềm năng
Tj Tập các kiểu BTS có thể thiết lập choBTSj, ∀j ∈N S Tập các kiểu dịch vụ:s ={ 1 Nếu yêu cầu là thoại (Voice)
2 Nếu yêu cầu là dữ liệu (Data)
Nt Tập tất cả các BTS loạit: Nt =N1t∪N2t
Ds
i Yêu cầu dữ liệu kiểus từMSi,∀i∈M MaxBTS Capjt Dung lượng tối đa củaBTSj loại t,∀j ∈Nt MaxBSC Capk Dung lượng tối đa củaBSCk,∀k ∈P
dijt Khoảng cách giữaMSi tớiBTSj loạit ∀i ∈M,∀j ∈Nt MaxBTS Covjt Phạm vi phủ sóng tối đa củaBTSj loạit
cost connectjtk Chi phí kết nốiBTSj loại t đếnBSCk
cost installk Chi phí cài đặtBSCk,∀k ∈P2 cost upgradej Chi phí nâng cấp kênhBTSj,∀j ∈N1 cost setupjt Chi phí xây dựng và kết nốiBTSj,∀j∈N2
Các kết nối trong mạng phải thỏa mãn các ràng buộc sau:
(1) MỗiMSi sẽ được kết nối đến chính xác một trạmBTSj loại t
(2) CácMSiphải nằm trong vùng phủ sóng tối đa của cácBTSj (MaxBTS Covjt) (3) Có ít nhất một trạm cơ sở BTS loại t có thể tồn tại ở vị trí j
(4) NếuBTSj được kết nối tới BSCk thì BSCk phải được hoạt động.
(5) Các BTS phải có đủ dung lượng để đáp ứng tất cả yêu cầu loại s của các MS kết nối đến và các BSC phải có dung lượng cần thiết để đáp ứng tất cả các BTS được kết nối.
Các biến chỉ định được sử dụng để khởi tạo các kết nối như Hình 2.2(a) với:
αjt =
1 Nếu BTSj loại t được vận hành
0 Ngược lại
βjtk =
1 Nếu BTSj loại t được kết nối tới BSCk
0 Ngược lại
δk =
1 NếuBSCk được khởi tạo vận hành
0 Ngược lại
Để mở rộng dung lượng mạng và tăng lưu lượng mạng, chúng ta sử dụng các biết quyết định. Quá trình mở rộng được thể hiện trong Hình 2.2(b) với các thiết bị tiềm năng (được thể hiện bằng màu đậm), trong đó:
Xijt =
1 Nếu MSi được kết nối đến BTSj
0 Ngược lại
Yjtk =
1 Nếu BTSj loại t được kết nối đến BSCk
0 Ngược lại
Zjt =
1 NếuBTSj loại t được vận hành
0 Ngược lại
Wk =
1 NếuBSCk được vận hành
0 Ngược lại
Định nghĩa 2.1 (Bài toán mở rộng dung lượng mạng không dây-MRDL [12]).
Min n X j=1 p X k=1 X t∈Tj cost connectjtk(Yjtk−βjtk)+ X k∈P2 cost intallk(Wk−δk) + X j∈N1 cost upgradej X t∈Tj MaxBTS capjt(Zjt−αjt) +X j∈N2 X t∈Tj cost setupjtZjt (2.1) Thoả mãn các ràng buộc: n X j=1 X t∈Tj Xi jt = 1, ∀i = 1..m (2.2) dijXi jt 6MaxCovjtZjt,∀i = 1..m,j = 1..n,t ∈Tj (2.3) X t∈Tj Zjt 61, ∀j = 1..n (2.4) Zjt 6 p X k=1 Yjtk, ∀j = 1..n, t ∈Tj (2.5) Yjtk 6Wk, ∀k = 1..p, j = 1..n, t ∈Tj (2.6) m X i=1 2 X s=1 DisXi jt 6MaxBTS Capjt×Zjt, ∀j = 1..n, t ∈Tj (2.7)
n X j=1 X t∈Tj Yjtk 6MaxBSC Capk×Wk, ∀k = 1..p (2.8) Xi jt ∈ {0,1}, Yjtk ∈ {0,1}, Zjt ∈ {0,1}, Wk ∈ {0,1} ∀i = 1..m,j = 1..n,k = 1..p,t ∈Tj (2.9)
2.1.2 Các nghiên cứu liên quan
Bài toán TA thuộc lớpNP-khó nên không tồn tại thuật toán thời gian đa thức có thể tìm nghiệm xấp xỉ với sai số tùy ý [41, 75]. Do đó, các hướng tiếp cận đều trước đó đều dựa trên Heuristic [9, 29] để tìm nghiệm gần đúng trong thời gian chấp nhận được. Thuật toán Greedy [18] dựa trên ý tưởng chọn Concentrator gần nhất còn đủ dung lượng đáp ứng cho mỗi Terminal. Để tìm phương án tối ưu toàn cục ta sẽ chọn phương án tốt nhất trong các phương án tối ưu cục bộ. Các Terminal được lựa chọn một cách ngẫu nhiên và gán cho Concentrator gần nhất (chi phí nhỏ nhất) còn đủ dung lượng đáp ứng. Để giảm sự bùng nổ tổ hợp của thuật toán vét cạn, Abuali cùng cộng sự đã đề xuất thuật toán GA-Greedy [29] kết hợp giữa GA và Greedy. Các thuật toán di truyền cải tiến được đề xuất gồm: GENEsYs (Genetic Search), LibGA và GGA (Group Genetic Algorithm) [18], Hybrid I và Hybrid II, SA-Greedy, LB-Greedy [35] của S.S Sanz và cộng sự dựa trên tiếp cận Heuristic và SA cho bài toán TA. Năm 2010, Bernardino cùng cộng sự đã đề xuất thuật toán đàn ong cho bài toán TA [28].
Đối với bài toán đặt trạm điều khiển, chúng tôi đã đề xuất thuật toán di truyền GA-BSC, nhóm bầy PSO-BSC, đàn kiến ACO-BSC1 và ACO-BSC2 tối ưu vị trí đặt các trạm điều khiển với các quy tắc heuristic hiệu quả trong [25, 64]. Thuật toán GA-BSC tối ưu vị trí đặt các trạm điều khiển sử dụng đồ thị 2 phía G và thuật toán tìm luồng cực đại Ford-Fulkerson với mỗi cá thể. Thuật toán GA-BSC được mô tả như sau:
Thuật toán 2.1 GA-BSC đặt trạm điều khiển trong mạng không dây
Begin
Khởi tạo quần thể bằng cách sinh ngẫu nhiên các cá thể; GA-REPAIR(cá thể);
Đánh giá độ thích nghi với mỗi cá thể;
Repeat 1. Chọn các cá thể cha mẹ; 2. Kết hợp các cá thể cha mẹ; 3. Lai ghép giữa các cặp; 4. GA-REPAIR(các cá thể mới); 5. Xây dựng đồ thị 2 phíaG= (I,J,E);
6. Tìm luồng cực đại của đồ thịG: MAX-FLOW(G); 7. Đánh giá độ thích nghi của các cá thể mới; 8. Lựa chọn các cá thể cho thế hệ tiếp theo;
Until(Điều kiện dừng được thỏa mãn);
Ưu điểm của GA so với thuật toán vét cạn là không phải sinh ra tất cả các hoán vị của chuỗi nhị phân, thay vào đó là sử dụng các phép toán lai ghép, đột biến, chọn lọc để tạo ra các phương án mới. Với các cá thể thỏa mãn, việc lựa chọn chiến lược gán các trạm BTS cho BSC theo hướng tham lam không thực sự mang lại hiệu quả tối ưu nhất, cho dù cá thể đấy đang chứa những vị trí BSC tối ưu. Tuy nhiên, đây lại là nhược điểm bởi độ phức tạp tính toán sẽ tăng lên khi thực hiện các phép toán đó. Phương án cuối cùng của bài toán sẽ tiệm cận tới phương án tối ưu khi chúng ta tăng số lần lặp và kích thước quần thể. Tiếp đó, chúng tôi đã đề xuất thuật toán PSO-BSC với mỗi giải pháp là một phần tử (particle) được đặc trưng bởi 2 tham số: vị trí hiện tại present[] và vận tốc v[]. Mỗi phần tử có một giá trị thích nghi (fitness value), được đánh giá bằng hàm đo độ thích nghi (fitness function). Tại thời điểm xuất phát, vị trí của mỗi cá thể trong bầy đàn được khởi tạo một cách ngẫu nhiên. Trong quá trình chuyển động, mỗi cá thể chịu ảnh hưởng bởi 2 thông tin:
• pBest- vị trí tốt nhất mà phần tử đó đã đạt được trong quá khứ;
• gBest- vị trí tốt nhất mà cả bầy đàn đã đạt được trong quá khứ. Thuật toán được mô tả như sau:
Thuật toán 2.2 PSO-BSC đặt trạm điều khiển trong mạng không dây
Begin
For eachnhóm bầy Khởi tạo nhóm bầy;
Endfor Do
For eachnhóm bầy PSO-Repair(nhóm bầy);
Tính giá trị thích nghi (fitness value);
If (fitness value > pBest)ThenpBest = fitness value;
If (pBest > gBest)ThengBest = pBest;
Endfor
For eachnhóm bầy
Tính vận tốcv[] =v[]+c1∗rand()∗(pbest[]−present[])+c2∗rand()∗(lbest[]−present[]); Cập nhật vị trípresent[] =present[]+v[];
Endfor
While(Điều kiện dừng chưa thỏa mãn);
End
Ưu điểm của PSO-BSC so với GA-BSC là không dùng các phép lai ghép hay đột biến nên giảm được thời gian thực thi. Nhưng với các bài toán lớn thì cấu trúc nhóm bầy lại không thực sự hiệu quả do thời gian tính toán và cập nhật lại các vectơ vận tốc và vị trí cả các cá thể lớn. Vì vậy, chúng tôi đã tiếp tục đề xuất thuật toán đàn kiến để khắc phục nhược điểm trên. Mỗi con kiến được mã hóa bằng xâu nhị phân k = {x1,x2, ...xn} độ dài n với xi ∈ [0,1],i = 1..n và sử dụng hàm Ant-Repair để đảm bảo mỗi xâu k có đúng m bit 1 ứng với m trạm BSC. Thuật toán Ant-Repair được mô tả như sau:
Thuật toán 2.3 Ant-repair
Input:Con kiếnk={x1,x2, ...xn}cóp bit 1
Output:Con kiếnk={x1,x2, ...xn}có chính xác m bit 1
Begin
If p<m thenThêm (m−p)bit 1 bằng cách sinh ngẫu nhiên các vị trí;
elseChọn ngẫu nhiên(p−m)bit 1 loại bỏ khỏi xâu nhị phân;
End
Với mỗi con kiến có đúng m bit 1 biểu diễn cho m trạm BSC, tôi sẽ xây dựng đồ thị 2 phía G = (I,J,E) với I = {1,2, ...,m} là tập hợp các trạm BSC, J = {1,2, ...,n−m} là tập các BTS và E là tập các cạnh kết nối giữa BSC ri và BTSlj. Để tìm luồng cực đại của đồ thị G, tôi thêm vào 2 đỉnh nguồnS (Source) và đỉnh đích là D (Destination) với trọng số được xác định như Hình 2.3.