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

Tài liệu Một số phương pháp tiếp cận cho bài toán lập lịch cá nhân

31 52 0

Đ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

Định dạng
Số trang 31
Dung lượng 565,1 KB

Nội dung

tai lieu, luan van1 of 98 ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA TRANG HỒNG SƠN MỘT SỐ PHƯƠNG PHÁP TIẾP CẬN CHO BÀI TOÁN LẬP LỊCH CÁ NHÂN Chuyên ngành: Khoa học máy tính Mã số chun ngành: 62480101 TĨM TẮT LUẬN ÁN TIẾN SĨ TP HỒ CHÍ MINH - NĂM 2021 document, khoa luan1 of 98 tai lieu, luan van2 of 98 Cơng trình hồn thành Trường Đại học Bách Khoa – ĐHQG-HCM Người hướng dẫn 1: PGS TS Trần Văn Lăng Người hướng dẫn 2: PGS TS Huỳnh Tường Nguyên Phản biện độc lập 1: Phản biện độc lập 2: Phản biện 1: Phản biện 2: Phản biện 3: Luận án bảo vệ trước Hội đồng đánh giá luận án họp vào lúc ngày tháng năm Có thể tìm hiểu luận án thư viện: - Thư viện Trường Đại học Bách Khoa – ĐHQG-HCM - Thư viện Đại học Quốc gia Tp.HCM - Thư viện Khoa học Tổng hợp Tp.HCM document, khoa luan2 of 98 tai lieu, luan van3 of 98 DANH MỤC CƠNG TRÌNH ĐÃ CƠNG BỐ Tạp chí quốc tế [CT1] T H Son, T V Lang, N Huynh-Tuong, and A Soukhal, "Resolution for boundedsplitting jobs scheduling problem on a single machine in available time-windows", Journal of Ambient Intelligence and Humanized Computing (SCIE Q1 IF=7.104), vol 12, no 1, pp 1179-1196, 2021 Tạp chí nước [CT2] T H Son, T V Lang, and N Huynh-Tuong, "A mathematical model for teamwork scheduling problem in available time windows", Science & Technology Development Journal - Engineering and Technology, vol 3, no SI1, pp 50-58, 2020 [CT3] T H Son, T V Lang, and N Huynh-Tuong, "Minimizing makespan of personal scheduling problem in available time-windows with split-min and setup-time constraints", Journal of Computer Science and Cybernetics, vol 34, no 2, pp 97–111, 2018 Kỷ yếu hội nghị quốc tế [CT4] T H Son, N V Huy, N Huynh-Tuong, T V Lang, and A Soukhal, "An approach based on max flow resolution for minimizing makespan of personal scheduling problem", in Addendum Proceedings of the 2016 IEEE RIVF International Conference on Computing and Communication Technologies: Research, Innovation, and Vision for the Future (RIVF’2016), pp 7–11, Hanoi, Vietnam: IEEE, 7-9 Nov 2016 Báo cáo hội nghị nước [CT5] T H Son, T V Lang, and N Huynh-Tuong, "A mathematical model for teamwork scheduling problem in available time windows", in Symposium on Computer Science and Engineering (SCSE’2019), Ho Chi Minh City, Vietnam, 15-16 Oct 2019 [CT6] T H Son, N Huynh-Tuong, and T V Lang, "Minimizing makespan of personal scheduling problem in available time-windows with split-min and setup-time constraints", in The 11th National Conference on Fundamental and Applied IT Research (FAIR’2018), Hanoi, Vietnam, 9-10 Aug 2018 document, khoa luan3 of 98 tai lieu, luan van4 of 98 CHƯƠNG 1.1 GIỚI THIỆU VỀ ĐỀ TÀI LUẬN ÁN Giới thiệu chung Lập lịch công việc cần thiết sống cá nhân (personal job scheduling), không giúp cá nhân xử lý nhiều công việc phức tạp mà giảm căng thẳng Trong thời đại cơng nghệ nay, người phải đối phó với hàng trăm công việc, email nhiều vấn đề phức tạp cần giải ngày Theo (David Allen, 2003), chuyên gia cải thiện suất công việc, hầu hết ln có khoảng 50 đến 150 nhiệm vụ lớn nhỏ cần phải xử lý thời điểm Bên cạnh đó, cơng việc có nhiều thuộc tính ràng buộc khác thời điểm bắt đầu, thời hạn phải hồn thành, thời gian xử lý thích hợp để thực công việc hiệu hơn, Một vấn đề với nhiều công việc ràng buộc phải thỏa mãn, đặc biệt thay đổi liên tục sống thực, người vất vả tốn thời gian liên tục phải tự xếp lại cơng việc xếp cơng việc bị thay đổi Do tốn lập lịch cơng việc cá nhân tự động phân chia công việc nhỏ khung thời gian làm việc quan trọng để áp dụng cho ứng dụng quản lý công việc cá nhân Đối với tổ chức nhóm người làm việc, vấn đề lập lịch đặt cho hoạt động phối hợp nhóm thành viên hiệu Việc lập lịch riêng cho thành viên hay gọi lập lịch cá nhân toán quan trọng cho việc lập lịch cho tập thể nhóm (teamwork job scheduling) Trong phạm vi nghiên cứu, luận án tập trung chủ yếu vào tốn lập lịch cơng việc cá nhân, xem xét phương pháp tiếp cận nghiên cứu để làm tảng cho tốn lập lịch cơng việc đặc thù khác cho tốn lập lịch công việc tập thể nhóm người có quan hệ xã hội 1.2 Động nghiên cứu Đối với việc lập lịch công việc cá nhân, tốn có hai đặc điểm Thứ nhất, người có khung thời gian làm việc (time-windows) khác nhau, linh động xếp công việc họ vào Thứ hai, người muốn chia cơng việc lớn thành nhiều công việc nhỏ để dễ dàng xếp vào khung làm việc mình, cơng việc chia q nhỏ lại khơng thể hiệu khơng đủ thời gian để xử lý, cần phải có thêm ràng buộc cơng việc không document, khoa luan4 of 98 tai lieu, luan van5 of 98 chia nhỏ ngưỡng xác định (bounded-splitting) để việc xử lý công việc hiệu hơn, ràng buộc lại thường không đề cập đến toán lập lịch (xem trình bày Bảng 1.1) Bảng 1.1: Một số ràng buộc công việc đề cập tài liệu lập lịch Handbook of Scheduling (Leung, 2004) Multicriteria Scheduling (Vincent & Billaut, 2006) Scheduling Algorithms (Brucker, 2007) Introduction to Scheduling (Robert & Vivien, 2009) Handbook on Project Management and Scheduling (Schwindt & Zimmermann, 2015) Scheduling: Theory, Algorithms, and Systems (Pinedo, 2016) Handbook on Scheduling (Blazewicz et al., 2019) Mathematical programming formulations for machine scheduling: A survey (Blazewicz et al., 1991) Scheduling with processing set restrictions: A survey (Leung & Li, 2008) A survey of case studies in production scheduling: Analysis and perspectives (Fuchigami & Rangel, 2018) precedence preemption batching lot-sizing bounded-splitting ✓ ✓ ✓ N/A N/A ✓ ✓ ✓ N/A N/A ✓ ✓ ✓ N/A N/A ✓ ✓ ✓ N/A N/A ✓ ✓ ✓ ✓ N/A ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ N/A N/A N/A N/A ✓ ✓ N/A N/A N/A ✓ N/A ✓ ✓ N/A Chính điều nên có cơng bố trước liên quan tới tốn lập lịch cơng việc cá nhân Cụ thể ba cơng trình nghiên cứu trước đặt tốn lập lịch cơng việc cá nhân (Quan et al., 2010), chứng minh toán thuộc lớp strongly N P -hard (Huy et al., 2013a), đề xuất mơ hình MILP để sử dụng MILP solver tìm lời giải tối ưu cho toán với liệu đầu vào có kích thước nhỏ (Huy et al., 2013b) Do tốn lập lịch cơng việc cá nhân nhiều vấn đề tồn đọng cần phải xem xét, giải trả lời câu hỏi cần có khung tổng quát bước để giải toán liên quan tới hai ràng buộc splitmin available−windows hay khơng? Nếu có phương pháp tiếp cận bước gì? Có phương pháp giải toán cách hiệu với liệu đầu vào có kích thước lớn cỡ vài trăm chí vài ngàn cơng việc? Có thể xem xét thêm ràng buộc phù hợp với toán đặc thù cụ thể khác hay khơng? Có thể áp dụng tốn lập lịch cơng việc cá nhân nhóm nhiều người khơng? 1.3 Mục tiêu, phạm vi đối tượng nghiên cứu Mục tiêu luận án xem xét giải tốn lập lịch cơng việc cá nhân: O1 Nghiên cứu đề xuất số phương pháp tiếp cận để giải tốn lập lịch cơng việc cá nhân liệu đầu vào có kích thước nhỏ lớn, qua đề document, khoa luan5 of 98 tai lieu, luan van6 of 98 xuất lựa chọn phương pháp hiệu loại liệu đầu vào khác O2 Nghiên cứu giải tốn lập lịch cơng việc cá nhân đặc thù có số ràng buộc thường sử dụng thực tế O3 Nghiên cứu ứng dụng mở rộng tốn lập lịch cơng việc cá nhân nhóm nhiều người Dựa ba mục tiêu nghiên cứu trên, luận án xác định: • Phạm vi nghiên cứu: giải tốn lập lịch cơng việc cá nhân • Đối tượng nghiên cứu: nghiên cứu số phương pháp tiếp cận để giải tốn lập lịch cơng việc cá nhân 1.4 Nội dung công việc luận án Với mục tiêu phạm vi đối tượng nghiên cứu trên, luận án tập trung vào nội dung công việc sau nhằm để giải thách thức đặt toán lập lịch cơng việc cá nhân, từ góp phần vào việc giải vấn đề mang tính nghiên cứu tốn này: • Đặc tả nhóm tốn lập lịch cơng việc cá nhân bao gồm tốn lập lịch công việc cá nhân với hai ràng buộc cơng việc cắt nhỏ bị chặn công việc xếp vào khung thời gian trống, toán lập lịch công việc cá nhân đặc thù với ràng buộc cơng việc có thời gian chuẩn bị khác nhau, cơng việc có thời điểm bắt buộc phải hoàn thành khác nhau, tốn lập lịch cơng việc cá nhân cho nhóm nhiều người có khung thời gian làm việc khác • Đề xuất thực sơ đồ tổng quát bước tiếp cận để giải tốn lập lịch cơng việc cá nhân nghiên cứu bao gồm: (1) phân tích độ khó tốn, (2) xem xét số trường hợp đặc biệt, (3) đưa số tính chất lời giải tối ưu, (4) xác định miền nghiệm toán, (5) xây dựng mơ hình Mixed-Integer Linear Programming (MILP), (6) sử dụng phương pháp xác với MILP solver để xác định lời giải tối ưu cho toán, (7) sử dụng phương pháp xấp xỉ dạng heuristic/metaheuristic/matheuristic để xác định lời giải khả thi cho tốn • Áp dụng số heuristics đặc thù thừa kế giải thuật cổ điển giải thuật Assignment, giải thuật Flow, giải thuật Matching, áp dụng quy tắc lập lịch ưu tiên document, khoa luan6 of 98 tai lieu, luan van7 of 98 First Come First Serve (FCFS), Shortest Processing Time (SPT), Longest Processing Time (LPT), , số metaheuristics thường dùng công nghiệp Simulated Annealing (SA), Genetic Algorithm (GA), Tabu Search (TABU) sở rút giảm khơng gian tìm kiếm dựa tính chất đưa ra, với mong muốn xác định lời giải khả thi có chất lượng tốt giới hạn thời gian chấp nhận • Đề xuất hướng tiếp cận matheuristics cách kết hợp giải thuật (meta)heuristic với việc xử lý toán nhỏ công cụ MILP solver nhằm xác định lời giải khả thi có chất lượng tốt 1.5 Cấu trúc luận án Từ nội dung công việc cần nghiên cứu nêu trên, cấu trúc luận án trình bày bao gồm năm chương Chương thứ nhằm giới thiệu cách khái quát vấn đề chung luận án mục tiêu, phạm vi đối tượng nghiên cứu, nội dung cơng việc phải giải Chương thứ hai trình bày tổng quan tốn lập lịch cơng việc, đưa khảo sát tình hình nghiên cứu ngồi nước, từ thách thức tốn lập lịch cơng việc cá nhân, làm rõ có mục tiêu nội dung trình bày chương thứ Ngồi luận án trình bày kiến thức mang tính tảng cần giải phương pháp tính tốn cho tốn lập lịch cơng việc cá nhân bao gồm mơ tả tốn, ký hiệu sử dụng, số minh hoạ, phân tích độ khó toán phương pháp giải toán phương pháp xác phương pháp xấp xỉ Chương thứ ba trình bày chi tiết tốn lập lịch công việc cá nhân gồm hai ràng buộc, toán cần tiếp cận Trong chương nội dung trình bày đặc tả toán bao gồm phát biểu minh hoạ toán, phương pháp tiếp cận để giải tốn bao gồm độ khó tốn, tính chất lời giải tối ưu, miền đánh giá nghiệm, mơ hình tốn học, phương pháp xấp xỉ heuristic, metaheuristic, matheuristic, đánh giá kết thực nghiệm phương pháp tiếp cận Chương thứ tư trình bày số tốn lập lịch cơng việc cá nhân đặc thù với việc mở rộng ràng buộc cho tốn lập lịch cơng việc cá nhân ràng buộc setup-time, ràng buộc deadline, hướng đến việc khai thác kết tốn lập lịch cơng việc cá nhân để mở rộng cho tốn lập lịch cơng việc nhóm Chương thứ năm chương tổng kết để đưa kết thực luận án đóng góp, đồng thời trình bày hướng cịn bỏ ngõ giải tốn lập lịch cơng việc cá nhân document, khoa luan7 of 98 tai lieu, luan van8 of 98 CHƯƠNG 2.1 TỔNG QUAN VỀ BÀI TỐN LẬP LỊCH CƠNG VIỆC Tình hình nghiên cứu Scheduling problem Task allocation scheduling Job scheduling machine characteristics job characteristics General shop precedence cstr preemption cstr Resource constrained scheduling etc time-windows cstr splittable cstr batching cstr bounded-splitting (splitmin ) cstr lot-sizing cstr Hình 2.1: Các hướng nghiên cứu ràng buộc liên quan Bài toán lập lịch có nhiều hướng nghiên cứu ứng dụng thực tế (xem chi tiết Hình 2.1), cụ thể liệt kê vài hướng nghiên cứu lập lịch cấp phát tác vụ (task allocation scheduling) ứng dụng môi trường IoT, lĩnh vực robot, lĩnh vực phương tiện không người lái, , lập lịch ràng buộc nguồn lực (resource constrained scheduling) ứng dụng việc quản lý dự án, xếp thời khoá biểu, phân bổ phòng ký túc xá, , lập lịch cần cẩu quay (quay crane scheduling) ứng dụng việc bốc dỡ hàng hoá cảng biển (seaports), bãi container, , định tuyến lập lịch phương tiện giao thông (vehicle routing and scheduling) ứng dụng việc giao nhận hàng hố, việc quản lý lịch trình tài xế xe công nghệ, , lập lịch công việc (job scheduling) ứng dụng việc quản lý nhân sự, quản lý máy sản xuất, Trong hướng nghiên cứu lập lịch công việc, khảo sát ràng buộc đặc điểm môi trường máy thực thi có tốn open shop, flow shop, job shop, mixed shop trường hợp đặc biệt tốn general shop Cịn khảo sát ràng buộc đặc điểm công việc có ràng buộc preemption, precedence, batching, lot-sizing, Các ràng buộc nghiên cứu từ lâu trình bày sách kinh điển lập lịch, survey toán lập lịch (xem chi tiết Bảng 1.1) Tuy nhiên qua nghiên cứu trên, tốn lập lịch cơng việc khơng giải trọn vẹn với lý tốn lập lịch cơng việc cá nhân mang tính thực tế gần gũi với không đề cập đến document, khoa luan8 of 98 tai lieu, luan van9 of 98 2.2 2.2.1 Giới thiệu tốn lập lịch cơng việc Mơ tả tốn Giả sử có n cơng việc (job) Ji (i = 1, , n) thực thi m máy (machine) Mj (j = 1, , m) Một lịch trình (schedule) ứng cơng việc gán vào nhiều máy khoảng thời gian đó, biểu diễn sơ đồ Gantt Hình 2.2 Tuỳ thuộc vào tốn cụ thể, job có thông tin pij thời gian xử lý (processing time) job Ji máy Mj , ri thời điểm bắt đầu thực thi (release date) job Ji , sti thời gian chuẩn bị (setup time) trước thực thi job Ji , di thời điểm đến hạn (due date) job Ji , di thời điểm bắt buộc phải hoàn thành (deadline) job Ji , wi trọng số (weight) job Ji , Hình 2.2: Sơ đồ Gantt theo hướng máy (a) hướng công việc (b) (Brucker, 2007) Một tốn lập lịch cơng việc có ba yếu tố đặc trưng, là: mơi trường máy thực thi (machine environment), đặc điểm công việc (job characteristics) tiêu chí tối ưu (optimality criterion) hay cịn gọi hàm mục tiêu (objective function) Theo (Graham et al., 1979) ba đặc trưng ký hiệu thành ba tham số: α|β|γ Ngoài ra, (Brucker, 2007) mô tả mối quan hệ hàm mục tiêu Hình 2.3 Cmax Lmax , Tmax Ci Ui Ti wi Ui wi Ti wi C i Hình 2.3: Mối quan hệ hàm mục tiêu document, khoa luan9 of 98 tai lieu, luan van10 of 98 2.2.2 Độ khó tốn Theo (Leung, 2004), tốn định (decision problem) tốn có đầu (output) YES NO Hình 2.4 Cịn tốn tối ưu (optimization problem) toán xác định lời giải tốt (best solution) từ tất lời giải khả thi (feasible solution) Hình 2.5 INPUT ALGORITHM YES NO Hình 2.5: Bài tốn tối ưu Hình 2.4: Bài tốn định Bên cạnh đó, nhận xét quan trọng (Leung, 2004) đưa mục 2.3.3: Nhận xét 2.1 Các toán tối ưu (cực tiểu hoá cực đại hoá) chuyển đổi thành tốn định tương ứng cách cung cấp bổ sung tham số ω cần đặt câu hỏi liệu có lời giải khả thi để chi phí lời giải ≤ ω (cực tiểu hoá) ≥ ω (cực đại hoá) Theo (Cook, 2006), toán định gọi thuộc lớp P tồn thuật toán giải toán thời gian O(nc ), với số c không phụ thuộc vào kích thước đầu vào n, đơi người ta cịn thay O(nc ) poly(n) để nói rõ lớp tốn có độ phức tạp đa thức Và toán định gọi thuộc lớp N P tồn chứng (certificate) dễ kiểm tra cho tốn Trong đó, chứng dễ kiểm tra hiểu ta dễ dàng kiểm tra liệu (instance) cụ thể tốn có đầu (output) YES thời gian đa thức poly(n) Nói ngắn gọn, P lớp toán định mà giải thời gian đa thức, cịn N P lớp toán định mà kiểm tra lời giải thời gian đa thức Về mặt trực quan, toán dễ giải dễ kiểm tra lời giải, P ⊆ N P , hay nói cách khác, toán P thuộc N P Trong toán N P , toán N P đầy đủ (N P -complete) tốn khó Theo (Leeuwen, 1990), toán định C gọi thuộc lớp toán N P -complete C ∈ N P với toán X ∈ N P , ta có X ⪯ C (ta nói X dễ giải C) Ngồi ra, người ta đưa khái niệm N P -complete mạnh (strongly N P -complete) để nhấn mạnh độ khó tốn định sau: toán định C document, khoa luan10 of 98 tai lieu, luan van17 of 98 J5 = J1 = J3 = J2 = J5 = J4 = idle J5 = 16 t 34 24 ∗ = 37 Hình 3.6: Một lời giải tối ưu khác với Cmax Qua ví dụ minh hoạ có ba nhận xét sau: Nhận xét 3.1 Bài tốn ln có lời giải khả thi kích thước khung cửa sổ cuối không giới hạn ∗ Nhận xét 3.2 Bài tốn có nhiều lời giải tối ưu với giá trị Cmax nhỏ Nhận xét 3.3 Một lời giải khơng có idle-time chắn lời giải tối ưu, điều ngược lại không chắn lời giải tối ưu số trường hợp có idle-time Từ nhận xét 3.3 cho thấy độ khó tốn, tìm lời giải với giá trị Cmax tương ứng, khơng biết liệu có phải lời giải tối ưu hay khơng tương ứng với giá trị Cmax nhỏ hay chưa? 3.2 Các phương pháp tiếp cận (1) NP-Completeness (2) Special cases (3) Structural properties of the optimal solution (4) Lower-bound / Upper-bound (5) Mathematical model (MILP) (7) Approximate method (6) Exact method Metaheuristic Heuristic Matheuristic MILP solver Hình 3.7: Sơ đồ bước tiếp cận cho toán lập lịch nghiên cứu document, khoa luan17 of 98 14 tai lieu, luan van18 of 98 3.2.1 Độ khó tốn Nhóm tác giả (Huy et al., 2013a) chứng minh toán PSP thuộc lớp strongly N P hard theo bước: (i) Từ nhận xét 2.1, phát biểu toán định Splitsche tương ứng với toán tối ưu PSP (ii) Chứng minh toán định Splitsche thuộc lớp strongly N P -complete cách đưa thu giảm đa thức từ toán định 3-Partition đến toán định Splitsche (3-Partition ≤p Splitsche) (iii) Từ nhận xét 2.2, toán định Splitsche thuộc lớp strongly N P -complete nên toán tối ưu PSP thuộc lớp strongly N P -hard 3.2.2 3.2.2.1 Một số trường hợp đặc biệt Trường hợp công việc cắt nhỏ Trong trường hợp tất công việc cắt nhỏ (pi < × splitmin ), tốn ký hiệu sau: 1|available − windows|Cmax Theo (Ji et al., 2007), tốn có CLP T ≤ × COP T Như tỷ lệ trường hợp xấu lời giải đạt giải thuật LPT so với lời giải tối ưu 3.2.2.2 Trường hợp khung cửa sổ có kích thước Trong trường hợp tất khung cửa sổ có kích thước (wt = w), toán ký hiệu sau: 1|splittable; splitmin ; available − windows; wt = w|Cmax Khi toán gần giống với toán Bin-packing, với tương ứng sau: items ∼ jobs/sub-jobs có kích thước khoảng [splitmin , × splitmin ), bins ∼ windows có sức chứa w, giải thuật FFD ∼ giải thuật LPT Theo (Dosa et al., 2013) áp dụng giải thuật FFD cho tốn Bin-packing, b số lượng bin tìm thấy giải thuật FFD b∗ số lượng bin tối ưu, ta có: 28 ∗ b ≤ 11 b + Sau qua số bước tính tốn, ta được: CLP T ≤ COP T Như tỷ lệ trường hợp xấu lời giải đạt giải thuật LPT so với lời giải tối ưu 28 3.2.3 Các tính chất lời giải tối ưu Sáu tính chất lời giải tối ưu tốn PSP trình bày (Huy et al., 2013a, 2013b), tồn lời giải tối ưu cho khung cửa sổ thời gian: document, khoa luan18 of 98 15 tai lieu, luan van19 of 98 Tính chất Thứ tự jobs/sub-jobs xếp tùy ý Tính chất Chỉ có sub-job thuộc job Tính chất Có nhiều idle-time Tính chất Nếu có idle-time nên cuối khung cửa sổ thời gian Tính chất Khơng có idle-time có kích thước lớn × splitmin Tính chất Một job chia nhỏ tối đa nsubi = min( pi splitmin , m) Ngoài ra, tính chất bổ sung thêm luận án, tồn lời giải tối ưu cho: Tính chất Thứ tự jobs/sub-jobs có kích thước xếp tùy ý 3.2.4 Miền đánh giá nghiệm Theo (Lane & Birkhoff, 1999) giá trị Cmax lời giải nằm khoảng: ∗ LB ≤ GLB ≤ Cmax ≤ Cmax ≤ LU B ≤ U B Đối với lower-bound LB , dựa vào nhận xét 3.3 LB đề xuất là: n pi LB = i=1 Đối với upper-bound U B , trường hợp xấu lời giải tất khung cửa sổ chứa idle-time (trừ khung cửa sổ cuối cùng), dựa vào tính chất U B đề xuất là: U B = LB + (m − 1) × (2 × splitmin ) 3.2.5 3.2.5.1 Mơ hình MILP Mơ hình MILP Dựa vào tính chất trình bày mục 3.2.3, lời giải toán xác định cách trả lời hai câu hỏi sau: (1) job/sub-job có gán cho window khơng? (2) có kích thước job/sub-job bao nhiêu? Để trả lời hai câu hỏi này, mơ hình MILP đề xuất (Huy et al., 2013b) có hai biến định xi,t ∈ {0, 1} (tương ứng cho câu hỏi số 1) yi,t ∈ N (tương ứng cho câu hỏi số 2), cụ thể sau: document, khoa luan19 of 98 16 tai lieu, luan van20 of 98 • Biến định: xi,t ∈ {0, 1}, yi,t ∈ N n  xi,t n i=1  • Biến trung gian: αt =  yi,t ∈ N,  n  ∈ {0, 1}, βt = αt × bt−1 ∈ N, γt = βt + i=1   Cmax = max(γt ) ∈ N • Hàm mục tiêu: min(Cmax ) • Các ràng buộc: m yi,t = pi ; ∀i = 1, , n (3.1) yi,t ≤ wt ; ∀t = 1, , m (3.2) t=1 n i=1 splitmin × xi,t ≤ yi,t ≤ pi × xi,t ; ∀i = 1, , n; ∀t = 1, , m 3.2.5.2 (3.3) Mơ hình MILP Đối với mơ hình MILP 1, biết job có gán vào window hay khơng kích cỡ job gán vào window Tuy nhiên thêm thông tin job gán vào vị trí kết thúc đâu window Để biết thêm thông tin mơ hình MILP đề xuất (Son et al., 2021) có thêm biến định si,t ∈ N biến trung gian ci,t = si,t + yi,t ∈ N, cụ thể sau: • Các biến định: xi,t ∈ {0, 1}, yi,t ∈ N, si,t ∈ N, vi,j,t ∈ {0, 1} • Các biến trung gian: ci,t = si,t + yi,t ∈ N, Ci = max(ci,t ) ∈ N, Cmax = max(Ci ) ∈ N • Hàm mục tiêu: min(Cmax ) • Các ràng buộc: m yi,t = pi ; ∀i = 1, , n (3.4) yi,t ≤ wt ; ∀t = 1, , m (3.5) t=1 n i=1 splitmin × xi,t ≤ yi,t ≤ pi × xi,t ; ∀i = 1, , n; ∀t = 1, , m (3.6) bt × xi,t ≤ si,t ≤ U B × xi,t ; ∀i = 1, , n; ∀t = 1, , m (3.7) document, khoa luan20 of 98 17 tai lieu, luan van21 of 98 bt ≤ si,t ≤ bt+1 − yi,t ; ∀i = 1, , n; ∀t = 1, , m ci,t − sj,t ≤ U B × vi,j,t ; cj,t − si,t ≤ U B × (1 − vi,j,t ); ∀i, j = 1, , n / i ̸= j; ∀t = 1, , m ∀i, j = 1, , n / i ̸= j; ∀t = 1, , m (3.8) (3.9) Bảng 3.2: So sánh MILP MILP Nhóm biến định Nhóm biến trung gian Nhóm ràng buộc Hàm mục tiêu Số lượng biến định Số lượng ràng buộc Khơng gian nghiệm Phù hợp với tốn 3.2.6.1 MILP xi,t , yi,t , si,t ci,t , Ci , Cmax nhóm (3.4 - 3.9) min(Cmax ) 2×n×m n + m + (2 × n × m) O(2n×m × U B n×m ) 3×n×m n + m + (8 × n × m) O(2n×m × U B 2×n×m ) khơng quan tâm thứ tự jobs quan tâm thứ tự jobs khung cửa sổ thời gian khung cửa sổ thời gian Ci ) thêm biến định ràng buộc thêm ràng buộc Khả mở rộng (ri , di , 3.2.6 MILP xi,t , yi,t αt , βt , γt , Cmax nhóm (3.1 - 3.3) min(Cmax ) Phương pháp heuristic Phân bổ dựa quy tắc FCFS Ý tưởng giải thuật Assignment based on FCFS (ASGN) duyệt qua window từ trái sang phải; window, duyệt qua job theo quy tắc FCFS; job, cố gắng gán job vào window tương ứng tuỳ theo kích thước trống window (chi tiết Algorithm 3, 4) Minh hoạ Giải thuật ASGN với liệu Bảng 3.1 J1 = idle J2 = idleJ3 = 4J4 = 3idleJ4 = 16 24 J5 = J5 = 34 t Hình 3.8: Giải thuật ASGN với Cmax = 40 3.2.6.2 Phân bổ dựa quy tắc SPT/LPT Ý tưởng giải thuật Assignment based on SPT (ASPT) / Assignment based on LPT (ALPT) tương tự giải thuật ASGN Điểm khác biệt window, jobs xếp theo thời gian xử lý tăng/giảm dần Điều có nghĩa jobs document, khoa luan21 of 98 18 tai lieu, luan van22 of 98 có thời gian xử lý nhỏ/lớn ưu tiên để gán vào windows trống (chi tiết Algorithm 5) Minh hoạ Giải thuật ALPT với liệu Bảng 3.1 J5 = J2 = idle J4 = idle 16 J5 = J3 = J1 = 34 24 t Hình 3.9: Giải thuật ALPT với Cmax = 39 3.2.6.3 So khớp phân bổ Lưu ý việc giảm thiểu "makepan", lời giải có thời gian rảnh rỗi idletime tốt Do đó, việc cố gắng lấp đầy windows jobs làm giảm thời gian rảnh rỗi lời giải Giải thuật Matching and Assignment (MAAS) lấp đầy windows cách so khớp (matching) kích thước window với kích cỡ jobs trước, sau windows trống cịn lại phân bổ (assignment) jobs vào Ý tưởng ban đầu heuristic chia thành hai bước matching, assignment, bước kiểm tra bổ sung (verification) (chi tiết Algorithm 6, 7, 8, 9, 10) Minh hoạ Giải thuật MAAS với liệu Bảng 3.1 J4 = idle J1 = J3 = J2 = 16 J5 = 10 24 J5 = 34 t Hình 3.10: Giải thuật MAAS với Cmax = 37 3.2.6.4 Phân bổ dựa luồng cực đại Việc xác định jobs có kích thước gán vào window gần giống việc xác định dịng chảy (flow) có kích thước qua đỉnh đồ thị toán luồng cực đại (Max Flow problem), không quan tâm thứ tự job gán vào window hay thứ tự dòng chảy qua đỉnh đồ thị Chính vậy, ý tưởng giải thuật Assignment based on Max Flow (BMF) chuyển đổi tốn PSP tốn Max Flow có thêm số ràng buộc liên quan đến splitmin , sử dụng giải thuật Ford-Fulkerson (có hiệu chỉnh) để xác định lời giải cho toán PSP document, khoa luan22 of 98 19 tai lieu, luan van23 of 98 Minh hoạ Đồ thị N có trọng số xây dựng với liệu Bảng 3.1 13 J5 W1 J2 W2 s J4 W3 J1 W4 J3 W5 13 8 10 s d ∞ W1 J2 W2 7/7 9/9 J4 J1 J3 Hình 3.11: Đồ thị N 3.2.7 J5 3 8/8 W3 8/10 d 4/∞ W4 W5 Hình 3.12: Flow đồ thị N với Cmax = 38 Phương pháp metaheuristic Quan sát Thứ tự jobs ảnh hưởng đến lời giải đạt bời giải thuật ASGN, BMF MAAS Minh hoạ Giải thuật MAAS với liệu Bảng 3.1 • J = {J1 = 5, J2 = 8, J3 = 4, J4 = 6, J5 = 13} =⇒ Cmax = 37 J4 = idle J1 = J3 = J2 = 16 J5 = 10 J5 = 34 24 t • J = {J4 = 6, J2 = 8, J3 = 4, J1 = 5, J5 = 13} =⇒ Cmax = 38 J1 = idle J5 = J2 = 16 J4 = 24 J3 = J5 = 34 t Hình 3.13: Giải thuật MAAS với thứ tự jobs khác Dựa quan sát 1, cách tiếp cận khác đề xuất để giải toán cố gắng thay đổi thứ tự jobs để tìm lời giải tốt Phương pháp đưa toán xem xét dạng tốn tối ưu tổ hợp với độ thích nghi (fitness value) giá trị C Có nhiều metaheuristics áp dụng để giải toán document, khoa luan23 of 98 max 20 tai lieu, luan van24 of 98 tối ưu tổ hợp Simulated Annealing (SA), Genetic Algorithm (GA), Tabu Search (TABU), Một cách tổng quát metaheuristics GA TABU thực cách xem xét thứ tự jobs nhiễm sắc thể (chromosome) GA lời giải mã hoá (solution encoding) TABU Minh hoạ Cách mã hóa GA TABU với liệu Bảng 3.1 Chromosome J2 J3 J5 J4 J1 Solution encoding J2 J3 J5 J4 J1 Chromosome J3 J2 J4 J1 J5 Solution encoding J3 J2 J4 J1 J5 Hình 3.14: Mã hóa chromosome GA Hình 3.15: Mã hóa solution TABU Tuy nhiên với thứ tự jobs cho trước, xác định trực tiếp lời giải cụ thể cho toán xem xét Nhờ có quan sát 1, cách tiếp cận đề xuất cách pha trộn (mixing) metaheuristic GA TABU với heuristic đề xuất Do chúng tơi có quan sát tiếp theo, là: Quan sát Một thuật tốn tiến hóa (evolutionary algorithm) áp dụng để xác định lời giải cho toán cách kết hợp metaheuristic heuristic đề xuất Ý tưởng thuật tốn tiến hóa đề xuất sử dụng chiến lược lặp TABU chiến lược tiến hoá GA để tạo hệ tốt so với hệ trước Tại lần lặp tiến hóa, lời giải mã hố có giá trị thích nghi tương ứng với giá trị Cmax tính heuristic đề xuất Sau lần lặp tiến hóa tiếp theo, lời giải mã hoá tạo cách sử dụng thao tác SWAP, EBSR, EFSR TABU selection, crossover, mutation GA 3.2.8 Phương pháp matheuristic Giải thuật matheuristic đề xuất có tên gọi Exact for SubSet-Jobs (E4SSJ) với ý tưởng chia tập jobs đầu vào ban đầu thành tập jobs nhỏ khơng giao (subset-jobs), sau sử dụng MILP solver để xác định lời giải tối ưu subset-jobs này, lời giải cuối tốn tổng hợp lời giải tối ưu cho subset-jobs (chi tiết Algorithm 11) Hình 3.16 trình bày ý tưởng giải thuật E4SSJ document, khoa luan24 of 98 21 tai lieu, luan van25 of 98 Hình 3.16: Giải thuật E4SSJ Minh hoạ Giải thuật E4SSJ với liệu Bảng 3.1, cho trước fixed-size = áp dụng quy tắc lập lịch ưu tiên FCFS, chia tập jobs ban đầu J = {J1 = 5, J2 = 8, J3 = 4, J4 = 6, J5 = 13} thành subset-jobs SS1 = {J1 = 5, J2 = 8, J3 = 4}, SS2 = {J4 = 6, J5 = 13}, sau sử dụng MILP solver để xác định lời giải tối ưu cho subset-jobs này, ta được: • SS1 = {J1 = 5, J2 = 8, J3 = 4} =⇒ Cmax1 = 19 J1 = idle J3 = J2 = J2 = 16 34 24 t • SS2 = {J4 = 6, J5 = 13} =⇒ Cmax2 = 19 J5 = 16 J4 = J5 = J5 = 34 24 t • J = {J1 = 5, J2 = 8, J3 = 4, J4 = 6, J5 = 13} =⇒ Cmax = Cmax1 + Cmax2 = 38 J1 = idle J3 = J2 = J2 = J5 = 16 J4 = 24 J5 = J5 = 34 Hình 3.17: Giải thuật E4SSJ với Cmax = 38 document, khoa luan25 of 98 22 t tai lieu, luan van26 of 98 3.3 Đánh giá Trong trường hợp liệu đầu vào có kích thước nhỏ (khoảng 40 jobs) nên chọn phương pháp xác sử dụng MILP solver để xác định lời giải tối ưu cho toán thời gian chấp nhận (dưới 10 phút) Ngược lại, trường hợp liệu đầu vào có kích thước lớn phương pháp matheuristic với giải thuật E4SSJ lựa chọn tốt chất lượng lời giải tìm thấy tốt thời gian tính tốn lại nhanh CHƯƠNG 4.1 MỘT SỐ BÀI TOÁN LẬP LỊCH CƠNG VIỆC CÁ NHÂN ĐẶC THÙ Bài tốn lập lịch cơng việc nhóm 4.1.1 Phát biểu tốn Bài tốn lập lịch cơng việc nhóm tốn PSP áp dụng nhóm nhiều người có khung thời gian làm việc khác (gọi toán TWSP) Bài toán TWSP ký hiệu sau: P |splittable; splitmin ; available − windows|Cmax 4.1.2 Minh hoạ toán Bảng 4.1: Dữ liệu đầu vào cho toán TWPSP (a) Jobs (splitmin = 3) Job Processing time J1 J2 J3 J4 J5 10 J6 (b) Machine Window W11 W21 W31 W41 Available time [0, 7] [7, 12] [12, 20] [20, +∞) document, khoa luan26 of 98 23 (c) Machine Window W12 W22 W32 W42 W52 Available time [0, 5] [5, 11] [11, 18] [18, 25) [25, +∞) tai lieu, luan van27 of 98 time window Machine 20 12 time window Machine 18 11 25 Hình 4.1: Các khung cửa sổ thời gian toán TWSP Các lời giải có tốn TWSP tương ứng với liệu đầu vào Bảng 4.1: J1 = idle J3 = J5 = idle J6 = Machine 20 12 J2 = idleJ2 = 3J3 = J4 = idle J5 = Machine 18 11 25 Hình 4.2: Một lời giải khả thi với Cmax = 24 J1 = idle J4 = J6 = J5 = Machine J3 = 20 12 J3 = J2 = J2 = J5 = 3J5 = Machine 11 18 25 ∗ = 21 Hình 4.3: Một lời giải tối ưu với Cmax Qua ví dụ minh hoạ thấy tốn TWSP có ba đặc điểm giống nhận xét 3.1, 3.2, 3.3 tốn PSP 4.1.3 Độ khó toán Dễ dàng nhận thấy toán PSP: 1|splittable; splitmin ; available − windows|Cmax trường hợp đặc biệt toán TWSP: P |splittable; splitmin ; available−windows|Cmax với số lượng machine = Ta thấy instances toán PSP (machine = 1) tập hợp tập hợp instances toán TWSP (machine = k ), instances toán PSP ánh xạ − đến instances tốn TWSP, đó: PSP ≤p TWSP Mà toán PSP chứng minh thuộc lớp strongly N P -hard mục 3.2.1 nên toán TWSP thuộc lớp strongly N P -hard document, khoa luan27 of 98 24 tai lieu, luan van28 of 98 4.1.4 Các tính chất lời giải tối ưu Bài tốn TWSP có tính chất lời giải tối ưu giống tốn PSP trình bày mục 3.2.3, nhiên tính chất thay đổi sau: Tính chất Tồn lời giải tối ưu cho job chia nhỏ tối đa là: nsubi = min( 4.1.5 pi splitmin k , mj ) j=1 Miền đánh giá nghiệm Dựa vào nhận xét 3.3 tính chất LB U B đề xuất là: n   k (mj −1) pi i=1  LB =   k    4.1.6 U B = LB +    j=1 k  × (2 × splitmin )   Mơ hình MILP Dựa vào tính chất trình bày mục 4.1.4, lời giải toán xác định cách trả lời ba câu hỏi sau: (1) job/sub-job có gán cho window machine không? (2) có kích thước job/sub-job bao nhiêu? (3) có thời điểm bắt đầu job/sub-job lúc nào? Để trả lời ba câu hỏi trên, mơ hình MILP cho tốn TWSP đề xuất có ba biến định xi,j,t ∈ {0, 1} (tương ứng cho câu hỏi số 1), yi,j,t ∈ N (tương ứng cho câu hỏi số 2), si,j,t ∈ N (tương ứng cho câu hỏi số 3), cụ thể sau: • Các biến định: xi,j,t ∈ {0, 1}, yi,j,t ∈ N, si,j,t ∈ N, vi1 ,i2 ,j,t ∈ {0, 1} • Các biến trung gian: ci,j,t = si,j,t + yi,j,t ∈ N, Ci = max(ci,j,t ) ∈ N, Cmax = max(Ci ) ∈ N • Hàm mục tiêu: min(Cmax ) • Các ràng buộc: k m yi,j,t = pi ; ∀i = 1, , n (4.1) j=1 t=1 n yi,j,t ≤ wj,t ; ∀j = 1, , k; ∀t = 1, , m i=1 document, khoa luan28 of 98 25 (4.2) tai lieu, luan van29 of 98 splitmin × xi,j,t ≤ yi,j,t ≤ pi × xi,j,t ; ∀i = 1, , n; ∀j = 1, , k; ∀t = 1, , m (4.3) bj,t × xi,j,t ≤ si,j,t ≤ U B × xi,j,t ; ∀i = 1, , n; ∀j = 1, , k; ∀t = 1, , m (4.4) bj,t ≤ si,j,t ≤ bj,t+1 − yi,j,t ; ∀i = 1, , n; ∀j = 1, , k; ∀t = 1, , m   ci1 ,j,t − si2 ,j,t ≤ U B × vi1 ,i2 ,j,t ; ∀i1 , i2 = 1, , n / i1 ̸= i2 ;    ∀j = 1, , k; ∀t = 1, , m  ci2 ,j,t − si1 ,j,t ≤ U B × (1 − vi1 ,i2 ,j,t ); ∀i1 , i2 = 1, , n / i1 ̸= i2 ;    ∀j = 1, , k; ∀t = 1, , m 4.1.7 4.1.7.1 (4.5) (4.6) Phương pháp heuristic Phân bổ dựa quy tắc FCFS Ý tưởng giải thuật Assignment based on FCFS (ASGN) duyệt jobs theo quy tắc FCFS; ứng với job, chọn window machine có thời điểm hồn thành để gán job vào window theo giải thuật AssignJob2Window (chi tiết Algorithm 18, 19) Minh hoạ Giải thuật ASGN với liệu Bảng 4.1 J1 = idle J3 = J5 = idle J6 = Machine 20 12 J2 = idleJ2 = 3J3 = J4 = idle J5 = Machine 11 18 25 Hình 4.4: Giải thuật ASGN với Cmax = 24 4.1.7.2 Phân bổ dựa quy tắc SPT/LPT Ý tưởng giải thuật Assignment based on SPT (ASPT) / Assignment based on LPT (ALPT) tương tự giải thuật ASGN Điểm khác biệt jobs xếp theo thời gian xử lý tăng dần/giảm dần trước thực việc duyệt jobs (chi tiết Algorithm 20) document, khoa luan29 of 98 26 tai lieu, luan van30 of 98 Minh hoạ Giải thuật ALPT với liệu Bảng 4.1 J5 = J1 = idle J6 = J5 = 3idleJ2 = Machine J3 = 20 12 J2 = idle J4 = idle J3 = 3J1 = 3idle Machine 11 18 25 Hình 4.5: Giải thuật ALPT với Cmax = 24 4.1.8 Đánh giá Trong trường hợp liệu đầu vào có kích thước nhỏ (khoảng 30 jobs) nên chọn phương pháp xác sử dụng MILP solver để xác định lời giải tối ưu cho toán thời gian chấp nhận (dưới 10 phút) Ngược lại, trường hợp liệu đầu vào có kích thước lớn giải thuật ALPT nên lựa chọn chất lượng lời giải khả thi tìm thấy tốt số giải thuật heuristics đề xuất thời gian tính tốn lại nhanh CHƯƠNG 5.1 KẾT LUẬN Đánh giá kết Bài tốn lập lịch cơng việc cá nhân tự động phân chia công việc nhỏ (nhưng không nhỏ ngưỡng xác định trước) khung thời gian làm việc quan trọng để áp dụng cho ứng dụng quản lý công việc cá nhân Luận án tập trung giải từ tốn lập lịch cơng việc cá nhân (chi tiết chương 3) số toán lập lịch công việc cá nhân đặc thù với việc mở rộng ràng buộc cho toán lập lịch công việc cá nhân ràng buộc setup-time, ràng buộc deadline, hướng đến việc khai thác kết tốn lập lịch cơng việc cá nhân để mở rộng cho tốn lập lịch cơng việc nhóm (chi tiết chương 4) Để từ mục tiêu luận án đạt kết công bố hội thảo, hội nghị, tạp chí nước quốc tế, cụ thể sau: O1 Nghiên cứu đề xuất số phương pháp tiếp cận để giải tốn lập lịch cơng việc cá nhân liệu đầu vào có kích thước nhỏ lớn, qua đề xuất lựa chọn phương pháp hiệu loại liệu đầu vào khác [CT 1,4] document, khoa luan30 of 98 27 tai lieu, luan van31 of 98 O2 Nghiên cứu giải tốn lập lịch cơng việc cá nhân đặc thù có số ràng buộc thường sử dụng thực tế [CT 3,6] O3 Nghiên cứu ứng dụng mở rộng tốn lập lịch cơng việc cá nhân nhóm nhiều người [CT 2,5] 5.2 Các đóng góp Những đóng góp luận án bao gồm: C1 Xem xét giải vấn đề tồn đọng tốn lập lịch cơng việc cá nhân (bài toán PSP) từ nghiên cứu trước C2 Mở rộng nghiên cứu giải tốn lập lịch cơng việc cá nhân đặc thù có số ràng buộc thường sử dụng thực tế cơng việc có thời gian chuẩn bị khác (bài tốn PSP+setup-time), cơng việc có thời điểm bắt buộc phải hồn thành khác (bài tốn PSP+deadline), tốn lập lịch cơng việc cá nhân cho nhóm nhiều người có khung thời gian làm việc khác (bài toán TWSP) C3 Đề xuất sơ đồ tổng quát bước tiếp cận để giải lớp toán lập lịch cơng việc cá nhân bao gồm: (1) phân tích độ khó tốn, (2) xem xét số trường hợp đặc biệt, (3) đưa số tính chất lời giải tối ưu, (4) xác định miền nghiệm tốn, (5) xây dựng mơ hình MILP, (6) sử dụng phương pháp xác với MILP solver để xác định lời giải tối ưu cho toán, (7) sử dụng phương pháp xấp xỉ dạng heuristic/metaheuristic/matheuristic để xác định lời giải khả thi cho toán C4 Trên sở xem xét tốn lập lịch cơng việc cá nhân tốn có thời gian tài nguyên đặc biệt cần cấp phát cho công việc, đề xuất số heuristics đặc thù thừa kế giải thuật cổ điển, số metaheuristics thường dùng cơng nghiệp, qua xác định lời giải khả thi có chất lượng tốt giới hạn thời gian chấp nhận (dưới 10 phút) C5 Đề xuất hướng tiếp cận matheuristics cách kết hợp giải thuật (meta)heuristic với phương pháp xác sử dụng MILP solver nhằm xác định lời giải khả thi có chất lượng tốt document, khoa luan31 of 98 28 ... luận án tập trung chủ yếu vào toán lập lịch công việc cá nhân, xem xét phương pháp tiếp cận nghiên cứu để làm tảng cho tốn lập lịch cơng việc đặc thù khác cho tốn lập lịch cơng việc tập thể nhóm... cho ứng dụng quản lý công việc cá nhân Luận án tập trung giải từ tốn lập lịch cơng việc cá nhân (chi tiết chương 3) số toán lập lịch công việc cá nhân đặc thù với việc mở rộng ràng buộc cho toán. .. đánh giá kết thực nghiệm phương pháp tiếp cận Chương thứ tư trình bày số tốn lập lịch công việc cá nhân đặc thù với việc mở rộng ràng buộc cho tốn lập lịch cơng việc cá nhân ràng buộc setup-time,

Ngày đăng: 18/01/2022, 23:09

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w