3 Đảm bảo an ninh và tính sẵn sàng của dịch vụ đáp ứng QoS
2.3 thị cấu trúc của bài toán đặt trạm BSC
Trong đó, trọng số các cạnh được xác định như sau:
- Từ đỉnh S đến BSC ri là dung lượng của BSC ri: c(S,ri) = pi,(i = 1..m)
- Từ BSC ri đến BTS lj là yêu cầu của BTSlj: c(ri,lj) =wi.((i,j)∈E)
- Từ BTS lj đến D là dung lượng yêu cầu củalj: c(lj,D) =wj,(j = 1..n−m)
Từ cấu hình đó sẽ sinh ra các ma trận mùi Am×n ứng với mỗi con kiến k (m là số trạm BSC,n là số trạm BTS), các phần tử trong ma trận là một số thực thể hiện vị trí các con kiến di chuyển. Giả sử kiến k đã xây dựng xk ={x1,x2, ...,xi}
là mở rộng được, nó chọn đỉnh tiếp theoj thuộc tập các đỉnh lân cận với i để mở rộng thành xk+1 ={x1,x2, ...,xi,xj} với xác suất chuyển được tính bởi:
pijk = [τij] α [ηij]β P l∈Nk i [τij]α[ηij]β (2.10)
Với τij là nồng độ vết mùi trên đường đi từ li đến rj; α là hệ số điều chỉnh ảnh hưởng của τij; ηij là thông tin heuristic giúp đánh giá chính xác sự lựa chọn của con kiến khi quyết định đi từ ri qua lj; β là hệ số điều chỉnh ảnh hưởng của ηij; Nik là tập các đỉnh láng giềng mà con kiến k chưa đi qua khi ở vị trí lj. Q trình mở rộng tiếp tục cho tới khi kiến tìm được lời giải chấp nhận được.
Thơng tin heuristicηij định hướng quá trình di chuyển của các con kiến cho nút đang xét được xác định dựa vào ước lượng sốli có thể kết nối đến rj đang xét. Ta nói li tương thích với rj nếu wi ≤pj và li nằm trong vùng phủ sóng của rj:
ηij =pj−X Rj
wi (2.11)
với Rj là tập các trạm BTS có thể kết nối đến BSC rj.
Trong quá trình tìm đường, vết mùi trên mỗi cạnh sẽ được cập nhật lại do q trình bay hơi và tích lũy mùi khi các con kiến đi trên cạnh đó. Sau mỗi vịng lặp, vết mùi trên mỗi cạnh được cập nhật lại theo công thức sau:
τjnew =τjcurrent+∆τjk hay τi,j = (1−ρ)τi,j+ρ∆τi,j (2.12) với ∆τk
j = √ 1
(ri1−lj1)2+(ri2−lj2)2 là lượng mùi mà con kiếnk để lại trên cạnh(i,j),ρ
là hệ số bay hơi. Hàm mục tiêu đối với mỗi con kiến k được tính bởi:
fk = m X i=1 n−m X j=1 q (ri1−lj1)2+(ri2−lj2)2 (2.13)
Thuật tốn ACO-BSC1 khơng sử dụng tìm kiếm cục bộ được mơ tả như sau:
Thuật toán 2.4 ACO-BSC1-Đặt trạm điều khiển trong mạng khơng dây
Begin
Thiết lập tham số:
Hệ số điều chỉnhα, β. Kính thước đàn kiến:K. Số vòng lặp tối đa: NMax.
Khởi tạo:
Ant repair(k):∀k ∈K. Sinh ra ma trận mùi. Ghi nhận giá trị mùi ban đầux∗=k;i= 1.
Repeat
Fork = 1toK do
Tính hàm mục tiêu cho mỗi con kiếnk theo (2.13); Tính xác suất di chuyển của các con kiến theo (2.10);
If f(k)<f(x∗)then
Cập nhật giá trị mùi mới theo công thức (2.12); Ghi nhận giải pháp tốt hơnx∗=k.
Endif Endfor Untili>NMax;
End
Để tăng hiệu quả thuật toán ACO-BSC1, trong mỗi lần lặp chúng tơi kết hợp thuật tốn tìm kiếm cục bộ (Local Search) cho lời giải tìm được theo chiến lược cải tiến tốt hơn bằng cách tìm ra lân cận tốt nhất để hốn đổi vị trí giữa các BTS gọi là ACO-BSC2. Thuật tốn tìm kiếm cục bộ được mơ tả như sau:
Thuật tốn 2.5 Tìm kiếm cục bộ (Local-Search)
Begin
c1 = chọn ngẫu nhiên một BSC trong tập các BSC đã có; c2 = chọn ngẫu nhiên một BSC trong tập các BSC đã có;
S ={Lancani}là tập lân cận bằng cách hốn đổi một BTS giữa BSC c1 và BSCc2;
Phuongan =Lancan1;
For eachLancani ∈S do
If Hàm mục tiêu (Phuongan) < Hàm mục tiêu (Lancani)then
Phuongan =Lancani;
EndIf Endfor End
Có nhiều cách để xét các lân cận. Nếu sinh tồn bộ thì số lân cận cần tìm sẽ là n×(n−1)/2 (vì BTS đầu tiên sẽ có n−1 lân cận, BTS tiếp theo sẽ có n−2lân cận...). Nếu chỉ sinh các lân cận có thể gán BTS cho BSC thì ta có n×(n−1)lân cận. Trong cả hai cách tiếp cận trên, số lân cận phải xem xét đều rất lớn khin và m tăng. Trong thuật tốn này, tơi chỉ chọn ngẫu nhiên 2 lân cận c1 và c2 (tương ứng với 2 BSC được chọn ngẫu nhiên). Thuật tốn tìm kiếm cục bộ sẽ đánh giá hàm mục tiêu của hai BSC này bằng cách hoán đổi các BTS của hai BSC. Nếu việc hoán đổi các BTS đem lại hiệu quả tốt hơn thì kết quả đó được cập nhật lại vào tập phương án.
Một số nghiên cứu tương tự có thể kể đến là bài tốn định vị tập trung tổng đài trong mạng di động [10] nhằm tối ưu kết nối từ MS tới BTS bao gồm các liên kết vô tuyến hai chiều, kết nối từ BTS đến BSC được gọi là quá trình truyền dẫn, và kết nối từ BSC tới MSC. Đây là bài toán tối ưu nhiều ràng buộc và rất phức tạp thuộc lớp NP-Khó [10, 41, 62]. Vì vậy, đa số cách tiếp cận đều dựa trên
heuristic với các kiến trúc mạng đơn giản theo kiểu cây tập trung (Centralized Tree Topology) [61] như: thuật toán vét cạn của Glaber [41] sinh ra tất cả các ma trận kết nối để tìm chi phí nhỏ nhất, thuật tốn heuristic của Raisane [77] tìm kiếm dựa trên kiến trúc liên kết. Thuật tốn tham lam tối ưu vị trí các trạm BTS trong mạng di động tế bào và quản lý dung lượng mạng UMTS (Universal Mobile Telecommunication System), thuật tốn tìm kiếm Tabu, GA mở rộng dung lượng tối ưu phạm vi phủ sóng và cực tiểu số lượng các trạm truyền tải trong mạng tế bào [41, 65, 66]. Trong [54], các tác giả đã mơ hình bài tốn định vị các trạm cơ
sở trong mạng W-CDMA và thuật tốn giải quyết dựa trên bài tốn tìm đường. Bài toán quản lý và mở rộng dung lượng mạng 3G không cần tăng số lượng phân hệ BSS bằng chia tách tế bào được trình bày trong [40].
Bài tốn mở rộng dung lượng mạng khơng dây là bài toán tối ưu đa mục tiêu, có nghĩa là tìm phương án tốt nhất thỏa mãn các ràng buộc để đạt được cực tiểu nhiều mục tiêu cùng một lúc, một phương án như vậy được gọi là phương án lý tưởng. Trong một bài tốn tối ưu nhiều mục tiêu thường thì các mục tiêu xung đột với nhau nên việc cố gắng làm tăng giá trị cực tiểu một mục tiêu có thể sẽ làm giảm giá trị cực tiểu của các mục tiêu khác nên việc tồn tại phương án lý
tưởng là rất khó. Vì vậy cách tốt nhất là tìm một phương án nhằm thỏa mãn tất cả các yêu cầu các mục tiêu trong một mức độ chấp nhận được và phương án như thế gọi là phương án thỏa hiệp của các hàm mục tiêu. Đây là một bài tốn khó, có rất nhiều định nghĩa khác nhau đề cập đến phương án tối ưu như: Pareto, Borwein, Benson, Geoffrion, Kuhn-Tucker,. . . nhưng chưa có thuật tốn hiệu quả với thời gian đa thức [12, 75]. Trong [25], chúng tơi đã đề xuất thuật tốn GA cho
bài tốn mở rộng dung lượng mạng khơng dây dựa trên việc kết hợp hai quần thể thỏa mãn các ràng buộc (2.2)-(2.9) và được đánh giá độ thích nghị theo cơng thức (2.1). Thuật toán GA-MRDL để giải mở rộng dung lượng mạng không dây dựa trên việc kết hợp hai quần thểPOPX vàPOPY. Mỗi cá thể trong quần thểPOPX được chúng tơi mã hóa bằng ma trận X = (xij)n×m,(i = 1..n,j = 1..m) thể hiện sự kết nối giữa MSi đến BTSj. Tương tự, mỗi cá thể trong quần thể POPY cũng được mã hóa bằng ma trận Y = (yjk)mp, (j = 1..m,k = 1..p)thể hiện sự kết nối giữa BTSj đến BSCk. Các phần tử xij và yjk thỏa mãn ràng buộc sau:
xij =
1 NếuMSi được kết nối đến BTSj
0 Ngược lại
yjk =
1 NếuBTSj được kết nối tới BSCk
0 Ngược lại
Ban đầu, các cá thể trong quần thể được sinh ngẫu nhiên sao cho các cá thể x thỏa mãn các ràng buộc (2.2), (2.3),(2.7) và (2.9). Ứng với mỗi cá thểx sẽ sinh ngẫu nhiên để tạo ra tiếp các cá thể y sao cho các cá thể y thỏa mãn các ràng buộc (2.5), (2.6), (2.8) và (2.9). Quá trình lai ghép tự nhiên sử dụng kỹ thuật lai ghép đơn điểm (single-point crossover). Với quần thể POPX, chúng ta chọn ra 2 cá thể tốt nhất rồi sinh ra 2 số ngẫu nhiên(i,j) sao choi ∈[1,n]và j ∈[1,m]để tạo điểm lai ghép xij. (Ở đây n là số trạm MS vàm là số BTS). Sau khi lai ghép, số lượng các cá thể tăng lên, chúng ta sẽ kiểm tra độ thích nghi của các cá thể mới để lựa chọn các các thể phù hợp. Độ thích nghi là khả năng phù hợp của mỗi cá thể đối với bài tốn. Để đánh giá được độ thích nghi của các cá thể tơi sử dụng hàm đo là Fitness Function. Hồn tồn tương tự, chúng tơi áp dụng phép tốn lai ghép trên với quần thểPOPY. Q trình đột biến được thực hiện với xác suất pm sử dụng phép đột biến flipping, nghĩa là nếu cá thể có xij = 1 thì được đổi thành 0 và ngược lại. Ở đây i,j cũng được sinh ngẫu nhiên giống như trong toán tử lai ghép. Tương tự, toán tử đột biến cũng được thực hiện trên quần thểPOPY.
Với mỗi phương án s = {(x,y)|x ∈PO PX,y ∈PO PY} thỏa mãn các ràng buộc (2.2)-(2.9) chúng tơi sẽ tính tốn độ thích nghị theo cơng thức (2.1). Sau khi áp dụng các toán tử di truyền trên, quá trình chọn lọc sẽ chọn ra những cá thể tốt nhất từ các cá thể được tái sinh từ thế hệ trước và các cá thể tạo ra sau lai ghép, đột biến. Quá trình này được lặp lại để tìm ra cá thể tốt nhất qua các thế hệ, đó là lời giải của thuật tốn di truyền. Thuật toán GA cho bài toán mở rộng dung lượng được mơ tả hình thức như sau:
Thuật tốn 2.6 GA-MRDL mở rộng dung lượng mạng không dây
Begin
Khởi tạoPOPX với các phương án được sinh ngẫu nhiên;
Repeat
1.Chọn lọccác cá thể cha-mẹ trong =POPX; 2.Kết hợpGhép các cặp cha-mẹ trong =POPX;
3.Lai ghép Thực hiện phép toán lai đối với các cặp cha-mẹ trongPOPX; 4.Đột biếnCác cá thể có trongPOPX;
5.For với mỗi cá thểx ∈POPX thỏa mãn điều kiệndo
5.1Khởi tạoPOPY bằng cách sinh ngẫu nhiêny ∈POPY theox ∈POPX ; 5.2.Chọn lọcCác cá thể cha-mẹ trong quần thểPOPY;
5.3.Kết hợpGhép các cặp cha-mẹ trong quần thểPOPY;
5.4.Lai ghépThực hiện phép toán lai đối với các cặp cha-mẹ trong quần thểPOPY; 5.5.Đột biếnCác cá thể có trong quần thểPOPY;
5.6.Kết hợp nghiệm s={(x,y)|x ∈PO PX,y∈PO PY}thoả mãn (2.2)-(2.9) 6.Đánh giá độ thích nghicác phương áns theo cơng thức (2.1);
7.Lựa chọnCác cá thểx có độ thích nghi tốt nhất cho quần thể mới;
Until(Điều kiện dừng thỏa mãn);
End
Nhược điểm đầu tiên của GA-MRDL là sự hội tụ phụ thuộc vào quần thể ban đầu và tốc độ hội tụ về biên của phương án tối ưu toàn cục chậm khi số lượng quần thể được lựa chọn là tiêu chuẩn dừng của bài tốn. Tiếp theo là chi phí tính tốn lớn do phải thực hiện các phép tốn lai ghép, đột biến để sinh ra các quần thể mới rồi kết hợp các quần thể lại để xây dựng phương án. Để khắc phục những hạn chế trên, phần tiếp theo luận án sẽ đề xuất thuật toán ACO để giải quyết.
2.1.3 Đề xuất thuật toán ACO tối ưu mở rộng dung lượng2.1.3.1 Xây dựng đồ thị có cấu trúc 2.1.3.1 Xây dựng đồ thị có cấu trúc
Đầu tiên, chúng ta xây dựng đồ thị G1 = (V1,E1) với V1 = {M∪N1∪P1}
là tập các MS, BTS và BSC, E1 là tập các kết nối giữa MSi đến BTSj và kết nối giữa BTSj đến BSCk đã có thỏa mãn các ràng buộc của bài tốn. Để tìm luồng cực đại trên đồ thị G1, ta thêm 2 đỉnh nguồn S và đỉnh đích D như Hình 2.4(a)
với các biến chỉ định. Trọng số của các cạnh trên đồ thị G1 được xác định như sau:
- Trọng số các cạnh xuất phát từ đỉnh S đến MSi thể hiện yêu cầu kiểu s từ MS:c(S,MSi) =Ds
i,(i = 1..m).
- Trọng số các cạnh từ MSi đến BTSj thể hiện dung lượng yêu cầu củaMSi nếu MSi được kết nối đến BTSj:c(i,j) = Ds
i,(i = 1..m,j = 1..n1).
- Trọng số các cạnh từ BTSj đến BSCk là tổng dung lượng của cácMSi được kết nối đến BTSj:
- Trọng số các cạnh từ BSCk đến đỉnh D là tổng dung lượng của BTSj được kết nối đến BSCk:
c(k,D) = X
BTSj kết nối đếnBSCk
c(i,j), (j = 1..n1, k = 1..p1) (2.15)