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

Một số kỹ thuật dự báo vị trí và truy vấn các đối tượng chuyển động trong cơ sở dữ liệu không gian thời gian (TT)

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.12 MB, 27 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO

VIỆN HÀN LÂM
KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM

HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ

NGUYỄN TIẾN PHƯƠNG

MỘT SỐ KỸ THUẬT DỰ BÁO VỊ TRÍ VÀ TRUY VẤN
CÁC ĐỐI TƯỢNG CHUYỂN ĐỘNG TRONG CƠ SỞ DỮ LIỆU
KHÔNG GIAN-THỜI GIAN
Chuyên ngành: Cơ sở toán học cho tin học
Mã số: 62 46 01 10

TÓM TẮT LUẬN ÁN TIẾN SĨ TOÁN HỌC

HÀ NỘI - 2015


2

Công trình được hoàn thành tại:
Học viện Khoa học và Công nghệ, Viện Hàn lâm KH và CN Việt Nam

Người hướng dẫn khoa học: PGS. TS. Đặng Văn Đức

Phản biện 1: PGS. TS. Huỳnh Quyết Thắng
Phản biện 2: PGS. TS. Bùi Thu Lâm
Phản biện 3: PGS. TS. Lê Trọng Vĩnh


Luận án sẽ được bảo vệ trước Hội đồng chấm luận án cấp Học viện họp tại:
Viện Hàn lâm Khoa học và Công nghệ Việt Nam
Vào hồi
giờ ngày
tháng
năm

Có thể tìm hiểu luận án tại thư viện:
1. Thư viện Quốc gia Việt Nam
2. Thư viện Học viện Khoa học và Công nghệ


3
MỞ ĐẦU
Sự kết hợp các chức năng của công nghệ định vị cá nhân, công
nghệ định vị vệ tinh, công nghệ truyền thông không dây và công nghệ
GIS đã tạo ra một môi trường mới trong đó tất cả các đối tượng chuyển
động có thể xác định vị trí của chúng. Các công nghệ này là cơ sở cho
việc phát triển mạnh mẽ môi trường nhận biết vị trí và các dịch vụ
dựa trên vị trí. Dịch vụ dựa trên vị trí là dịch vụ được đặc chế dựa
trên những thông tin về vị trí của đối tượng. Nhiều mô hình cơ sở dữ
liệu các đối tượng chuyển động đã và đang được nghiên cứu, thử
nghiệm. Trong các mô hình này, dữ liệu của các đối tượng chuyển
động, bao gồm cả thông tin về vị trí trong quá khứ, hiện tại và tương
lai được lưu trữ và cập nhật thường xuyên. Khó khăn lớn khi giải bài
toán này là làm thế nào để khai thác một cách có hiệu quả khi số lượng
đối tượng chuyển động là rất lớn và thường xuyên thay đổi vị trí. Việc
truy vấn vị trí của đối tượng trong tương lai cùng với tính không chắc
chắn của nó cũng là một vấn đề cần giải quyết và nâng cao tính chính
xác. Các hệ quản trị cơ sở dữ liệu hiện tại không phù hợp với việc

quản lý các dữ liệu thay đổi liên tục theo thời gian. Có một số hướng
để giải quyết vấn đề này, trong đó cơ sở dữ liệu các đối tượng chuyển
động (MODB) là dễ tiếp cận và đang được nghiên cứu, phát triển
mạnh mẽ. Chính vì vậy, luận án đặt mục tiêu chính là nghiên cứu về
các vấn đề liên quan đến MODB bao gồm: tổ chức, lưu trữ, truy vấn
vị trí của đối tượng trong tương lai và đề xuất một số kỹ thuật để nâng
cao tốc độ, tính chính xác trong truy vấn. Lớp bài toán mà luận án
hướng tới là quản lý thông tin đối tượng chuyển động hay quản lý và
điều hành giao thông. Trong lớp bài toán này, độ chính xác dự đoán
vị trí không cần quá cao (sai số một vài mét có thể chấp nhận được)
và nghiêng về tăng tốc độ tính toán để phản hồi cho người sử dụng
hay ra quyết định nhanh chóng.


4
Trong luận án này, nghiên cứu sinh đã thực hiện và giải quyết
những vấn đề sau:
a) Nghiên cứu về cơ sở dữ liệu các đối tượng chuyển động
b) Nghiên cứu, đề xuất một số phương pháp, kỹ thuật nâng
cao tốc độ và độ chính xác của các truy vấn vị trí của đối
tượng chuyển động.
Các kết quả chính bao gồm:
(1) Giải quyết vấn đề về mô hình hóa vị trí của đối tượng chuyển
động dưới dạng thuộc tính động. Thuộc tính động ít cần phải cập nhật
hơn thông tin vị trí do đó sẽ hạn chế được tần suất cập nhật vào cơ sở
dữ liệu (mà thường là rất lớn trong các ứng dụng MODB). Thuộc tính
động có thể được xác định nhờ vào hai phương pháp dự đoán vị trí đã
đề xuất trong luận án:
- Dự đoán vị trí của đối tượng dựa theo hàm chuyển động sử dụng
mô hình W-EWMA

- Dự đoán dựa trên hành vi của đối tượng sử dụng khai phá luật kết
hợp của các mẫu hình di chuyển.
(2) Giải quyết vấn đề về lập chỉ mục không gian cho biểu diễn hình
học của các thuộc tính động nhằm tăng hiệu năng truy vấn trên dữ liệu
không gian-thời gian. Trong luận án, nghiên cứu sinh đã đề xuất cấu
trúc chỉ mục mới là DO-TPR*-tree, dựa trên TPR*-tree, có hiệu năng
truy vấn cao hơn. Cấu trúc này thể hiện được hiệu quả cao khi xây
dựng ứng dụng MODB với hạ tầng viễn thông đang phát triển, đôi lúc
còn xảy ra tình trạng mất kết nối như ở Việt Nam.
Các kết quả chính của luận án được công bố trong các công trình
khoa học (1)-(4). Các kết quả này cũng đã được báo cáo và thảo luận
tại các hội nghị, hội thảo khoa học tại Viện Công nghệ thông tin, Viện
HL KH và CN Việt Nam và hội thảo Quốc gia “Một số vấn đề chọn
lọc của Công nghệ thông tin và truyền thông”.


5
Chương 1. CƠ SỞ DỮ LIỆU CÁC ĐỐI TƯỢNG CHUYỂN ĐỘNG

Trong chương này, nghiên cứu sinh sẽ trình bày kết quả nghiên cứu
và tổng hợp các vấn đề liên quan đến cơ sở dữ liệu các đối tượng
chuyển động bao gồm một số khái niệm cơ bản về MODB và các vấn
đề còn cần giải quyết là (1) mô hình hóa vị trí, (2) ngôn ngữ truy vấn,
(3) lập chỉ mục dữ liệu và (4) tính không chắc chắn/không chính xác
trong dữ liệu vị trí của các đối tượng chuyển động.
1.1.

Một số khái niệm cơ bản

1.1.1. Cơ sở dữ liệu không gian-thời gian

Cơ sở dữ liệu không gian-thời gian được xây dựng nhằm giải quyết
các bài toán không gian thay đổi theo thời gian. Chúng ta có thể hiểu
điểm chuyển động và vùng chuyển động được thể hiện trong miền
không gian ba chiều (không gian 2D + thời gian). Các kiểu dữ liệu này
có thể được tích hợp như kiểu dữ liệu cơ sở (thuộc tính) trong mô hình
quan hệ, hướng đối tượng hoặc các mô hình dữ liệu DBMS khác.

Hình 1.1. Cơ sở dữ liệu không gian-thời gian và MODB
1.1.2. Cơ sở dữ liệu các đối tượng chuyển động
CSDL các đối tượng chuyển động là dạng thu gọn của CSDL
không gian-thời gian, trong đó chỉ quan tâm đến điểm chuyển động
mà không xét đến các đối tượng khác (đường hay vùng chuyển động).
1.1.3. Dữ liệu trong cơ sở dữ liệu các đối tượng chuyển động
Kiểu dữ liệu cơ bản trong cơ sở dữ liệu các đối tượng chuyển động
là điểm chuyển động (moving point – mpoint).


6

a. Rời rạc

b. Liên tục

Hình 1.2. Điểm chuyển động rời rạc và liên tục
Điểm chuyển động mpoint được định nghĩa khác như là một hàm
liên tục từ thời gian vào không gian hai chiều (2D), hoặc như một
đường gấp khúc (polyline) trong không gian ba chiều (2D + thời gian).
1.1.4. Truy vấn trong cơ sở dữ liệu các đối tượng chuyển động
Cơ sở dữ liệu các đối tượng chuyển động cần đáp ứng được việc
cập nhật thường xuyên, đồng thời lại phải đảm bảo truy vấn hiệu quả.

Các kiểu truy vấn phổ biến trong MODB là truy vấn điểm, truy vấn
phạm vi và truy vấn k láng giềng gần nhất. Ngoài ra còn vài kiểu truy
vấn phức tạp hơn như truy vấn phạm vi liên tục hay truy vấn mật độ…
1.2.

Các vấn đề cần giải quyết
Các vấn đề này bao gồm (1) Mô hình hóa vị trí; (2) Ngôn ngữ truy

vấn; (3) Lập chỉ mục và (4) Tính không chắc chắn/không chính xác.
1.2.1. Vấn đề về mô hình hóa vị trí
Để mô tả được các đối tượng chuyển động trong cơ sở dữ liệu và
trả lời được các truy vấn về vị trí, vị trí của các đối tượng chuyển động
sẽ phải được cập nhật một cách liên tục. Việc cập nhận liên tục này sẽ
dẫn đến vấn đề là làm giảm mạnh hiệu năng của hệ thống. Nếu không
thì lại dẫn đến vấn đề là kết quả truy vấn vị trí bị sai lệch. Hơn nữa
việc cập nhật liên tục qua mạng không dây cũng sẽ dẫn đến vấn đề
quá tải băng thông khi số lượng đối tượng cùng cập nhật là rất lớn.
1.2.2. Vấn đề về ngôn ngữ truy vấn


7
Ngôn ngữ truy vấn truyền thống như SQL là không đủ để diễn tả
các truy vấn trong MODB. Cho dù đã có những nghiên cứu về ngôn
ngữ truy vấn không gian và thời gian, nhưng những nghiên cứu này
vẫn là rời rạc và với các ứng dụng MODB, chúng cần được tích hợp
lại để trả lời truy vấn một cách chính xác.
1.2.3. Vấn đề về lập chỉ mục
Số lượng các đối tượng chuyển động trong CSDL có thể rất lớn.
Do vậy chúng ta cần phải lập chỉ mục cho thuộc tính vị trí. Việc sử
dụng cách lập chỉ mục trực tiếp cho thuộc tính không gian như thông

thường là không thể được do việc thay đổi liên tục giá trị của thuộc
tính này sẽ dẫn đến cũng phải lập lại chỉ mục cho nó một cách liên tục.
1.2.4. Vấn đề về tính không chắc chắn/không chính xác
Vị trí của đối tượng chuyển động trong CSDL về cơ bản là không
chính xác với vị trí thực tế của nó bất kể chính sách cập nhật vị trí của
đối tượng vào CSDL. Tính không chắc chắn vốn có này có ý nghĩa
khác nhau cho mô hình cơ sở dữ liệu, truy vấn và lập chỉ mục. Vì sự
không chắc chắn trong cơ sở dữ liệu vị trí, sẽ có thêm hai kiểu ngữ
nghĩa trong truy vấn là “CÓ THỂ” và “CHẮC CHẮN”.
Dù tính không chắc chắn đã được nghiên cứu rộng rãi, việc xây
dựng mô hình mới và khả năng không gian-thời gian cho các đối tượng
chuyển động vẫn cần phải xem xét lại các giải pháp hiện có.
Kết luận chương
Chương 1 đã giới thiệu các vấn đề cơ bản về CSDL các đối tượng
chuyển động. MODB là dạng thu gọn của CSDL không gian-thời gian,
trong đó chỉ quan tâm đến các điểm chuyển động mà không xét đến
các đối tượng khác. Các vấn đề còn tồn tại cần giải quyết trong CSDL
các đối tượng chuyển động cũng được tổng hợp lại. Các chương tiếp
theo nghiên cứu sinh sẽ trình bày các nghiên cứu của mình, góp phần
giải quyết một số vấn đề này.


8
Chương 2. DỰ ĐOÁN VỊ TRÍ CỦA ĐỐI TƯỢNG CHUYỂN ĐỘNG

Trong chương này, nghiên cứu sinh sẽ trình bày hai phương pháp
dự đoán vị trí của đối tượng chuyển động, được đề xuất nhằm góp
phần giải quyết vấn đề mô hình hóa vị trí trong MODB. Phương pháp
thứ nhất là dự đoán vị trí theo hàm chuyển động chỉ hiệu quả với dự
đoán ở tương lai gần. Phương pháp thứ hai là dự đoán theo hành vi

của đối tượng tiếp cận theo hướng sử dụng khai phá luật kết hợp của
các mẫu hình di chuyển của đối tượng, dự đoán được vị trí ở những
thời điểm xa hiện tại với độ chính xác tương đối cao. Kết hợp hai
phương pháp này sẽ đem lại hiệu quả tốt hơn cho truy vấn trong toàn
hệ thống.
2.1. Dự đoán vị trí của đối tượng dựa theo hàm chuyển động
Các hàm chuyển động có thể chia thành hai dạng sau:
-

Hàm tuyến tính: mô tả chuyển động theo đường thẳng

-

Hàm phi tuyến: mô tả chuyển động theo đường cong bất kỳ

2.1.1. Dự đoán dựa theo hàm tuyến tính
Cho một đối tượng có vị trí l0 tại thời điểm t0 có vận tốc v0. Mô
hình chuyển động tuyến tính sẽ dự đoán vị trí của đối tượng tại thời
điểm tq bởi biểu thức:
l(tq)=l0 + v0 * (tq-t0)
trong đó l và v là các véc-tơ n chiều
Với mô hình tuyến tính, việc tính toán vị trí của đối tượng chuyển
động ở thời điểm tiếp theo rất nhanh chóng. Tuy nhiên, với nhiều bài
toán thực tế, độ chính xác này thường không cao do đối tượng có thể
di chuyển trong mạng lưới giao thông đô thị phức tạp và có rất nhiều
yếu tố ảnh hưởng đến véc tơ vận tốc (độ lớn và hướng) của đối tượng.
2.1.2. Dự đoán dựa theo hàm phi tuyến
Trong thực tế, chuyển động của các đối tượng thường là phi tuyến.
Với mô hình này, chuyển động của đối tượng được biểu diễn bởi các



9
hàm toán học phức tạp hơn vì vậy độ chính xác dự đoán sẽ cao hơn
mô hình tuyến tính.
Hàm chuyển động đệ quy và ma trận chuyển động
Sử dụng hàm chuyển động đệ quy là phương pháp dự đoán vị trí
từ những vị trí trước đó trong quá khứ. Phương pháp này biểu diễn vị
trí l của đối tượng tại thời điểm t (ký hiệu lt) dưới dạng biểu thức sau:
𝑓

𝑙𝑡 = ∑ 𝑐𝑖 ∗ 𝑙𝑡−𝑖
𝑖=1

trong đó ci là ma trận hệ số và f là số tối thiểu các vị trí gần nhất
để tính được các phần tử của tất cả ci.
Xét đối tượng O trong không gian n chiều. Tại thời điểm ti và ti+1
(0 < i < q), q là thời điểm truy vấn, vị trí của O được biểu diễn lần lượt
bởi các véc tơ Pi và Pi+1 như sau:
⃗⃗𝑃𝑖 = (𝑝𝑖,1 , 𝑝𝑖,2 , … , 𝑝𝑖,𝑛 )
⃗⃗⃗⃗⃗⃗⃗⃗
và 𝑃
𝑖+1 = (𝑝𝑖+1,1 , 𝑝𝑖+1,2 , … , 𝑝𝑖+1,𝑛 )
Véc tơ dịch chuyển của O từ thời điểm ti đến ti+1, ký hiệu ⃗⃗⃗
𝑖 , được
mô tả như sau:
⃗⃗⃗
⃗⃗⃗⃗⃗⃗⃗⃗
⃗⃗
𝑖 = (𝑖,1 , 𝑖,2 , … , 𝑖,𝑛 ) = 𝑃
𝑖+1 − 𝑃𝑖

⃗⃗⃗
⃗⃗⃗⃗⃗⃗⃗⃗
Do đó muốn tính 𝑃
𝑖+1 ta cần xác định véc tơ dịch chuyển 𝑖 . Có
một số kỹ thuật dự đoán theo hàm chuyển động đệ quy hay được sử
dụng như SMA và EWMA. Chúng sử dụng các vị trí trong quá khứ
của đối tượng để xác định véc tơ dịch chuyển, từ đó dự đoán vị trí của
đối tượng ở các thời điểm tiếp theo.
Kỹ thuật dự đoán theo trung bình động đơn giản - SMA
Biểu thức tính i,k theo SMA (Simple Moving Average) như sau:

Kỹ thuật dự đoán theo trung bình động trọng số mũ - EWMA


10
Biểu thức tính EWMA như sau:

Kỹ thuật dự đoán vị trí đối tượng theo mô hình W-EWMA

Nhằm làm giảm khối lượng tính toán không cần thiết, nghiên cứu
sinh đề xuất kỹ thuật dự đoán đặt tên là W-EWMA (Window
Exponentially Weighted Moving Average). Theo kỹ thuật này thay vì
tính tất cả các j,k, chỉ tính w bước gần nhất trước đó. Biểu thức (2-10)
tính W-EWMA như sau:

Giải thuật tính toán theo kỹ thuật W-EWMA như dưới đây:
Algorithm Cal_W-EWMA
Input:

𝑃𝑖 = {𝑝𝑖,1 , 𝑝𝑖,2 , … , 𝑝𝑖,𝑛 }


Output: 𝑃𝑖+1 = {𝑝𝑖+1,1 , 𝑝𝑖+1,2 , … , 𝑝𝑖+1,𝑛 }
1. w ← a; ← b // initialization w
2. Sd = 0; Sa = 0 // initialization Sd, Sa
3. FOR EACH pi,k IN Pi
4.
FOR j = i-w to i-1 // windowed
5.

j,k = pj,k – pj-1,k calculate 

6.

Sd ← Sd + i-1-j * j,k

7.

Sa ← Sa + i-1-j

8.
END FOR
9.
pi+1,k = pi,k + Sd/Sa
10. END FOR
11. 𝑃𝑖+1 ← {𝑝𝑖+1,1 , 𝑝𝑖+1,2 , … , 𝑝𝑖+1,𝑛 }
12. RETURN Pi+1
Algorithm End.


11

Trong kỹ thuật này, độ phức tạp thuật toán là O(n*w), với
n là số chiều của không gian dữ liệu, w là hằng số xác định
trước bằng công thức (2-10a) w = S/(v*f), Trong đó S là độ dài
trung bình của các tuyến đường trên bản đồ (m), v là vận tốc
di chuyển trung bình (m/s), f là tần suất cập nhật dữ liệu (s).
Các kết quả thực nghiệm trên cho thấy, kỹ thuật dự đoán vị
trí của đối tượng theo mô hình W-EWMA cho kết quả khá
chính xác với thời gian tính toán nhanh hơn theo mô hình
EWMA hay SMA. Giá trị w có thể lựa chọn khởi tạo giá trị
ban đầu theo công thức (2-10a) và điều chỉnh lại cho hợp lý
trong quá trình sử dụng hệ thống. Giá trị nên lựa chọn theo
từng loại ngữ cảnh hay ứng dụng cụ thể: nhỏ phù hợp hơn
với những ứng dụng mà đối tượng di chuyển với hướng và vận
tốc ít biến đổi (phương tiện hàng hải, hàng không) còn lớn
lại dễ thích nghi với những ứng dụng mà đối tượng di chuyển
với hướng và vận tốc hay thay đổi (phương tiện đường bộ).
2.2. Dự đoán dựa trên hành vi của đối tượng
2.2.1. Luật kết hợp
Luật kết hợp là một biểu thức có dạng: XY, trong đó X và
Y là tập các mục cùng xuất hiện trong một bộ cho trước [1]...
2.2.2. Thuật toán phân cụm dựa trên mật độ DBSCAN
Thuật toán phân cụm dựa trên mật độ thông dụng nhất là thuật toán
DBSCAN, cho phép tìm các đối tượng mà có số đối tượng láng giềng
lớn hơn một ngưỡng tối thiểu. Một cụm được xác định bằng tập tất cả
các đối tượng liên thông mật độ với các láng giềng của nó [22]...
2.2.3. Mẫu hình di chuyển
Trong thực tế chuyển động của đối tượng thường có tính chu kỳ
theo một mẫu hình (pattern) nào đó. Ví dụ như con người đi làm hàng



12
ngày theo một tuyến đường định trước. Phương tiện giao thông công
cộng có lịch trình, tuyến đường và điểm đỗ cố định…
Định nghĩa 3.1 [Điểm dừng]
Điểm dừng là một phần quan trọng trong quỹ đạo mà đối tượng
không có dịch chuyển rõ ràng trong một khoảng thời gian nhất định.
Điểm dừng được mô tả bởi một kiểu đặc trưng không gian với khoảng
thời gian xác định (không rỗng).
Định nghĩa 3.2 [Di chuyển]
Di chuyển từ điểm dừng l1 đến l2 được ký hiệu l1  l2 là một phần
của quỹ đạo trong khoảng thời gian xác định được giới hạn bởi hai
điểm dừng liên tiếp l1 và l2 trong đó các điểm dừng này không bị trùng
về mặt thời gian.
Định nghĩa 3.3 [Quỹ đạo]
Quỹ đạo P là một danh sách sắp thứ tự của các điểm dừng và các
di chuyển. P thường được biểu diễn như sau:
P = {(l0, l1, …, ln-1)}
trong đó li (0 ≤ i < n) biểu diễn đối tượng tại vị trí li ở thời điểm i.
Định nghĩa 3.4 [Độ hỗ trợ của di chuyển]
Cho X={P1, P2,…, Pn} là tập các quỹ đạo; Trong đó mỗi quỹ đạo
Pi (0 < i  n) được định nghĩa như định nghĩa 3.3 ở trên.
Độ hỗ trợ của di chuyển AB, ký hiệu là sup(AB), là tỉ số của
các quỹ đạo Pi trong X mà có chứa di chuyển AB trên tổng số quỹ
đạo có trong X.
sup(AB) =

|{P ∈ X |AB ∈ P|
|X|

Trong đó ký hiệu |Z| biểu diễn số phần tử có trong tập Z.

Định nghĩa 3.5 [Mẫu hình di chuyển]
Một di chuyển được gọi là mẫu hình di chuyển nếu độ hỗ trợ s của
nó lớn hơn hoặc bằng một ngưỡng cho trước gọi là minsup.
Định nghĩa 3.6 [Mẫu hình quỹ đạo]


13
Quỹ đạo P được gọi là mẫu hình quỹ đạo nếu nó được biểu diễn
dưới dạng của một luật kết hợp đặc biệt:
P:

𝑗1

𝑗2

𝑗𝑚 𝑐

𝑗𝑛

𝑅𝑡1  𝑅𝑡2  …  𝑅𝑡𝑚 → 𝑅𝑡𝑛

với ràng buộc về thời gian:
t1 < t2 < … < t m < tn
Tham số c là độ chắc chắn hay xác xuất biểu thị khả năng xảy ra.
Định nghĩa 3.7 [Truy vấn tương lai]
Truy vấn tương lai là truy vấn dự đoán không gian-thời gian thỏa
mãn điều kiện sau:
tq  tc + d
Trong đó tq là ký hiệu thời gian tại thời điểm truy vấn, tc là ký hiệu
thời gian hiện thời và d là thời gian ở tương lai thỏa mãn:

tq < T, 0 < d < T (T là ngưỡng thời gian truy vấn)
2.2.4. Khai phá mẫu hình di chuyển
Khai phá mẫu hình di chuyển đã được nghiên cứu và có một số kết
quả nhất định. Các nghiên cứu này bao gồm các nhóm sau:
(1) Biến đổi dữ liệu thô: Dữ liệu thô được xấp xỉ và chuyển đổi
thành một định dạng phân tích.
(2) Chỉ mục: Kalniset và đồng nghiệp sử dụng một chỉ số lưới Gt
tại mỗi thời điểm t để lưu trữ dữ liệu tại thời điểm đó. Sau đó
áp dụng thuật toán phân cụm dựa trên mật độ DBSCAN trên
các chỉ số lưới Gt để xác định các cụm tại thời điểm t.
(3) Tiếp cận kiểu Apriori: Cách tiếp cận kiểu Apriori có thể được
áp dụng để khai phá các mẫu hình quỹ đạo một cách hiệu quả.
Một vấn đề trong việc dự đoán vị trí đối tượng dựa theo mẫu
hình là làm thế nào để xác định được mẫu hình dựa trên thông tin
về vị trí của nó trong quá khứ. Một số nghiên cứu cho rằng có thể
làm được bằng cách khai phá mẫu hình. Tuy nhiên để thu được
mẫu hình cần một lượng rất lớn dữ liệu lịch sử của đối tượng để


14
tiến hành khai phá. Điều này cũng có nghĩa là số lượng mẫu hình
phát hiện được cũng sẽ rất lớn. Vì vậy cần có phương pháp để tổ
chức các mẫu hình này để trả lời các truy vấn dự đoán vị trí một
các hiệu quả. Nhằm góp phần giải quyết vấn đề này, nghiên cứu
sinh đề xuất sử dụng khung quy trình khai phá mẫu hình di chuyển
và lưu trữ trong CSDL không gian như hình dưới đây.
Dữ liệu

Cơ sở dữ liệu
Địa lý


Cơ sở dữ liệu
quỹ đạo

Trích chọn mẫu hình

Tiền xử lý

Khai phá dữ liệu
Mẫu hình

Mô hình hóa mẫu hình

Mẫu hình di chuyển

Hình 2.9. Quy trình khai phá mẫu hình di chuyển
Quy trình này được phân thành 3 mức: dữ liệu, trích chọn mẫu hình
và mô hình hóa mẫu hình. (1) Ở mức dữ liệu, trong CSDL lưu trữ cả
dữ liệu địa lý và dữ liệu quỹ đạo chuyển động của đối tượng. (2) Ở
mức trích chọn mẫu hình, dữ liệu được làm sạch và chuyển đổi thành
định dạng chuẩn (tiền xử lý) để chuẩn bị cho bước khai phá dữ liệu. Ở
mức này, dữ liệu cũng được chuyển đổi thành định dạng đầu vào theo
yêu cầu của các thuật toán khai phá. (3) Ở bước khai phá dữ liệu, người
sử dụng có thể xác định các tham số khai phá như độ hỗ trợ tối thiểu…
để có thể trích chọn chỉ các đặc trưng thỏa mãn ràng buộc. Sau khai
phá chúng ta có các mẫu hình di chuyển và sẽ được mô hình hóa cho
bước dự đoán vị trí về sau.


15

2.2.5. Khai phá luật kết hợp của mẫu hình quỹ đạo trong dự
đoán vị trí của đối tượng chuyển động
Trong luận án này, nghiên cứu sinh sử dụng thuật toán tựa Apriori
[51] để khai phá các mẫu hình quỹ đạo. Việc khai phá này tương tự
như khai phá các luật kết hợp bao gồm hai bước chính sau:
(1) Xác định các vùng thường xuyên đến
 Xác định mẫu hình có tính chu kỳ, phân chia toàn bộ quỹ
đạo thành


𝑛
𝑇

quỹ đạo con

Nhóm tất cả các vị trí Gt có cùng khoảng dịch thời gian
trong mỗi quỹ đạo con



Áp dụng thuật toán phân cụm dựa trên mật độ DBSCAN
để xác định các cụm (vùng thường xuyên đến) cho mỗi
khoảng dịch thời gian t

(2) Suy diễn mẫu hình quỹ đạo từ các vùng thường xuyên đến


Sử dụng thuật toán tựa Apriori sinh ra tập k mục dự tuyển
từ tập k-1 mục trước đó. Với các ràng buộc:
o


Lựa chọn các mẫu hình theo chiều hướng tăng
dần. Vì các mẫu hình quỹ đạo là chuyển động theo
thời gian tăng dần qua mỗi vùng. Những mẫu hình
nào không đảm bảo ràng buộc này sẽ bị loại bỏ.

o

Lựa chọn mẫu hình ưu tiên ít mục trong hệ quả.

Cách tiếp cận kiểu Apriori này có thể làm giảm đáng kể không gian
tìm kiếm trong vài lần lặp lại đầu tiên, cho phép mẫu hình quỹ đạo
được khai phá hiệu quả. Việc lựa chọn các mẫu hình theo chiều hướng
tăng dần và loại bỏ các mẫu hình không hợp lệ được kiểm tra và thực
hiện bởi toán tử kết nối có điều kiện (∞ operator). Điều kiện kết nối
được thực hiện bởi hàm so sánh thứ tự kết nối, đảm bảo các vùng
thường xuyên đến có thứ tự tăng dần theo thời gian. Thuật toán cho
khai phá quỹ đạo được mô tả như sau:


16
Algorithm Apriori_Trajectories
Input: Trajectory database D with the movement’s support = min_sup
Output: Frequent Regions
Procedure Apriori_Trajectories
1. R1 = find_frequent_1-itemsets(D);
2.
3.
4.
5.

6.
7.

FOR (k=2; Rk-1 ; k++)
Ck = apriori_gen(Rk-1, min_sup);
FOR EACH Tt  D
Ct = subset(Ck,t);

// Tt is trajectory tth
// use tth sub-trajectory for candidate

FOR EACH candidate c  Ct
c.count++;

8.
Rk = {c  Ck | c.count  min_sup};
9.
END FOR
10. END FOR
11. RETURN (Frequent Regions = k Rk);
End Procedure
Procedure apriori_gen(Rk-1: frequent (k-1) itemsets; min_sup)
1.
2.
3.

FOR EACH itemset R1  Rk-1
FOR EACH itemset R2  Rk-1
IF (R1[1]= R2[1])  (R1[2]= R2[2])...  (R1[k-2]= R2[k-2])


 (R1[k-1]4.
c = R1 ∞ R2; // joint step: produce k candidate from k-1
item sets
5.
IF has_infrequent_subset(c, Rk-1) THEN
6.
delete c; // removal if there are multiple entries in the result
7.
ELSE add c to Ck;
8.
END FOR
9. END FOR
10. RETURN Ck;
End Procedure
Procedure has_infrequent_subset(c: candidate k-itemset; Rk-1: frequent (k-1)
itemsets)
1. FOR EACH (k-1)-subset s of c
2.
IF s  Rk-1 THEN RETURN TRUE
3. RETURN FARSE
End Procedure
Algorithm End


17
Trong thuật toán này, ở thủ tục chính Apriori_Trajectories, phần sinh
tập k mục dự tuyển từ tập k-1 mục ở dòng 3, phần tính độ hỗ trợ ở
dòng 4 đến 7, các mục dự tuyển có độ hỗ trợ nhỏ hơn minsup sẽ bị
loại bỏ ở dòng 8. Ở thủ tục apriori_gen, bước joint step ở dòng 4 sử

dụng toán tử kết nối có điều kiện để đảm bảo việc lựa chọn các mẫu
hình theo chiều hướng tăng dần và loại bỏ các mẫu hình không hợp lệ.
Kết quả thực nghiệm
Bộ dữ liệu mẫu sử dụng tương tự của Luis O. A. và đồng nghiệp
[19]. Dữ liệu này liên quan đến các hoạt động hàng ngày của đối tượng
và được lấy trong khoảng thời gian 3 tháng (91 ngày). Đối tượng này
có một số điểm dừng (vùng thường xuyên đến) là Home, Café,
Market, Office và Laboratory.
Kết quả thực nghiệm được sử dụng kết hợp với phương pháp dự
đoán theo hàm chuyển động. Khi so sánh với phương pháp dự đoán
chỉ theo hàm chuyển động, độ chính xác của phương pháp kết hợp đã
tăng thêm đáng kể.
Kết luận chương
Chương 2 đã trình bày các kết quả nghiên cứu của nghiên cứu sinh
bao gồm hai phương pháp đề xuất cho dự đoán vị trí của đối tượng
chuyển động, nhằm góp phần giải quyết vấn đề mô hình hóa vị trí
trong MODB. Phương pháp thứ nhất là dự đoán vị trí theo hàm chuyển
động sử dụng mô hình W-EWMA, có ưu điểm là xử lý nhanh chóng,
cho phép dự đoán được vị trí ở gần thời điểm hiện tại. Phương pháp
thứ hai là dự đoán theo hành vi, tiếp cận theo hướng sử dụng khai phá
luật kết hợp của các mẫu hình di chuyển của đối tượng. Phương pháp
này cho phép dự đoán được vị trí ở những thời điểm xa hiện tại với độ
chính xác tương đối cao. Kết hợp các phương pháp này sẽ đem lại hiệu
quả tốt hơn cho cả hệ thống. Các kết quả này cũng được thể hiện trong
các công bố (1)-(3).


18
Chương 3. LẬP CHỈ MỤC DỮ LIỆU KHÔNG GIAN – THỜI GIAN


Trong chương này, nghiên cứu sinh sẽ trình bày kết quả nghiên cứu
là một cấu trúc chỉ mục mới được đề xuất dựa trên TPR*-tree nhằm
giảm bớt các vùng không gian trống mỗi khi thực hiện truy vấn liên
tục bằng cách điều chỉnh MBR theo mật độ, đặt tên là DO-TPR*-tree.
Kết quả này nhằm góp phần giải quyết vấn đề về lập chỉ mục dữ liệu
trong cơ sở dữ liệu các đối tượng chuyển động.
3.1. R-tree
R-tree là một cấu trúc cây cân bằng được xây dựng dựa trên B-tree
để truy xuất nhanh các vùng không gian, bằng cách chia nhỏ không
gian thành các vùng nhớ và tạo chỉ mục, sau đó áp dụng lý thuyết cây
để quản lý, lưu trữ và truy xuất các vùng không gian này. R-tree có
nhiều biến thể khác như R+-tree hay R*-tree cải tiến thêm về tốc độ
truy vấn. R-tree cũng là cơ sở cho rất nhiều cấu trúc chỉ mục khác mà
được sử dụng phổ biến như TPR-tree, TPR*-tree…
3.2. TPR-tree
TPR-tree (Time-Parameterized R-tree) [36] là một cây cân bằng,
đa chiều dựa trên cấu trúc của R*-tree [2], phát triển từ R-tree [9].
TPR-tree cho phép dự đoán vị trí tương lai của đối tượng chuyển động
bằng cách lưu trữ cả vị trí hiện tại cùng với vận tốc của từng đối tượng
tại một thời điểm cụ thể. TPR-tree là cấu trúc cây rất hiệu quả cho việc
lưu trữ và tìm kiếm trong cơ sở dữ liệu các đối tượng chuyển động.
Nó là cơ sở cho rất nhiều cấu trúc cây khác phát triển mở rộng về sau,
điển hình là TPR*-tree.
3.3. TPR*-tree
Cấu trúc dữ liệu và thuật toán xử lý truy vấn của TPR*-tree [42]
tương tự như của TPR-tree. Điểm khác giữa hai loại cây này nằm ở
thuật toán thêm đối tượng mới vào cây nhờ đó làm tăng tốc độ xử lý
truy vấn. Khi chèn đối tượng mới vào cây, TPR-tree đánh giá các thay



19
đổi tổng thể trên độ lớn diện tích của MBR, độ dài đường bao MBR
và diện tích các vùng chồng chéo giữa các MBR mà sẽ bị ảnh hưởng
bởi việc chèn này. TPR-tree lựa chọn nhánh cây để chèn mà những
thay đổi này là nhỏ nhất. Dù cách tiếp cận này là rất hiệu quả cho việc
lập chỉ mục các đối tượng tĩnh trong R*-tree, nhưng nó vẫn chưa phải
là giải pháp tốt cho các đối tượng chuyển động. Bởi vì TPR-tree chỉ
ước tính các thay đổi của MBR tại thời điểm chèn mà không xem xét
MBR đã thay đổi theo tham số thời gian.
Để giải quyết những thiếu sót này TPR*-tree sử dụng thuật toán
chèn có phản hồi các biến đổi theo thời gian của MBR. Khi chèn đối
tượng mới vào cây, TPR*-tree sử dụng thuật toán chèn trong đó xem
xét bao nhiêu MBR sẽ quét trong không gian chỉ mục từ thời điểm
chèn đến thời điểm cụ thể trong tương lai và sẽ chọn nhánh chèn sao
cho vùng quét tổng thể trong nhánh này là nhỏ nhất. Cây TPR*-tree
sẽ cho kết quả truy vấn tương lai nhanh hơn vì nó giúp thu gọn các
MBR và hạn chế các vùng chồng lấp có thể không đem lại kết quả tìm
kiếm. Ngoài ra, thuật toán xóa cũng được điều chỉnh nâng cao tương
tự thuật toán chèn. Theo thử nghiệm kết quả trong [42], cây TPR*tree mang lại hiệu suất gấp 5 lần so với cây TPR-tree.
3.4. DO-TPR*-tree
Trong TPR*-tree, VBR của mỗi nút lưu trữ vận tốc lớn nhất và nhỏ
nhất theo mỗi chiều của hình chữ nhật bao MBR. Và trong thực tế, các
MBRs này phát triển rất nhanh theo thời gian, dẫn đến phát sinh vùng
không gian trống (mà chắc chắn không chứa kết quả truy vấn) và gây
ra sự chồng chéo rất lớn giữa các MBRs của các nút. Điều này sẽ làm
giảm đáng kể hiệu suất xử lý truy vấn vì cần đến một số lượng ngày
càng tăng của việc truy cập các nút cần thiết khi tìm kiếm do chồng
chéo. Đối với vấn đề này, TPR*-tree chỉ thực hiện điều chỉnh MBR
trên một nút bất cứ khi nào có thao tác cập nhật mà phản ánh sự thay



20
đổi vận tốc của đối tượng hoặc vị trí hiện tại trên nút đó. Như vậy với
một nút N không được cập nhật trong một khoảng thời gian dài, kích
cỡ vùng không gian trống sẽ tăng lên rất nhanh. Các truy vấn liên tục
thực hiện trên cấu trúc cây TPR*-tree sẽ bị giảm hiệu suất nhanh
chóng. Vấn đề này xuất phát từ tính thụ động trong việc điều chỉnh
MBR trong cây TPR*-tree. Để giải quyết vấn đề này, nghiên cứu sinh
đề xuất một cấu trúc chỉ mục mới dựa trên TPR*-tree, nhằm giảm bớt
các vùng không gian trống mỗi khi thực hiện truy vấn liên tục bằng
cách điều chỉnh MBR theo mật độ, đặt tên là DO-TPR*-tree (Density
Optimal TPR*-tree).
3.4.1. Cấu trúc cây DO-TPR*-tree
Cây DO-TPR*-tree kế thừa toàn bộ cấu trúc của cây TPR*-tree. Nút
lá của DO-TPR*-tree là một cấu trúc bao gồm: vị trí của đối tượng
chuyển động và con trỏ đến đối tượng chuyển động. Nút trung gian là
một cấu trúc bao gồm: con trỏ đến cây con và hình chữ nhật bao các
nhánh cây con. DO-TPR*-tree cũng sử dụng cả MBR và VBR để biểu
diễn các đối tượng chuyển động.
3.4.2. Thuật toán tìm kiếm DOA_Search
Kỹ thuật xử lý truy vấn
Giả sử 𝑇𝑢𝑗 và 𝑇𝑢𝑗+1 lần lượt là các thời điểm cập nhật liên tiếp thứ
j và (j+ 1) mà sẽ có điều chỉnh MBR ở nút N. Chúng ta cùng xem xét
tình huống xử lý truy vấn P tại nút N của cây TPR*-tree mà P thực
hiện trong khoảng thời gian [𝑇𝑢𝑗 , 𝑇𝑢𝑗+1 ]. Giả sử có k truy vấn liên tục
sau thời điểm cập nhật thứ j ký hiệu Qj,k tại các thời điểm truy vấn 𝑇𝑞𝑗,𝑖
xẩy ra ở nút N và nằm trong khoảng thời gian giữa hai lần cập nhật
liên tiếp [𝑇𝑢𝑗 , 𝑇𝑢𝑗+1 ]. Ta có:
𝑇𝑢𝑗 < 𝑇𝑞𝑗,1 < 𝑇𝑞𝑗,2 < … < 𝑇𝑞𝑗,𝑘 < 𝑇𝑢𝑗+1
Vì MBR của nút N mở rộng nhanh chóng trong khoảng thời gian

[𝑇𝑢𝑗 , 𝑇𝑢𝑗+1 ], truy vấn tại thời điểm 𝑇𝑞𝑗,𝑖 (1 ≤ i ≤ k) sẽ xem xét toàn bộ


21
MBR của N và vì vậy sẽ dẫn đến tồn tại những vùng không gian trống
ngày càng lớn mà việc thực hiện truy vấn trên đó không đem lại thêm
kết quả nào. Rõ ràng là nếu có thể thực hiện điều chỉnh MBR ở nút N
tại thời điểm 𝑇𝑞𝑗,𝑖 khi thực hiện truy vấn Qj,i nào đó, thì tất cả các truy
vấn sau đó Qj,x (i < x ≤ k) sẽ không phải xử lý trong vùng không gian
trống đó nữa ở khoảng thời gian còn lại [𝑇𝑞𝑗,𝑖 , 𝑇𝑢𝑗+1 ].
Phương pháp đề xuất của nghiên cứu sinh là bắt buộc điều chỉnh
MBR dựa trên mật độ của nút N trong cây TPR*-tree. Lợi ích của
phương pháp này là giảm được một số lượng lớn các truy vấn liên tục
vào nút N trong khoảng thời gian [𝑇𝑞𝑗,𝑖 , 𝑇𝑢𝑗+1 ] do MBR của nó đã được
điều chỉnh nhỏ lại và giảm thiểu không gian trống.
Trong phương pháp đề xuất, nghiên cứu sinh đưa ra hai định nghĩa
sau mà sẽ được sử dụng trong thuật toán đề xuất.
ĐỊNH NGHĨA 3.1 [Node Density – Mật độ của một nút]. Giả
sử N là một nút của cây TPR*-Tree. Mật độ của nút N, ký hiệu DN, là
tỉ số giữa số lượng Entry nằm trong N trên diện tích của MBR của nút
đó. Mật độ của nút N tại thời điểm T, ký hiệu DN(T), là tỉ số của số
lượng Entry nằm trong N trên diện tích của MBR của nút đó tại thời
điểm T.
DN (T) =

𝑁𝑢𝑚_𝐸𝑁 (𝑇)
𝐴𝐵𝑅𝑁 (𝑇)

(3-1)


Trong đó,
- Num_EN(T) số lượng các Entry nằm trong N tại thời điểm T. Nếu
N là nút lá thì Num_EN(T) là số đối tượng chuyển động trong N
- ABRN(T) là diện tích của MBR của nút N tại thời điểm T
ĐỊNH NGHĨA 4.2 [Node Density Optimal – Mật độ đủ tốt của
một nút]. Giả sử N là một nút của cây TPR*-Tree. Mật độ của nút N
tại thời điểm truy vấn Tq được gọi là đủ tốt nếu tỉ số của mật độ của
nút N tại thời điểm cập nhật cuối cùng trước đó Tu với nó nhỏ hơn một
số λ cho trước.


22
𝐷𝑁 (𝑇𝑢 )
𝐷𝑁 (𝑇𝑞 )



(3-2)

Trong đó,
- 𝐷𝑁 (𝑇𝑞 ) là mật độ của nút N tại thời điểm truy vấn Tq
- 𝐷𝑁 (𝑇𝑢 ) là mật độ của nút N tại thời điểm cập nhật cuối cùng Tu
- λ là một số cho trước.
Nhìn chung, lựa chọn λ là tùy thuộc vào ngữ cảnh của từng ứng
dụng cụ thể và tùy từng thời điểm khác nhau, do mật độ các đối tượng
chuyển động thay đổi theo thời gian. Trong ứng dụng quản lý phương
tiện chuyển động, λ có thể khởi tạo bằng giá trị h-1 trong đó h là chiều
cao của cây. Giá trị này có thể điều chỉnh lại trong quá trình sử dụng
ứng dụng. Ví dụ với mật độ giao thông cao vào thời điểm đầu giờ sáng
hay giờ tan tầm thì giảm giá trị λ (nhưng vẫn lớn hơn 1), còn những

thời điểm khác có thể tăng λ.
Trong phương pháp đề xuất này, nghiên cứu sinh kiểm tra điều
kiện mật độ đủ tốt (3-2) của nút N khi có truy vấn của người sử dụng
tại thời điểm truy vấn 𝑇𝑞𝑗,𝑖 . Nếu không thỏa điều kiện (3-2), việc điều
chỉnh MBR sẽ được thực hiện trên nút N. Vì vậy tất cả các truy vấn
sau thời điểm này Qj,x (i < x ≤ k) sẽ không phải xử lý trong vùng không
gian trống của N ở khoảng thời gian còn lại [𝑇𝑞𝑗,𝑖 , 𝑇𝑢𝑗+1 ]. Nhờ đó mà
giảm được một số lượng lớn các truy vấn liên tục vào nút N trong
khoảng thời gian này và nâng cao hiệu năng truy vấn của TPR*-tree.
Thuật toán tìm kiếm DOA_Search
Gọi việc điều chỉnh MBR khi kiểm tra điều kiện (3-2) là điều chỉnh
mật độ đủ tốt - Density Optimal Adjustment (DOA). Truy vấn tương
lai của người sử dụng được biểu diễn dưới dạng (QBR, QT). Trong đó,
QBR là ký hiệu phạm vi truy vấn (bao gồm MBR và VBR) trong không
gian truy vấn hai chiều và QT là ký hiệu khoảng thời gian truy vấn (bao
gồm thời gian bắt đầu và thời gian kết thúc). Truy vấn tương lai dự
đoán các đối tượng chuyển động mà sẽ đi vào vùng QBR trong khoảng


23
thời gian QT. Thuật toán tìm kiếm đề xuất DOA_Search được mô tả
dưới đây, trong đó trả về tập các định danh của những đối tượng thỏa
mãn truy vấn tương lai (QBR, QT).
Algorithm DOA_Search(QBR, QT, rootNode)
Input: (QBR, QT) = future-time query answered.
rootNode= address to the root of a sub-tree being searched.
Output: SBR= objects’ ids satisfying (QBR, QT).
1. IF rootNode is a leaf node THEN
2.
3.

4.

SBR ← ; // initialization
FOR EACH moving object O IN rootNode
IF O IN (QBR, QT) THEN //O is expected computed to be positioned
d in QBR within interval QT

5.
SBR= SBR  O.id;
6.
END IF
7.
END FOR
8. ELSE // rootNode is a non-leaf node
9. FOR EACH index entry e IN rootNode
10.
IF OVERLAP(e.MBR, QBR, QT) THEN // if there is an overlap
between the MBR of e and QBR within QT
11.
Cache(e); // cache the content of e into the memory buffer
12.
nodeDensity = Cal_NodeDensity(e.childNode); // calculate the
Node Density Optimal of the child node pointed to by e
13.
λ = h-1; // h is the tree height
14.
IF (nodeDensity >= λ) THEN // an DOA execution is needed on
childNode
15.
Adjust (e.MBR, e.VBR); //adjust the MBR and VBR data of e

16.
END IF
17.
childSBR ← DOA_Search(QBR, QT, childNode);
18.
SBR ← SBR  childSBR;
19.
END IF
20. END FOR
21. RETURN SBR
22. END IF
Algorithm End.


24
Thuật toán tìm kiếm từ trên xuống các nút lá từ nút gốc. Trong quá
trình tìm kiếm, tiến trình tìm kiếm sẽ xác định đường tìm kiếm bằng
cách tính toán các hình chữ nhật bao từ mỗi mục e ở các nút trong.
Tiến trình sẽ lưu nội dung mỗi mục e gặp phải vào vùng nhớ cache tại
dòng 11. Việc tính toán mật độ của nút được thực hiện ở dòng 12.
Điều kiện mật độ đủ tốt của nút được kiểm tra ở dòng 14, nếu điều
kiện này không đạt, việc điều chỉnh MBR của nút đó sẽ được thực
hiện ở dòng 15. Khi đến nút lá ở dòng 5, thuật toán sẽ đưa ra nhóm
các định danh của các đối tượng chuyển động thỏa mãn điều kiện truy
vấn và trả về ở dòng 21.
Định lý 3.1 (Thuật toán DOA_Search là đúng). Thuật toán
DOA_Search trả về đúng và đầy đủ các kết quả truy vấn phạm vi trong
tương lai.
Chứng minh.
Ta thấy, mọi nút trong cây đều được duyệt. Điều này có thể thấy ở

dòng 3, mọi nút lá và dòng 9, mọi nút trung gian trong cây (a).
Tất cả các nút lá có vị trí nằm trong phạm vi hình chữ nhật truy vấn
QBR trong khoảng thời gian truy vấn tương lai QT đều được đưa vào
danh sách kết quả truy vấn (dòng 4 và 5) (b).
Tất cả các mục entry của nút trung gian mà có hình chữ nhật bao
giao với hình chữ nhật truy vấn QBR trong khoảng thời gian truy vấn
tương lai QT (dòng 9, 10) đều được duyệt và tìm kiếm đệ quy để tìm
ra nút lá bên trong thỏa mãn kết quả truy vấn (dòng 17, 18) (c).
Thuật toán dừng khi duyệt hết tất cả các nút trong cây (d).
Từ (a) (b) (c) và (d) ta có điều phải chứng minh.
3.4.3. Kết quả thực nghiệm
Những kết quả thực nghiệm chỉ ra rằng số lượng trung bình kết quả
tìm được là tương đương nhưng trung bình số nút phải xử lý ít đi và
thời gian thực hiện truy vấn giảm xuống khoảng 30%. Phương pháp


25
mà nghiên cứu sinh đề xuất cho kết quả truy vấn nhanh hơn phương
pháp gốc.
Ở Việt Nam, với hạ tầng viễn thông đang phát triển, mạng truyền
thông 3G thường bị lỗi hay chập chờn ở nhiều điểm ngay cả khi đang
ở trong thành phố, tần suất cập nhật vị trí các điểm chuyển động sẽ bị
hạn chế. Do đó khi truy vấn, hệ thống đòi hỏi cần nhiều lần điều chỉnh
mật độ đủ tốt. Phương pháp của nghiên cứu sinh tỏ ra rất hiệu quả
trong điều kiện này. Trong những trường hợp không cần điều chỉnh
mật độ đủ tốt, phương pháp của nghiên cứu sinh hoạt động tương tự
phương pháp gốc của TPR*-tree.
Kết luận chương
Chương 3 đã trình bày một số cấu trúc cây cơ bản việc trong lập
chỉ mục dữ liệu không gian-thời gian. Trong chương này, nghiên cứu

sinh cũng đã trình bày kết quả nghiên cứu là một cấu trúc cây mới
được đề xuất dựa trên cây TPR*-tree nhằm giảm bớt các vùng không
gian trống mỗi khi thực hiện truy vấn liên tục bằng cách điều chỉnh
MBR theo mật độ, đặt tên là DO-TPR*-tree. Thuật toán xử lý truy vấn
DOA_Search trong cấu trúc cây này đã được đưa ra và chứng minh
tính đúng đắn. Các thực nghiệm cũng chứng tỏ cấu trúc cây DOTPR*-tree đem lại hiệu năng tốt hơn trong nhiều trường hợp so với
cấu trúc cây ban đầu là TPR*-tree. Kết quả nghiên cứu này được thể
hiện trong các công bố (4) của nghiên cứu sinh.


×