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

Luận văn thạc sĩ Khoa học máy tính: Nghiên cứu và phát triển hệ thống biên thu thập dữ liệu bus và giải pháp dự đoán thời gian đến trạm bus gần nhất

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

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

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

THÔNG TIN TÀI LIỆU

Nội dung

Trang 1

ĐẠI HỌC QUỐC GIA TP HCM

TRƯỜNG ĐẠI HỌC BÁCH KHOA

Trang 2

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠITRƯỜNG ĐẠI HỌC BÁCH KHOA –ĐHQG -HCMCán bộ hướng dẫn khoa học 1: PGS TS Thoại Nam

Cán bộ hướng dẫn khoa học 2: TS Nguyễn Lê Duy Lai

Cán bộ chấm nhận xét 1: PGS TS Trần Công Hùng

Cán bộ chấm nhận xét 2: TS Lê Thanh Vân

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 11 tháng 7 năm 2023

Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:

(Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ)1 Chủ tịch PGS TS Phạm Quốc Cường

2 Thư ký TS Lê Thành Sách

3 Phản biện 1 PGS TS Trần Công Hùng4 Phản biện 2 TS Lê Thanh Vân

5 Ủy viên TS Lê Hoành Sử

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ó).

KHOA HỌC VÀ KỸ THUẬT MÁY TÍNH

Trang 3

ĐẠI HỌC QUỐC GIA TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAMTRƯỜNG ĐẠI HỌC BÁCH KHOAĐộ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 Quốc Tùng MSHV: 1970599Ngày, tháng, năm sinh: 29/10/1990 Nơi sinh: Bình DươngChuyên ngành: Khoa học máy tính Mã số : 8480101

I TÊN ĐỀ TÀI:

Nghiên cứu và phát triển hệ thống biên thu thập dữ liệu bus và giải pháp dựđoán thời gian đến trạm bus gần nhất (Research and develop an edge system forcollecting bus data applied to the problem of predicting the nearest bus stationarrival time).

II NHIỆM VỤ VÀ NỘI DUNG:

Đề xuất và triển khai hệ thống thu thập dữ liệu hành trình của xe bus, sau đóthực hiện việc huấn luyện các mô hình tính toán dựa trên các mẫu dữ liệu thu thậpđược để dự đoán thời gian tới trạm kế tiếp của xe bus trong thời gian thực.

III NGÀY GIAO NHIỆM VỤ : 05/09/2022

IV NGÀY HOÀN THÀNH NHIỆM VỤ: 12/06/2023

V CÁN BỘ HƯỚNG DẪN (Ghi rõ học hàm, học vị, họ, tên):

Trang 4

LỜI CẢM ƠN

Tôi xin gửi lời cảm ơn chân thành và sâu sắc đến tất cả những người đã đónggóp, hỗ trợ và truyền cảm hứng cho quá trình nghiên cứu và hoàn thiện bài luận văncủa tôi.

Đầu tiên, tôi muốn bày tỏ lòng biết ơn đến thầy PGS.TS Thoại Nam và thầyTS Nguyễn Lê Duy Lai đã dành thời gian, kiến thức và tâm huyết để hướng dẫn,chỉ bảo và định hình cho quá trình nghiên cứu của tôi Sự tận tâm và sự chỉ dẫn củathầy Nam và thầy Lai đã đóng góp quan trọng đến sự phát triển không những trongkhuôn khổ bài luận văn này mà cả trong sự phát triển cá nhân và chuyên môn củatôi.

Tôi cũng muốn gửi lời cảm ơn đến tất cả các cộng tác viên đã hỗ trợ tôi trongquá trình thu thập dữ liệu, một nguồn tài nguyên vô cùng quý giá để nghiên cứu củatôi có thể tiến triển và hoàn thành.

Cuối cùng, tôi muốn gửi lời cảm ơn chân thành đến gia đình, bạn bè vànhững người thân yêu đã luôn đứng về phía tôi, cổ vũ và động viên suốt quá trìnhthực hiện bài luận văn này Sự hỗ trợ tinh thần và yêu thương không ngừng của cácbạn đã đóng vai trò quan trọng trong việc vượt qua các khó khăn để hoàn thành bàiluận văn.

Trang 5

TÓM TẮT LUẬN VĂN

Bài toán về dự đoán thời gian đến trạm của xe bus là một trong những bàitoán rất đáng được quan tâm tìm hiểu và giải quyết nhằm cải thiện tình hình giaothông công cộng phức tạp hiện nay Vừa giúp người dùng cuối có thể sắp xếp đượclịch trình đi lại, vừa để cải thiện việc điều phối các chuyến xe từ trung tâm điềuhành Luận văn này đi từ các vấn đề đó trong thực tế, về hiện trạng và về nhữngđiểm cần cải thiện, sau đó trình bày khuôn khổ các mục tiêu cụ thể cần hoàn thànhđể có thể giải quyết bài toán.

Công trình này bắt đầu từ việc xây dựng một hệ thống thu thập dữ liệu Dữliệu thu được sau đó sẽ được xử lý và rút ra các đặc trưng để làm đầu vào cho cácmô hình cải tiến từ RNN là LSTM và GRU để dự đoán thời gian tới trạm tiếp theocủa xe bus đang di chuyển thông qua việc dự đoán vận tốc trung bình của xe Cuốicùng sẽ là phần đánh giá kết quả thu được khi chạy các mô hình tính toán, kết luậncũng như nêu những điểm cần cải thiện, các hướng mở rộng của đề tài.

Trang 6

The problem of predicting bus arrival time to a station is one of the highlyinteresting and challenging tasks aimed at improving the current complex publictransportation situation It not only helps end users in organizing their travelschedules but also improves the coordination of bus trips from the bus controlcenter This thesis addresses these real-world issues, the current status, and the areasthat need improvement It then presents the framework of specific objectives thatneed to be accomplished in order to solve the problem.

This study starts with the construction of a data collection system Thecollected data is then processed and features are extracted to serve as inputs forimproved models based on RNN, namely LSTM and GRU, to predict the next busarrival time by predicting the average speed of the bus Finally, an evaluation of theresults obtained from running the computational models is conducted, conclusionsare drawn, and areas for improvement, as well as future directions of the topic, arediscussed.

Trang 7

LỜI CAM ĐOAN

Tôi, Nguyễn Quốc Tùng, cam đoan rằng bài luận văn này là kết quả của côngviệc nghiêm túc và tự do của bản thân Tôi cam đoan rằng tất cả các thông tin, dữliệu, số liệu, kết quả và ý kiến được trình bày trong luận văn này là trung thực.

Tôi xác nhận rằng tôi đã tham khảo và trích dẫn mọi nguồn tài liệu, tài liệutham khảo và công trình nghiên cứu khác một cách công bằng và đúng quy định.Mọi thông tin, ý kiến hoặc tác phẩm của người khác đã được dẫn chứng rõ ràng vàtrích dẫn đúng theo quy tắc và hướng dẫn về trích dẫn tham khảo được sử dụngtrong ngành khoa học máy tính này.

Tôi đồng ý rằng bài luận văn này có thể được sử dụng và kiểm tra bởi các cơquan, giáo viên hướng dẫn, ủy viên hội đồng và những người quan tâm khác đểđánh giá, phê duyệt và đưa ra quyết định về sự hoàn thành và thành công của côngtrình nghiên cứu này.

Tôi hoàn toàn chịu trách nhiệm về tính chính xác, tính toàn vẹn và tính xácthực của bài luận văn này Tôi cam đoan rằng không có bất kỳ hành vi gian lận hoặcvi phạm quy tắc nghiên cứu nào trong quá trình thực hiện bài luận văn.

Xin chân thành cảm ơn sự đồng ý và hỗ trợ của tất cả những người liên quantrong quá trình thực hiện bài luận văn này.

TP Hồ Chí Minh, ngày 09 tháng 06 năm 2023Học viên thực hiện luận văn

Nguyễn Quốc Tùng

Trang 8

MỤC LỤC

Trang 9

1.Giới thiệu

Nằm trong kế hoạch phát triển đô thị của nhà nước, hệ thống xe bus là mộthệ thống giao thông công cộng quan trọng được các ban ngành giao thông ưu tiênđầu tư để phát triển Việc khuyến khích người dân đi lại nhiều bằng bus (hay cácphương tiện công cộng khác) là một trong những giải pháp giải quyết bài toán kẹtxe tại các khung giờ cao điểm vì có những ưu thế nhất định như sẽ giảm lượng xelưu thông trên đường, các tuyến đường dành riêng cho xe bus được phát huy tối đalợi thế, … Vì vậy, việc lên lộ trình chạy sao cho tối ưu hoá lượng người dùng trêncác tuyến đường đóng vai trò quan trọng trong việc vận hành hệ thống.

Tuy nhiên, trong quá trình vận hành, vì thực tế giao thông và vì lượng xe khólường tại các khung giờ cao điểm làm cho việc ước lượng cũng như tính toán thờigian để xe bus hoàn thành lộ trình gặp nhiều khó khăn Trong đó, bài toán con vềviệc dự đoán thời điểm xe bus tới một trạm cụ thể là một bài toán vừa có tính tháchthức vừa mang lại giá trị kinh tế cao giúp giải quyết vấn đề nhu cầu của người dùngcó thể biết được khi nào có xe sắp đến trạm (kể cả ở những khung giờ cao điểm).Bên cạnh đó, vấn đề thu thập dữ liệu để phục vụ cho các bài toán phân tích như trêncũng là một vấn đề mang tính thách thức cao cần phải giải quyết.

Vì vậy, trong khuôn khổ luận văn này, tôi đề xuất và thực hiện một giải phápthu thập dữ liệu, sau đó phân tích và xử lý các dữ liệu này trước khi đưa vào quátrình huấn luyện các mô hình máy học là LSTM và GRU để giải quyết bài toán trên.Bằng cách sử dụng các dữ kiện lịch sử của xe ở một lộ trình nhất định (chuyến xe150 khởi hành từ Tân Vạn về Chợ Lớn) và cả các yếu tố ngoại cảnh khác, tôi mongmuốn công trình này sẽ mang lại kết quả tính toán gần đúng nhất, dễ triển khai, đápứng mong đợi và gần gũi với người dùng.

2.Những vấn đề liên quan

Việc dự đoán được thời điểm xe bus đến một trạm cụ thể một cách chính xáclà một việc không khả thi, chúng ta chỉ có thể đưa ra các phương pháp gần đúng để

Trang 10

trong bảng ghi chú tại các trạm, nhưng thời gian bus cần để di chuyển lại phụ thuộcrất nhiều vào các điều kiện thực tế, ví dụ như lượng người lên xuống tại các trạm,vận tốc xe, mật độ giao thông … Do đó, phương pháp đưa ra để giải quyết bài toánnày cũng phải phụ thuộc vào các yếu tố ngoại cảnh đó.

Mặt khác, để có thể có dữ liệu đầu vào cho mô hình tính toán, việc xây dựnghệ thống để thu thập dữ liệu một cách đầy đủ, đúng với yêu cầu cũng là một tháchthức Việc tiếp cận các nguồn dữ liệu về giao thông ở các quốc gia nhìn chung làmột việc khó khăn, nếu có cũng là ở một thời điểm rất xa trong quá khứ, còn ở ViệtNam thì hầu như không thể đơn phương tiếp cận như trong khuôn khổ của luận vănnày Ở thời điểm hiện tại, đã có một số phương án đề xuất để lấy được dữ liệu dạngnày như gắn thêm phần cứng hỗ trợ vào trong xe và thiết kế các hệ thống biên tạicác trạm để xe gửi dữ liệu về trung tâm lưu trữ, hoặc là bằng cách nào đó có thể tiếpcận được dữ liệu trong hộp đen của xe bus, … những phương pháp này hầu như khóđể hiện thực trên diện rộng và ở các mặt khác như giám sát, bảo trì cũng rất khókhăn, việc thực thi lại bị phụ thuộc vào các hợp tác xã xe bus.

Nội dung trong bài luận này sẽ đi từ vấn đề thực tế, các nhận xét và phântích, sau đó sẽ đề xuất và thực hiện các cách tiếp cận từng vấn đề cục bộ sao chocuối cùng có thể giải quyết được bài toán chung.

3.Vấn đề

3.1 Khảo sát đường đi của xe bus giữa 2 trạm

Xét một bài toán cụ thể, một chiếc bus di chuyển từ trạm A đến trạm B Đểcó thể khảo sát đường đi của bus, luận văn này đề xuất một cơ chế lấy vị trí GPScủa xe như sau: khởi đầu từ điểm bắt đầu, cứ cách một đơn vị thời gian, ví dụ ngiây, sẽ lấy toạ độ GPS của bus 1 lần và lưu vào bộ lưu trữ dữ liệu trên xe cho đếnkhi xe tới điểm đích Để mô tả quá trình này, ta có thể quy về hệ quy chiếu 1 chiềunhư sau để đơn giản hoá việc mô tả:

Trang 11

Hình 3.1.1 Mô tả bài toán

Các vị trí O1 đến On là các điểm mà xe bus đã di chuyển đến trong n giây.Nghĩa là trong quá khứ, xe di chuyển từ trạm O1 đến O2 cũng như di chuyển từ O2đến O3 đều mất n giây, … tương tự như vậy cho đến khi xe đến trạm B (giữa trạm Ahay B cách các điểm Oi không chắc đúng là n giây) Nhận xét là các khoảng cáchgiữa 2 điểm Oi là không bằng nhau vì đường thực tế sẽ có những đoạn tương đốivắng hoặc đông xe tuỳ đoạn.

