TỔNG QUAN
Giới thiệu vấn đề
1.1.1 Giới thiệu hệ thống AGV trên thế giới và ở Việt Nam
AGV là viết tắt cho cụm từ Automated Guided Vehicle, một phương tiện vận chuyển hàng hoá không người lái Tập hợp nhiều AGV được gọi là AGV và thuật ngữ này được giới thiệu lần đầu tiên vào năm 1955 [1] Khi AGV hoạt động cùng với nhau thực hiện công việc vận chuyển hàng hoá từ địa điểm này đến địa điểm khác thông qua mạng lưới giao thông thì chúng là một phần của hệ thống AGV Ngoài ra, hệ thống AGV còn có các thành phần khác như hệ thống điều khiển, hệ thống định vị, hệ thống sản xuất, lưu trữ,… [1]
Hình 1.1: Hệ thống AGV của SWISSLOG[2]
Báo cáo của Grand View Reseach [3] cho thấy thị trường AGV vào năm 2022 có giá trị 4,28 tỉ USD trên toàn thế giới và tỉ lệ tăng trưởng kép được kỳ vọng là 9,7% từ năm 2023 tới năm 2030 Trong 3 năm từ 2021 đến 2023, đã có nhiều doanh nghiệp ở nhiều ngành đã áp dụng hệ thống AGV vào hệ thống của họ Năm 2021, công ty AUDI AGV, một công ty sản xuất ô tô đã áp dụng AGV trong hệ thống sản xuất Cùng năm đó, công ty OTSAW Digital Pte.Ltd phát triển AGV để phục vụ cho mục đích chăm sóc sức khoẻ các bệnh nhân Vào năm 2022, một công ty bán lẻ tên là SAVE MART SUPER MARKET đã mở rộng khu vực giao hàng của mình khi sử dụng AGV của công ty Starship Trong thời gian gần đây, vào tháng 3 năm 2023, Swisslog Holding AGV đã giới thiệu phiên bản mới của hệ thống CarryPick, hệ thống di động lấy hàng và lưu trữ đến người với tính năng hướng dẫn xe chở hàng tự động
Vào tháng 12 năm 2022, Daifuku Co Ltd thông báo xây dựng nhà máy mới tại Hyderabad, Ấn Độ để sản xuất các giải pháp kho tự động Cũng trong tháng này, Seegrid Corporation và Koops Automation Systems đã hợp tác chiến lược để Koops tích hợp giải pháp Fleet CentralTM và robot di động Seegrid PalionTM Bastian Solutions, Inc đã giới thiệu giải pháp chọn lựa tự động SmartPick JBT Corporation đã mua lại Bevcorp để phát triển mô hình kinh doanh bền vững Ngoài ra, Toyota Material Handling Japan (YMHJ) đã ra mắt công nghệ xe nâng tự động sử dụng trí tuệ nhân tạo để tự động nhận diện vị trí và địa điểm, tạo ra tuyến đường di chuyển tự động.
Trên đây chỉ là một vài ví dụ về ứng dụng của AGV trong các ngành khác nhau
Hệ thống AGV được áp dụng rộng rãi trong nhiều ngành công nghiệp khác nhau như sản xuất, logistics, ô tô, chăm sóc sức khoẻ, thực phẩm vì khả năng nâng cao năng suất, giảm thiểu chi phí và khả năng thúc đẩy quy trình tự động hoá, công nghiệp hoá Khi các doanh nghiệp nhận ra được quá trình công nghiệp hoá tự động hoá là xu hướng phát triển, nhu cầu phát triển các giải pháp xử lý vật liệu và vận chuyển sẽ tăng theo và đây chính là cơ hội phát triển của thị trường AGV
3 Việt Nam thuộc khu vực châu Á – Thái Bình Dương, đây là khu vực có tốc độ phát triển thị trường lớn nhất[3] Nhưng thị trường AGV ở Việt Nam không phát triển vì nền công nghiệp ở đây còn non trẻ Nền công nghiệp của Việt Nam đang gặp rất nhiều thách thức, phụ thuộc vào vốn đầu tư nước ngoài, công nghệ kém, sản phẩm kém chất lượng và năng suất lao động thấp[5]
Mặc dù gặp nhiều thách thức và khó khăn nhưng Việt Nam định hướng phát triển theo hướng công nghiệp hoá, hiện đại hoá, mục tiêu tới năm 2030 cơ bản trở thành nước công nghiệp theo hướng hiện đại[5] Xu hướng tự động hoá, hiện đại hoá sẽ kéo theo sự phát triển các giáp pháp vận chuyển và xử lý vật liệu Vậy nên đây sẽ là một cơ hội để phát triển thị trường AGV ở Việt Nam Tại đây đã có một số công ty bắt đầu nghiên cứu phát triển AGV như IDEA group, INTECH group, ESATECH,… Các công ty này đã có các sản phẩm AGV và các hệ thống AGV hoàn thiện, góp phần phát triển thị trường ở Việt Nam
Hình 1.3: ESATECH AGV và IDEA AGV[6] [7]
Do nhu cầu gia tăng tự động hóa và hiện đại hóa tại Việt Nam, thị trường xe tự hành (AGV) được dự đoán sẽ phát triển mạnh mẽ AGV đóng vai trò quan trọng trong việc thúc đẩy quá trình chuyển đổi từ sản xuất thủ công sang bán tự động và tự động Đây chính là lý do khiến việc nghiên cứu và phát triển hệ thống AGV trở nên thiết yếu.
1.1.2 Các nhiệm vụ cơ bản và vấn đề tồn đọng của hệ thống AGV
Trong hệ thống AGV sẽ bao gồm 5 nhiệm vụ chính[8]: phân phối công việc, xác định đường đi, lập kế hoạch di chuyển, định vị và quản lý phương tiện Các công việc sẽ được hệ thống điều khiển phân phối cho các AGV trong trạng thái rảnh rỗi, sau đó chọn ra một con đường để vận chuyển hàng hoá
4 Trong quá trình vận chuyển, để tránh va chạm và kẹt cứng thì hệ thống cần phải hoàn thành tốt nhiệm vụ lập kế hoạch chuyển động cho tới khi AGV hoàn thành công việc được giao Trong lúc AGV đang vận hành thì các thành phần khác nhau trong hệ thống sẽ đảm nhiệm nhiệm vụ định vị và quản lý phương tiện
Hình 1.4: Quy trình làm việc chung của hệ thống AGV[8]
Dựa theo quy trình làm việc chung của hệ thống AGV được trình bày ở [8], sau khi AGV hoàn thành công việc, nó sẽ tiếp tục nhận công việc mới và lặp lại quy trình Trong trường hợp AGV không có được hệ thống điều khiển giao nhiệm vụ ngay tức khắc thì AGV sẽ chuyển về trạng thái rảnh[1] Lúc này, hệ thống điều khiển ra lệnh cho AGV đến một vị trí để đỗ và chờ công việc tiếp theo được phân phối Để giảm thời gian hàng hoá đợi AGV di chuyển từ vị trí đỗ tới địa điểm lấy hàng, vị trí đỗ của AGV cần được lựa chọn cân nhắc
Với lý do trên, đã có nhiều nghiên cứu và tiêu chí đánh giá để lựa chọn một vị trí bãi đỗ AGV hợp lý, nhằm giảm thiểu thời gian phản hồi của các AGV qua đó gián tiếp giảm thời gian hoàn thành nhiệm vụ Những cách giải quyết tiếp cận theo phương diện thống kê, tạo ra các chương trình linh hoạt hoặc dùng mô hình chuỗi Markov Các phương pháp trên khi ứng dụng cho các hệ có số lượng AGV cố định thì có thể xử lý được nhưng khi hệ thống AGV trở nên lớn và phức tạp thì cần có những giải thuật hiệu quả hơn để xử lý vấn đề[1]
Bên cạnh đó, theo dòng lịch sử, con người đã phát minh ra nhiều loại công cụ để xử lý các công việc đơn giản hơn Những công cụ này giúp con người thoả mãn các nhu cầu trong đời sống, bao gồm di chuyển, các ngành công nghiệp và tính toán Máy học là một trong số chúng[9] Đã có những nghiên cứu ứng dụng máy học để xác định vị trí đỗ AGV nhằm giảm thời gian hoàn thành nhiệm vụ
Các công trình nghiên cứu liên quan
Vào năm 1993, Egbelu đã chỉ ra rằng có rất nhiều nghiên cứu tập trung vào vấn đề thiết kế và điều khiển nhưng vấn đề xác định vị trí đỗ cho AGV lại được ít chú ý hơn so với các hướng nghiên cứu khác Trong nghiên cứu này, ông đã chỉ ra 3 hướng tiếp cận để giải quyết vấn đề: giảm thiểu thời gian phản hồi lớn nhất của hệ AGV, giảm thiểu thời gian phản hồi trung bình của hệ AGV và phân phối vị trí đỗ của các AGV đều trên khu vực hoạt động[10] Ngoài ra, có 3 nguyên tắc đỗ được nhắc đến đó là: nguyên tắc đỗ tập trung, nguyên tắc đỗ vòng lặp và nguyên tắc đỗ tại chỗ[10] Hình 1.5 mô tả một hệ thống AGV với bố cục vòng lặp, trong hệ thống này bao gồm một đường đi khép kín qua các trạm làm việc được đánh số từ 1 tới 10
Hình 1.5: Một hệ thống AGV với bố cục vòng lặp[10]
Khi áp dụng nguyên tắc đỗ tập trung, một khu vực sẽ được chọn để các AGV rảnh quay về Khi chọn nguyên tắc này, không quan trọng AGV đang ở đâu, AGV chuyển trạng thái từ làm việc sang rảnh rỗi sẽ quay về khu vực tập trung Trong trường hợp hệ thống AGV áp dụng nguyên tắc đỗ vòng lặp, trong hệ thống sẽ có một hoặc nhiều vòng lặp được xác định, khi AGV đổi trạng thái sẽ quay về một trong các vòng lặp này đợi tới khi được giao nhiệm vụ mới Còn khi áp dụng nguyên tắc đỗ tại chỗ, các AGV sau khi hoàn thành công việc sẽ đỗ ngay tại vị trí giao hàng và đợi tới khi nhận nhiệm vụ mới, nhưng có thể gây ra tình trạng kẹt cứng vì AGV rảnh chặn đường đi của AGV khác[1], [10]
6 Egbelu[10] nghiên cứu quy tắc đỗ vòng lặp Trong nghiên cứu này ông xem mọi vòng lặp đều tương đương với một bố cục hình tròn Khi tiếp cận theo hướng này, khoảng cách giữa các trạm làm việc không còn tính theo khoảng cách mà tính theo độ lớn của cung tròn Có 4 mô hình được giới thiệu, trong đó có hai mô hình đơn phương tiện, xem xét AGV di chuyển theo một hướng và hai hướng, hai mô hình còn lại xem xét trường hợp đa phương tiện và các phương tiện này di chuyển theo một chiều và hai chiều Nguyên lý cơ bản của các giải thuật được đề ra trong nghiên cứu này dựa trên mô hình toán, tính toán khoảng cách giữa các trạm theo độ lớn của cung tròn, chọn khoảng cách cung lớn nhất và chọn vị trí đỗ hợp lý sao cho giảm đi thời gian phản ứng tối đa của các phương tiện Hình 1.6 mô tả cách Egbelu xem xét đường đi khép kín ngẫu nhiên (a) tương đương với một đường tròn (b) Độ dài đường đi ở bố cục (a) bằng với chu vi đường tròn bán kính r ở bố cục (b)
Hình 1.6: Bố cục ngẫu nhiên(a) và bố cục tròn tương đương(b)[10]
Kim[11] nghiên cứu về vị trí đỗ dựa trên nguyên tắc đỗ vòng lặp, mục tiêu hướng tới đó là giảm thời gian phản hồi trung bình của hệ AGV Nguyên tắc cốt lõi mà Kim dùng tương tự với Egbelu, phân tích một vòng lặp thành bố cục đường tròn, được mô tả như trong hình 1.6 Sự khác biệt mà Kim mang tới đó là Kim xác lập công thức cho thời gian phản hồi trung bình từ một trạm làm việc tới các trạm làm việc khác Sau đó kiểm tra các giá trị thời gian phản hồi trung bình khi thay đổi vị trí đỗ Lúc này, thời gian phản hồi trung bình nhỏ nhất sẽ được chọn
7 Với cách tiếp cận tương tự như Kim, Lee và Ventura[12] nghiên cứu một mô hình động nhằm quy hoạch chỗ đỗ và hướng tới giảm thời gian phản hồi trung bình Ở đây, Lee và Ventura phát triển một thuật toán lập trình động để xác định các điểm dừng cho AGV trong vòng lặp đơn hướng và đa hướng, đồng thời giảm thiểu thời gian phản hồi trung bình có trọng số Thuật toán này phân chia các trạm làm việc thành các nhóm nhỏ hơn sao cho một AGV duy nhất phục vụ tất cả các trạm trong nhóm Dưới đây là ví dụ khi áp dụng thuật toán này Hình 1.7 mô tả bố cục làm việc của hệ thống AGV được áp dụng trong [12] Đây là một bố cục khép kín gồm 8 trạm làm việc Các công việc được chia vào 4 nhóm A, B,C,D với tính chất khác nhau Mỗi nhóm công việc được xác định một điểm đỗ trên đường đi sao cho thời gian phản hồi trung bình thấp nhất Mỗi AGV chỉ phục vụ một số trạm nhất định
Hình 1.7: Vị trí các điểm đỗ và trạm làm việc được[12]
Bảng 1.1: Các nhóm công việc được phân chia khi áp dụng giải thuật[12]
LOẠI CÔNG VIỆC CÔNG VIỆC/GIỜ ĐƯỜNG ĐI
8 Montoya-Torres[13] và các cộng sự đề xuất một công thức quy hoạch tuyến tính theo số nguyên để xử lý vấn đề thay vì sử dụng phương pháp tương tự hoá các vòng lặp thành bố cục hình tròn Mạng lưới giao thông được chia thành các khu vực và một số lượng AGV được sắp xếp vào trong các khu vực đó nhằm tối ưu thời gian phản hồi của hệ thống AGV Các thông tin về nhu cầu vận chuyển trong khu vực và cũng như hành vi của AGV được tổng hợp lại và dùng quy hoạch tuyến tính theo số nguyên để xử lý Mục tiêu của cách tiếp cận này là giảm thời gian phản hồi lớn nhất của AGV Trong đề tài của mình, Montoya – Torres và các cộng sự đã giới thiệu một bố cục nhà xưởng như hình 1.8 Nhà xưởng có kích thước 150×40(m 2 ), được chia thành 5 vùng từ vùng 1 tới vùng 5 Mỗi vùng có một số lượng AGV nhất định hoạt động trong vùng đó Tuỳ thuộc vào tình trạng và nhu cầu công việc của mỗi vùng mà số lượng AGV được sắp xếp trong mỗi vùng được chọn sao cho phù hợp nhất
Hình 1.8: Mạng lưới giao thông được chia thành các khu vực nhỏ hơn[13]
9 Các công trình nghiên cứu trên có điểm chung là nhắm tới giảm thiểu thời gian phản hồi tối đa hoặc là giảm thiểu thời gian phản hồi trung bình của hệ thống AGV Từ những nghiên cứu từ ngày đầu của Egbelu và Kim [10], [11] xem xét các vòng lặp như những bố cục hình tròn, Ventura[12] ứng dụng giải thuật động nhằm chọn vị trí đỗ AGV sao cho hợp lý tới Montoya-Torres[13] dùng phương pháp quy hoạch tuyến tính với số nguyên, đã có một sự phát triển trong các công cụ được ứng dụng để giải quyết vấn đề và những vấn đề không còn chỉ xem xét ở các mặt bằng vòng lặp đơn giản mà đã mở rộng ra đến những mạng lưới giao thông phức tạp trong ngành sản xuất Mặc dù vậy nhưng hướng tiếp cận này vẫn có những yếu điểm khi ứng dụng vào những mạng lưới giao thông phức tạp hơn, và số lượng AGV tăng lên sẽ dẫn tới gánh nặng về phần cứng Vậy nên cần hướng tiếp cận mới để giảm tải công việc cho phần cứng
Ventura[14] tìm hướng giải quyết vấn đề cho một mạng lưới giao thông phổ thông Công cụ được áp dụng đó là quy hoạch tuyến tính với hỗn hợp số nguyên cho 3 hướng tiếp cận: giảm thiểu thời gian phản hồi trung bình, giảm thiểu thời gian phản hồi tối đa, và giảm thiểu thời gian phản hồi tối đa khi có ràng buộc về thời gian phản hồi của xe Để hỗ trợ cho việc tính toán khi mạng lưới giao thông càng phức tạp thêm và tăng thêm số lượng xe thì Ventura đã đề xuất một thuật toán di truyền có thể áp dụng vào 3 hướng tiếp cận trên
○: Trạm giao/nhận hàng hoá □: Giao điểm của các đường đi
Hình 1.9: Hệ thống giao thông dạng lưới 6×7 (30 trạm) và 5×7 (35 trạm)[14]
Thuật toán di truyền được áp dụng vào mạng giao thông lưới để tối ưu hóa hiệu suất của hệ thống AGV Mạng giao thông lưới được cấu trúc theo dạng hai chiều nhằm giảm thiểu thời gian phản hồi trung bình và tối đa Mô hình sử dụng trong nghiên cứu gồm hai trường hợp, với 30 trạm (trái) và 35 trạm (phải), như thể hiện trong Hình 1.9 Kết quả thử nghiệm cho thấy thuật toán di truyền có độ sai lệch so với các phương pháp tính toán truyền thống dưới 2%, chứng minh tiềm năng tối ưu hóa của thuật toán này.
Hình 1.10:Ví dụ về mức thời gian phản hồi của khu vực m và k[15]
Ngoài thuật toán di truyền, công cụ máy học được áp dụng trong [15] Các tác giả giới thiệu một mô hình dự đoán để áp dụng vào một hệ thống xử lý vật liệu để xác định vị trí đỗ hợp lý Môi trường sản xuất được chia thành nhiều khu vực, mỗi khu vực có một nhu cầu vận chuyển khác nhau, nhu cầu vận chuyển này sẽ được dự đoán mỗi 15 phút Các tác giả nhắm tới một mô hình dự đoán chính xác nhằm loại bỏ các hiệu ứng phụ ảnh hưởng tới hiệu suất của hệ thống Từ yêu cầu trên, giải thuật máy học -phân loại đa nhiệm vụ - chuỗi tạo chuỗi được lựa chọn để xác định vị trí đỗ cho các phương tiện
11 Áp dụng giải thuật này, dữ liệu đo đạc nhu cầu vận chuyển trong các khu vực được thu thập, sau đó được xử lý dữ liệu Dữ liệu được xử lý này được phân thành nhóm, tiếp theo đó được dùng để dự đoán và điều chỉnh hành vi các phương tiện Hình 1.10 thể hiện về quy trình xử lý Trong hình 1.10, phân tích hai khu vực m và k trong toàn bộ bố cục Mỗi khu vực có thời gian chuyển giao chậm trễ trong 3 tuần được thống kê lại Đây là bước đầu tiên trong quy trình giải quyết được trình bày ở hình 1.11 Sau đó các dữ liệu này được xử lý, áp dụng hàm log để giảm thiểu sự sai lệch giữa các dữ liệu Những dữ liệu được xử lý này sẽ được phân loại bằng giải thuật K – mean Bước cuối cùng sẽ là dự đoán số lượng yêu cầu dỡ hàng ở các khu vực
Hình 1.11:Quy trình giải quyết vấn đề của giải thuật[15]
Một nghiên cứu khác ứng dụng công cụ máy học vào có thể kể tới nghiên cứu của Dong Li và cộng sự[16] giới thiệu một mô hình dự đoán nhu cầu vận chuyển tương lai, xác định vị trí để đưa AGV tới để giảm thời gian phản hồi Trong nghiên cứu này Dong
Li đã dùng một mạng RNN để dự đoán nhiệm vụ trong tương lai dựa trên các dữ liệu đã thu thâp từ trước Giải thuật này được chứng minh sự đúng đắn trên 4 mạng lưới giao thông khác nhau trong hình 1.13 và hiệu suất được cải thiện tới 20-30%
Hình 1.12: 2 trong 4 sa bàn được áp dụng để kiểm chứng giải thuật
Từ năm 1993 khi Egbelu[10] nghiên cứu về vấn đề vị trí đỗ của các phương tiện trong hệ thống AGV tới nay, đã có một sự thay đổi về mục tiêu tiếp cận, các đối tượng và các công cụ để giải quyết vấn đề Các mục tiêu tiếp cận ban đầu là hạn chế thời gian phản hồi trung bình, thời gian phản hồi tối đa và phân bố đều AGV trong mạng lưới giao thông [10] Qua thời gian phát triển, các mục tiêu được xác định trong các trường hợp cụ thể và có thêm điều kiện ràng buộc như ở [13] Mặt khác, các đối tượng trong các nghiên cứu cũng có sự khác biệt Mạng lưới giao thông không còn là dạng bố cục vòng lặp[10], [11], [12], [17] mà ngày càng phức tạp và đa dạng [14], [15], [16] Các công cụ dùng để tiếp cận và xử lý vấn đề ngày càng tân tiến, những công cụ ban đầu sử dụng các công cụ toán, xem xét bố cục vòng lặp như một đường tròn [10], [11], [12], [17]
Khi mạng lưới giao thông ngày càng phát triển, các công trình nghiên cứu áp dụng các phương pháp tiếp cận mạnh mẽ hơn như quy hoạch động[12], [13] để xác định vị trí đỗ phù hợp với sự biến thiên của nhu cầu vận chuyển Nhưng các công cụ toán học vẫn có nhược điểm đó là khi các hệ thống càng phức tạp, mạng lưới giao thông càng lớn, số lượng phương tiện tăng lên dẫn đến khối lượng tính toán càng nhiều Vì thế nên các công cụ mới như máy học, thuật toán di truyền được áp dụng để giải quyết các vấn đề này[14], [15], [16].
Hướng ứng dụng thực tế, mục tiêu, phạm vi đề tài và nội dung luận văn
Hệ thống AGV được ứng dụng vào rất nhiều mảng trong đời sống, từ sản xuất cho đến y tế, từ lưu trữ cho đến chuỗi cung ứng và các mảng xử lý vật liệu cũng như là quy trình vận hành[1] Khi áp dụng hệ thống AGV, không thể nào không tính đến một chiến lược đỗ và quy hoạch khu vực đỗ cho các AGV Trung tâm điều khiển của hệ thống AGV thông qua các giải thuật để ra quyết định vài giải quyết vấn đề này Mặt khác, khi số lượng công việc tăng lên và hệ thống ngày càng phức tạp thì các chiến lược đỗ cần phải linh hoạt hơn để phù hợp với hệ thống Đề tài tập trung vào chiến lược đỗ tại chỗ, kết hợp với máy học để hỗ trợ trung tâm điều khiển xác định vị trí phù hợp cho AGV
13 Đề tài có thể được áp dụng vào lĩnh vực sản xuất, trong dây chuyền sản xuất gồm nhiều công đoạn, mỗi công đoạn cần các vật liệu và các chi tiết Hệ thống AGV làm công việc vận chuyển sản phẩm giữa các giai đoạn và cung cấp vật liệu cần thiết Áp dụng máy học, hệ thống trung tâm điều khiển dự đoán được mặt hàng, vật liệu cần xử lý trong công đoạn tiếp theo hoặc dự đoán thời gian xử lý công đoạn tiếp theo Thông qua đó trung tâm điều khiển xác định được vị trí đỗ hợp lý cho AGV Thông qua cách xử lý như trên, đề tài vận dụng công cụ máy học để giảm thời gian phản hồi của AGV, từ đó gián tiếp giảm thời gian chết giữa các công đoạn trong dây chuyền sản xuất
Một lĩnh vực khác cũng áp dụng hệ thống AGV rất là nhiều đó là hệ thống kho bãi, vận tải và chuỗi cung ứng Trong lĩnh vực này, có nhiều trạm vận tải và trung chuyển hàng hoá khác nhau, và hệ thống AGV đóng vai trò vận chuyển hàng hoá giữa các trạm này Khi áp dụng máy học, người dùng có thể xem xét xu hướng của hàng hoá trong hệ thống lưu trữ hoặc là nhu cầu hàng hoá của các trạm trung chuyển và vận chuyển Thông qua những dữ liệu đã được phân tích và xử lý bởi máy học, trung tâm điều khiển sẽ ra quyết định để có một chiến lược đỗ phù hợp
Trên đây là hai trong số các ứng dụng của đề tài Đề tài tập trung vào việc giảm thiểu thời gian giữa các khâu trong quy trình hoạt động Bằng cách sử dụng máy học nhằm cung cấp thêm thông tin cho trung tâm điều khiển, thông qua đó sẽ ra quyết định xác định vị trí và chiến lược đỗ hợp lý cho các AGV Đề tài cân nhắc một trong hai hướng ứng dụng thực tế được nêu trên và xác định hướng ứng dụng trong lĩnh vực Logistic để áp dụng Trong lĩnh vực Logistic, ngoài loại hình giao thương truyền thống, thương mại điện tử đã được giới thiệu[18] và đi kèm theo đó là sự phát triển của các nhà kho bán lẻ Đề tài xem xét các thông tin về kho vận của nhà bán lẻ lớn trên thế giới là Amazon[19] và xem xét giải pháp dành cho nhà kho bán lẻ của Swisslog[20] để xem xét các mô hình hình nhà kho bán lẻ đã và đang ứng dụng trong thực tế Ngoài ra, đề tài tham khảo về mô hình nhà kho trong các nghiên cứu [21], [22], [23], [24] Thông qua các ví dụ thực tế và các nghiên cứu liên quan, đề tài xác định nhà kho được áp dụng là dạng bàn cờ
1.3.2 Mục tiêu đề tài Đề tài chọn hướng nghiên cứu về hệ thống AGV vì tiềm năng của hệ thống AGV trong thời kỳ công nghiệp hoá hiện đại hoá ở Việt Nam cũng như trên thế giới, được nêu trong mục 1.1.1 Mặt khác, khi xem xét tổng quan hệ thống AGV, nhận ra được tầm quan trọng của việc xác định vị trí đỗ trong quy trình vận hành, ảnh hưởng tới thời gian hoàn thành nhiệm vụ ở mục 1.1.2 và các công trình nghiên cứu liên quan trong mục 1.2
Thông qua các nghiên cứu liên quan ở mục 1.2, tác giả nhận thấy rằng quy tắc đỗ tại chỗ có những điểm mạnh riêng so với quy tắt đỗ tập trung và đỗ vòng lặp Điểm yếu của quy tắc này là khi AGV dừng đỗ một chỗ thì có khả năng gây ra ùn tắc[1] Một mặt khác khi xem xét các hướng ứng dụng thực tế được trình bày như mục 1.3.1, và mô hình nhà kho được áp dụng là dạng bàn cờ thì tác giả nhận thấy rằng nhược điểm của quy tắc đỗ tại chỗ có thể được xử lý nếu chọn loại phương tiện hợp lý, sẽ được trình bày trong mục 2.3 Ngoài ra, nhận thấy rằng các nhà kho bán lẻ có tính mùa vụ và có thể dự đoán được mặt hàng được buôn bán dựa theo các dữ liệu đã lưu [16] Bởi vì các lý do trên tác giả định nghĩa xác định vị trí đỗ cho AGV là xem xét với từng AGV, sử dụng mô hình đưa ra kết quả dự đoán kệ hàng hoá được vận chuyển trong tương lai, sau đó cho AGV áp dụng quy tắc đỗ tại chỗ tại vị trí của nút chứa kệ hàng đó
Thông qua những nghiên cứu tổng quan trên, đề tài xác định mục tiêu như sau:
- Xem xét tổng quát lý thuyết của hệ thống AGV, cách vận hành và mô phỏng hệ thống AGV
- Xem xét tổng quát về mô hình dự đoán, các công cụ dùng để huấn luyện, cách xử lý dữ liệu và tạo một mô hình dự đoán
- Phát triển thuật toán dự đoán vị trí đỗ cho AGV bằng mô hình đã tạo được
- Mô phỏng mô phỏng và kiểm chứng kết quả
- Đánh giá mức độ hiệu quả của đề tài thông qua thời gian phản hồi nhiệm vụ
1.3.3 Phạm vi đề tài Đề tài tập trung vào một phạm vi nhất định, xác định rõ đối tượng nghiên cứu và cách thức nghiên cứu để hạn chế khối lượng công việc và nhằm chứng minh được sự hiệu quả khi áp dụng mô hình dự đoán vào hệ thống AGV
- Đối tượng nghiên cứu của đề tài là hệ thống AGV trong mạng lưới giao thông dạng bàn cờ trước và sau khi áp dụng giải thuật xác định vị trí đỗ
- Đề tài nghiên cứu trong môi trường mô phỏng của MATLAB
- Đề tài xem xét các yếu tố có thể ảnh hưởng tới quá trình vận hành hệ thống AGV và đánh giá mức độ ảnh hưởng của chúng lên hệ thống trước và sau khi áp dụng giải thuật
1.3.4 Nội dung luận văn Để phù hợp với mục tiêu và phạm vi của đề tài, nội dung của luận văn sẽ được chia như sau:
- Chương 1: TỔNG QUAN trình bày về vấn đề, các công trình nghiên cứu liên quan cũng như mục tiêu, phạm vi của đề tài.dsx
- Chương 2: CƠ SỞ LÝ THUYẾT VÀ MÔ HÌNH HOÁ HỆ THỐNG AGV sẽ trình bày về cấu trúc của hệ thống AGV Sau đó xác định những thành phần nào sẽ được tập trung chú ý đến trong đề tài Tiếp theo đó là trình bày về cách mô phỏng hệ thống AGV trong môi trường MATLAB
- Chương 3: MÔ HÌNH DỰ ĐOÁN VÀ GIẢI THUẬT TÍNH TOÁN trình bày về các giải thuật và phân loại mô hình dự đoán Tầm quan trọng của dữ liệu và cách xử lý dữ liệu cũng được trình bày ở đây Bước tiếp theo là xác định loại mô hình dự đoán được áp dụng trong đề tài và huấn luyện mô hình dự đoán
- Chương 4: PHÁT TRIỂN THUẬT TOÁN XÁC ĐỊNH VỊ TRÍ ĐỖ CHO AGV BẰNG MÔ HÌNH ĐỀ XUẤT xem xét tổng quan quy trình làm việc của toàn bộ hệ thống AGV Xem xét quy trình làm việc của hệ thống AGV trong môi trường mô phỏng MATLAB Đề xuất thuật toán, và xác định quy trình làm việc của hệ thống AGV trong môi trường MATLAB sau khi áp dụng thuật toán
- Chương 5: MÔ PHỎNG VÀ KẾT QUẢ ĐẠT ĐƯỢC trình bày về cách thức mô phỏng tìm ra sự ảnh hưởng của giải thuật, số lượng nhiệm vụ và số lượng AGV ảnh hưởng tới quá trình vận hành của hệ thống Thông qua kết quả đạt được này để xem xét mức độ ảnh hưởng của mô hình dự đoán lên quá trình vận hành của hệ thống AGV
- Chương 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN tổng kết những gì đề tài đã đạt được và hướng phát triển
CƠ SỞ LÝ THUYẾT VÀ MÔ HÌNH HOÁ HỆ THỐNG AGV
Các thành phần trong hệ thống AGV
Hệ thống AGV kết hợp nhiều thành phần và thuật toán để đảm bảo vận hành trơn tru Khi thiết kế hệ thống AGV, cần cân nhắc các yếu tố vận hành như mạng lưới giao thông, quản lý giao thông (phòng tránh va chạm và tắc nghẽn), số lượng và vị trí điểm giao nhận, yêu cầu về xe, phân bổ nhiệm vụ, lập tuyến đường di chuyển, lập kế hoạch di chuyển, vị trí đỗ, quản lý năng lượng và lỗi.
Hệ thống AGV có thể được phân chia thành các thành phần nhỏ hơn bao gồm phương tiện, hệ thống vận chuyển, giao diện vật lý giữa hệ thống sản xuất/lưu trữ và hệ thống điều khiển Mỗi thành phần này đều có chức năng riêng của chúng và ảnh hưởng trực tiếp đến hoạt động của toàn bộ hệ thống AGV.
Khi phân chia hệ thống AGV thành các thành phần nhỏ hơn, bao gồm cả phần mềm và phần cứng sẽ có rất nhiều yếu tố ảnh hưởng Do đó để giảm thiểu khối lượng tính toán và vẫn giữ được tính tổng quát, ta xem xét hệ thống AGV bao gồm hệ thống điều khiển, các thành phần thực thi nhiệm vụ ở đây là AGV và các đối tượng không thể thiếu đó là đường dẫn các trạm giao nhận thuộc mạng lưới giao thông Để thực hiện được mục tiêu đề ra ở mục 1.3.2, đề tài nghiên cứu cấu trúc của hệ thống AGV, các đặc tính và chức năng của các thành phần này nhằm làm cơ sở cho mô hình hoá và mô phỏng hợp lý.Các mục phía sau sẽ đi sâu vào hệ thống điều khiển, phương tiện và mạng lưới giao thông của hệ thống AGV Sau khi tìm hiểu về các thành phần trong hệ thống AGV, tác giả sẽ xem xét những điều kế thừa và những điều khác biệt khi áp dụng vào đề tài.
Cấu trúc và vai trò của hệ thống điều khiển
Theo [8] có hai cách điều khiển hệ thống AGV, đó là điều khiển tập trung và phi tập trung Điều khiển phi tập trung được cho là xu hướng phát triển của hệ thống AGV khi khoả lấp được những hạn chế của điều khiển tập trung trong hệ thống sản xuất linh hoạt Nhưng điều khiển phi tập trung không hoàn toàn tốt hơn điều khiển tập trung ở mọi trường hợp, trong các hệ thống nhỏ hệ thống điều khiển tập trung sẽ tối ưu hơn, đây là lý
17 do chính để áp dụng cấu trúc điều khiển tập trung vào mô hình hệ thống AGV nhằm chứng minh tính đúng đắn của giả thuyết Hình 2.1 mô tả hai cách tiếp cận và bảng 2.1 so sánh hai cấu trúc điều khiển [8]
Hình 2.1: Cấu trúc tập trung (trái) và cấu trúc phi tập trung (phải)[8]
Bảng 2.1: So sánh cấu trúc tập trung và phi tập trung[8]
CẤU TRÚC TẬP TRUNG CẤU TRÚC PHI TẬP TRUNG Ứng dụng lâu đời trong công nghiệp Khó thực hiện trong công nghiệp
Có các thuật toán nổi tiếng Có các thuật toán nổi tiếng
Truy cập được vào thông tin toàn cầu Truy cập vào thông tin nội bộ
Có thể ứng dụng toàn cầu Ứng dụng đơn lẻ
Hệ thống nhỏ Hệ thống lớn
Hệ thốn đơn giản Hệ thống phức tạp
Không mạnh trong môi trường làm việc năng động
Mạnh mẽ khi ứng dụng vào môi trường làm việc năng động Ngoài ra hệ thống AGV còn cần phải làm tốt 5 nhiệm vụ cốt lõi [8] : phân bổ công việc, xác định đường đi, lên kế hoạch di chuyển, định vị và quản lý AGV Vì giả thuyết được chứng minh trong môi trường MATLAB vậy nên đề tài tập trung nghiên cứu 3 nhiệm vụ là phân bổ công việc, xác định đường đi, và lên kế hoạch di chuyển để mô phỏng môi trường làm việc cho hệ AGV; hai nhiệm vụ còn lại là định vị và quản lý phương tiện cũng sẽ được đề cập và phân tích Mỗi nhiệm vụ sẽ được xem xét các giải thuật và chọn ra giải thuật phù hợp nhất cho đề tài, cố gắng xem xét sao cho phù hợp với đề tài và gần nhất có thể với thực tế
2.2.1 Nhiệm vụ phân bổ công việc
Phân bổ công việc tối ưu cho hệ thống AGV là bài toán hóc búa, với mục tiêu giảm thiểu chi phí vận hành tổng thể Mặc dù không có thuật toán hoàn hảo, các phương pháp tiếp cận hiệu quả đã được phát triển để giải quyết vấn đề này Hai yêu cầu cơ bản của phân bổ công việc là phân chia công bằng các nhiệm vụ và hoàn thành chính xác công tác phân bổ, bất chấp những thách thức Để mở rộng hệ thống và đảm bảo tính linh hoạt, cần cân nhắc các loại và tính chất nhiệm vụ, hạn chế công việc, mục tiêu tối ưu hóa và mô hình giải quyết vấn đề.
Công việc vận chuyển hàng hoá đối với một hệ thống AGV có thể xem xét hai cách tiếp cận là tìm hiểu đặc tính của công việc, phương tiện vận chuyển và xem xét chiến lược phân công công việc Công việc có thể chia thành công việc chỉ cần một phương tiện hoàn thành, hoặc cần nhiều hơn một phương tiện để hoàn thành Có các công việc độc lập với nhau, không cần phải lập kế hoạch để phân bổ công việc cho chúng và cũng có các công việc phụ thuộc vào nhau, theo trình tự, có thể lên kế hoạch trong tương lai
Hệ thống AGV có thể chia phương tiện thành đa nhiệm và đơn nhiệm để linh hoạt trong phân bổ nhiệm vụ Chiến lược tĩnh cố định nhiệm vụ cho từng AGV và không thay đổi cho đến khi hoàn thành, còn chiến lược động có thể phân bổ lại nhiệm vụ cho AGV phù hợp hơn nếu có Việc lựa chọn chiến lược phân phối nhiệm vụ phụ thuộc vào đặc tính của nhiệm vụ và phương tiện trong hệ thống AGV.
19 Hiểu rõ được tính chất của công việc và phương tiện là bước đầu tiên để tiếp cận các hướng giải quyết cho nhiệm vụ phân bổ công việc Trong thực tế, không phải lúc nào công việc chỉ có những ràng buộc về tính chất của nhiệm vụ và phương tiện [8] đề cập tới những ràng buộc về thời gian, ràng buộc về quyền ưu tiên, một số ràng buộc ảnh hưởng tới tính chất linh hoạt của hệ thống và giới hạn về nguồn lực Những giới hạn này ảnh hưởng tới vấn đề vận hành và phân bổ nhiệm vụ của trung tâm điều khiển Để có cái nhìn tổng thể về công việc, phương tiện, và các ràng buộc liên quan, việc hiểu rõ các đặc tính của nhiệm vụ là quan trọng Điều này cho phép tối ưu hóa nhiệm vụ và đồng thời hiểu rõ về các đối tượng có thể ảnh hưởng và cách xử lý chúng Một trong những đối tượng quan trọng là giá thành và lợi nhuận, vì hệ thống điều khiển sẽ phân phối công việc cho các phương tiện sao cho tổng giá thành là thấp nhất hoặc tổng lợi nhuận là cao nhất Ngoài ra, các yếu tố khác cũng được xem xét, như mức độ ưu tiên của công việc, phần thưởng khi hoàn thành nhiệm vụ, và chất lượng khi hoàn thành một công việc
Để phân bổ công việc hiệu quả, cần xác định rõ bản chất công việc, phương tiện thực hiện, quy tắc phân bổ và mục tiêu tối ưu theo [1] Các nguyên tắc phân bổ phổ biến gồm: ngẫu nhiên, gần nhất, xa nhất, rảnh nhất, ít sử dụng nhất Những yếu tố này giúp đánh giá hiệu quả của hệ thống điều khiển khi phân bổ công việc theo [8].
2.2.2 Nhiệm vụ xác định đường đi
Sau khi AGV được phân bổ nhiệm vụ, hệ thống điều khiển phải xác định một lộ trình cho AGV Đây là là nhiệm vụ xác định đường đi, một trong những nhiệm vụ quan trọng của hệ AGV[8] Theo Vis[1] thì lựa chọn lộ trình cho phương tiện vận chuyển ảnh hưởng đến hiệu suất của hệ thống Để hoàn thành nhiệm vụ thì hệ thống điều khiển cần biểu diễn lại mạng lưới giao thông mà hệ thống AGV cần di chuyển và sử dụng thuật toán để tìm được đường đi
Có hai hướng tiếp cận để giải quyết nhiệm vụ này, bao gồm các thuật toán động và tĩnh Trong trường hợp của các thuật toán tĩnh, đường đi giữa các điểm giao nhận được xác định trước, và sau đó được tái sử dụng khi có yêu cầu vận chuyển hàng hóa Tuy nhiên, các thuật toán tĩnh không linh hoạt đối với sự biến động trong hệ thống và điều kiện giao thông Ngược lại, các giải thuật động được lựa chọn dựa trên thông tin thời gian thực của hệ thống, tạo ra nhiều lựa chọn đường đi cho việc vận chuyển hàng hóa
Có nhiều giải thuật để xác định đường đi, nguyên lý của chúng dựa trên hai hướng tiếp cận đó là các thuật toán đại diện môi trường và thuật toán tìm đường trong sa bàn Thuật toán lập kế hoạch đường đi tính toán đường đi ngắn nhất Đầu tiên, cần một biểu diễn về các trạng thái có thể đạt được của AGV trên bản đồ môi trường Các hệ thống AGV công nghiệp thường có đường di chuyển được xác định trước bằng mạng lưới nút và đoạn đường Nếu không có mạng lưới sẵn, cần một thuật toán tạo ra biểu diễn về không gian cấu hình để tạo ra các đường đi Hướng còn lại là các thuật toán tìm kiếm đồ thị Một số thuật toán động đáng chú ý là Dijkstra cổ điển và Dijkstra mở rộng
Thuật toán Dijkstra cổ điển là một thuật toán tìm đường tĩnh Khi áp dụng thuật toán này, kết quả chỉ trả về một con đường ngắn nhất nối hai điểm Cách hoạt động của thuật toán này là xác định vị trí đầu, xác định giá trị các điểm xung quanh và đánh dấu lại điểm có giá trị thấp nhất, từ đó lặp đi lặp lại cho tới khi điểm cuối cùng được đánh dấu Giải thuật này mang đặc tính của một giải thuật tĩnh, thích hợp để dùng lập lộ trình toàn cục Nhược điểm của Dijkstra cổ điển đó là chỉ tìm ra được một đường đi cực tiểu nhỏ nhất, và khối lượng tính toán rất lớn vì thuật toán này không có bỏ qua một điểm nào
Giải thuật Dijkstra cổ điển có điểm mạnh nhưng để áp dụng vào môi trường sản xuất ngày càng linh động, khổng lồ và phức tạp thì không thích hợp Vậy nên các thuật toán động được ưu tiên và thuật toán Dijkstra cổ điển được nâng cấp thành thuật toán Dijkstra mở rộng Guo Quing [25] xây dựng thuật toán Dijkstra mở rộng, trả về nhiều lộ trình ngắn nhất đi từ hai điểm đã cho Thuận tiện cho việc áp dụng vào một hệ thống phức tạp và năng động
Hình 2.2: Quy trình làm việc của thuật toán Dijkstra mở rộng.[25]
Hình 2.3: Quãng đường ngắn nhất giữa 20 và 15 có 4 đường
2.2.3 Nhiệm vụ lập kế hoạch di chuyển
Khi xác định lộ trình, hệ thống điều khiển còn phải hoàn thành một nhiệm vụ nữa là lập kế hoạch di chuyển nhằm tránh va chạm và kẹt cứng Trong hệ thống AGV, nhiệm vụ xác định lộ trình ở mục 2.2.2 nhằm chọn ra một con đường đi ngắn nhất và tránh các vật cản tĩnh, nhưng trong thực tế có nhiều trường hợp xảy ra khi vận hành Trên con đường vận chuyển hàng hoá, các phương tiện có thể gặp các phương tiện khác, người hoặc là các vật cản Vậy nên ngay lúc này, hệ thống điều khiển phải làm tốt nhiệm vụ lập kế hoạch di chuyển này để tránh va chạm, kẹt cứng để phương tiện hoàn thành tốt nhiệm vụ
Khi tránh va chạm, một trong những cách đơn giản nhất là có hệ thống cảm biến, máy quét trên phương tiện nhằm nhận diện vật cản Khi xác định vật cản có thể va chạm với AGV, các AGV đi chậm lại và dừng hẳn Sau đó AGV chờ tới khi hết bị cản thì tiếp tục hành trình Đây là một trong những cách xử lý cơ bản nhất khi vận hành hệ thống AGV Không chỉ vậy, để xử lý các trường hợp va chạm, có hai cách xử lý là tập trung và phi tập trung Trong giải pháp phi tập trung, AGV phản ứng dựa trên thông tin cục bộ và tương tác với các AGV lân cận để tránh va chạm Mặc dù cách tiếp cận này có ưu điểm trong việc mở rộng số lượng AGV, nhưng nó đối mặt với các hạn chế đặc biệt trong việc tránh va chạm và kẹt cứng Ngược lại, trong giải pháp tập trung hoá, máy tính trung tâm thu thập và xử lý toàn bộ dữ liệu từ các AGV, bao gồm vị trí và mục tiêu Sau đó, nó lập kế hoạch tổng thể để đảm bảo không có va chạm giữa các AGV và tối ưu hóa hiệu suất của hệ thống Phương pháp này mang lại sự quản lý thuận lợi hơn cho hệ thống AGV
Bảng 2.2: Tổng quan các giải thuật tránh va chạm
Các phương pháp tránh va chạm
Phương pháp Ưu điểm Nhược điểm
Phương pháp tránh va chạm tập trung
Tổng quan Tối ưu cho các đội
Thiếu sự vững chãi, hiệu suất, khả năng mở rộng và sự linh hoạt cho các đội AGV lớn
Phương pháp tránh va chạm phi tập trung
Cảm biến phía trước Đơn giản, ổn định, tốt khi chọn đây là bước kiểm tra cuối cùng
Xác định lại đường đi dựa trên giải thuật A* và D* Đơn giản, nhanh Cần có bản đồ khu vực Độ lệch cục bộ so với đường đi
Phương tiện được ứng dụng trong hệ thống AGV
Theo báo báo thị trường AGV của Grand View Research [3], có rất nhiều dạng AGV được sản xuất và ứng dụng hiện nay Phân loại theo dạng phương tiện thì có các phương tiện dạng kéo, chuyên chở hàng hoá, phương tiện kéo pallet, phương tiện nâng hay là các phương tiện hỗn hợp,… Phân loại theo công nghệ điều hướng thì có các phương tiện điều hướng, di chuyển bằng laser, bằng từ tính, dùng công nghệ thị giác,… Những loại AGV này được ứng dụng trong nhiều mảng và nhiều ngành khác nhau nhằm phục vụ nhu cầu vận chuyển hàng hoá
Phương tiện được dùng trong đề tài này là AGV nâng kệ hàng Ưu điểm của loại AGV này được nhắc tới ở [23] Nhờ vào khả năng linh hoạt, kích thước nhỏ, dễ dàng điều khiển là lý do được các công ty như Amazon, Alibaba,… áp dụng Đặc điểm và tính năng của loại AGV này là nâng theo phương thẳng đứng, sử dụng phương pháp điều hướng bằng mã QR trên mạng lưới giao thông dạng bàn cờ, giao tiếp không dây với hệ thống điều khiển Nhờ vào đặc tính nhỏ gọn mà phương tiện có thể chạy bên dưới các kệ hàng, khắc phục nhược điểm của quy tắc đỗ tại chỗ
Hình 2.4: AGV nâng kệ hàng trong mạng lưới giao thông dạng bàn cờ
Hệ thống cơ khí của AGV nâng hàng được nhắc tới trong [26] bao gồm phần khung và cơ cấu nâng Loại AGV này gồm 2 bánh đặt hai bên phần khung, chịu trách nhiệm di chuyển cho AGV Phía trước và phía sau được trang bị bánh xe đa hướng để trợ lực và không ảnh hưởng tới khả năng di chuyển của AGV
Hình 2.5: Mô hình hoá phương tiện vận chuyển
Các thông số của AGV bao gồm: 𝑂𝑥 𝐼 𝑦 𝐼 là hệ trục toạ độ gắn với mặt đất, 𝑂𝑥 𝑟 𝑦 𝑟 là hệ trục toạ độ gắn với AGV, 𝜃 diễn tả góc lệch giữa 2 hệ toạ độ này, A là tâm đường nối giữa 2 bánh xe truyền động, C là khối tâm AGV, R là bán kính mỗi bánh xe và L là khoảng cách giữa tâm 2 bên bánh xe
Vận tốc tịnh tiến của AGV trong hệ trục tọa độ gắn liền với robot là tốc độ trung bình của vận tốc dài của hai bánh xe
Và vận tốc góc 𝜔 của AGV cũng được xác định:
27 Vậy, trong hệ toạ độ 𝑂𝑥 𝑟 𝑦 𝑟 gắn với AGV, vận tốc của điểm A được xác định bằng cách đạo hàm công thức (2.1) và (2.2):
Khi biểu diễn trong hệ toạ độ 𝑂𝑥 𝐼 𝑦 𝐼 gắn với mặt đất ta được:
Trong khi đó, nhận thấy rằng mối quan hệ giữa vị trí trọng tâm C và điểm A trong hệ trục 𝑂𝑥 𝐼 𝑦 𝐼 được xác định:
(2.5) Đạo hàm hệ phương trình trên, ta sẽ có được vận tốc trọng tâm C của robot trong hệ trục tọa độ gắn liền với mặt đất:
Từ đó, ta có phương trình cuối cùng về vận tốc trọng tâm C của AGV trong hệ trục tọa độ gắn liền với mặt đất:
Mạng lưới giao thông
Hệ thống AGV được sử dụng cho nhiều mục đích[3] Tuỳ theo ứng dụng mà mỗi hệ thống AGV có một mạng lưới giao thông riêng để phù hợp với môi trường ứng dụng
Môi trường của hệ thống AGV là nhà kho có khu vực lưu trữ, khu vực máy chủ và khu vực tương tác người-AGV Mạng lưới giao thông trong nhà kho bao gồm khu vực lưu trữ và khu vực tương tác người-AGV Ma trận kề biểu diễn mối quan hệ giữa các node trong mạng lưới giao thông, với giá trị 0 là không liền kề và 1 là liền kề.
Hình 2.6: Ma trận kề giữa các node A,B,C,D,E
Hình 2.7: Mối quan hệ giữa các node A,B,C,D,E
Ma trận kề chỉ giúp xác định được 2 nút đó có kề nhau hay không nhưng không giúp xác định vị trí tương quan giữa các node kề nhau Vì vậy ta cần một ma trận góc để thể hiện vị trí tương quan giữa các trạm làm việc với nhau
Ma trận góc Φ mô tả hướng của xe tự hành (AGV) khi di chuyển giữa các nút Nó biểu diễn góc của AGV trong quá trình di chuyển, được thể hiện bằng công thức Φ = [ ], trong đó:
𝜑(𝑥, 𝑦) = 0 khi y nằm bên phải x (nút x và y liền kề)
𝜑(𝑥, 𝑦) = 90 khi y nằm bên trên x (nút x và y liền kề)
𝜑(𝑥, 𝑦) = 180 khi y nằm bên trái x (nút x và y liền kề)
𝜑(𝑥, 𝑦) = 270 khi y nằm bên dưới x (nút x và y liền kề).
Mô phỏng hệ thống AGV
Để mô phỏng hệ thống AGV cần xác định các trạng thái và mô phỏng phương tiện và mạng lưới giao thông trong hệ thống
Biểu diễn trạng thái các AGV Tập hợp các AGV được biểu diễn trong ma trận V, trong đó:
Mỗi 𝑣 𝑖 được được biểu diễn bằng một matrix biểu diễn các trạng thái, thông số của AGV thứ i
𝑣 𝑖 = {𝑝 𝑖 , 𝜑 𝑖 , 𝑚 𝑖 , 𝐴𝑠𝑡𝑡 𝑖 , 𝐺𝑠𝑡𝑡 𝑖 } (2.10) Một mặt khác, sa bàn gồm hai thành phần là các trạm làm việc và đường đi kết nối các trạm làm việc đó lại với nhau Ta có thể biểu diễn một mang lưới giao thông dưới dạng sau:
Trong đó n là tổng số các trạm làm việc, m là tổng số các đường đi nối hai trạm làm việc với nhau Một mạng lưới giao thông là tập hợp các trạm làm việc và các đường đi Mỗi trạm làm việc được xác định bởi toạ độ trong hệ toạ độ Descartes và mỗi đường đi được xác định bởi hai trạm làm việc
30 Sau khi mô phỏng môi trường làm việc, cần phải điều khiển AGV bám theo đường dẫn đã hoạch định Trong quá trình vận hành.thực tế, sau khi hệ thống điều khiển thực hiện nhiệm vụ xác định đường đi, kết quả sẽ cho ra một chuỗi các nút mà AGV cần phải đi qua Ứng với mỗi nút có một toạ độ xác định trước Đây là mục tiêu mà AGV phải bám theo AGV sẽ tham chiếu toạ độ trọng tâm C so với điểm P mục tiêu Khi AGV tới đích thì sẽ đặt mục tiêu là nút tiếp theo trong chuỗi đã được xác định bởi nhiệm vụ xác định đường đi Xét điểm tham chiếu P như trong hình 2.5, điểm tham chiếu P được biểu diễn bằng vị trí 𝑃 𝑡 và vận tốc 𝑉 𝑡
Từ định nghĩa của sai số giữa trọng tâm C của AGV so với điểm tham chiếu P, ta có thể xác định 3 sai số cụ thể: sai số vị trí theo trục x ($e_1$), sai số vị trí theo trục y ($e_2$) và sai số góc di chuyển ($e_3$) Các sai số này được tính toán trong hệ trục tọa độ tương đối gắn với AGV.
Biến đổi công thức 2.19, ta có:
(2.20) Đạo hàm hai vế công thức 2.20, ta được:
Trong thực tế,để xác định các sai số e 1 , e 2 , e 3 thì sẽ dựa trên toạ độ trọng tâm C của AGV và toạ độ của điểm tham chiếu Đối với các điểm tham chiếu là các vị trí đã xác định trước Đối với trọng tâm C của AGV thì phụ thuộc vào công nghệ và là trách nhiệm của nhiệm vụ định vị - một trong 5 nhiệm vụ cơ bản được nhắc tới ở mục 2.2.4
Có nhiều nghiên cứu về điều khiển AGV bám theo đường dẫn Nghiên cứu [27] sử dụng bộ điều khiển PID, trong khi nghiên cứu [28] áp dụng bộ điều khiển logic Fuzzy Ngoài ra, các phương pháp kết hợp cũng được xem xét, chẳng hạn như Fuzzy PID được sử dụng trong hệ thống điều khiển AGV [29].
MÔ HÌNH DỰ ĐOÁN VÀ GIẢI THUẬT TÍNH TOÁN
Mô hình dự đoán
Mục tiêu chính của nghiên cứu tập trung vào việc phát triển các mô hình dự đoán để hỗ trợ quá trình ra quyết định Trong đời sống hàng ngày, dữ liệu đóng một vai trò không thể phủ nhận và cực kỳ quan trọng[30] Để tận dụng tối đa giá trị của dữ liệu, nhiều công cụ và kỹ thuật đã được phát triển, trong đó có toán học, thống kê và máy học Máy học, như một phạm trù rộng lớn, bao gồm nhiều giải thuật và phương pháp tiếp cận khác nhau, mỗi cái đều có ưu điểm và hạn chế riêng biệt tùy thuộc vào bối cảnh cụ thể
Thường thì, quy trình tiếp cận và phát triển mô hình dự đoán bắt đầu bằng việc lựa chọn một thuật toán hoặc công cụ phù hợp, sau đó nạp dữ liệu và xây dựng một mô hình dự đoán từ dữ liệu đó Tuy nhiên, mặc dù quy trình này có thể tạo ra một mô hình dự đoán, nhưng chất lượng của mô hình không luôn đạt được mức độ cao nhất Do đó, việc hiểu rõ về dữ liệu và mục tiêu của mô hình dự đoán là rất quan trọng Tiếp theo, các bước tiền xử lý dữ liệu và phân chia dữ liệu cũng đóng vai trò quan trọng trong việc chuẩn bị dữ liệu trước khi xây dựng mô hình Chỉ khi dữ liệu được xử lý một cách hợp lý, quá trình xây dựng mô hình dự đoán mới có thể bắt đầu[31]
3.1.2 Quy trình xây dựng mô hình dự đoán
Quy trình xây dựng một mô hình dự đoán bao gồm nhiều bước cụ thể để đảm bảo rằng mô hình có khả năng dự đoán chính xác và hữu ích trong ứng dụng thực tế Đầu tiên, quy trình bắt đầu bằng việc xác định mục tiêu cụ thể của dự đoán, tức là câu hỏi chính mà mô hình sẽ giải quyết Tiếp theo là thu thập dữ liệu Dữ liệu là yếu tố quan trọng để đảm bảo tính chính xác và độ đại diện của mô hình Sau khi có dữ liệu, bước tiền xử lý được thực hiện để kiểm tra và xử lý các vấn đề như giá trị thiếu và ngoại lệ Các biến loại danh mục có thể được chuyển đổi thành dạng số, và dữ liệu có thể được chuẩn hóa để đảm bảo sự cân bằng giữa các đặc trưng Bước quan trọng tiếp theo là chia dữ liệu thành bộ huấn luyện và bộ kiểm thử Bộ huấn luyện được sử dụng để đào tạo mô hình, trong khi bộ kiểm thử được sử dụng để đánh giá hiệu suất của mô hình trên dữ liệu không nhìn thấy trước.Sau đó, là quá trình chọn mô hình Ở đây, quyết định mô hình nào phù hợp nhất với vấn đề cụ thể, với sự cân nhắc về độ phức tạp và yêu cầu tính toán
33 Công việc tiếp theo là huấn luyện mô hình, trong đó mô hình sẽ được điều chỉnh các tham số để tối ưu hóa dự đoán Sau đó, mô hình được đánh giá bằng cách sử dụng bộ kiểm thử, và các điều chỉnh tiếp theo có thể được thực hiện để cải thiện hiệu suất Cuối cùng, khi mô hình đạt được hiệu suất mong muốn, nó có thể được triển khai để sử dụng trong môi trường thực tế hoặc tích hợp vào hệ thống tổ chức Liên tục theo dõi và cải tiến mô hình là quan trọng để đảm bảo rằng nó vẫn phản ánh đúng và hiệu quả trong điều kiện thực tế Theo quy trình xây dựng như trên, đề tài sẽ tập trung vào xử lý dữ liệu và chọn giải thuật để huấn luyện mô hình Những điểm tập trung nghiên cứu sẽ được trình bày trong mục 3.2, 3.3.
Dữ liệu và xử lý dữ liệu
Trong quá trình hoạt động của một hệ thống dự đoán, việc thu thập dữ liệu là một bước quan trọng không thể thiếu Dữ liệu đóng vai trò then chốt trong việc xây dựng một mô hình dự đoán chất lượng và đáng tin cậy Tuy nhiên, việc thu thập dữ liệu có thể đối mặt với nhiều thách thức, đặc biệt là trong các tình huống mô phỏng hoặc khi không có dữ liệu cụ thể
Trong trường hợp thiếu dữ liệu thực tế hoặc khi tiến hành mô phỏng, các nhà nghiên cứu và kỹ sư có thể sử dụng các nguồn dữ liệu mở như Kaggle, Dataset Search, và nhiều nguồn trên Internet để tạo dữ liệu mô phỏng Những nguồn này cung cấp nhiều bộ dữ liệu đa dạng thuộc nhiều lĩnh vực, giúp tạo môi trường mô phỏng đáng tin cậy và chân thực.
Tuy nhiên, việc sử dụng dữ liệu từ các nguồn mở cũng đồng nghĩa với việc cần phải xử lý và biến đổi dữ liệu một cách cẩn thận Chất lượng của dữ liệu sẽ là yếu tố quyết định chính về hiệu quả của mô hình dự đoán Các biến đổi dữ liệu là kỹ thuật đầu tiên và quan trọng nhất cần được áp dụng để chuẩn bị nền tảng cho việc xây dựng một mô hình dự đoán hiệu quả và chính xác[31]
Việc biến đổi dữ liệu có thể bao gồm loại bỏ nhiễu, điền giá trị còn thiếu, chuẩn hóa dữ liệu, và trích xuất các đặc trưng quan trọng Quá trình này cần sự kỹ lưỡng và kiên nhẫn để đảm bảo rằng dữ liệu đã được xử lý một cách đúng đắn và hoàn chỉnh trước khi tiếp tục vào các bước tiếp theo của quá trình xây dựng mô hình dự đoán
3.2.1 Dữ liệu xấu và cách xử lý dữ liệu xấu
Dữ liệu xấu gây ảnh hưởng đến kết quả phân tích và đưa ra quyết định Các loại dữ liệu xấu phổ biến bao gồm dữ liệu lặp, dữ liệu hết hạn, dữ liệu không đầy đủ, dữ liệu không chính xác và dữ liệu không nhất quán Những loại dữ liệu này làm sai lệch kết quả phân tích, dẫn đến hiểu sai hoặc đưa ra quyết định kém hiệu quả.
Bảng 3.1: Phân loại các kiểu dữ liệu xấu[33]
Dữ liệu lặp Các dữ liệu xuất hiện nhiều hơn một lần
Các số liệu hoặc là các phân tích bị sai lệch, các thống kê số lượng bị thổi phồng và không chính xác hoặc nhầm lẫn trong quá trình truy xuất dữ liệu
Các dữ liệu đã cũ cần phải thay thế bởi các dữ liệu mới hơn và thông tin chính xác hơn
Ra quyết định, phân tích và đặc điểm của dữ liệu không chính xác
Dữ liệu không hoàn thiện
Các dữ liệu bị mất thông tin Giảm đi hiệu suất, các đặc điểm của dữ liệu không chính xác
Dữ liệu không chính xác
Các dữ liệu hoàn thiện nhưng mà không chính xác
Giảm đi hiệu suất và ra quyết định không chính xác vì dựa trên các thông tin không chính xác
Dữ liệu không nhất quán
Các dữ liệu sử dụng các định dạng khác nhau để đại diện cho cùng một thứ
Các dữ liệu trái ngược nhau dẫn đến nhầm lẫn hoặc không thể phân loại Để xử lý những vấn đề trong dữ liệu, đã có những công cụ giải quyết được như Excel[34], hoặc MATLAB có Data Clean App được giới thiệu ở [35] Những công cụ này giúp nâng cao chất lượng của bộ dữ liệu để là tiền đề để tạo ra một mô hình dự đoán chính xác
3.2.2 Các phương pháp biến đổi tập dữ liệu
Sau khi loại bỏ các dữ liệu xấu, cần phải xem xét tổng thể của Xét các tập dữ liệu đơn thuộc tính, các phương pháp cần chú ý tới là Centering, Scaling Đôi khi dữ liệu cần được ở dạng phân phối chuẩn Khi dùng phương pháp Centering, các giá trị trong dữ liệu sẽ trừ đi giá trị trung bình toàn tập dữ liệu và với Scaling thì các giá trị sẽ chia cho một hằng số Hai phương pháp này về tông quan giúp tăng mức độ ổn định khi tính toán Nhược điểm là các giá trị đơn lẻ sẽ mất đi tính diễn giải vì không còn ở giá trị ban đầu nữa
Mặt khác trong một bộ dữ liệu có nhiều thông tin mô tả, các thông tin này ảnh hưởng đến chất lượng của mô hình dự đoán Càng nhiều thông tin mô tả sẽ càng tăng khối lượng tính toán khi mà tạo ra mô hình dự đoán Và nếu như có hai hay nhiều thông tin cùng mô tả một tính chất của kết quả thì mô hình dự đoán được tạo ra sẽ không hiệu quả và càng ảnh hưởng tới hiệu suất của máy tính PCA là một kỹ thuật giảm kích thước của bộ dữ liệu[31] và có thể dùng để giải quyết vấn đề vừa nêu trên Phương pháp này tìm một sự kết hợp tuyến tính giữa các thông tin mô tả và mô tả mức độ ảnh hưởng của các thông tin này lên kết quả Công thức toán của phương pháp PCA có thể được viết như (3.1) Trong đó P được xem như là các thông tin mô tả, và a là một hệ số thể hiện mức ảnh hưởng của thông tin mô tả lên kết quả
Hình 3.1:Hình ảnh ví dụ về bộ dữ liệu Cell Segment đã được áp dụng PCA[31]
Trong mô hình PCA (Phân tích thành phần chính), hình 3.1 thể hiện cách thức xem xét mức độ ảnh hưởng của các thành phần dữ liệu Ở trạng thái ban đầu, các thông số dữ liệu như Intensity và Fiber Width không thể xác định mức độ ảnh hưởng lên kết quả Tuy nhiên, sau khi áp dụng PCA, thành phần thứ nhất được xác định là có ảnh hưởng lớn hơn thành phần thứ hai Qua đó, PCA có khả năng giúp phân tích mức độ ảnh hưởng của các tính chất lên kết quả của một tập dữ liệu.
Sau khi xử lý dữ liệu, một vấn đề cần phải quan tâm đó là phân chia dữ liệu thành các tệp dữ liệu để huấn luyện mô hình và kiểm chứng độ chính xác Để phân chia tệp dữ liệu thành các tập dữ liệu nhỏ hơn và vẫn còn giữ lại được đặc tính của tập dữ liệu ban đầu cần phải có kỹ thuật, nếu không sẽ tạo thành thiên kiến và ảnh hưởng tới kết quả sau này Có 4 kỹ thuật được nhắc tới trong [31] là K – fold Cross – validation, Generalized Cross – Validation, Repeated Training/Test Splits, The Bootstrap Sau khi phân chia tệp dữ liệu, chúng ta cần chọn một giải thuật để phát triển mô hình
3.2.3 Tệp dữ liệu được áp dụng trong đề tài Để kết quả của mô hình dự đoán được tốt nhất, dữ liệu nên được thu thập từ quá trình vận hành một nhà kho thực tế Trong trường hợp này bộ dữ liệu sẽ có nhiều trường thông tin, có thể kể tới như thời gian, số lượng, phân loại hàng hoá, thông tin khách hàng, địa điểm đặt hàng tuỳ theo đặc điểm của nhà kho Thông qua những trường thông tin này, chúng ta có thể xử lý dữ liệu theo nhiều cách Đối với đề tài, tác giả mô phỏng trên môi trường phần mềm MATLAB, ràng buộc về thời gian và nguồn lực nên không có bộ dữ liệu được thu thập từ quá trình vận hành một nhà kho thực tế Vậy nên có thể xem xét chọn một bộ dữ liệu ảo hoặc là một bộ dữ liệu mở để huấn luyện mô hình Để chọn một bộ dữ liệu dùng cho việc xây dựng mô hình dự đoán ta có thể chọn ở những nguồn dữ liệu mở ở [23] Mặc dù đa dạng nhưng có nhiều vấn đề cần phải đối mặt Một số bộ dữ liệu được chọn để thử nghiệm là dữ liệu bán lẻ, hoặc là dữ liệu nhà kho Khi lựa chọn những bộ dữ liệu này nhằm mô phỏng được một mô hình dự đoán có thể phản ánh được thói quen tiêu dùng của người dùng và áp dụng mô hình dự đoán vào hệ thống AGV
37 Các bộ dữ liệu này có đặc điểm là rất nhiều thông tin bao gồm như số hoá đơn, mã đơn hàng, thời gian, số lượng hàng nhập và xuất, giá của từng đơn vị và giá trị hoá đơn,… Bởi vì đa dạng mặt hàng và chênh lệch lượng truy cập dẫn tới việc áp dụng các bộ dữ liệu này gặp khó khăn Ví dụ, xem xét qua bộ dữ liệu Online Retail[29], đây là bộ dữ liệu về hàng hoá xuất kho trong vòng một năm từ tháng 12 năm 2010 tới tháng 12 năm 2011 Có hơn 4000 mặt hàng và có hơn 500.000 dữ liệu Khi phân loại và xử lý bộ dữ liệu, có sự chênh lệch rất lớn giữa phân loại hàng đứng thứ nhất và phân loại hàng đứng thứ hai Vậy nên đề tài không sử dụng các tệp dữ liệu mở
Hình 3.2: Biểu đồ phân bố các loại hàng tệp dữ liệu Online Retail[36] Ở [16] dùng chuỗi Markov để tạo ra một chuỗi nhiệm vụ, theo Dong Li và các cộng sự, các nhiệm vụ có mối tương quan với nhau Do đó trong [16] tạo ra chuỗi nhiệm vụ dựa trên chuỗi Markov, chia thành tệp huấn luyện và tệp kiểm tra Đề tài xem xét hệ thống nhà kho có n trạm làm việc đóng vai trò là các kệ hàng Mỗi kệ hàng lưu trữ một mặt hàng Mỗi khi có một nhu cầu xuất hiện, ta có thể xem đó là trạng thái hiện tại và trạng thái tương lai phụ thuộc vào trạng thái hiện tại chứ không có phụ thuộc vào trạng thái ở quá khứ Thông qua đó ta có thể tạo nên một chuỗi Markov giả định để sử dụng cho mô hình dự đoán
38 Mặt khác, chuỗi Markov cũng cần phải có mức độ chính xác so với thực tế, chứ không chỉ là một chuỗi các nhiệm vụ ngẫu nhiên Do đó khi tạo chuỗi Markov gần với một nhà kho thực tế nhất, ta cần phải xem xét một bộ dữ liệu thực tế, có thể là dữ liệu mở, được thu thập từ một nhà kho bán lẻ Phân loại hàng hoá thành các nhiệm vụ và xác định ma trận xác xuất của các nhiệm vụ Đây là cách đảm bảo bộ dữ liệu ảo gần với thực tế nhất
Hình 3.3: Ví dụ về sự thay đổi giữa các trạng thái của chuỗi Markov.[37]
Xác định thuật toán và xây dựng mô hình dự đoán
Có nhiều cách phân chia các giải thuật trong máy học như trong [30] chia ra nhiều hướng tiếp cận như Unsupervised learning, Supervised learning, Reinforcement learntning, Neural network,… hoặc là tập trung vào ứng dụng của mô hình dự đoán như [31], ở đây được chia làm hai hướng ứng dụng là Regression và Classification
Với ứng dụng Regression, kết quả được trả về với dạng số và với ứng dụng Classification thì kết quả là các danh mục[31] Đối với mục tiêu xác định nhiệm vụ diễn ra trong tương lai, tuỳ theo mục tiêu của đề tài mà chọn giải thuật và ứng dụng phù hợp
Dữ liệu trả về cũng là một kết quả là điểm giao hàng sắp diễn ra, đây không phải là một kết quả dạng số học Mô hình dự đoán ở đây nhằm tập trung vào dự đoán công việc diễn ra ở tương lai, vậy nên tập trung theo hướng Classification
Có nhiều giải thuật để sử dụng nhằm mục đích phân loại Về cơ bản được chia làm
3 loại đó là phân tích biệt thức cùng các mô hình phân loại tuyến tính, các mô hình phân loại phi tuyến tính và các mô hình dựa trên giải thuật cây ra quyết định Đề tài tập trung vào mô hình phân loại phi tuyến tính và dùng Neural Network
Hình 3.6: Cấu trúc của mạng Neuron
Theo [21], Neural Network là một chuỗi các thuật toán nỗ lực tìm hiểu các mối liên hệ trong một tập dữ liệu thông qua mô phỏng lại cách hoạt động của bộ não con người Có 2 phân loại Neural Network được đề cập trong đề tài này là Supervised Neural Network, Unsupervised Neural Network Đối với Supervised Neural Network, thông tin nhập vào và kết quả đã biết, kết quả dự đoán của mô hình sẽ được so sánh với kết quả thực tế Dựa vào sự sai lệch mà thông qua đó điều chỉnh Neural Network một lần nữa Unsupervised Neural Network có nhiệm vụ chính là phân loại dữ liệu dựa trên những sự tương đồng
Hình 3.7:Cấu trúc của học giám sát
Hình 3.8: Cấu trúc của học không giám sát
Mục tiêu của mô hình dự đoán là dựa trên những dữ liệu về nhu cầu công việc trong quá khứ và dự đoán các công việc trong tương lai Vậy nên xác định một công cụ phù hợp là điều rất quan trọng Một mặt khác đó là khi xem xét các công việc luôn thay đổi tuỳ theo nhu cầu, vậy nên việc cần có một mô hình dự đoán thích nghi với sự thay đổi là điều rất quan trọng để đảm bảo được sự ổn định Vậy nên chọn mạng LSTM để sử dụng trong trường hợp này
Mạng LSTM giúp xử lý thông tin dài hạn và học tự động nhờ cấu trúc cổng vào, ra, quên Giai đoạn đầu tiên xác định lượng thông tin ghi nhớ được, với trạng thái tế bào lưu trữ dữ liệu dài hạn Trạng thái ẩn biểu diễn dữ liệu ngắn hạn, được điều chỉnh hệ số để nhân với dữ liệu từ đầu vào và trạng thái ẩn Cổng quên sẽ kết hợp và biến đổi dữ liệu này, quyết định phần trăm dữ liệu dài hạn cần giữ lại.
43 Giai đoạn thứ hai sẽ là giai đoạn cập nhật dữ liệu dài hạn Dữ liệu input sẽ được quyết định giữ lại bao nhiêu phần trăm thông qua các hàm toán ở cổng vào Sau đó dữ liệu đầu vào sẽ được cập nhật vào dữ liệu dài hạn ở trạng thái tế bào Bước cuối cùng sẽ là cập nhật dữ liệu ngắn hạn Dữ liệu dài hạn được cập nhật sau giai đoạn hai để xác định dữ liệu ngắn hạn tiềm năng Dữ liệu ngắn hạn và input được dùng để xác định phần trăm dữ liệu ngắn hạn được giữ lại
Hình 3.9: Cấu trúc của Long Short – Term Memory[39]
Hình 3.10: 3 giai đoạn hoạt động của khối LSTM[39]
Trong bài báo [16], Dong Li và cộng sự của mình đã chỉ ra khi áp dụng mô hình dự đoán dựa trên dữ liệu đầu vào là tập hợp các điểm giao hàng đầu tiên của các nhiệm vụ trong quá khứ nên xem xét đây là dạng chuỗi – tạo chuỗi Và vì thế Dong Li đã tạo ra một mạng RNN để dự đoán
Hình 3.11:Cấu trúc mạng LSTM được áp dụng bởi Dong Li[16]
Bởi vì những ưu điểm nên mạng LSTM được ứng dụng để tạo mô hình dự đoán để áp dụng vào thuật toán
3.3.2 Xây dựng mô hình dự đoán Để tạo mô hình dự đoán, ở đây ta dùng công cụ Train Neural Network[40] của MATLAB Đây là một công cụ giúp tạo ra một mô hình dự đoán Để tạo được mô hình cần chuẩn bị bộ dữ liệu, thiết lập Neural Network, và lựa chọn các tuỳ chỉnh để chạy mô hình
Dùng chuỗi Markov được nhắc đến ở mục 3.2.3 để tạo ra một chuỗi các điểm đầu tiên của nhiệm vụ Để đảm bảo được độ lớn của bộ dữ liệu ta cần xem xét tạo bao nhiêu mẫu dữ liệu Xem xét với lượng yêu cầu vận chuyển hàng hoá trung bình là 30 công việc một giờ, một ngày nhà kho vận hành 12 giờ trong 300 ngày thì lượng công việc sẽ là 108.000 công việc trong vòng một năm
Mặt khác ta cần quyết định mô hình dự đoán sẽ dự đoán công việc tiếp theo ở tương lai dựa trên bao nhiêu công việc trong quá khứ Để làm điều này, cần xem xét mức độ ảnh hưởng của các công việc đã hoàn thành ảnh hưởng tới công việc tương lai thế nào Liệu rằng công việc vừa mới hoàn thành có mức độ ảnh hưởng so với công việc thứ 100 đã hoàn thành trước đó Để kiểm chứng và xác định điều này ta lập một bảng số liệu trên Excel, công việc vừa hoàn thành sẽ được gọi là DELAY1, công việc trước đó sẽ là DELAY2 cho tới công việc đã hoàn thành thứ 100 gọi là DELAY100 Khi
Bảng 3.2: Chuỗi Markov 96 trạng thái với 100 công việc trong quá khứ
DELAY100 DELAY99 DELAY97 DELAY96 … DELAY1 TASK
Khi áp dụng PCA, ma trận giải thích mức độ ảnh hưởng các yếu tố đến kết quả cho thấy các giá trị xấp xỉ nhau với trung bình cộng bằng 1, bất kể phạm vi dữ liệu DELAY được sử dụng Tuy nhiên, khi chỉ sử dụng một phần nhỏ bộ dữ liệu (DELAY1 đến DELAY20), các giá trị đại diện vẫn xấp xỉ nhau nhưng có giá trị lớn hơn, khoảng 5 Điều này cho thấy việc dự đoán công việc trong tương lai không chỉ dựa vào một vài công việc đã hoàn thành trước đó Do đó, số lượng công việc trong quá khứ được sử dụng để dự đoán được giảm xuống còn 5 để giảm tải lượng tính toán.
Xem xét hệ thống AGV theo góc độ toàn thể, các công việc rời rạc với nhau và mỗi công việc được xem như là một trạng thái Dữ liệu khi mà được đưa vào mạng Neural Network sẽ được biến đổi thành ma trận [96x05] Một biến Input được tạo ra để lưu các ma trận này Ngoài ra một biến Output được dùng để lưu các công việc trong tương lai dưới dạng dữ liệu danh mục
Tệp dữ liệu được chia theo tỉ lệ 7:3 Trong đó 70% dữ liệu được dùng cho việc huấn luyện bộ dữ liệu và 30% được dùng để kiểm tra độ chính xác Bộ dữ liệu được chia bằng công cụ cvpartition, với công cụ này chia tập dữ liệu thành 2 phần với tỉ lệ 7:3 theo cách ngẫu nhiên Gọi là tệp dữ liệu và tệp dữ liệu kiểm tra độ chính xác
PHÁT TRIỂN THUẬT TOÁN XÁC ĐỊNH VỊ TRÍ ĐỖ CHO AGV BẰNG MÔ HÌNH ĐỀ XUẤT
Quy trình làm việc của hệ thống AGV
Một môi trường sản xuất linh hoạt (FMS) sẽ bao gồm nhiều hệ thống nhỏ hoạt động với nhau và hệ thống AGV là một hệ thống nhỏ trong hệ thống FMS này Trong trường hợp đề tài đang đề cập là môi trường nhà kho thì hệ thống AGV sẽ hoạt động với hệ thống quản lý nhà kho Hệ thống quản lý nhà kho đóng vai trò như một cơ sở dữ liệu cung cấp thông tin về vị trí, số lượng hàng hoá còn lại trong kho Mặt khác hệ thống quản lý kho hàng sẽ nhận yêu cầu từ người dùng, biến đổi thành các công việc để hệ thống AGV vận hành
Hình 4.1: Cấu trúc hệ thống nhà kho[43]
Sau khi nhận thông tin và yêu cầu từ hệ thống quản lý nhà kho, hệ thống AGV hoạt đọng theo một quy trình để thực hiện các công việc Mặc dù ở chương 2 đã trình bày về các nhiệm vụ cơ bản của hệ thống AGV và quy trình làm việc dựa trên những nhưng đó chưa phải là một quy trình làm việc cụ thể và rõ ràng Một quy trình hoạt động hợp lý sẽ giảm bớt rất nhiều sự cố vận hành trong hệ thống Vậy nên để đảm bảo được rằng mô phỏng mô phỏng chính xác thì cần phải xác định một quy trình làm việc rõ ràng và chi tiết
Hình 4.2: Quy trình làm việc của hệ thống AGV trong [43]
50 [43] giới thiệu một quy trình làm việc của hệ thống AGV trong môi trường nhà kho như hình 4.2 Ở đây cũng đề cập tới một quy trình làm việc tổng quát cho hệ AGV Khi một công việc mới xuất hiện, hệ thống điều khiển trung tâm sẽ chọn một AGV để đi làm công việc đó Sau khi có một tập hợp các công việc mà một AGV cần làm thì đầu não trung tâm sẽ áp dụng thuật toán Dijkstra dựa trên vị trí hiện tại của AGV và hàng hoá để chọn ra một con đường ngắn nhất Sau khi xác định được con đường thì hệ thống trung tâm biến đổi thành một chuỗi các node và các đường nối rồi gửi chỉ dẫn đường đi tới AGV Nhận được chỉ dẫn từ hệ thống trung tâm, AGV sẽ thực hiện theo chỉ dẫn và tron quá trình thực hiện đó AGV sẽ gửi lại thông tin vị trí và tình trạng cho hệ thống trung tâm Hệ thống trung tâm nhận được những thông tin này, qua đó xác định trạng thái của AGV, phân tích tình trạng hiện tại của hệ thống Những thông tin này sẽ được đưa qua bộ mô – đun quản lý giao thông Mô – đun này áp dụng các giải thuật và phương pháp để điều phối giao thông nhằm giảm thiểu, hạn chế tình trạng kẹt cứng và va chạm
Quy trình của hệ thống AGV trong đề tài được xây dựng dựa trên các nguyên tắc tương tự và áp dụng các ràng buộc bổ sung để giảm độ phức tạp và tính toán Tuy nhiên, một số quy tắc vận hành khác biệt so với hệ thống được đề cập trong [43] Để xác định các quy tắc vận hành phù hợp, cần xác định rõ ràng môi trường làm việc của hệ thống AGV và các thành phần liên quan.
Nhà kho hình chữ nhật, dài 72m và rộng 62.4m Hệ thống mạng lưới giao thông bao gồm 234 node, xếp thành 18 cột và 13 hàng Trong đó có 96 node dùng đê chứa các kệ hàng Và có 16 node cố định đóng vai trò là trạm làm việc, nơi tương tác giữa người làm việc và hệ thống Sơ đồ được trình bày như hình 4.3 Trong đó những node màu đỏ là những node chứa kệ hàng, node trống sẽ không có màu Khu vực màu xanh lá là khu vực các kệ hàng được sắp xếp Khu vực màu xanh nhạt là khu vực của các trạm làm việc Trong mạng lưới giao thông này Các node được kết nối với nhau bằng các con đường, các con đường này có độ dài là 3.9m
51 Trong khu vực này không có khu vực đỗ cụ thể cho AGV rảnh Trong ca làm việc, các AGV được đỗ tại chỗ khi hoàn thành xong công việc Khi đó các AGV được đỗ tại các node chứa kệ hàng Để biểu diễn mạng lưới giao thông này ta dùng hai ma trận Adj và Adj_i Trong đó Adj dùng để biểu diễn mạng lưới giao thông khi xe vận hành không có tải và Adj_i dùng cho trường hợp xe đang tải hàng
Hình 4.3: Sơ đồ mạng lưới giao thông của nhà kho
Trong hệ thống này số lượng AGV được dùng để thực hiện các công việc được giao tối thiểu là 3 Ở đây các AGV được xem như là chất điểm Chuyển động của AGV là hai chiều khi chúng qua một đoạn đường bất kỳ Mỗi thời điểm, một AGV chỉ mang một nhiệm vụ Vận tốc trên mọi đoạn đường của AGV được lấy giá trị trung bình là 1m/s
Vị trí ban đầu của n AGV sẽ được xác định bằng ma trận src
𝑠 (4.5) Để giảm sự phức tạp trong tính toán, nhiệm vụ thay vì được giao cho AGV theo nguyên tắc phương tiện gần nhất thì đề tài sẽ xác định một tập nhiệm vụ cho từng AGV Một mặt khác đề tài cũng xem xét mức độ ảnh hưởng khi số lượng nhiệm vụ trong một giờ và thời gian mà nhiệm vụ mới xuất hiện
Hình 4.4: Quy trình làm việc được áp dụng trong đề tài
53 Thông qua số lượng công việc trong một giờ mà xác định được thời gian trung bình một nhiệm vụ xuất hiện Qua đó thời gian xuất hiện nhiệm vụ sẽ được xác định thuộc phân phối chuẩn, có giá trị trung bình là thời gian trung bình một nhiệm vụ xuất hiện, xác lập sai số sao cho trung bình thời gian xuất hiện nhiệm vụ không đổi
Trong quy trình làm việc trên, mỗi khi có nhiệm vụ mới thì hệ thống điều khiển sẽ phân bổ đều cho các AGV Khi thực hiện nhiệm vụ, hệ thống điều khiển áp dụng giải thuật Dijkstra để xác định đường đi ngắn nhất và quãng đường đi Sau đó gửi thông tin đến AGV thực thi nhiệm vụ AGV thực thi, trong quá trình làm việc, áp dụng các phương pháp chống va chạm và kẹt cứng AGV hoàn thành công việc thì chuyển sang trạng thái chờ và đỗ tại chỗ
Mục 4.2 và mục 4.3 sẽ trình bày về hai giải thuật và nguyên do cần hai giải thuật này.
Giải thuật áp dụng mô hình dự đoán nhằm xác định vị trí đỗ cho AGV
Mục 4.1 giải thích về quy trình làm việc của hệ thống AGV trong đề tài Đây là cơ sở để xây dựng giải thuật và giải quyết vấn đề Thông qua đó đề xuất một quy trình làm việc áp dụng giải thuật này
Dựa trên giải thuật thứ nhất được trình bày trong [16], đây là một giải thuật dùng để vận hành và áp dụng mô hình dự đoán vào quy trình vận hành Trong quy trình vận hành được nhắc tới trong [16], khi có một nhiệm vụ mới xuất hiện, trung tâm điều khiển sẽ thêm thông tin về điểm nhận hàng vào một chuỗi có R phần tử trước đó Sau đó sẽ giao nhiệm vụ cho AGV thực hiện Khi hoàn thành nhiệm vụ, AGV chuyển sang trạng thái rảnh thì sẽ dùng mô hình dự đoán để dự đoán nhiệm vụ tiếp theo và tiến hành cho AGV đỗ Trong quá trình đó, luôn so sánh và kiểm tra đối chiếu với tệp nhiệm vụ để nếu dự đoán sai thì ngay lập tực dừng quá trình đỗ và thực hiện nhiệm vụ, nếu đúng thì tiếp tục công việc Giải thuật này cần thiết để định hình quy trình hoạt động của trung tâm điều khiển khi có nhiệm vụ mới Dựa trên giải thuật trên, và dựa theo quy trình làm việc được nêu ra ở mục 4.1, đề tài trình bày giải thuật 1 để áp dụng mô hình dự đoán vào quy trình làm việc
54 Một nhiệm vụ có ba mốc thời gian chính, đó là thời điểm nhiệm vụ xuất hiện, thời điểm AGV nhận hàng hoá và thời điểm AGV hoàn thành công việc Các mốc thời gian được biểu diễn như hình 4.5, trong đó 𝑡 1 và 𝑡 2 lần lượt là thời gian AGV phản hồi và thời gian AGV giao hàng hoá Sau khi hoàn thành nhiệm vụ, quy trình sẽ được lặp lại cho nhiệm vụ kế tiếp
Hình 4.5: Các mốc thời gian trong một nhiệm vụ Áp dụng mô hình dự đoán vào hệ thống Đề tài tập trung vào giảm thiểu thời gian phản hồi trung bình 𝑡̅ 1 Để thực hiện điều này thì ngay khi AGV thực hiện xong công việc và chuyển sang trạng thái rảnh thì ngay sau đó hệ thống điều khiển sẽ dự đoán công việc tiếp theo và xác định vị trí đỗ cho AGV sao cho phù hợp
Hình 4.6: Các mốc thời gian trong một nhiệm vụ khi áp dụng mô hình dự đoán
Khi có tác vụ mới, hệ thống gán nhiệm vụ dựa vào thứ tự k, thêm điểm bắt đầu nhiệm vụ vào cuối chuỗi delay_task (bỏ điểm đầu nếu chuỗi quá dài) Kiểm tra AGV đã đỗ xong nhiệm vụ trước chưa; nếu chưa, đưa nhiệm vụ vào hàng chờ Q Nếu đã đỗ xong, thực hiện nhiệm vụ và kiểm tra hàng chờ Q, nếu không có nhiệm vụ thì cho AGV rảnh Dự đoán nhiệm vụ tiếp theo (t_pre) dựa trên delay_task, gán nhiệm vụ cho AGV, sau khi hoàn thành thì AGV rảnh.
Giải thuật 1: Giải thuật phân phối nhiệm vụ khi áp dụng mô hình dự đoán bắt đầu
1 Nếu xuất hiện nhiệm vụ mới t Số thứ tự của t là k thì
2 Chèn điểm giao hàng của nhiệm vụ t vào delay_task
3 Nếu số lượng điểm giao hàng trong delay_task lớn hơn R thì
4 Xoá đi điểm giao hàng đầu tiên trong delay_task
5 Chọn AGV để thực hiện t dựa theo k
6 AGV được chọn là dựa theo phần dư của k cho n AGV
7 Nếu k chia hết cho n thì
9 Nếu AGV chưa đỗ xong thì
10 Chèn nhiệm vụ t vào chuỗi công việc của AGV
12 Ra lệnh cho AGV hoàn thành nhiệm vụ t
13 Nếu chuỗi delay_task có đủ R thành phần và AGV rảnh thì
14 Dự đoán nhiệm vụ mới và ra lệnh AGV đi tới vị trí đỗ
Điều kiện để áp dụng giải thuật và quy trình làm việc
Có một vấn đề xảy ra khi áp dụng mô hình, đó là nếu như các công việc được tạo mới rất nhanh thì giải thuật sẽ không áp dụng được và gây cản trở các AGV giao hàng
Vì vậy giải thuật này không có được áp dụng vào tất cả mọi trường hợp của hệ thống mà chỉ nên được áp dụng khi hệ thống rảnh Định nghĩa một hệ thống rảnh dựa vào tỉ lệ của thời gian trung bình một công việc mới xuất hiện và thời gian trung bình một công việc được hoàn thành như công thức
Nếu như 𝑖𝑑𝑙𝑒 = 1 thì có nghĩa là tốc độ mà công việc mới xuất hiện ngang bằng với tốc độ AGV hoàn thành công việc Trong trường hợp bé hơn có nghĩa là AGV sẽ có thời gian rảnh sau khi hoàn thành các công việc và nếu mà 𝑖𝑑𝑙𝑒 > 1 thì hệ thống sẽ rất bận rộn và công việc mới khi được tạo sẽ được đưa vào hàng chờ
56 Biến số idle được trình bày ở [16], nhằm xác định trạng thái của hệ thống Áp dụng vào quy trình hiện tại được đề ra ở mục 4.1, đề tài đề xuất giải thuật 2 để xác định trạng thái của hệ thống
Sau khi áp dụng mô hình dự đoán vào hệ thống, quy trình làm việc cần có sự tinh chỉnh để đảm bảo được hệ thống làm việc không có vấn đề Các nhiệm vụ căn bản vẫn cần được đảm bảo khi hệ thống áp dụng mô hình dự đoán
Giải thuật 2: Giải thuật nhằm xác định tình trạng của hệ thống
1 Xác định giá trị ban đầu của thời gian xuất hiện nhiệm vụ 𝑡 𝑓𝑖𝑟𝑠𝑡 = 0
2 Xác định thời gian tổng giữa 2 nhiệm vụ 𝑇 = 0
3 Xác định tổng thời gian AGV hoàn thành công việc 𝑇 𝑐𝑜𝑚𝑝𝑙𝑒𝑡𝑒 = 0
4 Nếu xuất hiện nhiệm vụ mới t Số thứ tự của t là k thì
5 Lưu thời điểm nhiệm vụ t xuất hiện vào biến 𝑡 𝑒𝑥𝑒𝑐𝑢𝑡𝑒
6 Thời gian chênh lệch giữa 2 nhiệm vụ t và t -1 : ∆𝑡 = 𝑡 𝑒𝑥𝑒𝑐𝑢𝑡𝑒 − 𝑡 𝑓𝑖𝑟𝑠𝑡
7 Tổng thời gian mà các nhiệm vụ xuất hiện 𝑇 = 𝑇 + ∆𝑡
9 Thời gian trung bình giữa các nhiệm vụ 𝑇̅ = 𝑇
10 Nếu nhiệm vụ t đã hoàn thành thì
11 Lưu thời điểm nhiệm vụ t được hoàn thành vào 𝑡 𝑐𝑜𝑚𝑝𝑙𝑒𝑡𝑒
12 Tính thời gian hoàn thành nhiệm vụ t ∆𝑡 𝑐𝑜𝑚𝑝𝑙𝑒𝑡𝑒 = 𝑡 𝑐𝑜𝑚𝑝𝑙𝑒𝑡𝑒 − 𝑡 𝑒𝑥𝑒𝑐𝑢𝑡𝑒
Tổng thời gian hoàn thành các nhiệm vụ 𝑇 𝑐𝑜𝑚𝑝𝑙𝑒𝑡𝑒 = 𝑇 𝑐𝑜𝑚𝑝𝑙𝑒𝑡𝑒 + ∆𝑡 𝑐𝑜𝑚𝑝𝑙𝑒𝑡𝑒
14 Thời gian trung bình AGV hoàn thành nhiệm vụ 𝑇̅̅̅̅̅̅̅̅̅̅̅ = 𝑐𝑜𝑚𝑝𝑙𝑒𝑡𝑒 𝑇 𝑐𝑜𝑚𝑝𝑙𝑒𝑡𝑒
Khi hệ thống rảnh hệ thống nhàn rỗi (idle < 1), thời gian giữa các nhiệm vụ (∆t) và thời gian AGV thực hiện nhiệm vụ (∆t_complete) sẽ được cộng dồn vào tổng thời gian giữa các nhiệm vụ (T) và tổng thời gian AGV thực hiện nhiệm vụ (T_complete) Từ đó, hệ thống tính được thời gian trung bình giữa các nhiệm vụ và thời gian trung bình AGV thực hiện nhiệm vụ Dựa vào hai thông số này để xác định tình trạng của hệ thống.
Nhờ vào điều kiện trên nên hệ thống sẽ áp dụng giải thuật tuỳ theo điều kiện hiện tại Lúc này quy trình sẽ được tinh gọn hơn và hệ thống không phải lúc nào cũng phải áp dụng giải thuật Quy trình này được trình bày trong hình 4.7
Hình 4.7: Quy trình làm việc của hệ thống AGV khi áp dụng giải thuật
MÔ PHỎNG VÀ KẾT QUẢ ĐẠT ĐƯỢC
Đặc tính của hệ thống và mô hình mô phỏng
Mô phỏng là một trong những kỹ thuật khoa học quản lý và nghiên cứu quá trình vận hành rộng rãi nhất, nếu không muón nói là công cụ rộng rãi nhất Mô phỏng được ứng dụng vào nhiều lĩnh vực, đa ngành đa nghề như thiết kế và phân tích hệ thống sản xuất, phát triển hệ thống vũ khí quân đội, hoặc là xác định các yêu cầu phần cứng hay là các giao thức giao tiếp mạng,… [44] Đối tượng của mô phỏng đó là các hệ thống Một hệ thống được định nghĩa là một tập hợp của con người hay máy móc, hoạt động và tương tác với nhau để hoàn thành một mục đích hợp lý nào đó[44] Hệ thống AGV làm việc trong nhà kho chính là một hệ thống như vậy Trong hệ thống AGV có các AGV, các trạm làm việc và con người làm việc cùng với nhau, để thực hiện chức năng tập kết, lưu trữ, phân loại và quản lý hàng hoá
Hệ thống được chia làm hai loại, hệ thống rời rạc và hệ thống liên tục Với hệ thống rời rạc có các biến trạng thái thay đổi tức thời tại các thời điểm riêng biệt Ở hướng còn lại, hệ thống liên tục có các biến trạng thái thay đổi liên tục theo thời gian Xác định loại hệ thống là một điều cần thiết để thực hiện mô phỏng Đối với hệ thống AGV được áp dụng trong đề tài, được áp dụng mô hình dự đoán để hỗ trợ hệ thống điều khiển ra quyết định, xác định vị trí đỗ cho AGV để giảm thời gian phản hồi là một hệ thống rời rạc Do đó, mô hình mô phỏng được áp dụng trong đề tài là mô hình mô phỏng rời rạc.
Mô hình mô phỏng
5.2.1 Các điều kiện ban đầu Để kiểm tra tính đúng đắn của giả thuyết và giải thuật thì cần mô phỏng Mô phỏng sẽ tập trung vào trường hợp hệ thống đang ở trạng thái rảnh Áp dụng chuỗi Markov được tạo ở mục 3.4.3 Chuỗi Markov này có giá trị là 108.000 nhiệm vụ trong vòng 1 năm Ngoài được ứng dụng để tạo mô hình dự đoán, chuỗi nhiệm vụ này cũng sẽ đóng vai trò là chuỗi nhiệm vụ thực tế dùng để đối chứng với hệ thống khi đã áp dụng giải thuật
Bài toán tập trung vào việc xác định vị trí đỗ và giải thuật cho AGV AGV được giả định là di chuyển đều, thời gian xoay không đáng kể, không xảy ra va chạm hay kẹt cứng giữa các AGV Trình tự làm việc của AGV bao gồm di chuyển từ vị trí đỗ đến vị trí nhận hàng, nhận hàng, vận chuyển đến trạm làm việc, và đưa kệ hàng trở lại vị trí đỗ sau khi người vận hành hoàn thành thao tác Do có sự tham gia của con người nên thời gian giao nhận hàng không được tính đến, mà tập trung vào thời gian AGV di chuyển trên đường 16 trạm làm việc được phân bổ đều công việc.
Khi khoảng thời gian giữa hai nhiệm vụ liên tiếp nhỏ, hoặc là có nhiệm vụ đang chờ trong hàng chờ Q thì giải thuật không được áp dụng Thời gian giữa các nhiệm vụ có giá trị trung bình là ∆𝑡̅̅̅ Hệ thống giao thông được áp dụng cho mô phỏng được nêu ở mục 4.2 Hai ma trận kề Adj và Adj_i được dùng để tìm quãng đường đi ngắn nhất khi AGV không mang hàng và có mang hàng hoá
Để đảm bảo tính bao quát, số lượng AGV tối thiểu được sử dụng là 3 Vị trí ban đầu của AGV được thiết lập bằng ma trận cố định 𝑠𝑟𝑐 = [1 2 3 … ], áp dụng cho mọi trường hợp mô phỏng Sau đó, số lượng AGV được tăng lên nhằm đánh giá mức độ ảnh hưởng đến hệ thống.
5.2.2 Xác định điều kiện để hệ thống trong trạng thái rảnh Để xác định điều kiện áp dụng giải thuật vào quy trình vận hành trước tiên cần xác định thời gian trung bình AGV hoàn thành một công việc Sử dụng chuỗi Markov ở mục 3.4.3, cho rằng thời điểm AGV hoàn thành một nhiệm vụ thì sẽ ngay lập tức có nhiệm vụ mới được tạo ra Lúc này ta xem xét trên toàn hệ thống chỉ có một AGV duy nhất làm việc
Thời gian trung bình một nhiệm vụ hoàn thành được xác định như sau Với nhiệm vụ đầu tiên, vị trí ban đầu sẽ được lưu trong ma trận 𝑠𝑟𝑐 = [1 2 3], công việc sẽ bao gồm thông tin của vị trí điểm nhận hàng và trạm làm việc được lưu trong ma trận 𝑑𝑎𝑡𝑎 có kích thước 108.000×2
Con đường ngắn nhất và độ dài quãng đường đi từ vị trí hiện tại tới điểm đầu của nhiệm vụ được xác định bởi giải thuật Dijkstra
61 Tương tự như trên, quãng đường ngắn nhất từ điểm bắt đầu của nhiệm vụ i tới trạm làm việc được xác định
[𝑐𝑜𝑠𝑡2 𝑝𝑎𝑡ℎ2] = 𝑑(𝐴𝑑𝑗, 𝑑𝑎𝑡𝑎(𝑖, 1), 𝑑𝑎𝑡𝑎(𝑖, 2)) (5.2) Thời gian nhiệm vụ i được hoàn thành
Gán vị trí cuối cùng AGV trong nhiệm vụ i cho ma trận src và sau đó lặp lại quy trình trên Cuối cùng tổng kết quá trình xem xét 108000 nhiệm vụ thì ta có
Vậy điều kiện để hệ thống ở tình trạng rảnh là số lượng nhiệm vụ trung bình một giờ phài bé hơn 82
Giải thuật được áp dụng vào 4 trường hợp tương ứng số lượng công việc một giờ lần lượt là 20, 40, 60, 80 Mỗi trường hợp gồm các thông số vận hành của AGV trong hệ thống trước và sau khi áp dụng giải thuật Hai mô phỏng sẽ được so sánh với nhau nhằm xem xét mức độ ảnh hưởng của giải thuật đến thời gian phản hồi của AGV khi số lượng nhiệm vụ dần tăng Tiêu chí đánh giá chính là thời gian phản hồi trung bình của các AGV và thời gian phản hồi tối đa của AGV, ngoài ra đề tài còn xem xét tổng thể quá trình làm việc của hệ thống nhằm có cái nhìn tổng quát hơn về hiệu suất của hệ thống
Để tối ưu hóa tính toán và đa dạng hóa kết quả, tập nhiệm vụ được chia thành 4 tập nhỏ gồm 27.000 công việc, đánh số từ 1 đến 4 Trình tự Markov vẫn được giữ nguyên trong các tập này Bốn tập con được sử dụng để đánh giá cho từng phương pháp mô phỏng.
Bảng 5.1: Chuỗi delay_task của các tệp 1, 2, 3, 4 Tệp nhiệm vụ Giá trị chuỗi delay_task
Bảng 5.2: Bố trí mô hình mô phỏng 1
Phương pháp mô phỏng Số lượng nhiệm vụ một giờ
Số lần kiểm tra mỗi tệp nhiệm vụ
Hệ thống vận hành không có giải thuật
Hệ thống vận hành có áp dụng giải thuật
Hệ thống vận hành không có giải thuật
Hệ thống vận hành có áp dụng giải thuật
Hệ thống vận hành không có giải thuật
Hệ thống vận hành có áp dụng giải thuật
Hệ thống vận hành không có giải thuật
Hệ thống vận hành có áp dụng giải thuật
Tệp 3 Tệp 4 Với mỗi tệp nhiệm vụ, chuỗi 𝑑𝑒𝑙𝑎𝑦 𝑡𝑎𝑠𝑘 của mỗi tệp có độ dài giống nhau là 𝑅 5 nhưng giá trị của chuỗi sẽ khác nhau Đây cũng là nguyên nhân dẫn tới sự khác biệt giữa các tệp
Trong mô phỏng 1 này, mục tiêu tập trung vào việc xem xét mức độ ảnh hưởng của số lượng nhiệm vụ và mô hình dự đoán lên trên quá trình hoạt động của hệ thống AGV
5.2.4 Mô hình mô phỏng 2 Để kiểm chứng mức độ hiệu quả của hệ thống, xem xét hệ thống có nhiều hơn 3 AGV Khi số lượng AGV tăng thêm, hệ thống sẽ càng phức tạp và số lượng nhiệm vụ mà một AGV xử lý sẽ giảm đi Lúc này thời gian giữa hai nhiệm vụ mà một AGV xử lý liên tiếp nhau sẽ tăng thêm Số lượng AGV được chọn để thử nghiệm là 3, 6, 9, 12 AGV
Bảng 5.3: Bố trí mô phỏng 2
Phương pháp mô phỏng Số lượng nhiệm vụ một giờ Số AGV Số lần kiểm tra mỗi tệp nhiệm vụ
Hệ thống vận hành không có giải thuật
Hệ thống vận hành có áp dụng giải thuật
Hệ thống vận hành không có giải thuật
Hệ thống vận hành có áp dụng giải thuật
Hệ thống vận hành không có giải thuật
Hệ thống vận hành có áp dụng giải thuật
Hệ thống vận hành không có giải thuật
Hệ thống vận hành có áp dụng giải thuật
Đánh giá hiệu quả trên 108.000 tác vụ, với số lượng tác vụ trung bình ở 4 trường hợp là 20, 40, 60, 80 tác vụ/giờ Chuỗi delay_task của tệp tác vụ có độ dài R = 5 và có giá trị như sau:
Tiêu chính đánh giá chính là thời gian phản hồi trung bình và thời gian phản hồi của AGV Mô phỏng được bố trí như bảng 5.3.
Kết quả đạt được
5.3.1 Kết quả mô phỏng 1 và xử lý số liệu
Bởi vì để đảm bảo được các kết quả tính toán không có bị thiên kiến và sai lệch nên trước khi mô phỏng tệp dữ liệu đã được chia ra thành 4 tệp nhỏ hơn và mỗi mô phỏng được lặp lại 10 lần để các kết quả mang được tính tổng quát
64 Kết quả tính toán được lưu giữ trong hai ma trận Ma trận C sẽ lưu giữ kết quả của hệ thống không áp dụng giải thuật và ma trận D dùng để lưu trữ kết quả cho trường hợp được áp dụng giải thuật
(5.6) Để xem xét mức độ ảnh hưởng của giải thuật, ta sẽ so sánh giá trị trung bình 𝑡̅ 1 ở
Với kết quả trung bình là t̅ 1 tại C, kết quả của 10 lần mô phỏng giống hệt nhau đối với mỗi tập dữ liệu Tương tự như vậy, tại D, kết quả của 10 lần mô phỏng trên mỗi tập dữ liệu cũng giống hệt nhau.
Một mặt khác giá trị trung bình 𝑡̅ 1 trên từng bộ dữ liệu kiểm tra trong trường hợp có kết quả như nha Kết quả như trong bảng sau
Bảng 5.4: Thời gian phản hồi trung bình khi không áp dụng giải thuật
Bảng 5.5: Thời gian phản hồi trung bình khi áp dụng giải thuật
Để đánh giá hiệu quả của thuật toán, ta so sánh thời gian phản hồi trước và sau khi áp dụng nó Tỷ lệ này được tính bằng cách chia thời gian phản hồi sau khi áp dụng thuật toán cho thời gian phản hồi trước đó.
Qua đó ta có bảng 5.6 thể hiện tỉ lệ thời gian phản hồi trung bình trước và sau khi áp dụng giải thuật
Bảng 5.6: Tỉ lệ thời gian phản hồi trung bình sau và trước khi áp dụng giải thuật
Qua bảng 5.4, 5.5 và 5.6, thời gian phản hồi trung bình của AGV giống nhau ở cả
4 trường hợp, sự khác biệt đến từ các bộ dữ liệu và với tệp dữ liệu 1 thì thời gian phản hồi trung bình giảm đi 22,67%, giảm nhiều nhất ở tệp 2 là 24,58%, tệp 3 chỉ giảm 13,91% Trong khi đó với tệp dữ liệu 4 thì thời gian phản hồi trung bình tăng 12,10%
Hình 5.1:Thời gian phản hồi trước khi áp dụng giải thuật (20task/h,tệp 1)
Hình 5.2:Thời gian phản hồi của AGV sau khi áp dụng giải thuật (20task/h,tệp 1)
Mặt khác sự cải tiến còn đến từ việc giảm đi thời gian phản hồi tối đa Trong trường hợp chưa áp dụng giải thuật, thời gian phản hồi tối đa của AGV là 89,7(s) Trong khi đó khi áp dụng giải thuật thì thời gian phản hồi tối đa của từng tệp dữ liệu từ 1 tới 4 là 54,6(s), 50,7(s), 62,4(s) và 81,9(s) Để xem xét mức ảnh hưởng của thời gian phản hồi tối đa, ta cũng xét tỉ lệ thời gian phản hồi tối đa của AGV trước và sau khi áp dụng giải thuật, đối với từng tệp nhiệm vụ khác nhau
Bảng 5.7: Tỉ lệ thời gian phản hồi tối đa
Hình 5.3: Tỉ lệ thời gian phản ứng tối đa sau khi áp dụng giải thuật của các tệp dữ liệu từ 1 tới 4 5.3.2 Kết quả mô phỏng 2 và xử lý dữ liệu Ở mô phỏng thứ hai, nhằm kiểm tra mức độ ảnh hưởng của giải thuật trong các trường hợp số lượng nhiệm vụ một giờ khác nhau và với số lượng AGV thay đổi, tăng dần từ 3, 6, 9, 12
Khi chưa áp dụng giải thuật, thời gian phản hồi trung bình của hệ thống khi tăng dần số lượng nhiệm vụ không có sự thay đổi Với số lượng AGV tăng dần thì thời gian trung bình phản ứng của mỗi AGV có sự thay đổi nhẹ nhưng không đáng kể
Bảng 5.8: Thời gian phản hồi trung bình của AGV khi chưa áp dụng giải thuật
Bảng 5.9: Thời gian phản hồi trung bình khi áp dụng giải thuật
80 26.3109 26.3109 26.3109 26.3109 Để xác định mức độ hiệu quả của giải thuật khi áp dụng vào hệ thống AGV, áp dụng công thức (5.7) Khi áp dụng công thức ta có tỉ lệ thời gian phản hồi trung bình như bảng 5.10
Bảng 5.10: Tỉ lệ thời gian phản hồi trung bình của AGV
Nhận xét và kết luận
Để xem xét tính hiệu quả và minh chứng tính hiệu quả của hệ thống AGV khi áp dụng mô hình dự đoán so với khi chưa áp dụng thì cần phải chứng minh thông qua mô hình mô phỏng Tác giả đã thiết kế hai mô phỏng ở mục 5.2 Ở đây tác giả đã tạo ra một môi trường tốt nhất để áp dụng giải thuật bằng cách hạn chế mọi vấn đề xảy ra và thời gian xuất hiện nhiệm vụ trong các mô phỏng chưa có giống thực tế Do đó hai mô hình mô phỏng kiểm chứng mức độ hiệu quả của mô hình dự đoán tác động lên thời gian phản hồi khi AGV đã chuyển sang trạng thái rảnh rỗi Với mỗi mô hình mô phỏng đều kiểm chứng mức độ hiệu quả khi áp dụng mô hình dự đoán thông gia đại lượng là thời gian phản hồi của AGV Khi có thời gian phản hồi của các AGV trước và sau khi áp dụng giải thuật thì đánh giá dựa trên hai mục tiêu tối ưu là giảm thời gian phản hồi trung bình và giảm thời gian phản hồi tối đa[10] Lấy tỉ lệ thời gian phản hồi trước và sau khi áp dụng mô hình dự đoán và giải thuật để xem xét mức độ ảnh hưởng của mô hình dự đoán Phương pháp mô phỏng được trình bày trong chương 5 chưa hoàn thiện và gần với thực tế, hai mô hình chứng minh được có sự hiệu quả tác động lên thời gian phản hồi khi áp dụng mô hình dự đoán
69 Thông qua hai thiết kế mô phỏng, đề tài xem xét các yếu tố ảnh hưởng tới thời gian phản hồi của AGV, bao gồm có số lượng nhiệm vụ một giờ, số lượng AGV trong hệ thống và các tệp dữ liệu khác nhau Một mặt khác đề tài so sánh với mô phỏng của [16] nhằm đánh giá một cách chính xác nhất Đối với số lượng nhiệm vụ trong một giờ, thông qua hai mô phỏng cho thấy không có sự ảnh hưởng đến thời gian phản hồi trung bình So sánh với mô phỏng trong [16], số lượng nhiệm vụ mỗi giờ có ảnh hưởng tới thời gian phản hồi lên tới 20 – 30% Mặt khác trong [16] xem xét tới những mạng lưới giao thông khác nhau Đối tượng của [16] nhắm tới đó là thời gian hoàn thành nhiệm vụ, trong khi đề tài xem xét tới thời gian phản hồi trung bình của AGV và thời gian phản hồi tối đa của các
Dữ liệu thử nghiệm được trích xuất từ cùng một chuỗi Markov, nhưng lại cho ra kết quả khác nhau do độ trễ của các tác vụ (delay_task) và dữ liệu thực tế không giống nhau Các kết quả khác nhau này cho thấy tầm quan trọng của mô hình dự đoán.
Yếu tố còn lại là số lượng AGV trong hệ thống Kết quả về thời gian phản hồi trung bình của các AGV không có sự chênh lệch Sự cải thiện trong thời gian phản hồi được đánh giá là do chuỗi delay_task của toàn chuỗi Markov giống với delay_task của tệp dữ liệu 1 Đề tài nhận xét rằng số lượng AGV không có ảnh hưởng lớn tới sự cải thiện thời gian phản hồi trung bình của AGV trong hệ thống
Qua các nhận xét trên, sự hiệu quả của giải thuật đến từ mức độ chính xác và hoàn thiện của mô hình dự đoán Ngoài ra, hệ thống khi áp dụng mô hình dự đoán được trình bày như mục 3.3 thì tỉ lệ chính xác 35,44% và có thể giảm thời gian phản hồi đến 24,58%