• Tidak ada hasil yang ditemukan

3 THE OPTIMAL SOLUTIONS FOR PATH-BASED RANGE QUERY PROBLEM

N/A
N/A
Protected

Academic year: 2024

Membagikan "3 THE OPTIMAL SOLUTIONS FOR PATH-BASED RANGE QUERY PROBLEM"

Copied!
8
0
0

Teks penuh

(1)

Tuyen tap Cdng trinh Nghien ciiu Cdng nghe Thdng tin va Truygn thdng 2010

MOT SO GIAI PHAP TOI iTU

CHO BAI TOAN TRUY VAN THEO TUYEN

Nguyin Minh Nam', Hoang Kilm^

' Bd ph^n Cdng ngh?, Vietbando Corp., TP Hd Chi Minh

^Trudng Djii hoc Cdng nghe thdng tin TP Hd Chi Minh [email protected], [email protected]

Tom tat. Bai bao trinh bay hai thuat toan dem gian cho phep tim kilm tit ca cdc vj tri nim trong viing d?m duac xac dinh bdi mot tuyen duong cho truac. Truy vdn nay thudng phat sinh trong cac he thdng thdng tin du lich khi liet ke cac dia diem n5m gin tuyen dudng hoach djnh. Sy nghen cd chai cua bai toan nay la viec xac dinh vung dem cua tuyen dudng da cho. ThuSt toan dau tien sir dung each tidp can truy vin theo vung chuin (standard range queiy (RQ)). Viec xac dinh cac dilm nim trong vimg dem tren tuydn dudng P dugc tang tdc bdi viec sir dung cau tnic cay chi muc khdng gian R-tree ma khdng can phai xay dung viing dem ciia tuydn dudng da cho. Thuat toan thut hai dua tren cau tnic ludi tam giac Delaunay. Tdc dp thyc thi cua cac thuat toan nay rat nhanh vai cac bd dit lieu thue tl.

Tir khoa: Path-based Range Query, PRQ, RQ, TIN, DT

THE OPTIMAL SOLUTIONS

FOR PATH-BASED RANGE QUERY PROBLEM

Abstract. This paper presents two simple algorithms for finding all the locations in the buffer zone is defined by a given route. This query often arises in the tourist information system lists the location as near the planned route. The bottleneck of this problem is the determination of buffer zones for routes. First algorithm is used the standard range query (RQ). The determination of the point in the buffer zone on the route P is accelerated using a tree spatial index R-tree without having to build the buffer for routes. Second algorithm is based on Delaunay triangulation structure. The performance of this algorithm is very fast with the real data.

Keywords: Path-based Range Query, PRQ, RQ, TIN, DT

(2)

Tuydn tap Cdng trinh Nghien ciru Cdng nghe Thdng tin va Truyin thdng 2010

MOT SO GIAI PHAP TOI UtJ

CHO BAI TOAN TRUY VAN THEO TUYEN

N g u y e n M i n h N a m Bd phan Cdng nghe

Vietbando Corp.

TP Hd Chi Minh, Vietnam [email protected]

Tom tat—^This paper presents two simple algorithms for finding all the locations in the buffer zone is defined by a given route. This query often arises in the tourist information system lists the location as near the planned route. The bottleneck of this problem is the determination of buffer zones for routes. First algorithm is used the standard range query (RQ). The determination of the point in the buffer zone on the route P is accelerated using a tree spatial index R-tree without having to build the buffer for routes. Second algorithm is based on Delaunay triangulation structure.

The performance of this algorithm is very fast with the real data.

Bai bao trinh bay hai thuat toan dffn gian cho phep tim kiem tat ca cac vi tri nam trong viing dem duoc xac djnh boi mot tuyen duong cho truo'c. Truy van nay thuong phat sinh trong cac he thdng thdng tin du Ijch khi liet ke cac dja diem nam gan tuyen duong hoach djnh. Sw nghen co chai cua bai toan nay la viec xac dinh viing dem ciia tuyen dud^ng da cho. Thuat toan dau tien su dung each tiep can truy van theo viing chuan (standard range query (RQ)). Viec xac dinh cac diem nam trong vimg dem tren tuyen duong P duffc tang toe bdi viec sir dung cau triic cay chi muc khdng gian R- tree ma khong can phai xay dung viing dem ciia tuyen duorng da cho. Thuat toan thir hai dya tren cau triic ludi tam giac Delaunay. Tdc do thyc thi ciia cac thuat toan nay rat nhanh vol cac bo dir lieu thue te.