Một cách thông thường, ta có thể dự đoán được thời điểm đến của xe ở mộttrạm B nào đó nếu số lượng các điểm O là không đổi trong quá trình di chuyển từ Ađến B (ví dụ giữa 2 trạm A và B lúc nào cũng đi qua 10 điểm O), trong trường hợpnày ta có thể xây dựng một giải pháp đơn giản dựa vào độ lệch vị trí của mỗi lần xeđến các điểm Oi, cập nhật lại vị trí trung bình các điểm Oi và sau đó là suy ra thờigian tới bến kế tiếp dựa vào giá trị vận tốc trung bình trong quá khứ trong đoạnđường từ A đến B Nhưng trên thực tế, kể cả khi khảo sát ở cùng 1 thời điểm trongngày và ở cùng 1 ngày trong tuần (ví dụ so sánh thứ 2 tuần trước với thứ 2 tuầnnày), số lượng các điểm O là liên tục thay đổi Để tăng độ chính xác trong quá trìnhthu thập dữ liệu, ta tăng độ mịn lấy mẫu (giảm n), thì số lượng các điểm O càng dễthay đổi Do đó phương pháp tiếp cận này không khả thi để giải quyết bài toán (đãthử dùng giải pháp này trong đề cương nhưng không thành công).

Bên cạnh đó, việc khảo sát cũng cần quan tâm đến thời gian di chuyển trongngày vì có những khung giờ cao điểm sẽ có mật độ giao thông lớn, xe bus dễ bị kẹtnên việc đánh đồng các thời điểm trong ngày là không hợp lý Mặt khác, yếu tốngày trong tuần cũng rất quan trọng vì đơn giản xe di chuyển trong các ngày ngườidân đi làm nhiều (thứ 2 đến thứ 6) sẽ khác với ngày cuối tuần.

Trang 12

Một yếu tố khác cũng nên tính đến đó là khoảng cách từ điểm Oi khảo sátđến điểm cuối của hành trình Lí do nên tính thêm yếu tố này là vì trong đoạnđường di chuyển của bus, nếu đánh đồng các dữ liệu mô tả hành trình của bus trêncác đoạn khác nhau, ví dụ từ A đến B và từ X đến Y, thì không chính xác, do có thểđoạn A đến B là đoạn đường xa lộ, thường thông thoáng nên di chuyển nhanh hơn,các điểm O sẽ xa nhau hơn, còn đoạn từ X đến Y thì xe không di chuyển nhanhđược do đang trong nội ô, mật độ các điểm O sẽ dày hơn.

3.2 Yêu cầu của giải pháp

Bên cạnh những phân tích tiếp cận vấn đề trên, về mặt kĩ thuật cũng cần giảiquyết một số vấn đề liên quan khác để hiện thực hoá giải pháp.

Đầu tiên là vấn đề thu thập dữ liệu, như đã nêu ở trên, việc gắn thêm phầncứng hoặc tiếp cận dữ liệu hộp đen đều khá khó để triển khai (qua nhiều khâu phứctạp ở giữa), nên việc thu thập dữ liệu này cần phải có giải pháp đơn giản hơn, dễtriển khai hơn nhưng cũng phải đảm bảo các yếu tố an toàn trong giao thông.

Kế đến là các vấn đề tiền xử lý dữ liệu, huấn luyện các mô hình tính toán dựavào các dữ liệu đã được xử lý này để cho ra kết quả mong muốn, cụ thể ở đây làthời gian đến của xe bus ở một trạm nào đó, kiểm tra độ chính xác và lưu trữ các môhình này.

Cuối cùng là vấn đề ứng dụng, làm sao để thông báo cho người dùng kết quảnày và làm sao để liên tục nhận phản hồi để cải thiện hệ thống? Một phương thức cóthể nghĩ tới là cập nhật kết quả trên bảng điện tử tại các trạm, nhưng sẽ cập nhậtnhư thế nào nếu có 2 xe cùng đang di chuyển trên cùng 1 đoạn đường và chỉ cáchnhau 15 giây (một việc thường thấy trong thực tế)? Yêu cầu sẽ phải có một giảipháp nào đó tiếp cận với người dùng cuối một cách tiện lợi, dễ bảo trì nhưng vẫnluôn có thể nhận được phản hồi và cải thiện giải pháp.

Trang 13

