Đề tài Tối ưu thời gian sống của mạng cảm biến không dây
Đột biến
+ Sau khi lai ghép, các cá thể con được tạo ra có một xác suất nhỏ sẽ bị đột biến
• Ta chọn một tập vị trí đặt các VNFs (thuộc cùng 1 SFC request) ngẫu nhiên để đột biến trên NST
• Tập vị trí đặt các VNFs được chọn sẽ được khởi tạo lại từ đầu
• Sau khi đột biến, kiểm tra xem cá thể đột biến được tạo ra đã tồn tại trong quần thể cũ chưa, nếu chưa thêm cá thể vào quần thể mới còn nếu đã tồn tại thì cần đột biến lại đến khi thêm được cá thể đột vào quần thể mới thì thôi.
• Ví dụ :
Chọn lọc quần thể
+ Chọn lọc quần thể sinh tồn mới : kết hợp phương pháp chọn một số cá thể tốt nhất từ quần thể cha, còn lại phần lớn cá thể sẽ sử dụng bánh xe Roulette để lựa chọn ngẫu nhiên
+ Cách chọn lọc quần thể như vậy giúp chúng ta vẫn giữ được những cá thể tốt nhất từ thế hệ trước nhưng vẫn mở rộng được không gian tìm kiếm mới từ sự chọn lọc khá ngẫu nhiên. Đồng thời phương pháp này rất hiệu quả trong việc hạn chế sự hội tụ sớm của quần thể
+ Sắp xếp quần thể cha theo độ thích nghi giảm dần, chọn một vài cá thể đầu tiên đưa vào quần thể mới
19 trang |
Chia sẻ: hachi492 | Ngày: 05/01/2022 | Lượt xem: 491 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Đề tài Tối ưu thời gian sống của mạng cảm biến không dây, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
──────── * ───────
Báo cáo bài tập lớn
MÔN: TÍNH TOÁN TIẾN HÓA
TỐI ƯU THỜI GIAN SỐNG CỦA MẠNG CẢM BIẾN KHÔNG DÂY
Sinh viên thực hiện : Phùng Văn Minh
Mã số sinh viên : 20183593
Giảng viên hướng dẫn : PGS.TS. Huỳnh Thị Thanh Bình
Hà Nội, tháng 5 năm 2021
MỤC LỤC
CHƯƠNG 1: GIỚI THIỆU
1.1 Giới thiệu về VNF
Hiện nay, cùng với sự xuất hiện của các công nghệ và dịch vụ mạng mới dẫn đến lượng kết nối trên hệ thống mạng tăng theo cấp số mũ. Trong mô hình cung cấp dịch vụ mạng truyền thống, việc triển khai các dịch vụ mạng trên các thiết bị phần cứng vô cùng đắt đỏ do việc thiết kế và sản xuất chiếm chi phí lớn, đồng thời việc vận hành và bảo trì cũng làm tăng chi phí cho những nhà cung cấp dịch vụ.Ngoài ra việc triển khai dịch vụ mạng rất cứng nhắc, không linh hoạt và khó mở rộng, do đó phương pháp truyền thống đã thất bại về các tiêu chí đảm bảo chất lượng dịch vụ, đặt lên thách thức cho các nhà cung cấp dịch vụ
Ảo hóa dịch vụ mạng (Network Function Virtualization – NFV) được đề xuất lần đầu bởi viện tiêu chuẩn viễn thông châu âu (European Telecommunications Standards Institute – ETSI) vào năm 2012 hiện lên là giải pháp lý tưởng cho vấn đề trên. Thay vì triển khai các dịch vụ mạng trên các thiết bị phần cứng, các dịch vụ mạng sẽ được vận hành trong môi trường ảo. Trong NFV, những dịch vụ mạng được vận hành trong môi trường ảo (Virtual Network Function – VNF) sẽ được xếp theo một thứ tự được định nghĩa trước theo dòng chảy dữ liệu, hay được biết đến là chuỗi dịch vụ (Service Function Chaining – SFC).SFC có thể được vận hành bằng cách đặt các VNF yêu cầu trên mạng một cách hiệu quả và linh hoạt. Thêm vào đó, các VNF trên môi trường ảo có thể được đặt thêm hoặc loại bỏ với chi phí rất thấp và đạt hiệu quả cao trong các trường hợp khi những yêu cầu trong các SFC bị thay đổi. NFV cho phép việc phân phối tài nguyên mạng diễn ra theo hướng dễ thay đổi (scalable) và mềm dẻo hơn, giúp giảm đáng kể chi phí cho các nhà cung cấp dịch vụ.
Bên cạnh những lợi ích mà NFV đem lại, một vấn đề được đặt ra là làm thế nào để phân phối hiệu quả tài nguyên mạng để vận hành các SFC yêu cầu. Vấn đề trên đã dẫn đến các bài toán đặt VNF và định tuyến (VNF Placement and Traffic Routing – VPTR) và những biến thể khác, đòi hỏi phải việc đặt các VNF được yêu cầu và định được tuyến đường giữa các cặp VNF kề nhau sao cho chúng không vi phạm khả năng (về bộ nhớ, CPU) trên node và khả năng (về bang thông) trên các liên kết
1.2 Nghiên cứu liên quan
- Báo cáo trên dựa trên các nghiên cứu về VNF trong 2 bài báo:
P. Sun, J. Lan, J. Li, Z. Guo and Y. Hu, "Combining Deep Reinforcement Learning With Graph Neural Networks for Optimal VNF Placement," in IEEE Communications Letters, vol. 25, no. 1, pp. 176-180, Jan. 2021.
R. Solozabal, J. Ceberio, A. Sanchoyerto, L. Zabala, B. Blanco and F. Liberal, "Virtual Network Function Placement Optimization With Deep Reinforcement Learning," in IEEE Journal on Selected Areas in Communications, vol. 38, no. 2, pp. 292-303, Feb. 2020.
CHƯƠNG 2: BÀI TOÁN
Bài toán này là một biến thể dựa theo mô hình bài toán trong hai bài báo tại mục 1.2 Nghiên cứu liên quan.
2.1 Tóm tắt bài toán
Bài toán cho một mô hình mạng đã cho sẵn các thông tin về tài nguyên hiện có (Băng thông trên các liên kết, tài nguyên bộ nhớ và tài nguyên xử lý (CPU) trên các node) và cho nhiều yêu cầu SFCs – SFCs request (Danh sách và thứ tự các VNFs trên từng SFC, các yêu cầu về tài nguyên của SFC như yêu cầu băng thông, bộ nhớ, bộ xử lý,và cả yêu cầu về độ trễ tối đã trên mỗi SFC để đảm bảo về chất lượng dịch vụ)
Nhiệm vụ của bài toán là định tuyến đường đi cho các SFC request và trên các đường đi đã định tuyến thì đặt các VNFs tương ứng của các SFC request sao cho thỏa mãn các ràng buộc bài toán và tối thiểu hóa năng lượng tiêu thụ trên toàn bộ mạng
2.2 Mô tả bài toán
2.2.1 Đầu vào
Cho đồ thị mạng G(V, L) trong đó :
V: tập các đỉnh của mạng
L: tập các liên kết của mạng
Các tài nguyên và thông số trên mỗi nút mạng n :
cnproc : số lượng CPU xử lý khả dụng trên nút n
cnmem : lượng bộ nhớ lưu trữ khả dụng trên nút n
Wncpu : năng lượng tiêu thụ trên mỗi đơn vị CPU trên nút n
Wnmem : năng lượng tiêu thụ trên mỗi đơn vị bộ nhớ trên nút n
dn : trễ xử lý trên nút n
Các tài nguyên và thông số trên mỗi liên kết e của mạng :
cebw : lượng băng thông khả dụng trên liên kết e
Wnet : năng lượng tiêu thụ trên mỗi đơn vị băng thông
de : trễ xử lý trên liên kết e
Các yêu cầu tài nguyên và thông số trên các SFC :
αF : băng thông yêu cầu của SFC F
wFmem : bộ nhớ yêu cầu của SFC F
wF,fproc : CPU yêu cầu của VNF f trong SFC F
df : độ trễ xử lý VNF f
DF : đỗ trễ tối đa trên SFC F
Các tham số khác của mạng :
XFn : Tham số nhị phân để xác định SFC F có đi qua nút n hay không ?
YFe : Tham số nhị phân để xác định SFC F có đi qua liên kết e hay không ?
XF,fn : Tham số nhị phân để xác định VNF f của SFC F có đặt trên nút n hay không ?
Ví dụ : Đồ thị mạng 7 đỉnh.
2.2.2 Rằng buộc bài toán
Khi định tuyến các luồng SFC và đặt các VNFs trên các SFC thì cần thỏa mãn 4 ràng buộc sau đây của bài toán :
Thứ nhất là ràng buộc về băng thông trên liên kết, các luồng SFC có thể sử dụng chung liên kết nhưng phải đảm bảo rằng tổng số băng thông được yêu cầu trên mỗi liên kết của mạng không vượt qua được băng thông khả dụng trên liên kết ấy :
F∈FtαFYFe≤cebw ( ∀ⅇ ϵ L)
Thứ hai là ràng buộc về bộ nhớ trên mỗi nút mạng, các luồng SFC có thể đi qua nhiều nút mạng cùng nhau (không nhất thiết phải đặt VNF trên đó) nhưng phải đảm bảo rằng tổng số tài nguyên bộ nhớ được yêu cầu trên mỗi nút mạng không vượt quá tài nguyên bộ nhớ khả dụng trên nút mạng ấy :
F∈FtwFmemXFn≤cnmem (∀n ϵ V)
Thứ ba là ràng buộc về CPU trên mỗi nút mạng, các VNF của các SFC khác nhau có thể được đặt trên cùng một nút mạng nhưng phải đảm bảo rằng tổng số tài nguyên CPU được yêu cầu trên mỗi nút mạng không vượt quá tài nguyên CPU khả dụng trên nút mạng ấy :
F∈FtwF,fprocXF,fn≤cnproc ( ∀n ϵ V)
Cuối cùng là ràng buộc về độ trễ trên các SFC, tổng các độ trễ gây ra bởi các nút mạng, liên kết và VNFs nằm trên các luồng SFC phải đảm bảo không vượt quá độ trễ trên các SFC tương ứng :
e∈LdeYFe+n∈NdnXFn+nϵNfϵFdfXF,fn≤DF (∀F∈Ft)
Ví dụ minh họa :
Đồ thị mạng gồm 7 đỉnh, 2 SFC : SFC1 = {VNF1-VNF2-VNF3}
SFC2 = {VNF4-VNF5-VNF6}
Hai luồng SFCs sau khi định tuyến và đặt thì sử dụng chung liên kết (0-1) và chung nút 0,1,6.
2.2.3 Hàm mục tiêu
Các nguồn tài nguyên tiêu thụ năng lượng trên mạng là tài nguyên băng thông, tài nguyên lưu trữ và tài nguyên xử lý
Hàm mục tiêu của mô hình bài toán là tối thiểu hóa năng lượng tiêu thụ trên toàn bộ mạng :
agrmin F∈Ft n∈VWncpu⋅fϵFwF,fproc.XF,fn +Wnmem.wFmem.XFn+ eϵLWnet⋅αF⋅YFe
CHƯƠNG 3. ĐỀ XUẤT PHƯƠNG ÁN
Để giải quyết mô hình bài toán trên, em đề xuất thuật toán GA (Genetic Algorithm) hai lớp
Lớp thuật toán GA thứ nhất dùng để định tuyến cho các luồng SFC request (xác định đường đi trên mạng)
Lớp thuật toán GA thứ hai sẽ mã hóa đầu ra của GA thứ nhất nhằm xác định vị trị của các VNFs trên các nút thuộc luồng đã định tuyến
Sơ đồ thuật toán được thể hiện như sau :
3.1 Thuật toán GA định tuyến các luồng SFCs request
3.1.1. Mã hóa
Có một tập các luông SFCs request cần được định tuyến trên mạng :
Ta sẽ mã hóa đường đi của các SFCs từ Ingress đến Egress bằng mã hóa đa giá trị số nguyên
Mỗi gene (tương ứng với nút) có giá trị bằng vị trí nút tiếp theo của tuyến đường, với gene có giá trị -1 tương ứng với việc đó là đầu ra của mạng (egress node) hoặc luồng SFC không đi qua nút đó.
Với chiều dài NST = kích thước của số nút trong mạng * số SFCs request
Ví dụ : Cho mạng có 7 node (0-6) , có 3 chuỗi SFCs request (SFC1,SFC2,SFC3)
Mã hóa :
Kích thước NST = 7*3 = 21
Giải mã : Sử dụng tập giá trị của NST để giải mã ra các tuyến đường của các luồng SFCs theo công thức : (SFC i, ∀Gene j ϵ SFC I, n là số nút mạng) thì nút tiếp theo của Gene[j] là : Gene[j] – (i-1)*n
Ví dụ : nút tiếp theo của Gene[9] = 11 – (2-1)*7 = 4
Giải mã NST trên ta thu được tập các tuyến đường các SFCs sẽ đi qua
3.1.2. Đánh giá cá thể
Khi định tuyến cho các luồng SFC thì ta có thể xác định được năng lượng tiêu thụ tài nguyên về băng thông và bộ nhớ của cả mạng
Vì vậy để đanh giá cá thể định tuyến tốt ta sẽ đánh độ thích nghi (lấy âm nên cá thể nào tiêu thụ năng lượng càng nhỏ thì độ thích nghi càng cao) của cá thể dựa trên tổng năng lượng tiêu thụ của băng thông và bộ nhớ trên mạng :
Fitness (route) = - ( nϵVWnmem.wFmem + eϵLWnet⋅αF⋅YFe)
* Lấy giá trị âm thể hiện rằng mạng tiêu thụ càng ít năng lượng thì độ thích nghi càng cao
Do có thể xuất hiện nhiều trường hợp cá thể không hợp lệ nên ta không thể loại bỏ tất cả cá thể đó vì sẽ khiến quần thể có quá ít cá thể, đồng thời các cá thể không hợp lệ lai ghép/đột biến có thể tạo được ra một số cá thể hợp lệ. Vì vậy ta vẫn sẽ giữ lại những cá thể không hợp lệ trong quần thể và sử dụng hàm phạt để làm giảm dộ thích nghi của cá thể không hợp lệ :
Hàm phạt :
Vi phạm ràng buộc về bộ nhớ : - coeff(mem)* Fitness (route)
Vi phạm ràng buộc về bang thông : -coeff(bw)* Fitness (route)
Vi phạm ràng buộc về độ trễ : -coeff(delay)* Fitness (route)
Các tham số về trọng số phạt coeff được xác định qua quá trình thực nghiệm
3.1.3. Lai ghép
Chọn lọc cha mẹ để lai ghép theo thể thức giao đấu, tức là chọn ngẫu nhiên hai cá thể từ quần thể, so sánh độ thích nghi để chọn ra cá thể tốt hơn làm cha 1, tương tự như vậy để tìm cá thể làm cha 2.
Ví dụ :
Sử dụng phương pháp lai ghép nhiều điểm cắt
Số điểm cắt bằng số SFCs request – 1
Tham số xác suất ngẫu nhiên Ui ϵ [0,1] :
Ui < 0.5 : con 1 nhận luồng SFCl của cha 1, con 2 nhận luồng SFCl của cha 2.
Ui ≥ 0.5 : con 1 nhận luồng SFCl của cha 2, con 2 nhận luồng SFCl của cha 1.
Sau quá trình lai ghép cần kiểm tra xem cá thể con sinh ra đã tồn tại trong quần thể cũ chưa? Nếu chưa thì đưa cá thể con vào quần thể mới, nếu đã tồn tại thì cần thực hiện lại bước lai ghép đến khi có thể đưa cá thể con vào quần thể mới.
Ví dụ :
3.1.4. Đột biến
Sau khi lai ghép, các cá thể con được tạo ra có một xác suất nhỏ sẽ bị đột biến
Ta chọn một luồng SFC ngẫu nhiên để đột biến trên NST
Luồng SFC được chọn sẽ được khởi tạo lại từ đầu
Sau khi đột biến, kiểm tra xem cá thể đột biến được tạo ra đã tồn tại trong quần thể cũ chưa, nếu chưa thêm cá thể vào quần thể mới còn nếu đã tồn tại thì cần đột biến lại đến khi thêm được cá thể đột vào quần thể mới thì thôi.
Ví dụ :
3.1.5. Chọn lọc quần thể
Chọn lọc quần thể sinh tồn mới : kết hợp phương pháp chọn một số cá thể tốt nhất từ quần thể cha, còn lại phần lớn cá thể sẽ sử dụng bánh xe Roulette để lựa chọn ngẫu nhiên
Cách chọn lọc quần thể như vậy giúp chúng ta vẫn giữ được những cá thể tốt nhất từ thế hệ trước nhưng vẫn mở rộng được không gian tìm kiếm mới từ sự chọn lọc khá ngẫu nhiên. Đồng thời phương pháp này rất hiệu quả trong việc hạn chế sự hội tụ sớm của quần thể
Sắp xếp quần thể cha theo độ thích nghi giảm dần, chọn một vài cá thể đầu tiên đưa vào quần thể mới
Phần còn lại chọn lọc theo bánh xe Roulette :
Tính tổng độ thích nghi của cả quần thể
F= i=1Nf(indi)
Tính xác suất lựa chọn cá thể thứ i là pi= f(indi)F
Xác suất quỹ tích của cá thế thứ i là qi= j=1ipi
Tham số ngẫu nhiên r ϵ [0,1]
Cá thể thứ i được lựa chọn nếu qi-1≤ r 1r < q1 nếu i=1
Ví dụ :
3.2 Thuật toán GA đặt các VNFs trên các luồng SFCs
Dựa vào giải mã các NST của thuật toán GA định tuyến ở trên, ta sẽ thu được các luồng định tuyến SFCs trên mạng và từ đó ta có thể đặt các VNFs trên các luồng tương ứng.
3.2.1. Mã hóa
Có một tập thứ tự các VNFs trên mỗi SFC cần đặt trên luồng SFC ấy đã định tuyến ở trên.
Ta sẽ mã hóa cách đặt các VNFs bằng mã hóa đa giá trị số nguyên
Mỗi gene (tương ứng với VNF cần đặt) có giá trị bằng vị trí nút sẽ đặt VNF đó,vị trí đặt cần thỏa mãn thứ của luồng SFC chứa VNF đó đã được định tuyến ở trên.
Với chiều dài NST = tổng số VNF của tất cả các luồng SFCs request
Ví dụ : Cho mạng có 7 node (0-6) , có 3 chuỗi SFCs request (SFC1,SFC2,SFC3):
SFC1 = {VNF1-VNF2- VNF3- VNF4}
SFC2 = {VNF5-VNF6-VNF7}
SFC3 = {VNF8-VNF9-VNF10-VNF11}
Mã hóa :
Kích thước NST = 4 + 3 + 4 = 11
3.2.2 Đánh giá cá thể
Khi đặt các VNFs trên các luồng SFC đã định tuyến thì ta có thể xác định được năng lượng tiêu thụ của tất cả tài nguyên trên mạng
Vì vậy để đánh giá cá thể đặt VNFs tốt ta sẽ tính độ thích nghi của cá thể dựa trên tổng năng lượng tiêu thụ đã biết sau khi định tuyến (băng thông và bộ nhớ) và năng lượng tiêu thụ tài nguyên CPU :
Fitness = - nϵVWncpu⋅fϵFwF,fproc.XF,fn + Fitness (route)
* Lấy giá trị âm thể hiện rằng mạng tiêu thụ càng ít năng lượng thì độ thích nghi càng cao
Do có thể xuất hiện nhiều trường hợp cá thể không hợp lệ nên ta không thể loại bỏ tất cả cá thể đó vì sẽ khiến quần thể có quá ít cá thể, đồng thời các cá thể không hợp lệ lai ghép/đột biến có thể tạo được ra một số cá thể hợp lệ. Vì vậy ta vẫn sẽ giữ lại những cá thể không hợp lệ trong quần thể và sử dụng hàm phạt để làm giảm dộ thích nghi của cá thể không hợp lệ :
Hàm phạt :
Vi phạm ràng buộc về tài nguyên CPU : - coeff(CPU)* Fitness
Tham số về trọng số phạt coeff được xác định qua quá trình thực nghiệm
3.2.3 Lai ghép
Chọn lọc cha mẹ để lai ghép theo thể thức giao đấu, tức là chọn ngẫu nhiên hai cá thể từ quần thể, so sánh độ thích nghi để chọn ra cá thể tốt hơn làm cha 1, tương tự như vậy để tìm cá thể làm cha 2.
Ví dụ :
Sử dụng phương pháp lai ghép nhiều điểm cắt
Số điểm cắt bằng số SFCs request – 1
Tham số xác suất ngẫu nhiên Ui ϵ [0,1] :
Ui < 0.5 : con 1 nhận vị trí đặt VNFs trên luồng SFCl của cha 1, con 2 nhận vị trí đặt VNFs trên luồng SFCl của cha 2.
Ui ≥ 0.5 : con 1 nhận vị trí đặt VNFs trên luồng SFCl của cha 2, con 2 nhận vị trí đặt VNFs trên luồng SFCl của cha 1.
Sau quá trình lai ghép cần kiểm tra xem cá thể con sinh ra đã tồn tại trong quần thể cũ chưa? Nếu chưa thì đưa cá thể con vào quần thể mới, nếu đã tồn tại thì cần thực hiện lại bước lai ghép đến khi có thể đưa cá thể con vào quần thể mới.
Ví dụ :
3.2.4 Đột biến
Sau khi lai ghép, các cá thể con được tạo ra có một xác suất nhỏ sẽ bị đột biến
Ta chọn một tập vị trí đặt các VNFs (thuộc cùng 1 SFC request) ngẫu nhiên để đột biến trên NST
Tập vị trí đặt các VNFs được chọn sẽ được khởi tạo lại từ đầu
Sau khi đột biến, kiểm tra xem cá thể đột biến được tạo ra đã tồn tại trong quần thể cũ chưa, nếu chưa thêm cá thể vào quần thể mới còn nếu đã tồn tại thì cần đột biến lại đến khi thêm được cá thể đột vào quần thể mới thì thôi.
Ví dụ :
3.2.5 Chọn lọc quần thể
Chọn lọc quần thể sinh tồn mới : kết hợp phương pháp chọn một số cá thể tốt nhất từ quần thể cha, còn lại phần lớn cá thể sẽ sử dụng bánh xe Roulette để lựa chọn ngẫu nhiên
Cách chọn lọc quần thể như vậy giúp chúng ta vẫn giữ được những cá thể tốt nhất từ thế hệ trước nhưng vẫn mở rộng được không gian tìm kiếm mới từ sự chọn lọc khá ngẫu nhiên. Đồng thời phương pháp này rất hiệu quả trong việc hạn chế sự hội tụ sớm của quần thể
Sắp xếp quần thể cha theo độ thích nghi giảm dần, chọn một vài cá thể đầu tiên đưa vào quần thể mới
Phần còn lại chọn lọc theo bánh xe Roulette :
Tính tổng độ thích nghi của cả quần thể
F= i=1Nf(indi)
Tính xác suất lựa chọn cá thể thứ i là pi= f(indi)F
Xác suất quỹ tích của cá thế thứ i là qi= j=1ipi
Tham số ngẫu nhiên r ϵ [0,1]
Cá thể thứ i được lựa chọn nếu qi-1≤ r 1r < q1 nếu i=1
Ví dụ :
3.3 Thực nghiệm và đánh giá
Tiêu chí đánh giá : năng lượng tiêu thụ trên toàn bộ mạng (bao gồm năng lượng tiêu thụ tài nguyên CPU, bộ nhớ và băng thông)
Bộ dữ liệu được tạo ngẫu nhiên và có căn chỉnh để phù hợp với bài toán
Sử dụng kết quả của thuật toán chính xác (vét cạn tất cả trường hợp) để so sánh với kết quả trung bình được GA hai lớp tạo ra
Kết quả đánh giá được tính toán trên bộ tham số sau :
Loại tham số
Giá trị tham số
Xác suất lai ghép (pc)
0.7
Xác suất đột biến (pm)
0.15
Hệ số phạt về CPU
3
Hệ số phạt về băng thông
5
Hệ số phạt về bộ nhớ
5
Hệ số phạt về độ trễ
4
Số cá thể trong quần thể (GA1)
100
Số thế hệ (GA1)
100
Số cá thể trong quần thể (GA2)
50
Số thế hệ (GA2)
500
Số lần lặp đánh giá kết quả trên một tập dữ liệu (epoch)
20
Kết quả thu được trên tập dữ liệu :
Số đỉnh trên mạng
Số liên kết trên mạng
Số luồng SFCs
Tổng số VNF đặt trên mạng
Kết quả trung bình
GA hai lớp
Kết quả thuật toán chính xác
5
10
3
8
96
96
6
15
3
8
159
159
7
21
3
8
222.45
222
8
28
3
8
285.15
285
9
36
3
8
348
348
10
45
3
8
412.2
411
11
55
3
8
457.8
456
12
66
3
8
547.95
546
13
78
3
8
627.6
624
14
91
3
6
655.8
651
15
105
3
6
749.4
744
16
120
3
6
828.4
825
17
136
2
6
549.9
549
18
153
2
6
612.25
611
19
171
2
6
646.5
645
20
188
1
4
533.2
532
Biểu đồ năng lượng tiêu thụ của mạng 20 đỉnh, với 1 SFC và 4 VNFs qua 500 thế hệ.
Nhận xét :
Kết quả trung bình của thuật toán GA đề xuất có độ lệch tương đối nhỏ so với kết quả của bài toán.
Số đỉnh của mạng khá nhỏ do thuật toán chính xác (vét cạn) dùng để so sánh kết quả không khả năng tính toán trên số đỉnh lớn.
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Kết luận
Thuật toán GA được đề xuất có kết quả khá chính xác với bộ dữ liệu nhỏ ở trên, nhưng vẫn tồn tại một số nhược điểm về phương pháp chọn lọc quần thể mới để có thể tạo ra được không gian tìm kiếm lớn hơn cho lời giải bài toán
Thuật toán chính xác dùng để so sánh không thể tính toán trên tập dữ liệu lớn, khiến ta chưa thể đánh giá được tổng thể thuật toán GA được đề xuất
Hướng phát triển
Để thuật toán được đề xuất trở nên hữu dụng trong thực tế, em muốn phát triển thêm một điểm :
Đầu tiên, xây dựng tập dữ liệu tổng quát và có tính thực tiễn cao.
Thứ hai, thử nghiệm nhiều phương pháp lai ghép, đột biến và chọn lọc quần thể mới để tìm ra những phương pháp tối ưu nhất cho bài toán
Thứ ba, phát triển một thuật toán có khả năng tính toán trên tập dữ liệu lớn để có thể đánh giá thuật toán GA được đề xuất một cách tổng quát nhất.
Các file đính kèm theo tài liệu này:
- de_tai_toi_uu_thoi_gian_song_cua_mang_cam_bien_khong_day.docx