Keywords- Path-based Range Query;PRQ;RQ;TIN;

DT

I. G I O I THIEU

Trong he thdng thdng tin du lich, ngudi diing luu dpng rat can biet cac diem quan tam (Points Of Interest - POls) nam tren dudng di hoach dinh trudc.

Ta cd the cho mdt vi du don gian nhu sau: liet ke cac cay xang xung quanh theo tuyen dudng tir thanh phd Hd Chi Minli ra Ha Ndi. Tir bai toan thue t l tren, ta cd the phat bieu bai toan tim cac ddi tupng xung quanh tuyen dudng hoach dinh (Path based Range Query PRQ) nhu sau: Cho mpt tap hpp N dilm 5 = {Si,S2,S3,...,S;(,}, cho mpt tuyen dudng hoach dinh dupc md ta bdi tap M diem P = [pi,P2, -.PM) va khoang each d > 0, ta can tim tat ca cac dilm cua tap 5 nam trong vung dem cua P (buffer(P, d)) - ta

H o a n g K i e m Khoa khoa hpc may tinh Trudng Dai hpc Cdng nghe thdng tin

TP Hd Chi Mmh, Vietnam [email protected]. vn

hoac cd the ndi la tim tat ca nhiing diem each tuyen dudng P mdt khoang nhd hon d.

Thdng thudng bai toan nay se dupc giai quyet trong hai budc:

• Budc 1: Md viing dem B vdi ban kinh d cho tuyen P

• Budc 2: Kiem tra tiing diem thude tap S cd n i m trong vung dem B hay khdng. Tap nhirng diem nam trong va tren bien cua B la ldi giai cua bai toan.

Phuang phap nay dep ve mat U thuyet nhung hieu suat khdng cao do bai toan lay viing dem cham khi M Idn va nhieu khi cho ket qua khdng chinh xac khi hinh dang P phiic tap va ban kinh d Idn [6]. (i budc hai ddi hdi phai thue hien vet can toan bd tap S nen each tiep can nay khdng kha thi cho cac ling dyng thue te khi ca M va N len den con sd hang trieu.

Mdt giai phap khac cd the tang tdc qua trinh tim kiem la su dung cac cau tnic chi niyc khdng gian, nhu R-tree de Ipc bdt tap diem can kiem tra. Vdi cac cau tnic cay chi muc nay, ta cd the tang tdc viec xac djnh cac diem nam trong vimg dem ma khdng can phai xay dyng viing dem cua tuyen dudng da cho. Mdt thuat toan tieu bieu cho phuang phap nay dya tren R-tree dupc de xuat bdi H.K. Ng, H W Leong va Ngai Lam Ho [3]. Diem mau chdt cua thuat toan la khi xu ly xudng sau trong R-Tree, so lupng diem truy van can xu ly d mdi mit giam xudng dang ke (vi MBR giam).

Tuy nhien, thuat toan do khdng dap ling chinh xac nhu cau tim kiem do qua trinh tim kiem chi thyc hien d cac dinh p; e P va neu d(pi, pj+i) > d thi ket qua tra ve khdng day du. Thuat toan nay cho ket qua tot khi ap dyng cho tuyen dudng hoach dinh P vdi dieu kien d(pi, pi+i) < d.

Trong bai bao nay, chiing tdi d l xuat hai giai phap khac phyc nhirng nhuac diem da neu tren co sd tan dung cac cau tnic khdng gian kha thdng dyng: R-tree [4] va ludi tam giac Delaunay [1] [2] [7].

U. M Q T SO K H A I N I E M C O BAN Dinh n^hia I: Tuyen dudng hoach djnh: cd the xac dinh bang nhieu each va md ta bdi tap diem P =

(3)

Tuydn tap Cdng trinh Nghien ciiii Cdng nghe Thdng tin vaTmydn thdng2010 Nd cd the la dudng di ngin nhit (hoac nhanh nhit)

giiia hai vi tri xac dinh, hay tuyin dudng vdi ten xac dinh.

Dinh nzhia 2: Diem lan can tuyIn dudng: la nhirng diem cd khoang each d' nhd hom hoac bang khoang each d so vdi tuyen dudng hoach dinh - hoac ta cd the ndi la diem thupc viing dem buffer(P, d).

Dinh nshia 3: Cho mdt tap hpp N diem 5 = {Si,S2,S3, ...,S)v}, mdt diem truy van p, va khoang each tim kiem d, khi dd bai toan truy van trong pham vi RQ(p,d) la tim tat ca cac diem trong S nam trong pham vi d cua diem p , vi dy: RQ(p,d) = {q q eS,q 6 C(p,d)}, trong dd C(p,d) la dudng trdn tam la p va ban kinh d, C(p, d) = {q •• dist(p, q) <

d).

Dinh nghTa 4: Cho mdt tap hpp N diem S = {Si, $2, S3,..., Sfj}, tuyen dudng truy van gdin M diem P = {pi, P2,..., Pu) va khoang each tim kiem d. Khi dd, bai toan tim kiem ddi tupng xung quanh PRQ(P,d) = {q:q eS,q ebuffer(P,d)) . ma buffer(P, d) la viing dem cua tuyen dudng P trong khoang each d.

III. CAC THUAT TOAN

Trong bai toan truy van theo tuyen, thuat toan xac djnh quan he (cat, tiep xiic hay khdng cat) giira dudng thang va dudng trdn ddng vai trd rat quan trpng vi nd dupc sir dyng nhieu trong qua trinh tim kiem. Chinh vi vay viec tdi tru hda thuat toan kiem tra nay la rat can thiit. Thdng thudng, ngudi ta se so sanh chilu cao h tir tam dudng trdn den dudng thang vdi ban kinh r ciia nd de xac dinh quan he giira chiing. Tuy nhien, phuang phap nay tdn nhieu chi phi tinh toan.

D I tdi uu hda vin dl kiem tra nay, chiing tdi sir dung cdng thirc duoc xay dyng dudi day.

Cho mdt doan thing s dupc xac dinh bdi hai cap tpa dp (xi.yi) va (X2,y2). Va dudng trdn C = {(Xc,yc),r}, vdi (x^.Vc) la tam dudng trdn va r la ban khih. Khi tjnh tien doan thang s ve tpa dp (x^, yc) tacd:

Xl = Xl - Xc yi = yi - Vc ^2 = ^2 - Xc

(x2,y2L

y2 = y2 - Vc

dx=X2- Xl, dy = y2 - y i , d r = D = XiVi - Xzyi

va tinh duoc bieu thiic A nhu sau:

A = r^d^ - D^

-- ^dl + d2

(1)

(a) Khdng cat

(c) Cat 2 diem

Hinh 1 Quan he giua duong thing va duong tron Vdi dilu kien kilm tra thdng qua bieu thirc A neu tren, chiing tdi trinh bay cdc thuat toan giai quyet bai toan truy van theo tuyen.

A. Thudt todn sit dung cdu triic chi muc R-tree 1) Thug! todn

Thuat toan dya tren y tudng: su dyng cay chi muc khdng gian R-tree [4]de chpn Ipc cac diem cd tiem nang de thyc hien kiem tra chinh xac. Mdt van de^ap phai khi luu ket qua tim kiem la: cac diem tim thay d cac budc trudc cd the xuat hien d budc kiem tra sau.

Do dd, chiing ta can mdt cau tnic tya tap hpp de giai quylt sy triing lap ket qua nay. CJ day chiing tdi sir dung cau tnic cay B-tree[5].

NIU A > 0 thi dudng trdn se cit dudng thang di

qua hai dilm (xi.yi), (Xz.yz), tnrdng hpp (b) va (c)

trong Hinh 1. Viec tinh toan bieu thiic A don gian va

nhanh chdng. Vdi mdt sd phep kilm tra bd sung ta de

dang xac dinh doan thing s cd cit dudng trdn C hay

khdng.

(4)

TuyIn tap Cdng trinh Nghien ciiu Cdng nghd Thdng tin va Truyin thdng 2010

Hinh 2. Mo phong thuat toan R-PRQ xac dinh cac diem thuoc vung dem cua P

Thuat toan truy van theo tuyen dupc md ta nhu sau:

• Budc 1: Xay dung cay R-Tree T'* tir tap diem POIs.

• Budc 2: Uhg vdi mdi doan Sj thude dudng di hoach dinh P ta thyc hien:

• a. Tinh khung bao chu nhat md rpng mdt doan d (tuong ling vdi ban kinh tim kiem) cho doan Sj, nhu dupc chi ra trong Hinh 2, ki hieu la mbr.

• b. Kiem tra xem khung chu nhat md rdng mbr cd phii len cac ddi tupng nao trong T"

Luu cac ddi tupng tren vao T^ neu dudng trdn quanh tam mdi ddi tupng vdi ban kinh d cd cat hay tiep xiic vdi doan S;, nhu dupc chi ra trong Hinh 1.

• Budc 3: Tra ve cac diem quan tam da luu lai trong T^. Ket thiic thuat toan.

Md gid mo td thuat todn tren:

l^PRQ{P,POIs,cOi

foreach Pi in POls T''.push((i,MBR(pi))) foreach 5,- inP {

mbr <- MBR(si,d)

C «- T'^.intersect_with(mbr) foreach CiinC {

if (Relate(Ci,d,Si) > 0) T^.push(Ci)

} }

return T^

}

2) Ddnh gid dp phuc tgp

Dp phiic tap ciia thuat toan nren phy thupc vao su phan bd cac ddi hiang ttong ca sd dir lieu khdng gian, va dp Idn khoang each cua d.

Gia su tuyen dudng hoach dinh P co N phan doan, sd lupng ddi tuang trong ca sd dii: lieu khdng gian dupc sip chi muc theo cay R-Tree la M. Ta xet trudng hpp xau nhat ciia thuat toan nay la mdi phan doan cua P diu tim thIy M doi tupng thi dp phiic tap tdng hpp cua thuat toan se la: 0(,N. M. logM). Nhung d thyc tl img dyng thi khoang each d tuong ddi nhd nen sd luong tim thay cho mdi phan doan se rat be.

Vay ta cd the xem nhu dp phiic tap thue te xap xi la 0(N. logM). Nhimg de cho each giai quyet bai toan mdt each hoan thien hon, ta nen tim ra mpt phuong phap &h cd the khic phyc dupc nhupc diem cua R- Tree trong trudng hop xlu nhat.

B. Thudt todn dua tren ludi tam gidc (T-PRQ) Trong myc nay chiing tdi de cap mot hudng tiip can mdi kha don gian nhung hieu qua de tim cac ddi tupng cin quan tam xung quanh tuyIn dudng hoach dinh dua tren ludi tam giac Delaunay. Thuat toan nay bao dam tim chinh xac tat ca cac doi tuong thda dilu kien cua bai toan dat ra va tdc dp thyc thi rat nhanh.

Hon niia, thuat toan nay cho phep cap nhat ddng cac ddi tupng quan tam (xda hay them cac vj tri mdi).

Cach tiip can mdi uu viet hon each Ipc sii dyng cay R-Tree trong tinh hudng khung bao chu nhat chira qua nhieu ddi tupng khdng can thiet nhu vi du trong Hinh 3.

^

Hinh 3. Khung bao mo rong quanh doan thang chua hau het tap diem dau vao

Thuat toan nay dya tren ca sd cac diem trong

khdng gian tim kilm da dupc chia ludi TIN. Cac

thuat toan chia ludi TIN tren tap du lieu Idn da dupc

nhieu tac gia nghien ciiu va cai dat rlt thanh cdng

nhu: Nguyen Minh Nam [1], Zahk [7], Dwyer [8],

Shewchuk [10]... Do dd thuat toan cd dp dn dinh tdt

va cho ket qua rat chinh xac.

(5)

Tuyen tap Cdng trinh Nghien ciru Cdng nghe Thdng tin va Tniydn thdng 2010

1) Cdu true tam giac lan can (Triangle Neighbor)

1

4 T r^^ r 6

. ± = t = ^ . '

t A

n„

1 n.

2

712

3 to

B tn C

tn D

Hlnh 4. Cau true tam giac lan can

Trong cau tnic tam giac lan can bilu diin giiia hai ddi tupng dinh va tam giac:

Thdng tin dinh: Mdi dinh trd tdi tam giac lan can.

Thdng tin tam giac: Mdi tam giac tham chieu tdi ba dinh tao ra nd va ba tam giac lan can (xem Hinh 4).

Md hinh nay cho phep liet ke cac tam giac quanh mdt dinh. CSu true tam giac lan can cd dung lupng luu trii gpn hon han so vdi cac cau tnic luu trir khac nhu md hinh Quad-Edge [14] hay md hinh Winged- Edge [13]. Do vay, tdc dp thyc thi thyc tl khi sii dung cau tnic tam giac lan can nhanh han cac cau tnic neu tren khoang 1,2 d i n 1,5 lan (xem BANG 2).

Mdt trong cac van de hdc biia chiing ta can giai quyet d day la ky thuat xac dinh nhanh mdt diem tim kiem thude tam giac nao trong ludi. Cach tiep can ciia chiing tdi la phii len ludi tam giac mdt phan hoach dan gian hon dya tren khung ludi chii nhat deu.

2) Ky thudt xdc dinh tam gidc thude ludi chua diem tim kiem

Cho mpt phan hoach phIng tren mat phIng RQ (trong trudng hop nay la ludi tam giac) va mdt dmh ( x . y ) . Ta cin tim mdt phin hi ciia phan hoach phIng ro(j) (tam giac) chiia dinh da cho. Clu tnic khung ludi chir nhat d i u d l xac dinh nhanh tam giac chiia dinh them vao da dupe B. Zalik va 1. Kolingerova trinh bay trong cdng trinh [7]. Trong cdng trinh cua Skvortsov [9] de cap giai phap su dyng kich thude khung ludi tang trudng ddng theo sd lupng dilm dupc them vao ludi tam giac. Cach tiep can nay bao dam d mpi thdi dilm tir vi tri d ludi xac djnh nhanh hon d i n tam giac thupc ludi tam giac chiia dilm c i n tim. D l lam dilu dd ta cin xay dung mpt phan hoach don gian hon RQ la Ri phu len RQ ma tren dd tliyc hien nhanh qua trinh xac dinh dinh cin tim. Sau dd dat mdi nrcmg quan giiia phin hi TK,)

cua phan hoach R^ va phan hi TQQ) ciia phan hoach RQ sao cho phan ni TOQ) gan phan tii TKQ nhat cd the.

Bat dau tit phan tii r^) thdng qua chuoi cac tim kiem qua cac phan tir lan can se tim dupc phan tii dich foCtaget)- Sau khi thyc hien thanh cdng qua trinh tim kiem ta cd the thay the tuong ling TKQ -» TOQ) bing mdt tuong ling khac tdt hon chinh la ri(j) -»

ro(taget)- Do vay, qua trinh tim kiem se ngay cang nhanh.

Bay gid ta se tim each chpn lya phan hoach Ri tdt nhat cd the. Giai phap cu the dupc de nghi d day la chpn phan hoach Ri la khung d ludi chii: nhat deu. Vi du cd mdt phan hoach phu hoan toan len hinh vudng kirih tudc [0,1] x [0,1] thi cd thl chia nd thanh m^

phan la d ludi hinh vudng. Danh sd thii ty cac d ludi dd theo sd ty nhien: i,j 6 [0, m - l](rN:ri(ij). BChi dd, vdi diem cho trudc (x, y) mdt each tiic thdi ta cd the xac dinh dupc hinh vudng r /x^n, d day [...] la

Vrn'm/

ky hieu lay phan nguyen. Mdt trong cac cai tien dang ke la kich thude ludi chii nhat phan hoach se tang dan theo sd lupn^ dinh them dan vao ludi de cho d mpi thdi diem, mdi d ludi se chi phai phu mdt sd lupng tam giac xac dinh du nhd de qua trinh dd tim lan can la it nhat cd the. Vi du khi kich thude ludi chii nhat tang len hai lan theo mdi chieu, ta can chep thdng tin tir mdi d cQ sang cac d mdi nhu sau:

\/i,j:0,moid - 1 :

'"lnew(2t,2;)' ^lnew(2£,2;+l),

^lnew(2£+l,2;)''"lnew(2i+l,2y+l)

<~ floldii.j)

(2)