Kế đến là các mô hình học máy, các giải pháp máy học ngày nay đã và đangtrở thành giải pháp tối ưu cho dạng bài toán này, các giải pháp này mô tả đoạnđường di chuyển của bus (cùng các điều kiện chi phối) bằng vector đặc trưng chứacác đặc điểm của một chuyến xe như thời gian đến và đi ở mỗi trạm, thời tiết, thờigian di chuyển trong ngày, vị trí GPS của xe, … và đưa bài toán dự đoán này về

dạng regression problem Ở thời điểm hiện tại, Random forests, SVM, Neural

networks (NN) và một số phương pháp học máy khác đang rất thành công trongviệc giải quyết vấn đề này.

Ví dụ ta có thể kể đến bài báo “Multistep Prediction of Bus Arrival Timewith the Recurrent Neural Network” [1] Nhóm tác giả trong bài báo này dựa trêntập dữ liệu về một tuyến xe bus tại Linyi, tỉnh Shandong từ ngày 28-3 tới ngày 28-6,2020 để phân tích và xây dựng tập các đặc trưng trước khi đưa vào các mô hìnhRNN để tính toán thời gian tới các trạm xe bus Trong bài báo đó, các đặc trưng sửdụng làm đầu vào cũng đi từ thực tế như là: vận tốc xe, số xe bus, số trạm, vị tríGPS của xe bus, số định danh tài xế, thời gian di chuyển giữa các trạm trước đó, …sau khi các đặc trưng này được chuẩn hoá thì được đưa vào kiểm tra với nhóm 7 môhình khác nhau, là các dạng cải tiến từ RNN:

Trang 14

Hình 4.1 Kết quả của bài báo [1]

Một số kết quả đáng chú ý được nhóm tác giả rút ra:

- Mô hình GRU thì có hiệu suất cao hơn mô hình LSTM với ít tham số hơn vàkết quả có độ chính xác lớn hơn.

- Nhóm các mô hình LSTM, trừ ConvLSTM, thì có nhiều tham số và có độchính xác cao hơn nhóm còn lại.

- Thuộc tính của bộ dữ liệu không ảnh hưởng đến kết quả của các mô hình, màngược lại là độ phức tạp của các mô hình.

- Mô hình ConvLSTM đã cho thấy độ chính xác cao nhất khi xử lý dữ liệu vềthời gian và không gian, điều này cho thấy cần bao gồm các thuộc tính liênquan đến không gian.

Bài báo này giải quyết khá tốt việc dự đoán thời gian tới trạm nhưng độ phứctạp của mô hình đưa ra là rất lớn, dẫn tới thời gian huấn luyện lâu Dữ liệu đầu vàogồm nhiều trường mà chưa chỉ ra được những dữ liệu này có thực sự cần thiết trongquá trình huấn luyện hay không, việc này làm tăng không gian lưu trữ dữ liệu thô vàphức tạp trong phần tiền xử lý dữ liệu.

Cũng có một số cách khác tiếp cận bài toán này khá thú vị, ví dụ có thể kểđến bài báo “The bus arrival time prediction using LSTM neural network andlocation analysis” [2] Bài báo này cũng sử dụng mô hình LSTM với tập dữ liệuphong phú hơn, 1200 tuyến xe bus trong 3 tháng Nhóm tác giả của bài này nêu racác yếu tố ngoại cảnh (hơi khác so với các bài báo khác) có tác động đến việc giảiquyết quyết bài toán như là thời gian chờ cũng như thời gian chạy qua đường tại cácgiao lộ có đèn đỏ (được chuẩn hoá thành một thông số có tên là hiệu suất chu kì đènxanh), trọng số mô tả mức độ ùn tắc giao thông (dựa trên khung giờ cao điểm và

Trang 15

một tham số tuỳ chỉnh của tác giả), … Bên cạnh đó, tác giả chia từng tuyến đườngra thành nhiều đoạn, gom (clustering) các đoạn giống nhau (trên tất cả các tuyếnđường) thành từng cụm dựa trên độ dài của đoạn và một vài tiêu chí khác Sau đó sẽhuấn luyện mô hình riêng cho các cụm này bằng LSTM Các kết quả sau khi kiểmtra được tác giả đưa ra như sau:

Hình 4.2 Kết quả của bài báo [2]

Một số các kết luận từ nhóm tác giả:

+ Kết quả thu được dựa trên thực tế tình hình giao thông.

+ Ước tính thời gian dừng và thời gian di chuyển riêng biệt của xe bus.+ Xem xét tín hiệu giao thông đèn đỏ.

+ Xem xét các tiện ích thành phố.

Mặc dù có kết quả đủ tốt nhưng việc chia cụm các đoạn là một việc khá khóđể triển khai trên diện rộng, có thể sẽ phải dùng rất nhiều model để chỉ dự đoán trêncùng một tuyến đường Việc này có thể sẽ đem lại kết quả tốt nhưng đổi lại sẽ phátsinh thêm nhiều vấn đề về quản lý, huấn luyện các model cũng như bài toán tíchhợp model dưới ứng dụng di động của người dùng.

Nhìn chung, mọi phương pháp đều có những ưu nhược điểm khác nhau tuỳvào cách tổ chức mô hình huấn luyện, cấu trúc và lượng (ít hay nhiều) của dữ liệuđang có, đặc điểm giao thông của khu vực đang khảo sát, … Riêng trong khuôn khổcủa bài luận văn này, bên cạnh việc thiết kế hệ thống thu thập dữ liệu, tôi đề xuấtgiải pháp sử dụng hai mô hình máy học là LSTM và GRU (hai mô hình cải tiến củaRNN) để giải quyết bài toán Toàn bộ giải pháp của tôi từ cơ sở lý thuyết đến triển

Trang 16

khai thực tế, từ hệ thống thu thập dữ liệu đến khảo sát các mô hình máy học dựatrên dữ liệu thu thập được sẽ được trình bày ở phần tiếp theo.

5.Giải pháp đề xuất5.1 Cơ sở lý thuyết

Về cơ bản, ý tưởng của giải pháp này dựa trên việc tính toán khoảng cáchgiữa các điểm toạ độ GPS, sau đó tính toán vận tốc tức thời của xe bus tại các điểmnày và dự đoán thời gian tới trạm tiếp theo thông qua việc dự đoán vận tốc trungbình của xe trên đoạn đường đang di chuyển.

Để mô tả chi tiết, đầu tiên, theo bài toán được nêu ra ở phần 3.1, ta sử dụngcông thức Heavisine (trích dẫn công thức từ [2]) như sau để tính toán khoảng cáchgiữa 2 điểm toạ độ O:

(5.1.1)𝑎 = (𝑠𝑖𝑛 𝑙𝑎𝑡𝑖 − 𝑙𝑎𝑡

𝑖−12 )

+ 𝑐𝑜𝑠(𝑙𝑎𝑡

𝑖−1)(𝑠𝑖𝑛 𝑙𝑜𝑛𝑖 − 𝑙𝑜𝑛𝑖−12 )

(5.1.2)𝑑 = 2𝑅 ∗ 𝑎𝑟𝑐𝑠𝑖𝑛(𝑚𝑖𝑛(1, 𝑠𝑞𝑟𝑡(𝑎)))

- lativà loni: toạ độ của điểm Oi.- lati-1và loni-1: toạ độ của điểm Oi-1.

- R: bán kính Trái Đất có giá trị khoảng 6371000 (m).

Từ khoảng cách d trên và dựa vào khoảng thời gian lấy mẫu n (s), một cáchtổng quát và gần đúng ta có được vận tốc tức thời của bus tại điểm Oi bằng côngthức:

Trang 17

đối thông thoáng Do đó giá trị này cũng là yếu tố cần thiết trong quá trình huấnluyện và dự đoán sau này.

Bên cạnh đó, để có thể dự đoán được thời gian đến trạm B khi bus đang ởmột điểm Oi bất kì nằm giữa 2 trạm A và B, một cách gần đúng ta có thể tính theocông thức:

𝑂𝑖𝐵 = 𝑑𝑂𝑖𝐵𝑣

Tiếp theo, ta sẽ tìm hiểu qua lý thuyết về các mô hình máy học sẽ được khảosát trong bài này Đầu tiên là về mô hình gốc của cả LSTM và GRU, mô hình mạngnơ-ron hồi quy RNN (Recurrent Neural Network).

Mô hình RNN là một mô hình máy học phổ biến được sử dụng trong xử lýdữ liệu chuỗi, như dữ liệu chuỗi thời gian (time series data) RNN có khả năng môhình hóa và dự đoán dữ liệu dựa trên thông tin liên quan từ quá khứ RNN khác vớicác mô hình nơ-ron truyền thẳng (feedforward neural networks) bởi khả năng giữlại trạng thái ẩn (hidden state) và sử dụng nó làm đầu vào cho các thời điểm tiếptheo Điều này cho phép RNN xử lý dữ liệu chuỗi có tính tương quan thời gian vàmô hình hóa các phụ thuộc dài hạn.

Trang 18

Hình 5.1.5 RNN

RNN có khả năng mô hình hóa thông tin từ các thời điểm trước đó trongchuỗi dữ liệu Điều này cho phép nắm bắt được các mẫu phụ thuộc thời gian và mốiquan hệ giữa các phần tử trong chuỗi nên thông thường thì RNN được sử dụng đểdự đoán giá trị tiếp theo trong chuỗi dữ liệu dựa trên thông tin quá khứ Khả năngnày của RNN được áp dụng trong nhiều lĩnh vực như dự báo thời tiết, dự đoán giácổ phiếu hoặc tạo ra văn bản tự động.

Dữ liệu chuỗi thời gian thường có tính chất biến động, với sự thay đổi theothời gian RNN xử lý dữ liệu dạng này bằng cách duy trì trạng thái ẩn và cập nhậtthông tin từ mỗi thời điểm Nhờ khả năng duy trì trạng thái ẩn này, RNN có thể môhình hóa các phụ thuộc dài hạn trong dữ liệu chuỗi Điều này giúp nắm bắt được cácquy luật phức tạp trong chuỗi dữ liệu, cải thiện khả năng dự đoán và mô hình hóa.

Tuy nhiên, mô hình RNN cũng có một số hạn chế như vấn đề mất mát(vanishing / exploding gradient) trong bài toán xử lý dữ liệu dài Để khắc phụcnhững nhược điểm này, các biến thể của RNN như LSTM (Long Short-TermMemory) và GRU (Gated Recurrent Unit) đã được phát triển Những biến thể nàyđã cải thiện khả năng mô hình hóa dữ liệu chuỗi và giảm vấn đề mất mát khi độ dàidự đoán tăng lên.

Trang 19

Hình 5.1.6 LSTM

Cấu trúc của một LSTM bao gồm các “cell” hoặc “memory cell” và các“gate” để kiểm soát thông tin đi vào và ra khỏi cell Các cell trong LSTM tương tựnhư ô trạng thái trong một mạng nơ-ron hồi quy thông thường và được sử dụng đểlưu trữ thông tin từ quá khứ.

Đầu tiên mỗi phần tử trong chuỗi đầu vào được đưa vào một “input gate” đểquyết định phần nào của thông tin sẽ được cập nhật vào ô trạng thái (cell state) Sauđó, LSTM quyết định phần nào của thông tin trong ô trạng thái cần được "quên"bằng cách sử dụng một cổng quên (forget gate) Cổng này sẽ xác định xem thông tinnào sẽ được giữ lại và thông tin nào sẽ được bỏ qua Tiếp theo, LSTM tính toán mộtcổng xuất (output gate) để quyết định phần nào của ô trạng thái sẽ được truyền tảiđến đầu ra của LSTM Cuối cùng, LSTM tính toán một ô xuất (cell output) bằngcách áp dụng hàm kích hoạt (activation function) lên ô trạng thái và sau đó kết hợpvới đầu ra của output gate Cell output này là đầu ra của LSTM tại thời điểm hiệntại.

Trong quá trình huấn luyện, LSTM được điều chỉnh bằng cách sử dụng giảithuật lan truyền ngược (backpropagation) và gradient descent để tối thiểu hóa sai sốgiữa đầu ra thực tế và đầu ra dự đoán Việc này giúp LSTM "học" cách ứng xử vớidữ liệu chuỗi và tạo ra các dự đoán chính xác.

Nhìn chung, LSTM là một kiến trúc mạng nơ-ron hồi quy đặc biệt được thiếtkế để giải quyết vấn đề vanishing gradient và có khả năng xử lý phụ thuộc dài hạn

Trang 20

trong dữ liệu chuỗi Các gate trong LSTM cho phép kiểm soát thông tin đi vào và rakhỏi cell, làm cho LSTM trở thành một công cụ mạnh mẽ trong nhiều tác vụ liênquan đến dữ liệu chuỗi dài.

Tương tự như LSTM, GRU cũng được sinh ra để giải quyết vấn đề về mấtmát gradient (vanishing gradient) của RNN Về mặt cơ chế, GRU cũng sử dụng cáccổng, nhưng cấu trúc của nó đơn giản hơn so với LSTM GRU có một cổng cậpnhật (update gate), quyết định xem thông tin mới có nên được lưu trữ và cổng đầura (reset gate), quyết định thông tin nào nên được đưa ra từ mạng Mô hình GRUhợp nhất cổng quên và cổng đầu vào của LSTM thành một cổng cập nhật duy nhất.

Hình 5.1.7 GRU

GRU có ít tham số hơn so với LSTM, do đó nó cần ít tài nguyên tính toánhơn khi huấn luyện và triển khai Điều này có thể làm cho GRU nhanh hơn trongquá trình huấn luyện và đào tạo mô hình trên các tập dữ liệu lớn hơn Ngoài ra, môhình này có xu hướng thích ứng tốt hơn với các đoạn dữ liệu ngắn hơn, trong khiLSTM có thể xử lý tốt hơn trong trường hợp các đoạn dữ liệu dài và phức tạp hơn.

5.2 Mô hình tổng quát

Từ những phân tích cũng như những yêu cầu về mặt ứng dụng nêu ở phần 3,tôi trình bày một giải pháp tương đối khả thi về mặt thực tiễn như sau:

Trang 21

Hình 5.2.1 Mô hình tổng quát

Như đã phân tích ở trên, phần thu thập dữ liệu phải được thiết kế sao cho dễthực thi và có khả năng bảo trì cao, bên cạnh đó vẫn phải đảm bảo các yêu cầu vềmặt kĩ thuật như độ chính xác và an toàn của dữ liệu, không gây nguy hại gì cho cáchệ thống vận hành xe bus, nên giải pháp đề xuất là một ứng dụng di động (MobileApp) để thực hiện việc này Ứng dụng di động này sẽ cung cấp một cơ chế thu thậpthông tin GPS, timestamp một cách liên tục với độ tin cậy cao, một giao diện cóthiết kế hạn chế ít nhất có thể các thao tác để không ảnh hưởng đến người dùng cuối(hạn chế dùng điện thoại trên xe vì an toàn cá nhân) Về mặt lưu trữ, dữ liệu này sẽđược lưu trực tiếp lên bộ nhớ của điện thoại và sẽ gửi lên trung tâm dữ liệu ngay khicó kết nối internet.

Dữ liệu thô (raw data) sau khi đã lên tới trung tâm lưu trữ sẽ được tiền xử lý(preprocess), sau đó lưu lại trong kho dữ liệu (data warehouse) Tiếp theo, các môhình tính toán sẽ lấy các dữ liệu này làm dữ liệu huấn luyện, kết quả của bước DataAnalyzer này sẽ là các mô hình đã được huấn luyện và được lưu trữ lại trên kho lưutrữ Ứng dụng di động sau đó sẽ lấy các mô hình này về và xử lý các dữ liệu ở thờigian thực để cho ra các kết quả mong đợi.

Trang 22

Hình 5.2.2 Sơ đồ chi tiết

Các phần tiếp theo sẽ mô tả chi tiết từng thành phần chức năng của mô hìnhnày.

5.3 Thu thập dữ liệu (Data collector)

Phần này bao gồm chủ yếu là 3 thành phần:

Trang 23

Hình 5.3.1 Sơ đồ luồng thu thập dữ liệu

- Mobile App: thu thập thông tin GPS và lưu trữ trong bộ nhớ.- Data storage: trung tâm lưu trữ dữ liệu thô.

- Authenticator: dùng để xác thực Mobile App và cấp quyền cho App được

quyền tải dữ liệu lên Data storage.

Trong khuôn khổ luận văn này, ta dùng hệ thống Cloud AWS để thực thi môhình như sau:

Hình 5.3.2 Triển khai trên AWS

Trang 24

Về phía Mobile App, ta chọn n = 6(s) cho 1 lần lấy mẫu và như đã phân tíchở trên thì bên trong vẫn phải có cơ chế caching data phòng ngừa trường hợp phonesẽ hết dữ liệu di động gây mất dữ liệu, kiến trúc phần này như hình:

Hình 5.3.3 Kiến trúc xử lý của Mobile App

Trong bài luận văn này tôi tiến hành thu thập dữ liệu của chuyến xe bus 150đi từ Tân Vạn về Chợ Lớn trong 8 ngày khác nhau (trong tháng 5 và tháng 6 năm2023) làm dữ liệu khảo sát.

Tới đây, dữ liệu thô đã được lưu trữ trên S3, từ đây ta có thể truy xuất và xửlý tiếp ở các bước tiếp theo.

Trang 25

Hình 5.3.4 Dữ liệu trên S3

Hình 5.3.5 Mô tả dữ liệu trên S3

Tái hiện lại đường đi của xe bus dựa vào dữ liệu thu được bằng Google MyMap như hình:

Trang 26

Hình 5.3.6 Tái hiện đường đi bus trên Google My Map

5.4 Xử lý dữ liệu (Data Analyzer)

Sau khi đã có dữ liệu thô, ta tiến hành tiền xử lý dữ liệu và huấn luyện mộtsố mô hình dự đoán thời gian đến của bus:

Ngày đăng: 30/07/2024, 17:16

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

TÀI LIỆU LIÊN QUAN