KR101423031B1 - 도로 네트워크에서 움직이는 k-최근접 질의의 안전 출구 위치를 계산하는 방법 - Google Patents

도로 네트워크에서 움직이는 k-최근접 질의의 안전 출구 위치를 계산하는 방법 Download PDF

Info

Publication number
KR101423031B1
KR101423031B1 KR1020120091566A KR20120091566A KR101423031B1 KR 101423031 B1 KR101423031 B1 KR 101423031B1 KR 1020120091566 A KR1020120091566 A KR 1020120091566A KR 20120091566 A KR20120091566 A KR 20120091566A KR 101423031 B1 KR101423031 B1 KR 101423031B1
Authority
KR
South Korea
Prior art keywords
nearest neighbor
terminal
location
neighbor query
boundary point
Prior art date
Application number
KR1020120091566A
Other languages
English (en)
Other versions
KR20140026669A (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 KR1020120091566A priority Critical patent/KR101423031B1/ko
Publication of KR20140026669A publication Critical patent/KR20140026669A/ko
Application granted granted Critical
Publication of KR101423031B1 publication Critical patent/KR101423031B1/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/3446Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W16/00Network planning, e.g. coverage or traffic planning tools; Network deployment, e.g. resource partitioning or cells structures
    • H04W16/02Resource partitioning among network components, e.g. reuse partitioning
    • H04W16/06Hybrid resource partitioning, e.g. channel borrowing
    • H04W16/08Load shedding arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/024Guidance services

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Navigation (AREA)

Abstract

본 발명은 도로 네트워크에서 움직이는 k-최근접 질의 결과 및 안전 출구 위치를 계산하는 방법에 관한 것으로, 보다 상세하게는 클라이언트 단말의 요청을 수신하여 k-최근접 질의 결과와 안전 지역 및 안전 출구 위치를 함께 제공하는 방법 및 장치에 관한 것이다
본 발명은 서버에서 질의 처리뿐만 아니라 질의 결과와 동일한 k-최근접 질의 결과를 제공하는 안전구역을 함께 제공하여 클라이언트 단말이 안전 구역 내에 위치하는 경우 서버와 클라이언트 단말간의 통신을 최소화하는 방식을 개발한다. 이러한 기법을 통하여 서버의 계산 비용을 줄이고, 클라이언트와 서버 사이의 통신비용을 줄이는 것을 목적으로 한다.

Description

도로 네트워크에서 움직이는 k-최근접 질의의 안전 출구 위치를 계산하는 방법 {A METHOD FOR COMPUTING SAFE EXIT POINTS OF MOVING K-NEAREST NEIGHBOR QUERIES IN ROAD NETWORKS}
본 발명은 도로 네트워크에서 움직이는 k-최근접 질의 결과 및 안전 출구 위치를 계산하는 방법에 관한 것으로, 보다 상세하게는 클라이언트 단말의 요청을 수신하여 k-최근접 질의 결과와 안전 지역 및 안전 출구 위치를 함께 제공하는 방법 및 장치에 관한 것이다.
본 발명은 교육과학기술부 및 한국연구재단의 일반연구자지원사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2010-0013487, 과제명: 차세대 플래시 메모리 시스템을 지원하는 시스템 소프트웨어에 대한 연구].
이동 통신망, GPS 등과 같은 위치 탐색 및 서비스 기술이 발전함에 따라, 최근에는 이동 객체의 위치 기반 서비스를 지원하는 응용 분야에 대한 관심이 높아졌다. 이동 객체의 위치 기반 서비스는 이동 객체와 주유소 등과 같은 정적 객체의 위치 정보를 효율적으로 검색하기 위한 k-최근접 이웃 검색을 요구한다.
도로 네트워크 정보, 이동 객체의 정보, 정적 객체 정보 등이 저장된 데이터베이스를 도로 네트워크 데이터베이스(road network databases)라 하며, 도로 네트워크 데이터베이스에서 도로 네트워크는 방향성을 가진 그래프로 모델링 된다.
하나의 도로 세그먼트(road segment)는 그래프의 간선에 해당되며, 서로 다른 두 도로 세그먼트가 만나는 지점이 그래프의 노드에 해당된다.
또한, 도로 네트워크 위에 정류소, 학교, 호텔 등과 같은 시설물들은 정적 객체로 모델링 되며, 자동차, 사람과 같은 이동성을 가지고 있는 객체는 이동 객체로 모델링 된다.
도로 네트워크 데이터베이스에서 사용되는 질의들은 K-최근접 이웃 검색(k-nearest neighbor queries), 영역 질의(range queries), 공간 조인 질의(spatial join queries) 등이 있다.
기존 유클리드 공간상에서는 임의의 두 객체의 절대 위치만으로도 그 객체들 간의 유클리드 거리를 계산할 수 있다. 그러나 도로 네트워크 공간상에서 이동 객체는 미리 정의된 도로 네트워크 위로만 움직일 수 있기 때문에 객체의 절대 위치만으로 객체들 간의 네트워크 거리(network distance)를 계산할 수 없다. 여기서, 두 객체간의 네트워크 거리란 도로 네트워크에서 임의의 두 객체간의 최단 경로 상에 존재하는 도로 세그먼트 길이들의 총 합이다.
즉, 절대 위치가 같아도 두 점간을 연결하는 네트워크의 상황에 따라 거리가 달라지기 때문에 임의의 두 점간의 네트워크 거리는 두 점의 절대 위치만을 가지고 계산할 수 없다. 네트워크 거리를 효율적으로 구하기 위한 다양한 방법들이 연구되어 왔으며, 대표적인 예로는 IER 기법, INE 기법, VN 기법 등이 있다.
이와 같이 두 객체간의 거리를 계산하는 개발에 있어 효율성을 높일 수 있는 네트워크 계산방법에 대한 종래 기술의 한 예가 한국등록특허 제10-0970134호 "경로 안내 시스템, 경로 안내 방법 및 방법 프로그램을 기록한 저장매체"에 도시되었다. 도로 네트워크에서 단말기로부터 목적지까지 경로 안내 요청을 받은 서버에서 선정된 출발지 및 목적지 링크를 기초로 목적지까지의 경로를 생성하여 안내 정보를 제공하고 안내 대상 링크가 연속 좌회전 구간에 포함된 좌회전 전용 링크인 경우, 진출입 링크 각도에 관계없이, 시간 방향 정보를 포함하지 않는 좌측 주행 정보를 포함하는 일반 좌회전 안내 정보를 함께 제공하는 목적을 가지고 도출되었다.
그러나 상기 선행기술에 의하더라도, 최단거리를 계산하는 방법에서 서버와 클라이언트 단말간에 주기적으로 통신하기 때문에, 통신비용이 증가하고 서버는 클라이언트들의 요구 조건에 부합하는 객체를 검색하고 제공하기 때문에, 클라이언트 수가 증가하면, 서버의 계산 비용도 크게 증가하는 문제점이 존재한다.
한국 등록특허 10-0970134호
본 발명은 상기와 같은 종래 기술의 문제점을 해결하고자 도출된 것으로서, 종래의 네트워크 거리를 효율적으로 구하기 위한 다양한 방법 중 IER 기법은 유클리드 거리가 네트워크 거리보다 항상 작거나 같은 성질을 이용한다. 먼저, 유클리드 거리를 기준으로 후보들을 찾고, 이들만을 대상으로 실제 네트워크 거리를 구한다. 저장 공간 오버헤드가 작다는 장점을 가지고 있지만, 여러 번의 시행 착오를 겪기 때문에 질의 처리 성능이 크게 떨어진다.
또한, INE 기법은 질의 점으로부터 도로 세그먼트를 차례로 확장해 가면서 정적 객체의 유무를 검색한다. IER 기법과 마찬가지로, 저장 공간 오버헤드가 작다는 장점을 가지고 있지만, 다수의 디스크 액세스가 필요하기 때문에 질의 처리 성능이 좋지 않다. VN 기법은 각 정적 객체와 인접한 다른 정적 객체간의 거리가 같은 지점들을 기준으로 전체 네트워크 공간을 셀들의 집합으로 나눈다. 효과적인 질의 처리를 위하여 각 셀 안의 모든 정적 객체, 노드, 셀 경계선간 거리를 선계산(pre-computation)해둔다.
또한, VN 기법은 IER 기법 및 INE 기법과 비교하여 질의 처리 성능이 뛰어 나지만, 저장 공간의 오버헤드가 지나치게 크다는 단점이 있다.
이에 따라, 본 발명은 서버에서 질의 처리뿐만 아니라 질의 결과와 동일한 k-최근접 질의 결과를 제공하는 안전구역을 함께 제공하여 클라이언트 단말이 안전 구역 내에 위치하는 경우 서버와 클라이언트 단말간의 통신을 최소화하는 방식을 개발한다. 이러한 기법을 통하여 서버의 계산 비용을 줄이고, 클라이언트와 서버 사이의 통신비용을 줄이는 것을 목적으로 한다.
상기와 같은 목적을 달성하기 위해서, 본 발명의 일 실시예에 따른 서버는 수신부, 질의 결과 연산부, 안전구역 연산부, 전송부를 포함하고, 클라이언트 단말은 질의 요청부, 수신부, 현재 위치 확인부, 질의 결과 제공부를 포함한다.
k-최근접 연산장치의 수신부는 클라이언트 단말로부터 소정 객체에 대한 k-최근접 질의에 대한 요청을 수신한다.
질의 결과 연산부는 요청에 응답하여, 단말의 위치를 기준으로 하는 k-최근접 질의 결과를 연산한다.
안전구역 연산부는 단말의 위치를 기준으로 하는 k-최근접 질의 결과와 동일한 k-최근접 질의 결과를 제공하는 안전구역을 연산한다.
전송부는 단말의 소정 객체에 대한 k-최근접 질의 요청에 응답하여, 단말의 위치를 기준으로 하는 k-최근접 질의 결과 및 안전구역에 대한 정보를 단말로 전송한다.
클라이언트 단말은 질의 요청부는 제1 위치를 기준으로 하는 k-최근접 질의를 서버에 요청한다.
이때, 현재 위치가 상기 안전구역 내에 포함되지 않거나, 현재 위치가 안전구역을 곧 벗어날 것으로 예상되면, 서버로 새로운 기준 위치에 대한 k-최근접 질의를 요청할 수 있다.
수신부는 제1 위치를 기준으로 하는 k-최근접 질의 결과 및 제1 위치를 기준으로 하는 k-최근접 질의 결과와 동일한 결과를 제공하는 안전구역에 대한 정보를 수신한다.
현재 위치 확인부는 현재 위치를 확인하고, 질의 결과 제공부는 현재 위치가 안전구역 내에 포함되면 제1 위치를 기준으로 하는 k-최근접 질의 결과를 현재 위치에 대한 k-최근접 질의 결과로서 사용자에게 제공한다.
이 같은 과정을 통하여, 본 발명의 k-최근접 질의 결과 및 안전 구역을 제공하는 방법은 서버에서 클라이언트 단말의 k-최근접 질의 요청을 수신하여 k-최근접 질의 요청결과를 계산하여 클라이언트 단말로 전송한다. 한편, 서버는 k-최근접 질의 결과를 보장하는 안전 구역도 함께 연산 처리하여 클라이언트 단말로 제공하고, 클라이언트 단말은 서버로부터 제공된 정보를 활용하여 안전 구역을 벗어나게 되면 새로운 k-최근접 질의를 요청한다.
본 발명은 분산 알고리즘을 사용하여 클라이언트 단말의 수가 증가해도 서버의 부하가 크게 증가하지 않기 때문에 피크 타임의 부하를 견디기 위한 추가적인 서버의 증설 비용을 줄일 수 있다. 즉, 본 발명에 따르면 서버의 계산 작업의 일부를 클라이언트가 분담하여 처리하므로, 서버의 부하가 분산되는 효과가 있다.
또한, 클라이언트 단말이 안전 구역을 벗어날 때만 서버에게 k-최근접 질의를 요청하기 때문에 클라이언트 단말과 서버간의 통신 비용이 절감되는 효과가 있다. 또한, 클라이언트 단말과 서버 간의 통신 횟수와 통신 데이터 양이 절감되어, 네트워크의 부하를 줄일 수 있으며, 다른 사용자들의 통신에 영향을 최소화할 수 있다.
도 1은 본 발명의 일 실시예에 따른 안전 구역을 연산하는 서버의 개념적인 구성을 나타낸 것이다.
도 2는 도 1의 안전구역 연산부(130)의 일 예의 개념적인 구성을 나타낸 것이다.
도 3은 도 2의 경계점 위치 계산부(133)의 일 예의 개념적인 구성을 나타낸 것이다.
도 4는 본 발명의 일 실시예에 따른, 사용자에게 k-최근접 질의 결과를 제공하는 클라이언트 단말의 개념적인 구성을 나타낸 것이다.
도 5는 본 발명의 일 실시예에 따른 서버에서 실행되는 k-최근접 질의 연산 방법에 대한 동작흐름도를 나타낸 것이다.
도 6은 본 발명의 일 실시예에 따른 교차점에 대한 k-최근접 질의 결과를 이용하여 안전구역을 계산하는 과정의 동작흐름도를 나타낸 것이다.
도 7은 본 발명의 일 실시예에 따른 안전구역의 경계점을 연산하는 과정을 더욱 상세하게 설명하는 동작흐름도를 나타낸 것이다.
도 8은 본 발명의 일 실시예에 따른 위치변동에 따른 경계점의 위치를 계산하는 과정을 더욱 상세하게 설명하는 동작흐름도를 나타낸 것이다.
도 9는 위치변동에 따른 경계점의 위치를 계산하는 과정에 대한 또 다른 실시예의 동작흐름도를 나타낸 것이다.
도 10은 본 발명의 일 실시예에 따른 k-최근접 질의를 미리 수행하는 과정을 더욱 상세하게 설명하는 동작흐름도를 나타낸 것이다.
도 11은 본 발명의 일 실시예에 따른 클라이언트 단말에서 k-최근접 질의 결과를 사용자에게 제공하는 방법의 동작흐름도를 나타낸 것이다.
도 12는 본 발명의 일 실시예에 따른 안전지역 및 경계점을 포함하는 도로 네트워크를 나타낸 것이다.
도 13은 본 발명의 일 실시예에 따른 기준 위치의 변동에 따라 최근접 객체가 아닌 객체들 중 가장 가까이 있는 객체를 선택하는 방법을 나타낸 것이다.
도 14는 본 발명의 일 실시예에 따른 기준 위치의 변동에 따라 최근접 객체들 중 가장 멀리 있으며, 또한 멀어지는 객체를 선택하는 방법을 나타낸 것이다.
도 15는 본 발명의 일 실시예에 따른 최근접 객체들 중 가장 멀리 있는 객체와 최근접 객체가 아닌 객체들 중 가장 가까이 있는 객체 각각까지의 거리가 서로 교차되는 위치를 탐색하여 경계점의 위치를 선택하는 방법을 나타낸 것이다.
상기 목적 외에 본 발명의 다른 목적 및 특징들은 첨부 도면을 참조한 실시 예에 대한 설명을 통하여 명백히 드러나게 될 것이다.
본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 서버의 개념적인 구성을 나타낸 것이다.
서버(100)는 수신부(110), 질의 결과 연산부(120), 안전구역 연산부(130), 전송부(140)를 포함한다.
수신부(110)는 클라이언트 단말로부터 적어도 하나 이상의 객체에 대한 k-최근접 질의에 대한 요청을 수신한다.
질의 결과 연산부(120)는 수신부(110)에서 수신된 요청에 응답하여, 단말의 위치를 기준으로 하는 k-최근접 질의 결과를 연산한다.
이때, 요청 정보 확인부에서 수신부(110)에 수신된 k-최근접 질의에 대한 요청으로부터 검색 대상 객체의 종류 또는 범위에 대한 정보를 확인하여, 질의 결과 연산부(120)에서 요청 정보 확인부에 확인된 정보를 이용하여 하나 이상의 교차점 각각에 대한 k- 최근접 질의 결과를 연산할 수 있다.
안전구역 연산부(130)는 단말의 위치를 기준으로 하는 k-최근접 질의 결과와 동일한 k-최근접 질의 결과를 제공하는 안전구역을 연산한다.
또한, 안전구역의 경계점의 도로 상의 위치를 추출하여 전송부(140)에서 추출된 안전구역의 경계점의 도로 상의 위치에 대한 정보를 단말로 전송할 수 있다.
이때, 경계점은 바깥점, 안전구역 출구의 위치와 동등하게 표현할 수 있다.
또한, 질의 결과 연산부(120)에서 미리 결정된 조건을 만족하며 단말의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과를 연산하여 안전구역 연산부(130)에서 단말의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과와 단말의 위치를 기준으로 하는 k-최근접 질의 결과를 비교하여 안전구역에 대한 정보를 추출할 수 있다.
전송부(140)는 수신부(110)에 수신된 요청에 응답하여, 단말의 위치를 기준으로 하는 k-최근접 질의 결과 및 안전구역에 대한 정보를 함께 단말로 전송한다.
도 2는 본 발명의 일 실시예에 따른 안전구역 연산부의 개념적인 구성을 나타낸 것이다.
안전구역 연산부(130)는 질의 결과 비교부(131), 경계점 확인부(132), 경계점 위치 계산부(133)를 포함한다.
질의 결과 비교부(131)는 단말의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과와 단말의 위치를 기준으로 하는 k-최근접 질의 결과를 비교한다.
경계점 확인부(132)는 질의 결과 비교부(131)에서 비교한 비교 결과를 이용하여 단말의 위치와 인접하는 하나 이상의 교차점 각각과 단말의 위치 사이에 상기 안전구역에 대한 경계점이 존재하는 지 여부를 확인한다.
경계점 위치 계산부(133)는 경계점 확인부(132)에서 경계점이 존재하는 것으로 확인될 경우 확인된 도로 위에서 경계점의 도로 상의 위치를 계산한다.
이때, 경계점이 존재하는 것으로 확인된 도로 상에서 k-최근접 질의의 기준 위치의 가상적인 이동에 따른 주변의 객체들과의 거리의 변동을 고려하여 경계점의 상기 도로 상의 위치를 계산할 수 있다.
도 3은 본 발명의 일 실시예에 따른 경계점 위치 계산부의 개념적인 구성을 나타낸 것이다.
경계점 위치 계산부(133)는 제1 객체 선택부(310), 제2 객체 선택부(320), 교차점 탐색부(330), 경계점 선택부(340)를 포함한다.
제1 객체 선택부(310)는 단말의 위치를 기준으로 하는 k-최근접 질의 결과에 포함된 객체들 중에서, 경계점이 존재하는 것으로 확인된 도로를 따라 k-최근접 질의의 기준 위치를 단말의 위치로부터 가상적으로 이동함에 따라 기준 위치로부터 멀어지고 단말의 위치에서 가장 멀리 있는 제1 객체를 선택한다.
제2 객체 선택부(320)는 단말의 위치를 기준으로 하는 k-최근접 질의 결과에 포함되지 않은 객체들 중에서, 경계점이 존재하는 것으로 확인된 도로를 따라 기준 위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 기준 위치에 가까워지고 상기 단말의 위치에서 가장 가까이 있는 제2 객체를 선택한다.
교차점 탐색부(330)는 경계점이 존재하는 것으로 확인된 도로를 따라 기준 위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 기준 위치로부터 제1 객체 및 제2 객체 각각까지의 거리가 서로 교차되는 위치를 탐색한다.
경계점 선택부(340)는 교차점 탐색부(330)에 의해서 탐색된 위치를 경계점이 존재하는 것으로 확인된 도로 상의 경계점의 위치로 선택한다.
도 4는 본 발명의 일 실시예에 따른 클라이언트 단말의 개념적인 구성을 나타낸 것이다.
클라이언트 단말(400)는 질의 요청부(410), 수신부(420), 현재 위치 확인부(430), 질의 결과 제공부(440)를 포함한다.
질의 요청부(410)는 단말(400)이 제1 위치를 기준으로 하는 k-최근접 질의를 서버(100)에 요청한다.
또한, 단말(400)의 현재 위치가 안전구역 내에 포함되지 않거나, 현재 위치가 안전구역을 곧 벗어날 것으로 예상되면, 서버(100)로 새로운 기준 위치에 대한 k-최근접 질의를 요청할 수 있다.
수신부(420)는 제1 위치를 기준으로 하는 k-최근접 질의 결과 및 상기 제1 위치를 기준으로 하는 k-최근접 질의 결과와 동일한 결과를 제공하는 안전구역에 대한 정보를 수신한다. 이때, k-최근접 질의 결과와 안전구역에 대한 정보를 함께 수신할 수도 있다.
현재 위치 확인부(430)는 단말(400)이 현재 위치한 도로 상의 현재 위치를 확인한다.
질의 결과 제공부(440)는 현재 위치가 안전구역 내에 포함되면 상기 제1 위치를 기준으로 하는 k-최근접 질의 결과를 현재 위치에 대한 k-최근접 질의 결과로서 사용자에게 제공한다.
도 5는 본 발명의 일 실시예에 따른 서버에서 k-최근접 질의 연산 방법에 대한 동작흐름도를 나타낸 것이다.
k-최근접 질의 연산 방법에서 수신부(110)는 클라이언트 단말(400)로부터 적어도 하나 이상의 객체에 대한 k-최근접 질의에 대한 요청을 수신한다(S510). 이후, 질의 결과 연산부(120)는 k-최근접 질의에 대한 요청에 응답하여 단말(400)의 위치를 기준으로 하는 k-최근접 질의 결과를 연산한다(S520).
이후, 안전구역 연산부(130)는 단말(400)의 위치를 기준으로 하는 k-최근접 질의 결과와 동일한 k-최근접 질의 결과를 제공하는 안전구역을 연산하고(S530), 전송부(140)는 단말(400)의 요청에 응답하여 단말(400)의 위치를 기준으로 하는 k-최근접 질의 결과 및 안전구역에 대한 정보를 함께 단말(400)로 전송한다(S540).
이때, 서버(100)의 전송부(140)는 안전구역의 경계점의 도로 상의 위치를 추출하여 추출된 안전구역의 경계점의 도로 상의 위치에 대한 정보를 단말(400)로 전송할 수도 있다. 안전구역에 대한 정보를 전송하는 데에 네트워크의 자원이 소비되는데, 이 때 소비되는 네트워크의 자원을 최소화하기 위한 방편으로 안전구역 연산부(130)는 안전구역의 경계점의 위치를 추적하여 안전구역에 대한 정보를 대표할 수 있다. 한편, 경계점은 그 경계점이 위치한 도로 상에서의 상대적인 위치 정보로 나타내어질 수도 있고, GPS 등 절대 좌표 시스템 내의 위치 정보로 주어질 수도 있다.
도 6은 본 발명의 일 실시예에 따른 교차점에 대한 k-최근접 질의 결과를 이용하여 안전구역을 계산하는 동작흐름도를 나타낸 것이다.
안전구역을 계산하는데 있어서, k-최근접 질의 연산 방법은 클라이언트 단말(400)로부터 적어도 하나 이상의 객체에 대한 k-최근접 질의에 대한 요청을 수신한다(S510). 이후 k-최근접 질의에 대한 요청에 응답하여 단말(400)의 위치를 기준으로 하는 k-최근접 질의 결과를 연산한다(S520).
이때, S520단계와 병렬적으로 교차점에 대한 k-최근접 질의 결과를 이용하기 위하여 미리 결정된 조건을 만족하며 상기 단말(400)의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과를 연산할 수도 있다(S610). 이 때 단계 S610에 이용되는 교차점은 단말(400)의 위치와 인접하는 교차점일 수 있으며, 단말(400)의 위치로부터 미리 결정된 조건을 만족하며 인접하는 교차점일 수 있다. 보다 구체적으로는, 단말(400)의 위치가 특정 도로 상에 있을 경우, 상기 특정 도로 양 끝의 교차점은 단계 S610에서 이용되는 교차점에 포함된다. 그러나 상기 특정 도로 양 끝의 교차점만으로는 충분한 정보를 얻을 수 없는 경우가 있을 것이므로, 상기 특정 도로 양 끝의 교차점으로부터 형성된 도로 상의 다른 끝의 교차점까지가 단계 S610의 계산에 포함될 수 있다. 즉, 단말(400)의 위치로부터 미리 결정된 조건을 만족하며 인접하는 교차점은, 단말(400)의 위치와 직접 인접하는 교차점 외에도 한 스텝 또는 두 스텝까지 간접적으로 인접하는 교차점을 포함하는 개념일 수 있다.
이 때 안전구역 연산부(130)는 단계 S530에서 단계 S610으로부터 주어진 하나 이상의 교차점 (미리 결정된 조건을 만족하며 단말(400)의 위치와 인접하는) 각각에 대한 k-최근접 질의의 결과와 단말(400)의 위치를 기준으로 k-최근접 질의 결과를 비교하여 안전구역에 대한 정보를 추출할 수 있다.
도 7은 본 발명의 일 실시예에 따른 안전구역의 경계점을 연산하는 동작흐름도를 나타낸 것이다.
질의 결과 비교부(131)는 안전구역을 연산하는 단계(S530)에서 k-최근접 질의에 대한 요청에 응답하여 단말(400)의 위치를 기준으로 하는 k-최근접 질의 결과를 연산(S520)한 연산결과와, 위의 연산과 병렬적으로 교차점에 대한 k-최근접 질의 결과를 이용하기 위하여 미리 결정된 조건을 만족하며 상기 단말의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과를 이용하여 단말(400)의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과와 단말(400)의 위치를 기준으로 하는 k-최근접 질의 결과를 비교한다(S621).
경계점 확인부(132)는 이후, 비교 결과를 이용하여 단말(400)의 위치와 인접하는 하나 이상의 교차점 각각과 단말(400)의 위치 사이에 안전구역에 대한 경계점이 존재하는 지 여부를 확인한다(S622).
이후, 경계점 위치 계산부(133)는 안전구역에 대한 경계점이 존재할 경우, 경계점이 존재하는 것으로 확인된 도로 상에서 경계점의 도로 상의 위치를 계산한다(S623).
도 8은 본 발명의 일 실시예에 따른 위치변동에 따른 경계점의 위치를 계산하는 동작흐름도를 나타낸 것이다.
경계점 위치 계산부(133)는 경계점의 도로 상의 위치를 계산(S623)하는 방법에서, 경계점이 존재하는 것으로 확인된 도로 상에서 k-최근접 질의의 기준 위치의 가상적인 이동에 따른 주변의 객체들과의 거리의 변동을 고려하여(S810) 경계점의 도로 상의 위치를 계산한다(820).
도 9는 위치변동에 따른 경계점의 위치를 계산하는 또 다른 실시예의 동작흐름도를 나타낸 것이다.
제1 객체 선택부(310)는 경계점의 도로 상의 위치를 계산하는 단계(S623)에서, 단말(400)의 위치를 기준으로 하는 k-최근접 질의 결과에 포함된 객체들 중에서, 경계점이 존재하는 것으로 확인된 도로를 따라 k-최근접 질의의 기준 위치를 단말(400)의 위치로부터 가상적으로 이동함에 따라 기준 위치로부터 멀어지고 단말(400)의 위치에서 가장 멀리 있는 제1 객체를 선택한다(S910).
이후, 제2 객체 선택부(320)는 단말(400)의 위치를 기준으로 하는 k-최근접 질의 결과에 포함되지 않은 객체들 중에서, 경계점이 존재하는 것으로 확인된 도로를 따라 기준 위치를 단말의 위치로부터 가상적으로 이동함에 따라 기준 위치에 가까워지고 단말의 위치에서 가장 가까이 있는 제2 객체를 선택한다(S920).
이후, 교차점 탐색부(330)는 경계점이 존재하는 것으로 확인된 도로를 따라 기준 위치를 단말(400)의 위치로부터 가상적으로 이동함에 따라 기준 위치로부터 제1 객체 및 제2 객체 각각까지의 거리가 서로 교차되는 위치를 탐색하고(S930), 경계점 선택부(340)는 탐색된 위치를 경계점이 존재하는 것으로 확인된 도로 상의 경계점의 위치로 선택한다(S940).
도 10은 본 발명의 일 실시예에 따른 k-최근접 질의를 미리 수행하는 동작흐름도를 나타낸 것이다.
질의 결과 연산부(120)는 단말의 요청을 분석하여 주변 교차점에서 k-최근접 질의를 병렬적으로 수행하거나 미리 수행하기 위하여, 단말(400)로부터 수신된 k-최근접 질의에 대한 요청으로부터 검색 대상 객체의 종류 또는 범위에 대한 정보를 확인하고(S1010), k-최근접 질의 결과를 연산하는 단계(S520)에서 확인된 정보를 이용하여 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과를 연산할 수 있다(S1020).
도 11은 본 발명의 일 실시예에 따른 클라이언트 단말에서 k-최근접 질의 결과를 사용자에게 제공하는 동작흐름도를 나타낸 것이다.
클라이언트 단말(400)의 질의 요청부(410)에서 제1 위치를 기준으로 하는 k-최근접 질의를 서버에 요청(S1110)한다.
이후, 수신부(420)가 제1 위치를 기준으로 하는 k-최근접 질의 결과 및 제1 위치를 기준으로 하는 k-최근접 질의 결과와 동일한 결과를 제공하는 안전구역에 대한 정보를 수신하여(S1120), 현재 위치 확인부(430)가 단말(400)의 현재 위치를 확인한다(S1130).
이후, 질의 결과 제공부(440)는 현재 위치가 안전구역 내에 포함되는지를 판단하여 포함되면 제1 위치를 기준으로 하는 k-최근접 질의 결과를 현재 위치에 대한 k-최근접 질의 결과로서 사용자에게 제공한다(S1140).
이때, 현재 위치에 따른 k-최근접 질의 결과에 있어서, 클라이언트 단말(400)에서 현재 위치가 안전구역 내에 포함되지 않거나, 현재 위치가 상기 안전구역을 곧 벗어날 것으로 예상되면, 질의 요청부(410)는 서버(100)로 새로운 기준 위치에 대한 k-최근접 질의를 요청한다(S1150).
도 12은 본 발명의 일 실시예에 따른 안전 구역 및 경계점을 포함하는 도로 네트워크를 나타낸 것이다.
도 12에서 q는 클라이언트 단말(400)을 가리키고, a 부터 e 까지는 POI(Point of interest)를 가리킨다. 또한, 그래프 위의 숫자는 두 지점간의 거리를 의미하며, 안전 구역은 굵은 선분으로 표시하고, 경계점(Pse1, Pse2)은 별표로 표시하였다.
이때, 안전 구역은 현재 위치에서의 질의 결과가 유지되는 지역이다. 또한, 경계점은 현재 질의 결과가 유지되는 안전 구역과 현재 질의 결과가 유지되지 않는 비안전 구역의 경계점이다.
즉 단말(400)인 q가 위치한 도로 상의 현재 질의 결과와 안전 구역 안의 질의 결과는 같은 결과를 가진다. 단말(400)인 q가 경계점을 통과할 때까지는 서버(100)로부터 수신한 현재 질의 결과와 같은 질의 결과를 가지게 된다.
이후, 단말(400)인 q가 경계점을 벗어나거나 벗어날 것으로 예측되면 서버(100)로 새로운 k-최근접 질의 결과를 요청할 수 있다.
현재 위치 q에서 3개의 최근접 객체를 질의하면, q로부터의 거리가 5인 c와 d, q로부터의 거리가 7인 e가 결과로서 제공될 것이다. 이 때 위치 q에서의 질의 결과를 Aq라 하면, Aq = (c, d, e) 로 주어질 수 있다.
Aq에 포함되지 못한 객체들과 q 사이의 거리를 계산해 보면, d(q,a) = 12, d(q,b) = 9 로 나타내어진다.
이 때 q가 위치하고 있는 활성 도로 양 끝의 교차점은 n2와 n5이고, n2 및 n5와 인접한 교차점은 n1, n3, n4, n6 이므로 질의 결과 연산부(120)는 q에서의 k-최근접 질의 연산 및 교차점 n1 ~ n6 에서의 k-최근접 질의 결과를 구할 수 있다.
이 때, 교차점 n5에서의 3-최근접 질의에서는 An5 = (c, d, e)의 결과가 나타나, Aq = An5 인 결과가 주어지지만, 교차점 n2에서의 3-최근접 질의에서는 An2 = (a, b, c) 인 결과가 주어지므로, 교차점 n5는 안전 구역 내에 포함될 것이고, 교차점 n2는 안전 구역 밖에 위치함을 알 수 있다.
상기와 같은 추론 과정을 거쳐, 경계점 또는 안전구역의 출구 (safe exit) Pse가 위치 q와 교차점 nb 사이에 존재할 조건은 다음과 같이 일반적인 수학식 1로 나타내어질 수 있다.
[수학식 1]
Anb ∪ O(nb, q) ≠ Aq
이 때, Anb는 교차점 nb에서의 k-최근접 질의 결과, Aq는 위치 q에서의 k-최근접 질의 결과를 나타내고, O(nb, q)는 교차점 nb와 위치 q 사이에 위치하는 객체를 의미한다.
도 12에서 q와 n2 사이에 경계점이 존재할 것이라는 판단 결과가 도출될 수 있으므로, 도 13과 도 14에서는 q와 n2 사이의 경계점의 위치를 확인하는 과정을 일 실시예를 이용하여 상세히 도시한다.
도 13은 본 발명의 일 실시예에 따른, 기준위치의 변동에 따라 k-최근접 객체가 아닌 객체들 중 가장 가까이 있는 제2 객체를 선택하는 방법을 나타낸 것이다.
도 13을 참조하면, 현재 위치 q로부터 기준 위치를 n2 교차점으로 이동함에 따라, 객체들 (a, b)의 위치의 변화가 그래프로 도시된다.
위치 q를 기준으로 한 3-최근접 질의 결과에 포함되지 않은 객체들 중에서 q와 가장 가까운 두 객체들인 (a, b)가 선택되어 도시된 것이다. 특히, 기준 위치를 q로부터 n2로 가상적으로 이동함에 따라 기준 위치와의 거리가 가까워지는 객체들이 3-최근접 질의 결과에 영향을 미칠 가능성이 높으므로 이들 객체들 (a, b)이 선택된 것이다.
객체들 (a, b) 가운데에서도 객체 b가 더욱 기준 위치로부터 가까우므로, 향후 판단 과정에서 객체 b가 주의 깊게 관찰될 것이다.
도 14는 본 발명의 일 실시예에 따른 기준위치의 가상적인 변동에 따라 최근접 객체들 가운데 가장 멀리 있는 객체를 선택하는 과정을 나타낸 것이다.
도 14를 참조하면, 위치 q에서 3개의 최근접 객체들인 c, d, e가 도시된다. 기준 위치를 현재 위치 q에서 교차점 n2로 가상적으로 이동함에 따라, 객체들 c, d, e 각각의 기준 위치까지의 거리의 변화가 도 14에 도시된다.
기준 위치가 q에서 n2로 이동함에 따라, 객체 c는 더욱 기준 위치에 가까워지므로 k-최근접 질의의 결과에 영향을 주지 못할 것이라는 예상이 가능하다. 한편, 객체 d와 e는 기준 위치가 q에서 n2로 이동함에 따라 기준 위치로부터 멀어지므로, k-최근접 질의의 결과에 영향을 줄 가능성이 있다.
객체 d와 e 가운데에서도 e가 d보다 항상 기준 위치로부터 멀리 떨어져 있으므로, 향후 경계점 계산 과정에서 객체 e가 주의 깊게 관찰될 것이다.
도 13과 도 14를 참조하면, 제1 객체 선택부(310)는 객체 e를 제1 객체로 선택할 수 있고, 제2 객체 선택부(320)는 객체 b를 제2 객체로 선택할 수 있을 것이다.
도 15는 제1 객체 e와 제2 객체 b 각각이 기준 위치로부터 떨어진 거리가 교차되는 위치를 탐색하는 과정을 도시한 것이다.
교차점 탐색부(330)는 기준 위치를 현재 위치 q로부터 교차점 n2까지 가상적으로 이동하면서 제1 객체 e와 제2 객체 b 각각이 기준 위치로부터 떨어진 거리를 비교한다. 이 때, 도 15를 참조하면, 현재 위치 q로부터 거리 1만큼 교차점 n2 방향으로 이동한 지점에서 객체 e와 b 각각으로부터 기준 위치까지의 거리가 교차된다.
따라서 경계점 선택부(340)는 도 15에 도시된 거리가 교차된 위치를 최종적으로 안전구역의 경계점(Pse1)의 위치로 선택할 수 있다.
한편, 위치 q를 설명의 편의 상 현재 위치로 기술하였으나, 위치 q는 반드시 현재의 위치일 필요는 없고, 이용의 편의 상 기준이 되며 안전 구역 계산의 기준이 되는 위치를 의미한다. 예를 들면, 사용자는 자신이 잠시 후에 방문하거나 위치할 것으로 예상되는 위치 q를 기준으로 k-최근접 질의를 요청할 수 있고, 안전 구역 정보도 사용자가 요구한 위치 q를 기준으로 구해질 수 있기 때문이다. 이 때에는 단말(400)은 도시되지는 않았으나, 사용자로 하여금 현재 위치 대신 임의의 위치 q를 k-최근접 질의의 기준 위치로 입력할 수 있도록 하는 인터페이스를 포함할 수도 있다.
본 발명의 일 실시 예에 따른 k-최근접 질의 연산 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
100 : 서버
400: 클라이언트 단말

