CHUYỂN ĐỔI BƯỚC SểNG
3.3.2. Thuật toỏn WCP sử dụng thuật toỏn GA
Nguyờn tắc của thuật toỏn nàylà tỡm một bộ số (vector) tối ưu để đặt cỏc WC trong mạng bằng cỏch phõn bổ chỳng một cỏch ngẫu nhiờn trờn mạng rồi từ đú tỡm ra được tổ hợp tối ưu với xỏc suất từ chối là nhỏ nhất. Thuật toỏn sẽ rất phức tạp khi số node tớnh toỏn là lớn chỉ ỏp dụng được cho mạng Ring.
Giả sử cú K bộ chuyển đổi trong mạng cú N node. Bài toỏn đặt ra là tỡm một tổ hợp để đặt K bộ chuyển này vào trong mạng sao cho đem lại xỏc suất nghẽn là nhỏ nhất (Bp)
Đầu tiờn ta đỏnh dẫu mỗi node trong mạng với một chỉ số duy nhất từ 0 đến N-1. Chỳng ta gọi vector vị trớ đặt là ν [i] với K chiều. Giỏ trị của phần tử
thứ i (i=1,2,….,K) của vector là chỉ số của node mà bộ chuyển đổi thứ i này đặt tại đú. Vớ dụ nếu giỏ trị của vector là (1,2,4,7,9) cho việc đặt 5 bộ WC vào mạng NSFNet 14 node thỡ 5 bộ này phải được đặt tương ứng vào cỏc node cú chỉ số là 1,2,4,7, và 9. Mỗi một giỏ trị khỏc nhau của vector, tương ứng cú một tập vị trớ node được đặt WC, sẽ cho ta một xỏc suất nghẽn khỏc nhau. Vị trớ đặt tối ưu là vị trớ cú xỏc suất nghẽn nhỏ nhất. Chỳng ta cho phộp thuật toỏn GA thực hiện tỡm kiếm một bộ tối ưu trong một khoảng thời gian chấp nhận được để đạt được để đạt được tới Bp.
Thực hiện thuật toỏn GA là một thủ tục tối ưu thực hiện vũng lặp để đặt được kết quả gần với giỏ trị tối ưu. í tưởng cơ bản là lấy từ quỏ trỡnh tiến húa trong tự nhiờn. Trong bài toỏn đặt tối ưu của ta, hàm mục tiờu được định nghĩa là xỏc xuất nghẽn cuộc gọi trung bỡnh Bp . Vỡ xỏc suất nghẽn cho cỏc thuật giảI LLR-MSM và LLR-MMM chưa cú sẵn cụng thức, Bp được tớnh từ cỏc kết quả mụ phỏng.
GA bắt đầu quỏ trỡnh tiến húa của mỡnh bằng việc đặt bộ chuyển đổi vào cỏc node một cỏch ngẫu nhiờn. Quỏ trỡnh tiến húa này được lặp đi lặp lại một số lần (qua một số thế hệ) được xỏc định trước hoặc đến khi kết quả hội tụ (khụng tiến húa nữa) thỡ thuật toỏn GA sẽ dừng và kết quả thu được cuối cựng là vị trớ đặt tối ưu với xỏc suất nghẽn nhỏ nhất. Một tiến húa thế hệ gồm việc chọn giống -chọn chỗ đặt (chọn nhiễm sắc thể) mà cú khả năng sống sút trong thế hệ tiếp theo giao phối (crossover)để kết hợp cỏc đặc tớnh tốt của cỏc vị trớ đặt (placements) và tạo ra cỏc vị trớ mới (kết hợp cỏc gen từ cỏc nhiễm sắc thể khỏc nhau để tạo ra cỏc nhiễm sắc thể mới), và cuối cựng là sự biến đổi (đột biến gen) để thay đổi ngẫu nhiờn cỏc phần tử của một lần đặt( cụ thể là chuyển bộ chuyển đổi từ node này sang node khỏc. Ba bước được thực hiện trong quỏ trỡnh tiến húa này được lặp đi lặp lại. Việc lựa chọn cỏc vị trớ đặt cũn sống sút từ lần lặp này sang lần lặp sau tuõn theo hàm phự hợp (fitness function) F được định nghĩa là chuyển đổi mũ õm của xỏc suất nghẽn được mụ tả ở thuật giải 2 dưới đõy.
"Nguồn: [2], trang 5"
Trong quỏ trỡnh chuyển bậc, cỏc vị trớ đăt cú xỏc suất nghẽn nhỏ hơn sẽ cú cơ hội sống sút cao hơn nhiều trong quỏ trỡnh tiến húa. t là một hằng số dương rất nhỏ ( trong thực hiện: t=1ì10−6) để trỏnh trường hợp Bp=0. Tham số α điều chỉnh tốc độ hội tụ của quỏ trỡnh lặp GA. Khi sự sai khỏc giỏ trị
giữa giỏ trị mục tiờu của cỏc vectors vị trớ ứng cử nhỏ ( max 0.1
< ∆
V ), giỏ trị tuyệt đổi α được gỏn giỏ trị lơn hơn (α =−2) để tăng sự sai khỏc của giỏ trị phự
hợp (finitness value) của mỗi bộ ứng cử. Khi sự sai lệch của cỏc giỏ trị mục tiờu của cỏc vector ứng cử lớn ( max 0.9
> ∆
V ). Giỏ trị tuyệt đối α được gỏn giỏ tri
nhỏ hơn (α =−0.5) để cho sai khỏc của giỏ trị phự hợp của mỗi vector ứng cử
bị giảm, và vỡ vậy cú thể trỏnh được một số vector ứng cử cú giỏ trị mục tiờu cao hơn khụng chiếm quỏ trỡnh GA.
Trong giai đoạn trao đổi (cross-over), hai vector vị trớ đặt trao đổi một phần cỏc phần tử của nú (cỏc gen) và tạo ra cỏc vị trớ đặt mới. Đối với hai vị trớ đặt cha (parental placements), một vector mặt lạ (mask vector)cú cựng chiều dài với vector vị trớ với cỏc phần tử được gỏn giỏ trị ‘1’ và ‘0’. Một vớ dụ được cho trong bảng 2. Nếu bit thứ i của mặt lạ là 1, thỡ phần tử thứ i của hai vector “cha“ sẽ được trao đổi với nhau, cũn nếu bit mặt lạ thứ i là 0 thỡ phần tử thứ i khụng bị thay đổi. Chỳ ý rằng cú thể xảy ra đặt vị trớ khụng hợp lệ nếu giai đoạn giao phối này được ỏp dụng trực tiếp do cú mụt số phần tử bị trựng nhau cú thể xảy ra trong một vector. Vớ dụ ở bảng 3.2, vector A (5, 4, 6, 1, 8) trao đổi cỏc phần tử cho bộ chuyển đổi: 2, 3, và 4, với vector B (7, 8, 2, 9, 3) và vỡ vậy hai vector mới là A/ (5, 8, 2, 9, 8) và B/ (7, 4, 6, 1, 3) được sinh ra. Tuy nhiờn vector vị trớ đặt A/ khụng được phộp bởi vỡ cỏc bộ chuyển đổi 2 và 5 được đặt ở cựng node 8. Kỹ thuật sau đõy được sử dụng đờ giải bài toỏn này. Đầu tiờn, hai vetor “cha” được sắp xếp lại (hoỏn vị nhón ID bộ chuyển đổi) để cỏc bộ chuyển đổi này tại cựng một nỳt được đặt tại cựng một vị trớ trong cỏc vector “cha”. Một sự giao phối thống nhất được chỉ ra trong bảng 3.3. Vector B (7, 8, 2, 9, 3) được sắp xếp lại thành vector B* (7, 3, 2, 9, 8) để vector con A/ khụng cú phần tử trựng lặp nào.
5 Trao đổi đồng nhất hợp lệ
Trong thủ tục hoỏn chuyển vị trớ (mutation procedure), một số phần tử của vector vị trớ đặt (placement vector) cú thể thay đổi được theo một số phõn bố xỏc suất. Hoỏn chuyển đơn điểm được thực hiện. Như trong vớ dụ ở bảng 3.4, bộ chuyển đổi số 2 được chuyển tử vị trớ node 4 sang node 2.
6 Hoỏn đổi một vị trớ
Toàn bộ bài toỏn định tuyến bước súng và đặt bộ chuyển đổi này là một quỏ trỡnh lặp của thuật toỏn RWA và GA, được mụ tả trong thuật giải 3
"Nguồn: [2], trang 8"
Khi chạy mụ phỏng, sẽ mất vài phỳt để tớnh ra xỏc suất nghẽn cuộc gọi. Xỏc xuất giao phối và xỏc suất tiến húa được chọn rất cẩn thận để GA đưa ra kết quả tối ưu sau ớt vũng lặp.
Nhận xột thuật toỏn: Thuật toỏn dựa trờn cơ sở chọn một tổ hợp bất kỡ
cỏc bộ chuyển đổi bước súng rồi so sỏnh cỏc tổ hợp với nhau để tỡm ra một tổ hợp tối ưu. Thuật toỏn sẽ rất phức tạp nếu số lượng cỏc node lớn và sẽ mất rất nhiều thời gian để cú được kết quả như mong muốn.