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

Bài giảng cơ sở dữ liệu đa phương tiện

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 (2.54 MB, 142 trang )

H c vi n Cơng ngh Bưu chính Vi n thơng

ð Trung Tu n

Cơ s d li u đa phương ti n

Hà N$i, 2010
1


M cl c
M c l c........................................................................................................................... 2
Gi i thi u........................................................................................................................ 5
Chương I. T ng quan v cơ s d li u ña phương ti n..................................................... 6
1.1 M ñ$u ......................................................................................................... 6
1.2 Khái ni m d li u ña phương ti n ................................................................. 6
1.1.1. Ki(u d li u và ña phương ti n .............................................................. 6
1.1.2. Cơ s d li u và h qu*n tr, cơ s d li u .............................................. 7
1.1.3. Tìm ki1m thông tin tư li u văn b*n ........................................................ 7
1.1.4. Tìm ki1m và ch6 s7 hóa đa phương ti n.................................................. 7
1.1.5. Trích đ:c trưng, th( hi n n1.3. ð:c trưng c?a các đ7i tư@ng ña phương ti n ............................................... 8
1.3.1. SB gia tăng d li u đa phương ti n và các tính chCt c?a chúng............... 8
1.3.2. H qu*n tr, cơ s d li u và vai trị qu*n lí d li u đa phương ti n......... 9
1.3.3. H th7ng tìm ki1m thơng tin ñ7i v i d li u ña phương ti n ................ 11
1.3.4. Ti1p cHn tích h@p đ( tìm ki1m và ch6 s7 hóa đa phương ti n ................ 11
1.3.5. T ng quan v h th7ng tìm ki1m và ch6 s7 hóa đa phương ti n ............ 12
1.4. CCu trúc lưu tr cơ s d li u ña phương ti n............................................. 12
1.4.1. Gi i thi u ............................................................................................ 13
1.4.2. Cây kKD............................................................................................... 13
1.4.3. Cây tM phân ......................................................................................... 18


1.4.4. Cây tM phân MX.................................................................................. 21
1.4.5. Cây R .................................................................................................. 24
1.4.6. So sánh các cCu trúc d li u đa phương ti n......................................... 26
1.5. Ngơn ng thao tác d li u ña phương ti n.................................................. 27
1.5.1. Giao di n ngưRi dùng .......................................................................... 27
1.5.2. Kh* năng c?a h th7ng tìm ki1m và ch6 s7 hóa và Mng d ng ................ 27
1.6. K1t luHn ..................................................................................................... 28
Chương 2. Tư li u ña phương ti n tương tác.................................................................. 29
2.1 Cơ s d li u ña phương ti n tương tác....................................................... 29
2.1.1. Gi i thi u ............................................................................................ 29
2.1.2. Ki1n trúc c?a MIRS............................................................................. 29
2.1.3. Các mơ hình d li u ............................................................................ 31
2.1.4. Thi1t k1 giao di n ngưRi dùng ............................................................. 35
2.2. Mô hình hố tư li u đa phương ti n tương tác IMD.................................... 37
2.2.1. Mơ hình hố tương tác v i các sB ki n ................................................ 38
2.2.2. T h@p không gian, thRi gian và các nhân t7........................................ 40
2.2.3. D li u văn b*n ................................................................................... 42
2.2.4. ðU hVa vecto và hình đ2.2.5. Âm thanh............................................................................................. 50
2.2.6. Hình *nh s7 ......................................................................................... 57
2.2.7. Video s7 .............................................................................................. 64
2.3. Phân lo[i.................................................................................................... 69
2


2.3.1. M2.3.2. Các đ:c tính và u c$u c?a d li u và Mng d ng ña phương ti n......... 71
2.4 Mơ hình k,ch b*n ....................................................................................... 74
2.4.1. K,ch b*n trong IMD ............................................................................ 74
2.4.2. K,ch b*n ña phương ti n...................................................................... 75

2.5. Tìm ki1m tư li u đa phương ti n tương tác................................................. 77
2.5.1. Tìm tư li u đa phương ti n tương tác dBa trên cCu trúc không gian, thRi
gian...................................................................................................................... 78
2.6. K1t luHn ..................................................................................................... 81
Chương 3. Thành tBu và xu hư ng ................................................................................ 82
3.1 Các thành tBu chính c?a công ngh h qu*n tr, cơ s d li u đa phương ti n
................................................................................................................................ 82
3.1.1. Mơ hình hố ........................................................................................ 82
3.1.2. Tồn v_n.............................................................................................. 82
3.1.3. Tìm theo n3.2 Các s*n ph\m thương m[i và m`u nghiên cMu............................................ 86
3.2.1. M3.2.2. Qu*n lý ña phương ti n ....................................................................... 86
3.2.3. Các vai trò trong dB án ña phương ti n ................................................ 89
3.3. Hư ng phát tri(n c?a cơ s d li u ña phương ti n..................................... 90
3.3.1. M3.3.2. An tồn d li u đa phương ti n............................................................ 91
3.3.3. Yêu c$u v t chMc d li u ña phương ti n .......................................... 93
3.4. K1t luHn ..................................................................................................... 95
Chương 4. Qu*n tr, d li u ña phương ti n.................................................................... 96
4.1. Khái ni m v qu*n tr, cơ s d li u ña phương ti n.................................... 96
4.1.1. D[ng d li u đa phương ti n................................................................ 96
4.1.2. Ngơn ng hei d li u ña phương ti n................................................... 97
4.1.3. VCn ñ khác......................................................................................... 98
4.2. Ki1n trúc h qu*n tr, cơ s d li u ña phương ti n ..................................... 98
4.2.1. Các ki1n trúc v t chMc n4.2.2. Nguyên tfc tB qu*n.............................................................................. 98
4.2.3. Nguyên tfc ñUng ñ u ........................................................................... 98
4.2.4. Nguyên tfc t chMc hgn h@p ................................................................ 99
4.2.5. M

4.2.6. T chMc cơ s d li u dBa trên nguyên tfc th7ng nhCt........................ 100
4.3. Các ki thuHt mô hình hóa d li u............................................................ 100
4.3.1. Mơ hình quan h ................................................................................ 100
4.3.2. Cơ s d li u hư ng ñ7i tư@ng .......................................................... 101
4.3.3. Cơ s d li u ña phương ti n............................................................. 107
4.4 Các kĩ thuHt ch6 s7 hoá và trku tư@ng hoá.................................................. 108
4.4.1. Gi i thi u .......................................................................................... 108
4.4.2. Ch6 s7 hố cơ s d li u đa phương ti n ............................................ 109
4.4.3. Các ch6 s7 hi(n hi n........................................................................... 109
4.4.4. Trku tư@ng hoá video ........................................................................ 110
4.4.5. ðU th, chuy(n c*nh............................................................................ 112
3


4.5. Tìm thơng tin đa phương ti n dBa trên n4.5.1. Gi i thi u v tìm thơng tin đa phương ti n......................................... 112
4.5.2. LVc thơng tin ..................................................................................... 113
4.5.3. Hei d li u ña phương ti n ................................................................ 113
4.5.4. Tìm theo n4.6. Thí d v cơ s d li u đa phương ti n..................................................... 114
4.6.1. M4.6.2. Tìm các đ7i tư@ng dBa trên hình d[ng................................................ 117
4.6.3. Th( hi n hình d[ng ............................................................................ 118
4.6.4. Vi c kh p các hình ............................................................................ 118
4.6.5. Các liên k1t video đa phương ti n...................................................... 118
4.7. Các Mng d ng c?a ña phương ti n ............................................................ 119
4.7.1. Các hình *nh thơ................................................................................ 120
4.7.2. Th( hi n *nh đã nén........................................................................... 122
4.7.3. Xm lí *nh thơng qua vi c phân đo[n *nh ............................................ 124
4.7.4. Tìm ki1m dBa trên sB tương tB........................................................... 126

4.7.5. T ng quát v cơ s d li u *nh .......................................................... 129
4.7.6. Th( hi n cơ s d li u *nh nhR mơ hình quan h ............................... 129
4.7.7. Th( hi n cơ s d li u *nh trên cây R ................................................ 132
4.7.8. K1t luHn v cơ s d li u *nh............................................................. 134
4.8. NhHn xét v d li u ña phương ti n.......................................................... 134
4.8.1. ð*m b*o QoS trong h th7ng truy n thông, t[i máy ch? và máy khách
.......................................................................................................................... 134
4.8.2. M4.9. K1t luHn ................................................................................................... 137
Hư ng d`n sm d ng tài li u theo chương trình khung................................................... 138
Tài li u tham kh*o ...................................................................................................... 142

4


Gi i thi u
Trong nhi u năm, nghiên cMu và phát tri(n ña phương ti n là c$n thi1t trong Mng
d ng truy n thơng và đ( th( hi n thơng tin đa phương ti n. Ngày càng nhi u d li u s7
ña phương ti n ñư@c th( hi n dư i d[ng hình *nh, video, âm thanh… địi hei các kĩ
thuHt lưu tr , tìm ki1m hi u qu* và m[nh. NgưRi ta có th( so sánh yêu c$u này v i yêu
c$u th( hi n d li u kí tB dư i d[ng tính tốn đư@c nh ng năm 70 c?a th1 k6 XX.
Do vHy phát tri(n v qu*n tr, d li u ña phương ti n là bình thưRng đ7i v i các t
chMc. Trư c h1t do nhu c$u thBc t1, ti1p theo là công ngh hi n t[i khơng đ? kh* năng
gi*i quy1t vCn ñ ñ7i v i d li u ña phương ti n. Ms7 hóa và tìm ki1m d li u đa phương ti n.
NgưRi ta thCy c$n bi1t công ngh hi n t[i c?a qu*n lí d li u đa phương ti n. ð$u
tiên là các đ:c tính c?a d li u ña phương ti n và các khía c[nh v thi1t k1 cho phép h
th7ng cơ s d li u ña phương ti n ñáp Mng các yêu c$u v d li u. ð7i v i tkng lo[i d
li u ña phương ti n, như văn b*n, hình *nh, âm thanh và video, c$n có kĩ thuHt ch6 s7
hóa riêng, Mng v i đ:c tính chính c?a d li u thơ. Cơng c tìm ki1m d li u đa phương

ti n c$n l< ñư@c câu hei ngưRi dùng, dBa trên mMc ñ< tương tB c?a m`u và d li u ñã
lưu tr . Vi c tìm ki1m và ch6 s7 hóa theo nvà khó khăn, do các khía c[nh rút tk d li u thơ thưRng đư@c th( hi n qua vecto nhi u
chi u, địi hei nhi u thRi gian xm lí.
Các kĩ thuHt và các cCu trúc d li u có vai trị liên quan đ1n hi u qu* tìm ki1m d
li u. Cơ s d li u ña phương ti n v i truy cHp tk xa, qua m[ng máy tính, theo mơ hình
khách/ ch?… sq ph*i xm lí các tình hu7ng liên quan đ1n truy n d li u, mã hóa d li u.
VHy ki1n trúc máy tính, vi c lưu tr đa phương ti n, h th7ng ñi u hành, h[ t$ng m[ng
c$n ñư@c quan tâm.
Trong h qu*n tr, cơ s d li u truy n th7ng, hi u năng liên quan đ1n tính hi u qu*,
theo thRi gian tr* lRi câu hei. Trong h th7ng ña phương ti n, hi u qu* cũng quan trVng,
nhưng hi u qu* đ7i v i tìm ki1m, đ7i v i đ7i tư@ng đã có và phát hi n ñ7i tư@ng ti m
\n, là có ý nghĩa. NgưRi ta ñ cHp ñi u này do vi c tìm ki1m ñó theo so sánh tương tB,
và các d li u cũng không cho phép so sánh kh p. Do vHy ñ< ño hi u qu* là c$n thi1t
ñ7i v i h qu*n tr, cơ s d li u ña phương ti n. Mli u, chu\n… cũng ñáng ñư@c quan tâm.

5


Chương I. T ng quan v cơ s

d

li u ña phương ti n

1.1 M ñ u
Các nghiên cMu và phát tri(n v ña phương ti n nhsm vào truy n thơng và th( hi n
d li u đa phương ti n, xác ñ,nh quy n tác gi*. H qu*n tr, cơ s d li u ña phương ti n
gi vai trò như h qu*n tr, truy n th7ng, khác là d li u phMc t[p và ña d[ng. ð( ñ*m

b*o tính hi u qu* truy cHp và tìm ki1m, h qu*n tr, c$n có kĩ thuHt tìm ki1m và ch6 s7
hóa khác.
VHy vi c ch6 s7 hóa và tìm ki1m ña phương ti n là m c ñích chính, trư c khi xem
xét các chMc năng c?a h qu*n tr,. Ph$n ñ$u sq th( hi n h th7ng ch6 s7 hóa và tìm ki1m
MIRS1 và m
Hình. M"t s# logo đa phương ti n

1.2 Khái ni m d li u ña phương ti n
C$n thi1t xác ñ,nh tk ñ$u mliên quan ñ1n h th7ng ña phương ti n.
1.1.1. Ki u d li u và ña phương ti n
ð nh nghĩa: Phương ti n2: phương ti n nh m ñ n các ki u thông tin hay ki u th
hi n thông tin, như d li u s", ch , hình $nh, âm thanh, video.
Có nhi u cách xác đ,nh phương ti n. Phân lo[i thơng thưRng dBa vào d[ng vHt lí và
m7i quan h phương ti n v i thRi gian. t đây xác đ,nh phương ti n khơng đ cHp y1u t7
thRi gian. ThRi gian cho phép xác ñ,nh phương ti n tĩnh v i phương ti n ñgian liên t c.
ð nh nghĩa: Phương ti n tĩnh3: phương ti n khơng có chi,u th-i gian, và n/i dung
và ý nghĩa c1a chúng không ph3 thu/c vào th-i gian th hi n.
Các phương ti n tĩnh gUm d li u s7, ch , đ< hVa, hình tĩnh. Hình tĩnh ñư@c xem
là s*n ph\m ñư@c vq, quét hay ch p bsng máy ch p *nh.

1
2
3

multimedia indexing and retrieval systems
media
static media


6


ð nh nghĩa: Phương ti n ñ/ng1: phương ti n có các chi,u th-i gian, v5i ý nghĩa
và tính chính xác tùy theo t"c ñ/ th hi n.
Phương ti n ñkho*ng đơn v, bên trong hay t7c ñ<. Chung h[n video có 25 khung trong mth( hi n l[i c$n theo cách t chMc trư c đó. Do các phương ti n này th( hi n l[i liên t c
theo t7c ñ< c7 ñ,nh, chúng ñư@c gVi là phương ti n liên t c. NgưRi ta cũng gVi chúng là
phương ti n ñung thRi, tMc chi1m thRi gian như nhau, b i quan h c7 ñ,nh gi a các ñơn
v, phương ti n và thRi gian.
ða phương ti n nhsm vào tHp các ki(u phương ti n sm d ng cùng nhau. Nó cũng
ng$m xác đ,nh có ki(u d li u khác s7, ch . Do vHy thuHt ng “ña phương ti n” cũng
nhsm ch6 tính chCt như tính tk.
ð nh nghĩa: D li u ña phương ti n2: d li u hư5ng ñ n th hi n máy ñ:c ñư;c
c1a các ki u phương ti n g/p.
Thơng tin đa phương ti n hư ng t i thơng tin đư@c truy n t*i nhR các ki(u phương
ti n gNgưRi ta cũng sm d ng thuHt ng ña phương ti n và phương ti n ñ( ch6 thBc th( tB tr,
trong MIRS, cho phép hei, tìm ki1m và th( hi n. ThuHt ng “đ7i tư@ng” khơng hồn
tồn chính xác như trong ti1p cHn hư ng ñ7i tư@ng.
1.1.2. Cơ s d li u và h qu n tr cơ s d li u
Trong tài li u v cơ s d li u, h th7ng cơ s d li u ñã phân bi t h qu*n tr, cơ s
d li u DBMS v i cơ s d li u DB3. Gi a nh ng vCn ñ v đa phương ti n này, đơi
khi l`n lð nh nghĩa: H qu$n tr cơ s? d li u4: phAn m,m cho phép mô t$, lưu tr và xC
lí các d li u m/t cách khoa h:c.
1.1.3. Tìm ki%m thơng tin tư li u văn b n
H th7ng tìm ki1m thơng tin tB đ

tài li u khoa hVc tk 1940. ChMc năng chính c?a h th7ng là lưu và qu*n lí s7 l n các tư
li u văn b*n theo cách tìm ki1m nhanh tư li u hi n ra cho câu hei ngưRi dùng.
ð nh nghĩa: H th"ng tìm thơng tin tD đ/ng (IR): h th"ng là lưu và qu$n lí s" l5n
các tư li u văn b$n theo cách tìm ki m nhanh tư li u hi n ra ñ"i v5i câu hKi ngư-i
dùng.
1.1.4. Tìm ki%m và ch* s+ hóa đa phương ti n
Vi c tìm ki1m trong DBMS dBa trên cCu trúc d li u cho phép so sánh kh p. IR
đư@c xem là h th7ng tìm ki1m theo văn b*n. Vi c tìm ki1m theo ntrưng phương ti n thBc t[i như màu sfc, hình dáng, thay vì ghi chú, diyn gi*i văn b*n
c?a phương ti n.
1
2
3
4
5

dynamic media
multimedia data
DBMS Database Management Systems, DB Database
DBMS
information retrieval

7


ð nh nghĩa: Tìm ki m theo theo n/i dung1: tìm ki m dDa trên đNc trưng thDc tOi
như màu sPc, hình dáng… c1a phương ti n.
Tìm ki1m theo ncâu hei và tHp các m c tin c?a cơ s d li u. t h th7ng đa phương ti n, MIRS hư ng
đ1n tìm ki1m theo c* (i) DBMS; (ii) IR; (iii) theo n

1.1.5. Trích đ/c trưng, th hi n n1i dung và ch* s+ hóa
ð nh nghĩa: ðNc trưng là đi m nRi bSt, giúp phân bi t cá th ñã cho v5i các cá
th khác mà ta có th đem ra so sánh.
Trong MIRS, trích đ:c trưng hay th( hi n ndung trong m c tin, là vi c quan trVng. Q trình trích đ:c trưng có th( thBc hi n tB
đtrưng” cũng dùng cho vi c ch6 s7 hóa.
Do vHy, khi sm d ng “ch6 s7”, ngưRi ta nhsm ñ1n cCu trúc d li u hay t chMc các
đ:c trưng đư@c rút ra đ( tìm hi u qu*.

1.3. ð c trưng c a các ñ i tư!ng ña phương ti n
ð cHp nhu c$u v h th7ng ch6 s7 hóa và tìm ki1m đa phương ti n, ngưRi ta thCy
ba vi c sau ñây cho thCy MIRS có ý nghĩa:
1. Ngày càng nhi u d li u ña phương ti n ñư@c thu thHp và lưu tr ;
2. D li u ña phương ti n khác v i d li u truy n th7ng
và ý nghĩa khác;

tính chCt riêng, có u c$u

3. Cho dù các kĩ thuHt IR có th( dùng đ( tìm ki1m đa phương ti n, nhưng mkhơng đ*m b*o tính hi u qu* đ7i v i xm lí d li u ña phương ti n.
ð nh nghĩa: ð"i tư;ng là m/t vSt, khái ni m hay thDc th .
1.3.1. S3 gia tăng d li u ña phương ti n và các tính ch5t c6a chúng
Khơng th( khơng đ7i m:t v i thơng tin đa phương ti n. NgưRi ta khơng th( tránh
h1t các d li u âm thanh và tranh, *nh. Xu hư ng sm d ng d li u ña phương ti n làm
tăng công ngh lưu tr s7. Dy dàng ñáp Mng nhu c$u ña phương ti n nhe, nhưng đ7i v i
u c$u tồn di n, địi hei c* h th7ng t chMc d li u, tìm ki1m nhanh.

Hình. S& d ng khái ni m đa phương ti n: máy bay vư-t ngư.ng âm thanh


NgưRi ta không ch6 ch,u sMc ép v kh7i lư@ng d li u, mà cịn các ki(u d li u đa
1

ContentKbased retrieval

8


d[ng và các tính chCt khác v i d li u s7, ch truy n th7ng. Các tính chCt chính c?a d
li u ña phương ti n ñư@c li t kê:


D li u đa phương ti n, đ:c bi t d li u âm thanh, video là nh ng d li u ñư@c nén
v i t6 l cao, kho*ng 1 Gb ch6 chMc đư@c kho*ng 10 phút video;



D li u âm thanh và video có chi u thRi gian, địi hei th( hi n theo t7c ñ< c7 ñ,nh ñ(
ñ[t hi u qu* dB đ,nh;



Các d li u âm thanh, hình *nh và video s7 đư@c th( hi n theo mriêng, do vHy khó tB đnghĩa c?a chúng;



Nhi u Mng d ng đa phương ti n c$n th( hi n ñUng thRi c?a nhi u d[ng phương ti n
theo cách tương Mng v i khơng gian và thRi gian;




Ý nghĩa c?a d li u ña phương ti n thưRng mR và ch? quan, không ti n xác đ,nh rõ;



D li u đa phương ti n mang nhi u thơng tin, địi hei nhi u tham s7 th( hi n ndung.

Hình. Hình đ"ng t0o b i các khung

1.3.2. H qu n tr cơ s d li u và vai trị qu n lí d li u ña phương ti n
ð nh nghĩa: H qu$n tr cơ s? d li , DBMS, là phAn m,m cho phép mơ t$, lưu
tr và xC lí d li u m/t cách khoa h:c.
Các DBMS truy n th7ng phù h@p v i d li u có cCu trúc. Mơ hình d li u quan h
là mơ hình thơng d ng tk 1980 đ1n nay. D li u theo mơ hình quan h ñư@c t chMc
trong các b*ng quan h , có thunhưng ngơn ng đ[i s7 quan h mà ñ[i di n là SQL ñư@c sm d ng nhi u.
Thí d
create table STUDENT (
stu# integer,
name char (20),
address char (100) );
và câu b sung d li u
insert into STUDENT values (10, "Lew, Tom", "2 Main St.,
Churchill, Australia");
B2ng. D li u thí d

9



Tìm ki1m d li u
select name
from STUDENT
where stu# = 32
Thu32 bit. ð( tr@ giúp các bi1n ñ< dài thay ñ i, ngưRi ta ñưa ra khái ni m ñ7i tư@ng nh,
phân l n BLOB1.
ð nh nghĩa: BLOB2: BLOB là xâu bit l5n có đ/ dài thay đRi.
Thí d c$n lưu *nh c?a sinh viên
create table STUDENT (
stu# integer,
name char (20),
address char (100)
picture BLOB);
BLOB ch6 là xâu bit, nên DBMS quan h không bi1t nnó, mà ch6 xem như kh7i d li u.
DBMS hư ng ñ7i tư@ng k1t h@p nhi u khía c[nh c?a qu*n tr, d li u, như lưu tr
và tìm ki1m, v i ti1p cHn hư ng đ7i tư@ng, v i khía c[nh đóng gói, thka k1, xác ñ,nh
ñ7i tư@ng. NgưRi ta cũng tB hei li u t7t khơng n1u k1t h@p mơ hình quan h v i mơ
hình hư ng đ7i tư@ng, trong khi chưa có mơ hình d li u đa phương ti n. Các ñ7i tư@ng
ña phương ti n ñư@c nhHn thMc theo ti1p cHn hư ng ñ7i tư@ng sq phù h@p và dy th( hi n
l[i hơn. H th7ng quan h ñ7i tư@ng cho phép (i) xác ñ,nh ñ7i tư@ng theo nghĩa hư ng
đ7i tư@ng; (ii) sm d ng chMc năng xm lí d li u quan h đã có.
Thí d : xác ñ,nh ki(u d li u hình *nh:
create type IMAGE (
private
size integer,
resolution integer,

content float[],
public
...
);
Và sm d ng nó trong
create table STUDENT (
stu# integer,
name char (20),
1
2

binary large object
binary large object

10


address char (100)
picture IMAGE);
Khác nhau chính gi a BLOB và các ñ7i tư@ng là các ñ7i tư@ng ñư@c xác ñ,nh phù
h@p, v i thuni m v BLOB và các ñ7i tư@ng cũng ñánh dCu mti n, nhưng BLOB ch6 dùng ñ( lưu tr d li u, trong lúc các đ7i tư@ng c$n nhi u thutính đ( th( hi n nti n là:


Cơng c trích rút nñ



CCu trúc ch6 s7 đ( qu*n lí các vecto đ:c trưng đa phương ti n;



ð< đo tính tương tB, trong tìm ki1m thay cho so sánh kh p;



H th7ng lưu tr phân tán ñ7i v i d li u l n và h[ t$ng truy n thơng đ7i v i
u c$u thRi gian thBc;



Giao di n ngưRi dùng, thi1t k1 cho ki(u d li u ña phương ti n khác nhau và cho
phép th( hi n đa d[ng.

1.3.3. H th+ng tìm ki%m thơng tin ñ+i v:i d li u ña phương ti n
ð nh nghĩa: Cơng c3 tìm ki m là m/t phAn m,m nh m cho phép ngư-i dùng tìm
ki m và đ:c các thơng tin có trong phAn m,m đó, trên m/t trang Web, hay trên
toàn b/ Internet.
H th7ng IR dùng cho d li u văn b*n. Các kĩ thuHt sm d ng trong IR quan trVng
nhR (i) nhi u tư li u văn b*n trong t chMc; (ii) văn b*n có th( minh hVa cho phương
ti n khác, như âm thanh, hình *nh, video. NgưRi ta có th( sm d ng kĩ thuHt IR ñ7i v i d
li u ña phương ti n. Tuy nhiên chúng có vài h[n ch1:


Minh hVa, ghi chú cho phương ti n khác thưRng thBc hi n th? cơng, t7n thRi
gian;




Minh hVa bsng văn b*n khơng th( đ? và ch? quan;



Các kĩ thuHt IR ch6 cho phép hei theo văn b*n;



Mt[p, không dùng văn b*n mà mô t* h1t.

1.3.4. Ti%p c;n tích h

Dù h th7ng tìm ki1m thơng tin IR có ích trong khung c*nh xm lí d li u ña phương
ti n, ñ7i v i d li u có cCu trúc, ngưRi ta c$n kĩ thuHt m i đ( qu*n lí các tính chCt riêng
c?a d li u đa phương ti n.
Ngồi các kĩ thuHt xm lí d li u c?a DBMS truy n th7ng đ7i v i d li u có cCu trúc,
vi c tích h@p thêm các kĩ thuHt cho d li u hình *nh, âm thanh, video sq cho phép h
th7ng tìm ki1m và ch6 s7 hóa đa phương ti n MIRS.
ð nh nghĩa: Ch\ s" là h th"ng dùng đ tìm ki m thông tin nhanh và d] hơn.
11


1.3.5. T=ng quan v> h th+ng tìm ki%m và ch* s+ hóa đa phương ti n
Trong h th7ng MIRS, m c tin trong cơ s d li u ñư@c ti n xm lí đ( rút các đ:c
trưng và nCác câu hei ngưRi dùng ñư@c trích ñ:c trưng, so sánh tương tB v i ủ:c trng ủó ủ@c
ch6 s7.


Câu hỏi
Xử lí v trích đặc trng
Đặc trng
câu hỏi

các mục tin
Xử lí v chỉ số hóa
các mục tin đợc
chỉ số hóa

So sánh
tơng tự

Tìm các mục tin t−¬ng tù

Hình. Mơ hình tìm ki6m thơng tin t ng qt

Cịn mcác m c tin phương ti n; (iii) ñ< ño tương tB, v i khung nhìn ña d[ng c?a ngưRi dùng;
(iv) đánh giá hi u qu* tìm ki1m.
ð nh nghĩa: Th giác là kh$ năng nhSn và di]n gi$i thơng tin t^ ánh sáng đi vào
mPt. Vi c tri giác này cịn đư;c g:i là th lDc, sD nhìn.

Hình. Giác quan c7a con ngư8i

1.4. C$u trúc lưu tr

cơ s d li u ña phương ti n

Khi ñ cHp v cCu trúc d li u ña phương ti n, m

li u đa phương ti n ln mang khía c[nh (i) khơng gian và (ii) thRi gian. Khơng gian
đ7i v i d li u ña phương ti n thưRng nhi u chi u.
ð nh nghĩa: Cau trúc d li u là cách lưu tr và tR chbc d li u c3 th trong máy
tính đ các d li u đư;c sC d3ng hi u qu$.
NgưRi ta quan tâm vi c nhHn thMc các d li u ña phương ti n, cách hình thMc hố
chúng. Các khái ni m đa phương ti n c$n đư@c áp phương pháp hình thMc đ( có th(
phát tri(n Mng d ng. H$u h1t các d li u n chi u ñ u dùng cách th( hi n phân rã theo
cây thông tin.
12


ð( hình thMc hố, trku tương hố d li u ña phương ti n, ngưRi ta c$n ñ1n các kĩ
thuHt như cây kKchi u, cây tM phân theo ñi(m, cây tM phân, cây R. ðUng thRi cịn ph*i
quan tâm đ1n các phương pháp cài ñ:t các kĩ thuHt này.
ð nh nghĩa: Không gian, th-i gian: Không gian là m? r/ng ba chi,u, khơng gi5i
hOn, trong đó các đ"i tư;ng và các sD ki n x$y ra và có v trí và hư5ng tương ñ"i.
Th-i gian là m/t phAn c1a h th"ng ño, dùng cho các sD ki n tuAn tD, ñ so sánh
th-i lư;ng c1a các sD ki n và kho$ng th-i gian gi a chúng, và đ lư;ng hóa t\ l
thay ñRi chuy n ñ/ng c1a các ñ"i tư;ng.
1.4.1. Gi:i thi u
D[ng t chMc d li u đ,a lí thơng d ng như GIS, th( hi n
đi(m. Mgi đi(m khơng gian đư@c th( hi n qua cCu trúc d li u.

d[ng b*n đU, tMc các

D li u đ,a lí ña d[ng, có th( thCy như ñi(m, ñưRng thung, các ñưRng cong, các
hình, các b*n ñU, các d li u gfn v i b*n đU theo các t$ng đ,a lí khác nhau. Các thơng
tin này thay đ i theo thRi gian...
1.4.2. Cây kBD
Sm d ng cây kKd ñ( lưu tr các ñi(m c?a b*n ñU.

ð nh nghĩa: Cây là cau trúc d li u thông d3ng, th hi n cau trúc d li u phân
cap v5i tSp các nút liên k t nhau. V, tốn h:c, cây là đd th khơng xoay vịng c1a
các nút; mfi nút có các nút con, và thu/c v, m/t nút cha.
1.4.2.1. C u trúc nút

Nút c?a cây kKd có cCu trúc
Ki(u d li u nút = record
INFO: ki(u thông tin;
XVAL: real;
YVA L: real;
LLINK: ↑ ki(u nút;
RLINK: ↑ ki(u nút;
End;
Các m7i n7i RLINK và LLINK cho phép tre t i các nút con ph*i và trái c?a mnút.
Gi* sm T là tre ñ1n g7c cây kKd. N1u N là nút cây thì ngưRi ta xác ñ,nh thêm mMc1
c?a nút N: MMc (N) = 0 n1u N là g7c cây; mMc (P) + 1 khi N là nút con c?a nút cha P.
ð nh nghĩa: Cây 2gd là cây nh phân tho$ mãn (i) Khi N là nút cây mbc chin thì
nút cây con trái M có M.XVAL < N.XVAL và nút L bên ph$i có L.XVAL ≥
N.XVAL; (ii) Khi N là nút cây mbc lm thì nút cây con trái M có M.YVAL <
N.YVAL và nút L bên ph$i có L.YVAL ≥ N.YVAL.

1

level

13


XVAL = 10, YVAL = 20


N

N tại mức chẵn

L

M

XVAL = 8 < N.XVAL

M tại mức lẻ
M.YVAL = 12

XVAL = 12 >= N.XVAL
L2

M2

YVAL = 8 < M.YVAL

YVAL = 14 >= M.YVAL

Hình. Qui ñ:nh các giá tr: X, Y c7a các nút con

1.4.2.2. B sung và tìm ki m trên cây 2 d

u c$u thêm nút N vào cây đã có. Cây này có tre T, ng$m hi(u con tre tre đ1n nút
T. NgưRi ta thCy có các kh* năng:
1. N1u N ≡ T thì hi(n nhiên đã có nút N trên cây;

2. Ngư@c l[i, ngưRi ta sang trái n1u N.XVAL < T.XVAL, do nút T là nút ch‘n (0);
và sang ph*i n1u N.XVAL khơng nhe hơn;
3. T[i nút vka đ1n P, n1u P ≡ N thì đã xong, ngư@c l[i do P là nút l’, nên căn cM
vào giá tr, YVAL ñ( quy1t ñ,nh sang trái hay ph*i. N1u N.YVAl < p.YVAL.
ngưRi ta sang trái; ngư@c l[i sang ph*i.
4. Ti1p t c tk bư c 2, cho ñ1n khi dkng hay ñ1n nút là thì b sung nút N.
Vi c tìm ki1m nút N v i giá tr, XVAL và YVAL đư@c thBc hi n như dị tìm đ( b
sung nút m i.
Thí d :
NgưRi ta có b*n đU v i các đi(m Hà n38), Hà đơng (54, 40), và Hồ bình (4, 4). N1u xuCt phát tk Hà nđư@c cây thơng tin.
DBa trên cây 2Kd đã có, ngưRi ta có th( ti1n hành (i) tìm ki1m; (ii) b sung nỳt m i
theo cỏch trờn.
H nội
(19, 45)

Ho bình

Hải phòng
(4, 4)

(40, 50)

H tây

(38, 38)

H đông
(54, 40)


Hỡnh. Cỏc nỳt trờn cây 2Bd

1.4.2.3. Xố nút trên cây 2 d

VCn đ đ:t ra là: gi* sm cây c$n xố nút có tre T; nút c$n xố có to[ đ< (x, y).
14


1. Bư c đ$u tiên c$n tìm ra nút (x, y), tho* mãn N.XVAL = x và N.YVAl = y. Bư c
này khung đ,nh có nút N c$n xố, đư@c thBc hi n theo cách ñã nêu trong m c trư c;
2. N1u nút N là nút lá, ngưRi ta hu“ nút N bsng cách thay ñ i con tre c?a các nút cha
tre ñ1n nút con N. Các tre c?a nút cha sq là NIL;
3. N1u N là nút trung gian, cơng vi c phMc t[p hơn.
P

R

N

N

R
P

Hình. ChCn nút R thay th6 N

i.

Khi N.LLINK ≠ NIL, tMc N có cây con trái Tl, và N.RLINK ≠ NIL, tMc có

cây con ph*i Tr: c$n tìm nút R trong Tl hay Tr đ( thay th1 N, và R b, xố khei
cây cây {Tl, Tr}. Do vHy ngưRi ta thBc hi n ba bư c nhe sau:



ii.

Bư c 1. Tìm nút R ñ( thay th1 {Tl, Tr};
Bư c 2. Thay trưRng n7i LLINK, RLINK khơng rgng c?a N vào các
trưRng nói c?a R;
• Bư c 3. Xố R ra khei {Tl, Tr};
• Q trình này sq k1t thúc do có Ti ∈ {Tl, Tr} v i mMc cao hơn;
VCn ñ ñ:t ra là bư c thM nhCt tìm R thay th1 {Tl, Tr} c$n có quan h khơng
gian đ7i v i tCt c* các nút P trong {Tl, Tr}, mà N sinh ra, cho đ1n nút P này.




N1u P thuN1u P là tây bfc c?a N thì P là tây bfc c?a R;
ði u này có nghĩa R thay th có tính chCt
a. Mgi M trong Tl:M.XVAL < R.XVAL n1u N mMc ch‘n; M.YVAL <
R.YVAL n1u N mMc l’;
N ®ang ở mức chẵn

N

R

Cây con trái Tl

M

Hỡnh. V: trớ nỳt thay th6 R khi N t0i mGc chHn

b.
iii.

Mgi M trong Tr tho* mãn: M.XVAL ≥ R.XVAL n1u N mMc ch‘n;
ngư@c l[i khi N mMc l’.

Khi Tr ≠ NIL, xét trưRng h@p mMc ch‘n l’ c?a N:
15




iv.

v.

vi.

N1u N mMc ch‘n thì bCt kì nút nào trong Tr có giá tr, XVAL nhe nhCt là
nút R thay th1. Chung h[n nút Hà n• N1u N mMc l’, nút thay th1 trong Tr có YVAL bé nhCt.
Nhìn chung ngưRi ta thBc hi n “tìm nút thay th1 trong cây con trái ch6 v i
m• N1u N mMc ch‘n, nút phù h@p trong Tl là nút có XVAL l n nhCt;
• N1u N mMc l’, ngưRi ta chVn nút có YVAL đ[t cBc đ[i;
VCn đ đ:t ra khi trong Tl có nhi u nút đ[t giá tr, cBc đ[i, t[i XVAL hay

YVAL, thì đi u (2) trong ñ,nh nghĩa cây 2Kd sq b, vi ph[m khi áp d ng ba
bư c thBc hi n trên. Do vHy khi c$n xố nút N trung gian, nên tìm nút thay
th1 R trên cây con ph*i, b i vì vi c tác ñb n v ng cCu trúc cây;
Khi cây con ph*i Tr = NIL, ngưRi ta chVn R thay th1 trong Tl v i giá tr, x
nhe nhCt trong Tl khi N là nút t[i mMc ch‘n, hay chVn R thay th1 có y nhe
nhCt khi N mMc l’; và trong ba bư c thBc hi n nhe trên, thay

Bư c 2. Thay tCt c* trưRng không rgng c?a N bsng các trưRng c?a R. ð:t
N.RLINK = N.LLINK, N.LLINK = NIL;
N

N
NIL

NIL

Hình. CIu trúc nút

1.4.2.4. Câu h#i v$ ph&m vi trong c u trúc cây 2 d

VCn đ là tìm các nút (x, y) trong ph[m vi bán kính r tk (x0, y0). Sq có vịng trịn
bán kính r v i tâm là đi(m (x0, y0).
(x, y)

(19, 45)

Hình. Mi n cJn tìm khi có nút (19, 45)

Liên quan đ1n câu hei này, ngưRi ta thCy mgi nút N có mi n RN v i bán kinh r.

Vòng tròn t[o ra tk (x0, y0) khơng giao v i vịng trịn RN thì khơng xét cây con c?a N.
Khái ni m v mi n liên quan đ1n m1. Xét nút Hà n2. Nút H*i phòng cho bi1t mi n H*i phòng = {(x, y) | x ≥ 19};
16


3. Nút Hà tây cho bi1t mi n H*i tây = {(x, y) | x ≥ 19, y < 50};
4. Nút Hà đơng cho bi1t mi n Hà đơng = {(x, y) | x ≥ 38, y < 50};
5. Nút Hồ bình cho bi1t mi n Hồ bình = {(x, y) | x < 19}.
Trơc Y

(19, 45)

Trơc X

Hình. Xác đ:nh các biên

Nhìn chung mgi nút N có nhi u nhCt 4 ràng buvùng:
1. Xác ñ,nh biên dư i v X, XLB1, có d[ng x ≥ c1;
2. Xác đ,nh biên trên v X, XUB2, có d[ng x< c2;
3. Xác đ,nh biên dư i v Y, YLB3, có d[ng y ≥ c3;
4. Xác ñ,nh biên trên v Y, YUB4, có d[ng y< c4.
5. Do vHy c$n m rKi(u nút m i = record
INFO: ki(u thông tin;
XVAL, YVAL: real;
XLB, XUB, YLB, YUB: real ∪ {K∞, +∞};
LLINK, RLLINK: ↑ ki(u nút m i;

End;
Vi c b sung các nút c$n thBc hi n:
1. G7c cây nhHn XLB: = K∞, YLB: = K∞ và XUB: = +∞, YUB: = +∞;
2. N1u nút N có cha P và P t[i mMc ch‘n, thì các giá tr, ph[m vi c?a N đư@c xác đ,nh
theo P:


N.XLB = P.XLB n1u N là con trái c?a P; ngư@c l[i N là con ph*i, N.XLB =
P.XVAL;
• N.XUB = P.XVAL n1u N là con trái c?a P; ngư@c l[i N là con ph*i, N.XLB =
P.XUB;
• N.YLB = P. YLB;
• N.YUB = P. YUB;
3. N1u N có cha là P và mMc P là l’, thì:

1
2
3
4

N.YLB = P.YLB n1u N là con trái c?a P; ngư@c l[i N là con ph*i, N.YLB =

XLB lower bound on x
XUB upper bound on x
YLB lower bound on y
YUB upper bound on y

17



P.YVAL;
N.YUB = P.YVAL n1u N là con trái c?a P; ngư@c l[i N là con ph*i, N.YLB =
P.YUB;
N.XLB = P. XLB;
N.XUB = P. XUB;





ð7i v i vi c tìm ki1m vùng trên cây, ngưRi ta có nhHn xét:



Khi g7c T khơng giao, thì xét cây con trái, cây con ph*i;
V i cây con khơng giao, có th( lo[i be trong quá trình tìm ki1m.

1.4.2.5. Cây k d t ng quát

Cây kKd t ng quát có k ≥ 2. Cây 2Kd ñư@c dùng ñ( th( hi n các nút trong không
gian 2 chi u. Cây kKd v i k ≥ 2 ñư@c dùng cho không gian k chi u, chung h[n các ñi(m
(x, y, z) sm d ng cây 3Kd. ð7i v i cây t ng quát, không th( sm d ng XVAL, YVAL ñ( tre
ñ1n hai cây con, mà dùng vecto VAL k chi u, Mng v i b< các con tre tre ñ1n các cây
con.
ð nh nghĩa: Cây T có cau trúc nút cây kgd n u đ"i v5i nút N trên cây T, thì:
• Nút N có mbc i. Mbc này đư;c tính i = “mbc thDc sD” mod k;
• nút M trên cây con trái c1a N, M.VAL [i] < N. VAL [i];
• nút P trên cây con ph$i c1a N, P. VAL[i] ≥ N.VAL [i].
Các thuHt tốn đã sm d ng cho cây 2Kd đư@c phát tri(n dùng cho cây kKd. Khi k = 1,
ngưRi ta làm vi c v i cây nh, phân quen thu

1.4.3. Cây tD phân
Cây tM phân1, hay cây b7n ph$n, ñư@c dùng đ( th( hi n đi(m khơng gian 2 chi u.
Cây 2Kd cũng có tác d ng như vHy. Tuy nhiên ñi(m khác bi t là cây tM phân chia mi n
thành 4 ph$n, trong khi cây 2Kd cho phép tách mi n ra hai ph$n.
Trôc Y

Trôc Y

(N.XVAL, N.YVAL)

(N.XVAL, N.YVAL)
Trôc X

Khi N tại mức lẻ

Trục X

Khi N tại mức chẵn

Hỡnh. Vai trò c7a tr c ngang và dCc khi chia các mi n

B7n ph$n Mng v i b7n cây con trên cây tM phân ñư@c gVi tên theo hư ng ñ7i v i
nút N: ñông bfc NE, tây bfc NW, tây nam SW, và đơng nam SE2.
Ki(u d li u ñư@c mô t* là:
Ki(u nút tM phân = record
INFO: ki(u thông tin;
XVAL: real;

1
2


point quadtree
north east, north west, south west, south east

18


YVAL: real;
NW, SW, NE, SE: ↑ ki(u nút tM phân;
End;
PhÇn tây bắc
NW

Phần đông bắc
NE

(N.XVAL, N.YVAL)
Phần đông nam
SE

Phần tây nam
SW

Hỡnh. B#n phJn so v i m"t nút

1.4.3.1. Tìm ki m thơng tin và b sung nút trên cây t, phân

Khi có các giá tr, đi(m khơng gian, như trong thí d trư c v i b*n ñU các ñi(m Hà
nngưRi ta có th( xây dBng ñư@c cây bsng cách phát tri(n d$n các nút. Chung h[n tk nút

Hà nnNót thø ba
Nót thø hai
N

Cấu trúc một nút trên
cây tứ phân

Nút thứ nhất

Hỡnh. Nguyờn tTc mô t2 nút cây tG phân

Vi c xây dBng cây ñư@c ti1n hành theo:
1. Cây rgng, ngưRi ta xác ñ,nh nút ñ$u là Hà n2. Chia ra 4 ph$n khụng gian;
(40, 50)

H nội
N
W

S
W

N
E

S
E


(19, 45)
Hải phòng
N
W

S
W

N
E

S
E

Hỡnh. Thêm nút Hà n"i và xác đ:nh đư-c v: trí tương đ#i c7a H2i phịng so v i Hà n"i

3. B sung nút Hà tây. Do ph$n này chưa có nút nào, con tre tk nút Hà ntrBc ti1p ñ1n nút Hà tây;
4. V i nút Hà ñông: do ñã có nút Hà tây t[i SE c?a nút Hà nthCy chính nút Hà tây cho phép tách khơng gian ra 4 ph$n, và nút Hà đơng là
NE c?a nút Hà tây;
19


5. Vi c b sung nút Hồ bình đơn gi*n.
H nội
N
W


S
W

N
E

S
E

Hải phòng
N
W

S
W

N
E

H tây
S
E

N
W

Ho bình
N
W


S
W

N
E

S
W

N
E

S
E

H đông
S
E

N
W

S
W

N
E

S
E


Hỡnh. Cỏc nỳt cõy tG phõn

Nhỡn chung, trong trưRng h@p xCu nhCt, n nút t[o nên ñ< cao nK1 mMc. Lưu ý rsng
thRi gian tìm ki1m nút, b sung nút đư@c bi(u diyn tuy1n tính theo s7 nút n.
1.4.3.2. Xoá m-t nút trên cây t, phân

Khi nút N c$n xố là nút lá thì cơng vi c ñơn gi*n. Nhưng khi N là nút trung gian,
vi c tìm nút thay th1 rCt phMc t[p, do:


Mgi nút gfn v i mi n, vùng c?a b*n đU, có cách xác ñ,nh khác cây 2Kd. Trong
cây 2Kd, ngưRi ta ñã dùng các ràng bu• Trong cây tM phân, mô t* ki(u d li u là
Ki(u nút tM phân = record
INFO: ki(u thông tin;
XVAL, YVAl: real;
XLB, YLB, XUB, YUB: real ∪ {K∞, +∞}
NW, SW, NE, SE: ↑ ki(u nút tM phân;
End;

Vi c xoá nút c$n lưu ý ñ1n vi c b sung nút. Vi c b sung mT đư@c thBc hi n:
1. N1u N là g7c cây T, thì N.XLB = K∞, N.YLB = K∞, N.XUB = +∞, N.YUB
= +∞;
2. N1u P là nút cha c?a con n, thì vi c gán giá tr, theo tham chi1u ñ1n b*ng
sau, tuỳ theo v, trí tương đ7i c?a con N đ7i v i P. Trong b*ng ngưRi ta sm
d ng kí hi u ñ< rhình bao h = YUB – YLB.
TrưRng h@p


N.XLB

N.XUB

N.YLB

N.YUB

N là con tây bfc

P.XLB

P.XLB + w / 2

P.YLB + h / 2

P.YUB

N là con tây nam

P.XLB

P.XLB + w / 2

P.YLB

P.YLB + h / 2

N là con đơng bfc


P.XLB + w / 2

P.XUB

P.YLB + h / 2

P.YUB

N là con đơng nam

P.XLB + w / 2

P.XUB

P.YLB

P.YLB + h / 2

Hình. B2ng tra cGu giá tr: cVn trên/ dư i cho các nút con

Trong quá trình tìm nút R thay th1 N trong s7 các cây con, đ( xố N, ngưRi ta nhHn
20


thCy trưRng h@p xCu nhCt là ph*i t[o l[i mcông sMc t[o l[i các nút con c?a N.
V i cCu trúc d li u cây tM phân MX, ngưRi ta có th( thBc hi n vi c xố mdàng hơn.
1.4.3.3. Câu h#i v$ ph&m vi trên cây t, phân


Vi c hei d li u trên cây tM phân đư@c thBc hi n qua vi c tìm d li u trên cây, v i
qui trình như đ7i v i cây 2Kd.
Có th( th( hi n vi c hei d li u này qua chương trình gi* lHp như sau:
Proc Mi n (T: ki(u d li u nút tM phân, C: hình trịn);
N1u mi n (T) ∩ C = rgng thì dkng;
Ngư@c l[i:
N1u (T.XVAL, T.YVAL) ∈ C thì in (T.XVAL, T.YVAL);
Ngư@c l[i
Mi n (T, NW, C);
Mi n (T, SE, C);
Mi n (T, NE, C);
Mi n (T, SW, C);
End Proc;
1.4.4. Cây tD phân MX
1.4.4.1. Gi/i thi0u

Trong hai cCu trúc d li u cây vka gi i thi u, là cây kKd và cây tM phân, ngưRi ta
thCy hình dáng c?a cây l thusung các nút. Do vHy đơi khi cây có hình d[ng tB do, và khơng cân đ7i, khơng ti n cho
vi c t chMc d li u cũng như tìm ki1m d li u trên cây.
Vi c chia mi n v i cCu trúc cây trên ñã tuân theo s7 ch‘n mi n, tMc chia mthành 2 mi n, thành 4 mi n. Tuy nhiên, ngưRi ta thCy tuỳ theo v, trí c?a nút N, có th(
chia mi n thành s7 l’ mi n con. ðó là ti1p cHn c?a cây tM phân MX.
M c đích sm d ng cây tM phân MX là:



ð*m b*o hình dáng cây, hay đ< cao, khơng l thucũng như thM tB b sung, phát tri(n cây;

ð*m b*o xoá và tìm ki1m d li u hi u qu* hơn.
NgưRi ta làm vi c v i cây tM phân MX theo:
1. Gi* sm b*n ñU ñã ñư@c chia thành lư i 2k X 2k, v i k là s7 nguyên. NgưRi dùng
tB do chVn k ñ( ti n l@i cho hV rUi sau này sq c7 ñ,nh giá tr, k;
2. Cây có cCu trúc nút như cây tM phân, khác
k

chg g7c cây mang các giá tr,

k

3. XLB = 0; XUB = 2 ; YLB = 0; YUB = 2 ;
4. Chia mi n t[i gi a mi n: n1u N là nút thì 4 nút con c?a N có thơng s7, trong đó
w = N.XUB – N.XLB. đây ngưRi ta khơng phân bi t đ< rTrưRng h@p

XLB

XUB

YLB

YUB

N là con tây bfc

N.XLB

N.XLB + w / 2


N.YLB + w/ 2

N.YLB + w
21


N là con tây nam

N.XLB

N.XLB + w / 2

N.YLB

N.YLB + w / 2

N là con đơng bfc

N.XLB + w / 2

N.XLB + w

N.YLB + w/ 2

N.YLB + w

N là con ñông nam

N.XLB + w / 2


N.XLB + w

N.YLB

N.YLB + w / 2

Hình. B2ng tra cGu giá tr: cVn trên/ dư i cho các nút con

MiỊn 1 x 1
(x, y)
Hình. Mi n 1 x 1

1.4.4.2. Tìm ki m và b sung trên cây t, phân MX

Nguyên tfc tìm ki1m d li u và b sung nút cây ñư@c thBc hi n theo nguyên tfc:
mgi ñi(m (x, y) trên cây th( hi n mi n 1 x 1, có góc trái dư i là (x, y). Mgi ñi(m ñư@c
b sung vào nút ñư@c kèm theo mi n 1 x 1 Mng v i đi(m đó.
Thí d b sung các đi(m A, B, C, và D. To[ ñ< c?a chúng: A (1, 3), B (3, 3), C (3,
1), và D (3, 0.5).
ð$u tiên, b sung A vào to[ đ< (1, 3).





G7c cây th( hi n c* vùng; A thuDo vHy g7c cây con NW Mng v i mi m 2 x 2, v i góc tráo thCp là ñi(m (0, 2);
A thuA ñư@c b sung vào mMc 2 c?a cây, tMc là mMc k. Nhìn chung các đi(m ln
đư@c b sung vào l p k c?a cây;

Gèc
(1,3)

3

3

2

N
W

2

1

(0, 0)

MiÒn 2 x 2

(2k, 2k)

Phần NW

cây con NW
N
W

1


0

1

2

3

ban đầu không gian đợc chia th nh 4 phần

N
E

A
0
1
2
3
có thêm A (1,3), sinh ra c©y con NW

Hình. Hình dáng mi n cJn phân chia khi bTt ñJu b sung nút ñJu tiên

ThM hai, b sung nút B (3, 3).


Xét trên cây vka đư@c t[o sau khi b sung nút A: tk nút g7c ngưRi ta thCy B
trí NE c?a g7c, c$n sinh ra nhánh NE;
G7c cây con NE t[o ra mi n 2 x 2 v i góc trái thCp là đi(m to[ đ< (2, 2);
Nút B thu




22

v,


Gốc

Miền 2 x 2
(1,3)

(1,3)

(3,3)

3

N
W

(3,3)

N
E

3
Phần NE của gốc


2

2

1

1

cây con NW
(2,2)

N
W

N
E

B
0

1

2

3

0

1


2

3

4

Hỡnh. Cỏc mi n gTn v i các nút và cách chia các mi n khi có các nút m i

ThM ba, b sung nút C (3, 1). Khi đã có hai mi n NW và NE c?a g7c, ngưRi ta thCy
C thu


Do chưa có cây con SE, c$n t[o cây con SE c?a g7c;
Trong mi n m i này, đi(m C thuGèc
(1,3)

N
W

(3,3)

N
E

S
E

3

c©y con SE

2

(2,2)

N
W

1

N
E

(3,1)
C
0

1

2

3

4

Hình. B sung nút C khi đã có A, B chia khơng gian ra 4 phJn m"t cách tương đ#i

ThM tư, nút D (3, 0.5) có v, trí SE c?a g7c, thu



Cây con SE c?a g7c đã có;
Nút D nsm t[i mi n SE c?a cây con này.
Gèc
N
W
c©y con NE
N
W

N
E

S
E

c©y con NW

N
E

N
W

A

c©y con SE

N

E

N
W

B

C

N
E

S
E

D

Hình. K6t qu2 cu#i cùng trên cây tG phân MX khi b sung A, B, C và D

1.4.4.3. Xoá m-t nút trên cây t, phân MX

NgưRi ta nhHn thCy các nút d li u ñ u là nút lá c?a cây. Do vHy vi c xoá mtrên cây tM phân MX ñơn gi*n.
Lưu ý rsng n1u nút N là nút trung gian trong cây, có tre T tre đ1n g7c thì mi n do N
th( hi n chMa ít nhCt mc$n đ*m b*o tính chCt các con tre ñ1n N tk các nút cha sq thay bsng NIL.
23


1.4.4.4. Câu h#i v$ mi$n trên cây t, phân MX


Câu hei v mi n ñ7i v i cây tM phân MX ñư@c th( hi n như ñ7i v i cây tM phân.
M

N


Do các ñi(m ñư@c lưu tr t[i mMc lá, nên vi c ki(m tra đi(m nsm trong
hình trịn khơng đư@c xác ñ,nh theo nhu c$u hei ñ7i v i nút lá.

1.4.4.5. Cây t, phân PR

Cây tM phân PR là mV i cây tM phân MX, ngưRi ta nhHn thCy các ñi(m d li u ñ u ñư@c lưu t[i mMc lá.
Do vHy v i cây có s7 mi n là 2k x 2k, quá trình tìm ki1m và b sung có đ< phMc t[p theo
O (k).
V i mgi nút N trên cây tM phân MX, ngưRi ta có mKhi phát tri(n cCu trúc d li u ñ( lưu tr các ñi(m, c$n thay ñ i qui luHt tách cây tM
phân MX ñ( nút N ñư@c tách khi và ch6 khi m (N) chMa hai hay nhi u đi(m. N1u N ch6
có mphân PR nhsm gi*m thRi gian tìm ki1m và b sung.
1.4.5. Cây R
1.4.5.1. Gi/i thi0u

Cây mi n ch nhHt ñư@c sinh ra nhsm nhsm cho phép sm d ng cCu trúc th( hi n d
li u là các mi n ch nhHt. NgưRi ta gVi nó là cây R. Ngồi tác d ng trBc quan trên, cây
R có ưu đi(m cho phép t chMc thơng tin trên đĩa tk, ít ra là ưu ñi(m trong vi c gi*m s7
l$n truy cHp ñĩa tk..

Mgi cây R có mph*i nút lá trên cây chMa mði u này d`n đ1n các nút trung gian, khơng là nút lá hay nút g7c, chMa ít ra là ms7 nút.
Hình ch nhHt vka nêu là hình ch nhHt thBc, hay nhóm các hình ch nhHt. Riêng
nút lá là nút v i mCCu trúc d li u ñ( mô t* mKi(u nút cây R = record
REC1,... RECk: hình ch nhHt;
P1,... Pk: ↑ ki(u nút cây R;
End;

G1

G2

G
1

c¸c R4, R5, R6, R7

c¸c R1, R2, R3

R
1

R
2

R

3

R
4

G
2

R
5

G
3

R
6

G3
c¸c R8, R9
miền ban đầu

Hỡnh. Cỏc hỡnh ch

24

một nút khác

nhVt ủ-c t0o nh\m chGa các ñi]m

R

7

R
8

R
9


1.4.5.2. B sung, tìm ki m nút trên cây R
c¸c R1, R2, R3

c¸c R1, R2, R3 v R10
c¸c R4, R5, R6, R7

G2

G1

c¸c R4, R5, R6, R7

G2
G1

Nót míi R11

Nót míi R10
G3

G3


c¸c R8, R9

các R8, R9

miền ban đầu

miền ban đầu

Hỡnh. Cỏc hỡnh ch

nhVt thay đ i kích thư c khi có đi]m m i

ð( b sung mthBc hi n các bư c sau:
1. Xem xét các hình ch nhHt đang gfn v i g7c, chVn hình ch nhHt c$n n i rít nhCt, tMc di n tích mi n n i ra ít, mà đ*m b*o các hình có v, trí tương đ7i tách
bi t, rõ ràng v i nhau. Trong trưRng h@p hình trên, vi c n i G1 là thuHn l@i, do
s7 di n tích phát tri(n đ( bao trùm R10 tk G1 ít hơn tk G2 hay G3;
2. B sung R10;
3. Gi* sm c$n b sung thêm R11 vào cây. Do v, trí c?a R11, n i G2 là h@p lí. Tuy
nhiên G2 đã đ$y;
4. C$n xác đ,nh trong s7 các hình ch nhHt chưa ñ$y ñ( b sung R11. Trong trưRng
h@p này, c$n n i G3.

G2

c¸c R4, R5, R6, R7

G1


G3

c¸c R8, R9 v R11
miền ban đầu

Hỡnh. Cỏc tr8ng h-p c7a mi n chung khi b sung nút m i R10 và R11

1.4.5.3. Xố nút trên cây

Xố đ7i tư@ng, gfn v i hình ch nhHt, trên cây R có th( làm mCt nút trong đ7i
tư@ng đó. Khi xố mcây R là hình ch nhHt chMa ít nhCt [K / 2] hình thBc hay nhóm hình.
Chung h[n c$n xoá nút R9 trong cây R trên. N1u hu“ R9 trong hình G3, G3 ch6 cịn
R8, vào tình tr[ng dư i t*i. ði u này khi1n ngưRi ta c$n t chMc l[i cây R, tMc t[o ra các
nhóm logic m i. Có th( đ xuCt phương án R7 tk G2 chuy(n sang G3.

25