KR101516631B1 - 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법 - Google Patents

모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법 Download PDF

Info

Publication number
KR101516631B1
KR101516631B1 KR1020130059525A KR20130059525A KR101516631B1 KR 101516631 B1 KR101516631 B1 KR 101516631B1 KR 1020130059525 A KR1020130059525 A KR 1020130059525A KR 20130059525 A KR20130059525 A KR 20130059525A KR 101516631 B1 KR101516631 B1 KR 101516631B1
Authority
KR
South Korea
Prior art keywords
objects
spatial
skyline
visibility
query
Prior art date
Application number
KR1020130059525A
Other languages
English (en)
Other versions
KR20140139646A (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 KR1020130059525A priority Critical patent/KR101516631B1/ko
Publication of KR20140139646A publication Critical patent/KR20140139646A/ko
Application granted granted Critical
Publication of KR101516631B1 publication Critical patent/KR101516631B1/ko

Links

Images

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Remote Sensing (AREA)

Abstract

본 발명은 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법에 관한 것으로, 사용자의 위치에서 직접 보이거나 사용자가 접근이 가능한 공간객체를 탐색하는 (a) 단계; 및 사용자의 최우선 관심대상인 1-level에서부터 n-level까지 가시권 이웃을 탐색하는 (b) 단계;를 포함한다.
상기와 같은 본 발명에 따르면, 가시권 객체만을 처리하는 것이 아니라, 다중 속성에 대한 질의에서 가시권 이웃을 객체를 탐색하여 스카이라인의 비교 대상을 필터링 함으로써, 가시권 객체의 탐색 성능을 향상시키고, 사용자의 요구에 최적화된 가시권 객체를 제공하는 효과가 있다.

Description

모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법{VISIBLE NEIGHBOR QUERY FOR SPATIAL SKYLINE IN MOBILE ENVIRONMENT}
본 발명은 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법에 관한 것으로 더욱 상세하게는, 다른 객체에 의해 일부분만 가려진 객체를 포함하여 가시권 이웃객체를 모두 탐색할 수 있는 기술에 관한 것이다.
최근 몇 년 동안 급격하게 발전해온 모바일 환경은 위치정보(local information)를 이용한 지도서비스, 증강현실, 길 찾기, 가까운 식당 찾기 등의 다양한 서비스를 제공하면서 새로운 흥미와 비즈니스 모델을 실현하고 있다.
위치기반서비스(LBS, location-based service)는 사용자의 질의(query)에 따라 위치 정보를 제공하는데, 도 1에 도시된 바와 같이 공간객체(병원, 호텔, 택시 등)의 지리적 위치인 공간 데이터(spatial data)를 관리하기 위해 R-tree를 사용한다.
R-tree는 공간객체를 MBR(minimum bounding rectangle, 사각형)로 추정(approximation)하여 두 점으로 관리하는 공간색인(sptial index)이다. 즉, 공간색인은 2차원 데이터인 위치정보를 색인화하여 데이터에 대한 탐색, 삽입, 삭제 및 갱신을 지원한다.
종래의 위치기반서비스는 사용자에게 위치적인 거리를 중심으로 공간객체에 대한 위치정보를 전송해 왔지만, 실생활에서 사용자는 다양한 속성의 데이터를 기반으로 의사결정을 하게 된다. 따라서, 데이터베이스 분야에서는 사용자가 다중값 속성을 이용하여 보다 효율적인 의사결정을 할 수 있도록 수년간 스카이라인 질의(skyline query) 기법을 연구해왔다.
이는 도 1의 그래프에서와 같이 거리(distance)와 가격(price)이라는 다중값 속성에 대한 최적의 해를 탐색하는 것으로 현재에도 다양한 분야에서 연구되고 있는 기법이다.
스카이라인 질의의 다음과 같이 수행된다. 모바일 사용자가 자신의 위치에서 가까운 거리에 있는 저렴한 호텔을 찾기 위해 질의를 보내면, 서버가 공간색인(R-tree)에서 조건을 맞는 공간 데이터를 탐색하되, 스카이라인 질의에 가격과 함RP 적용되어 두 가지 조건을 만족하는 객체를 찾는 연산을 수행한다.
이때, 도 1의 객체 a와 같이 사분면을 나누어 자신보다 더 좋은 조건의 객체가 3사분면에 존재하면 그것을 중심으로 재차 사분면을 분할하면서 최종객체를 찾아간다. 1사분면의 객체들은 a보다 나쁜 조건이므로 제거되며, 2사분면과 4사분면은 재평가된다. 이와 같이 조건에 맞지 않는 공간객체들이각 사분면을 중심으로 제거되기 때문에 빠른 탐색이 가능하다.
또한, 그래프와 같이 c가 선택된 경우 c를 지배객체, 1사분면의 a, b, d는 피지배객체로 정의하고 이 세 객체는 스카이라인 질의결과에 의해 제거된다.
(1) 공간 데이터 기반의 종래 스카이라인 질의의 단점
질의 점에서 가장 가까운 공간객체를 탐색하는 질의는 최근접이웃질의(NN, nearest neighbor query)이다. 최근접이웃질의는 질의 점으로부터 공간객체의 MBR까지의 거리를 MINDIST로 계산하여 가까운 객체를 탐색한다.
MINDIST는 도 2에 도시된 바와 같이, 질의 점으로부터 MBR과 만나는 가까운 면의 좌표 중 가장 가까운 최소가능거리(minimum possible distance)를 의미한다. 즉, 도 2의 질의 점 q에서
Figure 112013046425863-pat00001
까지의 거리이다.
NN 질의를 사용하여 데이터베이스에서 모든 공간객체의 거리를 계산하는 것은 I/O와 CPU 비용이 매우 높다. 따라서 질의 결과를 제한함으로써 탐색 성능의 향상을 위해 NN을 이용한 k-NN을 도출하는 알고리즘이 연구되었으며, 이는 스카이라인 질의에서도 사용된다.
도 2에서 호텔 객체에 대한 MINDIST를 계산하면 스카이라인 그래프에서 도 3과 같이 나타난다. 여기서, k=3인 경우,
Figure 112013046425863-pat00002
이 되며, k-NN질의를 사용하면 질의 점 주변에서 원하는 k개만큼의 이웃객체를 쉽게 도출할 수 있다. 그러나, 결과에 숨은 객체
Figure 112013046425863-pat00003
이 포함되기 때문에 k-NN은 가시권 이웃(visible neighbor)의 조건을 만족하지 못한다.
<관찰 1> NN질의는 가시권 이웃(visible neighbor)을 탐색할 수 없다.
탐색영역을 R0, 공각객체를 포함한 MBR들을 R1, ... , Rn이라고 상정하면, 이때, Ri는 공간객체 o1, o2, ... , on을 포함한다. 도 2에서 질의 점 q로부터 각 객체의 MBR까지 MINDIST 거리를 계산하면
Figure 112013046425863-pat00004
과 같이 정렬된다.
이때, 결과 집합은 질의 점으로부터 가시권 객체라 할 수 없다. 그 이유는 o7, o2는 각각 o8과 o1의 뒤에 숨은 객체로 가시권에 속하지 않기 때문이다. 즉, 사용자가 직접 접근 가능한 가시권 이웃(VN) 객체는 다음의 [수학식 1]과 같으며, 다른 객체에 의해 가려진 객체는 포함되지 않는다.
Figure 112013046425863-pat00005
<관찰 2> NN으로는 주변 객체에 대한 단계별 가시권 탐색이 불가능하다.
사용자는 주변의 1차 가시권 객체들을 탐색 후 원하는 객체가 없는 경우, 2차 가시권 객체들을 탐색함으로써 탐색영역을 확장할 필요가 있다. NN에서는 거리를 기준으로 정렬하기 때문에 단계별 가시권 탐색을 할 수 없다. 탐색 단계별 객체 집합은
Figure 112013046425863-pat00006
로 나타내며 단계별 탐색결과는 [수학식 2]와 같이 도출된다.
Figure 112013046425863-pat00007
상기 관찰에서 살펴본 문제점들은 k-NN에서도 동일하게 나타난다.
따라서, 본 발명에서는 가시권의 이웃을 탐색하여 스카이라인 질의에 적용하고자 기존 기법의 단점을 해결한 새로운 탐색기법인 <가시권 이웃 스카이라인 질의> 기법을 제안한다.
(2) 본 발명의 차별성
종래의 스카이라인 질의는 도 3에 도시된 <skyline query> 선으로 연결된 객체 o9, o7, o3, o1을 질의 결과로 나타낸다.
그러나, 본 발명에 따른 <가시권 이웃 스카이라인 질의(VN, visible neighbor skyline query)>는 가시권의 객체를 탐색하기 때문에, 도 2의 o2, o7과 같이 숨은(invisible) 객체는 비교 대상이 아니며 질의 결과에도 나타나지 않는다.
즉, 도 3에서 <VN 스카이라인 질의>의 결과는 o9, o3, o1이다. 이는 가시권의 객체만을 나타내기 때문이며 종래의 기법에서 처리되지 못하는 부분을 해결한 것이다.
따라서, 본 발명은 다중 속성에 대한 질의에서 가시권 이웃을 탐색하여 스카이라인의 비교 대상을 줄임에 따라 처리성능을 향상시키고, 사용자에게 중요한 가시권 객체들을 제공한다.
대한민국 공개특허 제2011-0061609호(2011년 06월 09일 공개)
본 발명의 목적은, 가시권 객체만을 처리하는 것이 아니라, 다중 속성에 대한 질의에서 가시권 이웃을 객체를 탐색하여 스카이라인의 비교 대상을 필터링 함으로써, 가시권 객체의 탐색 성능을 향상시키고, 사용자의 요구에 최적화된 가시권 객체를 제공하는데 그 목적이 있다.
이러한 기술적 과제를 달성하기 위한 본 발명에 따른 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법은, 사용자의 위치에서 직접 보이거나 사용자가 접근이 가능한 공간객체를 탐색하는 (a) 단계; 및 사용자의 최우선 관심대상인 1-level에서부터 n-level까지 가시권 이웃을 탐색하는 (b) 단계;를 포함한다.
그리고, (a) 단계 또는 (b) 단계는, 질의 점을 기준으로 공간색인(R-tree)시 루트노드로부터 각 공간객체의 MBR(Minimum Bound Rectangle)까지의 최소거리(mindist)를 계산하여 가시권 탐색에 필요한 각도를 계산하는 (c) 단계; 각 공간객체들 사이의 틈새 각을 찾아 틈새객체를 탐색하는 (d) 단계; 계산된 거리와 각도를 중심으로 각 객체들이 가시권 조건에 포함되는지 확인하면서 가시권 객체집합을 추출하는 (e) 단계; 스카이라인의 객체들이 가격 및 거리에 대한 조건을 만족하면서 다를 객체를 지배(dominate)하는지 또는 다른 객체로부터 지배당하는지를 연산하여 지배객체들을 큐(queue)에 저장하면서 객체의 개수만큼 반복하여 수행하는 (f) 단계; 및 탐색된 지배객체들을 결과 값인 상수로 반환하는 (g) 단계;를 포함한다.
상기 본 발명에 따르면, 가시권 객체만을 처리하는 것이 아니라, 다중 속성에 대한 질의에서 가시권 이웃을 객체를 탐색하여 스카이라인의 비교 대상을 필터링 함으로써, 가시권 객체의 탐색 성능을 향상시키고, 사용자의 요구에 최적화된 가시권 객체를 제공하는 효과가 있다.
도 1은 일반적인 위치기반서비스와 스카이라인 질의를 도시한 예시도.
도 2는 질의영역에 포함된 공간객체와 스카이라인 구성을 도시한 예시도.
도 3은 공간객체의 스카이라인 질의를 도시한 예시도.
도 4는 본 발명의 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법에 따른 공간객체의 각과 사분면을 도시한 도면.
도 5는 본 발명의 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법에 따른 틈새 각과 틈새객체를 도시한 도면.
도 6은 본 발명의 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법에 따른 가시권 객체와 틈새객체를 도시한 도면.
도 7은 본 발명의 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법에 따른 질의 점의 MINDIST를 도시한 도면.
도 8은 본 발명에 따른 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법의 가시권 이웃 스카이라인 질의 알고리즘을 도시한 도면.
도 9는 본 발명에 따른 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법의 시뮬레이션 결과를 도시한 도면.
도 10은 본 발명에 따른 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법을 도시한 순서도.
도 11은 본 발명에 따른 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법의 제S10단계 또는 제S20단계의 세부 과정을 도시한 순서도.
본 발명의 구체적인 특징 및 이점들은 첨부도면에 의거한 다음의 상세한 설명으로 더욱 명백해질 것이다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 발명자가 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 할 것이다. 또한, 본 발명에 관련된 공지 기능 및 그 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는, 그 구체적인 설명을 생략하였음에 유의해야 할 것이다.
(1) 가시권 객체 탐색
본 발명에 따른, 가시권 객체(visible object)는 사용자의 위치에서 직접 보이거나 사용자가 접근할 수 있는 공간객체로써, 다른 객체들 사이에 있는 틈새객체를 포함한다. 이때, 틈새객체는 다른 객체의 뒤에 가려진 객체와는 상이하다. 틈새객체가 중요한 이유는 사용자 주변의 가시권 객체가 의사결정의 주요 기준이 될 수 있기 때문이다.
모바일 환경은 사용자가 모바일 장치를 직접 가지고 이동하면서 주변의 공간객체를 탐색하기 때문에 현재 위치에서 식별가능한 모든 객체가 제공되어야 한다. 예컨대, 모바일 장치에서 제공되는 증강현실(augmented reality)의 경우 하나의 건물과 뒤에 가려진 건물의 정보가 같은 위치에 표시된다면 두 정보가 겹쳐서 확인이 어렵다. 이는 현재 위치에서 볼 수 없는 가려진 객체의 정보까지 함께 표출되기 때문이다. 즉 앞쪽 건물의 정보가 우선되어야 한다.
틈새객체는 공간객체들 사이의 각(angle)을 비교하여 탐색해야하기 때문에 각에 대한 다음의 정의들을 포함한다.
[정의 1] 탐색공간의 사분면 각도
공간객체의 데이터집합(dataset) ds의 탐색영역을 R0라 하고, 탐색영역 R0의 임의의 한 점 q를 질의 점으로 상정하면, q를 중심으로 R0에 대해 사분면(quadrant)을 나누면 각 사분면은 90도로 분할된다.
이때, 사분면의 각을
Figure 112013046425863-pat00008
라하고, 시작각과 끝 각을 각각
Figure 112013046425863-pat00009
,
Figure 112013046425863-pat00010
라 하면, 1사분면, 2사분면, 3사분면 및 4사분면의 각은 다음의 [수학식 3]과 같이 정의된다. 여기서, 대괄호 ([, ])는 각
Figure 112013046425863-pat00011
의 시작 각부터 끝 각까지의 폐쇄구간을 나타낸다.
Figure 112013046425863-pat00012
[정의 2] 공간객체의 각도
1사분면의 한 객체를
Figure 112013046425863-pat00013
라 하고 객체의 MBR에서 두 모서리를 구성하는 두 점을 rs, re(s: start, e: end)라고 상정하면, 이때,
Figure 112013046425863-pat00014
의 rs(x, y), re(x, y)를 각각
Figure 112013046425863-pat00015
,
Figure 112013046425863-pat00016
라 한다면, 질의 점 q로부터 객체
Figure 112013046425863-pat00017
에 대한 각
Figure 112013046425863-pat00018
는 x축 수평선을 기준으로 다음의 [수학식 4]와 같이 정의된다(1사분면에 있는
Figure 112013046425863-pat00019
의 각은
Figure 112013046425863-pat00020
임).
Figure 112013046425863-pat00021
도 4에 도시된 바와 같이, 1, 4사분면에 교차되어 있는 객체 o1의 각도는 두 부분으로 나뉜다. 즉, 질의 점 q로부터 R0의 오른쪽 면까지의 수평선을 밑변으로 하는 두 각은 1사분면의 각
Figure 112013046425863-pat00022
과 4사분면의 각
Figure 112013046425863-pat00023
로 구성된다.
이때, 점 a는 q로부터 R0의 오른쪽 면과 만나는 선 위의 한 점이므로
Figure 112013046425863-pat00024
를 구성한다. 점 c도 같은 이유로
Figure 112013046425863-pat00025
를 구성하며, 상기 [정의 1]에 의해 [수학식 5]와 같이 계산된다. 이때,
Figure 112013046425863-pat00026
의 각도는 아크탄젠트(arc tangent)로 구한다.
Figure 112013046425863-pat00027
[정의 3] 공간객체 사이의 틈새각
탐색영역 R0에서 서로 이웃하는 임의의 공간객체를
Figure 112013046425863-pat00028
이라 상정하고, 질의 점 q를 중심으로 각 공간객체의 두 모서리와 만나는 각을
Figure 112013046425863-pat00029
이라 상정한다. 이때, 두 공간객체 사이의 틈새 각
Figure 112013046425863-pat00030
는 다음의 [수학식 6]과 같이 도출된다. 단, 두 객체는 같은 사분면에 존재한다고 가정한다.
Figure 112013046425863-pat00031
또한, 도 5에서 공간객체 o3과 o5의 틈새 각은 다음의 [수학식 7]을 통해 계산된다.
먼저, 질의 점 q를 기준으로 x축에서부터 o5의 시작각인 rs까지의 각을 구하고, 여기서 x축에서부터 o3의 re까지의 각을 뺀다. 이와 같이 x축을 시작 각으로 하면 질의 점 q로부터 각 객체의 두 모서리에 대한 각을 모두 계산하는 것보다 연산의 횟수가 감소하여 연산 속도의 향상을 꾀할 수 있다. 틈새 각
Figure 112013046425863-pat00032
에 대한 계산식은 [수학식 7]과 같다.
Figure 112013046425863-pat00033
전술한 바와 같은 정의들에 따라 가시권 객체는 1, 2, 3 그리고 4사분면의 순서대로 계산되며, 각 분면의 시작 각은 [정의 1]과 같다. 각 사분면의 가시권 이웃객체는
Figure 112013046425863-pat00034
,
Figure 112013046425863-pat00035
,
Figure 112013046425863-pat00036
,
Figure 112013046425863-pat00037
이다. 이때, x 또는 y축과 겹치는 공간객체는 각 사분면의 집합에 공통적으로 나타나지만 최종 가시권 객체집합에서는 제거되어
Figure 112013046425863-pat00038
이다.
또한, 정의에 따라 다음과 숨은 객체와 가시권 객체에 대한 휴리스틱(heuristic)을 찾을 수 있다. 휴리스틱은 기존 정의들에서 충분히 유도될 수 있는 것이지만 본 발명의 이해를 돕기 위해 정리하면 다음과 같다.
휴리스틱 1. 숨은 객체(invisible object) 식별
두 공간객체
Figure 112013046425863-pat00039
,
Figure 112013046425863-pat00040
에서 질의 점 q로부터 가까운 객체가
Figure 112013046425863-pat00041
일 경우, 각
Figure 112013046425863-pat00042
Figure 112013046425863-pat00043
가 포함된다면,
Figure 112013046425863-pat00044
Figure 112013046425863-pat00045
에 가려져있는 숨은 객체이다. 숨은 객체 집합
Figure 112013046425863-pat00046
는 다음의 [수학식 8]과 같이 나타낼 수 있다.
Figure 112013046425863-pat00047
한편, 도 6에서 o2와 o7은 <휴리스틱 1>을 만족하는 숨은 객체이다.
예를 들어 o1, o2에서
Figure 112013046425863-pat00048
이며,
Figure 112013046425863-pat00049
의 관계에 있으므로 o2는 숨은 객체이다. 같은 방법으로 o7도 숨은 객체가 된다.
휴리스틱 2. 가시권 객체(visible object) 식별
가시권 객체는 탐색영역 R0의 객체 oi에 대해 <휴리스틱 1>의 포함관계를 부정하는 객체를 의미한다. 또는 두 객체
Figure 112013046425863-pat00050
,
Figure 112013046425863-pat00051
에 틈새 각이 있고, 제3의 객체
Figure 112013046425863-pat00052
가 틈새 각과 겹친다면 객체
Figure 112013046425863-pat00053
도 가시권 객체이다. 가시권 객체 VN은 [수학식 9]와 같은 조건을 갖는다. 이때, 기호
Figure 112013046425863-pat00054
는 포함 관계를 부정하는 기호이다.
Figure 112013046425863-pat00055
또한, 전술한 바와 같은 정의에 따라 도출된 가시권 객체가
Figure 112013046425863-pat00056
이 <휴리스틱 2>에 맞는 살피면 아래와 같다.
도 6에서 o1은 <휴리스틱 1>에 의해 가시권 객체로 확인되었다. 이웃하는 두 객체 o1, o3에서 거리는 o3이 더 가깝지만
Figure 112013046425863-pat00057
Figure 112013046425863-pat00058
의 부분집합이 아니기 때문에 o3도 가시권 객체이다. o3과 o5의 관계에서 <휴리스틱 2>의 조건 중 두 객체사이에 틈새 각이 있고, 그 사이에 있는 o4는 조건
Figure 112013046425863-pat00059
을 만족하기 때문에 가시권 객체가 된다.
전술한 바와 같이 종래의 정리들로부터 찾아낼 수 있는 휴리스틱은 본 발명에서 필요한 통찰력을 제공한다.
(2) n-Level 가시권 탐색
가시권 탐색을 사용하면 주변 객체에 대한 단계별 탐색이 가능하다. 즉, 사용자의 최우선 관심대상이 1-level에서 찾는 객체를 발견할 수 없으면 그 다음 관심대상인 2-level의 가시권 이웃(사용자의 위치에서 직접 보이거나 사용자가 접근이 가능한 공간객체)을 탐색해야 한다. <관찰 2>에서 설명한 것과 같이 모바일 환경에서 주변 객체에 대한 단계별 탐색은 사용자의 서비스 접근성을 향상시킨다.
도 6에 도시된 바와 같이 짙은 색의 o1, o7은 숨은 객체이기도 하지만 2차 가시권 이웃객체들이다. 이러한 단계별 탐색은 NN과 같은 종래 기법에서는 처리될 수 없다.
휴리스틱 3. 탐색범위 제한을 통한 객체 탐색비용 절감(pruning objects)
가시권 이웃 탐색으로 n-단계의 탐색을 수행하면 초기 과정에서 불필요한 객체들이 제거된다. 이는 NN이 모든 객체의 거리를 계산하는 것과 비교하여 탐색비용의 절감을 가져온다.
도 7에 도시된 두 객체 o3, o5의 뒤쪽에 다른 객체들이 존재하는 경우, NN을 이용하여 주변 객체를 판단한다면 o1, ... , o6까지 모든 객체에 대한 MINDIST를 계산해야 한다(도 7에서 숫자는 MINDIST 좌표). 이는 객체 o5의 뒤쪽에 숨어있기 때문이다. 그러나 가시권 이웃을 판단하는 경우, o3, o5의 단 두 객체에 대해서만 연산을 수행하여 나머지 객체를 탐색범위에서 제외함으로써, 연산비용이 감소한다.
(3) 알고리즘
도 8은 가시권 이웃객체 탐색과 스카이라인 질의를 처리하는 개괄적인 알고리즘이며 본격적인 연구를 통해 더욱 완성도 높은 알고리즘으로 개발된 것이다.
도 8을 참조하면, 알고리즘에서 처리할 데이터는 스카이라인의 x, y축을 구성하는 가격(price)과 공간객체의 거리(distance)이다. 사용자가 탐색하고자하는 질의 위치(q, query point)는 알고리즘에 입력된다. 가격과 공간객체들은 하드디스크로부터 읽어 들인다.
가격은 그대로 스카이라인을 구성할 수 있지만 공간객체들은 R-tree를 구성해야 빠르게 거리를 계산할 수 있다. 따라서 메모리에 공간색인인 R-tree를 구성한다(2-3번 라인).
스카이라인을 구성하기 전에 공간객체를 대상으로 본 발명의 핵심 아이디어인 가시권 이웃객체(visible neighbor objects)를 먼저 탐색해야 한다(4번 라인).
먼저, 질의 점 q를 가지고 R-tree의 루트노드로부터 각 공간객체의 MBR까지 방문하면서 MINDIST를 계산하고, 가시권 객체 탐색에 필요한 각도를 계산한다(6-8번 라인).
특히, 9번 라인에서는 각 공간객체들 사이의 틈새 각을 찾아 틈새객채를 탐색한다. 이렇게 계산된 거리와 각도를 중심으로 각 객체들이 가시권 조건에 포함되는지를 확인하면서 가시권 객체집합 NV를 구한다(10번 라인).
이 결과는 가격과 함께 스카이라인을 구성하는데 사용된다(12번 라인).
마지막으로, 스카이라인의 객체들이 가격과 거리라는 두 가지 조건을 만족하면서 다른 객체를 지배(dominate)하는지 또는 다른 객체로부터 지배당하는지를 연산하여 지배객체들을 큐(queue)에 저장하면서 객체의 개수만큼 반복하여 처리한다(13-16번 라인).
최종적으로 탐색된 지배객체들은 결과 값으로 반환되면서 알고리즘이 종료된다.
(4) 수학적 분석
본 발명에 따른 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법의 수학적 분석은 <가시권 이웃객체식별>을 위한 일반화된 수학적 모델을 수립하는 것으로, 본 발명과 종래 NN기법의 연산비용을 단순 비교함으로써, 본 발명의 효율적인 측면에 대해 살피면 아래와 같다.
앞서 도 7에 도시된 바와 같이, <휴리스틱 3>에서 가시권 이웃 탐색기법을 사용하면 탐색 대상을 제한(pruning)하기 때문에 전체적인 탐색비용이 감소하는 것을 알 수 있었다.
구체적으로, 도 7에 도시된 상황에서 가시권 이웃객체를 판단하기 위해 종래의 NN(nearset enighbor)과 제안기법인 VN(visible neighbor)에 대한 연산과정을 수학적으로 비교 및 분석하기로 한다.
분석에 앞서 NN이 가시권 이웃을 판단하기에 충부하지 않다는 사실을 이미 알고 있으나, 본 발명에 따른 VN과 연산비용을 단순비교하기 위해 NN은 가장 가까운 MINDIST로 가시권 이웃객체를 판단한다고 상정하였다(단 도 7의 경우에 국한함).
또한, 각 기법에서 객체를 판단하기 위한 연산비용은 연산자를 사용할 때 1단위의 비용이 발생한다고 가정한다.
가장 가까운 거리를 계산하기 위한 MINDIST 수식은 다음의 [수학식 10]과 같다. 이때, P는 질의 점, R은 MBR이다.
Figure 112013046425863-pat00060
또한, 도 7에서 질의 점 q로부터 객체 o3까지의 거리를 계산하는 식은 [수학식 11]과 같다.
Figure 112013046425863-pat00061
이때, 두 점의 각 좌표에 대한 사칙연산 비용은 3이다. 또한, 제곱승과 근호(root) 연산비용이 각각 2, 1 이므로 한 객체의 MINDIST 비용은 6이다. NN에서는 모든 객체를 거리에 따라 정렬하여
Figure 112013046425863-pat00062
의 결과를 얻는다. 가장 가까운 객체 o3, o5를 가시권 객체로 판단할 경우, 이를 위해 소요된 총 비용은 36이다.
본 발명에 따른 가시권 이웃 탐색기법(VN)으로 가시권 객체를 판단하기 위해서는 [정의 3]의 [수학식 6]을 이용하여 두 객체 사이의 틈새 각을 계산해야 한다.
도 7에서 틈새 각
Figure 112013046425863-pat00063
은 o5의 시작 각
Figure 112013046425863-pat00064
에서 o3의 끝 각
Figure 112013046425863-pat00065
을 빼서 구한다. 연산과정을 다음의 [수학식 12] 및 [수학식 13]과 같다. 먼저, 객체 o3, o5는 1사분면에 존재하므로 x축에서부터 o5의 시작 각에서 o3의 끝 각의 차를 구한다.
Figure 112013046425863-pat00066
Figure 112013046425863-pat00067
는 삼각비 값을 의미하므로 각도를 계산하기 위해 아크 탄젠트(arc tangent)로 변환한다. 계산 결과는 라디안(radian) 값이므로
Figure 112013046425863-pat00068
를 곱하여 각도로 환산한다. 연산결과 두 각의 차
Figure 112013046425863-pat00069
는 음수 값이므로 두 객체 사이의 틈새 각은 존재하지 않는다.
Figure 112013046425863-pat00070
틈새 각에 대한 연산과정도 탄젠트(tan)로 각을 계산하기 위해 밑변과 높이를 연산하는 과정에서 2의 연산비용이 발생한다. 또한, 아크 탄젠트(tan-1)로 각을 구할 때는 2의 비용이 발생한다. 이때, 아크 탄젠트는 바로 각으로 환산된다는 가정하에 별도의 비용으로 추가하지 않았다.
따라서,
Figure 112013046425863-pat00071
을 계산하기 위해서는 4의 비용이 소요되며 하나의 틈새 각을 계산하기 위해서는 9의 비용이 소요된다(두 각의 차까지 고려). 이는 NN에서 한 객체의 거리를 판단할 때 소요되는 비용인 6보다 많다. 그러나, 본 발명의 VN에서는 더 이상의 비교를 안 해도 되기 때문에 총비용은 9이며 NN보다 훨씬 적다.
이와 같은 분석이 비록 단순비교이기는 하지만 본 발명에 따른 VN이 종래의 NN에 비해 효율적임을 알 수 있다. 결과적으로 본 발명의 VN은 스카이라인 질의에 적용하여 모바일 환경에서 낮은 비용으로 신속한 서비스를 제공할 수 있다.
(5) 시뮬레이션
본 발명에 따른 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법의 실험적 성능 평가를 시뮬레이션을 통해 수행한 결과에 대해 살피면 아래와 같다.
시뮬레이션은 공개용 네트워크 시뮬레이터인 OmNet++을 사용하여 모바일 네트워크 환경을 구성한 후, 스카이라인 질의를 통해 서비스되는 데이터의 처리시간을 측정한다. OmNet++ 시뮬레이터는 이산사건(discrete event) 처리가 가능하기 때문에 본 발명에 따른 VN의 시뮬레이션에 적합하다.
실험을 위한 구현(코딩)은 두 부분으로 나누어 진행한다. 하나는 공간 데이터를 R-tree에 색인화하기 위한 인덱스의 구현이고, 다른 하나는 스카이라인 질의를 처리하기 위한 알고리즘이다. 이 알고리즘에는 가시권 이웃객체 탐색 그리고 스카이라인 질의에 대한 알고리즘은 C++로 개발하며 수학적 분석은 MATLAB로 처리한다.
실험용 공간 데이터 집합(dataset)은 도 9에 도시된 바와 같이, R-tree portal에서 제공되는 LA의 거리(street)에 대한 실제 데이터 집합을 사용한다. 이는 131,461개의 건물 및 구조물에 대한 MBR로 구성된다. 실험 데이터 집합과 분석도구는 [표 1]과 같다.
Figure 112013046425863-pat00072
이하, 도 10에 도시된 바와 같이 본 발명에 따른 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법에 대해 살피면 아래와 같다.
먼저, 사용자의 위치에서 직접 보이거나 사용자가 접근이 가능한 공간객체를 탐색한다(S10).
그리고, 사용자의 최우선 관심대상인 1-level에서부터 n-level까지 가시권 이웃을 탐색한다(S20).
또한, 도 11을 참조하여 본 발명에 따른 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법의 제S10단계 또는 제S20단계 수행시 세부과정을 살피면 아래와 같다.
먼저, 질의 점을 기준으로 공간색인(R-tree)시 루트노드로부터 각 공간객체의 MBR(Minimum Bound Rectangle)까지의 최소거리(mindist)를 계산하여 가시권 탐색에 필요한 각도를 계산한다(S30).
이어서, 각 공간객체들 사이의 틈새 각을 찾아 틈새객체를 탐색한다(S40).
뒤이어, 계산된 거리와 각도를 중심으로 각 객체들이 가시권 조건에 포함되는지 확인하면서 가시권 객체집합을 추출한다(S50).
이어서, 스카이라인의 객체들이 가격 및 거리에 대한 조건을 만족하면서 다를 객체를 지배(dominate)하는지 또는 다른 객체로부터 지배당하는지를 연산하여 지배객체들을 큐(queue)에 저장하면서 객체의 개수만큼 반복하여 수행한다(S60).
그리고, 탐색된 지배객체들을 결과 값인 상수로 반환한다(S70).
이상으로 본 발명의 기술적 사상을 예시하기 위한 바람직한 실시예와 관련하여 설명하고 도시하였지만, 본 발명은 이와 같이 도시되고 설명된 그대로의 구성 및 작용에만 국한되는 것이 아니며, 기술적 사상의 범주를 일탈함이 없이 본 발명에 대해 다수의 변경 및 수정이 가능함을 당업자들은 잘 이해할 수 있을 것이다. 따라서 그러한 모든 적절한 변경 및 수정과 균등 물들도 본 발명의 범위에 속하는 것으로 간주되어야 할 것이다.

Claims (2)

  1. 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법에 있어서,
    (a) 사용자의 위치에서 직접 보이거나 사용자가 접근이 가능한 공간객체를 탐색하는 단계; 및
    (b) 사용자의 최우선 관심대상인 1-level에서부터 n-level까지 가시권 이웃을 탐색하는 단계를 포함하고,
    상기 (a) 단계 또는 (b) 단계는,
    (c) 질의 점을 기준으로 R-tree를 이용한 공간색인시 루트노드로부터 각 공간객체의 MBR(Minimum Bound Rectangle)까지의 최소거리(mindist)를 계산하여 가시권 탐색에 필요한 각도를 계산하는 단계;
    (d) 각 공간객체들 사이의 틈새 각을 찾아 틈새객체를 탐색하는 단계;
    (e) 계산된 거리와 각도를 중심으로 각 객체들이 가시권 조건에 포함되는지 확인하면서 가시권 객체집합을 추출하는 단계;
    (f) 스카이라인의 객체들이 가격 및 거리에 대한 조건을 만족하면서 다를 객체를 지배(dominate)하는지 또는 다른 객체로부터 지배당하는지를 연산하여 지배객체들을 큐(queue)에 저장하는 단계;
    (g) 상기 (f) 단계를 객체의 개수만큼 반복하여 수행하는 단계; 및
    (h) 탐색된 지배객체들을 결과 값인 상수로 반환하는 단계를 포함하는 것을 특징으로 하는 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법.
  2. 삭제
KR1020130059525A 2013-05-27 2013-05-27 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법 KR101516631B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130059525A KR101516631B1 (ko) 2013-05-27 2013-05-27 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130059525A KR101516631B1 (ko) 2013-05-27 2013-05-27 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법

Publications (2)

Publication Number Publication Date
KR20140139646A KR20140139646A (ko) 2014-12-08
KR101516631B1 true KR101516631B1 (ko) 2015-05-04

Family

ID=52457807

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130059525A KR101516631B1 (ko) 2013-05-27 2013-05-27 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법

Country Status (1)

Country Link
KR (1) KR101516631B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101914784B1 (ko) * 2016-12-29 2018-11-02 서울대학교산학협력단 쿼드 트리에 기반한 스카이라인 질의 방법
KR102290701B1 (ko) 2019-03-15 2021-08-18 주식회사 정산애강 배관부재 및 이를 이용한 배관구조물
KR102505050B1 (ko) * 2020-09-29 2023-03-06 삼육대학교산학협력단 최근접 이웃 탐색 기반의 스카이라인 질의를 위한 전처리 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Mehdi Sharifzadeh외1. The Spatial Skyline Queries. 2006.9.*

Also Published As

Publication number Publication date
KR20140139646A (ko) 2014-12-08

Similar Documents

Publication Publication Date Title
Shang et al. Discovery of path nearby clusters in spatial networks
Wu et al. Automated extraction of ground surface along urban roads from mobile laser scanning point clouds
JP6385513B2 (ja) 情報処理装置、情報処理方法
CN110533055B (zh) 一种点云数据的处理方法和装置
Huang et al. Continuous distance-based skyline queries in road networks
CN105910612A (zh) 一种个性化导航的方法及系统
CN107092623B (zh) 一种兴趣点查询方法及装置
CN106980633A (zh) 室内地图数据的生成方法及装置
CN103714080A (zh) 基于空间索引结构树提供空间对象搜索结果的方法和设备
US10380454B2 (en) Identifying a visual center of a polygon
KR101516631B1 (ko) 모바일 환경의 공간 스카이라인을 위한 가시권 이웃 질의 방법
CN111611992B (zh) 确定兴趣面的方法、装置和计算机设备
WO2018058968A1 (zh) 导航的路径信息的处理方法、装置、设备及计算机存储介质
US9910878B2 (en) Methods for processing within-distance queries
Boysen et al. A journey from ifc files to indoor navigation
US9811539B2 (en) Hierarchical spatial clustering of photographs
KR101568741B1 (ko) 모바일 증강현실 기반의 정보 제공 시스템
CN113867371B (zh) 路径规划方法和电子设备
CN116823942A (zh) 三维点云的目标标注方法和点云连续帧中目标跟踪方法
McArdle et al. Spatio-temporal clustering of movement data: An application to trajectories generated by human-computer interaction
Vu et al. Adaptive ground segmentation method for real-time mobile robot control
CN114328783A (zh) 地图数据输出方法、地图数据处理方法、装置和电子设备
US11537622B2 (en) K-nearest neighbour spatial queries on a spatial database
Pombinho et al. Context aware point of interest adaptive recommendation
Wang et al. A density-based spatial clustering for physical constraints

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180416

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190422

Year of fee payment: 5