Vay kich thude ludi chii nhat sau mdi lan hieu chinh s6 tang len bdn lan. Ta chpn kich thude khung ludi ban dau khdi tao m = 2. Khdi tao cac gia tri ban dau cac d ludi tham chieu tdi rdng. Can luu y rang nlu cd nhieu tam giac cimg phii len mpt d ludi thi ta chi tham chieu den mpt tam giac dupe cap nhat cudi ciing nhat. Hinh 6 md ta each tir diem tim kiem, mdt each tire thdi ta cd the xac dinh ngay nd thude ri(Q.

Tir ri(i) ta tham chieu dupc tam giac TOQ) . Neu dd chua phai la tam giac chiia diem can tim thi thyc hien lln theo cac tam giac lan can de hudng den tam giac cin tim ro(taget)- Skvortsov chpn cac d ludi khdng cd tam giac nao phii len (cac d ludi nay khdng chua bat ky trpng tam cua tam giac nao) deu tham chieu den tam giac dau tien. Cach tiep can nay se trd nen kem hieu qua vi cd the phai thyc hien viec chuyen qua mdt sd lupng Idn cac tam giac lan can neu tam giac dich (chiia dinh them vao) nam each xa so vdi tain giac diu tien. C5 day chiing tdi de xuat hudng cai tien tim kilm lan can theo dudng xoln dc de phat hien ra d ludi khac rdng dau tien. Cach tiep can nay tang hieu qua thyc thi cua thuat toan len dang ke do chi loang qua cac d ludi lan can. Chi tiet ciia thuat toan tim kiem theo dudng xoan dc de tim diem gan nhat tir mpt diem truy van da dupc Bentley, Weide va Yao

(6)

TuyIn tap Cdng trinh Nghien ciiu Cdng nghe Thdng tin va Truyen thdng 2010

trinh bay chi tiet trong cdng trinh [11]. Qua trinh duyet theo dudng xoan dc se tao ra thanh cac ldp tim kiem dupc td thanh cac ngudng mau khac nhau nhu trong Hinh 5.

35 36 37 38 39 40 41

3^

16 17 18 19 20 42

33 15 - 6 - 21 43

32

* • - 3

"H ">

44

i

31 13 3

T

c 23 45

30 12 11 10

'y ^

24 46

29 2S 27 26 49 48 47

Hlnh 5. Qua trinh tim theo duong xoin 6c dua tren khung lucfi

Cho c la mdt hang sd duong va nhd (la sd lupng dinh trung binh roi vao mdi d ludi). Thuat toan tim kiem se bat dau tir d ludi chiia diern truy van va md rdng ra theo dudng xoan dc cho den khi tim thay d ludi khac rdng (xem Hinh 5). Trong thuat toan nay nhan thay rang trong mdi d ludi ludn cd it nhat c va nhieu nhat la 4c dinh. Sd lupng ldp tim kiem dudng xoan dc theo each ndi trong cdng thiic (2) se khdng vupt qua log4 n ldp.

Xac suat de mdt dinh roi vao mdt d ludi la q = -, do dd xac suat de d ludi la rdng se la:

c>."

( l - < 7 ) " = ( l - - ) < e - ^

(3)

Dp phiic tap ciia thuat toan xac dinh dinh them vao nam trong tam giac nao thupc ludi tam giac vi tri diem ty le thuan vdi sd d ludi trong qua trinh tim xoan dc va sd lupng tam giac trong qua trinh tim kiem ke tiep.

Theo tinh toan cua Bentley, Weide va Yao thi sd dinh tinh toan la 8c(lli + 7). Sd tam giac phai duyet trong d ludi udc tinh se nhieu hon khoang hai lln theo cdng thirc Euler. Vay sd lupng tam giac phai tim theo each duyet lan can khdng vupt qua 16c(lli -I- 7), do do dd phire tap tdng cdng trong trudng hpp nay la:

0(1) ^ e-^C-i) 0(1) = 0(1)

(4)

is41og^ n

Tam giac chira dinh them vao Dinh them vao

Tam giac tham chieu tdi d ludi them vao

Hinh 6. Cach xac djnh diem tim kiem thuoc mgt tam giac trong luoi

3) Thudt todn

• Budc 1: Ung vdi mdi doan thang Sj thupc dudng di hoach dinh P, ta xac dinh tat ca cac tam giac bi cat bdi doan Sj.

• Budc 2: Luu tap dinh S/'tao nen cac tam giac bi cat d budc 1. CJ day can chii y rang 2 tam giac ke nhau se cd chung hai dinh.

