_
NGUYỄN PHƯỚC BẢO HẬU
NGHIÊN CỨU ỨNG DỤNG GIẢI THUẬT DI TRUYỀN CHO BÀI TOÁN ĐIỀU ĐỘ THANG MÁY VẬN CHUYỂN HÀNG TẠI
MỘT KHO B2B
Chuyên ngành: Kỹ thuật công nghiệp
Mã số: 8520117
LUẬN VĂN THẠC SĨ
Trang 2Cán bộ hướng dẫn khoa học:
PGS TS Đỗ Ngọc Hiền…………………………………………………………
PGS TS Lê Ngọc Quỳnh Lam……………………………………………………
Cán bộ chấm nhận xét 1: TS Lê Đức Đạo………………………………………………
Cán bộ chấm nhận xét 2: TS Dương Quốc Bửu ……………………………………… Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp HCM ngày 08 tháng 07 năm 2023
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:
1 Chủ tịch Hội đồng: TS Nguyễn Vạng Phúc Nguyên2 Thư ký Hội đồng: TS Nguyễn Văn Thành
3 Phản biện: TS Lê Đức Đạo 4 Phản biện: TS Dương Quốc Bửu 5 Ủy viên: PGS TS Đỗ Ngọc Hiền
Xá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ó)
Trang 3ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc
_ NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: NGUYỄN PHƯỚC BẢO HẬU MSHV: 2170619
Ngày, tháng, năm sinh: 16/09/1996 Nơi sinh: Tp Hồ Chí Minh Chuyên ngành: Kỹ thuật công nghiệp Mã số: 8520117
I TÊN ĐỀ TÀI:
NGHIÊN CỨU ỨNG DỤNG GIẢI THUẬT DI TRUYỀN CHO BÀI TOÁN ĐIỀU ĐỘ THANG MÁY VẬN CHUYỂN HÀNG TẠI MỘT KHO B2B
(APPLICATION OF GENETIC ALGORITHM FOR ELEVATOR SCHEDULING PROBLEM IN A B2B WAREHOUSE)
II NHIỆM VỤ VÀ NỘI DUNG:
Quan sát hiện trạng, xác định vấn đề, phân tích nguyên nhân của sự ùn ứ hàng ởkhu vực thang máy trong kho T&C;
Nghiên cứu ứng dụng giải thuật dui truyền cho bài toán điều độ thang máy; Kiểm thử hiệu quả của giải thuật trên các tập dữ liệu.
III NGÀY GIAO NHIỆM VỤ: 06/02/2023
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 11/06/2023V CÁN BỘ HƯỚNG DẪN: PGS TS Đỗ Ngọc Hiền
PGS TS Lê Ngọc Quỳnh Lam
Tp HCM, ngày tháng năm 20 CÁN BỘ HƯỚNG DẪN 1 (Họ tên và chữ ký) CÁN BỘ HƯỚNG DẪN 2 (Họ tên và chữ ký) CHỦ NHIỆM BỘ MÔN ĐÀO TẠO (Họ tên và chữ ký)
TRƯỞNG KHOA CƠ KHÍ
Trang 4LỜI CẢM ƠN
Em xin cảm ơn thầy PGS TS Đỗ Ngọc Hiền, cô PGS TS Lê Ngọc Quỳnh Lam đã ln tận tình hướng dẫn và hỗ trợ em về cả kiến thức cũng như tinh thần, giúp em có được phương pháp suy luận logic và sự quyết tâm để hoàn thành luận văn đúng thời hạn Em xin cảm ơn các anh, chị đồng nghiệp ở công ty đã hỗ trợ nhiệt tình cho em Sự quan tâm của các anh, chị là những nguồn động lực quý giá giúp em nỗ lực hoàn thành luận văn này
Trang 5TĨM TẮT LUẬN VĂN
Nhà kho ngày càng đóng vai trò quan trọng trong vận hành của một chuỗi cung ứng Trong những hoạt động của nhà kho, lấy hàng (order-picking) được đánh giá là quan trọng vì hoạt động này chiếm tỷ lệ lớn cả về chi phí và nhân lực trong tổng chi phí và nhận lực vận hành kho Vì vậy, nâng cao hiệu quả của hoạt động lấy hàng là một chủ dề luôn thu hút nhiều nhà nghiên cứu cũng như nhà quản lý
Trang 6ABSTRACT
Warehouses play an increasingly important role in the operation of a supply chain In warehouse operations, order-picking is considered important because this activity accounts for a large proportion of both cost and human resources in the total cost and receives the warehouse operation force Therefore, improving the efficiency of picking operations is a topic that always attracts many researchers as well as managers
Trang 7LỜI CAM ĐOAN CỦA TÁC GIẢ
Tơi xin cam đoan đây là cơng trình nghiên cứu của riêng tôi Tất cả các dữ liệu và kết quả sử dụng trong nghiên cứu này là trung thực và chưa được công bố trong các nghiên cứu khác Tơi xin hồn tồn chịu trách nhiệm về nghiên cứu của mình nếu khơng đúng như đã nêu trên
TÁC GIẢ
Trang 8MỤC LỤC
LỜI CẢM ƠN i
TÓM TẮT LUẬN VĂN iii
ABSTRACT iv
LỜI CAM ĐOAN CỦA TÁC GIẢ v
DANH MỤC BẢNG BIỂU ix
DANH MỤC HÌNH ẢNH x
DANH MỤC TỪ VIẾT TẮT xi
Chương 1: GIỚI THIỆU 1
1.1 Đặt vấn đề 1
1.2 Mục tiêu nghiên cứu 2
1.3 Phạm vi và giới hạn nghiên cứu 3
1.4 Bố cục luận văn 3
Chương 2: CƠ SỞ LÝ THUYẾT VÀ PHƯƠNG PHÁP LUẬN 5
2.1 Cơ sở lý thuyết 5
2.1.1 Quá trình lấy hàng 5
2.1.2 Bài tốn điều độ máy song song 6
2.1.3 Giải thuật di truyền 8
2.2 Các nghiên cứu liên quan 9
2.3 Phương pháp luận 10
Chương 3: PHÂN TÍCH ĐỐI TƯỢNG NGHIÊN CỨU VÀ PHÁT BIỂU VẤN ĐỀ 12
Trang 93.2 Phân tích đối tượng nghiên cứu và xác định vấn đề 12
3.3 Xác định nguyên nhân và đề xuất giải pháp 17
3.4 Phát biểu vấn đề 18
Chương 4: MƠ HÌNH HĨA BÀI TỐN 19
4.1 Các định nghĩa 19
4.2 Các giả sử 19
4.3 Các tham số, chỉ số và tập hợp 19
4.4 Hàm mục tiêu, biến quyết định, ràng buộc 20
4.5 Cách xác định thời điểm hoàn thành danh sách hàng 22
Chương 5: ỨNG DỤNG GIẢI THUẬT DI TRUYỀN 24
5.1 Cơ chế mã hóa 24
5.2 Mã hóa và khởi tạo quần thể ban đầu 25
5.3 Chọn lọc 28
5.4 Trao đổi chéo 30
5.5 Đột biến 33
5.6 Điều kiện dừng 36
Chương 6: KIỂM THỬ GIẢI PHÁP 37
6.1 Phương pháp kiểm thử giải pháp 37
6.2 Các tập dữ liệu đầu vào 37
6.3 Phương pháp chuẩn hóa dữ liệu đầu vào 38
6.4 Giải pháp kinh nghiệm 40
6.5 Các chỉ số đo lường hiệu quả của giải pháp 42
Trang 106.7 Kết quả kiểm thử giải pháp và phân tích 44
6.7.1 Kiểm thử với tập dữ liệu 1 44
6.7.2 Kiểm thử với tập dữ liệu 2 49
6.8 Kết luận về kết quả kiểm thử 55
Chương 7: KẾT LUẬN VÀ KIẾN NGHỊ 56
7.1 Kết luận 56
7.2 Kiến nghị 56
DANH MỤC CƠNG TRÌNH KHOA HỌC 58
TÀI LIỆU THAM KHẢO 59
PHỤ LỤC A: DỮ LIỆU QUÁ TRÌNH LẤY HÀNG 61
PHỤ LỤC B: CÁC BẢNG DỮ LIỆU ĐẦU VÀO CHUẨN HÓA 80
PHỤ LỤC C: ĐOẠN MÃ LẬP TRÌNH PYTHON 84
PHỤ LỤC D: BIẾN ĐỔI ĐỘ THÍCH NGHI THEO CÁ THỂ 178
PHỤ LỤC E: TẤT CẢ NHIỄM SẮC THỂ 179
PHẦN LÝ LỊCH TRÍCH NGANG 180
QUÁ TRÌNH ĐÀO TẠO 180
Trang 11DANH MỤC BẢNG BIỂU
Bảng 1.1 Bố cục của luận văn 3
Bảng 2.1 Các nghiên cứu ứng dụng điều độ máy song song trong nhà kho 7
Bảng 3.1 Dữ liệu lấy hàng thực tế 16
Bảng 5.1 Ví dụ về cơ chế mã hóa 26
Bảng 6.1 Tóm tắt thơng tin các tập dữ liệu đầu vào 37
Bảng 6.2 Mẫu Bảng dữ liệu sản phẩm 39
Bảng 6.3 Mẫu Bảng dữ liệu về danh sách hàng 39
Bảng 6.4 Mẫu Bảng chứa dữ liệu chi tiết về hàng hóa trong danh sách hàng 39
Bảng 6.5 Bảng dữ liệu năng lực thang máy 39
Bảng 6.6 Trình tự điều độ khối hàng vào thang máy - tập dữ liệu 1 40
Bảng 6.7 Trình tự điều độ khối hàng vào thang máy - tập dữ liệu 2 40
Bảng 6.8 Tóm tắt xác định điều kiện dừng và số lần lặp 43
Bảng 6.9 Kết quả kiểm thử với tập dữ liệu 1 – giữa các lần lặp 45
Bảng 6.10 Kết quả kiểm thử với tập dữ liệu 1 - so sánh với giải pháp kinh nghiệm 46
Bảng 6.11 Trình tự điều độ khối hàng vào thang máy đề xuất cho tập dữ liệu 1 49
Bảng 6.12 Kết quả kiểm thử với tập dữ liệu 2 – giữa các lần lặp 50
Bảng 6.13 Kết quả kiểm thử với tập dữ liệu 2 - so sánh với giải pháp kinh nghiệm 50
Trang 12DANH MỤC HÌNH ẢNH
Hình 2.1 Các chức năng cơ bản của một nhà kho 5
Hình 3.1 Quy trình xuất hàng 14
Hình 3.2 Tỷ lệ trung bình hai thành phần thời gian của quá trình lấy hàng 17
Hình 5.1 Lưu đồ Khối Mã hóa và Khởi tạo quần thể ban đầu 28
Hình 5.2 Lưu đồ Khối Chọn lọc 30
Hình 5.3 Ví dụ phương pháp order crossover 32
Hình 5.4 Lưu đồ Khối Trao đổi chéo 33
Hình 5.5 Lưu đồ Khối Đột biến 36
Hình 6.1 So sánh giá trị hàm mục tiêu giữa giải pháp của giải thuật và giải pháp kinh nghiệm – tập dữ liệu 1 47
Hình 6.2 So sánh giá trị độ thích nghi giữa giải pháp của giải thuật và giải pháp kinh nghiệm – tập dữ liệu 1 48
Hình 6.3 So sánh giá trị hàm mục tiêu giữa giải pháp của giải thuật và giải pháp kinh nghiệm – tập dữ liệu 2 52
Trang 13DANH MỤC TỪ VIẾT TẮT
VIẾT TẮT TỪ VIẾT TẮT DIỄN GIẢI
B2B Business-to-Business
Dùng đê chỉ chung các giao dịch thương mại giữa các doanh nghiệp với nhau
NST Nhiễm sắc thể Cấu trúc di truyền cơ bản trong giải thuật di truyền
SKU Stock-Keeping-Unit Đơn vị lưu trữ hàng hóa trong kho
SLA Service-Level-Agreement
Trang 14Chương 1: GIỚI THIỆU 1.1 ĐẶT VẤN ĐỀ
Theo nghiên cứu của [1], thuê ngoài (outsourcing) đã trở thành chiến lược kinh doanh quan trọng trên phạm vi toàn cầu trong những thập kỷ gần đây, và vai trò quan trọng của quản lý chuỗi cung ứng đã tăng lên đáng kể kể từ giữa những năm 1990 Theo nghiên cứu của [2], nhà kho nắm giữ những vai trò chiến lược như đạt được thời gian chu kỳ ngắn hơn, lượng tồn kho ít hơn, chi phí thấp hơn và dịch vụ khách hàng tốt hơn Như vậy, việc thuê kho ngoài để lưu trữ và quản lý vật tư là một xu hướng ngày càng trở nên quan trọng và phổ biến trong các hoạt động của chuỗi cung ứng toàn cầu
Nghiên cứu [3] chỉ ra rằng: quá trình lấy hàng (order-picking) chiếm khoảng 55% chi phí vận hành nhà kho Vì vậy, đây là một quá trình đáng quan tâm cải tiến để nâng cao hiệu quả vận hành của các kho thuê ngồi, vì chất lượng của q trình lấy hàng sẽ ảnh hưởng lớn đến cạnh tranh về giá bán dịch vụ của các kho này Một trong những vấn đề phổ biến trong vận hành kho nói chung và quá trình lấy hàng nói riêng là tranh chấp sử dụng nguồn lực Kho Tây Nam (T&C) khơng nằm ngồi hiện trạng này Cụ thể, thời gian diễn ra quá trình lấy hàng ở kho T&C đang gặp phải vấn đề về tranh chấp sử dụng nguồn lực thang máy trong q trình xuất hàng, đây chính là vấn đề sẽ được tập trung nghiên cứu trong luận văn
Điều độ công việc là một trong những yếu tố quan trọng quyết định đến khối lượng công việc cần phải làm Việc điều độ công việc sẽ quyết định các yếu tố công việc sẽ được làm vào lúc nào, với khối lượng công việc bao nhiêu, và sử dụng nguồn lực như thế nào Điều độ giúp giải quyết các vấn đề như giảm thiểu thời gian chờ đợi của khách hàng, thời gian vận hành, đồng thời sử dụng hiệu quả các nguồn lực của doanh nghiệp
Trang 15ví dụ: một trạm xăng có thể phục vụ nhiều xe cùng một lúc tại các trụ xăng và khu vực dịch vụ của ngân hàng có thể phục vụ nhiều khách hàng cùng một lúc Vấn đề tranh chấp sử dụng thang máy xảy ra ở kho T&C xảy ra trên các thang máy giống nhau và các thang máy này có thể cùng lúc vận chuyển hàng hóa, nên vấn đề hồn tồn có thể quy về bài tốn điều độ máy song song
Hiện tại ở nhà kho nơi tác giả thực hiện nghiên cứu này, do tác động của các chương trình khuyến mãi của các khách hàng thương mại điện tử, khối lượng cơng việc của q trình xuất hàng tăng nhanh chóng, đặc biệt vào các mùa kích cầu lớn trong năm (gọi là các “chiến dịch”) Tình trạng này dẫn đến xảy ra tranh chấp sử dụng nguồn lực thang máy giữa các nhóm xuất hàng phụ trách các danh sách hàng (list) khác nhau Kết quả là, thời gian của rất nhiều danh sách hàng (định lượng cụ thể trong chương 3) bị kéo dài do thành phần thời gian ở thang máy lớn, ảnh hưởng cả chất lượng dịch vụ lưu kho và dịch vụ vận tải công ty Nhận thấy sự cấp thiết của một giải pháp cho vấn đề này, tác giả đã cố gắng xây dựng một giải thuật điều độ ở dạng giải thuật di truyền (genetics algorithm) nhằm cực tiểu hóa tổng thời gian trễ (tardiness) của các danh sách hàng, từ đó nâng cao uy tín chất lượng dịch vụ của cơng ty
Vì những lý do nêu trên, luận văn sẽ tập trung giải quyết vấn đề tranh chấp sử dụng nguồn lực thang máy ở kho bằng một giải thuật điều độ máy song song phù hợp, hướng đến cực tiểu thời gian trễ của quá trình lấy hàng sau khi áp dụng giải thuật vào thực tế
1.2 MỤC TIÊU NGHIÊN CỨU
Trang 161.3 PHẠM VI VÀ GIỚI HẠN NGHIÊN CỨU
Luận văn được thực hiện trong phạm vi thành phần thời gian tại thang máy của quá trình lấy hàng ở một kho 3PL Luận văn này chưa xem xét đến các yếu tố ngẫu nhiên, bất định
1.4 BỐ CỤC LUẬN VĂN
Bố cục của luận văn như được trình bày trong bảng 1.1
Bảng 1.1 Bố cục của luận văn
CHƯƠNG TÊN CHƯƠNG NỘI DUNG CHƯƠNG
1 Giới thiệu
Sự cần thiết của đề tài luận văn đối với vận hành của doanh nghiệp, cũng như mục tiêu, phạm vi và giới hạn nghiên cứu và bố cục của luận văn
2 Cơ sở lý thuyết và phương pháp luận
Trình bày những cơ sở lý thuyết được sử dụng trong luận văn, điểm qua nghiên cứu có liên quan đến đề tài của luận văn và trình bày phương pháp luận của luận văn
3
Phân tích đối tượng nghiên cứu và phát biểu vấn đề
Giới thiệu doanh nghiệp, giới thiệu đối tượng nghiên cứu, phân tích hiện trạng của đối tượng nghiên cứu, xác định vấn đề, nguyên nhân gốc rễ, đề xuất giải pháp sơ bộ Từ đó phát biểu vấn đề
4 Mơ hình hóa bài tốn
Mơ hình hóa bài tốn cần giải quyết ở dạng mơ tả bằng lời và dạng tốn học
5 Ứng dụng giải thuật di truyền
Trang 17CHƯƠNG TÊN CHƯƠNG NỘI DUNG CHƯƠNG
6 Kiểm thử giải pháp
Sử dụng các tập dữ liệu với các kích cỡ khác nhau để kiểm thử giải pháp, kết luận hiệu quả cải tiến của giải pháp
7 Kết luận và kiến nghị
Trang 18Chương 2: CƠ SỞ LÝ THUYẾT VÀ PHƯƠNG PHÁP LUẬN 2.1 CƠ SỞ LÝ THUYẾT
2.1.1 Quá trình lấy hàng
Lấy hàng (order-picking) là q trình giải phóng sản phẩm từ khu vực lưu trữ để đáp ứng nhu cầu cụ thể của khách hàng [4]
Vị trí của lấy hàng (pick) trong vận hành kho thể hiện như trên hình 2.1; các hoạt động còn lại bao gồm: nhận hàng (receive), cất hàng (put-away), lưu trữ (storage), đóng gói – vận chuyển (pack – ship)
Hình 2.1 Các chức năng cơ bản của một nhà kho
(nguồn: [3])
Về mặt thơng tin, trước q trình lấy hàng, hệ thống thông tin quản lý kho (warehouse management system – WMS) đối chiếu lại với lượng tồn kho sẵn có và xác định các thiếu hụt nếu có Thêm vào đó, WMS sẽ tổ chức lại yêu cầu lấy hàng để phù hợp với mặt bằng Quá trình này bao gồm việc tạo ra các dòng lấy hàng (pick line) thể hiện rõ vị trí lấy hàng, số lượng cần lấy và đơn vị đo của sản phẩm, và gộp các dòng lấy hàng vào các danh sách lấy hàng (pick-list), tất cả phải đảm bảo người lấy hàng (picker) di chuyển một cách dễ dàng và tiết kiệm Sau khi diễn ra các giai đoạn trên, danh sách lấy hàng được gửi đến người lấy hàng [3]
Trang 19 Lấy hàng rời rạc (discrete order picking): mỗi người lấy hàng lấy đầy đủ các sản phẩm của một đơn hàng trong mỗi hành trình
Lấy hàng theo lơ (batch picking): mỗi người lấy hàng lấy một nhóm nhiều đơn hàng cùng nằm trên một dãy kệ trong mỗi hành trình, những sản phẩm giống nhau giữa các đơn hàng sẽ được lũy tích số lượng và được chia lại vào các đơn hàng sau khi lấy hàng
Lấy hàng theo khu vực (zone picking): tổng nhu cầu lấy hàng sẽ được phân chia vào các khu vực lưu trữ khác nhau, mỗi khu do một người lấy hàng phụ trách Người lấy hàng lấy tất cả những sản phẩm thuộc khu vực của mình, những sản phẩm sau đó sẽ được phân chia vào các đơn hàng theo đúng yêu cầu của khách hàng
Lấy hàng theo lượt (wave picking): các đơn hàng được gộp thành các nhóm, mỗi nhóm sẽ được lấy vào một khung thời gian nhất định trong ngày, theo hình thức của phương pháp lấy hàng rời rạc
Bài tốn được giải quyết trong luận văn có đối tượng nghiên cứu là một quá trình lấy hàng rời rạc
2.1.2 Bài toán điều độ máy song song
Bài tốn điều độ máy song song thường có dạng: n công việc độc lập (1; 2; 3; …; n) được thực hiện trên m máy tương tự nhau (1; 2; 3; …; m) Hàm mục tiêu phổ biến
của bài toán này là thời gian trễ Thời gian trễ được định nghĩa như sau:
Nếu công việc trễ thì thời gian trễ là độ vượt của thời điểm hoàn thành so với thời điểm tới hạn mong muốn;
Nếu cơng việc khơng trễ thì thời gian trễ bằng 0
Trang 20Bảng 2.1 Các nghiên cứu ứng dụng điều độ máy song song trong nhà kho NGHIÊN CỨU HÀM MỤC TIÊU BIẾN QUYẾT ĐỊNH RÀNG BUỘC [5] Tổng thời gian hoàn thành của các công việc
Chuỗi công việc trên các “máy”
Máy chưa sẵn sàng chưa đến khi hoàn thành thao tác unloading;
Mỗi công việc được điều độ duy nhất 1 lần;
Mỗi máy chỉ được thực hiện 1 công việc tại 1 thời điểm [6] Cực tiểu tổng thời gian trễ có trọng số và sự tiêu thụ năng lượng Biến nhị phân gán công việc vào máy với tham số tốc độ chạy kèm theo Thời gian bắt đầu mỗi công việc trên máy
Mỗi công việc được điều độ duy nhất 1 lần;
Mỗi máy chỉ được thực hiện 1 công việc tại 1 thời điểm
[7] Cực tiểu tổng thời gian trễ
Chuỗi công việc trên các “máy”
Mỗi công việc được điều độ duy nhất 1 lần;
Mỗi máy chỉ được thực hiện 1 công việc tại 1 thời điểm
Trang 21 Hàm mục tiêu là cực tiểu tổng thời gian trễ hoặc tổng thời gian hoàn thành; Biến quyết định là chuỗi công việc được thực hiện trên các “máy” hoặc
biến nhị phân gán công việc với “máy”;
Ràng buộc đảm bảo tất cả công việc được điều độ, cũng như “máy” không thực hiện cùng lúc hai công việc
Các yếu tố thường gặp vừa nêu sẽ được áp dụng trong q trình mơ hình hóa bài tốn của luận văn
2.1.3 Giải thuật di truyền
Trang 222.2 CÁC NGHIÊN CỨU LIÊN QUAN
Chaudhry, I A., & Elbadawi, I A (2017) Minimisation of total tardiness for identical parallel machine scheduling using genetic algorithm Sādhanā, 42(1), 11-21
Bài báo này xem xét việc giảm thiểu tổng thời gian trễ cho một tập hợp công việc trên một tập hợp các máy song song Phương pháp tiếp cận được chọn là giải thuật di truyền (GA) Hai bài tốn có 20 và 25 cơng việc, có số máy song song lần lượt bằng 2, 4, 6, 8 và 10 được giải theo cách tiếp cận đề xuất Mỗi tổ hợp số lượng cơng việc và máy móc bao gồm 125 bài toán được tạo ngẫu nhiên dựa trên mơ hình tốn
Sheremetov, L., Martínez-Moz, J., & Chi-Chim, M (2018) Two-stage genetic algorithm for parallel machines scheduling problem: Cyclic steam stimulation of high viscosity oil reservoirs Applied Soft Computing, 64, 317-330
Nghiên cứu [9] xem xét bài tốn phân cơng tối ưu các máy phát hơi nước như một bài toán điều độ máy song song Tổng thời gian trễ được sử dụng làm mục tiêu Giải thuật được đề xuất là một dạng giải thuật di truyền và được thử nghiệm trên tập dữ liệu thực từ tài nguyên mỏ dầu nằm ở đầm lầy ven biển của Vịnh Mexico
Adan, J (2022) A hybrid genetic algorithm for parallel machine scheduling with setup times Journal of Intelligent Manufacturing, 33(7), 2059-2073
Trang 232.3 PHƯƠNG PHÁP LUẬN
Phương pháp luận của luận văn dựa trên phương pháp “CDIO”, được thực hiện lần đầu ở Viện Công nghệ Massachusets (Mỹ) vào đầu những năm 1990 Theo đó, phương pháp luận của luận văn sẽ bao gồm các giai đoạn chính:
“C” = Conceive : Hình thành ý tưởng “D” = Design : Thiết kế ý tưởng “I” = Implement : Thực hiện
“O” = Operation : Vận hành
Cụ thể, thiết kế chi tiết của phương pháp luận có tất cả 10 bước, phân chia vào các giai đoạn “C”, “D”, “I”, “O”, như trình bày sau đây
Giai đoạn “C” – Hình thành ý tưởng, gồm các bước:
1 Đặt vấn đề: Dẫn chứng những thông tin đáng tin cậy và lập luận để thể
hiện sự cần thiết của đề tài luận văn
2 Phân tích đối tượng nghiên cứu và xác định bài toán: Phân tích đối tượng
nghiên cứu, xác định vấn đề cần quan tâm theo quan điểm của các bên liên quan, xác định nguyên nhân gốc rễ của vấn đề và hình thành giải pháp sơ bộ cho bài tốn
3 Phát biểu vấn đề: Phát biểu một cách đầy đủ về vấn đề, cung cấp một bức
tranh toàn diện về khoảng cách giữa trạng thái hiện tại (hiện trạng) và trạng thái mong muốn (kỳ vọng/ mục tiêu)
Giai đoạn “D” – Thiết kế ý tưởng:
4 Phát triển giải pháp: Dựa trên các nghiên cứu đáng tin cậy, căn cứ vào
Trang 24Giai đoạn “I” – Thực hiện:
5 Hình thành mơ hình tốn: Mơ hình tốn được hình thành để phản ánh bài
toán thực tế, với những giả sử phù hợp
6 Nghiên cứu và lựa chọn giải thuật: Thực hiện nghiên cứu, phân tích, lựa
chọn giải thuật phù hợp với mơ hình tốn cũng như hoàn cảnh của đối tượng nghiên cứu
7 Thu thập và xử lý những dữ liệu liên quan: Dựa trên mơ hình tốn và
giải thuật, xác định các dữ liệu cần thiết, sau đó xử lý dữ liệu để đưa về dạng phù hợp (các “template”) nhằm tạo đầu vào tương thích với đoạn mã lập trình
8 Lập trình và kiểm tra: Sử dụng dữ liệu quá khứ để xây dựng và kiểm tra
đoạn mã lập trình thực thi giải thuật; và thực hiện hiệu chỉnh mơ hình, giải thuật, hoặc đoạn mã lập trình nếu cần thiết cho đến khi đạt được các mục tiêu đề ra cũng như đảm bảo dữ liệu đầu ra phản ánh đúng thực tế vận hành
Giai đoạn “O” – Vận hành:
9 Đánh giá hiệu quả của giải pháp: Đánh giá xem giải pháp giúp cải thiện
tình trạng vận hành tốt đến mức độ nào thơng qua một số chỉ số cụ thể, có
liên quan đến mục tiêu đã đặt ra
10 Kết luận và kiến nghị: Kết luận về kết quả đạt được, đưa ra những khuyến
Trang 25Chương 3: PHÂN TÍCH ĐỐI TƯỢNG NGHIÊN CỨU VÀ PHÁT BIỂU VẤN ĐỀ
3.1 GIỚI THIỆU CÔNG TY
T&C Logistics là đơn vị cung cấp dịch vụ xử lý và vận chuyển đơn hàng đa kênh, đa nền tảng T&C lưu kho, đóng gói và vận chuyển những đơn đặt hàng của các khách hàng thông qua mạng lưới kho bãi và đối tác giao nhận trên toàn quốc Lợi thế cạnh tranh mà công ty hướng tới là đáp ứng các chuẩn dịch vụ nghiêm ngặt đã cam kết với từ khách hàng
(Nguồn: dựa trên trang web công ty https://tnclog.vn/index.html)
3.2 PHÂN TÍCH ĐỐI TƯỢNG NGHIÊN CỨU VÀ XÁC ĐỊNH VẤN ĐỀ
Trang 26QUY TRÌNH XUẤT HÀNG
Khách hàngNhóm Dữ liệuNhóm Tồn khoNhóm Kiểm tra
Bắt đầuYêu cầu xuất hàngTạo lệnh xuất hàngHỗ trợ tạo lệnh xuất hàngPhiếu xuất khoTạo phân công lấy hàng
Picking-list Triển khai
lấy hàngDi chuyển hàng bằng thang máyTập kết hàngYêu cầu dịch vụ (SLA)Kiểm tra ngoại quan và kiểm đếmGhi nhận kết quả kiểm tra
Trang 27Hình 3.1 Quy trình xuất hàng
Khi phân tích ảnh hưởng thời gian của thời gian tại thang máy lên toàn bộ thời gian của quá trình xuất hàng (bao gồm khơng những q trình lấy hàng của Nhóm Tồn kho mà cả q trình xử lý dữ liệu của Nhóm Dữ liệu và q trình kiểm đếm của Nhóm Kiểm tra), tác giả nhận thấy chỉ cần phân tích ảnh hưởng ở những danh sách hàng có tổng lượng hàng cần lấy lớn Nguyên nhân, dựa trên thực tế vận hành, là do với những danh sách hàng có tổng lượng hàng nhỏ, cho dù thời gian ở thang máy có lớn thì thời gian kiểm đếm của nhóm Kiểm tra lại rất nhỏ nên khơng có khả năng xảy ra vi phạm cam kết thời gian với khách hàng Như vậy, dữ liệu thời gian của những danh sách hàng có lượng hàng lớn sẽ được phân tích thay vì tồn bộ dữ liệu của các danh sách hàng Tác giả quy ước:
Đối với hàng xuất nguyên kiện (gọi tắt là “hàng kiện”): danh sách hàng có lượng hàng lớn khi tổng lượng hàng từ 10 kiện trở lên;
Đối với hàng xuất cần phải chia nhỏ (gọi tắt là “hàng xá”): danh sách hàng có lượng hàng lớn khi tổng lượng hàng từ 35 đơn vị lưu trữ (Stock-Keeping-Unit, hay gọi tắt là “SKU”) trở lên (cho dù SKU sử dụng đơn vị tính nào)
Trang 28 Các dữ liệu gốc truy xuất từ WMS bao gồm: thời gian bắt đầu triển khai
lấy hàng ở cột ReadyToPickDate (DATA), thời gian hoàn thành triển khai lấy hàng ở cột PickedDate (DATA), thời gian hàng đến địa điểm tập kết sau khi ra khỏi thang máy ở cột CheckingDate (DATA);
Cột Hàng kiện/xá thể hiện quy cách đóng gói của hàng hóa khi xuất theo
nguyên tắc đã nêu ở Chương 3 (“K” = hàng kiện, “X” = hàng xá”);
Cột Tổng số lượng là tổng lượng hàng hóa của tất cả các SKU trong danh
sách hàng, tính theo đơn vị lưu trữ riêng của từng SKU;
Cột Hàng kiện/xá và cột Tổng số lượng chứng minh các danh sách hàng
được chọn thuộc đúng nhóm đơn hàng có số lượng lớn theo mơ tả ở chương 3;
Giá trị ở cột Thời gian triển khai lấy hàng được tính bằng khoảng cách về thời gian tính bằng phút giữa giá trị ở cột ReadyToPickDate (DATA) và giá trị ở cột PickedDate (DATA);
Giá trị ở cột Thời gian thang máy được tính bằng khoảng cách về thời gian tính bằng phút giữa giá trị ở cột PickedDate (DATA) và giá trị ở cột CheckingDate (DATA);
Trang 30Kết quả thu được về tỷ lệ trung bình hai thành phần thời gian của quá trình lấy hàng như ở Hình 3.2
Hình 3.2 Tỷ lệ trung bình hai thành phần thời gian của quá trình lấy hàng
Dựa trên Hình 3.2, có thể thấy thời gian chờ đợi và vận chuyển tại thang máy chiếm tỷ trọng rất lớn trong thời gian lấy hàng (79.22%) Vì vậy, nếu thời gian chờ đợi và vận chuyển hàng tại thang máy được rút ngắn, thời gian lấy hàng sẽ được rút ngắn đáng kể, từ đó giảm tổng thời gian xuất hàng của các danh sách hàng có lượng hàng lớn, hạn chế việc vi phạm cam kết dịch vụ với phía khách hàng
3.3 XÁC ĐỊNH NGUYÊN NHÂN VÀ ĐỀ XUẤT GIẢI PHÁP
Dựa trên thực tế vận hành mà tác giả đã quan sát được ở kho, có 3 ngun nhân chính dẫn đến thời gian chờ đợi và vận chuyển tại thang máy lớn:
[1] Thang máy hư đột ngột;
[2] Chưa tối ưu được năng lực của thang máy;
[3] Tranh chấp sử dụng thang máy giữa các nhóm xuất hàng do chưa có hướng dẫn về thứ tự đưa hàng vào thang máy
20.78%
79.22%
Trang 31Nguyên nhân [1] là nguyên nhân mang tính rủi ro, trong phạm vi hoạt động thường ngày của kho khó mà kiểm sốt được Vì vậy, giải pháp được thiết kế trong luận văn này sẽ tập trung giải quyết các nguyên nhân [2] và [3] Thêm vào đó, do ưu tiên của giải pháp đang hướng đến cắt giảm thời gian của quá trình lấy hàng nhằm đáp ứng cam kết với phía khách hàng, nguyên nhân [3] sẽ được đặt ở ưu tiên cao hơn [2], ưu tiên [2] sẽ được đáp ứng dưới dạng một ràng buộc trong khi ưu tiên [3] sẽ đóng vai trị hàm mục tiêu
Theo đó, giải pháp được tác giả đề xuất là một lịch điều độ chi tiết việc sử dụng thang máy cho các khối hàng khác nhau của các danh sách hàng, có bao gồm cả trình tự các đợt vận chuyển hàng của thang máy, trong cùng một ca sao cho năng lực thang máy được khai thác tối ưu nhất có thể Hàm mục tiêu của giải pháp, áp dụng cơ sở lý thuyết về bài toán điều độ máy song song đã trình bày ở chương 2, là cực tiểu tổng thời gian trễ của tất cả các danh sách hàng
3.4 PHÁT BIỂU VẤN ĐỀ
Trang 32Chương 4: MƠ HÌNH HĨA BÀI TỐN 4.1 CÁC ĐỊNH NGHĨA
Tác giả thực hiện mơ hình hóa bài tốn dựa trên một số định nghĩa sau:
Khối hàng: là đơn vị nhỏ nhất để quản lý lượng hàng hóa di chuyển trong thang
máy trong luận văn này, khối hàng trong luận văn có thể đồng nhất với khối hàng thực tế ở kho hoặc khơng; mỗi khối hàng có thời điểm bắt đầu và thời điểm kết thúc quá trình di chuyển ở khu vực thang máy, và được quy định bởi 4 yếu tố:
o Danh sách hàng mà nó thuộc về; o SKU của khối hàng;
o Thang máy mà khối hàng được gán vào;
o Lần chạy thang máy mà khối hàng được gán vào sau khi đã được chỉ định thang máy;
Lần chạy thang máy: là sự di chuyển giữa các tầng lầu trước khi việc chứa thêm một khối hàng làm cho thang máy t bị vượt quá năng lực về khối lượng hoặc thể tích, mỗi lần chạy thang máy đều có thời điểm bắt đầu và thời điểm kết thúc; Thời điểm hoàn thành của danh sách hàng (hay giá trị “makespan” của danh
sách hàng): là thời điểm mà khối hàng cuối cùng có chứa hàng của một danh
sách hàng ra khỏi thang máy (nên cũng là thời điểm lần chạy thang máy cuối cùng chứa hàng của danh sách hàng đó kết thúc)
4.2 CÁC GIẢ SỬ
Hàng ln sẵn có ở khu vực thang máy;
Thời gian di chuyển của một pallet hàng ở khu vực thang máy là như nhau cho mỗi khối hàng;
Thời gian hành trình của thang máy là như nhau cho mỗi lần chạy thang máy
4.3 CÁC THAM SỐ, CHỈ SỐ VÀ TẬP HỢP
Trang 33 s: chỉ số của SKU;
S: tập hợp các SKU trong kho; l: chỉ số của danh sách hàng; L: tập hợp các danh sách hàng t: chỉ số thang máy;
T: tập hợp các thang máy dùng vận chuyển hàng; D: thời gian thang máy di chuyển giữa các tầng; nt: thứ tự điều độ của khối hàng trong thang máy t;
Nt: số lượng lần chạy của thang máy t trong ca;
Dqls: số lượng yêu cầu của SKU s trên danh sách hàng l; ms: trọng lượng của SKU s;
vs: thể tích của SKU s;
pkgs: hệ số quy cách đóng gói (khi xuất hàng) của SKU s dùng quy đổi từ số lượng
theo đơn vị trên danh sách hàng sang số lượng pallet hàng (vì hàng di chuyển vào thang máy theo pallet)
Cmt, Cvt: năng lực trọng lượng, năng lực thể tích của thang máy t
4.4 HÀM MỤC TIÊU, BIẾN QUYẾT ĐỊNH, RÀNG BUỘC
Hàm mục tiêu của bài toán là: Cực tiểu Tổng thời gian trễ (Tardiness) của thành
phần thời gian tại thang máy của các danh sách hàng, được trình bày trong cơng thức
(4.1) = ∈với = ( ; 0) (4.1) Trong công thức (4.1):
Trang 34 Cách xác định thời điểm hoàn thành của danh sách hàng l (hay giá trị “makespan”)
sẽ được nêu chi tiết trong phần 4.5 Biến quyết định:
: Biến thể hiện lượng hàng của một khối hàng
Ví dụ: Nếu thang máy 1 lần lượt vận chuyển các khối hàng sau trong lần chạy thang máy
1:
o 200 SKU 1 của danh sách hàng 1; o 50 SKU 2 của danh sách hàng 2; o 120 SKU 2 của danh sách hàng 3
thì các biến quyết định sẽ tương ứng nhận các giá trị là: o Q1111 = 200;
o Q1222 = 50; o Q1332 = 120
Ràng buộc:
Với mỗi thang máy, tổng trọng lượng và thể tích hàng trong một lần chạy thang máy không vượt quá năng lực của thang máy Các ràng buộc về năng lực được thể hiện ở các công thức (4.2) và (4.3) ( × ) ≤ ∀, ,(4.2) ( × ) ≤ , , ∀ (4.3)
Trang 35=
,
∀( , ) (4.4)
4.5 CÁCH XÁC ĐỊNH THỜI ĐIỂM HỒN THÀNH DANH SÁCH HÀNG
Bước 1: Tính thời gian di chuyển đến thang máy của mỗi khối hàng dựa trên lượng hàng của khối hàng
Thời gian di chuyển đến thang máy của khối hàng được tính dựa trên lượng hàng của khối hàng và quy cách đóng gói (quy đổi lượng hàng về pallet hàng theo SKU) của khối hàng theo công thức (4.5)
= × 0.5 (4.5)
(đơn vị: phút; trong đó 0.5 phút là thời gian khơng đổi để một pallet hàng di chuyển đến
thang máy, như đã trình bày trong giả sử)
Bước 2: Tính thời điểm bắt đầu và thời điểm kết thúc của lần chạy thang máy trên mỗi thang máy
Tại thời điểm khối hàng đầu tiên k1 được gán vào thang máy t1 = 1, khối hàng này
thuộc về lần chạy nt11 = 1, đồng thời thời điểm của lần chạy thang máy đầu tiên
B11 và khối hàng đầu tiên B11ls được quy ước bằng 0, như trình bày ở cơng thức (4.6)
B11 = B11ls = 0 ∀( , ) (4.6)
Tại thời điểm các khối hàng k kế tiếp được gán vào thang máy t ở lần chạy thang máy thứ n, thời điểm bắt đầu của lần chạy thang máy nt, , cũng là thời điểm
kết thúc của lần chạy thang máy (nt – 1) ( ), được tính bằng cách lấy thời
Trang 36các khoảng thời gian di chuyển của các khối hàng đến thang máy, và sau đó cộng 2 lần hành trình thang máy, như trình bày ở cơng thức (4.7)
= ( )= ( )+ max
( , ) ( ) + 2 0.75 ∀( , ) (4.7)
(đơn vị: phút; trong đó 0.75 phút thời gian khơng đổi của một hành trình thang máy, như
đã trình bày trong giả sử)
Bước 3: Gán thời điểm kết thúc của các khối hàng bằng chính thời điểm kết thúc của lần chạy thang máy của thang máy mà khối hàng đã được gán vào
Nếu khối hàng k được vận chuyển trong lần chạy thứ nt của thang máy t thì thời
điểm kết thúc lần chạy thang máy này cũng là thời điểm kết thúc của khối hàng k ở khu
vực thang máy, như trình bày ở cơng thức (4.8)
= = ∀ ∈ (4.8)
(trong đó là tập hợp các khối hàng được vận chuyển trong lần chạy thứ nt của thang
máy t)
Bước 4: Xác định thời điểm kết thúc của danh sách hàng là thời điểm kết thúc lần chạy thang máy cuối cùng của thang máy cuối cùng vận chuyển hàng của danh sách hàng đó
Vì với mỗi danh sách hàng, khối hàng được hoàn thành cuối cùng sẽ quy định thời điểm kết thúc của danh sách hàng, nên thời điểm kết thúc của danh sách sẽ được xác định theo công thức (4.9)
= max
∈ (4.9)
Trang 37Chương 5: ỨNG DỤNG GIẢI THUẬT DI TRUYỀN
Theo [11], khi sử dụng GA, các thành phần cần xem xét bao gồm: Cách khởi tạo quần thể ban đầu (initial population);
Cơ chế chọn lọc (selection);
Toán tử trao đổi chéo (cross-over); Toán tử đột biến (mutation); Điều kiện dừng (termination)
Tác giả sẽ dựa trên kết quả này để xây dựng các thành phần cho giải thuật di truyền được sử dụng trong luận văn Ngồi ra, một cơ chế mã hóa sẽ được thiết lập để bộ mã di truyền của toàn bộ giải thuật được thống nhất, và các thông tin trong mơ hình tốn ở chương 4 cũng sẽ được đảm bảo xuất hiện đầy đủ trong giải thuật ở chương 5
5.1 CƠ CHẾ MÃ HÓA
Thực tế vận hành ở kho sẽ được mã hóa theo cơ chế dưới đây để mơ hình bài tốn đã trình bày trong chương 4 có thể được chuyển đổi đầy đủ sang mơ hình di truyền trong giải thuật di truyền:
Mỗi lời giải trong mơ hình tốn sẽ được mã hóa thành một cá thể;
Mỗi khối hàng sẽ được mã hóa thành một nhiễm sắc thể, như vậy đảm
bảo nhiễm sắc thể là đơn vị di truyền của cá thể;
Mỗi khối hàng trong lời giải được đặc trưng bởi hai thông tin là lượng
hàng trong khối hàng và thang máy mà khối hàng được gán vào, mỗi
thông tin này được mã hóa thành một đoạn gen trên nhiễm sắc thể, như
Trang 38khối hàng trong một lần thang máy di chuyển, một thông tin di truyền quan
trọng khác được hình thành, đó là lần chạy thang máy
5.2 MÃ HÓA VÀ KHỞI TẠO QUẦN THỂ BAN ĐẦU
Quần thể ban đầu sẽ được khởi tạo ngẫu nhiên với số lượng cá thể nhất định theo cơ chế mã hóa đã trình bày, dựa trên tham khảo phương pháp mã hóa trong nghiên cứu của Chaudhry và Elbadawi (2017), gồm các bước như sau:
Bước 1: Xác định số lượng khối hàng Nk mà lượng hàng của một SKU s trong một danh sách hàng l có thể chia thành (dựa trên kinh nghiệm của người vận hành) Từ đó, với S là tập hợp các SKU có trong kho và L là tập
hợp các danh sách hàng trong ca, tổng số lượng khối hàng được tính theo cơng thức (5.1)
N = Nk × | | × | | (5.1)
Bước 2: Phân chia ngẫu nhiên lượng hàng của mỗi SKU trên mỗi danh sách hàng vào Nk khối hàng; nếu lượng hàng hết mà vẫn còn khối hàng
chưa phân chia, các khối hàng cịn lại sẽ có lượng hàng bằng 0 N khối hàng với lượng hàng tương ứng sẽ tạo thành N gen chứa thông tin lượng
hàng của NST Trong bước này, một số điểm được thiết kế để phù hợp thực tế vận hành:
o Quá trình phát số ngẫu nhiên sẽ tuân theo phân bố phù hợp với thực
tế của quy cách đóng gói SKU: phân bố của hàng kiện sẽ là phân
bố rời rạc, phân bố của hàng xá sẽ là phân bố liên tục;
Trang 39(việc này được thực hiện nhằm giảm khả năng một khối hàng được phân bổ quá nhiều hoặc quá ít);
Bước 3: Gán ngẫu nhiên một trong Nt thang máy cho mỗi khối hàng, nếu việc gán dẫn đến vi phạm về các ràng buộc năng lực (thể tích, khối lượng) thì gán khối hàng cho thang máy kế tiếp theo thứ tự Việc gán thang máy và kiểm tra năng lực cũng sẽ xác định lần chạy thang máy mà khối hàng tham gia theo đúng định nghĩa “lần chạy thang máy” đã trình bày ở chương 4
Ví dụ:
Trong ca có 2 danh sách hàng, thông tin trong 2 danh sách hàng này liên quan đến
2 SKU, Nk được chọn là 2, như vậy phương pháp mã hóa được thực hiện như sau:
Bước 1: Tổng số khối hàng là: 2 x 2 x 2 = 8
Bước 2: Giả sử danh sách hàng 1 yêu cầu 25 đơn vị SKU 1, còn danh sách
hàng 2 yêu cầu 100 SKU 1 và 10 SKU 2, kết quả phân chia ngẫu nhiên lượng hàng vào 8 khối hàng, hình thành đoạn gen chứa thông tin lượng hàng của NST, như ở cột “Lượng hàng” trong Bảng 5.1
Bước 3: Gán ngẫu nhiên thang máy (sau khi đã kiểm tra các ràng buộc về
khối lượng và thể tích trong cùng một lần chạy thang máy) cho từng khối hàng, hình thành đoạn gen chứa thơng tin thang máy của NST, như ở cột “Thang máy” của Bảng 5.1
Bảng 5.1 Ví dụ về cơ chế mã hóa
Khối hàng/ NST (*) Giá trị gen Thang máy
[1, 1, 1] 10 1
[1, 2, 2] 0 2
Trang 40Khối hàng/ NST (*) Giá trị gen Thang máy [1, 2, 4] 0 1 [2, 1, 5] 70 2 [2, 2, 6] 10 2 [2, 1, 7] 30 1 [2, 2, 8] 0 3
(*) [i, j, k] tương ứng với lượng hàng phân chia từ SKU i của danh sách hàng j vào khối hàng thứ k
Các quá trình mã hóa được lặp lại để tạo ra quần thể ban đầu với 10 cá thể, mỗi cá thể đều có số lượng nhiễm sắc thể đúng bằng số khối hàng