Bài viết trình bày việc xây dựng một mô hình bài toán luồng công việc trong môi trường điện toán đám mây và đề xuất một thuật toán dựa trên phương pháp tối ưu bày đàn cục bộ để sắp xếp luồng công việc thực thi trên môi trường điện toán đám mây đảm bảo thời gian hoàn thành luồng công việc nhỏ nhất.
CẢI TIẾN VIỆC LẬP LỊCH LUỒNG CÔNG VIỆC TRONG MÔI TRƯỜNG ĐIỆN TOÁN ĐÁM MÂY DỰA TRÊN PHƯƠNG PHÁP PSO LÂN CẬN Phan Thanh Toàn * Nguyễn Thế Lộc+ * Khoa Sư phạm kỹ thuật, trường đại học Sư phạm Hà Nội + Khoa Công nghệ thông tin, trường đại học Sư phạm Hà Nội Tóm tắt: Luồng cơng việc dãy có thứ tự tác vụ cần phải thực thi để đạt mục đích, Bài tốn lập lịch luồng cơng việc tốn xếp tác vụ cho thực thi số máy xác định cho đạt hiệu tốt nhất, tốn quan trọng trung tâm điện toán đám mây Trong báo chúng tơi xây dựng mơ hình tốn luồng cơng việc mơi trường điện tốn đám mây đề xuất thuật toán dựa phương pháp tối ưu bày đàn cục để xếp luồng cơng việc thực thi mơi trường điện tốn đám mây đảm bảo thời gian hồn thành luồng cơng việc nhỏ luồng công việc ứng dụng Montage [1], CyberShake [2], Epigenomics [3], LIGO [4], v.v Keyword: Workflow scheduling, Particle Swarm Optimization, cloud computing, local search (iii) thuật toán lập lịch tên LOSPSO I GIỚI THIỆU Trong năm gần điện toán đám mây ứng dụng rộng rãi nhiều lĩnh vực khác sống nghiên cứu khoa học Trong môi trường điện toán đám mây tài nguyên phần cứng, phần mềm cung cấp cho khách hàng dạng dịch vụ, khách hàng trả phí sử dụng theo tài nguyên thực dùng Luồng công việc (workflow) chuỗi có thứ tự tác vụ (task) thực đồng thời hay liệu đầu tác vụ đầu vào tác vụ Rất nhiều ứng dụng lĩnh vực khoa học khác yêu cầu phải xử lí lượng lớn liệu tổ chức theo dạng luồng công việc Vấn đề lập lịch luồng công việc môi trường điện tốn đám mây chất tìm phương án ánh xạ tác vụ luồng công việc tới máy chủ đám mây cho thời gian xử lý tồn luồng cơng việc nhỏ nhất, biết khối lượng tính tốn u cầu liệu tác vụ, tốc độ tính tốn truyền thông máy chủ khác Bài tốn lập lịch luồng cơng việc tốn nghiên cứu từ năm 1950, tốn chứng minh thuộc lớp NP-Khó Trong năm gần có nhiều ứng dụng khoa học mơ hình hóa dạng đồ thị Số 02 & 03 (CS.01) 2017 Phần báo có cấu trúc sau Phần II giới thiệu số cơng trình nghiên cứu có liên quan tốn lập lịch luồng cơng việc.Trong phần III chúng tơi trình bày mơ hình lý thuyết để biểu diễn lực tính tốn truyền thơng đám mây, dựa mơ hình lý thuyết này, phần IV đề xuất: (i) phương thức để cập nhật vị trí cá thể (ii) giải pháp để chương trình thoát khỏi vùng cực trị địa phương di chuyển tới vùng khơng gian tìm kiếm Phần V mô tả thực nghiệm tiến hành dựa công cụ mô Cloudsim [5] phân tích số liệu thực nghiệm thu Phần VI tóm tắt kết báo hướng nghiên cứu tiến hành tương lai II NHỮNG CƠNG TRÌNH LIÊN QUAN 2.1 Những nghiên cứu tốn lập lịch Bài tốn lập lịch luồng cơng việc tổng quát chứng minh thuộc lớp NP-Khó [6] nghĩa thời gian để tìm lời giải tối ưu tăng nhanh theo kích cỡ liệu đầu vào, có nhiều cơng trình nghiên cứu nhằm tìm lời giải gần toán N.S.Grigoreva [7] đề xuất thuật toán lập lịch điều phối tác vụ luồng công việc vào thực hệ thống đa vi xử lý nhằm cực tiểu hóa thời gian hồn thành luồng cơng việc Tác giả sử dụng kết hợp phương pháp nhánh cận kỹ thuật tìm kiếm nhị phân để tìm phương án xếp lịch có thời gian hồn thành luồng cơng việc nhỏ R Rajkumar [8] đề xuất thuật toán lập lịch luồng công việc dựa nhu cầu khách hàng TẠP CHÍ KHOA HỌC CƠNG NGHỆ THƠNG TIN VÀ TRUYỀN THƠNG 40 thời gian hồn thành, chi phí thực thi,… qua điều phối tác vụ vào thực máy chủ nhằm thỏa mãn tốt nhu cầu khách hàng Các tác giả báo [9] đề xuất thuật toán EGA (Enhanced Genetic Algorithm) lập lịch phương pháp di truyền Trong cơng trình tác giả sử dụng thuật toán Enhanced Max Min bước khởi tạo quần thể nhằm tìm cá thể tốt cho trình tiến hóa Pandey [10] đề xuất thuật tốn lập lịch luồng công việc PSO Heuristic (Particle Swarm Optimization Heuristic – PSO_H) mơi trường điện tốn đám mây dựa chiến lược tối ưu bày đàn Rajkumar đề xuất thuật toán lập lịch phân cấp [10] đưa vào tham số dịch vụ khác nhau, chẳng hạn thời gian đáp ứng Thuật toán sử dụng tham số quyền ưu tiên để lựa chọn tác vụ lập lịch Q.Cao đồng nghiệp trình bày thuật tốn lập lịch dựa giải thuật ABC (Activity Based Costing) [11] Thuật toán gán mức ưu tiên cho tác vụ luồng công việc theo tham số thời gian, không gian, tài ngun chi phí, q trình lập lịch sử dụng mức ưu tiên để định tác vụ chọn trình lập lịch Selvi cộng đề xuất thuật tốn lập lịch luồng cơng việc mơi trường điện tốn lưới (Grid) [12], cơng trình tác giả vận dụng thuật tốn tiến hóa vi phân (DE) vào giải tốn lập lịch luồng cơng việc mơi trường điện tốn lưới nhằm cực tiểu thời gian hồn thành luồng cơng việc (makespan), cơng trình tác giả giá trị Makespan tìm thuật toán đề xuất nhỏ so với thuật toán PSO Xu cộng đề xuất thuật tốn COODE [13] (Current Optimum Opposition-based Differential Evolution) nhằm tìm giá trị tối ưu cho hàm số dựa theo phương pháp tiến hóa vi phân đối xứng, cơng trình tác giả đề xuất cơng thức tìm điểm đối xứng điểm dựa theo giá trị tối ưu nhằm thay đổi toán tử đột biến phương pháp tiến hóa vi phân tác giả so sánh thuật toán COODE với thuật toán DE ODE, kết thuật toán đề xuất COODE tốt thuật toán đối sánh 2.2 Phương pháp PSO lân cận Trong phương pháp PSO chuẩn (PSO toàn cục) cá thể trao đổi thơng tin với tồn cá thể khác quần thể, vector dịch chuyển cá thể cập nhật dựa thông tin tốt cá thể thơng tin tốt tồn quần thể Vector dịch chuyển vector vị trí cập nhật theo công thức sau: v i k+1= ωv i k + c rand ×(pbest i - x i k) + c rand ×(gbest - x i k) (3) (4) x i k+1 = x i k + v i k Tuy nhiên thực tế có nhiều kiến trúc khác để biểu diễn mối quan hệ cá thể quần thể, số cơng trình nghiên cứu Số 02 & 03 (CS.01) 2017 [5],[14],[15] đề xuất kiến trúc lân cận Star, Ring, Von Neuman Thuật toán PSO cục cá thể trao đổi thông tin với số cá thể lân cận, số cá thể trao đổi thơng tin phụ thuộc vào mơ hình kiến trúc lân cận sử dụng thuật tốn Cơng thức cập nhật vector vị trí cá thể sau : v i k+1 = ω×v i k + c rand × (pbest i - x i k) + c rand × (lbest i - x i k) (5) Phương pháp PSO toàn cục thường cho tốc độ hội tụ nhanh phương pháp PSO cục nhiên chất lượng lời giải không tốt phương pháp PSO cục quần thể hay bị mắc kẹt điểm cực trị địa phương [16] b Ring a Star c Von Neumann Hình Các kiến trúc lân cận Function Ring(x i ) Input: current position x i Output: x where Fitness(x) = min{Fitness(x i ), Fitness(Left(x i )), Fitness(Right(x i ))} III MƠ HÌNH LÝ THUYẾT CỦA BÀI TỐN Đồ thị luồng cơng việc biểu diễn đồ thị có hướng, khơng có chu trình G=(V,E) Trong đó: • V tập đỉnh, đỉnh tương ứng với tác vụ đồ thị luồng cơng việc • T={T1 , T2 ,…,TM }là tập tác vụ • E tập cạnh, biểu diễn mối quan hệ tác vụ Nếu e = (Ti , Tk) cạnh đồ thị G, có nghĩa tác vụ Ti tác vụ cha tác vụ T k , tác vụ T i gửi tới tác vụ T k khối lượng liệu tdatak • S = {S1, S2,….,SN}là tập N máy chủ mơi trường điện tốn đám mây Mỗi máy chủ xác định lực tính tốn xác định P(Si ), đơn vị đo MI/s (million instructions/second) • M Hình Đồ thị biểu diễn luồng cơng việc với tác vụ TẠP CHÍ KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG 41 ỗi cặp máy chủ kết nối với đường truyền riêng, có băng thơng B(Si , Sj ) Băng thông xác định hàm B(): S×S → R+ B(Si ,Si ) = ∞ B(Si ,Sj ) = B(Sj ,Si ) Khái niệm lịch biểu Mỗi lịch biểu biểu diễn hàm f() : T→ S Trong f(T i ) máy chủ giao để thực tác vụ T i Wi • Thời gian tính tốn tác vụ T i là: P( f (Ti )) (i=1,2, M) • Thời gian truyền liệu tác vụ T i tác vụ Dij T j B( f (Ti ), f (T j )) Hàm mục tiêu: Bài báo định nghĩa hàm mục tiêu là: Makespan → Makespan thời gian hồn thành luồng cơng việc, tính từ tác vụ gốc khởi động thời điểm tác vụ cuối thực xong IV GIẢI PHÁP ĐỀ XUẤT Bảng Tốc độ tính tốn máy chủ 4.1 Mã hóa cá thể Theo phương pháp PSO, bước lặp thứ k, cá thể thứ i đàn xác định vector vị trí x i k (cho biết vị trí tại) vector dịch chuyển v i k (cho biết hướng dịch chuyển tại) Trong toán xếp lịch xét, hai vector có số chiều số tác vụ luồng công việc, ký hiệu M Cả vector vị trí vector dịch chuyển biểu diễn cấu trúc liệu bảng băm ngôn ngữ lập trình java Ví dụ 1: giả sử luồng cơng việc gồm tập tác vụ T={T , T , T , T , T }, đám mây có tập máy chủ S = {S , S , S } Khi cá thể x i biểu diễn vector vị trí [1 ; ; ; ; 2] phương án xếp lịch mà theo tác vụ T , T bố trí thực máy chủ S , tác vụ T , T thực S tác vụ T thực S T1 T2 T3 T4 T5 S1 S2 S1 S3 S2 4.2 Phương pháp cập nhật vị trí cá thể Khi áp dụng cơng thức cập nhật vị trí cá thể (4) vào toán lập lịch xét, gặp vấn đề Các thành phần vector dịch chuyển v i k số thực cơng thức (5) tính vector dịch chuyển có tham số số thực rand , rand , c ,c Nhưng tập máy chủ S hữu hạn đếm nên thành phần vector vị trí x i phải số nguyên để ánh xạ tới máy chủ nơi mà tác vụ tương ứng thực hiện, chẳng hạn vector vị trí x i ví dụ có thành phần x i [1] =1, x i [2] =2, x i [1] =1, x i [4] =3, x i [5] =2 Hậu hai vế phép gán (2) khác kiểu nhau, vế trái x i k+1[t] thuộc kiểu số nguyên vế phải x i k[t] + v i k[t] thuộc kiểu số thực Số 02 & 03 (CS.01) 2017 Để giải mâu thuẫn này, số nghiên cứu trước [10] làm tròn giá trị số thực vế phải gán cho biến vị trí x i k+1[t] vế trái Kết giá trị vế phải 3.2 phân phối tác vụ tới thực thi máy chủ có số thứ tự 3, vế phải 3.8 tác vụ phân cho máy chủ có số thứ tự Cách làm tự nhiên thực chất gán vị trí tính tốn cẩn thận theo chiến lược PSO cho máy chủ mà số thứ tự tình cờ giá trị nguyên sau làm tròn Cách làm phá hỏng q trình tiến hóa bước phương pháp PSO Để giải vấn đề trên, báo đề xuất cách giải sau: giá trị thực vế phải (x i k[t] (1) + v i k[t]) để nguyên khơng làm tròn, vế trái x i k+1[t] gán định danh máy chủ có tốc độ tính tốn gần với giá trị vế phải so với máy chủ lại Làm tác vụ gán (2) cho máy chủ có lực phù hợp với giá trị tính toán theo PSO 𝑥𝑖𝑘+1 [𝑡] ← 𝑗 𝑛ế𝑢 �𝑃�𝑆𝑗 � − �𝑥𝑖𝑘 [𝑡] + 𝑣𝑖𝑘 [𝑡]�� ≤ �𝑃(𝑆𝑟 ) − �𝑥𝑖𝑘 [𝑡] + 𝑣𝑖𝑘 [𝑡]�� ∀𝑆𝑟 ∈ 𝑆; 𝑡 = 1,2 … 𝑀 6) Ví dụ 2: giả thiết tập máy chủ S ví dụ có tốc độ tính tốn liệt kê Bảng sau Máy chủ S i S1 S2 S3 Tốc độ xử lý P(S i ) (MI/s) 3.1 5.2 4.1 Giả sử bước thứ k+1 tổng x i k + v i k = [4.4 ; 2.1 ; 6.7 ; 5.6 ; 10.2] vector vị trí x i k+1 gán [3; 1; 2; 2; 2] ; nghĩa cá thể tương ứng với phương án xếp lịch sau đây: T1 T2 T3 T4 T5 S3 S1 S2 S2 S2 Thật vậy, thành phần thứ vector vị trí, x i k+1[1] , nhận giá trị 3, nghĩa tác vụ T gán cho máy chủ S : 𝑥𝑖𝑘+1 [1] ← 𝑣ì |𝑃(𝑆3 ) − 4.4| ≤ |𝑃(𝑆𝑟 ) − (4.4)| ∀𝑆𝑟 ∈𝑆 Nghĩa máy chủ máy S có tốc độ tính tốn gần với giá trị 4.4 so với máy chủ lại, theo bảng 1, tác vụ T gán cho máy chủ S để thực hiện, tức f(T ) = S Phép gán tương tự thực với bốn tác vụ lại : T , T ,T ,T Vấn đề tương tự xảy với phép trừ hai vector vị trí công thức (1): (pbest i - x i k ) (gbest - x i k) Một số công trình có [10] đơn giản thực phép trừ thành phần số nguyên gán cho máy chủ có số thứ tự tương ứng Ví dụ pbest i = [2,4,3,3,5] x i k = [1,3,2,1,2] pbest i - x i k =[2-1,4-3,3-2,3-1,5-2] = [1,1,1,2,3] Như giải thích trên, cách làm thực chất gán tác vụ cho máy chủ mà số thứ tự tình cờ kết phép trừ Cách làm mang tính ngẫu nhiên phá hỏng trình bước tiếp cận tới vị trí cực trị phương pháp PSO Bài báo TẠP CHÍ KHOA HỌC CƠNG NGHỆ THƠNG TIN VÀ TRUYỀN THÔNG 42 đề xuất "phép trừ vector" áp dụng riêng cho công thức (5) sau Giả sử: pbest i = [x i1 , x i2 ,…x iM ] với x ik ∈ S (∀k) x j = [x j1 , x j2 ,…x jM ] với x jk ∈ S (∀k) Khi kết phép trừ pbest i - x j tính sau: pbest i - x j =[y , y ,….y M ] với thành phần y k số thực tính sau 𝑦𝑘 = �𝑃(𝑥𝑖𝑘 ) + ∑𝑞∈𝑆 𝐵�𝑥𝑗𝑘 ,𝑥𝑞 � ∑𝑞∈𝑆 𝐵(𝑥𝑖𝑘 ,𝑥𝑞 ) 𝑁−1 � − �𝑃�𝑥𝑗𝑘 � + � 𝑣ớ𝑖 𝑘 = 1,2, … 𝑀 𝑁−1 ( 7) Theo cách tính này, máy chủ xếp thứ tự theo tốc độ tính tốn băng thơng đường truyền kết nối tới Ví dụ sau minh họa cụ thể Ví dụ 3: Ta tiếp tục sử dụng tập máy chủ ví dụ Giả sử lbest j = [2,1,2,1,1] ; x j = [3,2,1,2,1] ; Vậy lbest j – x j = [y , y , y ,y ,y ] với y tính sau 𝐵(𝑆 ,𝑆 )+𝐵(𝑆2 ,𝑆3 ) 𝑦1 = �𝑃(𝑆2 ) + � − �𝑃(𝑆3 ) + 3−1 𝐵(𝑆3 ,𝑆1 )+𝐵(𝑆3 ,𝑆2 ) � 3−1 Cách tính tương tự áp dụng cho thành phần y , y … y lại 4.3 Biện pháp khỏi cực trị địa phương Phương pháp PSO nói riêng phương pháp tìm kiếm tiến hóa nói chung bị mắc kẹt lời giải cực trị địa phương mà khơng thể để tới lời giải tốt Bài báo đề xuất sử dụng phương pháp PSO kết hợp với thủ tục tìm kiếm lân cận để định hướng cá thể tốt chuyển sang vùng tìm kiếm chương trình bị sa vào vùng cực trị địa phương 4.3.1.Thủ tục tìm kiếm lân cận Tìm kiếm lân cận [16] phương pháp tìm kiếm giải pháp ban đầu s toán sử dụng toán tử để di chuyển sang giải pháp khác toán theo cấu trúc lân cận xác định nhằm tìm lời giải tốt Bài báo đề xuất toán tử Exchange RotateRight sử dụng cho trình tìm kiếm lân cận (xem Hình 3.a 3.b) 3 3 3 1 Hình 3.a Tốn tử RotateRight Hình 3.b Tốn tử Exchange 4.3.2 Giải thuật tìm kiếm lân cận Function LocalSearch (vector vị trí x i ) Input: vector vị trí x i Output: vector vị trí x k có f(x k ) < f(x i ) Khởi tạo bước lặp t ← while (điều kiện lặp) Số 02 & 03 (CS.01) 2017 Khởi tạo giá trị r ngẫu nhiên đoạn [1, M] x i ← RotateRight(x i , r) Khởi tạo giá trị ngẫu nhiên rand , rand đoạn [1,M] x k ← Exchange (x i , rand , rand ) if f(x k ) < f(x i ) then return x k else return x i t ← t+1 End while End Function 4.4 Thuật toán đề xuất LOSPSO Tổng hợp cải tiến nói trên, thuật tốn đề xuất với tên gọi LOSPSO mô tả sau Algorithm LOSPSO Input: tập T, tập S, mảng W[1×M], mảng P[1×N], mảng B[N×N], mảng D[M×M], số K, độ lệch ε, số cá thể SCT Output: lời giải tốt gbest Khởi tạo vector vị trí vector dịch chuyển cá thể i cách ngẫu nhiên Khởi tạo bước lặp t← ; while (điều kiện lặp) for i=1 to SCT Tính vector vị trí x i theo cơng thức (6) end for for i=1 to SCT Cập nhật pbest i end for 10 Cập nhật gbest 11 for(i=1 to SCT do) 12 lbest i := Ring(x i ) ; 13 end for 14 for i=1 to SCT 15 Cập nhật vector dịch chuyển v i k theo cơng thức (5) (6) 16 Tính x i theo (4) 17 end for 18 t++ ; 19 if (sau K hệ mà độ lệch gbest không vượt ε) then 20 gbest=LocalSearch(gbest); 21 end if 22 end while return gbest Thuật toán hoạt động theo phương pháp PSO theo bước lặp cá thể cập nhật vị trí hướng tới vị trí tốt cá thể lân cận (lbest i ) đồng thời có dựa kinh nghiệm cá nhân (pbest i ) Nếu sau K hệ liên tiếp mà quần thể không cải thiện cách đáng kể giá trị gbest (mức chênh khơng vượt q ε) chứng tỏ quần thể hội tụ cực trị địa phương Khi thủ tục LocalSearch gọi tìm cá thể gbest cá thể di cư quần thể tới vùng khơng gian mới, q trình tìm kiếm tái khởi động TẠP CHÍ KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG 43 Độ phức tạp thuật toán LOSPSO Trước thực thuật tốn LOSPSO ta cần phải xếp máy chủ thực thi theo thứ tự tăng dần tốc độ thực hiện, giải thuật xếp có độ phức tập thời gian O(n.log(n)), thủ tục tính ma trận thời gian thực thi tác vụ máy chủ có độ phức tạp thời gian tính tốn O(M×N); với M số tác vụ, N số máy chủ Thủ tục tính ma trận thời gian truyền liệu máy chủ có độ phức tạp tính tốn O(N2) Trong thuật tốn LOSPSO thủ tục khởi tạo khởi tạo cá thể quần thể cách ngẫu nhiên, cá thể mã hóa véc tơ độ dài M độ phức tạp thủ tục khởi tạo O(M×SCT) ; với SCT số cá thể quần thể, thực nghiệm sử dụng SCT 100 Hàm tính thời gian thực (makespan) phương án xếp lịch O(M2) Thủ tục RotateRight có độ phức tạp O(M), thủ tục Exchange có độ phức tạp số, thủ tục tìm kiếm lân cận LocalSearch có độ phức tạp O(M) Trong tốn lập lịch luồng cơng việc thường số tác vụ lớn số máy chủ (M > N) độ phức tạp thuật tốn LOSPSO (Số hệ )× O(M2) V KẾT QUẢ THỰC NGHIỆM 5.1 Phân nhóm liệu thực nghiệm Dữ liệu sử dụng thực nghiệm bao gồm: • Dữ liệu tốc độ tính tốn máy chủ băng thông máy chủ lấy từ công ty cung cấp dịch vụ cloud [17] địa website (http://aws.amazon.com/ec2/pricing) • Dữ liệu luồng công việc lấy từ liệu thử nghiệm xây dựng theo độ trù mật khác luồng công việc từ ứng dụng thực tế ứng dụng Montage [18] • Những liệu tổng hợp lại chia thành hai nhóm, nhóm luồng cơng việc ngẫu nhiên với khác hệ số α, nhóm luồng công việc từ ứng dụng Montage |E| M × (M − 1)/2 • Tham số α cho biết đồ thị G phân thành cấp, cấp có nhiều hay tác vụ, nói cách khác α phản ánh độ trù mật đồ thị G Khi làm thực nghiệm với nhóm, số máy chủ số tác vụ giữ cố định tỷ lệ α thay đổi Hình 4,5,6 α= • Tham số máy chủ số tác vụ luồng công việc xác định qua ký hiệu liệu thực nghiệm, ví dụ T2086 có 20 tác vụ luồng cơng việc thực xếp lịch máy chủ hệ thống điện tốn đám mây Trong q trình thực nghiệm sử dụng đồ thị luồng công việc với số tác vụ từ đến 50 hệ thống điện toán đám mây với số máy chủ từ đến Chi tiết tham số cấu hình hệ thống trình bày phần 5.2 Số 02 & 03 (CS.01) 2017 5.2 Tham số cấu hình hệ thống Các tham số cấu hình đám mây thiết lập miền giá trị sau: • Tốc độ tính tốn P máy chủ: từ đến 250 (million instructions/s) • Khối lượng liệu D tác vụ: từ đến 10000 (Mega bit) • Băng thơng máy chủ B:từ 10 đến 100 (Mega bit/s) • Hệ số qn tính: ω = 0.729 • Hệ số gia tốc: c = c = 1.49445 • Hằng số : • Số cá thể SCT: • Độ lệch ε : 0.21 • α: K = 30 SCT=25 từ 0.2 tới 0.7 5.3 Quá trình tiến hành thực nghiệm Để kiểm chứng thuật tốn đề xuất LOSPSO chúng tơi sử dụng cơng cụ mô Cloudsim [5] để tạo lập môi trường đám mây kết hợp với liệu luồng công việc ứng dụng Montage [18] Các hàm gói thư viện Jswarm [5] sử dụng để thực phương thức Tối ưu bày đàn Đối tượng so sánh thuật toán PSO_H [10], thuật toán EGA [9] thuật tốn Round Robin [19] Các chương trình mơ viết ngôn ngữ Java chạy máy tính cá nhân với vi xử lý Intel Core i5 2.2 GHz, RAM 4GB, hệ điều hành Windows Ultimate Thực nghiệm tiến hành cách độc lập 30 lần liệu thực nghiệm 5.4 Kết thực nghiệm Hình 4,5,6 cho thấy chênh lệch thời gian xử lý (makespan) lời giải tốt mà thuật toán đề xuất LOSPSO thuật tốn đối chứng (PSO_H, EGA Round Robin) tìm chạy liệu khác thuộc nhóm luồng cơng việc ngẫu nhiên luồng công việc từ ứng dụng Montage 20.00 15.00 10.00 5.00 0.00 RRTSM PSO_H STD LOSPSO Mean EGA Best Hình 4: So sánh thuật toán với liệu T532 TẠP CHÍ KHOA HỌC CƠNG NGHỆ THƠNG TIN VÀ TRUYỀN THƠNG 44 • Đề xuất phương thức để cập nhật vị trí cá thể cách ánh xạ giá trị thực tới máy chủ có tốc độ tính tốn băng thơng gần với giá trị • Đề xuất cơng thức tính vector dịch chuyển cá thể thứ i theo giá trị gbest lbest i • Đề xuất thủ tục LocalSearch để chương trình khỏi cực trị địa phương cách chuyển cá thể tới miền không gian tìm kiếm • Đề xuất thuật tốn LOSPSO sử dụng phương thức cập nhật vị trí cá thể thủ tục LocalSearch để tìm kiếm lời giải cho tốn lập lịch thực thi luồng cơng việc môi trường đám mây 25.00 20.00 15.00 10.00 5.00 0.00 RRTSM PSO_H STD LOSPSO Mean EGA Best Hình 5: So sánh thuật toán với liệu T1051 200.00 150.00 100.00 50.00 0.00 RRTSM PSO_H STD LOSPSO Mean TÀI LIỆU THAM KHẢO [1] G B Berriman, et al, Montage: A Grid Enabled EGA Best Hình 6: So sánh thuật toán với liệu M2032 Kết thực nghiệm trình bày chi tiết bảng 2, hình 4,5,6, kết so sánh giá trị trung bình tính thuật tốn LOSPSO với thuật toán đối sánh, hầu hết trường hợp thuật toán LOSPSO cho kết tốt thuật tốn đối sánh, giá trị trung bình tìm LOSPSO nhỏ giá trị trung bình tìm PSO_H từ 4% - 11% nhỏ giá trị trung bình tìm thuật tốn EGA từ 2% - 7% Hình 1,2,3,4 so sánh giá trị tốt tìm thuật tốn LOSPSO với thuật tốn đối sánh, qua ta thấy giá trị tốt tìm LOSPSO nhỏ giá trị tốt tìm PSO_H từ 2% - 9%, nhỏ giá trị tốt tìm Random từ 20% - 40%, giá trị tốt tìm thuật tốn LOSPSO nhỏ giá trị tốt tìm thuật tốn EGA từ 1% - 8% Cuối hình 1,2,3,4 kết so sánh độ lệch chuẩn tìm thuật toán LOSPSO với thuật toán đối sánh, giá trị độ lệch chuẩn LOSPSO nhỏ độ lệch chuẩn thuật toán RRTSM, PSO_H EGA, điều chứng tỏ thuật tốn LOSPSO có chất lượng lời giải tốt thuật toán đối sánh độ ổn định lần chạy tốt VI KẾT LUẬN Bài báo trình bày giải thuật tìm kiếm theo phương pháp Tối ưu bày đàn cục (Local PSO) để tìm lời giải gần cho toán lập lịch thực thi luồng cơng việc mơi trường điện tốn đám mây Những kết gồm có: Số 02 & 03 (CS.01) 2017 Những kết thực nghiệm tiến hành với nhiều liệu thực nghiệm khác chứng tỏ chất lượng lời giải tìm thuật toán đề xuất tốt so với thuật toán đối chứng thuật toán PSO_H, thuật toán EGA thuật tốn Round Robin Về hướng cơng việc dự định đề xuất kiến trúc lân cận phù hợp với toán nhằm nâng cao khả tìm kiếm tổng thể qua nhằm đạt lời giải có chất lượng tốt Engine for Delivering Custom Science-Grade Mosaics On Demand", in SPIE Conference, 2004 [2] P Maechling, et al, SCEC CyberShake Workflows, Automating Probabilistic Seismic Hazard Analysis Calculations”, Springer, 2006 [3] "USC Epigenome Center" http://epigenome.usc.edu [Online] http://epigenome.usc.edu [4] LIGO Project LIGO - Laser Interferometer Gravitational Wave Observatory [Online] http://www.ligo.caltech.edu [5] Buyya R., Ranjan R., Calheiros R.N - Modeling and simulation of scalable Cloud computing environments and the CloudSim toolkit: Challenges and opportunities, Proceedings of the Conference on High Performance Computing and Simulation (2009) 1–11 (http://www.cloudbus.org/cloudsim/) [6] J.D Ullman, NP-complete scheduling problems, Journal of Computer and System Sciences, pages 384-393, volume 10, issue 3, 1975 [7] N.S.Grigoreva, Branch and Bound Method for Scheduling Precedence Constrained Tasks on Parallel Identical Processors, Proceedings of the World Congress on Engineering, Vol II, 2014 [8] R Rajkumar, T Mala, Achieving Service Level Agreement in Cloud Environment using Job Prioritization in Hierarchical Scheduling, Proceeding of International Conference on Information System Design and Intelligent Application, 2012, vol 132, pp 547-554 [9] S Singh, M.Kalra, Task scheduling optimization of independent tasks in cloud computing using enhanced genetic algorithm, International Journal of Application or Innovation in Engineering & Management, V.3, Issue 7, 2014 [10] S Pandey, L Wu1, S M Guru, R Buyya1, A Particle Swarm Optimization (PSO)-based Heuristic for Scheduling Workflow Applications in Cloud Computing Environments, Proc of 24th IEEE International Conference on Advanced Information Networking and Applications (AINA), pages 400407, 2010 [11] Q Cao, W Gong and Z Wei, An Optimized Algorithm for Task Scheduling Based On Activity Based Costing in Cloud Computing, In Proceedings of TẠP CHÍ KHOA HỌC CƠNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG 45 [12] [13] [14] [15] [16] [17] [18] [19] Third International Conference on Bioinformatics and Biomedical Engineering, 2009, pp.1-3 S.Selvi, Dr D.Manimegalai, Dr.A.Suruliandi, Efficient Job Scheduling on Computational Grid with Differential Evolution Algorithm, , International Journal of Computer Theory and Engineering, Vol 3, No 2, April, 201 Q XU, L.WANG, HE Baomin, N.WANG, Modified Opposition-Based Differential Evolution for Function Optimization, Journal of Computational Information Systems, pp 1582-1591, 2011 A E M Zavala, “EVOLVE - A Bridge between Probability, Set Oriented Numerics, and Evolutionary Computation IIA Comparison, A Comparison Study of PSO Neighborhoods”, Springer Verlag Berlin Heideberg, pages 251-295, ISBN 978-3-642-32725-4, 2013 H.Matsushita, Swarm-Based Optimization with Dynamically-Changing Topology, IEEE Workshop on Nonlinear Circuit Networks, pp 63-66, December 2012 P.Hansen, Variable neighborhood search: Principles and applications, European Journal of Operational Research 130, pp 449-467, 2001 Vliet J V., Paganelli F - Programming Amazon EC2, O'Reilly Media, ISBN 1449393683, 2011 Bruce Berriman G., Deelman E - Montage: A grid enabled engine for delivering custom science-grade mosaics on demand, in SPIE, 2004 (http://montage.ipac.caltech.edu) M Mitzenmacher, E Upfal, “Probability and Computing: Randomized Algorithms and Probabilistic Analysis”, Cambridge University Press (2005) Nguyễn Thế Lộc Tốt nghiệp ĐH khoa Toán Tin, ĐH Sư phạm Hà Nội năm 1993, Tốt nghiệp Thạc sĩ CNTT trường ĐH Bách khoa Hà Nội, nhận tiến sỹ Viện Nghiên cứu Khoa học Công nghệ Nhật Bản JAIST năm 2007 Lĩnh vực nghiên cứu: mạng máy tính truyền thơng, xử lý song song phân tán Điện thoại : 0988.765.837 E-mail: locnt@hnue.edu.vn Abstract: Cloud computing is a new trend of information and communication technology that enables resource distribution and sharing at a large scale The Cloud consists of a collection of virtual machine that promise to provision on-demand computational and storage resources when needed End-users can access these resources via the Internet and have to pay only for their usage Scheduling of scientific workflow applications on the Cloud is a challenging problem that has been the focus of many researchers for many years In this work, we propose a new algorithm for workflow scheduling that is derived from the Particle Swarm Optimization SƠ LƯỢCVỀ TÁC GIẢ Phan Thanh Toàn Sinh năm 1974 Thái Nguyên Tốt nghiệp ĐH Thạc sĩ trường ĐH Bách khoa Hà Nội, nghiên cứu sinh năm 2012 Học viện Khoa học Công nghệ Quân Hiện công tác trường ĐH Sư phạm Hà Nội Lĩnh vực nghiên cứu: phương pháp tiến hóa, tối ưu, xử lý song song phân tán Điện thoại : 0912.069.762 E-mail: pttoan@hnue.edu.vn Số 02 & 03 (CS.01) 2017 TẠP CHÍ KHOA HỌC CƠNG NGHỆ THƠNG TIN VÀ TRUYỀN THƠNG 46 Bảng kết thực thuật toán với liệu ngẫu nhiên Kí hiệu RRTSM PSO_H LOSPSO EGA STD Mean Best STD Mean Best STD Mean Best STD Mean Best T532 - 18.7 18.7 4.7 9.9 6.8 0.0 6.8 6.8 3.4 9.8 6.8 T1031 - 33.1 33.1 2.4 20.4 16.4 1.1 18.3 16.2 1.2 20.4 16.4 T1032 - 16 16 2.0 8.2 3.5 1.2 5.1 3.5 1.8 8.1 3.5 T1035 - 18.9 18.9 2.5 9.6 4.2 1.8 6.7 2.9 2.3 9.5 4.9 T1051 - 23.7 23.7 1.8 19.5 16.4 1.0 17.6 14.8 1.4 19.1 16.1 T1054 - 25.2 25.2 2.0 20.7 17.9 0.9 19.0 17.5 1.3 20.5 17.5 T2081 - 72.7 72.7 5.2 44.2 35.0 2.7 37.8 32.3 3.7 41.9 35.0 T2083 - 20.3 20.3 2.2 21.2 18.8 0.5 19.4 18.4 1.4 20.3 19.1 T2084 - 72.0 72.0 6.1 44.7 37.1 2.7 39.3 34.8 3.2 42.5 37.5 T2086 - 32.5 32.5 1.5 26.2 23.8 1.2 21.4 17.8 1.4 25.4 22.5 Bảng kết thực thuật toán với liệu từ ứng dụng Montage Kí hiệu RRTSM PSO_H LOSPSO EGA STD Mean Best STD Mean Best STD Mean Best STD Mean Best M2032 - 162.7 162.7 4.9 142.1 130.6 3.6 128.4 130.0 5.3 135.5 132.1 M2051 - 146.6 146.6 5.4 132 122.8 3.3 123.4 118.7 4.5 131.7 125.3 M2531 - 465.0 465.0 18.7 373.4 341.5 13.0 346.4 338.1 7.0 352.7 340.4 M2532 - 183.8 183.8 3.9 110.7 102.5 1.5 104.7 101.7 1.4 112.1 104.5 M2533 - 322.9 322.9 4.0 315.4 311.7 0.5 312.5 311.6 0.5 315.2 311.8 M2581 - 300.6 300.6 15 260.3 235.1 6.1 236.1 228.4 6.5 246.2 234.9 M2582 - 133.9 133.9 5.1 84.8 75.9 4.7 81.4 74.3 2.9 85.1 77.3 M2583 - 236.5 236.5 8.3 239 225 5.3 224.3 215.7 4.7 233.5 222.4 M5081 - 155.8 155.8 6.3 108.0 95.0 5.5 101.7 91.1 3.2 107.8 96.4 M5082 - 82.1 82.1 0.9 14.0 12.1 0.8 12.6 11.1 0.5 14.0 11.8 M5083 - 101.7 101.7 4.3 98.3 88.8 4.3 90.0 80.8 1.8 95.3 87.5 Số 02 & 03 (CS.01) 2017 TẠP CHÍ KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG 47 Bảng kết thực thuật toán với liệu ngẫu nhiên Kí hiệu RRTSM PSO_H LOSPSO EGA STD Mean Best STD Mean Best STD Mean Best STD Mean Best T532 - 18.7 18.7 4.7 9.9 6.8 0.0 6.8 6.8 3.4 9.8 6.8 T1031 - 33.1 33.1 2.4 20.4 16.4 1.1 18.3 16.2 1.2 20.4 16.4 T1032 - 16 16 2.0 8.2 3.5 1.2 5.1 3.5 1.8 8.1 3.5 T1035 - 18.9 18.9 2.5 9.6 4.2 1.8 6.7 2.9 2.3 9.5 4.9 T1051 - 23.7 23.7 1.8 19.5 16.4 1.0 17.6 14.8 1.4 19.1 16.1 T1054 - 25.2 25.2 2.0 20.7 17.9 0.9 19.0 17.5 1.3 20.5 17.5 T2081 - 72.7 72.7 5.2 44.2 35.0 2.7 37.8 32.3 3.7 41.9 35.0 T2083 - 20.3 20.3 2.2 21.2 18.8 0.5 19.4 18.4 1.4 20.3 19.1 T2084 - 72.0 72.0 6.1 44.7 37.1 2.7 39.3 34.8 3.2 42.5 37.5 T2086 - 32.5 32.5 1.5 26.2 23.8 1.2 21.4 17.8 1.4 25.4 22.5 Bảng kết thực thuật toán với liệu từ ứng dụng Montage Kí hiệu RRTSM PSO_H LOSPSO EGA STD Mean Best STD Mean Best STD Mean Best STD Mean Best M2032 - 162.7 162.7 4.9 142.1 130.6 3.6 128.4 130.0 5.3 135.5 132.1 M2051 - 146.6 146.6 5.4 132 122.8 3.3 123.4 118.7 4.5 131.7 125.3 M2531 - 465.0 465.0 18.7 373.4 341.5 13.0 346.4 338.1 7.0 352.7 340.4 M2532 - 183.8 183.8 3.9 110.7 102.5 1.5 104.7 101.7 1.4 112.1 104.5 M2533 - 322.9 322.9 4.0 315.4 311.7 0.5 312.5 311.6 0.5 315.2 311.8 M2581 - 300.6 300.6 15 260.3 235.1 6.1 236.1 228.4 6.5 246.2 234.9 M2582 - 133.9 133.9 5.1 84.8 75.9 4.7 81.4 74.3 2.9 85.1 77.3 M2583 - 236.5 236.5 8.3 239 225 5.3 224.3 215.7 4.7 233.5 222.4 M5081 - 155.8 155.8 6.3 108.0 95.0 5.5 101.7 91.1 3.2 107.8 96.4 M5082 - 82.1 82.1 0.9 14.0 12.1 0.8 12.6 11.1 0.5 14.0 11.8 M5083 - 101.7 101.7 4.3 98.3 88.8 4.3 90.0 80.8 1.8 95.3 87.5 Số 02 & 03 (CS.01) 2017 TẠP CHÍ KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG 48 ... thuật tốn lập lịch luồng cơng việc PSO Heuristic (Particle Swarm Optimization Heuristic – PSO_ H) môi trường điện toán đám mây dựa chiến lược tối ưu bày đàn Rajkumar đề xuất thuật toán lập lịch phân... phân tác giả so sánh thuật toán COODE với thuật toán DE ODE, kết thuật toán đề xuất COODE tốt thuật toán đối sánh 2.2 Phương pháp PSO lân cận Trong phương pháp PSO chuẩn (PSO toàn cục) cá thể trao... kiếm lân cận [16] phương pháp tìm kiếm giải pháp ban đầu s toán sử dụng toán tử để di chuyển sang giải pháp khác toán theo cấu trúc lân cận xác định nhằm tìm lời giải tốt Bài báo đề xuất toán