KR101712847B1 - 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전출구 위치를 계산하는 방법 - Google Patents
방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전출구 위치를 계산하는 방법 Download PDFInfo
- Publication number
- KR101712847B1 KR101712847B1 KR1020150163393A KR20150163393A KR101712847B1 KR 101712847 B1 KR101712847 B1 KR 101712847B1 KR 1020150163393 A KR1020150163393 A KR 1020150163393A KR 20150163393 A KR20150163393 A KR 20150163393A KR 101712847 B1 KR101712847 B1 KR 101712847B1
- Authority
- KR
- South Korea
- Prior art keywords
- point
- nearest neighbor
- terminal
- result
- query
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3407—Route searching; Route guidance specially adapted for specific applications
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/09—Arrangements for giving variable traffic instructions
- G08G1/0962—Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
- G08G1/0968—Systems involving transmission of navigation instructions to the vehicle
- G08G1/096877—Systems involving transmission of navigation instructions to the vehicle where the input to the navigation device is provided by a suitable I/O arrangement
- G08G1/096883—Systems involving transmission of navigation instructions to the vehicle where the input to the navigation device is provided by a suitable I/O arrangement where input information is obtained using a mobile device, e.g. a mobile phone, a PDA
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Navigation (AREA)
- Traffic Control Systems (AREA)
Abstract
본 발명은 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전출구 위치를 계산하는 방법에 관한 것으로서, 보다 상세하게는 클라이언트 단말로부터 적어도 하나 이상의 객체에 대한 k최근접 질의에 대한 요청을 서버가 수신하는 단계, 상기 서버에서 방향성을 가지는 도로 네트워크상의 거리에 기초하여 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과 및 상기 k최근접 질의 결과와 동일한 k최근접 질의 결과를 제공하는 안전구역을 연산하는 단계, 상기 단말로 k최근접 질의 결과 및 안전구역 정보를 전송하는 단계를 포함하고, 상기 안전구역을 연산하는 단계는 상기 단말의 기준위치를 출발점으로 하고 상기 단말의 기준위치에 해당하는 도로 세그먼트상의 교차점, 끝점 또는 도로 네트워크상에 존재하는 관심지점 객체 중 어느 하나의 지점을 도착점으로 하는 에지 시퀀스를 활성화시키는 단계, 상기 활성화된 에지 시퀀스상의 k최근접 질의결과와 상기 단말의 위치를 기준으로 하는 k최근접 질의결과를 비교하여 안전출구 경계점이 상기 에지 시퀀스상에 존재하는지 여부를 확인하는 단계, 상기 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스상에서 상기 경계점의 위치를 계산하는 단계를 포함하여 제공된다.
상기와 같은 본 발명에 따르면, 서버에서 k최근접 질의 결과와 동일한 질의 결과를 제공하는 안전구역 정보를 단말로 함께 제공하여, 단말이 안전 구역 내에 위치하는 경우 서버와 클라이언트 단말간의 통신을 최소화시켜 서버의 계산비용을 절감하고, 클라이언트와 서버 사이의 통신비용을 절감하도록 하는 효과가 있다.
상기와 같은 본 발명에 따르면, 서버에서 k최근접 질의 결과와 동일한 질의 결과를 제공하는 안전구역 정보를 단말로 함께 제공하여, 단말이 안전 구역 내에 위치하는 경우 서버와 클라이언트 단말간의 통신을 최소화시켜 서버의 계산비용을 절감하고, 클라이언트와 서버 사이의 통신비용을 절감하도록 하는 효과가 있다.
Description
본 발명은 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전출구 위치를 계산하는 방법에 관한 것으로서, 보다 상세하게는 클라이언트 단말의 요청을 수신하여 방향성을 가지는 도로 네트워크상에서의 k최근접 질의 결과와 안전구역 및 안전출구의 경계점 위치를 함께 제공하는 방법 및 장치에 관한 것이다.
이동 통신망, GPS 등과 같은 위치 탐색 및 서비스 기술이 발전함에 따라, 최근에는 이동 객체의 위치 기반 서비스를 지원하는 응용 분야에 대한 관심이 높아졌다. 이동 객체의 위치 기반 서비스는 이동 객체와 주유소 등과 같은 정적 객체의 위치 정보를 효율적으로 검색하기 위한 k최근접 이웃 검색을 요구한다.
도로 네트워크 정보, 이동 객체의 정보, 정적 객체 정보 등이 저장된 데이터베이스를 도로 네트워크 데이터베이스(road network databases)라 하며, 도로 네트워크 데이터베이스에서 도로 네트워크는 방향성을 가진 그래프로 모델링 된다.
하나의 도로 세그먼트(road segment)는 그래프의 간선에 해당되며, 서로 다른 두 도로 세그먼트가 만나는 지점이 그래프의 노드에 해당된다.
또한, 도로 네트워크 위에 정류소, 학교, 호텔 등과 같은 시설물들은 정적 객체로 모델링 되며, 자동차, 사람과 같은 이동성을 가지고 있는 객체는 이동 객체로 모델링 된다.
도로 네트워크 데이터베이스에서 사용되는 질의들은 K최근접 이웃 검색(k-nearest neighbor queries), 영역 질의(range queries), 공간 조인 질의(spatial join queries) 등이 있다.
기존 유클리드 공간상에서는 임의의 두 객체의 절대 위치만으로도 그 객체들 간의 유클리드 거리를 계산할 수 있다. 그러나 도로 네트워크 공간상에서 이동 객체는 미리 정의된 도로 네트워크 위로만 움직일 수 있기 때문에 객체의 절대 위치만으로 객체들 간의 네트워크 거리(network distance)를 계산할 수 없다. 여기서, 두 객체간의 네트워크 거리란 도로 네트워크에서 임의의 두 객체간의 최단 경로 상에 존재하는 도로 세그먼트 길이들의 총 합이다.
즉, 절대 위치가 같아도 두 점간을 연결하는 네트워크의 상황에 따라 거리가 달라지기 때문에 임의의 두 점간의 네트워크 거리는 두 점의 절대 위치만을 가지고 계산할 수 없다. 네트워크 거리를 효율적으로 구하기 위한 다양한 방법들이 연구되어 왔으며, 대표적인 예로는 IER 기법, INE 기법, VN 기법 등이 있다.
이와 같이 두 객체간의 거리를 계산하는 개발에 있어 효율성을 높일 수 있는 네트워크 계산방법에 대한 종래 기술의 한 예가 한국등록특허 제10-0970134호 "경로 안내 시스템, 경로 안내 방법 및 방법 프로그램을 기록한 저장매체"에 도시되었다. 도로 네트워크에서 단말기로부터 목적지까지 경로 안내 요청을 받은 서버에서 선정된 출발지 및 목적지 링크를 기초로 목적지까지의 경로를 생성하여 안내 정보를 제공하고 안내 대상 링크가 연속 좌회전 구간에 포함된 좌회전 전용 링크인 경우, 진출입 링크 각도에 관계없이, 시간 방향 정보를 포함하지 않는 좌측 주행 정보를 포함하는 일반 좌회전 안내 정보를 함께 제공하는 목적을 가지고 도출되었다.
그러나 상기 선행기술에 의하더라도, 최단거리를 계산하는 방법에서 서버와 클라이언트 단말간에 주기적으로 통신하기 때문에, 통신비용이 증가하고 서버는 클라이언트들의 요구 조건에 부합하는 객체를 검색하고 제공하기 때문에, 클라이언트 수가 증가하면, 서버의 계산 비용도 크게 증가하는 문제점이 존재한다.
또한, 도로 네트워크가 양방향 통행이 이루어지지 않고, 일방향으로만 이루어질 경우, 연산이 복잡해지는 문제점이 발생된다.
따라서, 이러한 종래 최단거리 계산 방법의 불합리한 점을 극복하고 서버와의 통신비용을 절감하고 연산방법을 단순화시킬 수 있는 k최근접 질의 연산 방법 및 장치에 대한 요구가 높아지고 있는 실정이다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 서버에서 질의 처리뿐만 아니라 질의 결과와 동일한 k최근접 질의 결과를 제공하는 안전구역을 함께 제공하여 클라이언트 단말이 안전 구역 내에 위치하는 경우 서버와 클라이언트 단말간의 통신을 최소화하는 방식을 개발하여 서버의 계산 비용을 줄이고, 클라이언트와 서버 사이의 통신비용을 줄이도록 하는데 있다.
상기와 같은 목적을 달성하기 위한 본 발명의 일측면에 따르면, 클라이언트 단말로부터 적어도 하나 이상의 객체에 대한 k최근접 질의에 대한 요청을 서버가 수신하는 단계, 상기 서버에서 방향성을 가지는 도로상의 거리에 기초하여 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과 및 상기 k최근접 질의 결과와 동일한 k최근접 질의 결과를 제공하는 안전구역을 연산하는 단계, 상기 단말로 k최근접 질의 결과 및 안전구역 정보를 전송하는 단계를 포함하고, 상기 안전구역을 연산하는 단계는 상기 단말의 위치와 인접하는 하나 이상의 교차점 또는 객체 각각에 대한 k최근접 질의 결과와 상기 단말의 위치를 기준으로 하는 k최근접 질의결과를 비교하되, 상기 단말의 현재위치를 출발점으로 하고 상기 단말의 현재위치에 해당하는 도로 세그먼트상의 양측 교차점 또는 도로 세그먼트내에 존재하는 객체 중 어느 하나의 지점을 도착점으로 하는 에지 시퀀스를 활성화시키는 단계, 상기 활성화된 에지 시퀀스상의 k최근접 질의결과과 상기 단말의 위치를 기준으로 하는 k최근접 질의결과를 비교하여 안전출구 경계점이 상기 에지 시퀀스상에 존재하는지 여부를 확인하는 단계, 상기 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스상에서 상기 도착점의 위치를 계산하는 단계를 포함하여 제공된댜ㅏ.
아울러, 상기 안전출구 경계점이 탐색될 때까지 상기 활성화된 에지 시퀀스의 도착점을 출발점으로 하고 인접한 도로 세그먼트상의 교차점 또는 객체 중 어느 하나를 도착점으로 하는 에지 시퀀스를 연속적으로 활성화시킨다.
또한, 상기 에지 시퀀스상에 안전출구 경계점 존재유무는 하기 수학식을 만족할 경우에는 상기 안전출구 경계점이 존재하지 않는 것으로 판단한다.
[수학식 1]
더욱이 상기 안전출구 경계점의 위치를 계산하는 단계는 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과에 포함된 객체들 중에서, 상기 도착점이 존재하는 것으로 확인된 에지 시퀀스를 따라 k최근접 질의의 기준위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준위치로부터 멀어지고 상기 단말의 위치에서 가장 멀리 있는 제 1객체를 선택하는 단계, 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과에 포함되지 않은 객체들 중에서, 상기 도착점이 존재하는 것으로 확인된 에지 시퀀스를 따라 k최근접 질의의 기준위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준위치에 가까워지고 상기 단말의 위치에서 가장 가까이 있는 제 2객체를 선택하는 단계 및 상기 제 1객체 및 제 2객체를 하기 수학식 2에 대입시켜 상기 수학식의 조건을 만족시키지 못하면서 상기 출발점에 가장 가까운 지점을 상기 안전출구 경계점으로 선택하는 단계를 포함하여 구성된다.
[수학식 2]
더욱이, 상기 수학식 2를 만족하는 지점값들이 2개 또는 그 이상일 경우에는 상기 에지 시퀀스의 출발점에서 가장 가까운 지점이 안전출구 경계점으로 선택된다.
클라이언트 단말로부터 적어도 하나 이상의 객체에 대한 k최근접 질의에 대한 요청을 수신하는 수신부, 상기 요청에 응답하여, 방향성을 가지는 도로상의 거리에 기초하여 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과를 연산하는 질의 결과 연산부, 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과와 동일한 k최근접 질의 결과를 제공하는 안전구역을 연산하는 안전구역 연산부 및 상기 요청에 응답하여, 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과 및 상기 안전구역에 대한 정보를 상기 단말로 전송하는 전송부를 포함하고, 상기 안전구역 연산부는 상기 단말의 기준위치를 출발점으로 하고 상기 단말의 기준위치에 해당하는 도로 세그먼트상의 교차점, 끝점 또는 도로 네트워크상에 존재하는 관심지점 객체 중 어느 하나의 지점을 도착점으로 하는 에지 시퀀스를 활성화시키고, 상기 활성화된 에지 시퀀스상의 출발점과 도착점을 기준으로 하는 k최근접 질의결과를 비교하여 상기 안전구역에 대한 정보를 추출한다.
더욱이, 상기 안전구역 연산부는 상기 단말의 기준위치 또는 도로 세그먼트상에서 상기 단말과 인접하는 교차점 또는 끝점 또는 도로 세그먼트상의 특정 관심지점 객체 중 어느 하나를 출발점으로 하고 다른 하나를 도착점으로 하는 에지 시퀀스를 연속적으로 활성화시키는 비교대상 영역 활성모듈, 상기 단말의 기준위치에서의 k최근접 질의결과와 상기 비교대상 영역 활성모듈에서 활성화된 에지 시퀀스의 출발점과 도착점에서의 k최근접 질의결과를 비교하는 질의 결과 비교모듈, 상기 비교 결과를 이용하여 상기 활성화된 에지 시퀀스상에서 안전구역에 대한 안전출구 경계점이 존재하는지 여부를 확인하는 경계점 확인모듈 및 상기 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스 상에서 상기 경계점의 위치를 계산하는 경계점 위치 계산모듈을 포함하여 제공된다.
또한, 상기 경계점 확인모듈은 상기 에지 시퀀스의 출발점 및 도착점에서의 k최근접 질의결과와 상기 단말의 기준위치에서의 k최근접 질의결과가 일치하고, 상기 에지 시퀀스상에 존재하는 객체가 상기 에지 시퀀스의 출발점에서의 k최근접 질의결과에 속할 경우에는 상기 에지 시퀀스상에 안전출구 경계점이 존재하지 않는 것으로 판단한다.
아울러, 상기 경계점 위치 계산모듈은 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과에 포함된 객체들 중에서, 상기 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스를 따라 k최근접 질의의 기준위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준위치로부터 멀어지고 상기 단말의 위치에서 가장 멀리 있는 제 1객체를 선택하는 제 1객체 선택블럭, 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과에 포함되지 않은 객체들 중에서, 상기 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스를 따라 k최근접 질의의 기준위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준위치에 가까워지고 상기 단말의 위치에서 가장 가까이 있는 제 2객체를 선택하는 제 2객체 선택블럭, 상기 에지 시퀀스상을 가상적으로 이동하는 특정 지점에서 상기 제 2객체와 이루는 거리가 상기 제 1객체와 이루는 거리를 초과하게 되는 지점들 중 상기 에지 시퀀스의 출발점에 가장 가까운 지점을 안전출구 경계점으로 선택하는 경계점 탐색블럭을 포함하여 제공된다.
k최근접 질의 결과 제공 방법은 제1 위치를 기준으로 하는 k최근접 질의를 서버에 요청하는 단계, 상기 제1 위치를 기준으로 하는 k최근접 질의 결과 및 상기 제1 위치를 기준으로 하는 k최근접 질의 결과와 동일한 결과를 제공하는 안전구역에 대한 정보를 수신하는 단계, 현재 위치를 확인하는 단계 및 상기 현재 위치가 상기 안전구역 내에 포함되면 상기 제1 위치를 기준으로 하는 k최근접 질의 결과를 상기 현재 위치에 대한 k최근접 질의 결과로서 사용자에게 제공하는 단계를 포함하고, 상기 안전구역에 대한 정보는 상기 단말의 위치와 인접하는 하나 이상의 교차점 또는 객체 각각에 대한 k최근접 질의 결과와 상기 단말의 위치를 기준으로 하는 k최근접 질의결과를 비교하되, 상기 단말의 현재위치를 출발점으로 하고 상기 단말의 현재위치에 해당하는 도로 세그먼트상의 양측 교차점 또는 도로 세그먼트내에 존재하는 객체 중 어느 하나의 지점을 도착점으로 하는 에지 시퀀스를 활성화시켜, 상기 활성화된 에지 시퀀스상의 k최근접 질의결과와 상기 단말의 위치를 기준으로 하는 k최근접 질의결과를 비교하여 추출된 정보이다.
여기서 상기 현재 위치가 상기 안전구역 내에 포함되지 않거나, 상기 현재 위치가 상기 안전구역을 곧 벗어날 것으로 예상되면, 상기 서버로 새로운 기준 위치에 대한 k최근접 질의를 요청하는 단계를 더 포함하여 제공된다.
k최근접 질의 결과 제공 장치는 제1 위치를 기준으로 하는 k최근접 질의를 서버에 요청하는 질의 요청부, 상기 제1 위치를 기준으로 하는 k최근접 질의 결과 및 상기 제1 위치를 기준으로 하는 k최근접 질의 결과와 동일한 결과를 제공하는 안전구역에 대한 정보를 수신하는 수신부, 현재 위치를 확인하는 현재 위치 확인부 및 상기 현재 위치가 상기 안전구역 내에 포함되면 상기 제1 위치를 기준으로 하는 k최근접 질의 결과를 상기 현재 위치에 대한 k최근접 질의 결과로서 사용자에게 제공하는 질의 결과 제공부를 포함하고, 상기 안전구역에 대한 정보는 상기 단말의 기준위치를 출발점으로 하고 상기 단말의 기준위치에 해당하는 도로 세그먼트상의 교차점, 끝점 또는 도로 네트워크상에 존재하는 관심지점 객체 중 어느 하나의 지점을 도착점으로 하는 에지 시퀀스를 활성화시켜, 상기 활성화된 에지 시퀀스상의 k최근접 질의결과와 상기 단말의 위치를 기준으로 하는 k최근접 질의결과를 비교하여 추출된 정보이다.
여기서 상기 질의 요청부는 상기 현재 위치가 상기 안전구역 내에 포함되지 않거나, 상기 현재 위치가 상기 안전구역을 곧 벗어날 것으로 예상되면, 상기 서버로 새로운 기준 위치에 대한 k최근접 질의를 요청한다.
상기와 같은 본 발명에 따르면, 서버에서 k최근접 질의 결과와 동일한 질의 결과를 제공하는 안전구역 정보를 단말로 함께 제공하여, 단말이 안전 구역 내에 위치하는 경우 서버와 클라이언트 단말간의 통신을 최소화시켜 서버의 계산비용을 절감하고, 클라이언트와 서버 사이의 통신비용을 절감하도록 하는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 서버의 개념적인 구성을 나타낸 블럭도이다.
도 2는 본 발명의 일 실시예에 따른 안전구역 연산부의 개념적인 구성을 나타낸 블럭도이다.
도 3은 본 발명의 일 실시예에 따른 경계점 위치 계산모듈의 개념적인 구성을 나타낸 블럭도이다.
도 4는 본 발명의 일 실시예에 따른 클라이언트 단말의 개념적인 구성을 나타낸 블럭도이다.
도 5는 본 발명의 일 실시예에 따른 서버에서 k최근접 질의 연산 방법을 나타낸 순서도이다.
도 6은 본 발명의 일 실시예에 따른 안전구역을 연산하는 방법을 나타내는 순서도이다.
도 7은 본 발명의 일 실시예에 따른 안전구역의 안전출구 경계점의 위치를 연산하는 동작흐름도를 나타낸 순서도이다.
도 8은 본 발명의 일 실시예에 따른 클라이언트 단말에서 k최근접 질의 결과를 사용자에게 제공하는 방법을 나타낸 순서도이다.
도 9는 안전구역 및 안전출구 경계점을 포함하는 방향성을 가지는 도로 네트워크의 일예를 나타낸 도면이다.
도 10에서 도 12는 본 발명에 따른 안전출구 경계점을 찾기위해 활성화된 에지 시퀀스상에서 특정 객체의 거리변화를 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 안전구역 연산부의 개념적인 구성을 나타낸 블럭도이다.
도 3은 본 발명의 일 실시예에 따른 경계점 위치 계산모듈의 개념적인 구성을 나타낸 블럭도이다.
도 4는 본 발명의 일 실시예에 따른 클라이언트 단말의 개념적인 구성을 나타낸 블럭도이다.
도 5는 본 발명의 일 실시예에 따른 서버에서 k최근접 질의 연산 방법을 나타낸 순서도이다.
도 6은 본 발명의 일 실시예에 따른 안전구역을 연산하는 방법을 나타내는 순서도이다.
도 7은 본 발명의 일 실시예에 따른 안전구역의 안전출구 경계점의 위치를 연산하는 동작흐름도를 나타낸 순서도이다.
도 8은 본 발명의 일 실시예에 따른 클라이언트 단말에서 k최근접 질의 결과를 사용자에게 제공하는 방법을 나타낸 순서도이다.
도 9는 안전구역 및 안전출구 경계점을 포함하는 방향성을 가지는 도로 네트워크의 일예를 나타낸 도면이다.
도 10에서 도 12는 본 발명에 따른 안전출구 경계점을 찾기위해 활성화된 에지 시퀀스상에서 특정 객체의 거리변화를 나타낸 도면이다.
이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 일 실시예를 상세하게 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 서버의 개념적인 구성을 나타낸 블럭도이다.
서버(100)는 수신부(110), 질의 결과 연산부(120), 안전구역 연산부(130) 및 전송부(140)를 포함하여 구성된다.
수신부(110)는 클라이언트 단말로부터 적어도 하나 이상의 객체에 대한 k최근접 질의에 대한 요청을 수신한다.
질의 결과 연산부(120)는 수신부(110)에서 수신된 요청에 응답하여, 방향성을 가지는 도로 네트워크상의 거리에 기초하여 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과를 연산한다.
안전구역 연산부(130)는 단말의 위치를 기준으로 하는 k최근접 질의 결과와 동일한 k최근접 질의 결과를 제공하는 안전구역을 연산한다.
또한, 안전구역의 안전출구 경계점의 도로 네트워크상의 위치를 추출하여 전송부(140)에서 추출된 안전출구 경계점의 도로상의 위치에 대한 정보를 단말로 전송할 수 있다.
이러한 안전구역 연산부(130)는 단말의 기준위치를 출발점으로 하고 단말의 기준위치와 인접한 도로 세그먼트의 교차점, 끝점 또는 도로 네트워크상에 존재하는 관심지점 객체 중 어느 하나의 지점을 도착점으로 하는 에지 시퀀스(edge sequence)를 활성화시키고, 활성화된 에지 시퀀스상의 출발점과 도착점을 기준으로 하는 k최근접 질의결과를 비교하여 안전구역에 대한 정보를 추출하도록 한다. 이러한 안전구역 정보는 후술될 안전구역 연산방법에서 더욱 자세히 설명하도록 한다.
전송부(140)는 수신부(110)에 수신된 요청에 응답하여, 단말의 위치를 기준으로 하는 k최근접 질의 결과 및 안전구역에 대한 정보를 함께 단말로 전송한다.
도 2는 본 발명의 일 실시예에 따른 안전구역 연산부의 개념적인 구성을 나타낸 블럭도이다.
안전구역 연산부(130)는 비교대상 영역 활성모듈(131), 질의 결과 비교모듈(132), 경계점 확인모듈(133) 및 경계점 위치 계산모듈(134)를 포함하여 구성된다.
비교대상 영역 활성모듈(131)은 단말의 기준위치 또는 도로 세그먼트상에서 단말의 기준위치와 인접하는 교차점 또는 끝점 등의 노드 또는 단말이 위치하는 도로 네트워크 상에서의 특정 관심지점 객체 중 어느 하나를 출발점으로 하고, 다른 하나를 도착점으로 하는 에지 시퀀스(edge sequence)를 활성화시키도록 한다.
여기서 에지 시퀀스(edge sequence)는 방향성의 존재에 따라 또는 중 하나의 형태로 이루어지며, 즉 에지 시퀀스(edge sequence)는 출발노드(ns)와 도착노드(ne)로 연결되는 하나의 연속된 길에 상응하는 것으로, 이러한 출발노드는 k최근접질의를 수행하는 단말의 기준위치에서 인접한 도로 세그먼트의 양측 노드(교차점 또는 끝점) 또는 특정 객체까지로 연속적으로 확장하여 비교대상 영역 활성모듈(131)에서 에지 시퀀스를 활성화시킨다.
질의 결과 비교모듈(132)은 단말의 기준위치에서의 k최근접 질의결과와 상기 비교대상 영역 활성모듈에서 활성화된 에지 시퀀스의 출발점과 도착점에서의 k최근접 질의결과를 비교한다.
경계점 확인모듈(133)은 질의 결과 비교모듈(132)에서 비교한 비교 결과를 이용하여 활성화된 에지 시퀀스상에서 안전구역에 대한 안전출구 경계점이 존재하는지 여부를 확인한다. 이러한 경계점 확인모듈(133)은 에지 시퀀스의 출발점 및 도착점에서의 k최근접 질의결과와 단말의 기준위치에서의 k최근접 질의결과가 일치하고, 에지 시퀀스상에 존재하는 객체가 에지 시퀀스의 출발점에서의 k최근접 질의결과에 속할 경우에는 에지 시퀀스상에 안전출구 경계점이 존재하지 않는 것으로 판단하고, 그렇지 않을 경우에는 상기 에지 시퀀스상에 안전출구 경계점이 존재하는 것으로 판단된다.
경계점 위치 계산모듈(134)은 경계점 확인모듈(133)에서 안전출구 경계점이 존재하는 것으로 확인될 경우 확인된 도로 위에서 도착점의 도로상의 위치를 계산한다.
도 3은 본 발명의 일 실시예에 따른 경계점 위치 계산모듈의 개념적인 구성을 나타낸 블럭도이다.
경계점 위치 계산모듈(134)은 제1 객체 선택블럭(134a), 제2 객체 선택블럭(134b), 경계점 탐색블럭(134c)를 포함하여 구성된다.
제1 객체 선택블럭(134a)은 단말의 위치를 기준으로 하는 k최근접 질의 결과에 포함된 객체들 중에서, 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스를 따라 k최근접 질의의 기준 위치를 단말의 위치로부터 가상적으로 이동함에 따라 기준 위치로부터 멀어지고 단말의 위치에서 가장 멀리 있는 제1 객체를 선택한다.
제2 객체 선택블럭(134b)은 단말의 위치를 기준으로 하는 k최근접 질의 결과에 포함되지 않은 객체들 중에서, 안전출구 경계점이 존재하는 것으로 확인된 도로를 따라 기준 위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 기준 위치에 가까워지고 상기 단말의 위치에서 가장 가까이 있는 제2 객체를 선택한다.
경계점 탐색블럭(134c)은 에지 시퀀스상 특정 지점에서 제 2객체와 이루는 거리가 상기 특정 지점에서 제 1객체와 이루는 거리를 초과하는 지점들 중 출발점에 가장 가까운 지점을 안전출구 경계점으로 선택한다.
도 4는 본 발명의 일 실시예에 따른 클라이언트 단말의 개념적인 구성을 나타낸 블럭도이다.
클라이언트 단말(200)은 질의 요청부(210), 수신부(220), 현재 위치 확인부(230), 질의 결과 제공부(240)를 포함한다.
질의 요청부(210)는 단말(200)이 제1 위치를 기준으로 하는 k최근접 질의를 서버(100)에 요청한다. 또한, 단말(200)의 현재 위치가 안전구역 내에 포함되지 않거나, 현재 위치가 안전구역을 곧 벗어날 것으로 예상되면, 서버(100)로 새로운 기준 위치에 대한 k최근접 질의를 요청할 수 있다.
수신부(220)는 제1 위치를 기준으로 하는 k최근접 질의 결과 및 상기 제1 위치를 기준으로 하는 k최근접 질의 결과와 동일한 결과를 제공하는 안전구역에 대한 정보를 수신한다. 이때, k최근접 질의 결과와 안전구역에 대한 정보를 함께 수신할 수도 있다. 여기서 안전구역에 대한 정보는 단말의 기준위치를 출발점으로 하고 단말의 기준위치와 인접한 도로 세그먼트의 교차점, 끝점 또는 도로 세그먼트상의 또는 도로 네트워크상에 존재하는 특정 관심지점 객체 중 어느 하나의 지점을 도착점으로 하는 에지 시퀀스를 연속적으로 활성화시켜, 활성화된 에지 시퀀스상의 k최근접 질의결과와 상기 단말의 위치를 기준으로 하는 k최근접 질의결과를 비교하여 추출된 정보이다.
현재 위치 확인부(230)는 단말(200)이 현재 위치한 도로상의 현재 위치를 확인한다.
질의 결과 제공부(240)는 현재 위치가 안전구역 내에 포함되면 상기 제1 위치를 기준으로 하는 k최근접 질의 결과를 현재 위치에 대한 k최근접 질의 결과로서 사용자에게 제공한다.
도 5는 본 발명의 일 실시예에 따른 서버에서 k최근접 질의 연산 방법을 나타낸 순서도이다.
k최근접 질의 연산 방법에서 수신부(110)는 클라이언트 단말(200)로부터 적어도 하나 이상의 객체에 대한 k최근접 질의에 대한 요청을 수신한다(S510). 이후, 질의 결과 연산부(120)는 k최근접 질의에 대한 요청에 응답하여 단말(200)의 위치를 기준으로 하는 k최근접 질의 결과를 연산한다(S520).
이후, 안전구역 연산부(130)는 단말(200)의 위치를 기준으로 하는 k최근접 질의 결과와 동일한 k최근접 질의 결과를 제공하는 안전구역을 연산하고(S530), 전송부(140)는 단말(200)의 요청에 응답하여 단말(200)의 위치를 기준으로 하는 k최근접 질의 결과 및 안전구역에 대한 정보를 함께 단말(200)로 전송한다(S540).
이때, 서버(100)의 전송부(140)는 안전구역의 경계점의 도로상의 위치를 추출하여 추출된 안전구역의 경계점의 도로상의 위치에 대한 정보를 단말(400)로 전송할 수도 있다. 안전구역에 대한 정보를 전송하는 데에 네트워크의 자원이 소비되는데, 이 때 소비되는 네트워크의 자원을 최소화하기 위한 방편으로 안전구역 연산부(130)는 안전구역의 안전출구 경계점 위치를 추적하여 안전구역에 대한 정보를 대표할 수 있다. 한편, 경계점은 그 경계점이 위치한 도로상에서의 상대적인 위치 정보로 나타내어질 수도 있고, GPS 등 절대 좌표 시스템 내의 위치 정보로 주어질 수도 있다.
도 6은 본 발명의 일 실시예에 따른 안전구역을 연산하는 방법을 나타내는 순서도이다.
안전구역을 계산하는데 있어서, k최근접 질의 연산 방법은 우선 비교대상 영역 활성모듈(131)에서 클라이언트 단말(200)이 속하는 도로 세그먼트상에서 인접한 도로 세그먼트의 교차점, 끝점 또는 특정 관심지점 객체가 시작점과 도착점으로 하는 임의의 에지 시퀀스를 활성화시킨다(S610).
그리고 질의결과 비교모듈(132)에서 상기와 같이 활성화된 에지 시퀀스상의 시작점과 도착점에서의 K최근접 질의결과와 단말의 기준위치에서의 k최근접 질의결과를 비교하고, 경계점 확인모듈(133)에서 안전출구 경계점이 존재하는지 여부를 확인한다(S620).
이와 같이 활성화된 에지 시퀀스상에 안전출구 경계점이 존재하지 않을 경우에는 다시 비교대상 영역 활성모듈(131)에서 인접한 에지 시퀀스를 활성화시키고, 활성화된 에지 시퀀스상에 안전출구 경계점이 존재하는지 다시 탐색하도록 한다. 즉, 안전출구 경계점이 탐색될 때까지 상기 활성화된 에지 시퀀스의 도착점을 출발점으로 하고 인접한 도로 세그먼트상의 교차점, 끝점 또는 도로 네트워크상의 특정 관심지점 객체 중 어느 하나를 도착점으로 하는 에지 시퀀스를 연속적으로 활성화시키도록 한다.
아울러, 활성화된 에지 시퀀스상에 안전출구 경계점이 존재할 경우에는 경계점 위치 계산모듈(134)에서 상기 에지 시퀀스상의 경계점 위치를 계산하도록 한다(S630).
도 7은 본 발명의 일 실시예에 따른 안전구역의 안전출구 경계점의 위치를 연산하는 동작흐름도를 나타낸 순서도이다.
상기와 같이 경계점 위치 계산모듈(134)에서 안전출구 경계점의 위치를 연산하기 위해서는 단말의 위치를 기준으로 하는 k최근접 질의 결과에 포함된 객체들 중에서 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스를 따라 k최근접 질의의 기준위치를 단말의 위치로부터 가상적으로 이동함에 의해 단말의 위치에서 가장 멀리 있는 제 1객체를 선택한다(S710). 즉, 질의결과에 포함된 객체중에서 단말의 기준위치에서 가장 먼 거리에 위치되는 객체를 선택한다.
그리고 단말의 위치를 기준으로 하는 k최근접 질의 결과에 포함되지 않는 객체들 중에서 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스를 따라 k최근접 질의의 기준위치를 단말의 위치로부터 가상적으로 이동함에 의해 단말의 위치에서 가장 가까이 위치하는 제 2객체를 선택한다(S720). 즉, 질의결과에 포함되지 않는 객체중에서 단말의 기준위치에서 가장 근접한 거리에 위치하고 있는 객체를 선택한다.
그런 다음, 경계점 탐색블럭(134c)에서 안전출구 경계점이 존재되는 에지 시퀀스상을 가상적으로 이동하는 특정 지점(p)에서 제 1객체와 제 2객체가 루는 거리를 비교하여 안전출구 경계점의 위치를 연산하도록 한다(S730).
특정 지점(p)에서 제 2객체와 이루는 거리가 제 1객체와 이루는 거리를 초과하게 되는 지점들 중 에지 시퀀스의 출발점에 가장 가까운 지점을 안전출구 경계점으로 선택하도록 한다(S740).
이와 같은 안전출구 경계점 연산방법은 k최근접 질의결과에 속하는 객체 중 가장 멀리 떨어져 있는 제 1객체와 k최근접 질의결과에 속하지 않는 객체 중 가장 인접하게 위치하는 제 2객체가 안전출구 경계점이 존재되는 일정한 구역 내의 모든 지점에서 이루는 거리를 비교하여 각 객체와 이루는 거리가 상호 동일하거나 k최근접 질의결과에 속하지 않으면서 가장 인접한 제 2객체가 제 1객체보다 더 근접할 경우에는 상기 에지 시퀀스상에서 k최근접 질의결과가 변경되지 않으며, 제 2객체와의 거리가 제 1객체와 이루는 거리보다 더 멀어질 경우에는 k최근접 질의결과가 변경되며, 이러한 지점을 안전출구 경계점으로 선택되도록 한다.
아울러, 특정 지점(p)에서 제 2객체와 이루는 거리가 제 1객체와 이루는 거리를 초과하게 되는 지점값들이 2개 또는 그 이상일 경우에는 에지 시퀀스의 출발점에서 가장 가까운 지점이 안전출구 경계점으로 선택되도록 한다.
도 8은 본 발명의 일 실시예에 따른 클라이언트 단말에서 k최근접 질의 결과를 사용자에게 제공하는 방법을 나타낸 순서도이다.
클라이언트 단말(200)의 질의 요청부(210)에서 제1 위치를 기준으로 하는 k최근접 질의를 서버에 요청한다(S810).
이후, 수신부(220)가 제1 위치를 기준으로 하는 k최근접 질의 결과 및 제1 위치를 기준으로 하는 k최근접 질의 결과와 동일한 결과를 제공하는 안전구역에 대한 정보를 수신하여(S820), 현재 위치 확인부(230)가 단말(200)의 현재 위치를 확인한다(S830).
이후, 질의 결과 제공부(240)는 현재 위치가 안전구역 내에 포함되는지를 판단하여, 포함되면 제1 위치를 기준으로 하는 k최근접 질의 결과를 현재 위치에 대한 k최근접 질의 결과로서 사용자에게 제공한다(S840).
이때, 현재 위치에 따른 k최근접 질의 결과에 있어서, 클라이언트 단말(200)에서 현재 위치가 안전구역 내에 포함되지 않거나, 현재 위치가 상기 안전구역을 곧 벗어날 것으로 예상되면, 질의 요청부(210)는 서버(100)로 새로운 기준 위치에 대한 k최근접 질의를 요청한다.
아래에서는 도로 네트워크를 일예로 안전출구 경계점을 찾는 방법에 대해 자세히 설명하도록 한다.
도 9는 안전구역 및 안전출구 경계점을 포함하는 방향성을 가지는 도로 네트워크의 일예를 나타낸 도면이고, 도 10에서 도 12는 본 발명에 따른 안전출구 경계점을 찾기위해 활성화된 에지 시퀀스상에서 특정 객체의 거리변화를 나타낸 도면이다.
도 9에서 질의객체 q는 클라이언트 단말(200)을 가리키고, o 1 부터 o 4 까지는 관심지점 객체 POI(Point of interest)를 가리킨다. 또한, 그래프 위의 숫자는 두 지점간의 거리를 의미하며, 안전 구역은 굵은 선분으로 표시하고, 경계점(ω 1 , ω 2 )은 별표로 표시하였다.
이때, 안전 구역은 현재 위치에서의 질의 결과가 유지되는 지역이다. 또한, 안전출구 경계점(ω)은 현재 질의 결과가 유지되는 안전 구역과 현재 질의 결과가 유지되지 않는 비안전 구역의 경계점이다.
즉 단말(200)인 질의객체 q가 위치한 도로상의 현재 질의 결과와 안전 구역 안의 질의 결과는 같은 결과를 가진다. 단말(200)인 q가 안전출구 경계점(ω)을 통과할 때까지는 서버(100)로부터 수신한 현재 질의 결과와 같은 질의 결과를 가지게 된다.
이후, 단말(200)인 q가 안전출구 경계점(ω)을 벗어나거나 벗어날 것으로 예측되면 서버(100)로 새로운 k최근접 질의 결과를 요청할 수 있다.
현재 위치 q에서 2개의 최근접 객체를 질의하면, q로부터의 거리가 3인 o 4 와, q로부터의 거리가 4인 o 4 가 결과로서 제공될 것이다. 이 때 위치 q에서의 질의 결과를 라 하면, ={o 2 , o 4 } 로 주어질 수 있다.
아래의 표 1은 질의객체 q를 기준으로 도로 세그먼트를 분할하여 인접한 에지 시퀀스를 형성하고, 각각의 에지 시퀀스에서의 안전출구 경계점을 계산한 표이다.
α : 에지 시퀀스의 출발점
β : 에지 시퀀스의 도착점
ω : 안전출구 경계점
여기서, 즉, 이 과 동일하고, 이 세그먼트 의 상위집합이라면(즉, =∧⊇), 세그먼트 에는 안전출구 경계점이 존재하지 않으며, 이와 반대이면 세그먼트 상에 안전출구 경계점이 존재하게 된다.
상기와 같이 과 가 동일하지 않으면, 는 세그먼트 의 안전출구 경계점들인 의 상위집합 역시 되지 않는다. 여기서 각 지점 p∈으로부터 각각 가장 먼 거리의 정답 객체 즉, 제 1객체()와 정답이 되지 않는 가장 가까운 제 2객체()는 다음과 같이 수학식 2에 의해 정의되어진다.
따라서 안전출구 경계점(ω)은 제 1객체()와 제 2객체()가 안전출구 경계점이 존재되는 세그먼트 내의 모든 지점(p)에서 이루는 거리를 비교하여 각 객체와 이루는 거리가 상호 동일하거나 제 2객체가 제 1객체보다 더 근접할 경우에는 상기 에지 시퀀스상에서 k최근접 질의결과가 변경되지 않음을 알 수 있다. 이에 따라, 아래의 수학식 3에 의해 안전출구 경계점(ω)이 결정된다.
이와 같이 안전출구 경계점(ω)은 상기의 수학식 3의 부등식을 만족하는 세그먼트 내의 지점이며, 만약 한 지점 이상이 상기 수학식을 만족시키기 못하면 출발점 α에서 가장 가까운 지점이 안전출구 경계점으로 선택되어진다.
도 9에서 먼저 단말의 위치 즉 질의객체 q가 놓여진 세그먼트상의 양측으로 경로를 확장시켜 질의객체 q를 시작점으로 하는 에지 시퀀스를 활성화시킨다. 즉, 표 1에서와 같이 세그먼트 뿐만 아니라 도 각각 탐색되도록 한다.
상기 표 1에서와 같이 세그먼트 에서는 출발점 α=q, 도착점 β=n2, ={o 2 , o 4 } 그리고 세그먼트상의 객체 O()={o 1 }이다. 그리고 와 의 값이 동일하지 않기 때문에 세그먼트 안에서 안전출구 경계점이 존재하게 된다.
도 10의 (a)에서는 제 1객체 즉, k최근접 질의결과에 포함된 객체중에서 단말의 기준위치에서 가장 먼 거리에 위치되는 객체를 선택하기 위해 객체 o 2 , o 4 의 거리를 비교한 그래프이고, 도 10의 (b)에서는 제 2객체 즉, k최근접 질의결과에 포함되지 않은 객체중에서 단말의 기준위치에서 가장 근접하게 위치되는 객체를 선택하기 위해 객체 o 1 , o 3 의 거리를 비교한 그래프이다.
도 10의 (a)에서와 같이, 세그먼트 상에서 객체 p에서 o 2 까지의 거리(즉, dist(p,o 2 ))는 다음와 같이 결정되어진다. p = 2인 경우에는 dist(p,o 2 ) = 3 이며, p∈인 경우에는 dist(p,o 2 ) = len(p,q) + 4 에 해당된다.
도 10의 (b)는 제 2객체의 거리변화를 나타낸 것으로, p에서 o 1 까지 거리(즉, dist(p,o 1 ))는 다음과 같이 결정되어진다. p∈인 경우에는 dist(p,o 1 ) = len(p,o 1 )이고, p∈인 경우에는 dist(p,o 1 ) = ∞이다.
마찬가지로 p에서 o 3 까지 거리(즉, dist(p,o 3 ))는 다음과 같이 결정되어진다. p=n 2 인 경우 dist(p,o 3 ) = 2이고, p∈ 경우 dist(p,o 3 ) = ∞이다.
즉, p=n 2 인 경우 dist(p,o - ) = 2이고, p∈ 인 경우 dist ( p,o - ) = len(p,o 1 )이고, p∈인 경우 dist ( p,o - ) = ∞이다.
상기와 같이 세그먼트 상에 경계점이 존재하지 않아, 에지 시퀸스상 도작점으로 설정된 o 4 를 다시 출발점으로 하여 o 4 에 인접한 세 개의 에지 시퀀스(즉, , 그리고 )들 활성화시켜 연속적으로 탐색한다. 여기서 세그먼트 는 이미 조사된 세그먼트로 탐색 대상에서 제외된다.
표 1에서와 같이, 세그먼트 에서는 출발점 α=o 4 , 도착점 β=n 2 , ={o 2 , o 4 }, ={o 2 , o 3 } 그리고 세그먼트상의 객체 O()={o 2 }이다. 그리고 와 의 값이 동일하지 않기 때문에 세그먼트 안에서 안전출구 경계점이 존재하게 된다.
도 11의 (a)에서와 같이, 객체 p에서 o 2 까지의 거리(즉, dist(p,o 2 ))는 다음과 같이 결정되어진다. p∈인 경우에는 dist(p,o 2 ) = len(p,o 2 )이다. 마찬가지로, p∈인 경우에는 dist(p,o 4 ) = len(p,o 4 )이다.
이와 같이 ={o 2 , o 4 }이므로, 세그먼트 상에서 제 1객체()와의 거리 dist(p, )는 dist(p, ) = MAX{ dist(p,o + )|p∈ , o + ∈{o 2 , o 4 }}에 의해 결정되어진다. 즉, p∈인 경우 dist(p, ) = len(p,o 4 )이고, p∈ 경우 dist(p, ) = len(p,o 2 ) 이다. 여기서 도 11의 (a)에서 지점 c 1 은 p에서 o 2 까지의 거리와 p에서 o 4 까지의 거리가 동일한 지점를 나타낸다.
도 11의 (b)를 참조하면, 객체 p에서 o 3 까지의 거리(즉, dist(p,o 3 ))는 다음과 같이 결정되어진다. p∈인 경우에는 dist(p,o 3 ) = len(p,n 2 ) + 2 에 해당된다.
이와 같이 = {o 3 }이므로, dist(p, )는 p∈인 경우 dist(p, ) = dist(p,o 3 )를 이용하여 다음과 같이 결정된다. 즉, p∈인 경우에 dist(p, ) = len(p,n 2 ) + 2 이다.
따라서 도 11의 (c)에서 보여지는 바와 같이, ω 1 지점은 제 1객체와 제 2객체가 이루는 거리가 동일한 지점(즉, dist(o 1 , ) = dist(o 1 , ))으로 수학식 3의 부등식 dist(p , ) ≥ dist(p, )에 의해 제 2객체()와 이루는 거리가 초과되는 경계점으로 ω 1 은 세그먼트 상에서의 안전출구 경계점으로 결정되어진다.
그리고 세그먼트 에서는 출발점 α=o 4 , 도착점 β=n 2 , ={o 2 , o 4 }, ={o 2 , o 3 } 그리고 세그먼트상의 객체 O()={o 5 }이다. 그리고 와 의 값이 동일하지 않기 때문에 세그먼트 안에서 안전출구 경계점이 존재하게 된다.
도 12의 (a)에서와 같이, 객체 p에서 o 2 까지의 거리(즉, dist(p,o 2 ))는 다음과 같이 결정되어진다. p∈인 경우에는 dist(p,o 2 ) = len(p,n 2 ) + 3 이고, p∈인 경우에는 dist(p,o 2 ) = len(p,o 4 ) + 1 이다.
이와 같이 ={o 2 , o 4 }이므로, 세그먼트 상에서 제 1객체()와의 거리 dist(p, )는 dist(p, ) = MAX{ dist(p,o + )|p∈ , o + ∈{o 2 , o 4 }}에 의해 결정된다. 즉, p∈인 경우 dist(p, ) = len(p,o 4 )이고, p∈ 경우 dist(p, ) = len(p,n 2 ) + 3 이다.
아울러, 도 12의 (a)에서 지점 c 2 는 p에서 o 2 까지 의 거리와 p에서 o 4 까지의 거리가 동일한 지점 p를 나타내고, c 3 는 len(p,n 2 ) + 3 = len(p,o 4 ) + 1 을 만족하는 지점 p를 가르킨다.
도 12의 (b)를 참조하면, 객체 p에서 o 3 까지의 거리(즉, dist(p,o 3 ))는 다음과 같이 결정되어진다. p∈인 경우에는 dist(p,o 3 ) = len(p,n 2 ) + 2 이다. 이와 유사하게, dist(p,o 5 )는 p∈인 경우에 dist(p,o 5 ) = len(p,o 5 ) 이다.
이와 같이 = {o 3, o 5 }이므로, p∈인 경우에 dist(p, ) = MIN{ dist ( p,o - )|p∈, o-∈{o3, o5}}를 이용하여 다음과 같이 결정된다. 즉, p=n2인 경우에는 dist(p, ) = 2, p∈ 경우에는 dist(p, ) = len(p,n 2 ) + 2 이다.
따라서 도 12의 (c)에서 보여지는 바와 같이, ω 2 지점은 제 1객체와 제 2객체가 이루는 거리가 동일한 지점(즉, dist(o 1 , ) = dist(o 1 , ))으로 수학식 3의 부등식 dist(p , ) ≥ dist(p, )에 의해 제 2객체()와 이루는 거리가 초과되는 경계점으로 ω 2 는 세그먼트 상에서의 안전출구 경계점으로 결정되어진다.
비록 본 발명이 상기 언급된 바람직한 실시예와 관련하여 설명되어졌지만, 발명의 요지와 범위로부터 벗어남이 없이 다양한 수정이나 변형을 하는 것이 가능하다. 따라서 첨부된 특허등록청구의 범위는 본 발명의 요지에서 속하는 이러한 수정이나 변형을 포함할 것이다.
100 : 서버 110 : 수신부
120 : 질의 결과 연산부 130 : 안전구역 연산부
131 : 비교대상 영역 활성모듈 132 : 질의 결과 비교모듈
133 : 경계점 확인모듈 134 : 경계점 위치 계산모듈
134a : 제 1객체 선택블럭 134b : 제 2객체 선택블럭
134c : 경계점 탐색블럭 140 : 전송부
200 : 클라이언드 단말 210 : 질의 요청부
220 : 수신부 230 : 현재 위치 확인부
240 : 질의 결과 제공부
120 : 질의 결과 연산부 130 : 안전구역 연산부
131 : 비교대상 영역 활성모듈 132 : 질의 결과 비교모듈
133 : 경계점 확인모듈 134 : 경계점 위치 계산모듈
134a : 제 1객체 선택블럭 134b : 제 2객체 선택블럭
134c : 경계점 탐색블럭 140 : 전송부
200 : 클라이언드 단말 210 : 질의 요청부
220 : 수신부 230 : 현재 위치 확인부
240 : 질의 결과 제공부
Claims (13)
- 클라이언트 단말로부터 적어도 하나 이상의 객체에 대한 k최근접 질의에 대한 요청을 서버가 수신하는 단계;
상기 서버에서 방향성을 가지는 도로상의 거리에 기초하여 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과 및 상기 k최근접 질의 결과와 동일한 k최근접 질의 결과를 제공하는 안전구역을 연산하는 단계;
상기 단말로 k최근접 질의 결과 및 안전구역 정보를 전송하는 단계를 포함하고,
상기 안전구역을 연산하는 단계는
상기 단말의 위치와 인접하는 하나 이상의 교차점 또는 객체 각각에 대한 k최근접 질의 결과와 상기 단말의 위치를 기준으로 하는 k최근접 질의결과를 비교하되, 상기 단말의 현재위치를 출발점으로 하고 상기 단말의 현재위치에 해당하는 도로 세그먼트상의 양측 교차점 또는 도로 세그먼트내에 존재하는 객체 중 어느 하나의 지점을 도착점으로 하는 에지 시퀀스를 활성화시키는 단계;
상기 활성화된 에지 시퀀스상의 k최근접 질의결과과 상기 단말의 위치를 기준으로 하는 k최근접 질의결과를 비교하여 안전출구 경계점이 상기 에지 시퀀스상에 존재하는지 여부를 확인하는 단계;
상기 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스상에서 상기 도착점의 위치를 계산하는 단계를 포함하는 것을 특징으로 하는 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전구역 연산방법.
- 제 1항에 있어서,
상기 안전출구 경계점이 상기 에지 시퀀스상에 존재하는지 여부를 확인하는 단계에서 안전출구 경계점이 존재하지 않을 경우에는
상기 안전출구 경계점이 탐색될 때까지 상기 활성화된 에지 시퀀스의 도착점을 출발점으로 하고 인접한 도로 세그먼트상의 교차점 또는 객체 중 어느 하나를 도착점으로 하는 에지 시퀀스를 연속적으로 활성화시키는 것을 특징으로 하는 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전구역 연산방법.
- 제 3항에 있어서,
상기 에지 시퀀스상에 안전출구 경계점 존재하는 것으로 판단된 경우 상기 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스상의 안전출구 경계점의 위치를 계산하는 단계를 더 포함하여,
상기 안전출구 경계점의 위치를 계산하는 단계는
상기 단말의 위치를 기준으로 하는 k최근접 질의 결과에 포함된 객체들 중에서, 상기 도착점이 존재하는 것으로 확인된 에지 시퀀스를 따라 k최근접 질의의 기준위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준위치로부터 멀어지고 상기 단말의 위치에서 가장 멀리 있는 제 1객체를 선택하는 단계;
상기 단말의 위치를 기준으로 하는 k최근접 질의 결과에 포함되지 않은 객체들 중에서, 상기 도착점이 존재하는 것으로 확인된 에지 시퀀스를 따라 k최근접 질의의 기준위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준위치에 가까워지고 상기 단말의 위치에서 가장 가까이 있는 제 2객체를 선택하는 단계; 및
상기 제 1객체 및 제 2객체를 하기 수학식 2에 대입시켜 상기 수학식의 조건을 만족시키지 못하면서 상기 출발점에 가장 가까운 지점을 상기 안전출구 경계점으로 선택하는 단계를 포함하는 것을 특징으로 하는 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전구역 연산방법.
[수학식 2]
여기서 는 제 1객체이고, 는 제 2객체이고, ω는 안전출구 경계점을 나타낸다.
- 제 4항에 있어서,
상기 수학식 2를 만족하는 지점값들이 2개 또는 그 이상일 경우에는 상기 에지 시퀀스의 출발점에서 가장 가까운 지점이 안전출구 경계점으로 선택되는 것을 특징으로 하는 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전구역 연산방법.
- 클라이언트 단말로부터 적어도 하나 이상의 객체에 대한 k최근접 질의에 대한 요청을 수신하는 수신부;
상기 요청에 응답하여, 방향성을 가지는 도로상의 거리에 기초하여 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과를 연산하는 질의 결과 연산부;
상기 단말의 위치를 기준으로 하는 k최근접 질의 결과와 동일한 k최근접 질의 결과를 제공하는 안전구역을 연산하는 안전구역 연산부; 및
상기 요청에 응답하여, 상기 단말의 위치를 기준으로 하는 k최근접 질의 결과 및 상기 안전구역에 대한 정보를 상기 단말로 전송하는 전송부;를 포함하고,
상기 안전구역 연산부는
상기 단말의 기준위치를 출발점으로 하고 상기 단말의 기준위치에 해당하는 도로 세그먼트상의 교차점, 끝점 또는 도로 네트워크상에 존재하는 관심지점 객체 중 어느 하나의 지점을 도착점으로 하는 에지 시퀀스를 활성화시키고, 상기 활성화된 에지 시퀀스상의 출발점과 도착점을 기준으로 하는 k최근접 질의결과를 비교하여 상기 안전구역에 대한 정보를 추출하는 것을 특징으로 하는 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의 연산 장치.
- 제 6항에 있어서,
상기 안전구역 연산부는
상기 단말의 기준위치 또는 도로 세그먼트상에서 상기 단말과 인접하는 교차점 또는 끝점 또는 도로 세그먼트상의 특정 관심지점 객체 중 어느 하나를 출발점으로 하고 다른 하나를 도착점으로 하는 에지 시퀀스를 연속적으로 활성화시키는 비교대상 영역 활성모듈;
상기 단말의 기준위치에서의 k최근접 질의결과와 상기 비교대상 영역 활성모듈에서 활성화된 에지 시퀀스의 출발점과 도착점에서의 k최근접 질의결과를 비교하는 질의 결과 비교모듈;
비교 결과를 이용하여 상기 활성화된 에지 시퀀스상에서 안전구역에 대한 안전출구 경계점이 존재하는지 여부를 확인하는 경계점 확인모듈; 및
상기 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스 상에서 상기 경계점의 위치를 계산하는 경계점 위치 계산모듈;을 포함하는 것을 특징으로 하는 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의 연산 장치.
- 제 7항에 있어서,
상기 경계점 확인모듈은
상기 에지 시퀀스의 출발점 및 도착점에서의 k최근접 질의결과와 상기 단말의 기준위치에서의 k최근접 질의결과가 일치하고, 상기 에지 시퀀스상에 존재하는 객체가 상기 에지 시퀀스의 출발점에서의 k최근접 질의결과에 속할 경우에는 상기 에지 시퀀스상에 안전출구 경계점이 존재하지 않는 것으로 판단하는 것을 특징으로 하는 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의 연산 장치.
- 제 7항에 있어서,
상기 경계점 위치 계산모듈은
상기 단말의 위치를 기준으로 하는 k최근접 질의 결과에 포함된 객체들 중에서, 상기 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스를 따라 k최근접 질의의 기준위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준위치로부터 멀어지고 상기 단말의 위치에서 가장 멀리 있는 제 1객체를 선택하는 제 1객체 선택블럭;
상기 단말의 위치를 기준으로 하는 k최근접 질의 결과에 포함되지 않은 객체들 중에서, 상기 안전출구 경계점이 존재하는 것으로 확인된 에지 시퀀스를 따라 k최근접 질의의 기준위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준위치에 가까워지고 상기 단말의 위치에서 가장 가까이 있는 제 2객체를 선택하는 제 2객체 선택블럭;
상기 에지 시퀀스상을 가상적으로 이동하는 특정 지점에서 상기 제 2객체와 이루는 거리가 상기 제 1객체와 이루는 거리를 초과하게 되는 지점들 중 상기 에지 시퀀스의 출발점에 가장 가까운 지점을 안전출구 경계점으로 선택하는 경계점 탐색블럭;을 포함하는 것을 특징으로 하는 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의 연산 장치.
- 제1 위치를 기준으로 하는 k최근접 질의를 서버에 요청하는 단계;
상기 제1 위치를 기준으로 하는 k최근접 질의 결과 및 상기 제1 위치를 기준으로 하는 k최근접 질의 결과와 동일한 결과를 제공하는 안전구역에 대한 정보를 수신하는 단계;
현재 위치를 확인하는 단계; 및
상기 현재 위치가 상기 안전구역 내에 포함되면 상기 제1 위치를 기준으로 하는 k최근접 질의 결과를 상기 현재 위치에 대한 k최근접 질의 결과로서 사용자에게 제공하는 단계를; 포함하고,
상기 안전구역에 대한 정보는
단말의 위치와 인접하는 하나 이상의 교차점 또는 객체 각각에 대한 k최근접 질의 결과와 상기 단말의 위치를 기준으로 하는 k최근접 질의결과를 비교하되, 상기 단말의 현재위치를 출발점으로 하고 상기 단말의 현재위치에 해당하는 도로 세그먼트상의 양측 교차점 또는 도로 세그먼트내에 존재하는 객체 중 어느 하나의 지점을 도착점으로 하는 에지 시퀀스를 활성화시켜, 상기 활성화된 에지 시퀀스상의 k최근접 질의결과와 상기 단말의 위치를 기준으로 하는 k최근접 질의결과를 비교하여 추출된 정보인 것을 특징으로 하는 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의 결과 제공 방법.
- 제 10항에 있어서,
상기 현재 위치가 상기 안전구역 내에 포함되지 않으면, 상기 서버로 새로운 기준 위치에 대한 k최근접 질의를 요청하는 단계를 더 포함하는 것을 특징으로 하는 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의 결과 제공 방법.
- 제1 위치를 기준으로 하는 k최근접 질의를 서버에 요청하는 질의 요청부;
상기 제1 위치를 기준으로 하는 k최근접 질의 결과 및 상기 제1 위치를 기준으로 하는 k최근접 질의 결과와 동일한 결과를 제공하는 안전구역에 대한 정보를 수신하는 수신부;
현재 위치를 확인하는 현재 위치 확인부; 및
상기 현재 위치가 상기 안전구역 내에 포함되면 상기 제1 위치를 기준으로 하는 k최근접 질의 결과를 상기 현재 위치에 대한 k최근접 질의 결과로서 사용자에게 제공하는 질의 결과 제공부;를 포함하고,
상기 안전구역에 대한 정보는
단말의 기준위치를 출발점으로 하고 상기 단말의 기준위치에 해당하는 도로 세그먼트상의 교차점, 끝점 또는 도로 네트워크상에 존재하는 관심지점 객체 중 어느 하나의 지점을 도착점으로 하는 에지 시퀀스를 활성화시켜, 상기 활성화된 에지 시퀀스상의 k최근접 질의결과와 상기 단말의 위치를 기준으로 하는 k최근접 질의결과를 비교하여 추출된 정보인 것을 특징으로 하는 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의 결과 제공 장치.
- 제 12항에 있어서,
상기 질의 요청부는
상기 현재 위치가 상기 안전구역 내에 포함되지 않으면, 상기 서버로 새로운 기준 위치에 대한 k최근접 질의를 요청하는 것을 특징으로 하는 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의 결과 제공 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150163393A KR101712847B1 (ko) | 2015-11-20 | 2015-11-20 | 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전출구 위치를 계산하는 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150163393A KR101712847B1 (ko) | 2015-11-20 | 2015-11-20 | 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전출구 위치를 계산하는 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101712847B1 true KR101712847B1 (ko) | 2017-03-07 |
Family
ID=58411310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150163393A KR101712847B1 (ko) | 2015-11-20 | 2015-11-20 | 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전출구 위치를 계산하는 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101712847B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220058209A (ko) * | 2020-10-30 | 2022-05-09 | 경북대학교 산학협력단 | 도로 네트워크에서 다중 k-최원접 이웃 검색 질의 그룹 처리 방법 및 도로 네트워크에서 다중 k-최원접 이웃 검색 질의 그룹을 처리하는 장치 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080113953A (ko) * | 2007-06-26 | 2008-12-31 | 전북대학교산학협력단 | 보로노이 다이어그램을 기반으로 한 최근접점 탐색 방법 및그 시스템 |
KR100970134B1 (ko) | 2008-05-23 | 2010-07-14 | 에스케이마케팅앤컴퍼니 주식회사 | 경로 안내 시스템, 경로 안내 방법 및 방법 프로그램을기록한 저장매체 |
KR20120096894A (ko) * | 2011-02-23 | 2012-08-31 | 하만 베커 오토모티브 시스템즈 게엠베하 | 데이터베이스 검색방법, 네비게이션 장치 및 인덱스 구조 생성 방법 |
KR20140026669A (ko) * | 2012-08-22 | 2014-03-06 | 아주대학교산학협력단 | 도로 네트워크에서 움직이는 k-최근접 질의의 안전 출구 위치를 계산하는 방법 |
KR20140102373A (ko) * | 2013-02-13 | 2014-08-22 | 아주대학교산학협력단 | 도로 네트워크에서 움직이는 k-최근접 질의를 위한 안전한 모니터링 기법 |
-
2015
- 2015-11-20 KR KR1020150163393A patent/KR101712847B1/ko active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080113953A (ko) * | 2007-06-26 | 2008-12-31 | 전북대학교산학협력단 | 보로노이 다이어그램을 기반으로 한 최근접점 탐색 방법 및그 시스템 |
KR100970134B1 (ko) | 2008-05-23 | 2010-07-14 | 에스케이마케팅앤컴퍼니 주식회사 | 경로 안내 시스템, 경로 안내 방법 및 방법 프로그램을기록한 저장매체 |
KR20120096894A (ko) * | 2011-02-23 | 2012-08-31 | 하만 베커 오토모티브 시스템즈 게엠베하 | 데이터베이스 검색방법, 네비게이션 장치 및 인덱스 구조 생성 방법 |
KR20140026669A (ko) * | 2012-08-22 | 2014-03-06 | 아주대학교산학협력단 | 도로 네트워크에서 움직이는 k-최근접 질의의 안전 출구 위치를 계산하는 방법 |
KR20140102373A (ko) * | 2013-02-13 | 2014-08-22 | 아주대학교산학협력단 | 도로 네트워크에서 움직이는 k-최근접 질의를 위한 안전한 모니터링 기법 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220058209A (ko) * | 2020-10-30 | 2022-05-09 | 경북대학교 산학협력단 | 도로 네트워크에서 다중 k-최원접 이웃 검색 질의 그룹 처리 방법 및 도로 네트워크에서 다중 k-최원접 이웃 검색 질의 그룹을 처리하는 장치 |
KR102416960B1 (ko) | 2020-10-30 | 2022-07-05 | 경북대학교 산학협력단 | 도로 네트워크에서 다중 k-최원접 이웃 검색 질의 그룹 처리 방법 및 도로 네트워크에서 다중 k-최원접 이웃 검색 질의 그룹을 처리하는 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Subedi et al. | Improving indoor fingerprinting positioning with affinity propagation clustering and weighted centroid fingerprint | |
JP4980247B2 (ja) | 測位システムにおける連続データ最適化 | |
JP5450689B2 (ja) | 測位システムにおける連続データ最適化 | |
JP4968960B2 (ja) | Toa(到達時刻)とrss(受信信号強度)の融合による適応型対象測位方法、装置、システム、および当該システムを利用した対象追跡方法 | |
US9479904B2 (en) | Methods, apparatuses and computer program products for providing automatic maintenance of a geoposition system | |
KR101479498B1 (ko) | 도로 네트워크에서 움직이는 k-최근접 질의를 위한 안전한 모니터링 기법 | |
KR101154732B1 (ko) | 신뢰도 기반의 무선랜 ap를 이용한 무선 디바이스의 실시간 위치 추적 시스템 및 방법 | |
TW201741625A (zh) | 室內導航的方法、裝置及系統 | |
JP2011099859A (ja) | 無線lanapを利用した無線デバイスの位置追跡システム及び方法 | |
CN107110652B (zh) | 处理空间特征 | |
US9752888B2 (en) | Method and apparatus of computing location of safe exit for moving range query in road network | |
US9979559B2 (en) | Feedback in a positioning system | |
Zhang et al. | A scalable indoor localization algorithm based on distance fitting and fingerprint mapping in Wi-Fi environments | |
Shokry et al. | The tale of two localization technologies: Enabling accurate low-overhead WiFi-based localization for low-end phones | |
KR101625957B1 (ko) | 도로 네트워크에서 움직이는 영역내의 관심지점 k 최접근 질의 결과 연산 시스템 및 그에 따른 연산방법 | |
KR101423031B1 (ko) | 도로 네트워크에서 움직이는 k-최근접 질의의 안전 출구 위치를 계산하는 방법 | |
Chen et al. | Crowdx: Enhancing automatic construction of indoor floorplan with opportunistic encounters | |
KR101712847B1 (ko) | 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전출구 위치를 계산하는 방법 | |
Kolakowski et al. | Static LiDAR assisted UWB anchor nodes localization | |
WO2018211261A1 (en) | Method of mapping indoor region | |
GB2570853A (en) | Identifying sites visited by a user device | |
Ji et al. | Generating indoor Wi-Fi fingerprint map based on crowdsourcing | |
Junoh et al. | Enhancing indoor localization with semi-crowdsourced fingerprinting and gan-based data augmentation | |
CN106776993B (zh) | 一种基于时序约束活动意向的路径推荐方法及系统 | |
Xu et al. | Variance-based fingerprint distance adjustment algorithm for indoor localization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20200203 Year of fee payment: 4 |