Vấn đề ngược của vấn đề tối thiểu hóa thời gian trễ tối đa trên mô hình máy đơn (Luận văn thạc sĩ)Vấn đề ngược của vấn đề tối thiểu hóa thời gian trễ tối đa trên mô hình máy đơn (Luận văn thạc sĩ)Vấn đề ngược của vấn đề tối thiểu hóa thời gian trễ tối đa trên mô hình máy đơn (Luận văn thạc sĩ)Vấn đề ngược của vấn đề tối thiểu hóa thời gian trễ tối đa trên mô hình máy đơn (Luận văn thạc sĩ)Vấn đề ngược của vấn đề tối thiểu hóa thời gian trễ tối đa trên mô hình máy đơn (Luận văn thạc sĩ)Vấn đề ngược của vấn đề tối thiểu hóa thời gian trễ tối đa trên mô hình máy đơn (Luận văn thạc sĩ)Vấn đề ngược của vấn đề tối thiểu hóa thời gian trễ tối đa trên mô hình máy đơn (Luận văn thạc sĩ)Vấn đề ngược của vấn đề tối thiểu hóa thời gian trễ tối đa trên mô hình máy đơn (Luận văn thạc sĩ)Vấn đề ngược của vấn đề tối thiểu hóa thời gian trễ tối đa trên mô hình máy đơn (Luận văn thạc sĩ)
Trang 1ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC
——————–o0o——————–
BẾ NHẬT VINH
VẤN ĐỀ NGƯỢC CỦA VẤN ĐỀ
TỐI THIỂU HÓA THỜI GIAN TRỄ TỐI ĐA
TRÊN MÔ HÌNH MÁY ĐƠN
THÁI NGUYÊN, THÁNG 5/2018
Trang 2ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC
——————–o0o——————–
BẾ NHẬT VINH
VẤN ĐỀ NGƯỢC CỦA VẤN ĐỀ
TỐI THIỂU HÓA THỜI GIAN TRỄ TỐI ĐA
TRÊN MÔ HÌNH MÁY ĐƠN
Chuyên ngành: Toán ứng dụng
Mã số: 8 46 01 12
LUẬN VĂN THẠC SĨ TOÁN HỌC
GIÁO VIÊN HƯỚNG DẪN
TS PHẠM HỒNG TRƯỜNG
THÁI NGUYÊN, THÁNG 5/2018
Trang 3Mục lục
1.1 Vận trù học 6
1.2 Vấn đề tối ưu hóa tổ hợp 8
1.3 Lời giải của vấn đề gia công trên mô hình máy đơn 10
1.3.1 Trình tự khả thi và trình tự tối ưu 10
1.3.2 Trình tự gia công không trì hoãn và trình tự gia công trì hoãn được 11
1.4 Vấn đề tối thiểu hóa thời gian trễ tối đa của các công việc với thời gian đến như nhau trên mô hình máy đơn 1kLmax 12
1.5 Vấn đề sắp xếp ngược 14
1.6 Vấn đề quy hoạch tuyến tính 17
1.7 Định nghĩa ba loại chuẩn l1, l2, l∞ 18
2 Vấn đề ngược của vấn đề tối thiểu hóa thời gian trễ tối đa của các công việc với thời gian đến như nhau trên mô hình máy đơn 20 2.1 Sơ lược về vấn đề sắp xếp ngược 21
Trang 42.2 Điều kiện cần và đủ của vấn đề tối thiểu hóa thời gian trễ tối đa 24
2.2.1 Điều kiện đủ của vấn đề 1kLmax là tối ưu 24
2.2.2 Điều kiện cần và đủ của vấn đề 1kLmax 26
2.3 Điều chỉnh kỳ hạn (Adjustable Due Dates) 28
2.3.1 Bài toán ngược 1 |adjustable dj, π| Lmax 28
2.3.2 Bài toán ngược 1 |adjustable dj, L∗| Lmax 37
2.4 Điều chỉnh thời gian gia công (Adjustable Processing Times) 40
2.4.1 Bài toán ngược 1 |adjustable pj, π| Lmax 41
2.4.2 Bài toán ngược 1 |adjustable pj, L∗| Lmax 47
Trang 5Danh mục các ký hiệu
Tj Công việc thứ j của một dãy công việc được đưa ra
pj Thời gian gia công của công việc Tj
dj Kỳ hạn của công việc Tj
Cj Thời gian hoàn thành của công việc Tj
P Cj Tổng thời gian hoàn thành các công việc có trọng
số như nhau
P wjCj Tổng thời gian hoàn thành các công việc có trọng
số khác nhau
Lmax Thời gian trễ tối đa
EDD Quy tắc ưu tiên sắp xếp kỳ hạn sớm nhất
1kLmax Vấn đề tối thiểu hóa thời gian trễ tối đa của của các
công việc trên mô hình máy đơn
1|adjustable dj, π|Lmax Bài toán điều chỉnh kỳ hạn dj để dãy công việc π là
tối ưu
1|adjustable dj, L∗|Lmax Bài toán điều chỉnh kỳ hạn dj để trễ tối đa Lmax ≤
L∗.1|adjustable pj, π|Lmax Bài toán điều chỉnh thời gian gia công pj để dãy
công việc π là tối ưu
1|adjustable pj, L∗|Lmax Bài toán điều chỉnh thời gian gia công pj để trễ tối
đa Lmax ≤ L∗
Trang 6Lời nói đầu
Từ thế kỷ XX tối ưu hóa đã có ứng dụng nhiều và hiệu quả trong các lĩnh vựcnhư quản trị kinh doanh, chế tạo sản xuất, quy hoạch tài nguyên, công nghệ thôngtin, hỗ trợ cho vấn đề ra quyết định quản lý, mục tiêu của nghiên cứu tối ưu hóatìm ra giải pháp tốt nhất từ một số lượng lớn các giải pháp khả thi Trong mô hìnhtối ưu hóa truyền thống thì tất cả các thông số được đưa ra và mục tiêu là tìmgiải pháp tối ưu đáp ứng các ràng buộc cụ thể, đối với tối ưu hóa ngược thì đã xácđịnh trước một giải pháp cùng với các giá trị của một số thông số không được chochính xác và mục tiêu là tìm các giá trị chính xác của các thông số để giải phápđược đưa ra ban đầu là tối ưu, như vậy tối ưu hóa ngược có thể giúp cải thiện hệthống đã có sẵn
Trong những năm gần đây, vấn đề tối ưu hóa ngược đã trở thành một chủ đềđược nghiên cứu nhiều hơn, tầm quan trọng và ứng dụng của tối ưu hóa ngượcngày càng được gia tăng Luận văn này trình bày về bài toán ngược của bài toántối thiểu hóa thời gian trễ tối đa của các công việc với thời gian đến như nhau trên
mô hình máy đơn
Vấn đề trình tự gia công các công việc là một vấn đề của bài toán tối ưu hóa
tổ hợp Với vấn đề tối ưu hóa của trình tự gia công thuận thì dãy các công việcđược đưa ra cùng với các thông số cho trước (ví dụ như thời gian gia công hay kỳhạn của từng công việc) ta cần sắp xếp lại trình tự các công việc để sao cho độ trễtối đa là nhỏ nhất Tuy nhiên khi trình tự các công việc này được ấn định thì mục
Trang 7tiêu của tối ưu hóa ngược là ta cần điều chỉnh các thông số cho trước để sao chotrình tự đã cho là tối ưu hoặc để đạt được độ trễ tối đa thỏa mãn một thời hạn chotrước Chính vì vậy việc nghiên cứu bài toán ngược của bài toán tối thiểu hóa thờigian trễ tối đa của các công việc với thời gian đến như nhau trên mô hình máy đơn
là cần thiết Giải quyết bài toán này nhằm để đáp ứng được kỳ hạn giao hàng chokhách hàng, hoặc khi khách hàng có một dãy các công việc được ấn định trước saocho độ trễ tối đa trong sản xuất là nhỏ nhất
Luận văn này được hoàn thành tại Trường Đại học Khoa học - Đại học TháiNguyên dưới sự hướng dẫn của TS Phạm Hồng Trường Tôi xin tỏ lòng kính trọng
và biết ơn sâu sắc đối với thầy, người đã trực tiếp hướng dẫn tôi rất tận tình trongviệc học tập, nghiên cứu để hoàn thành bản luận văn này
Xin chân thành cảm ơn Lãnh đạo Trường Đại học Khoa học - Đại học TháiNguyên, Ban chủ nhiệm khoa Toán - Tin cùng toàn thể các thầy cô trong và ngoàitrường đã giảng dạy giúp tôi trau dồi thêm rất nhiều kiến thức phục vụ cho việchọc tập và nghiên cứu của bản thân
Cuối cùng tôi xin gửi lời cảm ơn tới gia đình, bạn bè đã luôn động viên, giúp
đỡ và tạo điều kiện tốt nhất cho tôi trong quá trình học tập, nghiên cứu và hoànthành luận văn này
Xin chân thành cảm ơn!
Thái Nguyên, ngày 10 tháng 5 năm 2018
Tác giả luận văn
Bế Nhật Vinh
Trang 8sử dụng để phân tích và tối ưu hóa các hệ thống phức tạp và trở thành một lĩnhvực được học tập và nghiên cứu.
Vận trù học với mục đích nghiên cứu phân bổ nguồn lực tối ưu, vận trù họccung cấp cơ sở hợp lý cho việc ra quyết định bằng cách tìm hiểu và cấu trúc các
Trang 9tình huống phức tạp, dự đoán hành vi của hệ thống và cải thiện hiệu suất của hệthống Phần lớn công việc thực tế được thực hiện bằng cách sử dụng các kỹ thuậtphân tích và số để phát triển và vận dụng các mô hình toán học của các hệ thống
tổ chức bao gồm người, máy móc và các hoạt động trong đó Vai trò của vận trùhọc trong cả hai lĩnh vực công và lĩnh vực tư nhân đang gia tăng nhanh chóng Vậntrù học giải quyết nhiều vấn đề khác nhau trong giao thông vận tải, lập kế hoạchkiểm kê, kế hoạch sản xuất, hoạt động truyền thông, hoạt động máy tính, quản lýtài sản, quản lý rủi ro, quản lý doanh thu và nhiều lĩnh vực khác Trong lĩnh vựccông, các nghiên cứu của vận trù học có thể tập trung vào chính sách năng lượng,quốc phòng, chăm sóc sức khoẻ, quy hoạch tài nguyên nước, thiết kế và vận hànhcác hệ thống khẩn cấp đô thị hoặc thực thi pháp luật
Nghiên cứu trong vận trù học, khoa học quản lý có thể phân loại thành ba lĩnhvực chính sau: Một là nghiên cứu cơ sở hoặc nền tảng trong ba lĩnh vực của toánhọc (Xác suất, tối ưu hóa, và lý thuyết hệ động lực) Hai là nghiên cứu mô hìnhtrong việc thiết lập mô hình, phân tích chúng về mặt toán học, mã hóa chúng lênmáy tính, giải chúng bằng các công cụ phần mềm, đánh giá hiệu quả thu được từ
dữ liệu máy tính Mức này chủ yếu nhờ máy tính và được định hướng chính bởi xácsuất và kinh tế lượng và thứ ba là nghiên cứu ứng dụng trong vận trù học, giốngnhư trong các ngành kĩ thuật và kinh tế, sử dụng các mô hình thu được để áp dụngcho các vấn đề thực tế
Trong vận trù học, các nhà nghiên cứu được yêu cầu phải mô hình hóa các vấn
đề thực tế bằng cách áp dụng các kỹ thuật toán học, thống kê, ứng dụng máy tính
và sau đó tìm các giải pháp tối ưu cho các mô hình bị hạn chế về thời gian, nguồnlực lao động, nguồn lực vật liệu và các quy tắc kinh doanh với các mục tiêu cụ thể.Các lý thuyết mới, các mô hình toán học đã được phát minh ra trong vận trù học
để mô tả và phân tích các hành vi, đặc điểm, sự thay đổi của các vấn đề thực tế, để
Trang 10giúp mọi người ra quyết định tốt hơn để phát triển và quản lý quy trình và doanhnghiệp của mình với lợi nhuận tối đa Mô hình tối ưu có thể được mô tả như sau
max ( min) f (x)s.t Điều kiện ràng buộc
Các giải pháp đáp ứng các yêu cầu nêu trên thường được gọi là các giải phápkhả thi Tối ưu hóa là tìm ra các giải pháp tối ưu trong số các giải pháp khả thi
1.2 Vấn đề tối ưu hóa tổ hợp
Tối ưu hoá tổ hợp là một nhánh con của tối ưu hóa toán học và xuất hiện trongtoán học rời rạc, vận trù học, lý thuyết thuật toán và lý thuyết tính toán phức tạp.Mục tiêu của nghiên cứu tối ưu hóa tổ hợp là tìm ra giải pháp tốt nhất từ một sốlượng lớn các giải pháp khả thi Trong nhiều vấn đề, chẳng hạn như phân công tối
ưu, cây khung ngắn nhất, vận chuyển và bài toán người giao hàng, các giải pháp làrời rạc và việc tìm kiếm toàn diện là không khả thi
So với các ngành toán học ứng dụng khác, tối ưu hóa tổ hợp là tương đối trẻ.Xem xét lịch sử của một loạt các nghiên cứu độc lập đã diễn ra riêng biệt Chỉ trongnhững năm 1950, khi công cụ đại số tuyến tính và số nguyên trở nên thống nhất
và có sẵn thì lĩnh vực tối ưu tổ hợp bắt đầu thu hút sự chú ý và các mối quan hệgiữa chúng đã được đặt ra Thật vậy, tối ưu hóa tuyến tính tạo thành bản lề tronglịch sử tối ưu hóa tổ hợp Quan niệm ban đầu của Kantorovich và Koopmans đượcthúc đẩy bởi các ứng dụng tổ hợp, đặc biệt là trong vận chuyển và chuyển tải Saukhi xây dựng quy hoạch tuyến tính như là một bài toán tổng quát, và phát triểnvào năm 1947 bởi Dantzig về phương pháp đơn hình như một công cụ, Dantzig đã
cố gắng giải quyết tất cả các bài toán tối ưu hóa tổ hợp với các phương pháp quyhoạch tuyến tính và thường là rất thành công
Tối ưu hóa tổ hợp liên quan đến các mô hình và phương pháp để tối ưu hóa các
Trang 11lựa chọn rời rạc Nó bắt nguồn từ lý thuyết quy hoạch tuyến tính, và có liên kếtchặt chẽ với toán học rời rạc, lý thuyết xác suất, lý thuyết khoa học máy tính, và
lý thuyết tính độ phức tạp tính toán Một số vấn đề trong lĩnh vực được nghiêncứu tương đối tốt và chấp nhận giải pháp để tối ưu hóa trong thời gian đa thức.Nhiều bài toán khác là NP–hard Có ba cách để giải quyết tốt nhất các bài toántối ưu hóa tổ hợp
Cách thứ nhất là sử dụng một phương pháp liệt kê được đảm bảo để tạo ra mộtgiải pháp tối ưu
Cách thứ hai là áp dụng một thuật toán xấp xỉ chạy trong thời gian đa thức.Cách thứ ba là sử dụng một số kỹ thuật tìm kiếm kinh nghiệm, mà không có sựđảm bảo trước về chất lượng giải pháp hoặc thời gian chạy
Nhiều vấn đề về quyết định trong cuộc sống thực tế có thể được xây dựng nhưcác vấn đề tối ưu hoá tổ hợp và do đó có sự quan tâm lớn và ngày càng tăng về
cả lý thuyết và thực tiễn Một số vấn đề về bài toán người giao hàng, việc lên kếhoạch mua sắm, tham quan, vấn đề của bác sĩ hoặc người đưa thư Tương tự nhưvậy, phân công công việc, vận tải, kết nối hình thành các vấn đề cơ bản đã đượcrất nhiều nhà toán học xem xét Nói chung, các bài toán tối ưu tổ hợp thường cóquy mô lớn và khó giải quyết Do đó, nghiên cứu sự phức tạp về mặt tính toán vàthiết kế thuật toán để phát triển các thủ tục giải quyết hiệu quả là trọng tâm củacác nhà nghiên cứu trong việc tối ưu hóa tổ hợp
Một vấn đề tối ưu tổ hợp P = (S, f ) có thể được chỉ ra như sau
• Các miền biến D1, D2, , Dn,
• Các ràng buộc giữa các biến,
• Một hàm mục tiêu f tối thiểu hóa (hoặc tối đa hóa), trong đó
f : D1× D2× × Dn −→ R+
Trang 12Tập hợp tất cả các giải pháp khả thi
S = {s ∈ D1× D2× × Dn | s thỏa mãn các ràng buộc}
S thường được gọi là không gian tìm kiếm (hoặc tập hợp các giải pháp), vì mỗi
phần tử của S có thể được xem như một giải pháp khả thi
Để giải quyết Bài toán tối ưu tổ hợp có nghĩa là tìm một giải pháp s∗ ∈ S với
giá trị hàm tối thiểu hóa (hoặc tối đa hóa); nghĩa là, f (s∗) ≤ f (s), ∀ s∗ ∈ S (hoặc
f (s∗) ≥ f (s), ∀ s∗ ∈ S, s∗ được gọi là Giải pháp tối ưu của (S, f ) và để sao cho tập
S∗ ⊆ S là tập hợp các giải pháp tối ưu
1.3 Lời giải của vấn đề gia công trên mô hình máy đơn
(Xem [1])
Vấn đề trình tự gia công là một bài toán tối ưu hóa tổ hợp Các nhiệm vụ, số
lượng các máy cần xử lý trong vấn đề trình tự gia công đều là hữu hạn do đó lời
giải tối ưu của đại bộ phận vấn đề trình tự đều được tìm ra từ hữu hạn các giải
pháp khả thi của vấn đề trình tự ban đầu, làm cho hàm mục tiêu đạt giá trị tối ưu
Trong vấn đề trình tự gia công, ta gọi giải pháp khả thi là trình tự khả thi, giải
pháp tốt ưu được gọi là trình tự tối ưu
Trong vấn đề trình tự gia công, một trình tự khả thi là một dãy thứ tự mà dựa
vào đó có thể sắp xếp tất cả các nhiệm vụ gia công trên máy xử lý
Ví dụ 1.1 Cho vấn đề trình tự gia công 1kP wjCj trong đó, n = 6, p = (12, 4, 7, 11, 6, 5),
ω = (4, 2, 5, 5, 6, 3) Một trình tự gia công bất kì của tập các công việc đều là trình
tự khả thi, trong đó [T5, T3, T6, T2, T4, T1] là tối ưu
Ví dụ 1.2 Cho vấn đề trình tự gia công F2||Cmax trong đó n = 5
Trang 13Hình 1.1: Trình tự tối ưu của ví dụ 1.2.
Hình 1.2: Sơ đồ Grant Charts.
sẽ được gọi là trình tự gia công trì hoãn được
Trình tự gia công không trì hoãn tương đương với việc không được để máy xử lý
có thời gian nghỉ trong quá trình gia công Đối với đa số các vấn đề về trình tự gia
Trang 14công, bao gồm tất cả các trình tự gia công có thể trì hoãn, trình tự tối ưu là trình
tự không trì hoãn, tuy nhiên cũng có một vài vấn đề thì trình tự gia công có thểtrì hoãn mà trình tự tối ưu của nó là trình tự trì hoãn được
Ví dụ 1.3 Trình tự gia công 1|rj|P wjCj, n = 2, p = (10, 5), r = (0, 1), w =(1, 5)
Vấn đề này có hai trình tự khả thi đó là:
Hình 1.3: Trình tự khả thi của ví dụ 1.3
1.4 Vấn đề tối thiểu hóa thời gian trễ tối đa của các công
việc với thời gian đến như nhau trên mô hình máy đơn 1kLmax
Một số ký hiệu trong bài toán 1kLmax:
Tj là công việc thứ j trong một dãy công việc đưa ra,
pj là thời gian gia công của công việc Tj,
dj là thời gian hoàn thành hạn định đối với công việc Tj,
Cj =
j
P
s=1
ps là thời gian hoàn thành thành công công việc Tj,
Thời gian trễ tối đa (maximum latenes)
Lmax = max{Lj}
Trang 15trong đó, Lj = Cj− dj là thời gian trễ của công việc Tj.
Bài toán 1.1 Tìm thời gian trễ tối đa của các công việc được sắp thứ tự lần lượt
từ công việc
T1 −→ T2 −→ T3 −→ T4 −→ T5 −→ T6với các dữ kiện được cho theo bảng 1.1
Vậy trễ tối đa Lmax = 5
Mặt khác, nếu thay đổi thứ tự các công việc hoàn thành
T1 −→ T3 −→ T4 −→ T2 −→ T5 −→ T6
Ta được:
Trang 16Hình 1.5: Trình tự thực hiện các công việc của bài toán 1.1 theo thứ tự mới.
Khi đó, thời gian trễ của các công việc Tj là
L1 = 1; L3 = 1; L4 = 4; L2 = −1; L5 = 1; L6 = 2
Vậy trễ tối đa Lmax = 4
Như vậy có thể thấy rằng, khi thay đổi thứ tự thực hiện các công việc, thì thờigian trễ tối đa (có thể) khác nhau Vậy vấn đề đặt ra là, khi thực hiện gia côngmột tập hợp các công việc với thời gian hoàn thành hạn định đối với các công việc
đã được định sẵn, thì thứ tự thực hiện của các công việc đó nên sắp xếp thế nào
để thời gian trễ tối đa là nhỏ nhất
Bài toán 1kLmax là tương đối đơn giản, và nó được giải quyết bằng cách sắp xếpcác nhiệm vụ theo quy tắc ưu tiên kỳ hạn sớm nhất (Earliest Due Date first viếttắt là EDD ) ta sẽ thu được trình tự tối ưu Theo quy tắc này, các công việc đượcsắp xếp theo trình tự không giảm của các dj
1.5 Vấn đề sắp xếp ngược
Lý thuyết vật lý cho phép chúng ta đưa ra dự đoán, đưa ra mô tả đầy đủ về một
hệ thống vật lý hoặc dự đoán kết quả của một số phép đo Khi đó việc dự đoánkết quả đo được gọi là mô hình hóa hoặc vấn đề thuận Một vấn đề ngược lại là
ta chuyển đổi các phép đo, các quan sát thành thông tin về một vật thể hoặc hệthống vật lý mà chúng ta quan tâm
Trong khi vấn đề thuận có giải pháp duy nhất thì vấn đề ngược thì không Ví
dụ, xem xét các phép đo trọng lượng trên một hành tinh: cho phân bố khối lượng
Trang 17bên trong hành tinh, chúng ta có thể xác định duy nhất các giá trị của lực hấp dẫnxung quanh hành tinh, nhưng trong các không gian tương đồng bên ngoài hànhtinh có các phân bố khối lượng khác nhau trong cùng một môi trường trọng lực.
Do đó, trong vấn đề ngược lại suy ra sự phân bố khối lượng từ quan sát các môitrường của trọng lực thì có nhiều giải pháp Vì vậy trong vấn đề ngược ta cần phảixem xét, kiểm tra cẩn thận chính xác về các thông số của mô hình
Tối ưu hóa ngược liên quan đến việc xác định sự thay đổi tối thiểu đối với thông
số của một vấn đề, để cho phép một giải pháp nhất định trở nên tối ưu Khi giảiquyết bài toán tối ưu, chúng ta thường giả sử rằng các thông số như chi phí, nănglực, vv đã biết và ta quan tâm đến một giải pháp tối ưu Tuy nhiên, trong thực
tế có thể xảy ra nhiều trường hợp mà chúng ta chỉ biết ước lượng cho các tham số.Ngoài ra, chúng ta có thể biết rằng các giải pháp nhất định là tối ưu từ quan sáthoặc từ thí nghiệm cụ thể Ý tưởng tối ưu ngược là tìm ra các giá trị của các tham
số làm cho các giải pháp đưa ra là tối ưu và lượng thay đổi của các tham số so vớicác ước lượng ban đầu càng ít càng tốt
Các vấn đề sắp xếp thuận đề cập đến cách sắp xếp một dãy các công việc vớimục tiêu tối thiểu hóa một vài thông số của công việc (ví dụ như thời gian hoànthành) Tuy nhiên, những vấn đề sắp xếp ngược lại giả định rằng một trình tự côngviệc đã được đưa ra trước và mục tiêu là xác định sự thay đổi tối thiểu đối với cácthông số của công việc (ví dụ như thời gian xử lý) sao cho dãy trình tự đã đưa ratrở thành tối ưu đối với một hàm mục tiêu được chọn trước Vấn đề sắp xếp thuậnrất hữu ích cho việc thiết kế một hệ thống mới, trong khi vấn đề sắp xếp ngược lại
có ý nghĩa quan trọng để cải thiện hiệu quả của một hệ thống đã tồn tại
Trong những năm gần đây, vấn đề tối ưu hóa ngược đã trở thành một chủ đềđược nghiên cứu nhiều hơn Các nghiên cứu về vấn đề này có thể được tìm thấytrong một số ví dụ sau: Các vấn đề lập trình tự ngược ứng dụng trong vận chuyển
Trang 18Các vấn đề ngược của một lập trình đơn máy để giảm thiểu tổng số thời gian hoànthành công việc Một số kết quả mới về các vấn đề phân loại ngược.
Vào năm 2005 C Koulamas đã nghiên cứu và đưa ra kết quả về việc lập trình tựngược với các thông số công việc kiểm soát được Ông đã nghiên cứu các vấn đề lậptrình tự ngược của tổng số thời gian hoàn thành có trọng số trên máy đơn và cácvấn đề lập trình tự ngược của tổng số thời gian hoàn thành vấn đề trên máy đơn.Tuy nhiên, trong nghiên cứu của mình ông đã không xem xét đến việc giá trị kếtquả của tiêu chí lập trình tự có thể cao hơn giá trị của tiêu chí lập trình tự ban vànhưng điều này là không mong muốn Chen đã chỉ ra và khắc phục được điểm yếutrong kết quả của Koulamas (2005), họ đã sử dụng công cụ lập trình toán học đểnghiên cứu các vấn đề ngược của một lập trình máy đơn để giảm thiểu tổng trọngsố
Thời gian hoàn thành, 1kP wjCj và các giải pháp tối ưu tương ứng thu đượctheo các chuẩn l1, l2, l∞ Hơn nữa, các vấn đề đảo của tổng thời gian hoàn thànhvấn đề trên máy đơn 1kP Cj và các giải pháp tối ưu liên quan của nó cũng đãđược nghiên cứu
Brucker và Shakhlevich [7] đã nghiên cứu lập kế hoạch ngược với vấn đề kháchquan tối đa Trong bài toán lập kế hoạch này, họ đã nghiên cứu các đối số ngượccủa bài toán lập trình trên mô hình máy đơn 1kLmax trong trường hợp có thể điềuchỉnh ngày tháng hoặc thời gian xử lý dưới các loại của các tiêu chuẩn: l1, l2, l∞.Hai vấn đề của họ dường như là NP-khó; cho các vấn đề, họ đã tạo ra công thứclập trình toán học của họ và phát triển các thuật toán giải pháp hiệu quả
Các kết quả được tóm tắt trong bảng 1.2
Trang 19Điều chỉnh kì hạn d j
Chuẩn Điều chỉnh thời gian
gia công p j
Chuẩn
Bài toán ngược với trình tự cho
trước π
O(n log n) l 1 , l 2 O(n2log n) l 1 , l 2
O(n log n) l∞ O(n3) l∞Bài toán ngược với giá trị L∗ cho
trước
O(n2) l 1 , l 2 O(n log n) l 1 , l 2
O(n 2 ) l∞ O(n log n + cn) l∞
Bảng 1.2: Độ phức tạp của bài toán ngược của bài toán 1kL max đối với các loại chuẩn l 1 , l 2 , l ∞
1.6 Vấn đề quy hoạch tuyến tính
Quy hoạch tuyến tính là một trường hợp đặc biệt của lý thuyết tối ưu hóa và
nó giải quyết các bài toán tối ưu (như chi phí tối đa hoặc tối thiểu) Các vấn đềquy hoạch tuyến tính gồm một hàm mục tiêu tuyến tính (gồm một số lượng cácbiến nhất định) được tối thiểu hóa hoặc tối đa hóa theo một số ràng buộc tuyếntính nhất định Các ràng buộc tuyến tính đều là hàm và các phương trình hoặcbất phương trình tuyến tính của các biến được sử dụng trong hàm mục tiêu Quyhoạch tuyến tính liên quan chặt chẽ đến đại số tuyến tính; sự khác biệt đáng chú
ý nhất là quy hoạch tuyến tính với các điều kiện ràng buộc thường là bất phươngtrình tuyến tính
Quy hoạch tuyến tính là một trong những phương pháp thành công nhất trongnghiên cứu về tối ưu tổ hợp Trong thực tế, nhiều vấn đề thực tế có thể được mô
tả như là các vấn đề quy hoạch tuyến tính Quy hoạch tuyến tính đã được sử dụngrất nhiều trong kinh tế và quản lý công ty Mặc dù các vấn đề quản lý hiện đạiđang thay đổi, hầu hết các công ty muốn tối đa hóa lợi nhuận hoặc giảm thiểu chiphí với nguồn lực hạn chế Vì vậy, nhiều vấn đề thực tế có thể được thể hiện như
là các vấn đề quy hoạch tuyến tính để đạt được lợi nhuận tối đa như quy hoạch,sản xuất, vận chuyển, công nghệ,
Thật vậy, các ý tưởng từ quy hoạch tuyến tính đã đưa ra rất nhiều các khái
Trang 20niệm trọng tâm của lý thuyết tối ưu hóa, như tính hai mặt, sự phân hoạch, và tầmquan trọng của tính lồi và các khái quát hóa của nó Một số trường hợp đặc biệtcủa quy hoạch tuyến tính, chẳng hạn như các vấn đề về mạng lưới và các vấn đề
đa giao thức được coi là quan trọng đủ để tạo ra nhiều nghiên cứu về thuật toánchuyên dụng cho giải pháp được ứng dụng trong thực tế
1.7 Định nghĩa ba loại chuẩn l1, l2, l∞
Một hàm f : Rn −→ R với domf = Rn được gọi là một chuẩn nếu:
• f là không âm: f (x) ≥ 0, ∀ x ∈ Rn,
• f là đồng nhất: f (tx) = |t|f (x), ∀ x ∈ Rn
, t ∈ R,
• f thỏa mãn bất đẳng thức tham giác: f (x + y) ≤ f (x) + f (y), ∀ x, y ∈ Rn
Ta sử dụng ký hiệu f (x) = |x|, có nghĩa là để cho thấy rằng một chuẩn là một
sự suy rộng của giá trị tuyệt đối trên R Khi ta xác định một chuẩn cụ thể, ta sửdụng ký hiệu |x|symb, trong đó chỉ số dưới là một phép ghi nhớ để chỉ ra định nghĩanào là có ý nghĩa
Cho p ≥ 1 là một số thực Trên một không gian Euclide n chiều, khái niệm trựcquan về độ dài của vector x = (x1, x2, , xn) được thu được bằng cách:
Đối với p ≥ 1, chuẩn p của x ∈ Rn được định nghĩa là:
Có thể chứng minh rằng các tính chất sau đây của chuẩn Euclidean trên thực tế
Trang 21có giá trị đối với tất cả các chuẩn p:
kxkp ≥ 0 và kxkp = 0 ⇔ x = 0,kkxkp = |k|kxk với tất cả các đại lượng k,
kx + ykp ≤ kxkp+ kykp.Trong phần này, ta chỉ đề cập đến ba chuẩn p được sử dụng cho tất cả i =
(Chuẩn taxicab hoặc được gọi là khoảng cách Manhattan)
• Cho p = 2, ta có được chuẩn Euclidean l2
• Và như phương pháp tiếp cận chuẩn p− đạt được chỉ chuẩn hoặc chuẩn tối đa
Trang 22Chương 2
Vấn đề ngược của vấn đề tối thiểu
hóa thời gian trễ tối đa của các công việc với thời gian đến như nhau trên
mô hình máy đơn
Trong chương này chúng tôi đưa ra vấn đề về việc nghiên cứu một số đối tượngcủa vấn đề lập trình tự trên mô hình máy đơn với tiêu chí độ trễ tối đa xuất hiệntrong bối cảnh tối ưu hóa ngược Trong quá trình lập trình tự thuận, tất cả cácthông số được đưa ra trước và mục tiêu là tìm ra dãy công việc tối ưu mà giá trịthời gian trễ tối đa là tối thiểu, trong lập trình tự ngược các giá trị chính xác củathời gian gia công hoặc kỳ hạn là không ấn định và cần xác định để sao cho mộtdãy công việc được xác định trước trở nên tối ưu Chúng tôi thực hiện phân loạicác bài toán ngược tương ứng với sự điều chỉnh về thời gian gia công hoặc kỳ hạn,việc giải quyết các bài toán này được tính theo các loại chuẩn khác nhau để đo độlệch của các tham số được điều chỉnh từ các ước tính cho trước của chúng
Trang 232.1 Sơ lược về vấn đề sắp xếp ngược
Trong những năm gần đây, tầm quan trọng của tối ưu hóa ngược ngày càng pháttriển, không giống như tối ưu hóa truyền thống với tất cả những tham số được chosẵn và mục tiêu là tìm giải pháp tốt nhất là đáp ứng những ràng buộc đặc biệt,vấn đề tối ưu hóa ngược đưa ra những tham số chưa biết và chúng có thể được xácđịnh sao cho kết quả trở nên tối ưu nhất Mặc dù tối ưu hóa ngược đã thu hút sựchú ý của nhiều nhà nghiên cứu về tối ưu hóa tổ hợp trong nhiều phạm vi nghiêncứu khác nhau, nhưng các vấn đề về lập lịch trình vẫn chưa được nghiên cứu nhiều
về mặt tối ưu hóa ngược
Trong luận văn này chúng tôi nghiên cứu và trình bày về bài toán ngược của bàitoán tối thiểu hóa thời gian trễ tối đa của các công việc với thời gian đến như nhautrên mô hình máy đơn 1kLmax
Trong bài toán lập trình tự thuận 1kLmax, một tập hợp các công việc đã cho
T = {1, 2, , n}, có thể thực hiện trên một máy đơn không có ràng buộc ưu tiên.Tất cả các công việc bắt đầu tại thời gian đến t = 0 Thời gian gia công một côngviệc tại thời điểm j, j ∈ N là pj và nó được hoàn thành bởi một kỳ hạn dj Ta kýhiệu kỳ hạn d = (d1, d2, , dn) Một trình tự thực hiện được xác định duy nhất bởimột dãy sắp thứ tự các công việc π, với thời gian hoàn thành Cj(π)
Với mỗi trình tự cho bởi dãy sắp thứ tự công việc π, độ trễ của công việc j đượcxác định bởi công thức
Lj(π, d) = Cj(π) − dj
và toàn bộ quá trình thực hiện của trình tự π được tính theo độ trễ tối đa
Lmax(π, d) = max {Lj(π, d)}
Trang 24Mục tiêu của bài toán thuận 1kLmax là tìm ra một hoán vị công việc π∗, sao cho
Lmax(π, d) đạt giá trị nhỏ nhất,
Lmax(π∗, d) ≤ Lmax(π, d) , với mọi giá trị π bất kỳ
Trong bài toán ngược, thời gian gia công pj và kỳ hạn dj được cho cùng với mộtdãy công việc π Hoán vị π có thể không là tối ưu đối với các giá trị được cho của
pj và dj, j ∈ N Mục tiêu thay đổi những thông số trong những phạm vi có thể saocho dãy công việc đã đưa ra là tối ưu
Dưới đây chúng ta giả sử rằng dãy công việc mục tiêu đưa ra là π = (1, 2, , n),mặt khác các công việc có thể được đánh số lại Nếu thời gian gia công được ấnđịnh và các kỳ hạn dj là có thể điều chỉnh được, thì bài toán ngược được ký hiệubởi
1 |adjustable dj, π| Lmax.Trong bài toán này, với mỗi công việc Tj, ∀ j ∈ N, kỳ hạn dj của nó được cho cùngvới đoạn biến thiên dj; dj , dj ∈dj; dj Thời gian điều chỉnh d =b db1, bd2, , bdn
có thể chọn trong đoạn đã cho bdj ∈ dj; dj , j ∈ N, sao cho độ lệch k bd − dk so với
kỳ hạn gốc là nhỏ nhất
min d − dbs.t Lmaxπ, bd≤ Lmaxσ, bd,
dj ≤ bdj ≤ dj,với mọi hoán vị công việc σ, j ∈ N
Trang 25Các chuẩn được đề cập trong luận văn được định nghĩa lại như sau
Trong phần bổ sung vào bài toán ngược 1 |adjustable dj, π| Lmax, ta điều chỉnh
kỳ hạn dj để trình tự π là tối ưu Ta bổ sung thêm bài toán ngược như sau: Thaycho việc điều chỉnh kỳ hạn dj để trình tự π là tối ưu, ta điều chỉnh kỳ hạn dj đểtrễ tối đa không vượt quá giá trị L∗ cho trước, ta được bài toán:
min d − dbs.t Lmaxπ, bd≤ L∗,
dj ≤ dj ≤ dj,với mọi hoán vị công việc σ, j ∈ N
Ta ký hiệu bài toán này là 1 |adjustable dj, L∗| Lmax
Bài toán ngược ở trên đề cập đến thời gian gia công và kỳ hạn điều chỉnh Tương
tự, các công thức có thể áp dụng với thời gian hạn định và thời gian gia công điềuchỉnh pbj, chúng được chọn trong đoạn đã cho pj ≤ pbj ≤ pj, j ∈ N sao cho độ lệch
so với thời gian gia công ban đầu kbp − pk là nhỏ nhất Ta chỉ cần thay ký hiệuadjustable dj bởi adjustable pj
Tôi mô tả các kịch bản có thể liên quan đến vấn đề ngược Trong các tình huốngthực tế, lợi ích của khách hàng và người bán thường có xung đột Mô hình ngược
có thể được sử dụng như một công cụ đàm phán để giải quyết các xung đột nhưvậy
Trang 26Tình huống thứ nhất, ứng với bài toán ngược với thời gian gia công các côngviệc có thể điều chỉnh được, người sản xuất có thể có một dãy trình tự công việc
ưu tiên π được xác định trước với một số các ước tính về thời gian gia công củatừng công việc và kỳ hạn hoàn thành các công việc bởi những giới hạn kỹ thuật.Khi sản xuất dãy công việc π cho trước, nếu giá trị thực tế các tham số xuất hiệnkhác so với ước tính khi đó kỳ hạn của khách hàng không thể được đảm bảo, thìnhà sản xuất có thể xác định một vài công việc có thể được sản xuất nhanh hơnvới chi phí bổ sung tạo cơ hội để hoàn thành tất cả các công việc trong thời gian
và theo trình tự cố định Thời gian gia công được điều chỉnh phải đảm bảo rằng π
là trình tự tốt nhất có thể cho nhà sản xuất và kỳ hạn của khách hàng được đảmbảo
Tình huống thứ hai, ứng với bài toán ngược với kỳ hạn của từng công việc có thểđiều chỉnh được, nhà sản xuất dự định hoàn thành công việc đúng thời hạn hoặctrong giới hạn chấp nhận được L∗, nhưng không bị giới hạn bởi một số trình tựcông việc cho trước Nếu tuân thủ theo đúng trình tự công việc cho trước nhà sảnxuất không thể hoàn thành công việc đúng hạn định, nhà sản xuất có thể thươnglượng với khách hàng để điều chỉnh kỳ hạn từng công việc của họ một chút để đảmbảo kỳ hạn Cuộc thương lượng phải đảm bảo được mức chất lượng L∗ và các chiphí phát sinh là tối thiểu
2.2 Điều kiện cần và đủ của vấn đề tối thiểu hóa thời
gian trễ tối đa
Một điều kiện đủ của giải pháp tối ưu là trình tự EDD
dπ(i) ≤ dπ(2) ≤ ≤ dπ(n) [xem 1.4.]
Trang 27Định lý 2.1 Quy tắc EDD giải quyết vấn đề tìm trình tự tối ưu đối với vấn đề1kLmax.
Chứng minh Ta chứng minh bất kỳ trình tự nào không thỏa mãn quy tắc EDDđều có thể chuyển hóa thành trình tự thỏa mãn quy tắc EDD mà hàm mục tiêukhông tăng
Giả sử rằng mỗi trình tự tối ưu π bất kỳ đều không thỏa mãn quy tắc EDD.Khi đó, trong trình tự này ít nhất có hai công việc cạnh nhau Tj và Tk, trong đó
Tj đứng trước Tk và dj > dk
Giả sử công việc TJ bắt đầu được gia công tại thời điểm t Khi đó,
Lj = t + pj − dj,
Lk = t + pj + pk− dk.Trong trình tự π ta thay đổi như sau: thay đổi vị trí của hai công việc Tj và Tk,giả sử ngoài vị trí của tất cả các công việc khác Ta thu được trình tự π0 trong đó,thời gian bắt đầu gia công của công việc Tj là t và Tj được gia công ngay sau khikết thúc công việc Tk
Ví dụ 2.1 Ở bài toán 1.1, xét vấn đề 1kLmax, trong đó
n = 6, p = (3, 1, 4, 1, 3, 2), d = (2, 10, 6, 4, 11, 12)