00060000761 khai phá tuyến Đường di chuyển thường xuyên và Định tuyến hiệu quả cho dịch vụ chia sẻ phương tiện Đi lại 00060000761 khai phá tuyến Đường di chuyển thường xuyên và Định tuyến hiệu quả cho dịch vụ chia sẻ phương tiện Đi lại
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
BÁO CÁO TỔNG KẾT
KẾT QUẢ THỰC HIỆN ĐỀ TÀI KH&CN
CẤP ĐẠI HỌC QUỐC GIA
Tên đề tài: Khai phá tuyến đường di chuyển thường xuyên và định tuyến hiệu quả cho dịch vụ chia sẻ phương tiện đi lại
Mã số đề tài: QG.20.56
Chủ nhiệm đề tài: Vũ Thị Hồng Nhạn
Hà Nội, 2023
Trang 2PHẦN I THÔNG TIN CHUNG
1.1 Tên đề tài: Khai phá tuyến đường di chuyển thường xuyên và định tuyến hiệu quả cho dịch vụ chia sẻ phương tiện đi lại
2 TS Ngô Thị Duyên Trường ĐHCN Thư ký
3 TS Tạ Việt Cường Trường ĐHCN Thành viên chính
4 TS Ma Thị Châu Trường ĐHCN Thành viên chính
5 TS Hoàng Thị Điệp Trường ĐHCN Thành viên chính
6 TS Vũ Diệu Hương Trường ĐHCN Thành viên chính
7 TS Võ Đình Hiếu Trường ĐHCN Thành viên chính
8 TS Nguyễn Thị Ngọc Diệp Trường ĐHCN Thành viên chính
9 Ths Nguyễn Thu Trang Trường ĐHCN Thành viên chính
1.4 Đơn vị chủ trì:
1.5 Thời gian thực hiện:
1.5.1 Theo hợp đồng: từ tháng 04 năm 2020 đến tháng 04 năm 2022
1.5.2 Gia hạn (nếu có): đến tháng 04 năm 2023
1.5.3 Thực hiện thực tế: từ tháng 04 năm 2020 đến tháng 04 năm 2023
1.6 Những thay đổi so với thuyết minh ban đầu (nếu có):
1.7 Tổng kinh phí được phê duyệt của đề tài: 300 triệu đồng
PHẦN II TỔNG QUAN KẾT QUẢ NGHIÊN CỨU
Trang 3hãng taxi có thể áp dụng là tăng lượng xe lên điều này sẽ dẫn tới việc thu nhập của lái xe không tăng, tắc nghẽn giao thông hơn, tiêu thụ nhiên nhiên liệu nhiều hơn, và lượng khí thải ra cũng cao hơn Vì thế chia sẻ chuyến đi (hay đi chung xe) là một giải pháp hiệu quả hơn [1-16] Các dịch vụ taxi có hỗ trợ chia sẻ chuyến đi như Grab, Uber hay Lyft Tuy nhiên, những dịch vụ này mới chỉ hỗ trợ đặt chuyến đi chung theo thời gian thực, nên mức độ thành công khi xử lí yêu cầu chưa cao và ngay như chức năng Grabshare hiện nay đã tạm ngừng do thiếu kĩ thuật xử lí truy yêu cầu hiệu quả Cho tới nay các kỹ thuật xử lý thiết lập nhóm, lập lịch cũng như định tuyến dều được đề xuất cho hai loại mô hình đi chung là tĩnh và động Với mô hình tĩnh, nhóm đi chung sẽ được thiết lập từ trước với điểm đón và điểm trả cố định, ví dụ những người sống c ng khu và đi làm c ng cơ quan Tuy nhiên cách này chỉ hoạt động với giả sử người d ng đi chung từ đầu tới cuối, sẽ không áp dụng được nếu người d ng chỉ đi có một đoạn, đồng thời trong trường hợp người d ng có một hoạt động nào khác vẫn sẽ được đưa vào nhóm và điều này làm ảnh hưởng tới người khác trong nhóm Với
mô hình động, nhóm đi chung sẽ được thiết lập theo thời gian thực, cách tiếp cận này cho tới nay khá thành công với việc đặt xe đi riêng nhưng việc đi chung đòi hỏi xử lí phức tạp do ràng buộc về thời gian đón trả của các hành khác cũng như thời gian phản hồi yêu cầu [17-20] Vì vậy, các kỹ thuật đề xuất cho cả hai cách tiếp cận này hiện đều không tận dụng được số ghế vẫn còn trống ở trên xe [4] Hiện nay, với sự sẵn có của mạng không dây và thiết bị định vị cho nên một khối lượng
dữ liệu vị trí người d ng được ghi và lưu trữ liên tục dễ dàng Đây là cơ hội giúp đưa ra quyết định sát thực trong triển khai các loại hình dịch vụ cung cấp xe Các kĩ thuật khai phá dữ liệu và định tuyến cao cấp nhằm triển khai trong dịch vụ đi chung là một mảng nghiên cứu đã và đang thu hút được sự quan tâm rất lớn của các kĩ sư và nhà nghiên cứu giúp hoạt động giao thông trơn tru, thuận tiện và dễ dàng hơn [1- 3] Ý tưởng của cách tiếp cận này xuất phát từ quan sát thực tế cho thấy, một số đông người tham gia giao thông lái xe đi một mình và có rất nhiều người cùng tuyến đường như vậy
Trong đề tài này chúng tôi đề xuất một cách tiếp cận xây dựng mô hình đi chung chung theo dòng lai để tận dụng được những ưu điểm của cả hai mô hình đi chung đồng thời đề xuất các kĩ thuật tạo lập nhóm và xử lí yêu cầu hiệu quả bằng cách phối hợp cơ chế tạo nhóm tĩnh và động Từ
đó hướng xây dựng một hệ thống gợi ý đi chung cho nhóm người có lộ trình thường xuyên tương tự nhau sẽ giúp giảm một số lượng đáng kể xe trên đường trong cùng khung giờ, đồng thời hỗ trợ người d ng đặt chuyến đi theo thời gian thực để tận dụng tối đa số ghế còn trống Mô hình đi chung này mang lại lợi ích cho cả người lái và người đi, cụ thể là người lái xe có thu nhập cao hơn trong khi người đi sẽ được giảm chi phí
2 Mục tiêu
Đề tài tâp trung lĩnh vực nghiên cứu mô hình cung cấp dịch vụ đi chung xe nhằm giảm số lượng
xe lưu thông trên đường, phục vụ được nhiều người hơn với chi phí thấp mà lợi nhuận thu về cho dịch vụ lại cao Cụ thể nghiên cứu tâp trung phát triển mô hình dữ liệu phù hợp cho dịch vụ đi chung, kĩ thuật khai phá lội trình đường đi thường xuyên của người dùng và tạo dựng nhóm đi
Trang 4chung cũng như định tuyến người lái Dựa trên mô hình dữ liệu và các kĩ thuật nghiên cứu đó, đề tài phát triển một hệ thống thử nghiệm cung cấp dịch vụ đi chung xe, trong đó hỗ trợ tạo nhóm đi chung cho những người d ng có đường đi thường xuyên tương tự nhau Người d ng cũng có thể gọi điện đặt chuyến trước khi đăng kí đi thường xuyên hoặc đặt chuyến đi chung theo thời gian thực
Mục tiêu nghiên cứu cụ thể gồm:
Nghiên cứu mô hình dữ liệu cho dịch vụ chia sẻ xe
Nghiên cứu phương pháp trích xuất lộ trình thường xuyên của người dùng từ dữ liệu lịch sử
di chuyển của người dùng
Nghiên cứu phương pháp tạo nhóm đi chung dựa trên đường đi thường xuyên
Nghiên cứu phương pháp định tuyến hiệu quả cho nhóm người đi chung xe với những ràng buộc về thời gian chờ
Xây dựng hệ thống prototype cung cấp dịch vụ đi chung
3 Phương pháp nghiên cứu
Nghiên cứu được tiến hành phối hợp cả cách tiếp cận về lí thuyết lẫn thực nghiệm Nghiên cứu dưới góc độ lý thuyết về mô hình dịch vụ đi chung xe, chúng tôi áp dụng phương pháp khảo sát các tài liệu nghiên cứu lưu trữ hiện có cũng như quan sát thực tế với ứng dụng đi chung Sự phối hợp này giúp các phương pháp bổ sung các ưu điểm cho nhau và hạn chế được những nhược điểm của từng phương pháp Cụ thể, nghiên cứu tiến hành khảo sát các mô hình dữ liệu không gian, thời gian
và lựa chọn mô hình phù hợp cho dịch vụ đi chung có thể chở người và chuyển đồ Tiếp theo các thuật toán khai phá mẫu tuần tự cho dữ liệu truyền thống thường được áp dụng trong các hệ thống
xử lí giao tác được phân tích, xử lí và thiết kế để có thể áp dụng hiệu quả cho dữ liệu quỹ đạo đường đi của người dùng gồm có hai thuộc tính quan trọng là không gian và thời gian Thuật toán
bó cụm cho dữ liệu dưới dạng các điểm tĩnh sẽ được nghiên cứu và thiết kế cho tập điểm có sự biến đổi về thời gian để tìm ra các cụm có sự di chuyển giống nhau tạo thành các nhóm đi chung Cuối cùng trong dịch vụ đi chung xe cần thuật toán lập lịch và định tuyến hiệu quả sao cho đáp ứng được nhiều yêu cầu từ người dùng mà tổng thời gian di chuyển là tối thiểu theo cả hai chế độc đặt chuyến online và offline
Về mặt thực nghiệm, nghiên cứu tiến hành thiết kế và đánh giá các thuật toán đề xuất so với các thuật toán hiện có với cả dữ liệu tổng hợp và dữ liệu thật Sau đó áp dụng các phương pháp đề xuất vào xây dựng mô hệ thống thực nghiệm cung cấp dịch vụ đi chung cho người và kèm cả chuyển đồ Tiếp đó hệ thống được tiến hành kiểm thử
4 Tổng kết kết quả nghiên cứu
4.1 Mô hình dữ liệu
Trang 5Trước khi tìm hiểu làm thế nào để tổ chức và lưu trữ dữ liệu trong hệ thống và làm thế nào để truyền thông tin tới người dùng, ta cần phân loại các kiểu dữ liệu liên quan tới ứng dụng gọi xe và chia sẻ chuyến đi Trong miền ứng dụng này, dữ liệu có thể được phân thành ba loại sau:
Dữ liệu miền (domain data): Dữ liệu miền bao gồm khái niệm dữ liệu không gian, thời gian, và
không gian-thời gian (spatiotemporal) Dữ liệu cơ bản và chung đối với các dịch vụ gọi xe và đi chung xe cũng như giao hàng là dữa liệu thời gian, tọa độ, vị trí, và chuyển động Vì thế cần tổ chức
dữ liệu sao cho hệ thống có thể chia sẻ, tái sử dụng những dữ liệu một cách hợp lý và hiệu quả
Chiều không gian (spatial dimension) trong mô hình dữ liệu (Hình 4.2) bao quát những khái niệm sau: (i) Vị trí (điểm) của đối tượng gọi là position; (ii) Position và vùng xung quanh tạo thành location Location có mối quan hệ tới vị trí không gian và đồng thời có mối quan hệ với thời gian
khi xảy ra sự kiện (Ví du: Tại một ví trí giờ cao điểm luôn tắc nghẽn) Khái niệm thời gian bao gồm:
(i) nhãn thời gian thực (valid timestamp) xác định khi nào một sự kiện xảy ra và khoảng thời gian)
diễn biến của sự kiện Ngoài ra, do thiết bị hoặc cách đo mà dữ liệu thu được không hoàn toàn
chính xác, vì vậy khi biểu diễn một điểm thường đi kèm với một độ không chắc chắn (uncertainty) Uncertainty biểu diễn độ lệch khỏi vị trí chính xác của điểm Sự di chuyển (Movement) của một đối tượng được định nghĩa bởi position và thời gian Các đối tượng có mối quan hệ với nhau như quan
hệ topo(topological_rel), hướng (direction_rel) và một số phép tính hình học (metri_rel)
Hình 4.1 biểu diễn mối quan hệ của năm lớp cơ bản trong domain data: Coordinate, Location, Surrounding_Area, Movement, và Time
Time: có dữ liệu validtime biểu diễn thời gian thực tại thời điểm đối tượng di động đang ở một vị trí
Coordinate: (x,y) biểu diễn điểm mà đối tượng đang ở đó và Uncertainty lưu độ lệch
của đối tượng so với giá trị thực
Movement: có thành phần dữ liệu điểm (point) lưu tọa độ điểm của đối tượng tại thời
điểm bắt đầu ts, tốc độ speed, và hướng direction mà đối tượng di chuyển cho tới thời điểm cuối cùng te
Sourrounding_Area: gồm các thuộc tính timestamp và coordinate có quan hệ với lớp
Time và Cooridnate một cách tương ứng
Location có quan hệ với Coordinate và Surrounding_Area và có mối quan hệ
toplogical_rel, metric_rel, direction_rel relations với các vị trí khác
Trang 6Hình 4 1 Lớp dữ liệu và mối quan hệ trong domain data
Dữ liệu nội dung(content data): Dữ liệu nội dung là các đối tượng địa lý sử dụng trong các dịch
vụ cung cấp như dịch vụ đi chung, gọi một chuyến xe hay giao hàng Đối tượng địa lý gồm các thành phần dữ liệu là mô tả, thuộc tính không gian, và thuộc tính thời gian
Dữ liệu ứng dụng(application data): Dữ liệu ứng dụng bao gồm profile người dùnng và thông
tin các dịch vụ cung cấp cho khách hàng Profile gồm thông tin cá nhân của người dùng và những mối quan tâm hay sở thích liên quan tới dịch vụ Thông tin dịch vụ tương ứng với tác vụ cần thực hiện
Phân tích và hiểu miền ứng dụng giúp chúng ta phân biệt các kiểu dữ liệu tồn tại và nhận ra được kiểu dữ liệu chủ đạo và mối quan hệ giữa chúng Để tổ chức dữ liệu, trong nghiên cứu này chúng tôi áp dụng mô hình dữ liệu đa chiều (Hình 4.2) Mỗi chiều dữ liệu có cấu trúc phân tầng
Hình 4.2 biểu diễn mô hình dữ liệu tổng quan sử dụng trong hệ thống đi chung xe, trong đó có lưu trữ yêu cầu (requests) do người sử dụng gửi tới hệ thống Chiều thời gian (time dimension) biểu diễn thời gian mà yêu cầu được thực hiện Chiều nội dung (content dimension) biểu diễn nội dung dịch vụ yêu cầu như đặt chuyến đi cho người hay giao hàng Kiểu nội dung được nhóm thành Content type Chiều vị trí (location dimension) lưu vị trí mà tại đó yêu cầu người d ng được gửi
Movement
+Coordinate: point +Time: timestamp ts +Time: timestamp te +Speed
Position/Coordinate
+x: Integer +y: Integer +Uncertainty: deviation
Location
+Coordinate: point +Surrounding_Area +topological_rel() +metric_rel() +direction_rel()
Trang 7Hình 4 2 Mô hình dữ liệu đa chiều
4.2 Phương pháp khai phá dữ liệu không gian- thời gian trích xuất lộ trình phổ biến từ dữ liệu lịch sử của người dùng
Quỹ đạo: Quỹ đạo với định danh o j
được định nghĩa là một chuỗi hữu hạn các điểm {(oj, p1, t1),
(oj, p2, t2),…, (oj
, pn, tn)} trong không gian X × Y × T, trong đó điểm p i được biểu diễn bằng tọa độ
(xi, yi) tại thời điểm lấy mẫu t i
Cơ sở dữ liệu (CSDL) DB bao gồm một số tập quỹ đạo DB ∑
, mỗi DBj là một chuỗi thời gian có dạng (oj
, xji, yji, vti) với N o là số lượng quỹ đạo trong tập
Gọi T là nhãn thời gian lớn nhất trong số các quỹ đạo trong CSDL Gọi oj
i là vị trí của của đối
Đường di chuyển: Cho một khoảng thời gian tối thiểu giữa các điểm là τ và khoảng thời gian di
chuyển max_span=[Ts, Te] Một chuỗi di chuyển là một danh sách các nhãn v ng địa lý được sắp
xếp theo thời gian ms = <(a1, t1),(a2, t2),… (aq, tq)> trong đó ai chứa oji , ti - ti-1≥τ và tq- t1≤max_span, sao cho q≤ T và 1≤i ≤q Một đường đi gồm k thành phần được ký hiệu là k-pattern
Đường con: Cho một đường di chuyển S1, nếu nhãn a1 xảy ra trước a2, chúng ta ký hiệu là a1
<a2 Ta nói S1 là một dãy con của dãy khác S2 nếu tồn tại một-một hàm f ánh xạ các v ng (nhãn) trong S1 tới các v ng trong S2 sao cho: 1) ai∩f(ai) ≠ ∅; 2) nếu ai <aj thì f(ai) <f(aj); 3) tai + 1 - tai = t f (ai
+ 1) -t f(ai)
Trang 8Đường đi thường xuyên: Một chuỗi di chuyển ms = <(a1, t1),(a2, t2),… (aq, tq)> được gọi là
thường xuyên nếu số lượng quỹ đạo support(ms) đi theo chuỗi đó bằng hoặc hơn một ngưỡng cho trước min_sup thì ms được gọi là một chuỗi di chuyển thường xuyên Một chuỗi thường xuyên là
cực đại nếu nó không phải là dãy con của bất kỳ chuỗi nào khác
Tuy nhiên cách định nghĩa về đường đi thường xuyên trên chưa kiểm soát được mật độ điểm trong một
vùng ai, nếu vùng mà quá lớn thì đường đi nào cũng thường xuyên Mỗi vùng ai ms gồm tập điểm Amsi =
{oji | oji là vị trí trong ai }, theo định nghĩa [8], một vùng có mật độ cao được định nghĩa với thông số bán kính
r và số điểm MinPts Một điểm q1 trong tập Amsi là điểm tâm nếu đường tròn bán kính r tại q1 chữa ít nhất
MinPts điểm Nếu điểm q2 trong phạm vi bán kính r từ điểm tâm q1, nó sẽ được gán với nhóm của q1 Nếu q2
cũng là một điểm tâm, thì những điểm trong bán kính r tâm q2 cũng được nhóm cùng với các điểm có tâm q1
Nếu Amsi tạo một nhóm có mật độ cao với thông số r và MinPts, thì ai gọi là có mật độ cao Trong nghiên cứu này chúng tôi bắt đầu từ đơn vị nhỏ nhất là một ô lưới Những ô lưới nào cạnh nhau có mật độ cao và thuộc
cùng vùng ai sẽ được hợp làm một Nếu một đường gồm tất cả các vùng có mật độ cao thì đường đi đó là đường đi thường xuyên.
Bài toán đặt ra là với một mặt phẳng chiếu D gồm các v ng, cho một CSDL DB gồm các quỹ đạo của người d ng trong một khung giờ [ts, te], độ hỗ trợ nhỏ nhất min_sup, hãy tìm ra đường đi
thường xuyên dài nhất
4.2.1 Tiền xử lí dữ liệu
Mặt phẳng chiếu M d ng để xây dựng lưới (grid) gồm các ô đều nhau kích cỡ r và được biểu diễn
bởi mảng hai chiều D[1:nx,1:ny] Quỹ được được ánh xạ vào lưới và được chuyển dạng thành chuỗi các ô trên lưới, trong đó nếu như một số điểm liên tục nhau c ng ánh xạ vào trong một ô thì chỉ
điểm đầu tiên được giữ lại Cấu trúc dữ liệu của mỗi ô trong đường di chuyển có dạng (Dij,oi,ti)
trong đó Dij trỏ đến D[i,j], vị tri của đối tượng tại thời điểm ti CSDL DB gồm các quỹ đạo được chuyển dạng thành tập các đường di chuyển MS
4 2 2 Thu t to n t m ờng i phổ biến dài nhất củ ng ời dùng
Thuật toán gồm một số các bước chính như sau:
Tìm vùng có mật độ cao (1-pattern)
Tại mỗi điểm thời gian ti, áp dụng thuật toán bó cụm như đề cập bên trên để tìm ra các v ng (mẫu) có mật độ cao Tập các mẫu thường xuyên 1-patterns được lưu trong tập F1
Tìm k-patterns thường xuyên (k ≥ 2)
Để tìm ra đường đi có độ dài lớn hơn một, cơ chế sinh mẫu của thuật toán GSP [21] được hiệu chỉnh vì cho trường hợp các thành phần có thông tin về thời gian, kích cỡ v ng có thể thay đổi và thứ tự thành phần tuân theo hướng di chuyển
Đối với k = 2, các mẫu được tạo ra bằng cách kết hợp F1 với chình nó Gọi (ai, ti) và (aj, tj) là hai 1-patterns trong F1, ví dụ <(ai, ti), (ai, tj)> có thể kết hợp để tạo ra 2-pattern nếu 1) ti > tj và ai và aj
là 2 v ng cạnh nhau
Đối với k>2, mẫu cần tìm được tạo theo cách: cho trước một tập hợp các (k-1)-patterns thường
xuyên Fk-1, các mẫu tiếp theo sẽ được tạo bằng cách nối Fk-1 với chính nó Một mẫu s1 = <(a1 , t1),
Trang 9(a2 , t2),…, (ak-1 , tk-1)> kết hợp với một mẫu khác s2 = <(b2 , t '2), (b3 , t'3),…, (bk , t'k)> m, mẫu
cand chỉ được tạo ra
1) t2 = t'2 ,…, ti-1 = t 'i-1
2) Sau khi bỏ phần tử đầu tiên của s1 và phần tử cuối c ng của s2 , sau đó lấy giao của các cặp ai
và bi là khác rỗng ở tất cả các vị trí 2 ≤ i ≤ k -1,
Để tạo mẫu nhanh đường bao xấp xỉ MBR của các v ng được áp dụng Nếu giao của tất cả các
cặp đó đều khác rỗng, mẫu cần tìm sẽ được có dạng cand = <( a1 , t1), (c2 , t2),…, (ck-1,tk-1), ( bk , t'k)>, trong đó c2= MBR(a2) ∩ MBR (b2),…, ck-1 = MBR(ak-1) ∩ MBR (bk -1)., Sau đó kết nối các
điểm ở tất cả các phần tử của cand xem Ri.oid = Rj.oid Điều đó có nghĩa là, các điểm được khớp phải tuân theo trật tự thời gian và thuộc c ng một quỹ đạo của đối tượng chuyển động
Có thể nhận thấy rằng các cụm của mẫu có thể không dày đặc sau mỗi lần kết hợp như vậy Vấn
đề này có thể được giải quyết bằng cách thực hiện so sánh với một ngưỡng nào đấy Nếu ngưỡng tối
thiểu là min_sup, thì các v ng của mẫu k-patterns (k ≥ 2) phải được nhóm lại để xác thực nếu chúng
dày đặc Trong quá trình tái phân nhóm lại, một số điểm có thể bị loại bỏ do chúng ko nằm trong các cụm mới Đường đi thường xuyên cuối c ng được tìm ra sẽ được biểu diễn bởi chuỗi các điểm bằng cách lấy trung bình tọa độ của các điểm nằm trong mỗi v ng
Kết quả thuật toán trả lại đường thường xuyên dài nhất và loại bỏ những đường không thường xuyên cũng như đoạn đường con
Hiệu quả của thuật toán được đánh giá và so sánh với thuật toán hiện có dựa trên dữ liệu tổng
hợp Mặt phẳng tham chiếu kích cỡ [1000,1000] được chia thành các vùng ai đều nhau với chiều dài
250 và rộng 125, nghĩ là tổng số gồm 32 v ng và khi lưới có kích cỡ 16x16 thì mỗi vùng ai gồm 8 ô
với r=62.5
Trước khi các quỹ đạo được sinh, mẫu đường đi dài nhất gồm các vùng trên mặt phẳng M được
xác định mỗi vùng gồm những ô lưới nào Giả sử các vùng nằm kề nhau có thể đi qua lại được với
nhau Theo mẫu đó, tập đường đi sẽ đươc sinh ra với độ dài giao động theo nhãn thời gian [1,T]
Tuy nhiên, quỹ đạo cũng sẽ được sinh ngẫu nhiên bằng cách đối hướng sang vùng khác so với mẫu hoặc khoảng cách giữa các điểm bị bóp méo Tập dữ liệu được sinh ra theo quy tắc sau: khoảng 70% quỹ đạo có chiều dài tối đa theo mẫu trong đó 30% quỹ đạo giống nhau và 30% còn lại di chuyển ngẫu nhiên
Tập dữ liệu D3000_T40_L10 có nghĩa là số quỹ đạo là 3000, tổng nhãn thời gian 40, chiều dài
lớn nhất của mẫu là 10 Thuật toán MaxMOP được so sánh với thuật toán DFS_MINE[22]
Kết quả trong Hình 4.3 cho thấy thuật toán MaxMOP yêu cầu thời gian xử lí cao hơn so với thuật toán DFS_MINE bởi vì ban đầu thuật toán phải áp dụng kĩ thuật bó cụm để tìm được các vùng có mật độ cao trước khi tìm đường đi thường xuyên dài Vì thuật toán DFS_MINE không xét thứ tự về mặt thời gian của các vùng nên khi sinh mẫu ứng viên bị thừa phải loại bỏ Ngoài ra do không áp dụng bó cụm nên các mẫu được sinh ra cũng nhiều hơn và đòi hỏi thời gian xử lí cao Do đó, sự khác biệt về thời gian giữa hai thuật toán không quá cao về tổng thể
Trang 10(a) Thời gian xử lí (b) Số lượng mẫu
Hình 4 3 So sánh MaxMOP vs DFS_MINE
4 3 h ơng ph p phân cụm dữ liệu không gian- thời gian t m nhóm i chung cho dịch vụ i chung xe
Cho một tập đường đi thường xuyên của U người dùng ⋃ trong đó đường đi thường
xuyên của người dùng ui là Fi được định nghĩa bởi một chuỗi vị trí tọa độ p(xi,yi) tại thời điểm ti Để
đơn giản, giả sử các vị trí có thể xác định ở bất cứ điểm thời gian nào trong khoảng [t, t+1]
Hai người được coi ở gần nhau tại thời điểm t nếu khoảng cách của họ không vượt quá một ngưỡng maxDis
Gần về không gian: Cho ngưỡng khoảng cách maxDis, tại thời điểm t một số điểm tạo thành
một nhóm nếu như khoảng cách giữa chúng không lớn hơn maxDis
Đoạn hợp lệ: Cho một nhóm người dùng G, ngưỡng khoảng cách maxDis, ngưỡng thời gian
minDur, tập các điểm liên tiếp nhau [ta, tb] được gọi là đoạn hợp lệ của G nếu thỏa mãn một số điều
Nhóm người dùng: Cho ngưỡng khoảng cách maxDis, ngưỡng thời gian minDur, và G gồm số
người dùng sẽ lập thành một nhóm C=<G ,maxDis, minDur> nếu G có đoạn hợp lệ
Một nhóm gồm k người dùng gọi là k-cluster Ngưỡng maxDis và minDur được d ng để định
nghĩa sự gần gũi về mặt không gian và thời gian giữa các đối tượng trong nhóm Một nhóm có thể
có nhiều đoạn hợp lệ và trọng số của một nhóm C được định nghĩa theo công thức dưới đây
Nhóm hợp lệ: Gọi C là một nhóm người dùng với các đoạn hợp lệ s1, ,sn và Tspan kí hiệu số điểm thời gian trong CSDL ,trong số C được tính bởi
( ) ∑
0 20 40 60 80 100
Trang 11Trọng số càng lớn có nghĩa là người d ng đi c ng đường càng xa, càng mang lại ý nghĩa lớn cho
khả năng đi chung Nếu trọng số của một nhóm vượt một ngưỡng cho trước minWei, ta gọi là nhóm
hợp lệ
Thuật toán khai phá tất cả nhóm hợp lệ được gọi là AllVC trong đó có áp dụng thuộc tính Apriori [5]: Giả sử có hai nhóm C=<G, maxDis, minDur> và C‟=<G, maxDis, minDur>, C‟ là nhóm con của C nếu G‟G Nếu một nhóm hợp lệ thì tất cả các nhóm con của nó cũng hợp lệ
Thuật toán AllVC dựa trên chiến lược tìm kiếm theo bề rộng Kí hiệu nhóm ứng viên có k người dùng là TCk và nhóm hợp lệ tương ứng là VCk Thuật toán khởi tạo với nhóm VC1 gồm tất cả người
dùng có trong tập dữ liệu FDB, có nghĩa khởi tạo mỗi người thuộc một nhóm riêng
Các ứng viên TCk được tạo ra bằng cách giao kết hợp tất cả các cặp phần tử trong VCk-1, thao tác
này được thực hiện bởi hàm GenCandidate(VCk-1) Trọng số của các ứng viên TCk được xác định
bằng cách quét tập FDB Ứng viên nào có trọng số không dưới minWei được lưu vào VCk Quy trình tạo các nhóm kết thúc khi không tìm thêm được nhóm nào nữa
Vì thuật toán AllVC tìm tất cả các nhóm nên dẫn tới bùng nổ không gian khi kết hợp tất cả các
phần tử trong đó trong khi nhu cầu của ứng dụng là chỉ cần tìm những nhóm có thể đi chung và
không cần tìm tất cả các nhóm con có thể của nó, vì thế chúng tôi đề xuất thuật toán aVC-growth dựa trên sự hiệu chỉnh của thật toán VG-growth trong [10] để chỉ khai phá những nhóm hợp lệ lớn nhất dựa trên chiến lược theo chiều sâu Quy trình khai phá khởi tạo nhóm với một người dùng ui và liên tục được kết nạp thêm thành viên mới theo chiến lược theo chiều sâu cho tới khi không thêm được nữa sẽ hay nói cách khác là thu được nhóm lớn nhất
Nhóm hợp lệ được sinh ra dựa trên đồ thị VC-graph biểu diễn mối quan hệ giữa các đối tượng Gọi VC-graph=(V,E) là một đồ thị có hướng được biểu diễn bởi tập đỉnh V và tập cạnh E Đỉnh của
đồ thị V biểu diễn người dùng trong tập FDB và cũng có mặt trong nhóm CV2, được gọi là những
người dùng hợp lệ Tập E gồm các cạnh biểu diễn mối quan hệ giữa hai người dùng có trong nhóm
CV2 Mỗi cạnh được gắn với các đoạn hợp lệ
aVC-graph được khởi tạo bằng cách quét tập dữ liệu FDB để tìm nhóm 2 phần tử, áp dụng cách như thuật toán AllVC Để thuận tiên, ta quy ước một cạnh có hướng được chỉ từ chỉ mục nhỏ tới chỉ mục cao hơn Tiếp theo, duyệt đồ thị VC-graph theo cách tiếp cận chiều sâu để tìm ra những nhóm
hợp lệ lớn nhất
Cho người dùng u, gọi Preu là tập các đỉnh đứng trước u và E(Preu) là tập các cạnh có hướng sau
khi đã hiệu chỉnh dựa trên u Tập Preu và E(Preu) tạo tập dữ liệu cho các nhóm đồng diễn ra với u trong các nhóm hợp lệ, được biết tới như một cơ sở tạo nhóm điều kiện của u
Thuật toán VC-growth sinh các nhóm hợp lệ bằng cách duyệt đồ thị theo chiều sâu, trong đó hàm aVG-growth(VC-graph, null) là một hàm đệ quy
Algorithm: aVC-growth(VC-graph, P)
Global variables: VC-graph, maxDis, maxDur, minWei
Output: maximal valid clusters
Method: call VC-growth(VC-graph, null)
Trang 12Vsort V in decreasing order of the number of the vertex‟s neighbors ufirst vertex in V;
while (V of VC-graph )
Generate the condition cluster Q={u}P;
Select all prefix vertices of v, denoted by PreQ
If (PreQ ≠)
For each vertex u in PreQ
Output a valid cluster C{u}Q;
Remove uC from V and PreQ
E(PreQ) the directed edges on PreQ;
if (E(PreQ) ≠) //
for each directed edge (ui,uj) in E(PreQ)
//adjust valid segment against v validSeg(ui,uj)=validSeg(ui,uj)
validSeg(ui,v)validSeg(ui,v)
ifvalidSeg(ui,uj) doesn‟t satisfy minDur and minWei
remove edge(ui,uj) from E(PreQ);
if (E(PreQ) ≠) //after adjusting
PreQ and E(Pre Q form Q’s condition l cluster b se;
VC-graph(Q) construct the conditional VC-graph of Q;
Call procedure VC-growth(VC-graph(Q), Q);
Hình 4 4 Thuật toán aVC-growth
Trong nghiên cứu trước thuật toán VG-growth tìm tất cả các nhóm hợp lệ kể cả các nhóm con của
một nhóm hợp lệ Tuy nhiên theo yêu cầu của dịch vụ đi chung xe, một người chỉ được phép tham gia vào một nhóm, cho nên một khi người d ng đó đã thuộc một nhóm rồi thì sẽ không cần thiết phải xem xét tiếp nữa Mục đích của nghiên cứu trong đề tài là tìm ra những nhóm hợp lệ lớn nhất,
và đồng thời tăng tốc thời gian xử nên trước hết cần sắp xếp tập đỉnh V theo thứ tự giảm dần theo số
lượng của đỉnh làng giềng Chúng ta sẽ duyệt đồ thị bắt đầu với đỉnh của nhiều láng giềng nhất và chỉ lưu lại nhóm có số phần tử lớn nhất và không lưu lại các tập con của nhóm này Vì vậy khi duyệt đồ thị sinh nhóm, chúng ta sẽ bắt đầu với đỉnh nằm đầu danh sách và mỗi khi một nhóm được tạo ra rồi thì những người d ng nào đã được tham gia nhóm sẽ bị loại khỏi danh sách chờ (tức là
loại khỏi tập đỉnh V)
Thuật toán aVC-Growth được đánh giá với bộ dữ liệu D30_L12 gồm 30 người d ng và độ dài đường đi dài nhất là 12 và được so sánh với hai thuật toán AllCV và VC-Growth Thông số có các giá trị mặc định là maxDis=900, minDur=3 và minWei=0.4 Kết quả trong hình 4.7(a) cho thấy aVC-Growth chạy nhanh hơn so với hai thuật toán còn lại bơi vì hai thuật toán đó sinh tất cả các
Trang 13khả năng có thể tạo nhóm bao gồm cả những nhóm con của nhóm lớn Đặc biệt AllVC tiêu tốn nhiều thời gian nhất Thuật toán aVC-Growth có thời gian ít nhất do có sự cải tiến về cách lưu trữ
đỉnh duyệt trong đồ thị cũng như chỉ sinh những nhóm lớn nhất và không sinh những nhóm con của chúng bởi vì với dịch vụ đi chung mỗi người chỉ tham gia một nhóm duy nhất
Hình 4.8 biểu diễn số nhóm được sinh ra bởi aVC-Growth khi thay đổi thông số maxDis và minDur với D30_L12 Khi tăng maxDis số lượng nhóm giảm xuống bởi vì nhiều người thỏa mãn
điều kiện gần về không gian hơn và vì thế được gán chung vào một nhóm Chính vì thế mà số lượng
nhóm bị giảm xuống còn khi maxDis nhỏ thì nhóm lớn có thể bị phân tách thành nhóm con Khi tăng minDur tăng lên thì số nhóm bị giảm xuống vì yêu cầu người dùng phải gần nhau trong một
khoảng thời gian đủ lớn mới được đưa vào nhóm, điều kiện này dễ vi phạm, chính vì thế mà số nhóm giảm xuống
Hình 4 5 So sánh các thuật toán về thời gian và số lượng nhóm
(a) Số nhóm thay đổi theo maxDis với
4.4 Chiến lược lập lịch và định tuyến cho dịch vụ đi chung xe
Hệ thống hoạt động với hai cơ chế tĩnh và động Theo cơ chế tĩnh, các nhóm được tạo lập với thuật toán bó cụm bên trên và vì nhóm người d ng được tạo ra dựa trên đường đi phổ biến và gần
Trang 14về thời gian cũng như không gian cho nên để thuận tiện cho lái xe điểm đón của nhóm được chọn là trung điểm của các điểm đầu tiên và điểm xuống là trung điểm các điểm cuối của quãng đường đi chung Đường đi của lái xe mặc định là đường ngắn nhất giữa hai điểm đón và thả Tuy nhiên, những yêu cầu theo thời gian thực đòi hỏi hệ thống hoạt động ở cơ chế động linh hoạt Trong nghiên cứu này yêu cầu chuyến đi gồm hai loại là chở người và giao hàng Nghiên cứu điển hình gần đây nhất cho bài toán đi chung người và hàng đã đề xuất được các mô hình khái niệm và toán học cho bài toán gọi xe đi chung động (DSARP: Dynamic Share-A-Ride Problem) [11] Dịch vụ tích hợp các thông tin về các yêu cầu theo thời gian thực gồm điểm đón, điểm thả và các thông tin ràng buộc khác để hỗ trợ cho phân tích thống kê sau này, hiệu chỉnh dịch vụ hướng người dùng và
ra quyết định Doanh thu và chất lượng của dịch vụ phụ thuộc rất lớn vào phương pháp định tuyến Hầu hết phương pháp đã được đề xuất dựa trên phân tích dữ liệu lịch sử để nâng cao hiệu quả xử lí
và tối ưu hiệu quả đường đi tổng thể với những sự kiện trong lịch trình Rất ít nghiên cứu quan tâm tới việc điều hướng lái xe nên đi đâu sau khi hoàn thành những tác vụ trên lịch
Nghiên cứu này giải quyết bài toán lập lịch và định tuyến cho dịch vụ đi chung vận chuyển người
và hàng trực tuyến O-TSSP (Online Taxi-Share Scheduling and routing Problem) khi không còn yêu cầu nào trên lịch nữa người lái xe sẽ được điều hướng về một điểm đỗ cụ thể Mô hình đề xuất làm giảm thiếu xót của mô hình DSARP bằng cách thêm tập các điểm đỗ khi điều hướng Khác mô hình DSARP, yêu cầu chuyển hàng không biết trước mà được đặt theo thời gian thực như đặt xe chở người Một yêu cầu giao hàng được chèn vào lịch của một xe chỉ khi nó không làm ảnh hưởng tới việc chở người với giả sử rằng người luôn được ưu tiên vận chuyển trước
Sự kiện trên lịch đã được chốt được định tuyến với đường đi ngắn nhất nhưng đối với yêu cầu theo thời gian thực việc định tuyến cần một cơ chế khác Bằng cách áp dụng quy trình Poisson [13],
vị trí mà tại đó một yêu cầu có thể được gửi đi tại một thời điểm có thể dự đoán được Với thông tin
dự đoán trước, định tuyến thực hiện theo cách tối đa hiệu quả di chuyển đồng thời giảm thời gian nhàn rỗi của các xe Thuật toán đầu tiên OTSF(Online Taxi Scheduling Framework) điều hướng lái
xe tới vị trí đỗ gần nhất so với vị trí sự kiện cuối cùng trong lịch Thuật toán thứ hai DP(OTSF with Demand Prediction) kết hợp OTSF với dự đoán yêu cầu cho phép lái xe lựa chọn một điểm đỗ mà ở đó khả năng nhận được yêu cầu cao Dựa vào dữ liệu lịch sử đặt chuyến, tỉ lệ thành công được xác định bởi tỉ lệ tổng số yêu cầu đã được đáp ứng gửi đi tại một điểm đỗ và tổng
OTSF-số yêu cầu trong một bán kính nào đó
Bài toán O-TSSP được định nghĩa là bài toán định tuyến với cửa sổ thời gian trên đồ thị Đồ thị
có hướng G =(P*,E) gồm tập đỉnh P mô tả bốn kiểu điểm trong một v ng (điểm đỗ, điểm đón, điểm thả, điểm trên đường) và tập cạnh E nối các đỉnh Hệ thống cần gợi ý một đường đi tốt nhất để một
xe rảnh rỗi có cơ hội lớn nhận được yêu cầu mới sớm nhất
Đầu vào của thuật toán gồm:
R: tập yêu cầu Mỗi yêu cầu r R được xác định bởi thông số tp(r) với giá trị bằng 1 nếu đó
là yêu cầu chở người, ngược lại là 0 nếu yêu cầu chuyển hàng
L: số xe được nh số thứ tự từ 1 tới L Mỗi xe k bắt đầu từ vị trí pkS và kết thúc tại pkT
trong phạm vi vùng D
Trang 15 Tất cả các điểm đón và điểm thả của các yêu cầu được lưu trong tập PR={rp, rd}r R
Tập các điểm bắt đầu và kết thúc của các xe được kí hiệu * + và * +
Tập PQ gồm các điểm đỗ thuộc Q Mỗi không gian đỗ q Q được gán các điểm c(q)
Lịch của mỗi xe được định nghĩa trên tập điểm P ={PRPSPTPQ}
Mỗi cạnh (pi,pj)E có khoảng cách d(pi,pj) và thời gian di chuyển là t(pi,pj)
Một số biến sử dụng trong mô hình:
- s(p): một điểm ngay sau điểm p,p P \PT
- id(p): định danh tuyến đường xe đi qua điểm p, p P
- od(p): vị trí của một điểm p trên tuyến đường id(p), p P
- ad(p): tổng quãng đường di chuyển từ điểm xuất phát của tuyến đường id(p) đến điểm p, p P
- Thời điểm đến at(p) và thời điểm khởi hành dt(p) của xe id(p) tại điểm ,p P
- b(p,t) = 1 nếu một xe đỗ tại điểm p tại thời điểm t và 0 ngược lại p PQ, t [ts, te] Mục tiêu của bài toán là tối đa tổng số lợi nhuận Lợi nhuận không chỉ phụ thuộc vào chi phí xăng dầu mà chủ yếu quyết định bởi tổng số quãng đường đi ∑ ( ) của tất cả các xe
4.4.1 Dự đoán nhu cầu đặt xe
Tần suất xuất hiện yêu cầu được phân tích dựa trên yêu cầu lịch sử được thu thập theo thời gian
và không gian Yêu cầu xe có thể được xem như một sự kiện không gian- thời gian với giả sử (i) Tần suất xuất hiện của một sự kiện có thể nhận một giá trị nguyên không âm trong một khoảng thời gian (ii) Các sự kiện độc lập với các sự kiện khác, (iii) Sự xuất hiện của một sự kiện độc lập với sự kiện trước nó (iv) Tỷ lệ xuất hiện trung bình của một sự kiện độc lập với bất kỳ lần xuất hiện nào
Trong khoảng thời gian T = [ts, te] (chính xác đến 1 giây) và miền không gian phụ thuộc thời gian
hữu hạn D(t) R2, quá trình này phụ thuộc vào tỷ lệ sự xuất hiện a(t), trong đó a biểu diễn một vị trí trong D(t) và tT là một điểm thời gian Trước tiên, quá trình Poisson được sử dụng để tìm ra phân phối các yêu cầu xe và sau đó dự đoán các điểm đón tại thời điểm t vị trí a Để thuận tiện
trong các ứng dụng trực tuyến, khi tất cả các quyết định phải được thực hiện một cách nhanh chóng, quá trình Poisson không gian-thời gian có thể được xem như là một quá trình Poisson hoàn toàn mang tính thời gian (TPP: Temporal Poisson Process) trên một diện tích [14] Cụ thể, một vùng (ví
dụ, một thành phố) được phân thành một tập n vùng không giao nhau D={Di, ,Dn} TPP trên
vùng Di phụ thuộc vào một tham số toán học duy nhất Di(t) Ta chia T thành khoảng thời gian bằng nhau * , ( )- + trong đó t1=ts Biến ngẫu nhiên ( ) biểu diễn số lượng
yêu cầu trong vùng DiD trong khoảng thời gian Tj vào ngày d của tháng Dữ liệu huấn luyện để
tìm phân phối của yêu cầu xe là hợp tất cả các tập dữ liệu ( ) thu được bằng cách quan sát từng
khu vực Di trong khoảng thời gian Tj Xác suất quan sát yêu cầu x được tính bởi
( ) /
( )
Trang 16Trong đó ∫ ( ) là tỷ lệ đến được học được thông qua nguyên tắc khả năng tối đa Có nghĩa là, ta cố gắng tối ưu hóa tỷ lệ đến xấp xỉ dựa trên dữ liệu đến được quan sát Cho
một dãy quan sát z1,…zn của biến Poisson Z, tỷ lệ được tính theo khả năng tối đa sau đây:
4.4.2 Định tuyến cho lái xe
Với cơ chế online, thuật toán OTSF-DP định tuyến dựa trên dự đoán nhu cầu Thời gian bắt đầu
hệ thống định tuyến từ ts Lịch trình { }
gồm Pf là tập các điểm đón được dự đoán trong
khoảng thời gian fth Các yêu cầu mới Rcur được gửi trong [tcur, tcur+T] Thông tin về xe như trạng
thái và vị trí được cập nhật Đối với mỗi yêu cầu mới r Rcur Khi tìm thấy một xe k thích hợp và vị trí j tốt nhất trên lộ trình Điểm đón và trả khách được của yêu cầu mới được cập nhật vào lộ trình
sao cho phù hợp nhất bởi hàm RequestInsertion() Quá trình này áp dụng một toán tử trao đổi và
một toán tử ImprovementOperator() [15] Cuối cùng, DirectionToParkingPoint() xác định hướng từ
điểm thả cuối c ng đến điểm đậu xe tốt nhất Thuật toán được lặp lại cho đến khi kết thúc thời gian làm việc
Trang 17Hình 4 7 Thuật toán OTSF-DP định tuyến xe trực tuyến
4.4.2.1 Biểu diễn đường
Lịch trình của xe xe k được biểu diễn bằng một chuỗi s k =<o k , p k1,….,p klk, pke > trong đó ok là vị
trí khởi hành, pke là vị trí đỗ xe, và pk1,….,pklk là điểm đón hoặc thả của các yêu cầu Độ dài lịch
trình của một xe là lk được định nghĩa là số lượng điểm yêu cầu trong chuỗi sk Để xây dựng tuyến
đường, chúng tôi chèn các điểm đường đi vào chuỗi sk, nghĩa là các điểm đường đi nằm giữa điểm đón và điểm trả khách
j}Proad là các tuyến đường con giữa hai
điểm trong yêu cầu đối với xe k Dọc theo tuyến đường phụ cuối cùng uk
các tuyến đường trong thành phố Lộ trình chi tiết (Sk) sau đó được xác định bằng cách sử dụng khoảng cách thực tế trên mạng lưới đường bộ trước khi áp dụng thuật toán đường đi ngắn nhất Các
kí hiệu được sử dụng bao gồm:
len(Sk): độ dài của tuyến đường chi tiết Sk
p(Sk, i): điểm thứ i của đường đi của Sk
first(Sk, i): i điểm đầu tiên của Sk
last(Sk, i): len(Sk)-i+1 điểm cuối cùng của Sk
̂( ): quãng đường ngắn nhất từ u đến v trong mạng lưới đường
̂( ): thời gian từ u đến v
od(Sk, p): thứ tự của điểm p trên đường Sk
at(Sk, i),dt(Sk, i): thời gian đến và đi tương ứng của xe k tại điểm p(Sk, i)
4.4.2.2 Vị trí có thể chèn thêm
Trang 18Khi hệ thống nhận được một yêu cầu mới, thuật toán cập nhật các trạng thái và địa điểm của các
xe và tìm xe gần nhất Sau đó chèn các điểm đón và trả khách của yêu cầu vào vị trí tốt nhất để tối
ưu hóa lộ trình thu được mà không vi phạm các ràng buộc Giả sử rằng hệ thống định tuyến với một yêu cầu khoảng thời gian T để chọn xe k cho một yêu cầu, thuật toán cập nhật tuyến đường Sk
d ngđó xuống xe Vì vậy, một số địa điểm trong lịch trình hiện tại phải được giữ cố định Những vị
trí này được mô tả bởi first(Sk
,j) trong đó j là chỉ số lớn nhất trong Sk trước khi vị trí trở thành cố định
4.4.2.3 Tối ưu đường
Để tối ưu tổng quãng đường của xe k, chúng ta cần sắp xếp lại các điểm nằm last(Sk
Thông tin đầy đủ lộ trình chi tiết Sk
(chuỗi các điểm, thời gian đến và đi tại mỗi điểm) được tính
từ sk theo hàm route(sk) Lưu ý rằng dãy các điểm đường đi giữa hai điểm liên tiếp của sk dựa trên đường đi ngắn nhất giữa các điểm đó trong mạng lưới đường
4.4.2.5 Chèn thêm yêu cầu vào lịch
Khi hệ thống nhận được một yêu cầu mới, thuật toán ngay lập tức tìm một chiếc xe thích hợp và sau đó cập nhật lịch trình của nó và lộ trình bằng cách chèn điểm đón và trả khách tương ứng với yêu cầu tại vị trí tốt nhất Vị trí chèn tốt nhất trong thuật toán khác với trong nghiên cứu trước đây [12] Trong [12], một điểm mới (điểm đón hoặc điểm trả) được chèn ngay sau điểm gần nhất cuối cùng (Sk, j) Thuật toán của chúng tôi tìm thứ tự tốt nhất của các điểm cuối cùng(Sk,j) (bao gồm cả các điểm mới) theo hàm tối ưu hóa lại tuyến đường Do đó, hàm tối ưu hóa tuyến đường của chúng tôi tăng cường quá trình tìm kiếm
Trong thuật toán, lộ trình mới của xe là sự kết hợp của đường con của các điểm không thay đổi đầu tiên Sk
1 với đường con của các điểm sắp xếp lại Sk2(bao gồm cả tuyến mới các điểm liên quan đến yêu cầu) và đường con Sk
3 từ điểm hoàn thành yêu cầu tới một vị trí đỗ xe mới
Trang 19Hình 4 8 Thuật toán chèn yêu cầu mới vào lịch
Thuật toán hoạt động như sau: Trước hết thuật toán tìm vị trí cố định trong Sk tại j Tiếp theo, lưu
chuỗi các vị trí cố định trong Sk1 Sau đó, hàm opt(ok
,<pkj+1,…pk
lk, rp, rd>) trả về chuỗi seq của
những điểm cuối cùng tốt nhất sau vị trí j+1 trong Sk Nếu không có chuỗi nào thảo mãn điều kiện ràng buộc cửa sổ thời gian, yêu cầu sẽ bị từ chối Ngược lại, điểm đậu xe tốt nhất pke cho xe k sẽ
được tìm Một điểm đậu xe pePQ là điểm tốt nhất trong khoảng f [1,] nếu điểm số score(f, pe) =
G(f, pe)/H(f+1,pe) là cao nhất trong khoảng thời gian đó với G(f, pe) là tổng yêu cầu gửi đi từ vị trí
đỗ xe pe và H(f+1,pe) là tổng yêu cầu được gửi từ tất cả các vị trí dự đoán được bởi mô hình của chúng tôi trong bán kính e tâm pe trong khoảng thời gian [1,f+1] Hàm FindBestParking(pklk,
dt(pklk),PP) tính score của điểm đỗ và trả về vị trí đỗ xe
* ( ) ( ) + trong đó d* là khoảng cách ngắn nhất từ điểm cuối cùng pklk tới điểm đỗ gần nhất, và 1 là thông số định nghĩa tỉ lệ của khoảng cách thật vượt quá khoảng cách trực tiếp từ pklk tới vị trí đậu xe gần nhất
4.4.2.6 Điều hướng xe dựa trên dự đoán
Thuật toán điều hướng một xe từ điểm trả khách cuối c ng đến một địa điểm đỗ xe được chỉ định trước với nhu cầu về xe được dự đoán Chính xác hơn, ta cần tìm tuyến đường con tốt nhất cho mỗi
xe k không tải trọng ullk(k = 1,…,L) sao cho xác suất để nhận được một yêu cầu mới cao nhất Giả sửa rằng uklk gồm các điểm đường đi o1,o2,…om trong vùng D Các khu vực chứa các điểm
đường đi đó là * ) trong đó Di là một khu vực trong D so sao uklk Di và các điểm
đường đi trong khu vực Di sẽ được đi qua trước các điểm trong Di+1 với i=1,…,y-1
Ta cần tính xác suất mà ít nhất một yêu cầu xe được gửi đi từ vùng W trong khoảng thời gian
( ( ) ( ) ̂( ) ) trong đó là khoảng thời gian di chuyển thêm được phép Xác suất được xác định bằng
Trang 20trong đó Ti là thời gian xe di chuyển trong khu vực Di Dựa vào cách tính này thuật toán hoạt động như sau Tại mỗi thời điểm đã cho, tính uk
lk tốt nhất đối với mỗi xe k Ban đầu uklk được khởi tạo bằng 0 Tiếp theo, tìm tất cả các đường con từ vị trí thả cuối cùng tới các điểm đỗ Tìm uklk tốt nhất có xác suất nhận được yêu cầu cao nhât Loại bỏ tất cả những uklk vi phạm thời gian di chuyển với là thời gian cho phép có thể vượt thời gian di chuyển trực tiếp từ điểm thả cuối cùng cho tới vị trí đậu cụ thể
Hình 4 9 Thuật toán điều hướng xe tới nơi đỗ
4.4.2.7 Đánh giá thuật toán
Dữ liệu đánh giá thuật toán định tuyến lấy từ Cabspotting (http://cabspotting.org) gồm dữ liệu di chuyển của xe taxi ở vùng thuộc San Francisco Mô hình dự đoán đã được học trên dữ liệu được trích xuất từ 07/2005 đến 07/2006 và các thuật toán đã được đánh giá trên dữ liệu của 9 ngày đầu của tháng 03/2010 Một nửa trong số các yêu cầu thu thập được chọn ngẫu nhiên và chuyển đổi thành yêu cầu bưu kiện với cửa sổ thời gian linh hoạt Thời gian gọi của mỗi yêu cầu xe được giả định là 10 phút trước thời gian đón của yêu cầu Thời gian đón muộn nhất là 15 phút sau khi gọi.Thời gian thả khách/bưu phẩm muộn nhất có được bằng cách thêm thời gian di chuyển ngắn nhất từ điểm xuất phát đến điểm trả cộng thêm 30 phút cho thời gian cuộc gọi
Hiệu quả của thuật toán OTSF và OTSF-DP được đánh giá và so sánh với thuật toán hiện có DSARP và thuật toán mở rộng DSARP-DP dự đoán thông tin về yêu cầu mới và vị trí đỗ
Bảng 4 1 Tỉ lệ giá để tính lợi nhuận [11]
Chi phí trung bình
Chi phí cũ (USD)
Chi phí quãng đường
Chi phí cũ (USD)
Chi phí quãng
Trang 21(USD/km) đường
(USD/km)
Bảng 4 2 Số yêu cầu trong hai kịch bản
Hai kịch bản được thiết lập trong đánh giá thực nghiệm gồm:
Kịch bản 1(Scenario 1): Hạn chế chặt chẽ ối với yêu cầuchuyển b u kiện
Kịch bản đầu tiên bao gồm tất cả các yêu cầu chở người và giao bưu kiện nhận được trong 9 ngày Cửa sổ thời gian của một yêu cầu bưu kiện phù hợp với thời gian ràng buộc Kết quả của bốn thuật toán định tuyến được so sánh trong Bảng 4.3 Kết quả tốt nhất trong từng trường hợp được in đậm Trong hầu hết các trường hợp, các thuật toán sử dụng thông tin dự đoán để định tuyến đạt được lợi nhuận cao hơn so với các thuật toán không sử dụng thông tin dự đoán So với OTSF, thuật toán OTSF-DP đạt tổng lợi nhuận 2520-5730 USD mỗi ngày Mặc dù số lượng yêu cầu không khác nhau nhiều giữa các thuật toán, lợi nhuận tăng lên đáng kể sau khi sử dụng thông tin dự đoán Trong [11], các yêu cầu bưu kiện được giả định là được biết trước và số lượng yêu cầu trong DSARP và DSARP-DP thấp hơn so với OTSF và OTSF-DP Do đó, xe di chuyển không không linh hoạt và đi vòng là điều không thể tránh khỏi trong định tuyến Nghiên cứu trước [11] luôn gán luôn 6 yêu cầu bưu kiện tiếp theo cho mỗi xe taxi Nếu cửa sổ thời gian của yêu cầu bưu kiện bị hạn chế nghiêm ngặt, những yêu cầu này được nhận quyền ưu tiên cao Do đó, thay vì một chiếc xe đã hoàn thành chuyến đi trong khu vực lân cận điểm đón, xe có thể đến từ một địa điểm xa Vì lý do này, tổng lợi nhuận trong DSARP và DSARP-DP thấp hơn so với thuật toán đề xuất OTSF và OTSF-DP
Kịch bản 2(Scenario 2):: Cửa sổ thời gian rộng của yêu cầu chuyển b u kiện
Đối với kịch bản thứ hai, chúng tôi đã chọn 50% tổng số yêu cầu chở người và 30% tổng số yêu cầu chuyển bưu kiện với thời gian lấy hàng được chọn ngẫu nhiên từ 8:00 đến 16:00 Để so sánh công bằng, cửa sổ thời gian của các yêu cầu bưu kiện được điều chỉnh để giống của nghiên cứu trước [11] Nói cách khác, cận dưới được lấy ngẫu nhiên từ 8:00 đến 16:00 (chính xác đến 1 phút) trong khi giới hạn trên được cố định ở 23:59:59 Bảng 4.4 liệt kê tỷ lệ phần trăm các yêu cầu được phục vụ và lợi nhuận thu được từ mỗi thuật toán Thuật toán OTSF-DP tiếp tục vượt trội so với các thuật toán khác Mặc dù cửa sổ thời gian rộng có lợi cho DSARP và thuật toán DSARP-DP, lợi nhuận của các thuật toán này đã bị vượt qua bởi OTSF và OTSFDP thuật toán
Trang 22Bảng 4 3 Kết quả của thuật toán định tuyến trong kịch bản 1
Reqsa: tổng yêu cầu được xử lí
PCTb: phần trăm yêu cầu được phục vụ
Profitc: lợi nhuận thu được (Profit * 1000USD)
Bảng 4 4 Kết quả định tuyến của 4 thuật toán trong kịch bản 2
Phân tích sự tăng lợi nhuận
Hình 4.12 biểu thị lợi nhuận tích lũy của 4 thuật toán định tuyến trong ba ngày đầu tiên của 9 ngày Nhìn chung, thuật toán OTSF và OTSF-DP có tốc độ tăng trưởng cao hơn so với thuật toán DSARP và DSARP-DP DSARP và OTSF (không có khả năng dự đoán) thường gán yêu cầu mới cho xe đang ở xa vì thế lợi nhuận bị giảm Đặc biệt, lợi nhuận tích lũy của DSARP và DSARP-DP giảm mạnh trong một số khoảng thời gian trong ngày Tuy nhiên, vì xe phải phục vụ một số lịch trình yêu cầu trước, lợi nhuận ổn định ở mức thấp sau khi giảm Kết quả này chứng tỏ rằng việc dự đoán nhu cầu xe cải thiện hướng định tuyến và cho phép sự di chuyển linh hoạt
Trang 23Hình 4 10 Lợi nhuận tích lũy của 4 thuật toán 4.5 Hệ thống cung cấp dịch vụ đi chung
4.5.1 Kiến trúc hệ thống
Hình 4 11 Kiến trúc hệ thống
Trang 24Hệ thống cung cấp dịch vụ đi chung có kiến trúc minh họa trong Hình.4.13 Hệ thống gồm có một số mô-đun chính sau:
- Mô đun nguồn dữ liệu (Data sources): gồm CSDL quỹ đạo di chuyển của người dùng, hồ sơ thông tin cá nhân, thông tin dịch vụ, mang lưới đường…
- Mô đun khai phá đường đi thường xuyên (frequent routes): dữ liệu được trích xuất từ lịch sử quỹ đạo di chuyển của người d ng và sau khi qua các bước tiền xử lí như dò các điềm dừng, tổng quát hóa và chuyển định dạng về các chuỗi tuần tự, đường đi thường xuyên sẽ được khai phá
- Mô đun tạo nhóm đi chung (Rideshare group geneneration): tạo nhóm đi chung dựa trên độ tương đồng về đường đi thường xuyên của người dùng
- Mô đun lập lịch và định tuyến (Scheduling/routing engine): lập lịch và định tuyến cho nhóm đi chung
- Mô đun tìm nhóm đi chung(Rideshare engine): tìm xe và nhóm đi chung chở người hoặc chuyển bưu kiện
4.5.2 Nguyên lý hoạt động
Trước khi sử dụng dịch vụ đi chung, người d ng đăng ký và tạo tài khoản sử dụng hệ thống Người dùng có thể chia sẻ nhật ký di chuyển của mình để hệ thống phân tích và tạo nhóm trước dựa trên các tuyến đường ưa thích của mình, giúp giảm thời gian tương tác và chờ đợi tìm nhóm Trường hợp người d ng tương tác theo thời gian thực, người dùng gửi yêu cầu đi chung xe dưới
dạng một cặp địa chỉ ón - iểm trả(From/to add.) và khung thời gian ràng buộc Các yêu cầu được
gửi qua một nền tảng trực tuyến RSS gửi hai địa chỉ đến bộ phận mã hóa(Geocoding service), bộ
phận này xác thực vị trí và trả về tọa độ chính xác (From/to coor.) Sau đó, tọa độ của điểm đón và
trả khách cùng với định danh người d ng được gửi đến bộ phận tìm nhóm (Rideshare engine) Rideshare engine tìm xe đang chở một nhóm người hiện có lịch trình phù hợp nhất về điều kiện của yêu cầu và đảm bảo tổng chi phí nhỏ không ảnh hướng lớn tới các thành viên hiện tại Sau khi tìm được nhóm đi chung, RSS chuyển tiếp thông tin đến bộ phận định tuyến, bộ phận này cập nhật lịch trình và lộ trình của nhóm Cuối cùng, RSS gửi thông tin về chi phí và lịch trình cho người dùng
5 Đánh giá về các kết quả đã đạt được và kết luận
Mô hình cung cấp dịch vụ đi chung được xây dựng dựa trên việc thực hiện nghiên cứu mô hình
dữ liệu đa chiều và cách tiếp cận phân tích thói quen di chuyển của người d ng hướng tới tạo và gợi
ý nhóm đi chung xe nhằm giảm tải lưu lượng xe trên đường nhất là vào giờ cao điểm nhu cầu di chuyển và vận chuyển hàng hóa đều cao
Việc tạo và gợi ý nhóm đi chung được thực hiện ở hai cơ chế offline và online Theo cơ thế offline, kĩ thuật khai phá dữ liệu không gian-thời gian được áp dụng để tìm ra đường đi thường xuyên dài nhất của người dùng Tiếp theo những người có đường đi thường xuyên tương tự nhau sẽ được ghép thành nhóm đi chung Theo cơ chế online, người dùng có thể đặt chuyến đi cho người hoặc chuyển hàng Với yêu cầu online, kĩ thuật tìm kiếm xe và nhóm người được áp dụng để sao cho người dùng nhận được phản hồi nhanh nhất với kết quả phù hợp nhất
Trang 25Mô hình dịch vụ và các thuật toán đề xuất đã được đánh giá bằng thực nghiệm và so sánh với những nghiên cứu trước đây đều cho kết quả tốt Tuy nhiên để có thể sử dụng các đề xuất vào thực
tế nghiên cứu cần được đánh giá với dữ liệu thực phong phú và xuyên suốt
6 Tóm tắt kết quả (tiếng Việt và tiếng Anh)
Nghiên cứu đã phát triển một mô hình lai cung cấp dịch vụ đi chung cho người và bưu kiện theo hai cơ chế tĩnh và động Dựa trên quan sát di chuyển của người dùng trên thực tế cho thấy nhiều người đi một mình một quãng đường tương đối dài và đồng thời một số người khác cũng đi tuyến đường ấy trong một khung thời gian Vì vậy, nghiên cứu áp dụng thuật toán khai phá dữ liệu tìm đường đi thường xuyên từ lịch sử di chuyển của người dùng Tiếp theo, chúng tôi đề xuất thuật toán
bó cụm để tạo nhóm đi chung với những người có đường thường xuyên tương đồng nhau Cuối
c ng, để tăng số lượng yêu cầu được phục vụ và giảm thời gian rảnh rỗi của lái xe thuật toán định tuyến đã được đề xuất Thuật toán này dựa trên ý tưởng khi xe ở trạng thái rảnh rỗi lái xe sẽ được điều đi về trạm đỗ theo hướng xác suất bắt được yêu cầu chuyến đi mới cao dựa trên phân tích lịch
sử yêu cầu xe Cuối cùng, các thuật toán đã được đánh giá bằng thực nghiệm và triển khai trong hệ thống dịch vụ đi chung Kết quả của nghiên cứu hứa hẹn đưa dịch vụ đi chung tiến gần triển khai thực tiễn một cách hiệu quả Đây là cơ hội giúp giảm tải lưu lượng xe trên đường bằng cách đi chung xe nhanh và có hiệu quả hơn so với những cách như mở thêm làn đường, mở đường mới hay cải tiến tín phương pháp điều khiển đèn giao thông
This project developed a hybrid model for providing people-parcel ridesharing services in which multiple pickup and drop-off points are supported The proposed model enables users to join a rideshare group in either offline or online fashion Based on observation of people traveling in reality, we find that many people travel long distances alone every day and many of them are heading the same way In order to reduce traffic conditions the number of vehicles on the road network, those people can share a ride, which is a quick and effective way to improve traffic conditions and reduce gas emissions To this end, a mining technique is developed to discover frequent routes from the user‟s historical movements, which are then used to recommend people‟s trip styles A frequent route is a route that a user may frequently pass through approximately at the same time of day A clustering technique is then proposed to generate rideshare groups that have similar routes from frequent routes We then proposed a routing algorithm to navigate the vehicle
in the direction so that a vehicle without load would receive a new request either to deliver people
or parcels The experimental results show that the proposed algorithms are more efficient compared
to existing techniques A prototype system was developed in which all the proposed techniques are integrated and provide ridesharing services to users The results obtained promise to bring ridesharing services close to practical implementation effectively
Trang 264 W He, K Hwang, Intelligent carpool routing for urban ridesharing by mining GPS trajectories, IEEE transactions on intelligent transportation system, Vol 15 October 2014
5 Z Gong, J Li, K Wu, “mT-share: a mobility-aware dynamic taxi ridesharing system”, Journal of IoT, pp 2327-4662, 2021
6 R Agrawal and R Srikant Fast Algorithm for Mining Association Rules.In Proc of the 20th VLDB, 1994
7 S Ma, Y Zheng, O Wolfson,” Real-Time City-Scale Taxi Ridesharing”, IEEE Transactions on Knowledge and Data Engineering, VOL 27, NO 7, JULY 2015
8 D Zhang, T He, F Zhang, M Lu, Y Liu, H Lee, S Son, “Carpooling Service for Large-Scale Taxicab Networks,” Vol 12, pp 1-35, 2016
9 M Ester, H P Kriegel, J Sander, and X Xu, "A density-based algorithm for discovering clusters in large spatial databases with noise," In Proc of ACM Knowledge Discovery and Data Mining, pp 226–231, 1996
10 Tsoukatos & D Gunopulos, “Effficient Mining of Spatiotemporal Patterns”, In Proc Intl syumposium on spatial and temporal databases, Vol.2121, 2001
11 Y Wang, E Lim, S.Y Hwang, “Efficient mining of group patterns from user movement data,” Journal of Data
& Knowledge Engineering, pp.240-282, 2005
12 B Li, D Krushinsky, H Reijers, and T Van Woensel, The share-a-ride problem: people and parcels sharing taxis, European J Opera Res 238 (2014), no 1, 31-40
13 N.-Q Nguyen, N.-V.-D Nghiem, P.-T Do, T Le Khac, M.-S Nguyen, and N Mukai, People and parcels sharing a taxi for Tokyo City, (Proceedings of the Sixth International Symposium on Information and Communication Technology, Hue City Viet Nam), pp 90-97, 2015
14 S Ross, A First Course in Probability, Ninth Edition Pearson Prentice Hall, Upper Saddle River, N.J., USA, 2013,117-187, 2013
15 Schoenberg, D Brillinger, and P Guttorp, Point processes, spatial-temporal, in Encyclopedia of Environmetrics, John Wiley & Sons, 2013
16 R Goel and R Maini, Vehicle routing problem and its solution methodologies: a survey, Int J Logistics Syst Manag 28, no 4, 419-435, 2017
17 F Librino, M Elena Renda, P Santi, F Martelli, G Resta, F Duarte, C Ratti, J Zhao, "Home-work Carpooling for Social Mixing", Transportation, Springer Nature, 2020
18 S Ma, Y Zheng, O Wolfson, "T-share: Large-scale dynamic taxi-pooling service," in proc 29th International Conference on Data Engineering, pp 410-421, 2013
19 Z Liu, Z Gong, J Li and K Wu, mT-Share: Mobility-aware Dynamic Taxipooling System IEEE Internet of the Journal of Things 9, pp.182–198, 2021
20 Y Tong, Y Zeng, Z Zhou, L Chen; J Ye, and K Xu, "A unified approach to route planning for shared mobility," in Proc of the VLDB Endowment, pp.1633-1646, 2018
21 S Yan and C.-Y Chen, “A model and a solution for the carpooling problem with a pre-matching information,” Computers & Industrial Engineering, vol 61, pp 512-524, 2011
22 R Srikant and R Agrawal, "Mining sequential patterns: Generalizations and performance improvements," In Proceeding of EDBT‟00, pp.3-17, 1996
23 Tsoukatos and D Gunopulos, "Efficient Mining of Spatiotemporal Patterns," In Poceeding On SSTD, LNCS, pp.425-442, 2001
Trang 27PHẦN III SẢN PHẨM, CÔNG BỐ VÀ KẾT QUẢ ĐÀO TẠO CỦA ĐỀ TÀI
3.1 Kết quả nghiên cứu
Đề xuất mô hình dữ liệu đa chiều cho hệ thống cung cấp dịch vụ đi chung
Đề xuất phương pháp khai phá tuyến đường đi thường xuyên từ dữ liệu lịch sử GPS của người dùng
3 Phương pháp phân cụm
dữ liệu không gian-thời
gian cho dịch vụ đi
chung xe
- Trình bày phương pháp phân cụm
dữ liệu cho dịch vụ đi chung xe, làm rõ tính mới của phương pháp đề xuất
Tạo được nhóm đi chung dựa trên tuyến đường thường xuyên của người dùng
Đề xuất phương pháp lập lịch và định tuyến cho xe
5 Hệ thống cung cấp dịch
vụ đi chung
- Thực hiện được các chức năng cơ bản như đăng ký, lập nhóm đi chung, lập lịch, định tuyến
- Các tài liệu thiết kế kèm theo mã nguồn
nh n ơn hợp lệ/ ã ợc cấp giấy xác nh n SHTT/
Đánh giá chung
Đạt, không ạt)
1 Công trình công bố trên tạp chí khoa học quốc tế theo hệ thống ISI/Scopus
Trang 281.1 Son Nguyen, Nhan Vu Thi Hong,
Dung Pham Quan
g, Hoai Nguyen Xuan, Behrouz
Babaki, Anton Dries, “Novel online
routing algorithms for smart
people-parcel taxi sharing services”, ETRI
5 Bài báo trên các tạp chí khoa học của ĐHQGHN, tạp chí khoa học chuyên ngành
quốc gia hoặc báo cáo khoa học đăng trong kỷ yếu hội nghị quốc tế
5.1 Văn Manh Tran, Thi Hong Nhan Vu,
“Design of architecture for carpooling
based on flexible pickup and delivery
5.2 Manh V Tran, Nhan T.H Vu, “A
system for Rideshare Services”, ,
ICFICE 2020, Vo.12, No.1, pp.8-12,
2020
quy định
Đạt
5.3 Văn Manh Tran, Thi Hong Nhan Vu,
“Leveraging CPPLEX to solve the
vehicle routing problem with time
Trang 297 Kết quả dự kiến được ứng dụng tại các cơ quan hoạch định chính sách hoặc cơ sở
Luận vặn: Xây dựng công cụ định
vị lỗi cho ứng dụng C/C++
Đã bảo vệ tháng 9/2022
PHẦN IV TỔNG HỢP KẾT QUẢ CÁC SẢN PHẨM KH&CN VÀ ĐÀO TẠO CỦA ĐỀ TÀI T
T
đăng ký
Số lượng đã hoàn thành
1 Bài báo công bố trên tạp chí khoa học quốc tế theo
hệ thống ISI/Scopus
2 Sách chuyên khảo được xuất bản hoặc ký hợp đồng
xuất bản
3 Đăng ký sở hữu trí tuệ
4 Bài báo quốc tế không thuộc hệ thống ISI/Scopus
5 Số lượng bài báo trên các tạp chí khoa học của
ĐHQGHN, tạp chí khoa học chuyên ngành quốc gia
hoặc báo cáo khoa học đăng trong kỷ yếu hội nghị
quốc tế
6 Báo cáo khoa học kiến nghị, tư vấn chính sách theo
đặt hàng của đơn vị sử dụng
7 Kết quả dự kiến được ứng dụng tại các cơ quan
hoạch định chính sách hoặc cơ sở ứng dụng
(triệu ồng)
Kinh phí thực hiện
(triệu ồng)
Ghi chú
A Chi phí trực tiếp
1 Xây dựng đề cương chi tiết 3.814.400 3.814.400
2 Thu thập và đề cương chi tiết 3.814.400 3.814.400
Trang 304 Nguyên, nhiên vật liệu, cây con
Trang 31PHỤ LỤC I: KẾT QUẢ NGHIÊN CỨU Error! Bookmark not defined
Nội dung 1: Mô hình nhu cầu đi lại theo hoạt động 31 Nội dung 2: Phương pháp khai phá dữ liệu không gian-thời gian trích xuất lộ trình phổ biến
từ lịch sử dữ liệu GPS của người dùng 37 Nội dung 3: Phương pháp phân cụm dữ liệu không gian-thời gian cho dịch vụ đi chung xe 46 Nội dung 4: Chiến lược lập lịch và định tuyến cho dịch vụ đi chung xe 56 Nội dung 5: Hệ thống prototype cung cấp dịch vụ đi chung 69
PHỤC LỤC II: CÔNG BỐ KẾT QUẢ 116
PHỤC LỤC III: KẾT QUẢ ĐÀO TẠO 117
Trang 32PHỤ LỤC I: KẾT QUẢ NGHIÊN CỨU
Nội dung 1: Mô hình nhu cầu đi lại theo hoạt động
1 Giới thiệu 32
2 Mô hình hoạt động của dịch vụ đi chung 32
3 Mô hình dữ liệu cho dịch vụ đi chung 33
3.1 Nhóm các yêu cầu đi chung theo các ràng buộc không gian-thời gian ……… 33 3.2 Mô hình dữ liệu đa chiều cho dịch vụ đi chung……… …35 Tài liệu tham khảo 36
Trang 331 Giới thiệu
Đối với hệ thống dịch vụ trong nhiều miền ứng dụng hiện nay cả hai nhân tố không gian
và thời gian đều đóng vai trò chủ chốt Sự tích hợp của cả hai nhân tố dữ liệu này trong các phương pháp xử lý truy vấn liên tục và các kỹ thuật khai phá dữ liệu gặp phải thử thách lớn
vì sự bùng nổ thông tin của không gian tìm kiếm tri thức Cho tới nay, có rất nhiều mô hình
dữ liệu không gian, thời gian, và cả hai cùng kết hợp trong một mô hình đã được đề nhưng hầu hết những mô hình dữ liệu đã đề xuất chỉ làm việc tốt với một miền ứng dụng cụ thể như hệ thống thông tin địa lý mà không hỗ trợ ứng dụng trong đó tích hợp dữ liệu từ rất nhiều nguồn khác nhau như dịch vụ đi chunghầu hết các mô hình chỉ làm việc tốt với một miền ứng dụng cụ thể như hệ thống thông tin địa lý mà không hỗ trợ ứng dụng trong đó tích hợp dữ liệu từ rất nhiều nguồn khác nhau như dịch vụ đi chung
Trong báo cáo này trước hết chúng tôi giới hiệu mô hình hoạt động của dịch vụ đi chung
xe và sau đó là mô tả về mô hình dữ liệu đa chiều cho dich vụ đi chung xe
2 Mô hình hoạt động của dịch vụ đi chung
Hình 2 cho thấy sơ đồ hoạt động của dịch vụ chia sẻ xe Khi người dùng vào hệ thống chia sẻ để đăng ký thông tin cá nhân (1) bao gồm: họ, tên, số điện thoại, email, mật khẩu, nghề nghiệp, giới tính, tuổi, xuất xứ và địa điểm đến, cửa sổ thời gian, được phép hút thuốc, vai trò của người dùng ( hành khách hoặc lái xe) Nếu người dùng chọn vai trò là người lái
xe, thì họ sẽ điền thông tin về giấy phép lái xe và phương tiện
Thông tin cá nhân sau đó được lưu lại (2) và dịch vụ hệ thống sẽ gửi thông tin để xác thực thông qua số điện thoại (3)
Người dùng nhập mã xác minh (4), nếu xác thực thành công, người dùng tiếp theo Đăng nhập (5) vào hệ thống chia sẻ bằng email và mật khẩu Ngược lại, hệ thống đưa ra thông báo lỗi yêu cầu người dùng nhập lại mã xác thực (4)
Tại bước (5) nếu người d ng đăng nhập không thành công, hệ thống sẽ gửi thông báo yêu cầu người dùng nhập lại thông tin đăng nhập
Trong trường hợp đăng nhập thành công, người dùng có thể thực hiện đăng ký đi xe (6)
và chọn vai trò của mình (7) Nếu người dùng chọn vai trò là hành khách, hãy nhập thông tin đăng ký cho ngày đi chung xe Nếu người dùng chọn vai trò người lái xe, họ sẽ thấy thêm thông tin về chiếc xe Khi người dùng là hành khách, hệ thống sẽ tự động phân loại người dùng và tài xế cho phù hợp Rideshares sau đó được tạo bởi hệ thống
Chúng tôi áp dụng phương pháp lười biếng, điều đó có nghĩa là việc nhóm các yêu cầu bị trì hoãn càng lâu càng tốt để tìm được dịch vụ đi chung với chi phí đi lại tối thiểu thấp hơn Với thông tin nhóm, hệ thống sẽ đề xuất lộ trình, thành viên nhóm và thông tin lái xe và hiển thị thông tin nhóm (8) cho hành khách Nếu hành khách tham gia nhóm không phù hợp, họ có thể rời nhóm và quay lại Đăng ký để đi xe (6)
Nếu hành khách chấp nhận đề xuất nhóm của hệ thống, hệ thống sẽ xử lý một số thông tin khác (9) và gửi thông tin thông báo đến nhóm để mọi người biết và hệ thống đã hoàn thành Trường hợp người dùng là tài xế thì chuyển sang bước (11) như hình và thực hiện các bước tương tự như hành khách
Trang 34Tài xế quay lại (6) nếu quyết định rời khỏi nhóm, nếu không hệ thống chuyển sang bước (12) và gửi thông tin thông báo đến nhóm và hệ thống đã kết thúc
Hình 1 Mô hình hoạt động của dịch vụ đi chung
3 Mô hình dữ liệu cho dịch vụ đi chung
3.1 Nhóm các yêu cầu đi chung theo các ràng buộc không gian-thời gian
Trước khi tìm hiểu làm thế nào để tổ chức và lưu trữ dữ liệu trong hệ thống LBSs và làm thế nào
để truyền thông tin tới người d ng di động, ngữ nghĩa của thông tin trước tiên cần phải tìm hiểu Trong các ứng dụng LBSs tồn tại ba loại dữ liệu như sau:
Domain data
Domain data bao gồm khái niệm không gian (spatial), thời gian(temporal), không gian và thời gian (spatiotemporal) mô tả các ứng dụng LBSs Khái niệm cơ bản và chung đối với các dịch vụ LBSs bao gồm thời gian, tọa độ, vị trí, và chuyển động Vì thế nhu cầu chia sẻ
và khả năng tái sử dụng những dữ liệu đó một cách hợp lý có hiệu quả mang tính cấp thiết Trong hệ thống LBS, ngữ nghĩa về dữ liệu không gian được biểu diễn và chiếu tới không gian địa lý Vị trí của đối tượng được biểu diễn bởi tọa độ điểm của vật thể Tuy nhiên, đối với một số dịch vụ như LBS cung cấp thông tin về tắc nghẽn giao thông, vị trí theo định nghĩa đó chưa đủ mà cái ta cần quan tâm là cả khu vực phía trước của điểm ta đang có mặt trên đường Chiều không gian trong mô hình dữ liệu LBS bao quát những khái niệm sau: (i)
Tọa độ của vật di động gọi là position; (ii) Position và vùng xung quanh tạo thành location
Vì thế nhìn chung ta chiều không gian là location dimension Thêm nữa, location ngoài việc
có mối liên hệ tới nơi nào còn có mối liên hệ tới khi nào sự kiện xảy ra Ví dụ trong dự đoán tắc nghẽn giao thông, ta cần biết khi nào một chiếc ô tô sẽ đi vào khu vực đang xảy ra tắc nghẽn, thông tin này thường quan trọng trong giờ cao điểm Khái niệm thời gian bao gồm: (i)
nhãn thời gian thực (valid timestamp) xác định khi nào một sự kiện xảy ra và khoảng thời gian (time period) cho sự phát triển của sự kiện Thêm nữa, vì phép đo không chính xác hoặc lỗi do thiết bị, một điểm (position) thường có tính chất không chắc chắn (uncertainty)
Uncertainty biểu diễn độ lệch khỏi vị trí chính xác của một sự kiện
Trang 35Một khái niệm cơ bản khác là sự chuyển động (movement) của vật Sự chuyển động được định nghĩa bởi position và thời gian Vị trí của một vật di động có thể có mối liên hệ với các vật khác được gọi là quan hệ không gian (spatial relationships) Những mối quan hệ này định nghĩa cấu trúc (topology) hướng, và một số phép tính hình học với kết quả là một giá trị cụ thể [1]
Hình 2 Lớp và mối quan hệ trong Domain Data Kết quả là, có năm lớp: Coordinate, Location, Surrounding_Area, Movement, và Time Hình 2 biểu diễn mới quan hệ của năm lớp này
Time: có dữ liệu validtime biểu diễn thời gian thực tại thời điểm vật di động đang ở đó
Coordinate: có dữ liệu thành phần (x,y) biểu diễn điểm mà vật đang ở đó và
Uncertainty lưu độ lệch của vật so với giá trị thực
Movement: có thành phần dữ liệu điểm (point) lưu tọa độ điểm của vậ tại thời
điểm bắt đầu ts, tốc độ speed, và hướng direction mà vật thể di chuyển cho tới thời điểm te
Sourrounding_Area: có dữ liệu thành viên timestamp và coordinate có liên hệ
với Time và Cooridnate tưong ứng
Location có quan hệ với Coordinate và Surrounding_Area và có mối quan hệ
toplogical_rel, metric_rel, direction_rel relations với các vị trí khác
Content data
Content data là dữ liệu thực của một ứng dụng cụ thể mà chúng ta đang quan tâm, ví dụ
dữ liệu giao thông, đường đi của vật được gọi là content data của traffic LBS Thực tế,
Movement
+Coordinate: point +Time: timestamp ts +Time: timestamp te +Speed
Trang 36chúng là các đối tượng địa lý trong thế giới thực.Thực thể dạng này có ba thành phần cấu thành bao gồm: phần mô tả, phần không gian, và phần thời gian
Phần mô tả đối tượng bao gồm những thuộc tính không mang tính khôn gian Thành phần không gian xác định nơi mà vật được định vị, dạng hình học của vật trong không gian, và mối quan hệ topology với các vật thể khác (ví dụ như: adjacent) Hơn nữa, thành phần thời gian xác định khi nào đối tượng tham chiếu địa lý được nạp vào hệ thống (thời gian tắc nghẽn giao thông xảy ra)
Application data
Application data bao gồm profile người dùnng và thông tin những dịch vụ hệ thống cung cấp Profile mô tả người dùng và những mối quan tâm hay sở thích Thông tin dịch vụ tương ứng với tác vụ cần thực hiện trong một ứng dụng LBS cụ thể nào đó
Hình 3 Mối quan hệ giữa các loại dữ liệu Các loại dữ liệu có mối quan hệ với nhau và được biểu diễn trong Hình 3 Application data và content data phụ thuộc vào ứng dụng cụ thể mà chúng ta đang quan tâm Ví dụ nếu ứng dùng là cung cấp dịch vụ về giao thông, khi đó profile người d ng lưu vai trò của anh ta (có thể là một thường nhân) và quan tâm tới dịch vụ như “thông tin xung quanh các con đường mà anh ta đang đi” Khi đó content data sẽ là thông tin về hiệ trạng lưu thông trên các con đường Như vậy mối quan hệ dữ liệu cho phép ta xác định dịch vụ nào sẽ được cung cấp dựa vào vị trí của người dùng, và vị trí người dùng thuộc về domain data Từ hình vẽ ta cũng thấy rằng, không có mối liên hệ trực tiếp giữa domain data và cotent data Điều này bởi vì content data tham chiếu tới thông tin địa lý, còn domain data quan tâm tới vị trí và thời điểm và người dung có mặt tại đó
3.2 Mô hình dữ liệu đa chiều cho dịch vụ đi chung
Phân tích và hiểu miền ứng dụng giúp chúng ta phân biệt các kiểu dữ liệu tồn tại và nhận
ra được kiểu dữ liệu chủ đạo và mối quan hệ giữa chúng Để tổ chức dữ liệu, trong nghiên cứu này chúng tôi áp dụng mô hình kho dữ liệu (data warehouse)
Data warehouse là một kho dữ liệu lớn tích hợp dữ liệu từ nhiều nguồn khác nhau Data warehouse ứng dụng mô hình dữ liệu đa chiều để tổ chức dữ liệu Kiểu mô hình này phân loại dữ liệu thành hoặc sự kiện (facts) kết hợp với các số đo dưới dạng số về mặt bản chất, hoặc thành hướng (dimensions) đặc tả facts và ở dạng văn bản
Mỗi hướng có cấu trúc phân tầng, nhờ đó ta có thể tích hợp các facts ở mức thô hay mịn theo nhu cầu của ứng dụng
Trang 37Hình 4 Mô hình dữ liệu đa chiều Hình 4 là một diagram mô tả ví dụ schema của một data warehouse cho hệ thống LBS, trong đó có lưu trữ yêu cầu (requests) do người sử dụng thực hiện và gửi tới LBS server Chiều thời gian (time dimension) lưu trữ thời gian mà yêu cầu người d ng được thực hiện Hướng này cũng có một số mức như trên hình vẽ Chiều nội dung (content dimension) biểu diễn nội dung dịch vụ được yêu cầu, ví dụ như thông tin về giá cả hàng hóa hay thông tin về một địa điểm du lịch Kiểu nội dung được nhóm thành Content type, ví dụ Thông tin (News) Chiều vị trí (location dimension) lưu vị trí mà tại đó yêu cầu người dung được gửi
Data warehouse được sử dụng để trả lời câu hỏi về mối kết nối giữa người sử dụng, vị trí người sử dụng, thời gian trong ngày, và nội dung dịch vụ yêu cầu Đây là mô hình dữ liệu
d ng để xây dựng hệ thống LBS, ví như thông tin mà người dùng quan tâm tại vị trí và thời điểm anh ta đang có mặt
Tài liệu tham khảo
[1] Nhan T.H Vu, Manh V Tran, “A system for rideshare service”, In proc of the 13rd Int‟l conf on future information and communication engineering, Vol.12, pp 3-7 , 2021 [2]M J Egenhofer, "Reasoning about Binary Topological Relations," pp.143-160, 1991
Trang 38Nội dung 2: Phương pháp khai phá dữ liệu không gian-thời gian trích xuất lộ trình phổ biến từ lịch sử dữ liệu GPS của người dùng
1 Giới thiệu 38
2 Nghiên cứu thuật toán khai phá di chuyển thường xuyên của của người dùng từ dữ liệu lịch sử GPS 39 2.1 Định nghĩa và phát biểu bài toán 39 2.2 Định dạng dữ liệu di động 41
3 Thuật toán tìm mẫu di chuyển thường xuyên dài nhất 41
Tài liệu tham khảo 45
Trang 391 Giới thiệu
Tắc nghẽn giao thông đã trở thành một vấn đề nghiêm trọng ở các khu vực đô thị lớn Ùn tắc giao thông khó chịu không chỉ làm suy giảm chất lượng cuộc sống mà còn tác động tiêu cực đến năng suất, nền kinh tế và môi trường Để giảm bớt vấn đề này, người ta có thể cung cấp định tuyến tối ưu thông qua các hoạt động đi chung xe [1] Chúng tôi sử dụng phương pháp khai thác có hỗ trợ GPS để nhóm những người đi có các tuyến đường ưa thích tương
tự để đạt được hiệu quả đi chung xe nhằm giảm tắc đường, tiết kiệm năng lượng và giảm chi phí vận tải [7]
Bằng cách khai thác quỹ đạo được hỗ trợ bởi GPS, chúng tôi có thể tìm ra một số giải pháp bán tối ưu theo các ràng buộc QoS nhất định Thông tin về quỹ đạo này rất có thể giúp người đi xe đủ tự tin khi tham gia nhóm đi chung xe Các tuyến đường thường xuyên được
cá nhân hóa khá nhiều [3], [4] Tuyến đường đi chung xe đã chọn có thể được cập nhật động
để đối phó với điều kiện giao thông thay đổi
Phần mở rộng đáng kể từ những hội thảo trước đó của chúng tôi [2], được trình bày tại Nhóm quan tâm đặc biệt của hiệp hội Máy tính (ACM) về hội thảo quốc tế về Khám phá tri thức và Khai thác dữ liệu(SIGKDD) về điện toán đô thị vào năm 2012 Tất cả nội dung trong phần nội dung, thuật toán, định lý và biểu đồ hiệu suất
Dựa vào những người lái xe và việc sử dụng phương tiện, ba mô hình đi chung xe đã được đề xuất trước đây [5] Mô hình của chúng tôi bao gồm cả dịch vụ đi chung xe riêng do công ty hỗ trợ và dịch vụ đi chung xe riêng trong các khu vực đô thị lớn Phương tiện được
sử dụng đặt ra giới hạn về kích thước đi chung xe Các tay đua chia sẻ các tuyến đường thường xuyên của họ để tạo ra một tuyến đường thường được chấp nhận Tuyến đường thường xuyên được tạo ra theo các phương thức vận tải khác nhau, bao gồm ô tô riêng, taxi,
xe buýt, tàu điện ngầm hoặc đơn giản là đi bộ Mục tiêu tối ưu hóa định tuyến là giảm thiểu khoảng cách lưu thông, giảm chi phí đi làm, bảo vệ môi trường và giảm bớt các vấn đề giao thông đô thị
Trong những năm gần đây hệ thống định vị toàn cầu (GPS) ngày càng trở nên khả dụng
và chính xác trong các thiết bị di động Do đó, một lượng lớn dữ liệu theo thời gian được tạo
ra bởi những người sử dụng các thiết bị di động được gọi là các đối tượng chuyển động Quỹ đạo của các đối tượng chuyển động, hay gọi tắt là quỹ đạo, chứa các quy luật hoặc các mẫu Ví dụ, một người có xu hướng lái xe hầu như tất cả các ngày trong tuần để đi làm gần như c ng một lúc trên cùng một tuyến đường Những lợi ích của việc tìm kiếm các quy luật hoặc mô hình rất nhiều lần Đầu tiên, các mẫu như vậy có thể giúp quản lý quỹ đạo hiệu quả Thứ hai, chúng có thể được sử dụng để hỗ trợ các dịch vụ dựa trên vị trí (LBS) khác nhau Một ví dụ của LBS là một ứng dụng chia sẻ chung thông minh, tìm các tuyến đường
có thể chia sẻ cho một nhóm người đi làm và đề xuất các khả năng chia sẻ chung cho họ, được xem xét Một ứng dụng chia sẻ xe như vậy có thể là một trong những giải pháp khả thi cho vấn đề tắc nghẽn ngày càng gia tăng của mạng lưới giao thông đô thị Các mẫu trong quỹ đạo cho một ứng dụng chia sẻ thông minh chỉ thú vị nếu những mẫu đó có thể được chia sẻ bởi nhiều người đi làm, được lặp lại thường xuyên, và đáng để theo đuổi, tức là đủ lâu để số tiền tiết kiệm được b đắp cho những nỗ lực phối hợp Việc phát hiện ra các mẫu dài, có thể chia sẻ (LSP) trong quỹ đạo là khó khăn vì một số lý do Các mẫu thường không tồn tại dọc theo toàn bộ quỹ đạo Ví dụ, hãy xem xét hai người đi làm A và B sống trong cùng một khu vực của thị trấn, đi làm khoảng thời gian như nhau và làm việc ở cùng một khu vực của thị trấn Với mạng lưới đường cơ bản và điều kiện giao thông, đối với một ngưỡng hỗ trợ nhất định, phần giữa các chuyến đi của hai người đi lại có thể thường xuyên, phần đầu và phần cuối có thể không Trong nghiên cứu gần đây, một phương pháp biến đổi
Trang 40vấn đề chung, được gọi là xoay vòng, đã được đề xuất để phân tích dữ liệu không gian thời gian Xoay vòng là quá trình nhóm một tập hợp các bản ghi dựa trên một tập hợp các thuộc tính và gán các giá trị của một tập hợp các thuộc tính có thể là một tập hợp các thuộc tính khác cho các nhóm hoặc giỏ Việc xoay vòng được áp dụng cho dữ liệu không gian thời gian cho phép xây dựng các giỏ không gian thời gian, có thể được khai thác bằng các thuật toán khai thác quy tắc kết hợp truyền thống Khi các mục trong giỏ là số nhận dạng không gian thời gian và có nguồn gốc từ quỹ đạo, các quy tắc được phát hiện đại diện cho các tuyến đường thường xuyên đi lại Mặc dù tồn tại một số phương pháp khai thác quy tắc kết hợp hiệu quả, việc áp dụng thẳng các thuật toán này vào các giỏ không gian thời gian biểu diễn quỹ đạo là không khả thi vì hai lý do Đầu tiên, tất cả các mẫu phụ của các mẫu thường xuyên cũng thường xuyên, nhưng không thú vị, vì các mẫu dài hơn được ưu tiên hơn Thứ hai, tiêu chí hỗ trợ được sử dụng trong các thuật toán khai thác quy tắc kết hợp không phù hợp cho một ứng dụng chia sẻ chung, tức là, một tập hợp vật phẩm miễn phí đại diện cho một mô hình quỹ đạo thường xuyên, có thể được hỗ trợ bởi một người đi làm trong nhiều trường hợp và do đó không có cơ hội chia sẻ chung
2 Nghiên cứu thuật toán khai phá di chuyển thường xuyên của của người dùng từ
dữ liệu lịch sử GPS
2.1 Định nghĩa và phát biểu bài toán
Các vật thể chuyển động trong một khu vực cụ thể M ⊆ R2, được gọi là mặt phẳng tham chiếu, tạo thành một miền không gian 3D trong đó chiều không gian của không gian kết hợp với hệ tọa độ (X × Y) và chiều thời gian (T) được sử dụng để mô tả sự tiến hóa của đối tượng theo thời gian Một đối tượng chuyển động trong miền không gian được mô tả bằng một tập hợp các điểm chuyển động theo thời gian Do đó, quỹ đạo của một đối tượng được xác định bằng cách kết nối tất cả các vị trí mô tả cùng một đối tượng theo thời gian (Hình 4.1) Định nghĩa của quỹ đạo được trình bày như dưới đây
Hình 1 Miền không gian-thời gian & quỹ đạo
[Định nghĩa 1] (Quỹ đạo) Quỹ đạo của một đối tượng chuyển động với xác định oj được
định nghĩa là một chuỗi hữu hạn các điểm {(oj, p1, vt1), (oj, p2, vt2),…, (oj, pn, vtn)} trong không gian X × Y × T, trong đó điểm pi được biểu diễn bằng tọa độ (xi, yi) tại thời điểm lấy mẫu vti
Vì vậy, một cơ sở dữ liệu đối tượng chuyển động D bao gồGSm các tập hợp chuỗi vị trí
và thời gian Giả sử rằng không có đối tượng chuyển động riêng biệt D được định nghĩa là
sự kết hợp của chuỗi thời gian của các vị trí thuộc về tất cả các đối tượng
Các điểm được lấy mẫu của một đối tượng chuyển động có một số mức độ không chính xác do quá trình lấy mẫu Một cách để xử lý vấn đề này là thay thế vị trí chính xác của các đối tượng bằng các vùng, có thể là các ô thông tin di động hoặc ô của lưới tổng hợp Trong nghiên cứu này, tổ chức không gian của bản đồ M được biểu diễn dưới dạng một tập hợp các vùng Khu vực có liên quan đến một giải thích theo chủ đề cụ thể về không gian Có nghĩa là, M được biểu diễn dưới dạng một tập hữu hạn các v ng, {a1,…, an} sao cho với ai