• Budc 3: Vdi mdi dinh v^ 6 5" dupc tun thay d budc 2, thyc hien loang tdi cac dinh ke ma dudng trdn ban kinh d cd tam tai cac dinh dd cdn cat doanSf. Thdng qua cau tnic lim trii ludi tam giac trong Hinh 4 ta cd cd the de dang tim dupc dinh ke vdi bat ki dinh nao trong ludi.

• Budc 4: Cac dinh thda dieu kien cua budc 3 se dupc luu vao tap dinh ket gua tra ve T^

Quay lai budc 1 cho den khi tat ca cac doan thang cua P da dupc xet. Ket thiic thuat toan.

Hinh 7. Mo phong thuat toan T-PRQ

(7)

Tuyen t|p Cdng trinh Nghien ciiu Cdng nghe Thdng tin va Truydn thdng 2010

Ma gia cho thuat loan Iren:

T_PRQ(P,P01s.d){

7 - ^ ^ 0 foreach S; in P{

sr^

FindVertex (FindTriang les (5;)) Qi <- Si' II Cho cdc dinh cua tam gidc vdo hdng doi

whileiNot Qi. lsEmpty){

Vk <- Qi-PopO

if (Relate(y^,d,Si) > 0){

T^.push(v^)

N <- findNeighbors(v,^) foreach Vj in N

Qi.Push(yj) }

} }

return T^

}

}

4) Do phicc tgp thudt todn

Dp phirc tap cua thuat toan tren phy thupc vao budc 1 va budc 4. Neu su dung ky thuat xac dinh tam giac chira diem q trong thuat toan xay dyng ludi tam giac Delaunay theo phuang phap chen dinh tuan ty [9]thi dp phirc tap la 0{N) cho N doan thang ciia P tim giao vdi cac tam giac cua ludi. Budc 2 va 3 ciing cho dp phiic tap la 0(N). CJ budc 4, vdi ban kmh d khdng Idn thi sd ddi tuong tim dupc cd bac la 0(W) va do phai loai bd cac ddi tupng giao d cac dinh cua tuyen dudng P bang cay B-Tree nen dp phiic tap tdng cpng cua toan thuat toan se la O(NlogN).

IV. KET QUA

Viec tim kilm dya tren ludi tam giac Delaunay ciing da dupc Bim, M va cac cpng sy de cap trong cdng trinh [i2]. Viec xac dinh dilm tim kiem roi vao tam giac nao trong ludi Delaunay dya theo cau tnic Full Delaunay Hierachy (FDH) cd tdc dp thue thi klia nhanli nhung thai gian tiin xir ly cham hon phuang phap tac gia da dl cap trong [1] va dung lupng luu trii- ciia hp cGng tdn kem han nhieu. Tac gia dua ra cac thdng ke vl kit qua thyc thi thyc te ciia hai thuat toan tim kilm cac ddi tupng quan tam xung quanh tuyen dudng hoach djnh dupe chay ten may Pentium(R) Dual-Core CPU E52o6 2.5 Ghz 4 GB RAM vdi he dilu hanh Microsoft Windows Server 2003(R2) Enterspise x64 Edition Service Pack 2.

BANG 1 THOI GIAN THLTC THI CAC THUAX TOAN TJM KIEM DOI TUONG XUNG QUANH TUYEN DUdNG Thai gian thirc thi (s) thuat toan tim Idem doi tuong xung quanh tuyen diromg tir tap 1.000.000 doi tuong phan bo ngau

nhien trong khoang (0-4.000.000.000)

So lugmg doan cua tuyen dirong bang 4 Bdn kinh lim kiem (R)

200.000.000 100.000.000 50.000.000 25.000.000 12.500.000 6.250.000 4.000.000 2.000.000 1.000.000

Thual loan R-PRQ 52,828 29,312 6,719 2,562 1,5000 0,890 0,843 0,829 0,797

Thuat loan T- PRQ

2,391 1,359 0,756 0,343 0,172 0,094 0,078 0,047 0,032 BANG 2 THOI GIAN THUC THI CAC THUAT TOAN XAY DUNG LUQl TAM GIAC DELAUNAYTHEO PHUONG PHAP

CHEN DINH TUAN TU Th6i

gian chay (s) Triangle Neighbor Winged-

Edge

So dinh (N) phat sinh ngau nhien 1000000

6,379 7,453

2000000 13,118 15,922

3000000 20,029 24,813

4000000 27,159 34,187

5000000 34,633 43,984

KSU

Hinh 8. Mo phong thuat toan tim doi tu(;mg xung quanh tuyen duong hoach

djnh

Hinh 9. K^t qua tim cac cita hang dpc ducmg Dong khoi vai ban kinh 100 met

(8)

Tuydn tap Cdng trinh Nghien ciiu Cdng nghe Thdng tin va Truyen thdng 2010

V. KET LUAN

Cac thuat toan PRQ da dupc dua vao van hanh thyc tl va chiing td kha nang dap ling dupc cho cac he thdng tra cuu tryc tuyen tren website www.vietbando.com. Tinh don gian cua thuat toan cho phep cai dat ling dyng th^m chi tren cac he thdng nhung. Hudng nghien ciiu ke tiep la van dyng thuat toan nay vao cac he thdng xir ly song song de tang tdc dp thyc thi tan dung cho cac he thdng phan ciing manh nhieu con vi xu ly hay nhieu nhan.

TAI LIEU THAM KHAO

[I] Nguyin Minh Nam, Nguyen VTnh Nam, Hoang Kiem. Thuat toan song song xay dung luoi tam giac Delaunay. Tap chi Cong nghe Thong tin & TruySn thong, tiip V-1, so 1 (21), 04-2009.

[2] Nguyen Minh Nam, Hoang Van Kiem, Nguyen Vinh Nam.

A fast algorithm for constructing constrained Delaunay triangulation. In Proceedings of lEEE-RIVF 2009. pp 11-14.

[3] H.K. Ng, H W Leong and Ngai Lam Ho, 2004, Efficient Algorithm for Path-based Range Query in Spatial Databases, Proceedings of International Database Engineering and Applications Symposium (IDEAS-2004), IEEE, 7-9 July 2004, Coimbra, Portugal, pp. 334-343.

[4] A. Guttman, R-trees: ^ dynamic index structure for spatial searching. In Proc. ACM SIGMOD hit. Conf on Management of Data, pages 47-57, 1984.

[5] Rudolf Bayer, Binary B-Trees for Virtual Memory, ACM- SIGFIDET Workshop 1971, San Diego, California, Session 5B, p. 219-235.

[6] Zadravec, M., Zalik, B., Podgorelec, D., An algorithm for constructing geometric buffers of simple polygons, Proceedings of the 5th International Scientific Conference Electronic, Computers and Informatics'2002, Kosice- Herl'any, Slovak Republic, October 10-11, 2002, pp. 328- 333.

[7] Zalik B, Kolingerova L, An incremental construction algorithm for Delaunay triangulation using the nearest-point paradigm. Int. J. Geographical information science 2003;

(17): 119-38.

[8] Dwyer R. A., A faster divide-and-conquer algorithm for constructing Delaunay triangulations. Algorithmica 1987;

(2): 137-51.

[9] CKBopuoB A. B., KocTioK lO.JI. 3(j)4)eKTHBHbie aiiropHTMM nocTpoeHHa TpHanryjiHUHH ,ZlejioHe // FeoHHcJiopMaTHKa.

Teopwa H npaicTHKa. Bun. 1. TOMCK: HSA-EO TOM. yn-xa, 1998. C. 22^7.

[10] Shewchuk J. R., Sweep algorithms for constructing higher- dimensional Constrained Delaunay Triangulations. In Proceedings of the 16th armual symposium on Computational geometry, Kowloon, Hong Kong, pages 350- 359. ACM, 2000.

[II] L. Bentley, B. W. Weide, and A. C. Yao, "Optimal expected time algorithms for closest point problems," ACM Trans.

Math. Software, vol. 6, pp. 563-580, 1980.

[12] Bim, M., Holtgrewe, M., Sanders, P., Singler, J.: Simple and Fast Nearest Neighbor Search. In: 2010 Proceedings of the Twelfth Workshop on Algorithm Engineering and Experiments, January 16, pp. 43-54 (2010).

[13] B. Baumgart, Winged-Edge Polyhedron Representation for Computer Vision, National Computer Conference, May 1975

[14] Guibas L, Stolfi J. Primitives for the manipulation of general subdivisions and the computation of Voronoi diagrams. ACM Trans Graph 1985 4(1):75-123.

Referensi

Dokumen terkait