1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Khoa học máy tính: Lập lịch tối ưu cho phòng thí nghiệm ảo

59 0 0
Tài liệu đã được kiểm tra trùng lặp

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Lập lịch tối ưu cho phòng thí nghiệm ảo
Tác giả Tô Vũ Song Phương
Người hướng dẫn TS. Huỳnh Tường Nguyên
Trường học Đại học Quốc gia Thành phố Hồ Chí Minh
Chuyên ngành Khoa học máy tính
Thể loại Luận văn thạc sĩ
Năm xuất bản 2013
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 59
Dung lượng 7,06 MB

Nội dung

NHIÊỆM VU VÀ NỘI DUNG: - Nghiên cứu bài toán lập lịch tối ưu cho phòng thí nghiệm ảo với trường hợp các công việc có thời gian thực thi cô định và các máy ảo có câu hìnhđông nhat.. Luận

Trang 1

đàTÔ VŨ SONG PHƯƠNG

LAP LICH TOI UUCHO PHONG THI NGHIEM AO

Chuyén nganh: Khoa Hoc May TinhMa so: 60.48.01

TPHCM, thang 11 nam 2013

Trang 2

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI

TRUONG ĐẠI HỌC BACH KHOA —DHQG -HCM

Cán bộ hướng dẫn khoa học : TS Huynh Tường Nguyên

2 Thư ký: TS Trần Văn Hoài

3 Phản biện 1: TS Nguyễn Văn Minh Mẫn

4 Phản biện 2: TS Tô Bá Lâm

5 Ủy viên: TS Huỳnh Tường NguyênXác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên

ngành sau khi luận văn đã được sửa chữa (nêu có).

CHỦ TỊCH HỘI DONG TRUONG KHOA

Trang 3

NHIỆM VỤ LUẬN VĂN THẠC SĨHọ tên học viên: Tô Vũ Song Phương MSHV: 11070468

Ngày, tháng, năm sinh: 15/08/1988 Nơi sinh: TP.Hồ Chí MinhChuyên ngành: Khoa Học Máy Tính Mã số: 60.48.01

I TÊN DE TÀI: Lập lịch tối ưu cho phòng thí nghiệm ảoIl NHIÊỆM VU VÀ NỘI DUNG:

- Nghiên cứu bài toán lập lịch tối ưu cho phòng thí nghiệm ảo với trường

hợp các công việc có thời gian thực thi cô định và các máy ảo có câu hìnhđông nhat.

- Đề xuất mô hình toán học cho bai toán.— Câu hình solver dé sử dụng nhát cắt Gomory cho bai toán.- Đánh giá mô hình toán học và phương pháp nhát cắt Gomory dựa trên

các kêt quả thực nghiệm.

IHI.NGÀY GIAO NHIEM VU: 14/01/2013IV.NGÀY HOÀN THÀNH NHIEM VU: 22/11/2013V CAN BO HƯỚNG DAN: TS Huỳnh Tường Nguyên

Trang 4

LOI CAM ONTôi xin gửi lời cảm ơn chân thành nhất đến TS Huynh Tường Nguyên, người đã tậntình hướng dẫn, giúp đỡ tôi trong suốt quá trình thực hiện luận văn và tạo điều kiện đểtôi có thé hoàn thành luận văn nay.

Xin cảm ơn các Thay Cô đã dạy tôi trong thời gian qua Tôi xin cảm ơn các bạn đồng

môn, đồng nghiệp đã quan tâm, chia sẻ trong suôt quá trình học va làm luận văn.

Xin cảm ơn gia đình đã dành cho tôi tình thương yêu và sự hỗ trợ tốt nhất.

Trang 5

Luận văn này tập trung nghiên cứu bài toán quản lý mạng máy tính ảo với trường hợp

đặc biệt các công việc có thời gian xử lý có định và các máy có cầu hình đồng nhất.Một số đóng góp trong luận văn này:

— Tìm hiểu phương pháp nhát cắt Gomory Cut và việc ứng dụng phương phápđó vào bài toán quản lý mạng máy tính ảo dé tiết kiệm chi phí, giảm bớt số

Trang 6

LỜI CAM ĐOAN

Tôi cam đoan răng, ngoại trừ các kêt quả tham khảo từ các công trình khác như đã ghirõ trong luận văn, các công việc trình bày trong luận văn này là do chính tôi thực hiệnvà chưa có phân nội dung nao của luận văn này được nộp dé lây một băng cap ởtrường này hoặc ở trường khác.

Ngày 22 tháng 11 năm 2013

Tô Vũ Song Phương

Trang 7

Giới thiệu11 Lý do chọn đề bài và xxx va1.2 Phương pháp nghiên đỨu va

1.4 Cấu trúc của luận vin cv và v v2

Cơ sở lý thuyết về bài toán lập lịch

2.1 Khái nệm lập lịch 2 ee2.2 Bài toán lập lịch Quà va

2.21 Phát biểu bài toán ee

Phương pháp nhát cắt trong bài toán quy hoạch nguyên

4.1 Sự cần thiết của bài toán quy hoạch nguyên 4.2_ Phương pháp nhát cắt giải quyết bài toán quy hoạch nguyên A21 TC? 0® - ddd 4.2.2 Phương pháp Gomory €uE ca4.23 Ví dụ Gomory CUW Qua

Thiết kế và hiện thực chương trình tính toán

5.1 Thiết kế phần mềm tính toán 000.0.00 0000000 eee5.1.1 Mô hình ý nệm Ặ Q Q Q Q ro5.1.2 Giới thiệu về Gurobi Solver cv.5.2 Hiện thực phần mềm tính toán 020002002.2.0000845.2.1 Cấu hình Gurobi Solver có sử dụng nhát cắt 5.3 Kết quả thực nghiệm 2 2 va

C3 b2 —¬ —¬ wmomom H> ff mm

1012131315181819192123

Trang 8

MỤC LUC

5.3.1 Dt liệu ngẫu nhiên.5.3.2 Dit liệu thực tế 5.3.3 Kết quả thực nghiệm

6 Kết luận

Tài liệu tham khảo

Phụ lục Soure code biểu diễn mô hình toán học bằng Gurobi Solver

ll

4345

47

Trang 9

3.14.14.25.15.25.35.45.95.65.75.85.9

5.10

5.115.12

Giản đồ Gantt dưới góc độ máy va công việc 5

Ví dụ cụ thể cho bài toán P2||Cae - - - - - {ST 11Ví dụ cụ thé cho bài toán P\prec;p; = 1[Cjmax - - Ốc ST 12

Ví dụ một cách lập lịch khả di cho bài toán quan tâm 15Giá trị tối ưu LP khi làm tron xa với giá trị tối ưu của IP problem 19Giá trị tối ưu IP problem sau khi dùng nhát cắt 22Mô hinhyniém 0.0 20000 27Mô hình khái quát Gurobi Solver 0.0.0.0.0.0.0.0.0.0 00.2 28So sánh kết quả thực nghiệm giữa Flow Cover va Gomory Cut ở hàm mục tiêu 1 với dit

liệu ngẫu nhin c Q Q Là gà và TT va 32

So sánh kết quả thực nghiệm giữa Flow Cover va Gomory Cut ở hàm mục tiêu 2 với dit

liệu ngẫu nhin c Q Q Là gà và TT va 32

So sánh kết quả thực nghiệm giữa Clique va Gomory Cut ở hàm muc tiêu 1 với dữ liệu

ngẫu nhiên cà cà cà gà g gà TT va 32

So sánh kết quả thực nghiệm giữa Clique va Gomory Cut ở hàm muc tiêu 2 với dữ liệu

ngẫu nhiên cà cà cà gà g gà TT va 33Thời gian thực thi trung bình giữa Flow Cover va Gomory Cut ứng với hàm mục tiéul 33

Thời gian thực thi trung bình giữa Flow Cover và Gomory Cut ứng với hàm mục tiêu2 34Số nhát cắt trung bình giữa Flow Cover va Gomory Cut ứng với hàm mục tiêu Il 34Số nhát cắt trung bình giữa Flow Cover va Gomory Cut ứng với hàm mục tiêu 2 30

Thời gian thực thi trung bình giữa Clique va Gomory Cut ứng với hàm mục tiéul ð5Thời gian thực thi trung bình giữa Clique va Gomory Cut ứng với hàm mục tiêu 2 36

Số nhát cắt trung bình giữa Clique và Gomory Cut ứng với hàm mục tiêu l 36Số phép cắt trung bình giữa Clique và Gomory Cut ứng với hàm mục tiéu2 37

So sánh thời gian chạy trung bình khi dùng Gomory Cut va không ding nhát cắt ứngvới hàm mục tiêU Í 2 2 Q Q LH cv cv cu ca cv cv kg lv cv kg xà 38So sánh thời gian chạy trung bình khi dùng Gomory Cut va không ding nhát cắt ứngvới hàm mục tiêu 2 LH cv cv cv ca cv cv kg lv cv kg xa 38

Kết quả thực nghiệm từ dit liệu thực tế trên ham mục tiêu 1 - Học kỳ 1 năm học 2010-2011 39Kết quả thực nghiệm từ dif liệu thực tế trên hàm mục tiêu 1 - Học kỳ 2 năm học 2010-2011 39Kết quả thực nghiệm từ dit liệu thực tế trên hàm mục tiêu 1 - Học kỳ 1 năm học 2011-2012 40

ill

Trang 10

DANH SÁCH HINH VE

5.20

5.215.22

1V

Trang 11

Giới thiệu

1.1 Lý do chọn đề tàiTrong những năm gần đây, tiết kiệm năng lượng là một trong những vấn đề quan trọng,đang được quan tâm hàng đầu của tất cả các quốc gia trên thế giới, trong đó có ViệtNam Việc sử dụng hiệu quả các tài nguyên năng lượng đã được đặt ra từ lâu trong nhiềulinh vực Mục tiêu mong muốn là giảm tối đa các hao hut tài nguyên, năng lượng trongthực tế vốn rất hạn ché

Thông thường có hai cách tiết kiệm năng lượng Một cách là thiết kế những kiến trúcphần cứng tiêu thụ năng lượng thấp Cách này tuy hiệu quả nhưng đòi hỏi chi phí cao vàphụ thuộc vào thiết bị phần cứng Một cách khác là dùng phần mềm hứa hẹn và thực tiễn

hơn Cách này hay còn gọi là lập lịch là dùng giải thuật để gán các tài nguyên cho côngviệc với thời gian cụ thể sao cho tối ưu nhất

Ở nước ta hiện nay, kiến thức về lập lịch được trình bày rất ít trong các môn học liên

quan tới ngành toán ứng dụng, khoa học máy tính, quản lý ứng dụng Chỉ có một vài công

trình nghiên cứu liên quan đến lập lịch như lập thời biểu, giao thông Chính vì lý do đó,luận văn sẽ tìm hiểu các kết quả thường được áp dụng trong lý thuyết lập lịch để có thể

giải quyết các bài toán trong cuộc sống và sản xuất

1.2 Phương pháp nghiên cứuVề mặt lý thuyết, các kiến thức cơ bản của lý thuyết lập lịch tối ưu sẽ được tìm hiểu Dựa

vào các kiến thức này, các bài toán lập lịch trên máy song song giống nhau từng bước sẽđược đào sâu, nghiên cứu kỹ.

Dé minh họa rõ hơn cách tiếp cận và giải quyết bài toán, ba bài toán vi dụ sẽ được nghiên

cứu và trình bày chi tiết các bước từ phân tích bài toán, đến việc hình thành các giảithuật.

Về khía cạnh áp dụng các kiến thức của tối ưu, luận văn này sẽ tìm hiểu các yêu cầu củamột bài toán lập lịch cụ thể Từ đó xác định độ khó của bài toán, lập mô hình toán họcvà sau đó đề nghị các giải thuật để giải quyết bài toán Các giải thuật đề nghị cần được

Trang 12

CHUONG 1 GIỚI THIEU

hiện thực và tỉnh chỉnh sao cho hiệu quả nhất có thể khi áp dụng vào thực tế

1.3 Bài toán tiêp cận cụ thé

Phần mô tả bài toán tiếp cận:Các trường Dại học hiện nay đã bắt đầu quan tâm đến việc sử dụng hiệu quả tài nguyênhiện có trong trường để đáp ứng nhu cầu dạy học và nghiên cứu của các giảng viên, nhànghiên cứu, sinh viên, trên các phần mềm chuyên dụng trên máy tính

Giải pháp dựa trên công nghệ điện toán đấm mây (Cloud Computing) như khái niệmphòng thí nghiệm tính toán ảo là một bước đi hợp lý cho việc phát triển các hạ tầng giáo

dục Môi trường giáo dục là môi trường đặc biệt đa dạng, năng động và yêu cầu cao Hệ

thống này phải đảm bảo tính phát triển của hệ thống và giảm chi phí nhân lực công nghệthông tin trong việc cài đặt, bảo trì, sửa chữa phần mềm, phần cứng Cu thể hơn, hệ

thống phải cung cấp tài nguyên (máy ảo, phần mềm, ) cho hai yêu cầu: giảng dạy cácmôn học dùng máy tính và chạy các ứng dụng nghiên cứu khoa học và kỹ thuật.

Trên mô hình phòng thí nghiệm ảo, hệ thống sẽ cấp phát cho nhu cầu sử dụng máy tínhdưới dang máy ao (Virtual machine) cho sinh viên và giảng viên (gọi tắt là người dùng).Việc sử dụng máy ảo gán cho người dùng sẽ làm cho mỗi người dùng độc lập hoàn toànvới nhau Vấn đề nảy sinh mới là làm thế nào để quản lý số lượng lớn các máy ảo này trên

hạ tầng máy tính không đồng nhất (nghĩa là có nhiều cụm máy tính thực trong khuônviên trường với cấu hình máy khác nhau) Bên cạnh đó hệ thống còn cần thiết tạo ra các

Cloud gateway để khi cần có thể thuê thêm từ các nhà cung cấp khác như Amazon ElasticComputing Cloud, Amazon Simple Storeage Service, để chạy các máy ảo và lưu trữ di

liệu.Một thách thức đặt ra khi xây dựng phòng thí nghiệm máy tính ảo là phải quản lý tài

nguyên (các máy chủ, băng thông mạng, thiết bị lưu trữ, ) kể cả chi phí hoạt động (baogồm tiền điện trả cho công ty điện lực để vận hành hệ thống máy chủ, máy lạnh, thiếtbị mạng, ) một cách hiệu quả Ba trường hợp sử dụng tài nguyên trong giảng day vànghiên cứu được quan tâm:

e Một giảng viên trong trường đại học yêu cầu 30 máy ảo cho 30 sinh viên thực hànhbài Lab cho môn học Hệ điều hành bắt đầu từ lúc 9h05 đến 11h30, mỗi tuần vàothứ ba kéo dài trong 15 tuần của học kỳ

e Một nghiên cứu viên yêu cầu vài chục nút tính toán cho việc chạy một chương trình

song song trong vài giờ (thời gian hoàn tất càng sớm càng tốt hoặc có thể có hạnchót)

e Một sinh viên yêu cầu một máy ảo để làm bài tập cho môn học, thời gian xếp chỗlinh động trong ngày.

Trang 13

1.4 Câu trúc cua luận văn

Nội dung luận văn được trình bày bao gồm 6 chương sau:

e Chương 1: Giới thiệu

Chương này trình bày lý do chọn đề tài, phương pháp nghiên cứu và bài toán tiếp

cận cụ thể

e Chương 2: Cơ sở lý thuyết về bài toán lập lịch

Chương này trình bày khái niệm lập lịch, tổng quan về lý thuyết lập lịch

e Chương 3: Đặc tả và mô hình hóa bài toán

Chương này trình bày chi tiết đặc ta một bài toán lập lịch quan tâm và mô hìnhtoán học của bài toán đó.

e Chương 4: Phương pháp nhát cắt trong bài toán quy hoạch nguyên

Chương này trình bay lý thuyết, phương pháp cắt Gomory để giải một bài toán quy

hoạch nguyên.e Chương 5: Thiết kế và hiện thực chương trình tính toán

Chương này trình bày chi tiết cách thiết kế, hiện thực chương trình Dong thời cũngtrình bày các kết quả thực nghiệm từ dữ liệu ngẫu nhiên và dữ liệu thực tế

e Chương 6: Kết luậnChương này tổng kết lại những công việc đã làm được, sau đó nêu ra những đónggóp và hướng phát triển của luận văn

Trang 14

Chương 2Cơ sở lý thuyết về bài tốn lập lịch

2.1 Khai niệm lập lịchLập lịch là một quá trình hỗ trợ quyết định cách cấp phát tài nguyên để xử lý một tập

các tác vụ hoặc cơng việc sao cho thỏa mãn một số ràng buộc cho trước, đồng thời tối ưuhĩa mục tiêu đề ra Lập lịch đĩng một vai trị quan trọng trong việc giúp đỡ con ngườilập kế hoạch sử dụng nguồn tài nguyên hợp lý và hiệu quả nhất

Ngày nay, cùng với sự phát triển của các nước trên giới với sự tiến bộ về khoa học kỹthuật, các bài tốn nghiên cứu về lập lịch ngày càng được mở rộng, sát với thực tế để đáp

ứng nhu cầu ngày càng tăng Mặc dù những bài tốn tối ưu hĩa đa phần thường liên quan

đến bài tốn lập lịch trong cơng nghiệp và dùng để quản lý việc sử dụng các nguồn tài

nguyên rất hạn chế nhưng các kết quả đạt được được áp dụng rất nhiều trong nhiều lĩnhvực khác nhau như là giáo dục, giao thơng vận tải, hàng khơng, sinh học, viễn thơng, tàichính, v.v Với sự hỗ trợ của máy tính, các cách giải hay thuật tốn trong lập lịch ngàycàng đa dạng, gần gũi với thực tế, và thực sự thu hút các nhà nghiên cứu quan tâm đếngiải quyết những bài tốn cĩ tính thách thức cao

2.2 Bai tốn lập lịch

22.1 Phát biểu bài tốn

Giả sử cĩ m may M; (7 = 1, ,m) phải thực hiện n cơng việc J; (¢ = 1, ,m) Mục tiêucủa bài tốn là tìm một cách lập lịch thỏa mãn một số ràng buộc và mục tiêu nào đĩ Các

ràng buộc cĩ thể là ràng buộc về các thuộc tính của cơng việc hay là ràng buộc về mơitrường làm việc và khả năng của máy Mục tiêu cần thỏa mãn ví dụ như là cực tiểu thời

gian hồn thành các cơng việc, cơng việc hồn thành khơng được quá sớm cũng khơng

quá trễ, cực tiểu thời gian trễ so với thời gian hồn thành dự kiến hộc là sự kết hợp của

nhiều mục tiêu khác nhau

Các lập lịch cĩ thể được biểu diễn bằng giản đồ Gantt như hình 2.1 Giản đồ Gantt cĩthể biểu diễn theo cách nhìn ở gĩc độ từng máy (hình 2.1(a)) hay ở gĩc độ từng cơng việc(hình 2.1(b))

Trang 15

e Lập lịch tối ưu (optimal) là một cách lập lịch cực tiểu hoặc cực đại một mục tiêu tối

ưu mong muốn.Một số khái niệm liên quan đến công việc:

e Mot công việc J; gồm có n; tác vụ Ox, , Oin, Nếu nj = 1, công việc J; chỉ có mộttác vụ duy nhất Dé đơn giản hòa, ta đồng nhất O;; với Jj

e Tương ứng với mỗi tác vụ Ó;; có một thời gian xử lý cần thiết là p;; Tương tự, nêun; = 1 ta đồng nhất p;; với p;

e ương ứng với mỗi tac vụ Ó;; có một tập các mấy fi; C {Mh, , M„} mà có khảnăng xử lý được tác vụ đó.

— Nếu như tất cả ; đều là các tập hợp chỉ có một phần tử (một máy), ta cótrường hợp các máy chuyên dụng (dedicated machine), nghĩa là mỗi tác vụ chỉcó thể được thực hiện trên một máy chuyên dụng đó mà thôi

— Nếu như tất cả /;; đều là các tập hợp tất cả các máy {M, , Mn}, ta có trường

hợp các máy song song (parallel), nghĩa là bất kỳ tác vụ nào cũng có thể được

thực thi trên bất kỳ máy nào

— Trường hợp tổng quát trong sản xuất, các máy có thể được trang bị với nhiềucông cụ khác nhau Điều này có nghĩa là một tác vụ chỉ có thể được thực hiện

Trang 16

CHƯƠNG 2 CƠ SỞ LÝ THUYET VỀ BÀI TOÁN LẬP LICH

được trên may nào mà được trang bi công cụ thích hợp Ỏ đây, ta gọi là trường

hợp các máy đa chức năng (multi-purpose machine - MPM).— Trong toàn bộ chu kỳ xử lý, tác vụ Ó,; trong thực tế cũng có thể sử dụng cùng

lúc tất cả các máy trong tập /; Các bài toán dang này gọi là các bài toán lậplịch tác vụ đa xử ly (multiprocessor task scheduling problems)

e release date r;: đây là thời điểm mà sau đó tác vụ đầu tiên của công việc J; được

phép thực thi.e Ham chi phí f;(t): Hàm số đo mức chi phí của việc hoàn thành công việc J; tại thời

e 6 : đặc tả các đặc trưng của công việc.

e +: đặc tả mục tiêu tối ưu.Ví dụ một số bài toán lập lịch:

F2||CnaxP2|prec; py = 1|Lmax

Trang 17

e Nếu ai € {0, P,Q, R, PMPM,QMPM} , mỗi công việc J; chỉ bao gồm một tác vụduy nhất.

Nếu ơi = 0, mỗi công việc phải được thực thi trên một máy chuyên dụng cho nó

Nếu a; € {P,Q, R} , chúng ta có các máy song song, nghĩa là mỗi công việc có thể

được xử lý trên bat kỳ máy nào trong tập M), , Mn.Nếu ai = P, ta có các máy đồng nhất song song Xét thời gian xử lý ø;; của côngviệc J; trên máy M;, vì các máy là đồng nhất song song ta có ø;; = p; cho tat cả các

may.

Nếu a; = Q, ta có các máy đồng dang song song Xét thời gian xử lý p;; của côngviệc J; trên máy M,, ta có p;; = p;/s; với s; tương ứng là tốc độ của máy M,.Nếu a, = R, ta có các máy song song không liên quan Xét thời gian xử lý p;; củacông việc J; trên máy M,, ta có pi; = 7Ø;/s¡; với s¿; tương ứng là tốc độ phụ thuộcvào công việc của máy M;.

Nếu ơi = PMPM, ta có các máy đa chức năng đồng nhất.Nếu ai = QM PM, ta có các máy đa chức năng đồng dạng.e Nếu a, € {G,X,O, J, F} , chúng ta có mô hình lập lich đa tác vụ, ứng với mỗi công

việc J; là một tập các tác vụ Ởặy, , Oin, Tất cả các máy đều là chuyên dụng, nghĩalà tất cả „; đều là các tập có 1 phần tử Hơn nữa, giữa các tác vụ tồn tại một cácmối quan hệ thứ tự trước sau

Nếu ơi = G, ta có mô hình chung và được gọi là general shop Các bài toán khácnhư là job shops, flow shops, open shops, mixed shops là những trường hợpđặc biệt của mô hình chung general shop.

Nếu a, = J, ta có mô hình job shop Trong mô hình các tác vụ có mối quan hệtrước sau:

Oj —> On —> O13 —> —> Q;„„,0 = Ì, ,mThông thường, chúng ta giả định là ; A /¿;+1 với J = 1, ,n; — 1 Nếu một jobshop có /; = /;+1, ta gọi là job shop có sự lặp lại may (job shop with machinerepetition)

Nếu a, = Ƒ' ta có mô hình flow shop Day là trường hợp đặc biệt của mô hìnhjob shop mà n; = m với i =1, ,n và = {Mj}, Vi = 1, ,n, V7 = 1, ,m

Nếu ai = O, ta có mô hình open shop Mô hình open shop được định nghĩa giốngnhư mô hình flow shop nhưng không có mối quan hệ trước sau giữa các tác vụ.Nếu ai = X, ta có mô hình mixed shop Dây là mô hình kết hợp giữa 2 mô hìnhJob shop và open shop.

e Thông số ag biểu diễn số lượng máy được xem xét trong bài toán lập lịch Nếu aylà một số nguyên dương 1, 2 , thì a ký hiệu cho số lượng máy Nếu ag = k, vớik là một số tùy ý, có nghĩa là số lượng máy là một số cố định tùy ý Nếu số lượngmáy là tùy ý, ta ký hiệu là ag = o.

Trang 18

CHƯƠNG 2 CƠ SỞ LÝ THUYET VỀ BÀI TOÁN LẬP LICH

2.2.3 Đặc điểm công việc

Cac đặc điểm của công việc được đặc trưng bởi một tập Ø bao gồm 6 phần tử đi, Bo, Bs,

Đa, Bs va Be.

Ø¡ chỉ ra liệu có cho phép công việc được chia nhỏ hay không (preemption) Việc chophép chia nhỏ công việc nghĩa là một công việc đang xử lý có thể bị tạm thời ngắt quãngvà sẽ được tiếp tục sau đó, thậm chí là trên một máy khác Một công việc có thể bị ngắt

quãng nhiều lần Nếu công việc được phép chia nhỏ, ta ký hiệu đị = pmtn Ngược lại, nếukhông được phép thì đị không xuất hiện trong tập đ

65 miêu tả mối quan hệ trước sau giữa các công việc Các mối quan hệ này có thể đượcbiểu diễn bằng một đồ thị có hướng không tuần hoàn G = (V,44) Trong đó, tập đỉnh

V = {i, ,n} tương ứng với các công việc và (2,k) € A nếu công việc J; phải được kếtthúc trước khi công việc J, bắt đầu Trong trường hợp này ta ký hiệu J; > J„ Nếu G làmột đồ thị có hướng không tuần hoàn tùy ý, chúng ta ký hiệu 6 = prec Thinh thôangchúng ta sẽ gặp một số trường hợp xem xét các bài toán lập lịch với các quan hệ thứtự trước sau khắt khe được cho dưới dang chains, intree, outtree hay là một seriesparallel graph Trong những trường hop này, chúng ta ký hiệu 62 bang chains, intree,outtree và sp-graph.

e Nếu 8) = intree (hay outtree), thi G là một cây có gốc với bậc outdegree (indegree)trên mỗi đỉnh ít nhất là 1 Vì vậy, trong một intree (outtree), tất ca các cung hướngvề (hướng ra khỏi) một gốc Nếu Øạ = tree, thì Œ hoặc là intree hoặc là outtree.e Một tap chains là một cây mà có cả outdegree và indegree ở mỗi đỉnh ít nhất là 1