Claims (19)

  1. 클라이언트 단말로부터 적어도 하나 이상의 객체에 대한 k-최근접 질의에 대한 요청을 수신하는 단계;
    상기 요청에 응답하여, 도로 상의 거리에 기초하여 상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과를 연산하는 단계;
    상기 단말의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과를 연산하는 단계;
    상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과와 동일한 k-최근접 질의 결과를 제공하는 안전구역을 연산하는 단계; 및
    상기 요청에 응답하여, 상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과 및 상기 안전구역에 대한 정보를 상기 단말로 전송하는 단계;
    를 포함하고,
    상기 안전구역을 연산하는 단계는
    상기 단말의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과와 상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과를 비교하여 상기 안전구역에 대한 정보를 추출하는 k-최근접 질의 연산 방법.
  2. 제1항에 있어서,
    상기 안전구역을 연산하는 단계는
    상기 안전구역의 경계점의 도로 상의 위치를 추출하고,
    상기 단말로 전송하는 단계는
    상기 추출된 상기 안전구역의 상기 경계점의 도로 상의 위치에 대한 정보를 상기 단말로 전송하는 k-최근접 질의 연산 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 안전구역을 연산하는 단계는
    상기 단말의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과와 상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과를 비교하는 단계;
    상기 비교 결과를 이용하여 상기 단말의 위치와 인접하는 하나 이상의 교차점 각각과 상기 단말의 위치 사이에 상기 안전구역에 대한 경계점이 존재하는 지 여부를 확인하는 단계; 및
    상기 경계점이 존재하는 것으로 확인된 도로 상에서 상기 경계점의 상기 도로 상의 위치를 계산하는 단계;
    를 포함하는 k-최근접 질의 연산 방법.
  5. 제4항에 있어서,
    상기 경계점의 상기 도로 상의 위치를 계산하는 단계는
    상기 경계점이 존재하는 것으로 확인된 도로 상에서 k-최근접 질의의 기준 위치의 가상적인 이동에 따른 주변의 객체들과의 거리의 변동을 고려하여 상기 경계점의 상기 도로 상의 위치를 계산하는 k-최근접 질의 연산 방법.
  6. 제4항에 있어서,
    상기 경계점의 상기 도로 상의 위치를 계산하는 단계는
    상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과에 포함된 객체들 중에서, 상기 경계점이 존재하는 것으로 확인된 도로를 따라 k-최근접 질의의 기준 위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준 위치로부터 멀어지고 상기 단말의 위치에서 가장 멀리 있는 제1 객체를 선택하는 단계;
    상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과에 포함되지 않은 객체들 중에서, 상기 경계점이 존재하는 것으로 확인된 도로를 따라 상기 기준 위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준 위치에 가까워지고 상기 단말의 위치에서 가장 가까이 있는 제2 객체를 선택하는 단계;
    상기 경계점이 존재하는 것으로 확인된 도로를 따라 상기 기준 위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준 위치로부터 상기 제1 객체 및 상기 제2 객체 각각까지의 거리가 서로 교차되는 위치를 탐색하는 단계; 및
    상기 탐색된 위치를 상기 경계점이 존재하는 것으로 확인된 도로 상의 상기 경계점의 위치로 선택하는 단계;
    를 포함하는 k-최근접 질의 연산 방법.
  7. 제1항에 있어서,
    상기 수신된 k-최근접 질의에 대한 요청으로부터 검색 대상 객체의 종류 또는 범위에 대한 정보를 확인하는 단계;
    를 더 포함하고,
    상기 단말의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과를 연산하는 단계는
    상기 확인된 정보를 이용하여 상기 하나 이상의 교차점 각각에 대한 k- 최근접 질의 결과를 연산하는 k-최근접 질의 연산 방법.
  8. 제1 위치를 기준으로 하는 k-최근접 질의를 서버에 요청하는 단계;
    상기 제1 위치를 기준으로 하는 k-최근접 질의 결과 및 상기 제1 위치를 기준으로 하는 k-최근접 질의 결과와 동일한 결과를 제공하는 안전구역에 대한 정보를 수신하는 단계;
    현재 위치를 확인하는 단계; 및
    상기 현재 위치가 상기 안전구역 내에 포함되면 상기 제1 위치를 기준으로 하는 k-최근접 질의 결과를 상기 현재 위치에 대한 k-최근접 질의 결과로서 사용자에게 제공하는 단계;
    를 포함하고,
    상기 안전구역에 대한 정보는
    상기 제1 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과와 상기 제1 위치를 기준으로 하는 k-최근접 질의 결과를 비교하여 추출된 정보인 것을 특징으로 하는 k-최근접 질의 결과 제공 방법.
  9. 제8항에 있어서,
    상기 현재 위치가 상기 안전구역 내에 포함되지 않거나, 상기 현재 위치가 상기 안전구역을 곧 벗어날 것으로 예상되면, 상기 서버로 새로운 기준 위치에 대한 k-최근접 질의를 요청하는 단계
    를 더 포함하는 k-최근접 질의 결과 제공 방법.
  10. 제1항, 제2항, 제4항 내지 제9항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.
  11. 클라이언트 단말로부터 적어도 하나 이상의 객체에 대한 k-최근접 질의에 대한 요청을 수신하는 수신부;
    상기 요청에 응답하여, 도로 상의 거리에 기초하여 상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과를 연산하는 질의 결과 연산부;
    상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과와 동일한 k-최근접 질의 결과를 제공하는 안전구역을 연산하는 안전구역 연산부; 및
    상기 요청에 응답하여, 상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과 및 상기 안전구역에 대한 정보를 상기 단말로 전송하는 전송부;
    를 포함하고,
    상기 질의 결과 연산부는
    상기 단말의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과를 연산하고,
    상기 안전구역 연산부는
    상기 단말의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과와 상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과를 비교하여 상기 안전구역에 대한 정보를 추출하는 k-최근접 질의 연산 장치.
  12. 제11항에 있어서,
    상기 안전구역 연산부는
    상기 안전구역의 경계점의 도로 상의 위치를 추출하고,
    상기 전송부는
    상기 추출된 상기 안전구역의 상기 경계점의 도로 상의 위치에 대한 정보를 상기 단말로 전송하는 k-최근접 질의 연산 장치.
  13. 삭제
  14. 제11항에 있어서,
    상기 안전구역 연산부는
    상기 단말의 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과와 상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과를 비교하는 질의 결과 비교부;
    상기 비교 결과를 이용하여 상기 단말의 위치와 인접하는 하나 이상의 교차점 각각과 상기 단말의 위치 사이에 상기 안전구역에 대한 경계점이 존재하는 지 여부를 확인하는 경계점 확인부; 및
    상기 경계점이 존재하는 것으로 확인된 도로 위에서 상기 경계점의 상기 도로 상의 위치를 계산하는 경계점 위치 계산부;
    를 포함하는 k-최근접 질의 연산 장치.
  15. 제14항에 있어서,
    상기 경계점 위치 계산부는
    상기 경계점이 존재하는 것으로 확인된 도로 상에서 k-최근접 질의의 기준 위치의 가상적인 이동에 따른 주변의 객체들과의 거리의 변동을 고려하여 상기 경계점의 상기 도로 상의 위치를 계산하는 k-최근접 질의 연산 장치.
  16. 제14항에 있어서,
    상기 경계점 위치 계산부는
    상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과에 포함된 객체들 중에서, 상기 경계점이 존재하는 것으로 확인된 도로를 따라 k-최근접 질의의 기준 위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준 위치로부터 멀어지고 상기 단말의 위치에서 가장 멀리 있는 제1 객체를 선택하는 제1 객체 선택부;
    상기 단말의 위치를 기준으로 하는 k-최근접 질의 결과에 포함되지 않은 객체들 중에서, 상기 경계점이 존재하는 것으로 확인된 도로를 따라 상기 기준 위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준 위치에 가까워지고 상기 단말의 위치에서 가장 가까이 있는 제2 객체를 선택하는 제2 객체 선택부;
    상기 경계점이 존재하는 것으로 확인된 도로를 따라 상기 기준 위치를 상기 단말의 위치로부터 가상적으로 이동함에 따라 상기 기준 위치로부터 상기 제1 객체 및 상기 제2 객체 각각까지의 거리가 서로 교차되는 위치를 탐색하는 교차점 탐색부; 및
    상기 탐색된 위치를 상기 경계점이 존재하는 것으로 확인된 도로 상의 상기 경계점의 위치로 선택하는 경계점 선택부;
    를 포함하는 k-최근접 질의 연산 장치.
  17. 제11항에 있어서,
    상기 수신된 k-최근접 질의에 대한 요청으로부터 검색 대상 객체의 종류 또는 범위에 대한 정보를 확인하는 요청 정보 확인부;
    를 더 포함하고,
    상기 질의 결과 연산부는
    상기 확인된 정보를 이용하여 상기 하나 이상의 교차점 각각에 대한 k- 최근접 질의 결과를 연산하는 k-최근접 질의 연산 장치.
  18. 제1 위치를 기준으로 하는 k-최근접 질의를 서버에 요청하는 질의 요청부;
    상기 제1 위치를 기준으로 하는 k-최근접 질의 결과 및 상기 제1 위치를 기준으로 하는 k-최근접 질의 결과와 동일한 결과를 제공하는 안전구역에 대한 정보를 수신하는 수신부;
    현재 위치를 확인하는 현재 위치 확인부; 및
    상기 현재 위치가 상기 안전구역 내에 포함되면 상기 제1 위치를 기준으로 하는 k-최근접 질의 결과를 상기 현재 위치에 대한 k-최근접 질의 결과로서 사용자에게 제공하는 질의 결과 제공부;
    를 포함하고,
    상기 안전구역에 대한 정보는
    상기 제1 위치와 인접하는 하나 이상의 교차점 각각에 대한 k-최근접 질의 결과와 상기 제1 위치를 기준으로 하는 k-최근접 질의 결과를 비교하여 추출된 정보인 것을 특징으로 하는 k-최근접 질의 결과 제공 장치.
  19. 제18항에 있어서,
    상기 질의 요청부는
    상기 현재 위치가 상기 안전구역 내에 포함되지 않거나, 상기 현재 위치가 상기 안전구역을 곧 벗어날 것으로 예상되면, 상기 서버로 새로운 기준 위치에 대한 k-최근접 질의를 요청하는 k-최근접 질의 결과 제공 장치.
KR1020120091566A 2012-08-22 2012-08-22 도로 네트워크에서 움직이는 k-최근접 질의의 안전 출구 위치를 계산하는 방법 KR101423031B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120091566A KR101423031B1 (ko) 2012-08-22 2012-08-22 도로 네트워크에서 움직이는 k-최근접 질의의 안전 출구 위치를 계산하는 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120091566A KR101423031B1 (ko) 2012-08-22 2012-08-22 도로 네트워크에서 움직이는 k-최근접 질의의 안전 출구 위치를 계산하는 방법

Publications (2)

Publication Number Publication Date
KR20140026669A KR20140026669A (ko) 2014-03-06
KR101423031B1 true KR101423031B1 (ko) 2014-08-14

Family

ID=50641083

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120091566A KR101423031B1 (ko) 2012-08-22 2012-08-22 도로 네트워크에서 움직이는 k-최근접 질의의 안전 출구 위치를 계산하는 방법

Country Status (1)

Country Link
KR (1) KR101423031B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10169468B2 (en) 2013-02-13 2019-01-01 Ajou University Industry—Academic Cooperation Foundation Secure monitoring technique for moving k-nearest queries in road network

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101712847B1 (ko) * 2015-11-20 2017-03-07 경북대학교 산학협력단 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전출구 위치를 계산하는 방법
KR102127769B1 (ko) * 2018-08-07 2020-07-09 경북대학교 산학협력단 도로 네트워크에서 k-최근접 이웃 조인 질의 처리 방법 및 도로 네트워크에서 k-최근접 조인 질의를 처리하는 장치
KR102185334B1 (ko) * 2019-01-09 2020-12-01 경북대학교 산학협력단 도로 네트워크에서 ε-거리 조인 질의 처리 방법 및 도로 네트워크에서 ε-거리 조인 질의를 처리하는 장치
CN110031017A (zh) * 2019-04-29 2019-07-19 辽宁艾特斯智能交通技术有限公司 一种车机多目标最优路径规划方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100863228B1 (ko) 2007-04-24 2008-10-15 제주대학교 산학협력단 도로 네트워크 데이터베이스를 위한 근사 인덱싱 방법
KR20100116421A (ko) * 2009-04-22 2010-11-01 제주대학교 산학협력단 도로 네트워크 상에서 k-최근접 이웃 검색을 위한 최단 경로 탐색 방법 및 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100863228B1 (ko) 2007-04-24 2008-10-15 제주대학교 산학협력단 도로 네트워크 데이터베이스를 위한 근사 인덱싱 방법
KR20100116421A (ko) * 2009-04-22 2010-11-01 제주대학교 산학협력단 도로 네트워크 상에서 k-최근접 이웃 검색을 위한 최단 경로 탐색 방법 및 장치

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Muhammad Aamir Cheema et al. Continuous Monitoring of Distance Based Range Queries. IEEE Transactions on Knowledge and DATA Engineering. 2011.08., vol.23 no.8, pp.1182-1199. *
Muhammad Aamir Cheema et al. Continuous Monitoring of Distance Based Range Queries. IEEE Transactions on Knowledge and DATA Engineering. 2011.08., vol.23 no.8, pp.1182-1199.*
신성현외 4. 도로 네트워크에서 A* 알고리즘을 이용한 k-최근접 이웃 객체에 대한 효과적인 경로 탐색 방법. 정보과학회논문지: 데이터베이스 제36권제5호, 2009.10., pp.405-410. *
신성현외 4. 도로 네트워크에서 A* 알고리즘을 이용한 k-최근접 이웃 객체에 대한 효과적인 경로 탐색 방법. 정보과학회논문지: 데이터베이스 제36권제5호, 2009.10., pp.405-410.*

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10169468B2 (en) 2013-02-13 2019-01-01 Ajou University Industry—Academic Cooperation Foundation Secure monitoring technique for moving k-nearest queries in road network

Also Published As

Publication number Publication date
KR20140026669A (ko) 2014-03-06

Similar Documents

Publication Publication Date Title
KR101423031B1 (ko) 도로 네트워크에서 움직이는 k-최근접 질의의 안전 출구 위치를 계산하는 방법
KR101479498B1 (ko) 도로 네트워크에서 움직이는 k-최근접 질의를 위한 안전한 모니터링 기법
KR102048020B1 (ko) 주차장 안내 내비게이션 방법 및 시스템
Lou et al. Map-matching for low-sampling-rate GPS trajectories
KR101450525B1 (ko) 도로 네트워크에서 움직이는 영역 질의의 안전 출구 위치를 계산하는 방법
EP2957869B1 (en) Method and apparatus for determining reachable area based on road network
KR101896993B1 (ko) 이동체의 경로 결정 방법 및 장치
JP2015512177A (ja) 無線通信ネットワークにおけるモビリティ管理方法、デバイス及びシステム
US9288635B2 (en) Apparatus for managing indoor moving object based on indoor map and positioning infrastructure and method thereof
Mahmud et al. A group based approach for path queries in road networks
KR101025360B1 (ko) 도로 네트워크 상에서 k-최근접 이웃 검색을 위한 최단 경로 탐색 방법 및 장치
Rajkumar et al. Optimized traffic flow prediction based on cluster formation and reinforcement learning
KR101421671B1 (ko) 도로 네트워크의 제한된 영역에서 k-최근접 질의의 지속적 모니터링을 위한 분산 기법
Lima et al. Efficient and robust WiFi indoor positioning using hierarchical navigable small world graphs
US7831386B2 (en) Loop-based route finding and navigation
KR102185334B1 (ko) 도로 네트워크에서 ε-거리 조인 질의 처리 방법 및 도로 네트워크에서 ε-거리 조인 질의를 처리하는 장치
US10200814B1 (en) Voronoi diagram-based algorithm for efficient progressive continuous k-nearest neighbor query for moving objects
KR20160135907A (ko) R 트리 인덱스 기반의 확장된 최근접 공간개체 탐색 장치 및 방법
KR102127769B1 (ko) 도로 네트워크에서 k-최근접 이웃 조인 질의 처리 방법 및 도로 네트워크에서 k-최근접 조인 질의를 처리하는 장치
KR101712847B1 (ko) 방향성을 가지는 도로 네트워크에서 움직이는 k최근접 질의의 안전출구 위치를 계산하는 방법
Zhu et al. Efficient trip planning for maximizing user satisfaction
Keser et al. A hybrid approach for indoor positioning
US20080120026A1 (en) Loop-based route finding and navigation
Hansen et al. Efficient and accurate wlan positioning with weighted graphs
Lima et al. Dynamic Obstructed Group Trip Planning Queries in Spatial Databases

Legal Events

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

Payment date: 20170717

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180704

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190702

Year of fee payment: 6