KR20100135056A - 보로노이 다이어그램을 이용한 최근접점 탐색 방법 및 시스템 - Google Patents

보로노이 다이어그램을 이용한 최근접점 탐색 방법 및 시스템 Download PDF

Info

Publication number
KR20100135056A
KR20100135056A KR1020090053502A KR20090053502A KR20100135056A KR 20100135056 A KR20100135056 A KR 20100135056A KR 1020090053502 A KR1020090053502 A KR 1020090053502A KR 20090053502 A KR20090053502 A KR 20090053502A KR 20100135056 A KR20100135056 A KR 20100135056A
Authority
KR
South Korea
Prior art keywords
voronoi
neighboring
voronoi cell
poi
cell
Prior art date
Application number
KR1020090053502A
Other languages
English (en)
Other versions
KR101097656B1 (ko
Inventor
장재우
엄정호
Original Assignee
전북대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 전북대학교산학협력단 filed Critical 전북대학교산학협력단
Priority to KR1020090053502A priority Critical patent/KR101097656B1/ko
Publication of KR20100135056A publication Critical patent/KR20100135056A/ko
Application granted granted Critical
Publication of KR101097656B1 publication Critical patent/KR101097656B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3476Special cost functions, i.e. other than distance or default speed limit of road segments using point of interest [POI] information, e.g. a route passing visible POIs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24147Distances to closest patterns, e.g. nearest neighbour classification
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3679Retrieval, searching and output of POI information, e.g. hotels, restaurants, shops, filling stations, parking facilities
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

사용자로부터 요청된 질의지점을 포함하는 질의영역을 설정하는 설정부, 보로노이 다이어그램을 적용한 보로노이 셀 중에서 상기 질의영역에 포함되는 제1 이웃 보로노이 셀을 식별하고, 상기 식별된 제1 이웃 보로노이 셀을 이용하여 POI 후보 집합을 탐색하는 탐색부, 및 상기 탐색된 POI 후보 집합을 상기 사용자에게 제공하는 제공부를 포함하는 보로노이 다이어그램을 이용한 최근접점 탐색 시스템을 제공한다.
보로노이 다이어그램, 질의영역, 보로노이 셀, 최근접점, POI

Description

보로노이 다이어그램을 이용한 최근접점 탐색 방법 및 시스템{METHOD AND SYSTEM FOR SEARCHING NEAREST NEIGHBORS USING VBORONOI DIAGRAM}
본 발명은 보로노이 다이어그램을 이용한 최근접점 탐색 방법 및 시스템에 관한 것이다.
네비게이션 시스템은 GPS(Global Positioning System) 위성으로부터의 위상전파를 수신하여 위성과의 전파수신거리를 산정함에 의해 이동체의 현재 위치를 산출하고, 산출된 현재 위치에 대한 지도 데이터를 기억매체로부터 검색하여 화면 상에 표시한다.
이때, 네비게이션 시스템은 주행거리와 주행방위를 산출함으로써 주행개시위치로부터 주행되고 있는 위치까지의 주행경로를 화면상에 표시할 수 있다. 이러한, 네비게이션 시스템은 이동체 주변에 가까운 POI(point of interest, 관심지점)를 검색하는 기능이 필수적이며, 이를 신속하고 정확하게 검색하기 위한 방법이 요구된다.
또한, GIS(geographic information system), LBS(location-based services), 텔레매틱스(telematics) 응용 분야에서도, 주유소, 레스토랑, 은행 등 현재위치와 인접한 몇몇의 POI를 추천해주는 서비스가 필수적이다.
이러한 주변 POI 검색은 최근접 질의 처리 방법에 의해 가능하며 최근접 질의를 처리하기 위해 도로 네트워크를 저장하고 POI를 찾기 위해서 주어진 질의 지점에서 찾고자 하는 POI에 도달할 때까지 네트워크를 확장하는 알고리즘을 사용한다. 그러나, 도로 네트워크를 확장하는 데에는 많은 비용이 필요하기 때문에 비용을 절감하기 위해서 보로노이 다이어그램(voronoi diagram)을 사용하여 최근접 질의를 처리하는 알고리즘이 개발되었다.
보로노이 다이어그램이란, 공간 상에 많은 정점들이 있을 때 각각의 정점에서의 같은 거리에 떨어진 지점들을 기준으로 공간을 분할하는 방법을 의미하는 것이다. 이러한 네트워크 보로노이 다이어그램을 기반으로 한 최근접점 검색 알고리즘(voronoi-based network nearest neighbor algorithms)(이하, 'VN3'라 칭함)은 도로상의 임의의 지점으로부터 가장 인접한 k개의 객체(POI)를 검색하기 위한 최근접 질의(nearest neighbor query)를 위하여 개발되었다.
기본적으로, VN3는 보로노이 다이어그램 방법을 도로 네트워크에 적용한 것으로 네트워크 보로노이 다각형(network voronoi polygon)을 사용하면 첫 번째 최근접 객체를 빠르게 계산할 수 있다. 그리고, 서로 인접한 네트워크 보로노이 다각형을 사용하여 POI를 확장해가면서 2번째부터 k번째까지 최근접점들을 계산해 나갈 수 있다.
그러나, 기존의 k-최근접점 탐색 방법은 최근접점 질의 수행시 질의지점에서 POI를 포함한 보로노이 셀의 경계지점까지의 거리 계산과 상기 보로노이 셀의 경계지점에서 POI까지의 거리 계산을 요구하기 때문에, POI까지의 최소거리를 계산하기 위해서는 많은 시간이 소요된다는 문제점이 있다. 때문에, VN3는 k값이 증가하거나 데이터의 밀도가 커지는 경우에 네트워크 보로노이 다각형을 구축하는데 많은 시간이 걸리고, 질의 계산량이 기하급수적으로 증가하여 시스템 성능이 저하되는 문제점까지 발생한다.
따라서, 보로노이 다이어그램을 이용하여 최근접점을 효율적으로 탐색할 수 있는 알고리즘이 필요한 실정이다.
본 발명의 일실시예는 보로노이 다이어그램을 이용하여 질의영역을 기반으로 일정 개수의 최근접점을 탐색함으로써, 기존의 질의지점을 이용하여 최근접점을 계산하는 것에 비해 효율적으로 일정 개수의 최근접점을 탐색하는 보로노이 다이어그램을 이용한 최근접점 탐색 방법 및 시스템을 제공한다.
본 발명의 일실시예는 질의영역과 보로노이 셀 간의 최대거리 또는 최소거리의 특성을 이용함으로써, 확장이 불필요한 POI를 미리 제외할 수 있는 보로노이 다이어그램을 이용한 최근접점 탐색 방법 및 시스템을 제공한다.
본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 시스템은 사용자로부터 요청된 질의지점을 포함하는 질의영역을 설정하는 설정부, 보로노이 다이어그램을 적용한 보로노이 셀 중에서 상기 질의영역에 포함되는 제1 이웃 보로노이 셀을 식별하고, 상기 식별된 제1 이웃 보로노이 셀을 이용하여 POI 후보 집합을 탐색하는 탐색부, 및 상기 탐색된 POI 후보 집합을 상기 사용자에게 제공하는 제공부를 포함한다.
본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 방법은 사용자로부터 요청된 질의지점을 포함하는 질의영역을 설정하는 단계, 보로노이 다이어그램을 적용한 보로노이 셀 중에서 상기 질의영역에 포함되는 제1 이웃 보로노이 셀을 식별하는 단계, 상기 식별된 제1 이웃 보로노이 셀을 이용하여 POI 후보 집합을 탐색하는 단계, 및 상기 탐색된 POI 후보 집합을 상기 사용자에게 제공하는 단계를 포함한다.
본 발명의 일실시예에 따르면, 종래의 질의지점 아닌 질의영역을 기반으로 일정 개수의 최근접점을 탐색함으로써, 개인 정보를 보호할 수 있다.
본 발명의 일실시예에 따르면, 질의영역과 보로노이 셀 간의 최대거리 또는 최소거리의 특성을 이용함으로써, 최근접점에 포함되지 않는 POI를 미리 제외할 수 있다.
이하, 첨부 도면들 및 첨부 도면들에 기재된 내용들을 참조하여 본 발명의 다양한 실시예를 상세하게 설명하지만, 본 발명이 실시예에 의해 제한되거나 한정되는 것은 아니다.
본 발명의 보로노이 다이어그램을 이용한 최근접점 탐색 시스템은 위치 기반 서비스를 제공하는 모든 장치에 적용 가능하다. 예컨대, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템은 텔레메틱스에서 사용자와 인접한 POI를 검색하는 기술에 적용되거나, 네비게이션 단말기, 이동통신단말기 등에 사용자가 원하는 POI를 검색하는 기술에 적용될 수 있다. 아울러, SaaS(Software as a Service) 모델을 기반으로 하는 위치 기반 서비스를 제공하는 경우, 서버에서 보로노이 다이어그램을 이용한 최근접점 탐색 시스템을 적용하여 사용자의 질의를 신속히 처리할 수 있다.
도 1은 본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 시스템의 구성을 도시한 블록도이다.
도시한 바와 같이, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템(100)은 설정부(110), 탐색부(120), 제공부(130), 산출부(140), 및 저장 테이블(150)을 포함할 수 있다.
설정부(110)는 사용자로부터 요청된 질의지점을 포함하는 질의영역을 설정한다. 실시예로, 설정부(110)는 클로킹 알고리즘(cloaking algorithm)을 이용하여 상기 질의지점을 포함하는 질의영역을 설정할 수 있다.
탐색부(120)는 보로노이 다이어그램을 적용한 보로노이 셀 중에서 상기 질의영역에 포함되는 제1 이웃 보로노이 셀을 식별하고, 상기 식별된 제1 이웃 보로노이 셀을 이용하여 POI 후보 집합을 탐색한다.
보로노이 다이어그램(voronoi diagram)은 공간 상에 많은 정점들이 있을 때 각각의 정점에서의 같은 거리에 떨어진 지점들을 기준으로 공간을 분할하는 방법을 의미하는 것이다. 이러한 네트워크 보로노이 다이어그램을 기반으로 한 최근접점 검색 알고리즘은 도로상의 임의의 지점으로부터 가장 인접한 k개의 POI를 검색하기 위한 최근접점 질의(nearest neighbor query)를 위하여 개발되었다.
도 2는 본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 시스템에서 보로노이 셀을 생성하는 일례를 도시한 도면이다.
도시한 바와 같이, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템(100)은 유클리디언 상의 POI를 보로노이 다이어그램을 적용하여 26개의 보로노 이 셀을 생성한다. 여기서, 각 보로노이 셀은 각 한 개의 POI(Point Of Interest)를 포함한다. 보로노이 셀의 경계는 POI 간의 거리가 같은 지점을 지나는 선분이 된다. 또한, 본 발명에서 사용하는 보로노이 다이어그램은 경계선의 좌표정보를 저장할 수 있다.
저장 테이블(150)은 보로노이 다이어그램을 적용한 보로노이 셀에 포함된 POI 정보를 저장한다.
도 3은 본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 시스템에 포함된 저장 테이블의 일례를 도시한 도면이다.
도시한 바와 같이, 저장 테이블(150)은 상기 생성한 보로노이 셀에 포함된 POI 정보로서, POI ID, POI 좌표, 보더 수(Border number), 보더 좌표 리스트(Border 좌표 list), 이웃 POI 수(Adjacent POI number), 및 이웃 POI ID 리스트(POI ID list)를 포함한다.
구체적으로, POI ID는 각 보로노이 셀에 포함된 POI를 식별하는 식별자이다. POI 좌표는 POI가 위치하는 좌표정보이다. 보더 수는 POI가 포함된 보로노이 셀과 경계선이 이웃한 보로노이 셀의 개수이다. 보더 좌표 리스트는 POI가 포함된 보로노이 셀의 경계선에 대한 좌표정보이다. 이웃 POI 수는 POI가 포함된 보로노이 셀과 경계선이 이웃한 POI 개수로서, 보더 수와 동일하다. 이웃 POI ID 리스트는 이웃 POI들에 대한 ID이다.
도 4는 본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 시스템에서 질의영역을 설정하는 일례를 도시한 도면이다.
도시한 바와 같이, 설정부(110)는 26개로 구분된 보로노이 셀 내에서 질의영역을 좌표정보 ((45,35), (65, 55))로서 설정할 수 있다. 실시예로, 설정부(110)는 상기 사용자로부터 탐색할 POI 개수를 수신할 수 있으며, 여기서 POI 개수를 'k'로 해석할 수 있다.
탐색부(120)는 저장 테이블(150)을 참고하여, 상기 질의영역과 겹쳐지는 제1 이웃 보로노이 셀을 식별할 수 있다. 도 4에서 보면, 질의영역(Cloaking Area)에 포함되는 보로노이 셀은 POI ID가 8, 10, 13, 14, 18, 19임을 알 수 있다.
이하에서는, 표 1 내지 표 14를 참고하여 설명한다.
탐색부(120)는 POI ID가 8, 10, 13, 14, 18, 19인 보로노이 셀을 제1 이웃 보로노이 셀로서 식별한다.
산출부(140)는 상기 제1 이웃 보로노이 셀과 상기 질의영역 간의 최대거리(Maximum Distance)를 산출한다. 또한, 산출부(140)는 상기 제1 이웃 보로노이 셀과 상기 질의영역 간의 최소거리(Minimum Distance)를 산출할 수 있다.
탐색부(120)는 상기 산출된 최대거리를 기준으로 오름차순 정렬하여, 제1 이웃 보로노이 셀 및 제1 이웃 보로노이 셀에 대한 최소거리(MinDist) 및 최대거리(MaxDist)를 'CandHeap'에 저장한다. 탐색부(120)는 상기 제1 이웃 보로노이 셀에 인접한 다른 보로노이 셀들을 제2 이웃 보로노이 셀로서 탐색할 수 있다.
산출부(140)는 상기 제2 이웃 보로노이 셀과 상기 질의영역 간의 최소거리 및 최대거리를 산출할 수 있다. 탐색부(120)는 상기 산출된 최소거리를 기준으로 오름차순 정렬하여, 제2 이웃 보로노이 셀 및 제2 이웃 보로노이 셀에 대한 최소거 리 및 최대거리를 'AdjHeap'에 저장한다.
'CandHeap'에 저장된 제1 이웃 보로노이 셀과 'AdjHeap'에 저장된 제2 이웃 보로노이 셀은 '표 1'에 나타낸 바와 같다.
Figure 112009036401209-PAT00001
실시예로, 탐색부(120)는 'CandHeap'에 저장된 제1 이웃 보로노이 셀 중, 최대거리가 k번째인 최대거리를 이용하여 상기 제1 이웃 보로노이 셀에 인접한 제2 이웃 보로노이 셀을 탐색할 수 있다. 여기서, k는 상기 사용자로부터 수신된 POI 개수일 수 있으며, 이하에서는 'k=3'으로 가정하여 설명한다.
표 1에서 도시한 바와 같이, 'CandHeap'에 저장된 제1 이웃 보로노이 셀 중, 최대거리가 첫번째에서 3(k=3)번째인 최대거리는 'dmax'로 '31.62'이다. 이에 따라, 탐색부(120)는 'AdjHeap'에 저장된 제2 이웃 보로노이 셀 중, '31.62' 보다 작거나 같은 최소거리를 가지는 제2 이웃 보로노이 셀을 상기 제1 이웃 보로노이 셀에 포함시킬 수 있다.
(1) POI ID '9' 확장
표 1을 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 9'인 제2 이웃 보로노이 셀의 최소거리 '7.07'을 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(7.07)가 최대거리(31.62)보다 작기 때문에, 탐색부(120)는 'POI ID 9'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 상기 제1 이웃 보로노이 셀에 포함시킨 'POI ID 9'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 4, 10, 11, 12, 13을 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀 중, 'POI ID 11'인 보로노이 셀을 제외하고, POI ID가 4, 10, 12, 13인 보로노이 셀은 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'POI ID 11'인 보로노이 셀을 제2 이웃 보로노이 셀로서 'AdjHeap'에 포함시킬 수 있다. 이 경우, 산출부(140)는 'POI ID 11'인 제2 이웃 보로노이 셀과 질의영역 간의 최소거리 및 최대거리를 산출하고, 탐색부(120)는 산출된 최소거리 및 최대거리를 'AdjHeap'에 저장할 수 있다.
이렇게, 'CandHeap'에 저장된 제1 이웃 보로노이 셀과 'AdjHeap'에 저장된 제2 이웃 보로노이 셀은 '표 2'에 나타낸 바와 같다.
Figure 112009036401209-PAT00002
(2) POI ID '12' 확장
표 2를 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 12'인 제2 이웃 보로노이 셀의 최소거리 '15'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(15)가 최대거리(31.62)보다 작기 때문에, 탐색부(120)는 'POI ID 12'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 'POI ID 12'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 9, 11, 13, 19, 20을 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀 9, 11, 13, 19, 20이 모두 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'AdjHeap'에 아무런 보로노이 셀도 추가하지 않는다.
이렇게, 'POI ID 12'인 보로노이 셀까지 확장한 경우의 'CandHeap', 'AdjHeap' 구조는 '표 3'에 나타낸 바와 같다.
Figure 112009036401209-PAT00003
(3) POI ID '24' 확장
표 3을 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 24'인 제2 이웃 보로노이 셀의 최소거리 '15'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(15)가 최대거리(31.62)보다 작기 때문에, 탐색부(120)는 'POI ID 24'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 'POI ID 24'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 18, 19, 23, 25, 26을 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀 중, 'POI ID 25'인 보로노이 셀을 제외하고, POI ID가 18, 19, 23, 26인 보로노이 셀은 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'POI ID 25'인 보로노이 셀을 제2 이웃 보로노이 셀로서 'AdjHeap'에 포함시킬 수 있다. 이 경우, 산출부(140)는 'POI ID 25'인 제2 이웃 보로노이 셀과 질의영역 간의 최소거리 및 최대거리를 산출하고, 탐색부(120)는 산출된 최소거리 및 최대거리를 'AdjHeap'에 저장할 수 있다.
이렇게, 'POI ID 24'인 보로노이 셀까지 확장한 경우의 'CandHeap', 'AdjHeap' 구조는 '표 4'에 나타낸 바와 같다.
Figure 112009036401209-PAT00004
(4) POI ID '7' 확장
표 4를 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 7'인 제2 이웃 보로노이 셀의 최소거리 '15.8'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(15.8)가 최대거리(31.62)보다 작기 때문에, 탐색부(120)는 'POI ID 7'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 'POI ID 7'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 5, 6, 8, 14, 15을 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀 중, 'POI ID 6'인 보로노이 셀을 제외하고, POI ID가 5, 8, 14, 15인 보로노이 셀은 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'POI ID 6'인 보로노이 셀을 제2 이웃 보로노이 셀로서 'AdjHeap'에 포함시킬 수 있다. 이 경우, 산출부(140)는 'POI ID 6'인 제2 이웃 보로노이 셀과 질의영역 간의 최소거리 및 최대거리를 산출하고, 탐색부(120)는 산출된 최소거리 및 최대거리를 'AdjHeap'에 저장할 수 있다.
이렇게, 'POI ID 7'인 보로노이 셀까지 확장한 경우의 'CandHeap', 'AdjHeap' 구조는 '표 5'에 나타낸 바와 같다.
Figure 112009036401209-PAT00005
(5) POI ID '17' 확장
표 5를 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 17'인 제2 이웃 보로노이 셀의 최소거리 '21.21'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(21.21)가 최대거리(31.62)보다 작기 때문에, 탐색부(120)는 'POI ID 17'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 'POI ID 17'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 15, 16, 18, 26을 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀 중, 'POI ID 16'인 보로노이 셀을 제외하고, POI ID가 15, 18, 26인 보로노이 셀은 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'POI ID 16'인 보로노이 셀을 제2 이웃 보로노이 셀로서 'AdjHeap'에 포함시킬 수 있다. 이 경우, 산출부(140)는 'POI ID 16'인 제2 이웃 보로노이 셀과 질의영역 간의 최소거리 및 최대거리를 산출하고, 탐색부(120)는 산출된 최소거리 및 최대거리를 'AdjHeap'에 저장할 수 있다.
이렇게, 'POI ID 17'인 보로노이 셀까지 확장한 경우의 'CandHeap', 'AdjHeap' 구조는 '표 6'에 나타낸 바와 같다.
Figure 112009036401209-PAT00006
(6) POI ID '15' 확장
표 6을 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 15'인 제2 이웃 보로노이 셀의 최소거리 '25'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(25)가 최대거리(31.62)보다 작기 때문에, 탐색부(120)는 'POI ID 15'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 'POI ID 15'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 7, 14, 16, 17, 18을 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀, POI ID가 7, 14, 16, 17, 18은 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'AdjHeap'에 아무런 보로노이 셀도 추가하지 않는다.
이렇게, 'POI ID 15'인 보로노이 셀까지 확장한 경우의 'CandHeap', 'AdjHeap' 구조는 '표 7'에 나타낸 바와 같다.
Figure 112009036401209-PAT00007
(7) POI ID '26' 확장
표 7을 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 26'인 제2 이웃 보로노이 셀의 최소거리 '25'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(25)가 최대거리(31.62)보다 작기 때문에, 탐색부(120)는 'POI ID 26'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 'POI ID 26'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 16, 17, 18, 24, 25를 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀, POI ID가 16, 17, 18, 24, 25은 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'AdjHeap'에 아무런 보로노이 셀도 추가하지 않는다.
이렇게, 'POI ID 26'인 보로노이 셀까지 확장한 경우의 'CandHeap', 'AdjHeap' 구조는 '표 8'에 나타낸 바와 같다.
Figure 112009036401209-PAT00008
(8) POI ID '20' 확장
표 8을 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 20'인 제2 이웃 보로노이 셀의 최소거리 '25.49'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(25.49)가 최대거리(31.62)보다 작기 때문에, 탐색부(120)는 'POI ID 20'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 'POI ID 20'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 11, 12, 19, 21, 23을 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀 중, 'POI ID 21'인 보로노이 셀을 제외하고, POI ID가 11, 12, 19, 23인 보로노이 셀은 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'POI ID 21'인 보로노이 셀을 제2 이웃 보로노이 셀로서 'AdjHeap'에 포함시킬 수 있다. 이 경우, 산출부(140)는 'POI ID 21'인 제2 이웃 보로노이 셀과 질의영역 간의 최소거리 및 최대거리를 산출하고, 탐색부(120)는 산출된 최소거리 및 최대거리를 'AdjHeap'에 저장할 수 있다.
이렇게, 'POI ID 20'인 보로노이 셀까지 확장한 경우의 'CandHeap', 'AdjHeap' 구조는 '표 9'에 나타낸 바와 같다.
Figure 112009036401209-PAT00009
(9) POI ID '23' 확장
표 9를 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 23'인 제2 이웃 보로노이 셀의 최소거리 '28.28'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(28.28)가 최대거리(31.62)보다 작기 때문에, 탐색부(120)는 'POI ID 23'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 'POI ID 23'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 19, 20, 21, 22, 24, 25를 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀 중, 'POI ID 22'인 보로노이 셀을 제외하고, POI ID가 19, 20, 21, 24, 25인 보로노이 셀은 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'POI ID 22'인 보로노이 셀을 제2 이웃 보로노이 셀로서 'AdjHeap'에 포함시킬 수 있다. 이 경우, 산출부(140)는 'POI ID 22'인 제2 이웃 보로노이 셀과 질의영역 간의 최소거리 및 최대거리를 산출하고, 탐색부(120)는 산출된 최소거리 및 최대거리를 'AdjHeap'에 저장할 수 있다.
이렇게, 'POI ID 23'인 보로노이 셀까지 확장한 경우의 'CandHeap', 'AdjHeap' 구조는 '표 10'에 나타낸 바와 같다.
Figure 112009036401209-PAT00010
(10) POI ID '25' 확장
표 10을 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 25'인 제2 이웃 보로노이 셀의 최소거리 '30'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(30)가 최대거리(31.62)보다 작기 때문에, 탐색부(120)는 'POI ID 25'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 'POI ID 25'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 23, 24, 26을 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀, POI ID가 23, 24, 26은 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'AdjHeap'에 아무런 보로노이 셀도 추가하지 않는다.
이렇게, 'POI ID 25'인 보로노이 셀까지 확장한 경우의 'CandHeap', 'AdjHeap' 구조는 '표 11'에 나타낸 바와 같다.
Figure 112009036401209-PAT00011
(11) POI ID '11' 확장
표 11을 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 11'인 제2 이웃 보로노이 셀의 최소거리 '30'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(30)가 최대거리(31.62)보다 작기 때문에, 탐색부(120)는 'POI ID 11'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 'POI ID 11'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 3, 4, 9, 12, 20, 21를 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀 중, 'POI ID 3'인 보로노이 셀을 제외하고, POI ID가 4, 9, 12, 20, 21인 보로노이 셀은 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'POI ID 3'인 보로노이 셀을 제2 이웃 보로노이 셀로서 'AdjHeap'에 포함시킬 수 있다. 이 경우, 산출부(140)는 'POI ID 3'인 제2 이웃 보로노이 셀과 질의영역 간의 최소거리 및 최대거리를 산출하고, 탐색부(120)는 산출된 최소거리 및 최대거리를 'AdjHeap'에 저장할 수 있다.
이렇게, 'POI ID 11'인 보로노이 셀까지 확장한 경우의 'CandHeap', 'AdjHeap' 구조는 '표 12'에 나타낸 바와 같다.
Figure 112009036401209-PAT00012
(12) POI ID '5' 확장
표 12를 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 5'인 제2 이웃 보로노이 셀의 최소거리 '30.41'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(30.41)가 최대거리(31.62)보다 작기 때문에, 탐색부(120)는 'POI ID 5'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 'POI ID 5'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 2, 6, 7, 8를 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀 중, POI ID가 2, 6, 7, 8인 보로노이 셀은 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'AdjHeap'에 아무런 보로노이 셀도 추가하지 않는다.
이렇게, 'POI ID 5'인 보로노이 셀까지 확장한 경우의 'CandHeap', 'AdjHeap' 구조는 '표 13'에 나타낸 바와 같다.
Figure 112009036401209-PAT00013
(13) POI ID '4' 확장
표 13을 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 4'인 제2 이웃 보로노이 셀의 최소거리 '31.62'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(31.62)가 최대거리(31.62)와 같기 때문에, 탐색부(120)는 'POI ID 4'인 제2 이웃 보로노이 셀을 제1 이웃 보로노이 셀로서 'CandHeap'에 포함시킬 수 있다.
또한, 탐색부(120)는 'POI ID 4'인 제2 이웃 보로노이 셀과 인접한 보로노이 셀, POI ID가 1, 2, 3, 8, 9, 10, 11를 탐색한다. 탐색부(120)는 상기 탐색된 보로노이 셀 중, 'POI ID 1'인 보로노이 셀을 제외하고, POI ID가 2, 3, 8, 9, 10, 11인 보로노이 셀은 이미 'CandHeap' 또는 'AdjHeap'에 포함되어 있기 때문에, 'POI ID 1'인 보로노이 셀을 제2 이웃 보로노이 셀로 'AdjHeap'에 포함시킬 수 있다. 이 경우, 산출부(140)는 'POI ID 1'인 제2 이웃 보로노이 셀과 질의영역 간의 최소거리 및 최대거리를 산출하고, 산출된 최소거리 및 최대거리를 'AdjHeap'에 저장할 수 있다.
이렇게, 'POI ID 4'인 보로노이 셀까지 확장한 경우의 'CandHeap', 'AdjHeap' 구조는 '표 14'에 나타낸 바와 같다.
Figure 112009036401209-PAT00014
표 14를 참고하면, 탐색부(120)는 'AdjHeap'에 첫번째로 저장된 'POI ID 21'인 제2 이웃 보로노이 셀의 최소거리 '36.4'를 최대거리(dmax)와 비교할 수 있다. 비교결과, 최소거리(36.4)가 최대거리(31.62) 보다 크기 때문에, 탐색부(120)는 'POI ID 21' 이후의 'AdjHeap'에 포함된 제2 이웃 보로노이 셀을 가지치기할 수 있다. 따라서, '표 14'에 나타낸 바와 같이, 최종결과로서 탐색된 제1 이웃 보로노이 셀은 'CandHeap'에 포함된 POI ID가 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 23, 24, 25, 26이다.
탐색부(120)는 상기 제1 이웃 보로노이 셀에 포함된 POI를 상기 POI 후보 집합에 포함시킬 수 있다.
제공부(130)는 상기 탐색된 POI 후보 집합을 상기 사용자에게 제공한다.
도 5는 본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 시스템에서 POI 후보 집합을 제공하는 일례를 도시한 도면이다.
도시한 바와 같이, 제공부(130)는 POI ID가 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 23, 24, 25, 26인 POI 후보 집합을 사용자에게 제공할 수 있다.
도 6은 본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 방법의 순서를 도시한 흐름도이다.
상기 보로노이 다이어그램을 이용한 최근접점 탐색 방법은 본 발명의 보로노이 다이어그램을 이용한 최근접점 탐색 시스템(100)에 의해 구현될 수 있다. 따라서, 도 6의 설명에서는 상술한 도 1을 함께 참조하여 설명함으로써, 발명의 이해를 도모한다.
단계 610에서, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템(100)은 사용자로부터 요청된 질의지점을 포함하는 질의영역을 설정한다. 실시예로, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템(100)은 클로킹 알고리즘을 이용하여 상기 질의지점을 포함하는 질의영역을 설정할 수 있다. 또한, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템(100)은 상기 사용자로부터 탐색할 POI 개수를 수신할 수 있다.
단계 620에서, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템(100)은 보로노이 다이어그램을 적용한 보로노이 셀 중에서 상기 질의영역에 포함되는 제1 이웃 보로노이 셀을 식별한다. 상기 제1 이웃 보로노이 셀은 상기 질의영역에 겹쳐지는 보로노이 셀로서, 도 4를 참고하면, POI ID가 8, 10, 13, 14, 18, 19인 보로노이 셀이다.
단계 630에서, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템(100)은 상기 식별된 제1 이웃 보로노이 셀을 이용하여 POI 후보 집합을 탐색한다. 이를 위해, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템(100)은 상기 제1 이웃 보로노이 셀과 상기 질의영역 간의 최대거리를 산출하고, 최대거리 순으로 오름차순 정렬된 제1 이웃 보로노이 셀 중, k번째인 최대거리를 이용하여 상기 제1 이웃 보로노이 셀과 인접한 제2 이웃 보로노이 셀을 탐색한다. 여기서, k는 상기 사용자로부터 수신된 POI 개수일 수 있다.
실시예로, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템(100)은 상기 질의영역과 상기 제2 이웃 보로노이 셀 간의 최소거리를 산출하고, 상기 k번째 최대거리보다 작거나 같은 최소거리를 가지는 제2 이웃 보로노이 셀을 상기 제1 이웃 보로노이 셀에 포함시킬 수 있다. 보로노이 다이어그램을 이용한 최근접점 탐색 시스템(100)은 상기와 같은 프로세스를 반복적으로 수행함으로써, 보로노이 셀을 확장하고, 최종적으로 도 5와 같은 제1 이웃 보로노이 셀을 탐색할 수 있다.
단계 640에서, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템(100)은 상기 탐색된 제1 이웃 보로노이 셀에 포함된 POI 후보 집합을 상기 사용자에게 제공한다.
또한, 본 발명의 실시예들은 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터 판독 가능 매체를 포함한다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
지금까지 본 발명에 따른 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서는 여러 가지 변형이 가능함은 물론이다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
도 1은 본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 시스템의 구성을 도시한 블록도이다.
도 2는 본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 시스템에서 보로노이 셀을 생성하는 일례를 도시한 도면이다.
도 3은 본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 시스템에 포함된 저장 테이블의 일례를 도시한 도면이다.
도 4는 본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 시스템에서 질의영역을 설정하는 일례를 도시한 도면이다.
도 5는 본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 시스템에서 POI 후보 집합을 제공하는 일례를 도시한 도면이다.
도 6은 본 발명의 일실시예에 따른 보로노이 다이어그램을 이용한 최근접점 탐색 방법의 순서를 도시한 흐름도이다.
<도면의 주요 부분에 대한 부호의 설명>
100: 보로노이 다이어그램을 이용한 최근접점 탐색 시스템
110: 설정부
120: 탐색부
130: 제공부
140: 산출부
150: 저장 테이블

Claims (15)

  1. 사용자로부터 요청된 질의지점을 포함하는 질의영역을 설정하는 설정부;
    보로노이 다이어그램을 적용한 보로노이 셀 중에서 상기 질의영역에 포함되는 제1 이웃 보로노이 셀을 식별하고, 상기 식별된 제1 이웃 보로노이 셀을 이용하여 POI 후보 집합을 탐색하는 탐색부; 및
    상기 탐색된 POI 후보 집합을 상기 사용자에게 제공하는 제공부
    를 포함하는 보로노이 다이어그램을 이용한 최근접점 탐색 시스템.
  2. 제1항에 있어서,
    상기 설정부는,
    클로킹 알고리즘을 이용하여 상기 질의지점을 포함하는 질의영역을 설정하는, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템.
  3. 제1항에 있어서,
    보로노이 다이어그램을 적용한 보로노이 셀에 포함된 POI 정보를 저장하는 저장 테이블
    을 더 포함하고,
    상기 탐색부는,
    상기 저장 테이블을 참조하여 상기 질의영역에 포함되는 제1 이웃 보로노이 셀을 식별하는, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템.
  4. 제1항에 있어서,
    상기 제1 이웃 보로노이 셀과 상기 질의영역 간의 최대거리를 산출하는 산출부
    를 더 포함하고,
    상기 탐색부는,
    상기 산출된 최대거리를 이용하여 상기 제1 이웃 보로노이 셀에 인접한 제2 이웃 보로노이 셀을 탐색하는, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템.
  5. 제4항에 있어서,
    상기 탐색부는,
    상기 산출된 최대거리를 기준으로 오름차순 정렬하고, 정렬된 제1 이웃 보로노이 셀 중 첫번째에서 k(k는 1보다 큰 자연수)번째 최대거리를 이용하여 상기 제1 이웃 보로노이 셀에 인접한 제2 이웃 보로노이 셀을 탐색하는, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템.
  6. 제4항에 있어서,
    상기 설정부는,
    상기 사용자로부터 탐색할 POI 개수를 수신하고, 상기 수신된 POI 개수를 'k'로 설정하고,
    상기 탐색부는,
    상기 산출된 최대거리 중에서 상기 k번째 최대거리를 이용하여 상기 제1 이웃 보로노이 셀에 인접한 제2 이웃 보로노이 셀을 탐색하는, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템.
  7. 제4항에 있어서,
    상기 산출부는,
    상기 질의영역과 상기 탐색한 제2 이웃 보로노이 셀 간의 최소거리를 산출하고,
    상기 탐색부는,
    상기 산출된 최대거리 중에서 k 번째 최대거리 보다 작거나 같은 최소거리를 가지는 제2 이웃 보로노이 셀을 상기 제1 이웃 보로노이 셀에 포함시키는, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템.
  8. 제1항에 있어서,
    상기 탐색부는,
    상기 식별된 제1 이웃 보로노이 셀에 포함된 POI를 상기 POI 후보 집합에 포함시키는, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템.
  9. 제1항에 있어서,
    상기 제1 이웃 보로노이 셀과 상기 질의영역 간의 최대거리를 산출하고, 상기 질의영역과 상기 탐색한 제2 이웃 보로노이 셀 간의 최소거리를 산출하는 산출부
    를 더 포함하고,
    상기 탐색부는,
    상기 보로노이 다이어그램을 적용한 보로노이 셀 중에서, 상기 산출된 최대거리 중에서 k 번째 최대거리 보다 작거나 같은 최소거리를 가지는 제2 이웃 보로노이 셀에 인접한 보로노이 셀을 상기 제2 이웃 보노노이 셀에 포함시키는, 보로노이 다이어그램을 이용한 최근접점 탐색 시스템.
  10. 사용자로부터 요청된 질의지점을 포함하는 질의영역을 설정하는 단계;
    보로노이 다이어그램을 적용한 보로노이 셀 중에서 상기 질의영역에 포함되는 제1 이웃 보로노이 셀을 식별하는 단계;
    상기 식별된 제1 이웃 보로노이 셀을 이용하여 POI 후보 집합을 탐색하는 단계; 및
    상기 탐색된 POI 후보 집합을 상기 사용자에게 제공하는 단계
    를 포함하는 보로노이 다이어그램을 이용한 최근접점 탐색 방법.
  11. 제10항에 있어서,
    보로노이 다이어그램을 적용한 보로노이 셀에 포함된 POI 정보를 저장 테이블에 저장하는 단계
    를 더 포함하고,
    상기 질의영역에 포함되는 제1 이웃 보로노이 셀을 식별하는 단계는,
    상기 저장 테이블을 참조하여 상기 질의영역에 포함되는 제1 이웃 보로노이 셀을 식별하는 단계
    를 포함하는 보로노이 다이어그램을 이용한 최근접점 탐색 방법.
  12. 제10항에 있어서,
    상기 제1 이웃 보로노이 셀과 상기 질의영역 간의 최대거리를 산출하는 단계
    를 더 포함하고,
    상기 식별된 제1 이웃 보로노이 셀을 이용하여 POI 후보 집합을 탐색하는 단계는,
    상기 산출된 최대거리를 이용하여 상기 제1 이웃 보로노이 셀에 인접한 제2 이웃 보로노이 셀을 탐색하는 단계
    를 포함하는 보로노이 다이어그램을 이용한 최근접점 탐색 방법.
  13. 제12항에 있어서,
    상기 제1 이웃 보로노이 셀에 인접한 제2 이웃 보로노이 셀을 탐색하는 단계는,
    상기 산출된 최대거리를 기준으로 오름차순 정렬하는 단계; 및
    상기 정렬된 제1 이웃 보로노이 셀 중 첫번째에서 k(k는 1보다 큰 자연수)번째 최대거리를 이용하여 상기 제1 이웃 보로노이 셀에 인접한 제2 이웃 보로노이 셀을 탐색하는 단계
    를 포함하는 보로노이 다이어그램을 이용한 최근접점 탐색 방법.
  14. 제10항에 있어서,
    상기 제1 이웃 보로노이 셀과 상기 질의영역 간의 최대거리를 산출하는 단계; 및
    상기 질의영역과 상기 탐색한 제2 이웃 보로노이 셀 간의 최소거리를 산출하는 단계
    를 더 포함하고,
    상기 식별된 제1 이웃 보로노이 셀을 이용하여 POI 후보 집합을 탐색하는 단계는,
    상기 산출된 최대거리 중에서 k 번째 최대거리 보다 작거나 같은 최소거리를 가지는 제2 이웃 보로노이 셀을 상기 제1 이웃 보로노이 셀에 포함시키는 단계; 및
    상기 제1 이웃 보로노이 셀에 포함된 POI를 상기 POI 후보 집합에 포함시키 는 단계
    를 포함하는 보로노이 다이어그램을 이용한 최근접점 탐색 방법.
  15. 제14항에 있어서,
    상기 식별된 제1 이웃 보로노이 셀을 이용하여 POI 후보 집합을 탐색하는 단계는,
    상기 보로노이 다이어그램을 적용한 보로노이 셀 중에서, 상기 산출된 최대거리 중에서 k 번째 최대거리 보다 작거나 같은 최소거리를 가지는 제2 이웃 보로노이 셀에 인접한 보로노이 셀을 상기 제2 이웃 보노노이 셀에 포함시키는 단계
    를 포함하는 보로노이 다이어그램을 이용한 최근접점 탐색 방법.
KR1020090053502A 2009-06-16 2009-06-16 보로노이 다이어그램을 이용한 최근접점 탐색 방법 및 시스템 KR101097656B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090053502A KR101097656B1 (ko) 2009-06-16 2009-06-16 보로노이 다이어그램을 이용한 최근접점 탐색 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090053502A KR101097656B1 (ko) 2009-06-16 2009-06-16 보로노이 다이어그램을 이용한 최근접점 탐색 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20100135056A true KR20100135056A (ko) 2010-12-24
KR101097656B1 KR101097656B1 (ko) 2011-12-22

Family

ID=43509675

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090053502A KR101097656B1 (ko) 2009-06-16 2009-06-16 보로노이 다이어그램을 이용한 최근접점 탐색 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101097656B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101420237B1 (ko) * 2008-02-25 2014-07-17 삼성전자주식회사 이웃 포인트의 탐색이 용이한 3d 영상 처리 방법
CN104679765A (zh) * 2013-11-28 2015-06-03 高德软件有限公司 区域范围确定方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101420237B1 (ko) * 2008-02-25 2014-07-17 삼성전자주식회사 이웃 포인트의 탐색이 용이한 3d 영상 처리 방법
CN104679765A (zh) * 2013-11-28 2015-06-03 高德软件有限公司 区域范围确定方法及装置
CN104679765B (zh) * 2013-11-28 2019-07-23 高德软件有限公司 区域范围确定方法及装置

Also Published As

Publication number Publication date
KR101097656B1 (ko) 2011-12-22

Similar Documents

Publication Publication Date Title
KR100906313B1 (ko) 보로노이 다이어그램을 기반으로 한 최근접점 탐색 방법 및그 시스템
US9778048B2 (en) Method and apparatus for determining reachable area based on road network
US20130132369A1 (en) Batched shortest path computation
CN103808326A (zh) 导航方法和导航系统
KR20160010278A (ko) 관심 지점을 표시하기 위한 방법 및 장치
KR20100068468A (ko) 그리드 기반 피처 구조를 이용한 비주얼 서치 수행의 방법, 장치 및 컴퓨터 프로그램 제품
KR101691033B1 (ko) 휴대용 단말기에서 컨텐츠 태깅 방법 및 장치
JP6375443B2 (ja) セル情報を利用した位置情報決定システムおよび方法
US20170308560A1 (en) Location Searching with Category Indices
US20230409611A1 (en) Improving Offline Map Data Availability
US20150074583A1 (en) Method and device for correcting map view
CN106855878B (zh) 基于电子地图的历史行车轨迹显示方法和装置
JP6160399B2 (ja) 行先情報提供プログラム、行先情報提供装置および行先情報提供方法
KR101025360B1 (ko) 도로 네트워크 상에서 k-최근접 이웃 검색을 위한 최단 경로 탐색 방법 및 장치
Huang et al. Frequent pattern-based map-matching on low sampling rate trajectories
KR101097656B1 (ko) 보로노이 다이어그램을 이용한 최근접점 탐색 방법 및 시스템
US11280623B2 (en) Predictive intersection search
CN105119743A (zh) 用户行为意图的获取方法及装置
JP2004325083A (ja) 経路決定装置、経路決定方法および経路決定プログラム
JP5132694B2 (ja) データ生成装置、データ生成方法及び経路探索装置
CN102589563B (zh) 信息处理的方法和装置
KR100556688B1 (ko) 이동 통신 단말기에 지도 정보를 제공하는 방법 및 시스템
CN111339224A (zh) 兴趣点搜索方法、装置、设备及存储介质
KR101718146B1 (ko) 사용자 방문 장소 제공 시스템 및 방법
KR100917768B1 (ko) 공간 질의의 검색 영역 확장 방법 및 상기 방법을 수행하기위한 시스템

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20141217

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151124

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee