Toán tử lân cận mới cho thuật toán Tabu Search và PSO giải bài toán lập lịch luồng công việc trong môi trường điện toán đám mây

9 20 0
Toán tử lân cận mới cho thuật toán Tabu Search và PSO giải bài toán lập lịch luồng công việc trong môi trường điện toán đám mây

Đang tải... (xem toàn văn)

Thông tin tài liệu

Điện toán đám mây là xu thế mới của công nghệ thông tin và truyền thông. Trong mô hình điện toán đám mây mọi khả năng liên quan đến công nghệ thông tin đều được cung cấp dưới dạng dịch vụ, cho phép người sử dụng truy cập đến các dịch vụ công nghệ (phần cứng và phần mềm) từ các nhà cung cấp dịch vụ. Bài viết đề xuất một thuật toán lập lịch luồng công việc mới dựa trên chiến lược tối ưu bày đàn và tìm kiếm Tabu.

Các cơng trình nghiên cứu phát triển Cơng nghệ Thơng tin Truyền thơng Tốn tử lân cận cho thuật toán Tabu Search PSO giải toán lập lịch luồng cơng việc mơi trường điện tốn đám mây Phan Thanh Toàn1 , Đặng Quốc Hữu2 , Nguyễn Thế Lộc3 Khoa Sư phạm Kỹ thuật, Trường Đại học Sư phạm Hà Nội Trung tâm Công nghệ Thông tin, Trường Đại học Thương mại, Hà Nội Khoa Công nghệ Thông tin, Trường Đại học Sư phạm Hà Nội Tác giả liên hệ: Phan Thanh Toàn, pttoan@hnue.edu.vn Ngày nhận bài: 11/06/2019, ngày sửa chữa: 27/10/2019, ngày duyệt đăng: 27/10/2019 Định danh DOI: 10.32913/mic-ict-research-vn.v2019.n2.865 Biên tập lĩnh vực điều phối phản biện định nhận đăng: PGS.TS Huỳnh Thị Thanh Bình Tóm tắt: Điện tốn đám mây xu công nghệ thông tin truyền thơng Trong mơ hình điện tốn đám mây khả liên quan đến công nghệ thông tin cung cấp dạng dịch vụ, cho phép người sử dụng truy cập đến dịch vụ công nghệ (phần cứng phần mềm) từ nhà cung cấp dịch vụ Điện toán đám mây tập hợp nhiều máy chủ vật lý máy chủ ảo, cấu hình để làm việc với mơi trường mạng Internet Một số vấn đề lớn mơi trường điện tốn đám mây tốn lập lịch luồng cơng việc Hiệu hệ thống điện toán đám mây phụ thuộc nhiều vào việc xếp tác vụ luồng thực thi máy tính mơi trường đám mây để hồn thành luồng cơng việc cách tối ưu Trong báo đề xuất thuật tốn lập lịch luồng cơng việc dựa chiến lược tối ưu bày đàn tìm kiếm Tabu Từ khóa: Lập lịch luồng cơng việc, tìm kiếm Tabu, tối ưu bày đàn, điện toán đám mây Title: Abstract: Keywords: New Effective Neighborhoods for Tabu Search and Particle Swarm Optimization to Schedule Workflow in Cloud Computing 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 machines that promises 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 Workflow scheduling is a big issue in cloud computing Basically the issue relates to discovering resources and allocating tasks on suitable resources Workflow scheduling plays a vital role in the system management In this work, we propose a new algorithm for workflow scheduling that is derived from particle swarm optimization and Tabu search Workflow scheduling, Tabu search, particle swarm optimization, cloud computing I GIỚI THIỆU Tác vụ bắt đầu sau tác vụ cha hồn thành Ứng dụng dạng luồng cơng việc sử dụng rộng rãi nhiều lĩnh vực: thiên văn học, tin sinh, dự báo động đất, v.v Hơn nữa, ngày ứng dụng ngày phức tạp địi hỏi phải xử lí khối lượng lớn liệu, ứng dụng cần phải thực hệ thống siêu máy tính, hệ thống tính tốn lưới, hay điện tốn đám mây Lập lịch luồng cơng việc (workflow scheduling) tìm phương án để gán tác vụ luồng công việc vào thực máy ảo (VM: Virtual Machine) mơi trường điện tốn đám mây nhằm giảm thiểu thời gian chi phí thực Với phát triển công nghệ thông tin truyền thông, điện toán đám mây ứng dụng rộng rãi nghiên cứu khoa học thực tiễn Mọi tài nguyên mơi trường điện tốn đám mây cung cấp cho người dùng dạng dịch vụ, như: dịch vụ phần mềm (SaaS: Software as a Service), dịch vụ sở hạ tầng (IaaS: Infrastructure as a Service), dịch vụ tảng hạ tầng (PaaS: Platform as a Service) Nhiều ứng dụng mơ hình hóa dạng luồng công việc (workflow) bao gồm tập tác vụ (task) phụ thuộc chúng theo kiểu cha–con 93 Các cơng trình nghiên cứu phát triển Cơng nghệ Thơng tin Truyền thông Luồng công việc chuỗi có thứ tự tác vụ thực đồng thời hay liệu đầu tác vụ đầu vào tác vụ 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 yêu cầu liệu tác vụ, tốc độ tính tốn truyền thơng máy chủ khác quần thể tiến hóa thuật toán di truyền Kết thực nghiệm thuật toán đề xuất làm việc tốt thuật toán GA PSO Grigoreva [9] đề 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ỏ Bài tốn lập lịch luồng cơng việc nghiên cứu từ năm 1950 chứng minh thuộc lớp NP-Khó (NP-Hard) [1] Trong năm gần có nhiều ứng dụng khoa học mơ hình hóa dạng đồ thị luồng cơng việc ứng dụng Montage [2], CyberShake [3], Epigenomics [4], LIGO [5] Rajavel Mala [10] đề xuất thuật tốn lập lịch luồng cơng việc dựa nhu cầu khách hàng thời gian hồn thành, chi phí thực thi, v.v 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 [11] đề 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 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 liên quan đến 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 Phần IV đề xuất: (i) Phương thức để cập nhật vị trí cá thể; (ii) Tốn tử lân cận cho thuật tốn tìm kiếm Tabu nhằm thoát khỏi cực trị địa phương phương pháp PSO; (iii) Thuật toán lập lịch tên TSPSO Phần V mô tả thực nghiệm tiến hành dựa công cụ mô Cloudsim [6] 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 tương lai Pandey cộng [12] đề xuất thuật toán lập lịch luồng công việc PSO Heuristic (PSO_H: Particle Swarm Optimization Heuristic) mơi trường điện tốn đám mây dựa chiến lược tối ưu bày đàn Cụ thể, họ đề xuất thuật toán lập lịch phân cấp đư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 Cao cộng trình bày thuật tốn lập lịch dựa giải thuật ABC (Activity Based Costing) [13] 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 II NHỮNG CƠNG TRÌNH LIÊN QUAN Bài tốn lập lịch luồng cơng việc thuộc lớp NP-Khó nên việc tìm lời giải cho luồng cơng việc có số lượng tác vụ lớn khơng khả thi Có nhiều cơng trình nghiên cứu nhằm tìm lời giải gần cho toán Trong [7], Dubey cộng đề xuất thuật toán lập lịch điều phối tác vụ luồng công việc môi trường điện toán đám mây dựa việc cải tiến thuật toán HEFT nhằm cực tiểu hóa thời gian hồn thành luồng cơng việc, cơng trình nhóm tác giả trình bày tóm tắt cơng trình nghiên cứu liên quan đến tốn lập lịch luồng cơng việc đề xuất thuật toán lập lịch dựa thuật toán HEFT, kết thực nghiệm thuật tốn có thời gian hồn thành luồng cơng việc tốt thuật tốn CPOP HEFT III MƠ HÌNH LÝ THUYẾT Trong báo này, sử dụng số ký hiệu sau: • • • Manasrah Ba Ali [8] đề xuất thuật toán lập lịch luồng cơng việc mơi trường điện tốn đám mây dựa kết hợp thuật toán di truyền thuật tốn tối ưu bày đàn, cơng trình nhóm tác giả thực khởi tạo quần thể ban đầu cách ngẫu nhiên, sau thực toán tử thuật toán di truyền cho quần thể, áp dụng thuật toán tối ưu bày đàn dựa • T = {𝑇1 , 𝑇2 , , 𝑇𝑀 } tập tác vụ S = {𝑆1 , 𝑆2 , , 𝑆 𝑁 } tập 𝑁 máy chủ mơi trường điện tốn đám mây; máy chủ 𝑆𝑖 có lực tính tốn xác định 𝑃(𝑆𝑖 ), đơn vị tính MI/s (million instructions/second) 𝑊𝑖 khối lượng tính tốn tác vụ 𝑇𝑖 , đơn vị tính flop (floating point operations) Mỗi cặp máy chủ kết nối với đường truyền riêng có băng thơng 𝐵(𝑆𝑖 , 𝑆 𝑗 ), với 𝐵(·, ·) hàm xác định băng thơng 𝐵 : 𝑆 × 𝑆 → 𝑅 + Do tính chất băng thơng, hiển nhiên ta có: ∀𝑖, 𝑗 : 𝐵(𝑆𝑖 , 𝑆𝑖 ) = ∞ 𝐵(𝑆𝑖 , 𝑆 𝑗 ) = 𝐵(𝑆 𝑗 , 𝑆𝑖 ) 94 Tập 2019, Số 2, Tháng 12 • • 𝐷 𝑖 𝑗 /𝐵( 𝑓 (𝑇𝑖 ), 𝑓 (𝑇 𝑗 )) thời gian truyền liệu tác vụ 𝑇𝑖 tác vụ 𝑇 𝑗 𝐶𝑇 thời gian hoàn thành luồng công việc (Makespan): 𝐶𝑇 = max {𝐸𝑇 𝑘 } 𝑘 ∈M Tiếp theo điều kiện ràng buộc mơ hình: a) b) c) d) e) 𝑥 𝑘𝑗 ≥ với 𝑘 ∈ M 𝑗 ∈ N ; 𝑑𝑖,𝑘 𝑗 ≥ với 𝑖, 𝑗 ∈ N 𝑘 ∈ M; tdata 𝑘𝑗 ≥ với 𝑘 ∈ M; tftime𝑖, 𝑗 ≥ với 𝑖, 𝑗 ∈ N ; extime 𝑘𝑗 ≥ với 𝑘 ∈ M 𝑗 ∈ N ; 𝑁 f) Hình Đồ thị biểu diễn luồng công việc với tác vụ 𝑥 𝑘𝑗 = 1; 𝑗=1 𝑁 𝑁 𝑥 𝑘𝑗 × 𝑑𝑖,𝑘 𝑗 = tdata 𝑘 ; g) • Xuyên suốt báo, sử dụng hai tập số M = {1, 2, , 𝑀 } N = {1, 2, , 𝑁 } 𝑖=1 𝑗=1 𝑀 𝑁 𝑁 Đồ thị luồng công việc biểu diễn đồ thị có hướng khơng có chu trình G = (V, E), ví dụ hình 1, V tập đỉnh, đỉnh tương ứng với tác vụ đồ thị luồng công việc E tập cạnh, biểu diễn mối quan hệ tác vụ Nếu 𝑒 = (𝑇𝑖 , 𝑇𝑘 ) cạnh đồ thị G 𝑇𝑖 tác vụ cha tác vụ 𝑇𝑘 , tác vụ 𝑇𝑖 gửi tới tác vụ 𝑇𝑘 khối lượng liệu tdata 𝑘 𝑘=1 𝑖=1 𝑗=1 max 𝑘 ∈M • • 𝑁 𝑖=1 𝑗=1 • → 𝑚𝑖𝑛   Ví dụ 1: Giả sử luồng công việc gồm tập tác vụ T = {𝑇1 , 𝑇2 , 𝑇3 , 𝑇4 , 𝑇5 , 𝑇6 , 𝑇7 } đám mây có tập máy chủ S = {𝑆1 , 𝑆2 , 𝑆3 } Khi đó, cá thể x𝑖 biểu diễn vector vị trí (1; 2; 1; 3; 2; 3; 1) phương án xếp lịch mà theo tác vụ 𝑇1 , 𝑇3 , 𝑇7 bố trí thực máy chủ 𝑆1 , tác vụ 𝑇2 𝑇5 thực 𝑆2 , tác vụ 𝑇4 𝑇6 thực 𝑆3 (Hình 2) 𝑁 𝑑𝑖,𝑘 𝑗 × tftime𝑖, 𝑗 × 𝑥 𝑘𝑗 +    Theo phương pháp PSO, bước lặp thứ 𝑘, cá thể thứ 𝑖 đàn xác định vector vị trí x𝑖𝑘 (cho biết vị trí tại) vector dịch chuyển v𝑖𝑘 (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 𝑀 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 Kí hiệu vector vị trí x𝑖 = (𝜋𝑖1 , 𝜋𝑖1 , , 𝜋𝑖𝑀 ) với 𝜋𝑖 𝑗 ∈ S 𝑗 ∈ M 𝑊𝑘 𝑃(𝑆 𝑗 ) 𝑁 𝑗=1 Mã hóa cá thể 𝐸𝑇 𝑘 thời gian thực tác vụ 𝑇𝑘 : 𝐸𝑇 𝑘 = 𝑑𝑖,𝑘 𝑗 × tftime𝑖, 𝑗 × 𝑥 𝑘𝑗 + IV GIẢI PHÁP ĐỀ XUẤT extime 𝑘𝑗 thời gian thực thi tác vụ 𝑇𝑘 máy chủ 𝑆 𝑗 𝑥 𝑘𝑗 = 1: extime 𝑘𝑗 =   𝑖=1 𝑁 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 𝑑𝑖,𝑘 𝑗 𝐵(𝑆𝑖 , 𝑆 𝑗 ) 𝑁 𝑗=1 𝑥 𝑘𝑗 biến logic, với 𝑥 𝑘𝑗 = tác vụ 𝑇𝑘 gán vào thực máy chủ 𝑆 𝑗 , khơng 𝑥 𝑘𝑗 = 𝑑𝑖,𝑘 𝑗 khối lượng liệu truyền từ máy chủ 𝑆𝑖 tới máy chủ 𝑆 𝑗 cho tác vụ 𝑇𝑘 𝑥 𝑘𝑗 = tftime𝑖, 𝑗 thời gian truyền liệu từ máy chủ 𝑆𝑖 tới máy chủ 𝑆 𝑗 cho tác vụ 𝑇𝑘 𝑑𝑖,𝑘 𝑗 > 𝑥 𝑘𝑗 = 1: tftime𝑖, 𝑗 =    extime 𝑘𝑗 × 𝑥 𝑘𝑗 Dưới số tham số mơ hình: • 𝑘=1 𝑁 𝑓 (𝑇𝑖 ) ∈ S máy chủ thực tác vụ 𝑇𝑖 • tdata 𝑘 Định nghĩa (Hàm mục tiêu): Hàm mục tiêu xác định cách tối thiểu hóa Makespan sau: Định nghĩa (Khái niệm lịch biểu): Mỗi lịch biểu biểu diễn hàm 𝑓 : T → S, • 𝑀 𝑥 𝑘𝑗 × 𝑑𝑖,𝑘 𝑗 = h) extime 𝑘𝑗 × 𝑥 𝑘𝑗 𝑗=1 𝑊𝑖 /𝑃( 𝑓 (𝑇𝑖 )) thời gian tính tốn tác vụ 𝑇𝑖 với 𝑖 ∈ M 95 Các cơng trình nghiên cứu phát triển Cơng nghệ Thơng tin Truyền thông Phương pháp cập nhật vị trí cá thể Xét cơng thức cập nhật vị trí cá thể theo công thức gốc PSO: v𝑖𝑘+1 = 𝜔v𝑖𝑘 = x𝑖𝑘 + 𝑐 rand1 × + 𝑐 rand2 × x𝑖𝑘+1 + (pbest𝑖 − x𝑖𝑘 ) (gbest − x𝑖𝑘 ), v𝑖𝑘 Hình Mơ tả luồng cơng việc ví dụ (1) (2) Hình Mơ tả phương án xếp lịch ví dụ Hai công thức (1) (2) cho thấy, giống đa số metaheuristic khác, PSO vốn thiết kế cho liệu liên tục, thành phần vector dịch chuyển v𝑖𝑘 số thực công thức (1) tính vector dịch chuyển có tham số số thực rand1 , rand2 , 𝑐 , 𝑐 Nhưng tập máy chủ S hữu hạn đếm nên thành phần vector vị trí x𝑖 phải số ngun để á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𝑖 ví dụ có thành phần x𝑖 [1] = 1, x𝑖 [2] = 2, x𝑖 [3] = 1, x𝑖 [4] = x𝑖 [5] = Hậu hai vế phép gán (2) khác kiểu nhau, vế trái, x𝑖𝑘+1 [𝑡], thuộc kiểu số nguyên vế phải, x𝑖𝑘 [𝑡] + v𝑖𝑘 [𝑡], thuộc kiểu số thực Bảng I TỐC Máy chủ 𝑆𝑖 Tốc độ xử lý 𝑃 (𝑆𝑖 ) 𝑆1 3,1 𝑆2 5,2 𝑆3 4,1 giá trị (x𝑖𝑘+1 [1] ← 3), nghĩa tác vụ 𝑇1 gán cho máy chủ 𝑆3 Để giải mâu thuẫn này, số nghiên cứu trước [12] làm tròn giá trị số thực vế phải gán cho biến vị trí x𝑖𝑘+1 𝑡 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, cịn 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ị ngun 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 |𝑃(𝑆3 ) − 4,4| ≤ |𝑃(𝑆𝑟 ) − 4,4| ∀𝑆𝑟 ∈ S Nghĩa là, máy chủ máy 𝑆3 có tốc độ tính gần với giá trị 4,4 so với máy chủ lại, bảng I, tác vụ 𝑇1 gán cho máy chủ 𝑆3 để hiện, tức 𝑓 (𝑇1 ) = 𝑆3 Phép gán tương tự với bốn tác vụ lại 𝑇2 , 𝑇3 , 𝑇4 𝑇5 toán theo thực thực Vấn đề tương tự xảy với phép trừ hai vector vị trí cơng thức (1): (pbest𝑖 − x𝑖𝑘 ) (gbest − x𝑖𝑘 ) 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𝑖 = (2; 4; 3; 3; 5) x𝑖𝑘 = (1; 3; 2; 1; 2) Để giải vấn đề trên, báo đề xuất cách giải sau: Giá trị thực vế phải, x𝑖𝑘 [𝑡] + v𝑖𝑘 [𝑡], để ngun khơng làm trịn, cịn vế trái, x𝑖𝑘+1 [𝑡], 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 cho máy chủ có lực phù hợp với giá trị tính tốn theo PSO Như vậy, pbest𝑖 − x𝑖𝑘 = (2 − 1; − 3; − 2; − 1; − 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 đề xuất “phép trừ vector” áp dụng riêng cho công thức (1) sau Giả sử x𝑖𝑘+1 [𝑡] ← 𝑗 nếu, với 𝑆𝑟 ∈ S 𝑡 ∈ M, ta có |𝑃(𝑆 𝑗 ) − (x𝑖𝑘 [𝑡] + v𝑖𝑘 [𝑡])| ≤ |𝑃(𝑆𝑟 ) − (x𝑖𝑘 [𝑡] + v𝑖𝑘 [𝑡])| ĐỘ TÍNH TỐN CỦA CÁC MÁY CHỦ (3) 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 I Giả sử bước thứ k+1 tổng x𝑖𝑘 + v𝑖𝑘 = (4,4; 2,1; 6,7; 5,6; 10,2) vector vị trí x𝑖𝑘+1 gán (3; 1; 2; 2; 2) Nghĩa cá thể tương ứng với phương án xếp lịch mơ tả hình Thật vậy, thành phần thứ vector vị trí x𝑖𝑘+1 [1] nhận pbest𝑖 = (𝑥𝑖1 , 𝑥𝑖2 , , 𝑥 𝑖 𝑀 ) với 𝑥𝑖𝑘 ∈ S ∀𝑘, x 𝑗 = (𝑥 𝑗1 , 𝑥 𝑗2 , , 𝑥 𝑗 𝑀 ) với 𝑥 𝑗 𝑘 ∈ S ∀𝑘 Khi kết phép trừ pbest𝑖 − x 𝑗 tính sau: pbest𝑖 − x 𝑗 = (𝑦 , 𝑦 , , 𝑦 𝑀 ), 96 Tập 2019, Số 2, Tháng 12 Thuật toán 2: Toán tử BS(x𝑖 ) Thuật toán 1: Toán tử lân cận BE(x𝑖 , 𝑝 , 𝑝 ) 10 11 12 Dữ liệu vào: Vector (𝜋1 , , 𝜋 𝑝1 , , 𝜋 𝑝2 , , 𝜋 𝑛 ) Dữ liệu ra: Vector (𝜋1 , , 𝜋 𝑝2 , , 𝜋 𝑝1 , , 𝜋 𝑛 ) 𝑆1 ← remove(𝜋, 𝑝1); if 𝑃(𝜋 𝑝2 ) > 𝑃(𝜋 𝑝1 ) then insert(x𝑖 , 𝜋, 𝑝 − 1, 𝑆1 ); else insert(x𝑖 , 𝜋, 𝑝 , 𝑆𝑖 ); end if 𝑃(𝜋 𝑝2 ) > 𝑃(𝜋 𝑝1 ) then 𝑆2 ← remove(x𝑖 , 𝜋, 𝑝 ); else 𝑆2 ← remove(x𝑖 , 𝜋, 𝑝 2+1 ); end insert(x𝑖 , 𝜋, 𝑝 − 1, 𝑆2 ); Thuật toán 3: Tabu_Search(x𝑖 ) với thành phần 𝑦 𝑘 (𝑘 ∈ M) số thực, cho 𝑦 𝑘 = 𝑃(𝑥𝑖𝑘 ) + − 𝑃(𝑥 𝑗 𝑘 ) + 𝑞 ∈S 𝐵(𝑥𝑖𝑘 , 𝑥 𝑞 ) 𝑁 −1 𝑞 ∈S 𝐵(𝑥 𝑗 𝑘 , 𝑥 𝑞 ) 𝑁 −1 Dữ liệu vào: Vector (𝜋1 , 𝜋2 , , 𝜋 𝑛 ) Dữ liệu ra: Vector (𝜋1 , 𝜋2 , , 𝜋 𝑛 ) 𝑆𝑖 ← max{𝑃(𝑆1 ), 𝑃(𝑆2 ), , 𝑃(𝑆 𝑛 )}; for (𝑖 = 1; 𝑖 < 𝑀; 𝑖 + +) 𝑀𝑖 = makespan((𝜋1 , , 𝜋𝑖−1 , 𝑆𝑖 , 𝜋𝑖+1 , , 𝜋 𝑛 )); end 𝑘 ← min{𝑀𝑖 }; 𝑗 ← remove(x𝑖 , 𝜋, 𝑘); insert(x𝑖 , 𝜋, 𝑘 + 1, 𝑗); 10 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ể 11 12 Ví dụ 3: Ta tiếp tục sử dụng tập máy chủ ví dụ Giả sử lbest 𝑗 = (2; 1; 2; 1; 1) x 𝑗 = (3; 2; 1; 2; 1) Vậy ta có lbest 𝑗 −x 𝑗 = (𝑦 , 𝑦 , 𝑦 , 𝑦 , 𝑦 ) với 𝑦 tính sau: Dữ liệu vào: Vector vị trí x𝑖 Dữ liệu ra: Vector vị trí x 𝑘 có 𝑓 (x 𝑘 ) < 𝑓 (x𝑖 ) Khởi tạo bước lặp 𝑡 ← 0; while điều kiện lặp Khởi tạo ngẫu nhiên 𝑟 𝑟 đoạn [1, 𝑀]; x𝑖 ← BE(x𝑖 , 𝑟 , 𝑟 ); 𝑥 𝑘 ← BS(x𝑖 ); if 𝑓 (x 𝑘 ) < 𝑓 (x𝑖 ) then return x 𝑘 ; else return x𝑖 ; end 𝑡 ← 𝑡 + 1; end Gọi remove(x𝑖 , 𝜋, 𝑝) toán tử loại bỏ phần tử 𝜋 𝑝 vector vị trí cá thể x𝑖 = (𝜋1 , 𝜋2 , , 𝜋 𝑛 ) Sau thực toán tử ta có vector (𝜋1 , 𝜋2 , , 𝜋 𝑝−1 , 𝜋 𝑝+1 , , 𝜋 𝑛 ) Gọi insert(x𝑖 , 𝜋 , 𝑝, 𝑆𝑖 ) tốn tử chèn vào vị trí 𝑝 vector vị trí cá thể máy chủ 𝑆𝑖 Sau thực toán tử ta có vector (𝜋1 , 𝜋2 , , 𝜋 𝑝−1 , 𝑆𝑖 , 𝜋 𝑝 , , 𝜋 𝑛 ) Một toán tử lân cận Best Exchange (BE) hoán đổi vị trí hai máy chủ vị trí 𝑝 𝑝 tùy theo lực máy chủ mơ tả thuật tốn 𝐵(𝑆2 , 𝑆1 ) + 𝐵(𝑆2 , 𝑆3 ) 3−1 𝐵(𝑆3 , 𝑆1 ) + 𝐵(𝑆3 , 𝑆2 ) − 𝑃(𝑆3 ) + 3−1 𝑦 = 𝑃(𝑆2 ) + Cách tính tương tự áp dụng cho 𝑦 , , 𝑦 Biện pháp thoát khỏi cực trị địa phương Toán tử Best Swap (BS) tìm vị trí tốt 𝑝 cá thể x𝑖 = (𝜋1 , 𝜋2 , , 𝜋 𝑛 ) thực hoán chuyển hai vị trí 𝑝 𝑝 + Vị trí tốt tính tốn dựa giá trị Makespan phương án thời Tốn tử BS mơ tả thuật tốn Phương pháp PSO nói riêng phương pháp tìm kiếm tiến hóa nói chung đơi 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 toán tử lân cận sử dụng phương pháp tìm kiếm lân cận Tabu Search cho cá thể gbest để tìm kiếm phần tử gbest tốt qua định hướng quần thể dịch chuyển sang vùng tìm kiếm Thuật tốn đề xuất TSPSO Thủ tục tìm kiếm lân cận: Tabu Search phương pháp tìm kiếm lân cận để xuất Glove năm 1986 [14, 15] Phương pháp ứng dụng vào tìm lời giải gần cho nhiều tốn tối ưu tổ hợp Phương pháp Tabu Search lời giải ngẫu nhiên toán, sau áp dụng số tốn tử lân cận để sinh lời giải mới, trình lặp lặp lại tìm lời giải tối ưu thỏa mãn điều kiện toán Bài báo để xuất toán tử lân cận sử dụng cho thuật toán Tabu Search Tổng hợp cải tiến nói trên, thuật tốn đề xuất với tên gọi TSPSO mô tả thuật toán 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 quần thể (gbest), đồng thời có dựa kinh nghiệm cá nhân (pbest𝑖 ) Nếu sau 𝐾 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 Tabu_Search (Thuật tốn 3) gọi để tìm cá thể gbest 97 Các cơng trình nghiên cứu phát triển Công nghệ Thông tin Truyền thông 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 Thuật tốn 4: Thuật tốn TSPSO Tiếp theo ta tìm hiểu độ phức tạp thuật toán TSPSO Trước thực thuật tốn TSPSO 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(𝑛 log(𝑛)) 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(𝑀 × 𝑁), 𝑀 số tác vụ, 𝑁 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(𝑁 ) Trong thuật tốn TSPSO 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 𝑀, độ phức tạp thủ tục khởi tạo O(𝑀 × SCT), 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(𝑀 ) Thuật toán Tabu_Search có độ phức tạp O(𝑀 ) 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ủ (𝑀 > 𝑁), độ phức tạp thuật toán TSPSO (Số hệ) × O(𝑀 ) 10 11 12 13 14 15 16 17 18 19 20 21 22 V KẾT QUẢ THỰC NGHIỆM 23 Dữ liệu vào: Tập T, tập S, mảng 𝑊 [1 × 𝑀], mảng 𝑃[1 × 𝑁], mảng 𝐵[𝑁 × 𝑁], mảng 𝐷 [𝑀 × 𝑀], số 𝐾, độ lệch 𝜔, số cá thể SCT Dữ liệu ra: Lời giải tốt gbest Khởi tạo ngẫu nhiên vector vị trí vector dịch chuyển cá thể 𝑖; Khởi tạo bước lặp 𝑡 ← 0; while điều kiện lặp for 𝑖 = to SCT Tính vector vị trí x𝑖 theo (3); 𝑀𝑖 = Makespan cá thể x𝑖 ; end for 𝑖 = to SCT if pbest𝑖 < 𝑀𝑖 then pbest𝑖 = 𝑀𝑖 ; end end gbest = min{𝑀𝑖 }; for 𝑖 = to SCT Cập nhật vector v𝑖𝑘 theo (1) (3); Tính x𝑖 theo (2); end 𝑡 ← 𝑡 + 1; if sau 𝐾 hệ mà độ lệch gbest không vượt 𝜔 then gbest = Tabu_Search(gbest); end end return gbest; Phân nhóm liệu thực nghiệ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 [16] địa website http://aws.amazon com/ec2/pricing [10; 100] (Mb/s); hệ số quán tính 𝜔 = 0, 729; hệ số gia tốc 𝑐 = 𝑐 = 1, 49445; số 𝐾 = 30; số cá thể SCT = 25; độ lệch 𝜖 = 0, 21; hệ số 𝛼 ∈ [0, 2; 0, 7] 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 [17] Quá trình tiến hành thực nghiệm Để kiểm chứng thuật tốn đề xuất TSPSO sử dụng công cụ mô Cloudsim [6] để 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 [17] Các hàm gói thư viện Jswarm [6] 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 [12], EGA [18] Round Robin [19] Những liệu tổng hợp lại chia thành hai nhóm sau 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 Hệ số 𝛼 xác định sau: 𝛼= |𝐸 | 𝑀 × (𝑀 − 1)/2 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, GHz, RAM GB, 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 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 Kết thực nghiệm Tham số cấu hình hệ thống Hình 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 TSPSO thuật toá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á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 máy chủ 𝑃𝑖 ∈ [1; 250] (MI/s); khối lượng liệu tác vụ 𝐷 𝑖 𝑗 ∈ [1; 10.000] (Mb); băng thông máy chủ 𝐵(𝑆𝑖 , 𝑆 𝑗 ) ∈ 98 Tập 2019, Số 2, Tháng 12 Bảng II KẾT QUẢ THỰC HIỆN Ký hiệu THUẬT TOÁN VỚI CÁC BỘ DỮ LIỆU NGẪU NHIÊN RRTSM PSO_H TSPSO EGA STD Mean Best STD Mean Best STD Mean Best STD Mean T532 - 18,7 18,7 4,7 9,9 7,1 1,0 7,2 7,0 3,4 9,8 Best 7,0 T1031 - 33,1 33,1 2,4 20,4 17,4 1,1 18,3 16,5 1,2 20,4 16,8 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,7 5,2 1,8 6,8 3,9 2,3 9,7 4,9 T1051 - 23,7 23,7 1,5 21,5 16,4 1,1 17,6 14,8 1,4 19,1 16,1 T1054 - 25,2 25,2 2,0 20,7 18,9 0,9 19,0 17,3 1,3 20,5 17,6 T2081 - 72,7 72,7 5,2 44,2 34,1 2,7 37,8 32,4 3,7 41,9 35,1 T2083 - 20,3 20,3 2,2 21,2 19,8 0,5 19,4 18,2 1,4 20,3 19,6 T2084 - 72,0 72,0 6,1 44,7 37,4 2,7 39,3 34,1 3,2 42,5 36,5 T2086 - 32,5 32,5 1,5 26,2 22,8 1,2 21,4 17,4 1,4 25,4 22,6 Bảng III KẾT QUẢ THỰC HIỆN Ký hiệu THUẬT TOÁN VỚI CÁC BỘ DỮ LIỆU TỪ ỨNG DỤNG RRTSM PSO_H MONTAGE TSPSO EGA STD Mean Best STD Mean Best STD Mean Best STD Mean Best M2032 - 162,7 162,7 4,9 142,7 131,6 3,6 123,4 129,0 5,3 135,5 130,1 M2051 - 146,6 146,6 5,4 132 121,8 3,3 123,4 115,7 4,5 131,7 123,3 M2531 - 465,0 465,0 18,7 373,4 345,5 13,0 346,4 336,1 7,0 352,7 339,4 M2532 - 183,8 183,8 3,9 110,7 101,5 1,5 104,7 101,2 1,4 112,1 104,5 M2533 - 322,9 322,9 4,0 311,4 311,7 0,5 312,5 311,6 0,5 315,2 311,8 M2581 - 300,6 300,6 15 261,3 232,1 6,1 236,1 223,4 6,5 246,2 231,9 M2582 - 133,9 133,9 5,1 84,8 77,9 4,7 81,4 72,3 2,9 85,1 77,6 M2583 - 236,5 236,5 8,3 239 224 5,3 221,3 215,7 4,7 233,5 221,4 M5081 - 155,8 155,8 6,3 108,0 95,0 5,5 101,7 91,5 3,2 107,8 96,6 M5082 - 82,1 82,1 0,9 14,0 18,1 0,8 12,6 13,1 0,5 14,0 14,8 M5083 - 101,7 101,7 4,3 98,3 89,8 4,3 90,0 80,2 1,8 95,3 88,5 công việc từ ứng dụng Montage Kết thực nghiệm trình bày chi tiết bảng II III hình Kết so sánh giá trị trung bình tính thuật tốn TSPSO với thuật tốn đối sánh, hầu hết trường hợp thuật toán TSPSO cho kết tốt thuật toán đối sánh, giá trị trung bình tìm TSPSO 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% EGA, điều chứng tỏ thuật tốn TSPSO 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 kiến trúc lân cận cho thuật toán Tabu Search thuật tốn Tối ưu bày đàn để 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ó: Các hình so sánh giá trị tốt tìm thuật tốn TSPSO với thuật tốn đối sánh, qua ta thấy giá trị tốt tìm TSPSO 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 toán TSPSO nhỏ giá trị tốt tìm thuật tốn EGA từ 1%–8% Kết so sánh độ lệch chuẩn tìm thuật toán TSPSO với thuật toán đối sánh, giá trị độ lệch chuẩn TSPSO nhỏ độ lệch chuẩn thuật tốn RRTSM, PSO_H • • • 99 Đề 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ứ 𝑖 theo giá trị gbest pbest𝑖 Đề xuất hai toán tử lân cận cho thuật tốn tìm kiếm lân cận Tabu Search để chương trình khỏi cực trị địa phương cách dịch chuyển cá thể tới miền không gian tìm kiếm Các cơng trình nghiên cứu phát triển Công nghệ Thông tin Truyền thông TÀI LIỆU THAM KHẢO [1] J D Ullman, “NP-complete scheduling problems,” Journal of Computer and System sciences, vol 10, no 3, pp 384– 393, 1975 [2] G B Berriman, E Deelman, J C Good, J C Jacob, D S Katz, C Kesselman et al., “Montage: a grid-enabled engine for delivering custom science-grade mosaics on demand,” in Optimizing Scientific Return for Astronomy through Information Technologies, vol 5493, 2004, pp 221–232 [3] P Maechling, E Deelman, L Zhao, R Graves, G Mehta, N Gupta et al., “SCEC CyberShake workflows—automating probabilistic seismic hazard analysis calculations,” in Workflows for e-Science Springer, 2007, pp 143–163 [4] USC Epigenome Center [Online] Available: http: //epigenome.usc.edu [5] LIGO - Laser Interferometer Gravitational Wave Observatory [Online] Available: http://www.ligo.caltech.edu [6] R Buyya, R Ranjan, and R N Calheiros, “Modeling and simulation of scalable cloud computing environments and the CloudSim toolkit: Challenges and opportunities,” in IEEE International Conference on High Performance Computing & Simulation, 2009, pp 1–11 [7] K Dubey, M Kumar, and S Sharma, “Modified HEFT algorithm for task scheduling in cloud environment,” Procedia Computer Science, vol 125, pp 725–732, 2018 [8] A M Manasrah and H Ba Ali, “Workflow scheduling using hybrid GA-PSO algorithm in cloud computing,” Wireless Communications and Mobile Computing, vol 2018, no 1934784, pp 1–16, 2018 [9] N Grigoreva, “Branch and bound method for scheduling precedence constrained tasks on parallel identical processors,” in Proceedings of The World Congress on Engineering, 2014, pp 832–836 [10] R Rajavel and T Mala, “Achieving service level agreement in cloud environment using job prioritization in hierarchical scheduling,” in International Conf on Information Systems Design and Intelligent Applications, 2012, pp 547–554 [11] S Singh and M Kalra, “Task scheduling optimization of independent tasks in cloud computing using enhanced genetic algorithm,” Int’l J Application or Innovation in Engineering & Management, vol 3, no 7, pp 2319–4847, 2014 [12] S Pandey, L Wu, S M Guru, and R Buyya, “A particle swarm optimization-based heuristic for scheduling workflow applications in cloud computing environments,” in IEEE International Conference on Advanced Information Networking and Applications, 2010, pp 400–407 [13] Q Cao, Z.-B Wei, and W.-M Gong, “An optimized algorithm for task scheduling based on activity based costing in cloud computing,” in IEEE International Conference on Bioinformatics and Biomedical Engineering, 2009, pp 1–3 [14] F Glover, “Tabu search– part I,” ORSA Journal on Computing, vol 1, no 3, pp 190–206, 1989 [15] D de Werra and A Hertz, “Tabu search techniques: A tutorial and an application to neural networks,” Operations Research Spektrum, vol 11, no 3, pp 131–141, 1989 [16] J Vliet and F Paganelli, Programming Amazon EC2 O’Reilly Media, Inc, 2011 [17] Q Jiang, Y C Lee, M Arenaz, L M Leslie, and A Y Zomaya, “Optimizing scientific workflows in the cloud: A Montage example,” in IEEE International Conference on Utility and Cloud Computing, 2014, pp 517–522 [18] R Kaur and S Kinger, “Enhanced genetic algorithm based task scheduling in cloud computing,” International Journal of Computer Applications, vol 101, no 14, pp 1–6, 2014 [19] E Upfal, Probability and computing: Randomized algorithms and probabilistic analysis Cambridge University Press, 2005 (a) T532 (b) T1051 (c) M2032 Hình So sánh thuật toán với liệu khác nhau: T532, T1051 M2032 • Đề xuất thuật tốn TSPSO sử dụng phương thức cập nhật vị trí cá thể thủ tục Tabu Search để 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 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 tố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 100 Tập 2019, Số 2, Tháng 12 Phan Thanh Toàn sinh năm 1974 Thái Nguyên, tốt nghiệp Đại học Thạc sĩ Trường Đại học Bách khoa Hà Nội nhận Tiến sĩ năm 2018 Học viện Khoa học Công nghệ Quân Tác giả công tác trường Đại học Sư phạm Hà Nội Lĩnh vực nghiên cứu bao gồm phương pháp tiến hóa, tối ưu, xử lý song song phân tán Đặng Quốc Hữu tốt nghiệp Đại học Thạc sĩ Khoa Công nghệ Thông tin, Đại học Quốc gia Hà Nội năm 2006 2015 Tác giả công tác Trường Đại học Thương mại, đồng thời nghiên cứu sinh Viện Khoa học Công nghệ Quân từ năm 2017 Lĩnh vực nghiên cứu bao gồm mạng máy tính truyền thơng, xử lý song song phân tán Nguyễn Thế Lộc tốt nghiệp Đại học Khoa Toán–Tin, Trường Đại học Sư phạm Hà Nội năm 1993, Thạc sĩ Công nghệ Thông tin Trường Đại học 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 Tác giả công tác Trường Đại học Sư phạm Hà Nội Lĩnh vực nghiên cứu bao gồm mạng máy tính truyền thông, xử lý song song phân tán 101 ... toán Trong [7], Dubey cộng đề xuất thuật toán lập lịch điều phối tác vụ luồng công việc môi trường điện toán đám mây dựa việc cải tiến thuật toán HEFT nhằm cực tiểu hóa thời gian hồn thành luồng. .. nhiên toán, sau áp dụng số tốn tử lân cận để sinh lời giải mới, trình lặp lặp lại tìm lời giải tối ưu thỏa mãn điều kiện toán Bài báo để xuất toán tử lân cận sử dụng cho thuật toán Tabu Search. .. xuất thuật toán lập lịch luồng công việc PSO Heuristic (PSO_ H: Particle Swarm Optimization Heuristic) mơi trường điện tốn đám mây dựa chiến lược tối ưu bày đàn Cụ thể, họ đề xuất thuật toán lập lịch

Ngày đăng: 04/11/2020, 07:20

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan