Tải bản đầy đủ (.pdf) (52 trang)

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

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.81 MB, 52 trang )

ĐẠI HỌC QUỐC GIA TP. HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
--------------------

NGUYỄN QUỐC TÙNG

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
Chuyên ngành : Khoa Học Máy Tính
Mã số: 8480101

LUẬN VĂN THẠC SĨ

TP. HỒ CHÍ MINH, tháng 7 năm 2023


CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI
TRƯỜNG ĐẠI HỌC BÁCH KHOA –ĐHQG -HCM
Cá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ùng
4. 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ó).
CHỦ TỊCH HỘI ĐỒNG

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


ĐẠI HỌC QUỐC GIA TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜ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: 1970599

Ngày, tháng, năm sinh: 29/10/1990

Nơi sinh: Bình Dương

Chun 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 for
collecting bus data applied to the problem of predicting the nearest bus station
arrival 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 tố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):
CÁN BỘ HƯỚNG DẪN 1
(Họ tên và chữ ký)

CÁN BỘ HƯỚNG DẪN 2
(Họ tên và chữ ký)

PGS.TS. Thoại Nam

TS. Nguyễn Lê Duy Lai

Tp. HCM, ngày 09 tháng 06 năm 2023
HỘI ĐỒNG NGÀNH
(Họ tên và chữ ký)

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

(Họ tên và chữ ký)




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 đã đóng
góp, hỗ trợ và truyền cảm hứng cho quá trình nghiên cứu và hồn thiện bài luận văn
củ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ầy
TS. 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 q trình nghiên cứu của tơi. Sự tận tâm và sự chỉ dẫn của
thầy Nam và thầy Lai đã đóng góp quan trọng đến sự phát triển không những trong
khuô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ủa
tô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 trong
q trình thu thập dữ liệu, một nguồn tài nguyên vô cùng q giá để nghiên cứu của
tơi có thể tiến triển và hồ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 u đã ln đứng về phía tơi, cổ vũ và động viên suốt quá trình
thự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ác
bạn đã đóng vai trị quan trọng trong việc vượt qua các khó khăn để hồn thành bài
luận văn.




TĨM TẮT LUẬN VĂN
Bài tốn về dự đốn thời gian đến trạm của xe bus là một trong những bài
toá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 giao

thơ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 được
lị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ều
hà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 khn khổ các mục tiêu cụ thể cần hồn thành
để có thể giải quyết bài tố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ác
mơ hình cải tiến từ RNN là LSTM và GRU để dự đoán thời gian tới trạm tiếp theo
của xe bus đang di chuyển thông qua việc dự đốn vận tốc trung bình của xe. Cuối
cùng sẽ là phần đánh giá kết quả thu được khi chạy các mơ hình tính tốn, kết luận
cũ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.




ABSTRACT
The problem of predicting bus arrival time to a station is one of the highly
interesting and challenging tasks aimed at improving the current complex public
transportation situation. It not only helps end users in organizing their travel
schedules but also improves the coordination of bus trips from the bus control
center. This thesis addresses these real-world issues, the current status, and the areas
that need improvement. It then presents the framework of specific objectives that
need to be accomplished in order to solve the problem.
This study starts with the construction of a data collection system. The
collected data is then processed and features are extracted to serve as inputs for
improved models based on RNN, namely LSTM and GRU, to predict the next bus
arrival time by predicting the average speed of the bus. Finally, an evaluation of the
results obtained from running the computational models is conducted, conclusions
are drawn, and areas for improvement, as well as future directions of the topic, are
discussed.





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ông
việ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ệu
tham 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ụng
trong 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ơng
trình nghiên cứu này.
Tơi hồn tồn chịu trách nhiệm về tính chính xác, tính tồn vẹn và tính xác
thự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ặc
vi 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 quan
trong q 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 2023
Học viên thực hiện luận văn

Nguyễn Quốc Tùng





MỤC LỤC
1. Giới thiệu
2. Những vấn đề liên quan
3. Vấn đề
3.1. Khảo sát đường đi của xe bus giữa 2 trạm
3.2. Yêu cầu của giải pháp
4. Các giải pháp tiếp cận
5. Giải pháp đề xuất
5.1. Cơ sở lý thuyết
5.2. Mô hình tổng quát
5.3. Thu thập dữ liệu (Data collector)
5.4. Xử lý dữ liệu (Data Analyzer)
5.4.1. (Tiền) xử lý dữ liệu (Data processing)
5.4.2. Các mơ hình tính tốn
5.4.2.1. Giải quyết bài toán
5.4.2.2. Đánh giá kết quả
5.5. Triển khai (Predictor)
6. Kết luận và các hướng mở rộng của đề tài
Tham khảo



1
1
2
2
4
4
7
7

12
13
17
18
21
21
33
36
39
41


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ột

hệ 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ác
phươ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ẹt
xe tại các khung giờ cao điểm vì có những ưu thế nhất định như sẽ giảm lượng xe
lưu thông trên đường, các tuyến đường dành riêng cho xe bus được phát huy tối đa
lợi thế, … Vì vậy, việc lên lộ trình chạy sao cho tối ưu hố lượng người dùng trên
các tuyến đường đóng vai trò quan trọng trong việc vận hành hệ thống.
Tuy nhiên, trong q 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 tốn thời
gian để xe bus hồn thành lộ trình gặp nhiều khó khăn. Trong đó, bài tốn con về
việc dự đốn thời điểm xe bus tới một trạm cụ thể là một bài tốn vừa có tính thách
thứ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ùng
có 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 tốn phân tích như trên
cũ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 khn khổ luận văn này, tôi đề xuất và thực hiện một giải pháp
thu 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 xe
150 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 mong
muốn cơng trình này sẽ mang lại kết quả tính tố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ác

là 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 để
tiếp cận vấn đề này. Mặc dù lịch trình của một chuyến bus ln được ghi lại cố định
1


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ộc
rấ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án
nà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 tốn, việc xây dựng
hệ 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ách
thứ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 q khứ, cịn ở Việt
Nam thì hầu như khơng thể đơn phương tiếp cận như trong khuôn khổ của luận văn
nà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ạng
nà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ại

cá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ếp
cậ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ân
tí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 cho
cuố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í GPS
củ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ụ n
giâ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 đến
khi xe tới điểm đích. Để mơ tả q trình này, ta có thể quy về hệ quy chiếu 1 chiều
như sau để đơn giản hố việc mơ tả:

2


Hình 3.1.1. Mơ tả bài tố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 A
hay 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ách

giữa 2 điểm Oi là khơng bằng nhau vì đường thực tế sẽ có những đoạn tương đối
vắng hoặc đơng xe tuỳ đoạn.
Một cách thơng thường, ta có thể dự đốn được thời điểm đến của xe ở một
trạm B nào đó nếu số lượng các điểm O là không đổi trong q 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ợp
nà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ời
gian 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 trong
ngà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ần
này), số lượng các điểm O là liên tục thay đổi. Để tăng độ chính xác trong q trình
thu 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 trong
ngày vì có những khung giờ cao điểm sẽ có mật độ giao thông lớn, xe bus dễ bị kẹt
nê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ười
dân đi làm nhiều (thứ 2 đến thứ 6) sẽ khác với ngày cuối tuần.

3


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ên
cá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 thố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ải

quyế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ần
cứ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ức
tạ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 tồ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 tốn dựa
và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ật
như 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ách
nhau 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ải
phá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ẫn
ln có thể nhận được phản hồi và cải thiện giải pháp.

4


4.

Các giải pháp tiếp cận
Đây không phải là vấn đề mới, đã có nhiều bài báo, cơng trình, mơ hình được


nghiên cứu và triển khai khắp nơi nhằm giải quyết vấn đề này.
Đầu tiên là những phương pháp heuristic, nhưng với những nhận xét ở trên,
có thể thấy được rằng những phương pháp này không mang lại giá trị dự đốn có độ
tin cậy cao. Ta có thể xem xét một tập dữ liệu như là một hệ thống giao thông lớn và
phức tạp trong các đô thị hiện đại, hàng loạt các đặc trưng có thể chi phối đến q
trình tính tốn như là khung thời gian, thời tiết, hạ tầng giao thông, hành động hay
khả năng xử lý của các bác tài khác nhau mỗi ngày (mặc dù có thể chỉ khảo sát trên
cùng một tuyến nhất định), các thuật tốn heuristic dần dần khơng thể đáp ứng nổi
với số lượng biến số như vậy.
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à đang
trở thành giải pháp tối ưu cho dạng bài tố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ứa
cá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ời
gian 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 trong
việ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 Time
with the Recurrent Neural Network” [1]. Nhóm tác giả trong bài báo này dựa trên
tậ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ình
RNN để tính tố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 hố 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:

5



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ên
quan đế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ức

tạ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ào
gồ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 trong
q 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 tố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 and

location analysis” [2]. Bài báo này cũng sử dụng mơ hình LSTM với tập dữ liệu
phong 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 ra
cá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ải
quyế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ác
giao lộ có đèn đỏ (được chuẩn hố thành một thơng số có tên là hiệu suất chu kì đèn
xanh), trọng số mơ tả mức độ ùn tắc giao thông (dựa trên khung giờ cao điểm và

6


một tham số tuỳ chỉnh của tác giả), … Bên cạnh đó, tác giả chia từng tuyến đường
ra 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ểm
tra đượ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ên
cù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át
sinh thêm nhiều vấn đề về quản lý, huấn luyện các model cũng như bài tốn tích
hợ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ất
giả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ủa
RNN) để giải quyết bài tốn. Tồn bộ giải pháp của tôi từ cơ sở lý thuyết đến triển

7


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ựa
trê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ất

5.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 tốn khoảng cách

giữa các điểm toạ độ GPS, sau đó tính tốn vận tốc tức thời của xe bus tại các điểm
này và dự đoán thời gian tới trạm tiếp theo thơng qua việc dự đốn vận tốc trung
bì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ụng
cơng thức Heavisine (trích dẫn cơng thức từ [2]) như sau để tính tốn khoảng cách
giữa 2 điểm toạ độ O:
𝑎 = (𝑠𝑖𝑛

𝑙𝑎𝑡𝑖 − 𝑙𝑎𝑡𝑖−1 2
2

) + 𝑐𝑜𝑠(𝑙𝑎𝑡𝑖)𝑐𝑜𝑠(𝑙𝑎𝑡𝑖−1)(𝑠𝑖𝑛


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

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

-

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

-

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

𝑙𝑜𝑛𝑖 − 𝑙𝑜𝑛𝑖−1 2
2

)

(5.1.1)
(5.1.2)

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ách
tổ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ông
thức:

𝑣𝑖 =

𝑑
𝑛


(5.1.3)

Như đã đề cập trong phần các vấn đề liên quan thì việc tính tốn vận tốc tức
thời này sẽ cho ta biết được tình trạng giao thơng hiện tại của đoạn đường mà xe
bus đang đi qua. Nếu giá trị này càng nhỏ, chứng tỏ đoạn đường này đang có mật độ
giao thơng lớn, xe di chuyển khó khăn, ngược lại thì đoạn đường này đang tương

8


đối thơng thống. Do đó giá trị này cũng là yếu tố cần thiết trong quá trình huấn
luyện và dự đốn sau này.
Bên cạnh đó, để có thể dự đố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 theo
cơng thức:

𝑡𝑂𝑖𝐵 =

𝑑𝑂𝑖𝐵

(5.1.4)

𝑣𝐴𝐵

-

𝑡𝑂𝑖𝐵 : thời gian dự kiến để xe đi từ Oi đến trạm B.

-


𝑑𝑂𝑖𝐵 : quãng đường từ Oi đến B được tính theo cơng thức 5.1.2.

-

𝑣𝐴𝐵 : vận tốc trung bình trên đoạn đường AB.
Như vậy, để dự đoán thời gian tới trạm tiếp theo (B), ta sẽ giải quyết bài

toán liên quan là bài toán dự đoán vận tốc trung bình của xe bus trên một đoạn
đường bất kì (AB) tại một điểm (Oi) trên đoạn đường đó.
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ảo
sá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ạng
nơ-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ự đốn dữ liệu dựa trên thông tin liên quan từ quá khứ. RNN khác với
cá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ếp
theo. Đ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.

9


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 đó trong
chuỗ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ối
quan 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ăng
nà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 theo
thờ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ật
thô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ác
quy luật phức tạp trong chuỗi dữ liệu, cải thiện khả năng dự đố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ục
những nhược điểm này, các biến thể của RNN như LSTM (Long Short-Term
Memory) 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ài
dự đoán tăng lên.

10


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 số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 tin
nào sẽ được giữ lại và thông tin nào sẽ được bỏ qua. Tiếp theo, LSTM tính tốn một
cổ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 tốn một ơ xuất (cell output) bằng
cách áp dụng hàm kích hoạt (activation function) lên ơ trạng thái và sau đó kết hợp
với đầu ra của output gate. Cell output này là đầu ra của LSTM tại thời điểm hiện

tại.
Trong quá trình huấn luyện, LSTM được điều chỉnh bằng cách sử dụng giải
thuậ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ới
dữ liệu chuỗi và tạo ra các dự đố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ết
kế để giải quyết vấn đề vanishing gradient và có khả năng xử lý phụ thuộc dài hạn

11


trong dữ liệu chuỗi. Các gate trong LSTM cho phép kiểm sốt thơng tin đi vào và ra
khỏi cell, làm cho LSTM trở thành một công cụ mạnh mẽ trong nhiều tác vụ liên
quan đế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ất
mát gradient (vanishing gradient) của RNN. Về mặt cơ chế, GRU cũng sử dụng các
cổ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ập
nhật (update gate), quyết định xem thơng tin mới có nên được lưu trữ và cổng đầu
ra (reset gate), quyết định thông tin nào nên được đưa ra từ mạng. Mơ hình GRU
hợp nhất cổng qn 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 ngun tính tốn
hơn khi huấn luyện và triển khai. Điều này có thể làm cho GRU nhanh hơn trong
quá 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. Ngồ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 khi
LSTM 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 qt

Từ những phân tích cũng như những 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:

12


Hình 5.2.1. Mơ hình tổng qt
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 tồn của dữ liệu, khơng gây nguy hại gì cho các
hệ thống vận hành xe bus, nên giải pháp đề xuất là một ứng dụng di động (Mobile
App) để 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ập
thô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 tồ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 khi
có 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 tố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 Data
Analyzer 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ưu
trữ. Ứ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ời
gian thực để cho ra các kết quả mong đợi.

13


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ình
nà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:

14


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

15



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 phone
sẽ 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ăm
2023) 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.

16


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 My
Map như hình:

17


×