Nếu Ø; = chains thì G là tập của các chains.e Dồ thị series-parallel thì gần giống với cấu trúc cây Một đồ thị được gọi là series-

parallel nếu nó có thể được xây dựng bởi một trong các luật sau đây:

— Base graph Bất kỳ một đồ thị nào bao gồm một đỉnh thi là series-parallel.Cho Gi; = (V;, A;) là series-parallel (i = 1,2)

— Parallel composition Dồ thi G = (Vị U V2, A; U Ag) được tao thành từ G;va Gy bằng cách hợp các tap đỉnh và các tập cung là series-parallel

— Series composition Dồ thị G = (V; UVa, Ay U Ag 71 x 5¿) được tạo thànhtừ Œi và Gy bằng cách hợp các tập đỉnh và các tập cung và cộng thêm tất cảcác cung (t, s) với ‡ thuộc về tập 71 các đỉnh cuối của G, (nghĩa là tập các đỉnhkhông có đỉnh nào theo sau hay các đỉnh có outdegree bằng 0) và s thuộc vềtập 5s các đỉnh nguồn của Gy (nghĩa là tập các đỉnh không có đỉnh nào ở trướcnó hay các đỉnh có indegree bằng 0) là series parallel

Nếu G là serial-parallel, ta ký hiệu 82 = sp-graph Nếu không có các ràng buộc vềmối quan hệ trước sau, thi Øs không xuất hiện trong tập đổ

Trang 19

Nếu 63 = r;, mỗi công việc có thé sẽ được gán thêm một release date r; Nếu r; = 0 đối

với tất cả các công việc thi 83 sẽ không xuất hiện trong tập đ.6, định nghĩa các ràng buộc về thời gian xử lý hoặc về số lượng các tác vụ Nếu fy làpi = 1(pi; = 1) có nghĩa là mỗi công việc hay tác vụ yêu cầu thời gian xử lý là một đơn vị

thời gian Tương tự, chúng ta có thể viết là p; = p(p;; = p) Thông thường trường 6, cònchứa thêm một số đặc tính phụ dễ hiểu như là p; € {1,2} hay d; = d

Nếu 8; = d;, thì mỗi công việc J; có thể có một deadline d; tương ứng, nghĩa là công việcJ; phải được hoàn thành không trễ hơn thời gian dị

Trong một vài ứng dụng lập lịch, các tập các công việc cần được nhóm vào trong cácbatch Một batch là một tập các công việc cần được xử lý cùng với nhau trên cùng một

máy Thời gian hoàn thành một batch là thời gian cần thiết để hoàn thành tất cả cáccông việc trong batch đó Một batch có thể chỉ có 1 công việc cũng có thể bao gồm một

số n công việc Cho mỗi batch, có một thời gian set-up s Chúng ta giả sử rằng thời gianset-up này là là như nhau cho tất cả các batch và không phụ thuộc vào thứ tự Một bàitoán batching là việc nhóm các công việc vào trong các batch và tiến hành lập lịch cho cácbatch này Có 2 dạng bài toán batching ký hiệu lần lượt là p-batching và s-batching

e Dối với các bài toán p-batching, chiều dài của batch bằng chiều dài tối đa của thờigian xử lý tat cả các công việc trong batch

e Đối với các bài toán s-batching, chiều dài của batch bằng tổng thời gian xử lý tấtcả các công việc trong batch.

Bs = p— batching hay 8 = s — batching chỉ ra đây là một bài toán batching Nếu không,Øs sẽ không xuất hiện trong tap đ

2.2.4 Mục tiêu tối ưu

Ta ký hiệu thời gian hoàn thành công việc J; là C;, và hàm chi phí tương ứng là ƒ;(Œ;).Có 2 dạng hàm chi phí tổng cộng chủ yếu:

Bài toán lập lịch là di tìm một lập lịch kha di sao cho cực tiểu hàm chi phí tổng cộng

Nếu các hàm số ƒ; không được miêu tả, ta đặt + = finar hay y = >`ƒ; Tuy nhiên trongđa phần các trường hợp ta xem xét các hàm ƒ; đặc biệt

Hàm makespan

maz{Œ;|¿ = 1, , n}

9

Trang 20

CHƯƠNG 2 CƠ SỞ LÝ THUYET VỀ BÀI TOÁN LẬP LICH

Hàm total flow time

Thị :—= C; — d, latenessE; := max{0,d; — C;} earlinessT; := max{0,C;—d;} tardinessD,:= |C; — d;| absolute deviationDị := (C; — d;)’ squared deviationry 0 if C; < di, tt It

ẤT khác unit penalty

Với mỗi hàm G; này, ta có 4 hàm mục tiêu có thé là

+ = max(G;), maz(w;G¡), » Gi, » wiG;Hàm mục tiêu co chai quan trong nhất sau ham „„„ là hàm maximize lateness „„„„ :=

max L; Một số hàm mục tiêu khác pho biến được sử dung như là: 3*7;, S^ø;1;, 52 Ui,

thể kết hợp tuyến tính với nhau để tạo thành một hàm mục tiêu kết hợp Trong thực tế

các hàm đa mục tiêu này cũng được nghiên cứu và xem xét rất nhiều.Một hàm mục tiêu mà có các biến C; không giảm được gọi là regular Các hàm mục tiêuliên quan đến E;, D;, S; đều là các hàm không regular Những hàm mục tiêu còn lai đượcđịnh nghĩa phía trên đều là regular

Một lập lịch được gọi là chủ động (active) nếu nó có thể lập lịch tất cả các công việc(tác vụ) sớm hơn mà không vi phạm các ràng buộc Một lập lịch được gọi là bán chủđộng (semi-active) nếu không có công việc (tác vụ) nào có thể được xử lý sớm hơn màkhông làm thay đổi thứ tự xử lý hay vi phạm các ràng buộc

Dây là bài toán lập lịch công việc với thời gian xử lý như bảng dưới và không có ràng

buộc giữa các công việc (do không có 8) trên 2 máy giống nhau sao cho cực tiểu hàm

makespan.

10

Trang 21

Job Ji J» Js Jy Js Jep 31211141213

Hình 2.2 biểu diễn một ví dụ cu thé của bài toán nay và một lap lich kha di

Mo J Js J¢M, Ji J2 Js

Hình 2.2: Ví du cụ thé cho bài toán P2||Œaz

Trang 22

CHƯƠNG 2 CƠ SỞ LÝ THUYET VỀ BÀI TOÁN LẬP LICH

Mz | Jo Je

M | Jy | Js | Ja | Js

Hình 2.3: Ví du cụ thé cho bài toán P|prec; p; = 1|imaz

Cmax =4

2.2.6 Một số phương pháp tiếp cận bài toán lập lich

Có một số bài toán có thể dễ dàng giải được trong thời gian đa thức chang hạn như bài

toán 1||Lmazr, F'2||Cmax, nhưng cũng có rất nhiều bài toán thuộc NP-hard Do đó, dựa vàođộ khó của bài toán, ta có một số cách tiếp cận bài toán như sau:

e Phương pháp tính chính xác: quy hoạch nguyên (integer programming) |6], quyhoạch động (dynamic programming) [7], phương phap tính cận và nhánh (branchand bound) [14] [1],

e Các giải thuật gan đúng dựa trên phương pháp tính chính xác: thuật giải gan đúngcho quy hoạch phi tuyến tính (linear programming); xây dựng chuỗi giải thuật ganđúng có đảm bảo chắc chắn được chất lượng của giải pháp tìm thấy (approximationscheme) [3]; thuật giải gan đúng dựa trên cây quyết định (branch and cut, branchand price, search tree based approaches) [1], recovering beam search [6], relaxation,hiệu chỉnh cấu hình cua solver giải hiệu quả các bài toán quy hoạch tuyến tinh.e Các thuật toán heuristic: thuật giải di truyền (genetic algorithm) [12], tìm kiếm lân

cận (tabu search) [15], meta-heuristic [16], thuật giải lai (hybird algorithm) [6]

12

Trang 23

Đặc ta và mo hình hóa bài toán

3.1 Dac ta bài toán

Trong phan nay, chúng ta xét một bài toán lập lich cu thể uới thong tin được biết trướcvé các công uiệc can lập lịch va các máu có thể thục hiện những công viéc nay Ngũ cảnh

thực tế như sau:

Các nhu cầu công viéc được gan ở thời điểm cô định như thời gian bắt đầu (start time),

thời gian thực hiện (duration) Mỗi công viéc yéu cầu sô lượng may ảo (virtual machine)

có cấu hành dong nhất (các may áo thuộc một số kiểu cấu hình có giới hạn (virtual machinetypes) Mỗi may vat ly có thể thực thi một hoặc nhiều máu ao

Mục tiêu được đặt ra là tim phép gan các công Uuiệc vao may vat ly thực thi sao cho tổngsố may vat ly thực thi trên đơn vi thời gian là ít nhất Dong thời phải giảm thiểu chi phí

khi lập lịch các công viéc trên các may áo trên một đơn vi thời gian.

Đầu tiên, chúng ta cần mô tả lại bài toán này dưới dạng một bài toán lập lịch cổ điển,mà thông thường được biết đến nhiều trong sản xuất, và từ đó chúng ta có thể thừa kế

các kết quả sẵn có Dưới đây sẽ định nghĩa lại bài toán theo cách thức vận hành trên cácmay xử lý song song.

Đặc tả của bài toán gồm có:

Thông tin về máy:

e mỗi máy vật lý có thể thực thi v; máy ảoe mỗi máy ảo chỉ có thể xử lý tối đa một công việc tại một thời điểm

e số lượng máy ảo mỗi công việc yêu cầu không được vượt quá tổng số lượng máy ảomà máy vật lý có thể có

e chi phí khi một máy ảo được sử dụng trong một đơn vi thời gian.e chi phí khi một máy vật lý được bật trong một đơn vi thời gian.Thông tin vé công việc:

13

Trang 24

CHƯƠNG 3 ĐẶC TẢ VÀ MÔ HÌNH HÓA BÀI TOÁN

e mỗi công việc có thời gian bắt đầu s; (với i = 1,2, ,n) biết trước và các giá trị nàylà nguyên.

e mỗi công việc yêu cầu số lượng máy ảo R; có cầu hình đồng nhất

e thời gian xử lý mỗi công việc đều có thể dự kiến trước và có giá trị nguyên là p; với

e p; : thời gian thực hiện công việc J;

e s¿ : thời gian bắt đầu của công việc JJ;e ??; : số lượng may ảo ma công việc J; cầnDựa trên các thông tin về công việc và máy, ta định nghĩa thêm một số ký hiệu:

e <(t) : tập các công việc đang được thực thi tại thời điểm £ Với e(t) = {J¿,s; <t < s¡ + p,}

e 7': thời gian thực hiện công việc cuối cùng T = max;eti,„J(3¿ + Ø;)Dau ra:

Tim ra một cách gấn may ao sao cho các công việc có thé thực thi được.Mục tiêu:

e Tổng số máy vật lý thực thi trên đơn vị thời gian là ít nhất

Dây là mục tiêu đơn giản nhất Ta coi chi phí của tất cả các máy vật lý như nhau

và chỉ quan tâm đến việc một máy có hoạt động hay không Tổng số máy trên đơn

vị thời gian là bao nhiêu.

Trang 25

Ví dụ 3.1.1 Tim cách lập lich các công viéc trên các may vat ly sao cho tổng số may vat

ly thực thi trên don vi thời gian là ít nhất véi thong tin dau vao được cho ở hai bang sau:

Job] Jy Jp dJs Jy Ss34 |O 1 14 8 4Di 4 4 5 6 4R, | 8 4 7 10 11Machine |, My Mĩ M,

Hình 3.1: Ví dụ một cách lập lịch khả dĩ cho bài toán quan tâm

3.2 Mo hình MILP cho bài toán

Trong phan nay sé mô ta mô hình toán hoc (Mixed Integer Linear Programming model)cho bài toán Việc lập mô hình giúp ta giải quyết bài toán bằng cách sử dung solvers.Đề dễ dàng cho việc lập công thức cho các hàm mục tiêu cũng như các ràng buộc, ta địnhnghĩa một số biến trung gian Việc sử dụng các biến này có một số lợi ích sau:

e Xây dựng các hàm mục tiêu độc lập với các biến quyết định.e Giảm độ phức tạp trong việc tính giá trị của các hàm mục tiêu Qua đó giảm thời

gian tính toán khi thực thi các giải thuật thiết kế cho bài toán.Ta đặt các biến trung gian như sau:

Wn = | 1 Máy M,; được sử dụng tại thời điểm ¢

15

Trang 26

CHƯƠNG 3 ĐẶC TẢ VÀ MÔ HÌNH HÓA BÀI TOÁN

Vit = tổng số máy ảo trên máy M; được sử dung tai thời điểm ¢

Ta đặt biến quyết định của mô hình bài toán như sau:

hae 1 Công việc J; được thực thi trên máy ảo k’” trên máy M;7° 10 ngược lại

Vi € [1,n],V7 € [1,m],Vk € [1, Đmax].Khi đó biến y;, được tinh bằng công thức sau:

— Max Lijk

dit i€e(t) KE[1,v,;]

Do ¿¿ là biến nhị phân (chi nhận giá trị 0 hoặc 1) nên ta có thể biến đổi dang thức trênbằng cách sử dụng bất đẳng thức sau để xác định giá trị ¿;; Cách biến đối này rất có íchkhi dùng solver để mô hình hóa ràng buộc đó:

Trong khi đó, biến z;, được tính theo công thức sau:

Trang 27

Hàm mục tiêuDựa vào các biến trung gian, biến quyết định và các ràng buộc, ta biéu diễn ham mục tiêubằng công thức sau:

Mục tiêu 1: Tổng số máu vat ly thực thi trên đơn vi thời gian

Trang 28

Chương 4

Phương pháp nhát cắt trong bài toán

quy hoạch nguyên

4.1 Sự cần thiết của bài toán quy hoạch nguyên

Giả sử có một bài toán phân công công việc của các nhân viên trong một tổ dự án Lờigiải có nghiệm tối ưu nhất là 7.3 người Tuy nhiên, ta không thể phân công lẻ số ngườitrong một dự án được Ta chỉ có thể phân công 6 hoặc 7 hoặc 8 người Có một sự ràngbuộc mà ta không thể giải quyết bài toán theo phương pháp quy hoạch tuyến tính là làmtròn bất kỳ giá trị nào để nó tiến đến giá trị nguyên Ví dụ sau trình bày lý do tại sao takhông thể làm tròn các biến:

Ví dụ 4.1.1 Xét bà¿ toán sau:Hàm mục tiểu:

Maximize Z = +1 + 529voi các điều kiện rang buộc:#1 + 10+z¿ < 20

<21,0 > 0 va #,#2 là các biến nguyén

18

Trang 29

Rounding up

Integer Optimum s+ cee

LP Optimum#1 + 10x = 20

Hình 4.1: Giá trị tối wu LP khi làm tron xa với giá trị tối ưu của IP problemNếu giải bài toán bằng phương pháp quy hoạch tuyến tính, ta sẽ nhận được giá trị tối

ưu Z = 11 với x; = 2,7 = 1.8 Theo khuynh hướng tự nhiên ta sẽ làm tròn x2 để nó tiếnvề giá trị nguyên Trong trường hợp này ta có thể làm tròn z;¿ = 2 Tuy nhiên, khi làm

tròn như vậy, ta thu được nghiệm x2; = 2,+¿ = 2 không thỏa mãn điều kiện ràng buộcđầu tiên Khi đó nếu chúng ta làm tròn x2 theo chiều hướng ngược lại v2 = 1 ta thu được:Z = ï vax, = 2,z¡ = 1 thỏa các điều kiện ràng buộc, nhưng không là nghiệm tối ưu.Nghiệm tối ưu khi z¡ = 0,72 = 2 và hàm mục tiêu Z = 10 Hình 4.1 trình bay ban tómtắt của bài toán

4.2 Phương pháp nhát cắt giải quyết bài toán quy

hoạch nguyên

4.2.1 Đặt van dé

Đầu tiên ta nghĩ ngay một cách đơn giản để giải bài toán này là liệt kê toàn bộ các lời

giải và sau đó là lựa chọn lời giải có nghiệm tối ưu nhất Công việc này chỉ được thực hiệncho những bài toán nhỏ, nhưng điều đó rất nhanh chóng không thực hiện được cho nhữngbài toán có kích thước từ trung bình hoặc lớn.

Ví dụ 4.2.1 Xét liệt kê đầu đủ của một mô hành tổng quá có một biến nguyên x1 va hai

biến nhị phân x2 va x3 uới các ràng buộc:

1l<a,<3

O<a<1O<2a%3 <1Ta có:

3 giá trị có thể thực hiện được cho #

19

Ngày đăng: 24/09/2024, 06:39

w