KR20230063199A - Turn-based optimal path search method and system - Google Patents
Turn-based optimal path search method and system Download PDFInfo
- Publication number
- KR20230063199A KR20230063199A KR1020210148195A KR20210148195A KR20230063199A KR 20230063199 A KR20230063199 A KR 20230063199A KR 1020210148195 A KR1020210148195 A KR 1020210148195A KR 20210148195 A KR20210148195 A KR 20210148195A KR 20230063199 A KR20230063199 A KR 20230063199A
- Authority
- KR
- South Korea
- Prior art keywords
- rotation
- link
- data
- node
- travel time
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 29
- 238000010276 construction Methods 0.000 claims abstract description 51
- 238000000605 extraction Methods 0.000 claims abstract description 24
- 238000002372 labelling Methods 0.000 claims description 21
- 239000003550 marker Substances 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 9
- 239000000284 extract Substances 0.000 abstract description 29
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000010845 search algorithm Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
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
- G01C21/34—Route searching; Route guidance
- G01C21/3446—Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
-
- 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/3453—Special cost functions, i.e. other than distance or default speed limit of road segments
-
- G06Q50/30—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Primary Health Care (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Navigation (AREA)
- Operations Research (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
본 발명은 최적경로 탐색 방법 및 시스템에 관한 것으로서, 차량용 내비게이션 분야와 교통정보 제공 분야에서 활용될 수 있도록 회전시간을 고려하여 최적경로를 탐색하는 회전기반 최적경로 탐색 방법 및 시스템에 관한 것이다.The present invention relates to an optimal route search method and system, and more particularly, to a rotation-based optimal route search method and system that searches for an optimal route in consideration of rotation time so that it can be used in the field of vehicle navigation and the field of providing traffic information.
LTE 및 5G 이동통신 기술의 발전으로 모바일 기반 내비게이션과 차내 내비게이션 사용자가 지속적으로 증가하고 있다. 그러나, 현재 내비게이션 시스템은 과거 10여년 전에 만들어진 기술 표준으로 인해 링크기반 통행시간을 적용함에 따라 복잡한 네트워크에서 종종 오경로를 제공하기도 한다. With the development of LTE and 5G mobile communication technologies, the number of users of mobile-based navigation and in-vehicle navigation continues to increase. However, current navigation systems often provide incorrect routes in complex networks as link-based travel time is applied due to a technical standard established 10 years ago.
교차로에서는 직진, 좌회전, 우회전으로 방향이 분리되고 방향별로 신호시간과 교통량의 차이로 인하여 통행특성이 상이하게 나타날 수 있다. 이러한 상이한 특성을 방향별로 분리하여 집계한 교통정보를 회전 교통정보라고 한다. 기존의 최적경로 탐색 알고리즘은 링크기반으로 만들어짐에 따라 도시부 교차로의 회전 교통정보를 반영하지 못하여 좌회전, 직진의 비대칭 통행시간을 고려하지 못하고 평균화된 링크 통행시간을 사용함에 따라 잘못된 경로를 제공할 수 있다.At intersections, directions are divided into straight ahead, left turn, and right turn, and traffic characteristics may appear differently due to differences in signal time and traffic volume for each direction. Traffic information obtained by dividing and aggregating these different characteristics by direction is referred to as rotational traffic information. Existing optimal route search algorithms do not reflect turn traffic information of urban intersections as they are made based on links, and thus do not consider left turn and straight forward asymmetric travel times. can
도 1은 최적경로 탐색 방법에 대한 개념도로서, 도 1의 (a)는 서버로부터 제공되는 네트워크 정보가 표시된 개념도를 나타내고, 도 1의 (b)는 링크기반 경로탐색 방법에 대한 개념도를 나타내고, 도 1의 (c)는 회전기반 경로탐색 방법에 대한 개념도를 나타낸다.1 is a conceptual diagram of an optimal path search method, FIG. 1 (a) shows a conceptual diagram showing network information provided from a server, and FIG. 1 (b) shows a conceptual diagram of a link-based path search method. 1(c) shows a conceptual diagram of the rotation-based route search method.
도 1의 (a)를 참조하면, 일반적인 도시부 도로의 교통정보는 노드에서 노드사이를 이동하는데 소요되는 시간인 링크통행시간과 링크에서 링크를 이동하는데 소요되는 시간인 회전통행시간으로 제공될 수 있다. 여기서 회전통행시간이란 교차로에서 좌회전, 우회전, 또는 직진으로 구분되는 회전의 방향별 통행시간을 의미한다. Referring to (a) of FIG. 1, traffic information on general urban roads may be provided as link travel time, which is the time required to move from node to node, and turn travel time, which is the time required to move from link to link. there is. Here, the turn travel time means the travel time for each direction of a turn divided into a left turn, a right turn, or going straight at an intersection.
도 1의 (b)를 참조하면, 기존의 링크기반의 경로탐색에 대한 개념으로 출발지에서 도착지까지의 최적경로를 탐색함에 있어 링크통행시간을 사용하여 계산할 수 있다. 링크통행시간을 이용하면 396.7초가 소요되는 경로가 최적경로로 추출될 수 있다. Referring to (b) of FIG. 1, as a concept of the existing link-based path search, when searching for an optimal path from a starting point to a destination, it can be calculated using a link travel time. Using the link travel time, a route that takes 396.7 seconds can be extracted as an optimal route.
도 1의 (c)를 참조하면, 회전기반의 경로탐색에 대한 개념으로 최적경로를 탐색함에 있어 회전통행시간을 사용하여 계산할 수 있다. 회전통행시간을 이용하면 380초가 소요되는 경로가 최적경로로 추출될 수 있다. 이처럼 회전통행시간을 고려할 경우 링크통행시간을 사용하는 경우보다 더 빠르게 이동할 수 있는 최적경로가 추출될 수 있다. 회전을 고려하지 않고 링크통행시간만 고려하여 추출한 경로는 오경로가 될 수 있다. 이러한 오경로로 인해 특정 교차로의 경우 좌회전 교통량이 기존 패턴 대비 증가하는 경우가 발생하고 이로 인하여 혼잡이 증가하게 되는 부작용이 나타나고 있다.Referring to (c) of FIG. 1, as a concept for a turn-based route search, it can be calculated using a turn travel time when searching for an optimal route. Using the turnaround time, a route that takes 380 seconds can be extracted as an optimal route. In this way, if the rotation travel time is considered, an optimal route that can move faster than in the case of using the link travel time can be extracted. A path extracted by considering only the link travel time without considering rotation may be a false path. Due to this misroute, left-turn traffic at a specific intersection may increase compared to the existing pattern, resulting in side effects such as increased congestion.
향후 회전별 통행시간 생성이 이루어질 경우, 이로 인해 내비게이션 시스템의 기술 표준이 변화될 필요가 있다. 내비게이션 시스템의 기반 기술인 최적경로탐색 기술도 링크기반에서 회전기반으로의 변화가 필요하며, 이에 따른 회전기반 네트워크 구조에 대한 개념정립이 요구된다. If travel time per turn is generated in the future, it is necessary to change the technical standard of the navigation system. The optimal path search technology, which is the base technology of the navigation system, also requires a change from a link-based to a rotation-based one, and accordingly, the establishment of the concept of a rotation-based network structure is required.
네트워크 사이즈 증가로 인해 탐색시간의 증가를 해소할 수 있도록 탐색기술의 기능 개선도 요구된다. 기존 알고리즘의 경우 자료구조를 heap 또는 bucket 등 개발자가 가장 선호하는 하나의 자료구조를 활용하는데 회전기반으로 데이터를 구축할 경우 링크 기반 대비 데이터 사이즈가 증가하게 되어 단일 자료구조를 사용할 경우 탐색시간이 증가하게 된다.Functional improvement of search technology is also required to solve the increase in search time due to the increase in network size. In the case of existing algorithms, one data structure that is most preferred by developers, such as heap or bucket, is used as the data structure. When data is built on a rotation basis, the data size increases compared to link-based data structures, so search time increases when a single data structure is used. will do
기존 경로탐색 알고리즘에 회전 금지, U-Turn, 또는 P-Turn이 구현되도록 회전제약 또는 회전허용 데이터를 구축하고 이를 알고리즘에 반영함으로써 현실적인 경로 탐색이 이루어지게 모형이 구성되면 회전제약 또는 회전허용을 계산하여야 하는지 노드에서 이를 파악하기 위해 별도의 연산이 이루어 짐에 따라 탐색시간이 증가할 수 있다. Establish rotation constraints or rotation permitting data to implement rotation prohibition, U-Turn, or P-Turn in the existing path search algorithm, and calculate rotation constraints or rotation allowances when the model is configured to achieve realistic path search by reflecting it to the algorithm. The search time may increase as a separate operation is performed to determine whether the node should do this.
전술한 바와 같이, 기존의 링크기반의 최적경로 탐색은 회전통행시간을 고려하지 않으므로 오경로가 추출될 수 있는데, 이러한 문제의식은 제시되지 못하고 있다. 또한, 회전통행시간을 고려하는 경우 데이터 사이즈가 증가하여 탐색시간을 단축하기 위한 데이터 구조 및 알고리즘도 요구된다. As described above, since the existing link-based optimal route search does not consider the round trip time, a wrong route can be extracted, but such a critical mind has not been presented. In addition, a data structure and algorithm for reducing the search time are required due to the increase in data size when the round trip time is considered.
본 발명은 최적경로 탐색 방법 및 시스템에 있어서, 회전기반으로 데이터를 구축하여 회전시간이 고려된 최적경로를 추출할 수 있는 최적경로 탐색 방법 및 시스템을 제공하는 것을 일 목적으로 한다. An object of the present invention is to provide an optimal path search method and system capable of extracting an optimal path considering rotation time by constructing rotation-based data.
또한, 본 발명은 하이브리드 데이터 구조를 이용하여 알고리즘의 성능을 개선하는 것을 다른 목적으로 한다. Another object of the present invention is to improve algorithm performance using a hybrid data structure.
본 발명은, 노드 ID와 좌표로 구성된 노드 데이터, 링크 ID, 출발 노드 ID, 및 도착 노드 ID로 구성된 링크 데이터, 또는 회전 가능성에 대한 정보를 포함하는 회전제약 데이터를 서버에서 읽어와 최적경로를 탐색하는 최적경로 탐색 시스템에 있어서, 상기 링크 데이터에 포함된 링크에서 인접한 링크로 이동 가능한 회전을 생성하고 생성된 회전의 회전 ID, 출발링크 ID, 도착링크 ID, 또는 통행시간을 포함하는 회전기반 회전데이터 구조를 구축하는 회전기반 회전데이터 구축부; 상기 서버에 저장된 회전데이터에서 회전 ID에 해당하는 통행시간을 추출하여 상기 회전기반 회전데이터 구축부가 구축한 회전기반 회전데이터에 저장하는 통행시간 추출부; 상기 회전기반 회전데이터 구축부가 구축한 회전기반 회전데이터를 기준으로 최적 경로를 추출하는 회전기반 경로 탐색부를 포함하는 것을 일 특징으로 한다.In the present invention, node data composed of a node ID and coordinates, link data composed of a link ID, a starting node ID, and an arrival node ID, or rotation constraint data including information on rotation possibility are read from a server and an optimal path is searched. In an optimal path search system for generating a rotation that can move from a link included in the link data to an adjacent link, and generating a rotation ID, a departure link ID, an arrival link ID, or rotation-based rotation data including a travel time of the generated rotation a rotation-based rotation data construction unit for constructing a structure; a travel time extraction unit extracting travel time corresponding to a rotation ID from rotation data stored in the server and storing the travel time in the rotation-based rotation data constructed by the rotation-based rotation data construction unit; It is characterized in that it includes a rotation-based path search unit for extracting an optimal path based on the rotation-based rotation data built by the rotation-based rotation data construction unit.
바람직하게, 상기 통행시간 추출부는, 상기 서버에 저장된 회전데이터가 출발링크 ID, 도착링크 ID, 및 통행시간을 포함하는 링크기반 회전데이터인 경우, 회전기반 회전데이터로 변환하여, 변환된 회전기반 회전데이터에서 회전 ID에 해당하는 통행시간을 추출할 수 있다. Preferably, when the rotation data stored in the server is link-based rotation data including a departure link ID, an arrival link ID, and a travel time, the travel time extractor converts the converted rotation-based rotation data into rotation-based rotation data. The travel time corresponding to the rotation ID can be extracted from the data.
바람직하게, 상기 통행시간 추출부는, 상기 서버에 저장된 회전데이터가 출발노드 ID, 중간노드 ID, 도착노드 ID, 및 통행시간으로 구성된 노드기반 회전데이터인 경우, 출발노드 ID와 중간노드 ID에 대응되는 링크 ID를 출발링크 ID로 저장하고 중간노드 ID와 도착노드 ID에 대응되는 링크 ID를 도착링크 ID로 저장하여, 출발링크 ID, 도착링크 ID, 및 통행시간을 포함하는 링크기반 회전데이터로 변환하고, 변환된 링크기반 회전 데이터는 회전기반 회전데이터로 변환하여, 변환된 회전기반 회전데이터에서 회전 ID에 해당하는 통행시간을 추출할 수 있다. Preferably, when the rotation data stored in the server is node-based rotation data composed of a departure node ID, an intermediate node ID, an arrival node ID, and a travel time, the travel time extraction unit corresponds to the departure node ID and the intermediate node ID. The link ID is stored as the departure link ID, and the link ID corresponding to the intermediate node ID and arrival node ID is stored as the destination link ID, and converted into link-based rotation data including the departure link ID, arrival link ID, and travel time, , the converted link-based rotation data can be converted into rotation-based rotation data, and the travel time corresponding to the rotation ID can be extracted from the converted rotation-based rotation data.
바람직하게, 상기 회전기반 회전데이터 구축부는, 회전제약 데이터가 있는 링크에서는 회전제약 데이터가 회전 금지 데이터이면 생성된 회전에서 금지되는 회전을 삭제하고, 회전제약 데이터가 유턴 허용 데이터이면 유턴하는 회전을 생성하며, 회전제약 데이터가 없는 링크에서는 유턴하는 회전을 제외하고 인접한 링크로 이동 가능한 회전을 생성할 수 있다. Preferably, the rotation-based rotation data construction unit deletes the rotation prohibited from the generated rotation if the rotation constraint data is rotation prohibition data in the link with rotation constraint data, and generates a rotation that makes a U-turn if the rotation constraint data is U-turn permission data. In a link without rotation constraint data, it is possible to create a rotation that can move to an adjacent link, except for a rotation that makes a U-turn.
바람직하게, 상기 회전기반 경로 탐색부는, 출발 노드에 직접 연결된 링크에서 회전 가능한 인접 링크를 검색하여 이전 링크번호와 통행시간을 포함하는 라벨을 부여하는 제1 라벨링 모듈; 표식을 갖는 라벨이 없는 경우 라벨이 부여된 링크 중 통행시간이 가장 짧은 링크를 검색하고, 검색된 링크의 라벨에 표식을 표시하는 표식 모듈; 표식을 갖는 라벨이 부여된 링크에서 회전 가능한 인접 링크를 검색하여 라벨을 부여하는 제2 라벨링 모듈; 표식을 갖는 라벨을 제외한 라벨이 부여된 링크 중 통행시간이 가장 짧은 링크를 검색하고, 검색된 링크의 라벨에 표식을 표시하고 이전 표식을 갖는 라벨을 삭제하는 표식 변경 모듈; 도착 노드에 직접 연결된 링크의 라벨에 포함된 이전 링크번호를 역순으로 연결하여 최적 경로를 추출하는 최적경로 추출 모듈을 포함할 수 있다.Preferably, the rotation-based path search unit includes: a first labeling module for searching for a rotatable adjacent link in a link directly connected to the starting node and assigning a label including a previous link number and travel time; a marker module for searching for a link having the shortest travel time among labeled links when there is no label with a marker, and displaying a marker on the label of the searched link; a second labeling module for searching for a rotatable adjacent link among labeled links having a mark and assigning a label thereto; a mark change module for searching for a link with the shortest travel time among labeled links excluding labels with a mark, displaying a mark on the label of the searched link, and deleting the label with the previous mark; An optimal path extraction module for extracting an optimal path by connecting previous link numbers included in the label of a link directly connected to the destination node in reverse order may be included.
바람직하게, 상기 회전기반 경로 탐색부는, 하나의 링크에 부여된 라벨이 복수개인 경우에는 통행시간이 가장 작은 라벨을 제외한 라벨을 제거하는 라벨 제거 모듈을 더 포함할 수 있다. Preferably, the rotation-based route search unit may further include a label removal module that removes labels other than a label having the smallest travel time when a plurality of labels are assigned to one link.
바람직하게, 상기 회전기반 경로 탐색부는, 상위 버켓 내부에 하위 버켓을 구성하는 이중 버켓 데이터 구조를 사용하여 최적경로를 탐색할 수 있다. Preferably, the rotation-based path search unit may search for an optimal path using a double bucket data structure constituting a lower bucket inside an upper bucket.
또한 본 발명은, 노드 ID와 좌표로 구성된 노드 데이터, 링크 ID, 출발 노드 ID, 및 도착 노드 ID로 구성된 링크 데이터, 또는 회전 가능성에 대한 정보를 포함하는 회전제약 데이터를 서버에서 읽어와 최적경로를 탐색하는 최적경로 탐색 방법에 있어서, 상기 링크 데이터에 포함된 링크에서 인접한 링크로 이동 가능한 회전을 생성하고 생성된 회전의 회전 ID, 출발링크 ID, 도착링크 ID, 또는 통행시간을 포함하는 회전기반 회전데이터 구조를 구축하는 회전기반 회전데이터 구축단계; 상기 서버에 저장된 회전데이터에서 회전 ID에 해당하는 통행시간을 추출하여 상기 회전기반 회전데이터 구축단계에서 구축한 회전기반 회전데이터에 저장하는 통행시간 추출단계; 상기 회전기반 회전데이터 구축단계에서 구축한 회전기반 회전데이터를 기준으로 최적 경로를 추출하는 회전기반 경로 탐색단계를 포함하는 것을 다른 특징으로 한다.In addition, the present invention reads node data composed of a node ID and coordinates, link data composed of a link ID, a departure node ID, and an arrival node ID, or rotation constraint data including information on rotation possibility from a server to determine an optimal path. In an optimal path search method for searching, a rotation-based rotation including a rotation ID, a departure link ID, an arrival link ID, or travel time of the generated rotation is generated by generating a rotation capable of moving from a link included in the link data to an adjacent link. Rotation-based rotation data construction step of building a data structure; a travel time extraction step of extracting a travel time corresponding to a rotation ID from rotation data stored in the server and storing the travel time in the rotation-based rotation data constructed in the rotation-based rotation data construction step; Another feature is a rotation-based path search step of extracting an optimal path based on the rotation-based rotation data constructed in the rotation-based rotation data construction step.
바람직하게는, 상기 회전기반 경로 탐색단계는, 출발 노드에 직접 연결된 링크에서 회전 가능한 인접 링크를 검색하여 이전 링크번호와 통행시간을 포함하는 라벨을 부여하는 단계; 표식을 갖는 라벨이 없는 경우 라벨이 부여된 링크 중 통행시간이 가장 짧은 링크를 검색하고, 검색된 링크의 라벨에 표식을 표시하는 단계; 표식을 갖는 라벨이 부여된 링크에서 회전 가능한 인접 링크를 검색하여 라벨을 부여하는 단계; 표식을 갖는 라벨을 제외한 라벨이 부여된 링크 중 통행시간이 가장 짧은 링크를 검색하고, 검색된 링크의 라벨에 표식을 표시하고 이전 표식을 갖는 라벨을 삭제하는 단계; 도착 노드에 직접 연결된 링크의 라벨에 포함된 이전 링크번호를 역순으로 연결하여 최적 경로를 추출하는 단계을 포함할 수 있다. Preferably, the rotation-based path search step includes: searching for an adjacent rotatable link in a link directly connected to the starting node, and assigning a label including a previous link number and travel time; If there is no label with a mark, searching for a link having the shortest travel time among the labeled links, and displaying a mark on the label of the searched link; searching for adjacent rotatable links in the labeled links having a marker and assigning labels thereto; searching for a link with the shortest travel time among labeled links excluding labels with a mark, displaying a mark on a label of the searched link, and deleting a label with a previous mark; and extracting an optimal path by connecting previous link numbers included in labels of links directly connected to the destination node in reverse order.
본 발명에 따르면, 회전기반 회전데이터 구축부가 회전기반으로 최적경로를 탐색하기 위해 회전기반으로 회전데이터를 구축하여 회전시간이 고려된 최적경로를 추출할 수 있다는 이점이 있다. According to the present invention, there is an advantage in that the rotation-based rotation data building unit can extract an optimal path considering rotation time by constructing rotation data based on rotation in order to search for an optimal path based on rotation.
또한 본 발명은, 회전기반 경로 탐색부가 bucket&heap 하이브리드 데이터 구조를 이용하여 경로탐색 시간을 단축할 수 있다는 이점이 있다. In addition, the present invention has an advantage that the rotation-based route search unit can reduce route search time by using a bucket & heap hybrid data structure.
도 1은 최적경로 탐색 방법에 대한 개념도로서, 도 1의 (a)는 서버로부터 제공되는 네트워크 정보가 표시된 개념도를 나타내고, 도 1의 (b)는 링크기반 경로탐색 방법에 대한 개념도를 나타내고, 도 1의 (c)는 회전기반 경로탐색 방법에 대한 개념도를 나타낸다.
도 2는 본 발명의 실시예에 따른 최적경로 탐색 시스템의 구성도를 나타낸다.
도 3은 본 발명의 실시예에 따른 노드, 링크 및 회전에 대한 네트워크 예시를 나타낸다.
도 4는 본 발명의 실시예에 따른 노드 데이터와 링크 데이터의 구조를 나타낸다.
도 5는 회전제약 데이터의 구조로서, 도 5의 (a)는 노드기반 회전제약 데이터를 나타내고, 도 5의 (b)는 링크기반 회전제약 데이터를 나타낸다.
도 6은 본 발명의 실시예에 따른 회전기반 회전데이터의 구조를 나타낸다.
도 7은 본 발명의 실시예에 따른 회전기반 회전데이터 변환부의 데이터 변환과정을 나타낸다.
도 8은 본 발명의 실시예에 따른 회전기반 경로 탐색부의 구성도를 나타낸다.
도 9a 내지 도 9d는 본 발명의 실시예에 따른 회전기반 경로 탐색부가 수행하는 알고리즘 전개 과정을 나타낸다.
도 10은 본 발명의 실시예에 따른 회전기반 경로 탐색부가 이용하는 bucket&heap 하이브리드 자료구조를 나타낸다.
도 11은 본 발명의 실시예에 따른 최적경로 탐색 시스템의 경로탐색 알고리즘 흐름도를 나타낸다. 1 is a conceptual diagram of an optimal path search method, FIG. 1 (a) shows a conceptual diagram showing network information provided from a server, and FIG. 1 (b) shows a conceptual diagram of a link-based path search method. 1(c) shows a conceptual diagram of the rotation-based route search method.
2 shows a configuration diagram of an optimal path search system according to an embodiment of the present invention.
3 shows an example network of nodes, links and rotations according to an embodiment of the present invention.
4 shows the structure of node data and link data according to an embodiment of the present invention.
5 is a structure of rotation constraint data, FIG. 5(a) shows node-based rotation constraint data, and FIG. 5(b) shows link-based rotation constraint data.
6 shows the structure of rotation-based rotation data according to an embodiment of the present invention.
7 shows a data conversion process of a rotation-based rotation data conversion unit according to an embodiment of the present invention.
8 shows a configuration diagram of a rotation-based path search unit according to an embodiment of the present invention.
9A to 9D show an algorithm development process performed by a rotation-based path search unit according to an embodiment of the present invention.
10 shows a bucket & heap hybrid data structure used by a rotation-based path search unit according to an embodiment of the present invention.
11 shows a flow chart of a path search algorithm of an optimal path search system according to an embodiment of the present invention.
이하, 첨부된 도면들에 기재된 내용들을 참조하여 본 발명을 상세히 설명한다. 다만, 본 발명이 예시적 실시 예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일 참조부호는 실질적으로 동일한 기능을 수행하는 부재를 나타낸다.Hereinafter, the present invention will be described in detail with reference to the contents described in the accompanying drawings. However, the present invention is not limited or limited by exemplary embodiments. The same reference numerals in each figure indicate members performing substantially the same function.
본 발명의 목적 및 효과는 하기의 설명에 의해서 자연스럽게 이해되거나 보다 분명해 질 수 있으며, 하기의 기재만으로 본 발명의 목적 및 효과가 제한되는 것은 아니다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이, 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다.The objects and effects of the present invention can be naturally understood or more clearly understood by the following description, and the objects and effects of the present invention are not limited only by the following description. In addition, in describing the present invention, if it is determined that a detailed description of a known technology related to the present invention may unnecessarily obscure the subject matter of the present invention, the detailed description will be omitted.
도 2는 본 발명의 실시예에 따른 최적경로 탐색 시스템(1)의 구성도를 나타낸다. 도 2를 참조하면, 최적경로 탐색 시스템(1)은 회전기반 회전데이터 구축부(100), 통행시간 추출부(300), 및 회전기반 경로 탐색부(500)를 포함할 수 있다. 최적경로 탐색 시스템(1)은 차량용 내비게이션 분야와 교통정보센터 및 포털에서 제공하는 교통정보 제공 분야(ATIS : Advanced Transportation Information System)에 활용될 수 있다. 또한, 최적경로 탐색 시스템(1)은 교통계획 및 교통운영을 위한 교통 S/W 분야에 활용될 수 있다. 2 shows a configuration diagram of an optimal
본 실시예에 따른 최적경로 탐색 시스템(1)은 노드 ID와 좌표로 구성된 노드 데이터, 링크 ID, 출발 노드 ID, 및 도착 노드 ID로 구성된 링크 데이터, 또는 회전 가능성에 대한 정보를 포함하는 회전제약 데이터를 서버(3)에서 읽어와 최적경로를 탐색할 수 있다. 서버(3)는 스마트폰, 내비게이션, CCTV, 또는 Probe 차량을 통해 수집된 회전통행시간 등의 정보를 전송받기 위한 인터넷 환경으로 이해될 수 있다. Optimal
최적경로 탐색 시스템(1)은 실제 교통상황이 반영될 수 있도록 회전기반의 경로탐색이 가능한 네트워크 구조를 형성하고 빠른 경로 탐색을 위해 데이터 구조를 하이브리드 구조로 할 수 있다. 최적경로 탐색 시스템(1)는 좌회전, 우회전, 또는 직진을 위한 시간까지 고려할 수 있는 회전기반 경로탐색을 할 수 있다. The optimal
회전 정보는 세가지 방식으로 자료 구조를 구성할 수 있다. 첫 번째는 기존 회전제약 및 회전허용에서 사용하는 방식으로 진행하는 경로상의 노드 ID 나열식이 존재한다. 두 번째는 링크 ID 나열식이 존재하고, 세 번째는 회전 ID 구축방식이 존재한다. Rotation information can be organized into data structures in three ways. First, there is an enumeration of node IDs on the path that proceeds in the way used in the existing rotation constraint and rotation permission. The second has a link ID enumeration formula, and the third has a rotation ID construction method.
도 3은 본 발명의 실시예에 따른 노드, 링크 및 회전에 대한 네트워크 예시를 나타낸다. 도 3을 참조하면, 노드 2에서 출발하여 직진으로 노드 3에 도착하는 것의 노드나열식 표현은 (2, 1, 3)이 된다. 노드 2에서 출발하여 직진으로 노드 3에 도착하는 것을 링크나열식으로 표현하면 (1111, 1113)이 된다. 노드 2에서 출발하여 직진으로 노드 3에 도착하는 것을 회전 ID 구축방식으로 표현하면 (x0011)이 된다. 노드 2에서 출발하여 좌회전으로 노드 4에 도착하는 것을 노드나열식으로 표현하면 (2, 1, 4)가 된다. 노드 2에서 출발하여 좌회전으로 노드 4에 도착하는 것을 링크나열식으로 표현하면 (1111, 1116)이 된다. 노드 2에서 출발하여 좌회전으로 노드 4에 도착하는 것을 회전 ID 구축방식으로 표현하면 (x0012)가 된다. 이와 같이 회전은 세 가지 방식으로 데이터를 구성할 수 있다. 가장 우수한 방식은 회전 ID 구축방식이나, ITS(Intellignt Transport System) 교통정보 교환시에 표준화되어 있지 않아 링크나열식이 가장 적합한 방식이 될 수 있다. 따라서, 최적경로 탐색 시스템(1)은 노드 또는 링크 데이터를 이용한 회전데이터 구조를 구축하는 기술, 링크나열식 회전 통행시간을 회전기반 회전데이터로 변환하는 기술, 또는 회전기반으로 경로를 탐색하는 기술로 구성될 수 있다. 3 shows an example network of nodes, links and rotations according to an embodiment of the present invention. Referring to FIG. 3, the node enumerated expression of starting from
회전기반 회전데이터 구축부(100)는 링크 데이터에 포함된 링크에서 인접한 링크로 이동 가능한 회전을 생성하고 생성된 회전의 회전 ID, 출발링크 ID, 도착링크 ID, 또는 통행시간을 포함하는 회전기반 회전데이터 구조를 구축할 수 있다. 회전기반 회전데이터 구축부(100)는 최적경로 탐색 시스템(1)이 회전기반으로 최적 경로를 탐색하기 위한 회전데이터 구조를 회전기반으로 구축하는 기능을 수행할 수 있다. 회전기반 회전데이터 구축부(100)가 구축하는 데이터 구조를 설명하기 위해 노드, 링크, 회전제약 데이터의 구조를 도 4와 도 5에서 설명한다.The rotation-based rotation
도 4는 본 발명의 실시예에 따른 노드 데이터와 링크 데이터의 구조를 나타낸다. 도 4의 (a)를 참조하면, 노드 데이터는 노드 ID와 좌표로 구성된다. 각각의 노드는 노드 ID로 구분될 수 있다. 각각의 노드 ID는 x좌표값과 y좌표값으로 특정될 수 있다. 도 4의 (b)를 참조하면, 링크 데이터는 링크 ID, 출발노드 ID(FNode ID) 및 도착노드 ID(TNode ID)로 구성될 수 있다. 각각의 링크는 링크 ID로 구분될 수 있다. 각각의 링크 ID는 출발노드 ID와 도착노드 ID로 특정될 수 있다. 4 shows the structure of node data and link data according to an embodiment of the present invention. Referring to (a) of FIG. 4 , node data is composed of a node ID and coordinates. Each node can be identified by a node ID. Each node ID may be specified by an x-coordinate value and a y-coordinate value. Referring to (b) of FIG. 4, link data may include a link ID, a source node ID (FNode ID), and a destination node ID (TNode ID). Each link may be identified by a link ID. Each link ID may be specified by a source node ID and a destination node ID.
노드 데이터는 노드 ID를 Key로 가져갈 수 있다. 링크 데이터는 노드 데이터에 있는 노드 ID를 벗어나지 않는 범위에서 출발노드 ID와 도착노드 ID를 Key로 가져갈 수 있다. 링크 데이터는 링크 ID를 Key로 사용할 수 있도록 구성될 수 있다. Node data can take the node ID as a key. Link data can take the starting node ID and destination node ID as keys within the scope of the node ID in the node data. Link data can be configured to use link ID as a key.
도 5는 회전제약 데이터의 구조로서, 도 5의 (a)는 노드기반 회전제약 데이터를 나타내고, 도 5의 (b)는 링크기반 회전제약 데이터를 나타낸다. 5 is a structure of rotation constraint data, FIG. 5(a) shows node-based rotation constraint data, and FIG. 5(b) shows link-based rotation constraint data.
도 5의 (a)를 참조하면, 노드기반 회전제약 데이터는 출발노드 ID, 중간노드 ID, 도착노드 ID, 또는 회전제약으로 구성될 수 있다. 노드기반 회전제약 데이터에서 출발노드 ID, 중간노드 ID, 및 도착노드 ID는 회전을 특정할 수 있다. 노드기반 회전제약 데이터에서 회전제약은 특정된 회전의 회전가능 또는 회전불가능을 나타낼 수 있다. Referring to (a) of FIG. 5 , node-based rotation constraint data may include a starting node ID, an intermediate node ID, an arrival node ID, or a rotation constraint. In the node-based rotation constraint data, a starting node ID, an intermediate node ID, and an arrival node ID may specify a rotation. In node-based rotation constraint data, rotation constraints may indicate whether a specified rotation is rotatable or non-rotatable.
도 5의 (b)를 참조하면, 링크기반 회전제약 데이터는 출발링크 ID, 도착링크 ID, 또는 회전제약으로 구성될 수 있다. 링크기반 회전제약 데이터에서 출발링크 ID와 도착링크 ID는 회전을 특정할 수 있다. 링크기반 회전제약 데이터에서 회전제약은 특정된 회전의 회전가능 또는 회전불가능을 나타낼 수 있다. Referring to (b) of FIG. 5, the link-based rotation constraint data may include a starting link ID, an arrival link ID, or a rotation constraint. In the link-based rotation constraint data, the originating link ID and the destination link ID may specify rotation. In link-based rotation constraint data, rotation constraints may indicate whether a specified rotation is rotatable or non-rotatable.
도 6은 본 발명의 실시예에 따른 회전기반 회전데이터의 구조를 나타낸다. 도 6을 참조하면, 회전기반 회전데이터 구축부(100)가 구축하는 회전기반 회전데이터는 회전 ID, 출발링크 ID, 도착링크 ID, 또는 통행시간으로 구성될 수 있다. 회전기반 회전데이터에서 각각의 회전은 회전 ID로 구분될 수 있다. 회전기반 회전데이터는 회전이 시작되는 출발링크 ID와 회전이 끝나는 도착링크 ID로 각각의 회전을 특정할 수 있다. 회전기반 회전데이터에서 통행시간은 회전하는데 걸리는 시간을 나타낼 수 있다. 6 shows the structure of rotation-based rotation data according to an embodiment of the present invention. Referring to FIG. 6 , the rotation-based rotation data constructed by the rotation-based rotation
회전기반 회전데이터 구축부(100)가 회전기반 회전데이터를 구축하는 일 실시예를 설명한다. 회전기반 회전데이터 구축부(100)는 서버(3)에서 노드 데이터를 읽어와 노드 ID를 이용한 Key를 형성할 수 있다. 회전기반 회전데이터 구축부(100)는 서버(3)에서 링크 데이터를 읽어와 출발노드 ID와 도착노드 ID를 이용한 Key를 형성할 수 있다. 회전기반 회전데이터 구축부(100)는 링크데이터를 읽어와서 링크ID를 이용한 Key를 형성할 수도 있다. 회전기반 회전데이터 구축부(100)는 회전제약 데이터를 읽어와 회전이 시작되는 링크에 회전제약이 존재하는 표시를 입력할 수 있다. 회전기반 회전데이터 구축부(100)가 읽어오는 회전제약 데이터는 좌회전 금지, 진입금지, 또는 유턴 허용 등의 데이터를 포함할 수 있다. An embodiment in which the rotation-based rotation
회전기반 회전데이터 구축부(100)는 회전기반 회전데이터 구조를 구축하기 위해 링크에서 인접한 링크로 이동 가능한 회전을 생성할 수 있다. 회전기반 회전데이터 구축부(100)가 회전을 생성하는 단계는 다음과 같다. 회전기반 회전데이터 구축부(100)는 출발링크ID의 도착노드ID를 추출하여 도착노드ID로 시작하는 모든 링크를 추출할 수 있다. 회전기반 회전데이터 구축부(100)는 추출된 링크를 도착링크 ID로 하는 회전을 생성할 수 있다. The rotation-based rotation
회전기반 회전데이터 구축부(100)는 회전제약 데이터가 있는 링크에서는 회전제약 데이터가 회전 금지 데이터이면 생성된 회전에서 금지되는 회전을 삭제하고, 회전제약 데이터가 유턴 허용 데이터이면 유턴하는 회전을 생성할 수 있다. 회전기반 회전데이터 구축부(100)는 회전제약 데이터가 없는 링크에서는 유턴하는 회전을 제외하고 인접한 링크로 이동 가능한 회전을 생성할 수 있다. 회전기반 회전데이터 구축부(100)는 생성된 회전의 출발링크 ID를 이용한 Key를 생성할 수 있다. 이와 같이, 회전기반 회전데이터 구축부(100)는 회전제약을 반영하여 현실적인 최적경로 탐색을 가능하게 할 수 있다. The rotation-based rotation
통행시간 추출부(300)는 서버에 저장된 회전데이터에서 회전 ID에 해당하는 통행시간을 추출하여 회전기반 회전데이터 구축부(100)가 구축한 회전기반 회전데이터에 저장할 수 있다. 통행시간 추출부(300)는 서버(3)에서 실시간으로 수집되는 교통정보 중 링크에서 링크를 이동하는데 걸리는 시간인 회전 통행시간을 추출할 수 있다. 통행시간 추출부(300)는 회전 통행시간을 추출하여 출발링크와 도착링크가 일치하는 회전 ID의 통행시간에 저장할 수 있다. 통행시간 추출부(300)는 서버(3)에 저장된 교통정보가 노드기반 또는 링크기반인 경우 회전기반 회전데이터 구축부(100)가 구축한 회전데이터에 저장할 수 있도록 회전기반으로 변환할 수 있다. The travel
통행시간 추출부(300)는 내비게이션 등의 시스템을 통해 생성된 회전 통행시간을 회전기반 회전데이터 구축부(100)에 의해 생성된 회전기반 회전데이터로 변환시키는 역할을 할 수 있다. 통행시간 추출부(300)는 기존 교통정보 형식은 링크 또는 노드 기반으로 구성되어 있으므로 교통정보 형식을 회전기반 회전데이터로 변환하여 회전 ID와 매칭되게 할 수 있다. The
통행시간 추출부(300)는 서버(3)에 저장된 회전데이터가 출발링크 ID, 도착링크 ID, 및 통행시간을 포함하는 링크기반 회전데이터인 경우, 회전기반 회전데이터로 변환할 수 있다. 통행시간 추출부(300)는 서버(3)에 저장된 교통정보를 회전기반 회전데이터 구축부(100)가 구축한 회전데이터에 저장할 수 있도록 링크기반 회전데이터를 회전기반 회전데이터로 변환할 수 있다. 통행시간 추출부(300)는 회전기반 회전데이터에서 회전 ID에 해당하는 통행시간을 추출할 수 있다. 통행시간 추출부(300)는 링크기반의 회전데이터는 출발링크 ID와 도착링크 ID로 구성되므로 출발링크 ID와 도착링크 ID를 Key로 해당 회전 ID를 추출하여 해당 필드에 통행시간을 저장할 수 있다. When the rotation data stored in the
통행시간 추출부(300)는 서버(3)에 저장된 회전데이터가 출발노드 ID, 중간노드 ID, 도착노드 ID, 및 통행시간으로 구성된 노드기반 회전데이터인 경우, 출발노드 ID와 중간노드 ID에 대응되는 링크 ID를 출발링크 ID로 저장하고 중간노드 ID와 도착노드 ID에 대응되는 링크 ID를 도착링크 ID로 저장하여, 출발링크 ID, 도착링크 ID, 및 통행시간을 포함하는 링크기반 회전데이터로 변환하고, 변환된 링크기반 회전데이터는 회전기반 회전데이터로 변환할 수 있다. 통행시간 추출부(300)는 서버(3)에 저장된 교통정보를 회전기반 회전데이터 구축부(100)가 구축한 회전데이터에 저장할 수 있도록 노드기반 회전데이터를 링크기반 회전데이터로 변환할 수 있다. 통행시간 추출부(300)는 변환된 링크기반 회전데이터를 회전기반 회전데이터로 다시 한번 변환할 수 있다.When the rotation data stored in the
통행시간 추출부(300)는 노드기반의 회전데이터는 출발노드 ID, 중간노드 ID, 및 도착노드 ID로 구성되므로 출발노드 ID와 중간노드 ID를 Key로 해당 링크 ID를 추출하여 출발링크 ID로 저장할 수 있다. 통행시간 추출부(300)는 중간노드 ID와 도착노드 ID를 Key로 해당 링크 ID를 추출하여 도착링크 ID로 저장할 수 있다. 통행시간 추출부(300)는 링크기반의 회전데이터는 출발링크 ID와 도착링크 ID로 구성되므로 출발링크 ID와 도착링크 ID를 Key로 해당 회전 ID를 추출하여 해당 필드에 통행시간을 저장할 수 있다. Since the node-based rotation data is composed of a starting node ID, an intermediate node ID, and an arrival node ID, the
도 7은 본 발명의 실시예에 따른 통행시간 추출부(300)의 데이터 변환과정을 나타낸다. 도 7을 참조하면, 통행시간 추출부(300)는 서버(3) 저장된 노드기반 회전데이터를 회전기반 회전데이터로 변환하여 링크1에서 링크3으로 이동하는 회전1의 통행시간을 추출할 수 있다. 통행시간 추출부(300)는 노드기반 회전데이터에서 출발노드1과 중간노드2를 Key로 링크1을 추출하여 출발링크1로 저장할 수 있다. 통행시간 추출부(300)는 노드기반 회전데이터에서 중간노드2과 도착노드3을 Key로 링크3을 추출하여 도착링크3으로 저장할 수 있다. 이 과정을 통해 통행시간 추출부(300)는 출발노드1, 중간노드2, 도착노드3, 및 통행시간 0.15로 구성된 노드기반 회전데이터를 출발링크1, 도착링크3, 및 통행시간 0.15로 구성된 링크기반 회전데이터로 변환할 수 있다. 7 shows a data conversion process of the
통행시간 추출부(300)는 변환된 링크기반 회전데이터에서 출발링크1과 도착링크3을 Key로 회전1을 추출하여 해당 필드의 통행시간에 0.15를 저장할 수 있다. 이 과정을 통해 통행시간 추출부(300)는 출발링크1, 도착링크3, 및 통행시간 0.15로 구성된 링크기반 회전데이터를 회전1, 출발링크1, 도착링크3, 및 통행시간 0.15로 구성된 회전기반 회전데이터로 변환할 수 있다. The
도 8은 본 발명의 실시예에 따른 회전기반 경로 탐색부(500)의 구성도를 나타낸다. 도 8을 참조하면, 회전기반 경로 탐색부(500)는 제 1 라벨링 모듈(510), 표식 모듈(520), 제 2 라벨링 모듈(530), 표식 변경 모듈(540), 최적경로 추출 모듈(550), 및 라벨 제거 모듈(560)을 포함할 수 있다. 8 shows a configuration diagram of a rotation-based
회전기반 경로 탐색부(500)는 회전기반 회전데이터 구축부(100)가 구축한 회전기반 회전데이터를 기준으로 최적 경로를 추출할 수 있다. 회전기반 경로 탐색부(500)는 좌회전, 우회전, 유턴 또는 피턴 등의 회전 통행시간이 고려된 회전기반 회전데이터를 기준으로 최적 경로를 추출하므로 오경로 탐색을 최소화할 수 있다. 도 9a 내지 도 9d에 나타난 실시예를 통해 회전기반 경로 탐색부(500)의 경로탐색 방법을 살펴본다.The rotation-based
도 9a 내지 도 9d는 본 발명의 실시예에 따른 회전기반 경로 탐색부(500)가 수행하는 알고리즘 전개 과정을 나타낸다. 도 9a 내지 도 9d에서 동그라미는 노드, 실선은 링크, 네모상자는 링크 ID, 점선은 회전을 의미한다. 점선 옆에 있는 숫자는 회전시간을 의미하고, 네모상자 옆에 있는 (x,y)는 라벨을 의미한다. 여기서 라벨의 x는 이전 링크번호이며, y는 해당 링크에 도달하기까지의 시간을 의미한다. 9A to 9D show an algorithm development process performed by the rotation-based
도 9a를 참조하면, 회전기반 경로 탐색부(500)는 경로탐색 기술인 Dijstra 알고리즘을 토대로 라벨 표지 기법을 사용할 수 있다. 회전기반 경로 탐색부(500)는 노드에 라벨을 표시하는 기존 경로탐색과는 달리 링크에 라벨을 표시하여 경로탐색을 진행할 수 있다. 회전기반 경로 탐색부(500)가 링크에 라벨을 표시하는 것은 기존 링크기반 알고리즘과의 가장 큰 차이점이다. 이하, 노드1에서 출발하는 것을 예시로 회전기반의 라벨 표시를 설명한다.Referring to FIG. 9A , the rotation-based
먼저, 회전기반 경로 탐색부(500)는 노드1에 직접 연결된 링크가 링크1번과 링크2번이므로 링크1과 링크2를 기준으로 회전을 검색할 수 있다. 회전기반 경로 탐색부(500)는 링크1을 기준으로 회전을 검색하면 링크9와 링크11이 연결되고 링크2를 기준으로 회전을 검색하면 링크4와 링크5가 연결될 수 있다. 이때, 회전기반 경로 탐색부(500)는 링크9에는 (1,1.5), ,링크11에는 (1,1.2), 링크4에는 (2,1.3), 링크5에는 (2,0.7)의 라벨을 붙일 수 있다. 회전기반 경로 탐색부(500)의 이러한 기능은 제1 라벨링 모듈(510)에서 수행될 수 있다. First, since links directly connected to
회전기반 경로 탐색부(500)는 첫 번째 검색에서 링크5까지의 통행시간이 가장 짧으므로 링크5의 라벨에 *을 부여할 수 있다. 회전기반 경로 탐색부(500)의 이러한 기능은 표식 모듈(520)에서 수행될 수 있다. Since the travel time from the first search to link 5 is the shortest, the turn-based
도 9b를 참조하면, 회전기반 경로 탐색부(500)는 링크5가 확정된 후 링크5에서 연결된 링크를 검색할 수 있다. 회전기반 경로 탐색부(500)는 링크5에 연결된 링크13, 링크14, 링크15를 검색하여 (5,1.2), (2,2.9), (5,2.0)의 라벨을 붙일 수 있다. 회전기반 경로 탐색부(500)의 이러한 기능은 제2 라벨링 모듈(530)에서 수행될 수 있다. Referring to FIG. 9B , the rotation-based
회전기반 경로 탐색부(500)는 링크5를 제외한 나머지 라벨 중 가장 짧은 시간을 기록한 링크11에 *을 부여하고 링크5에 붙은 라벨을 제거할 수 있다. 회전기반 경로 탐색부(500)의 이러한 기능은 표식 변경 모듈(540)에서 수행될 수 있다. The rotation-based
도 9c를 참조하면, 회전기반 경로 탐색부(500)는 링크11이 확정된 후 링크11에서 연결된 링크를 검색할 수 있다. 회전기반 경로 탐색부(500)는 링크11에 연결된 링크20을 검색하여 링크20에 (11,2.7)의 라벨을 붙일 수 있다. 회전기반 경로 탐색부(500)는 링크11을 제외한 나머지 라벨 중 가장 짧은 시간을 기록한 링크13에 *을 부여하고 링크11에 붙은 라벨을 제거할 수 있다. Referring to FIG. 9C , the rotation-based
회전기반 경로 탐색부(500)는 링크13이 확정된 후 링크13에서 연결된 링크를 검색할 수 있다. 회전기반 경로 탐색부(500)는 링크13에 연결된 링크8, 링크11을 검색할 수 있다. 회전기반 경로 탐색부(500)는 링크8의 도착노드ID가 출발점(노드1)이므로 라벨링에서 제외할 수 있다. 회전기반 경로 탐색부(500)는 링크11은 이미 라벨링이 완료되었으므로 라벨링에서 제외할 수 있다. 회전기반 경로 탐색부(500)는 링크13을 제외한 나머지 라벨 중 가장 짧은 시간을 기록한 링크9에 *을 부여하고 링크13에 붙은 라벨을 제거할 수 있다. After the
회전기반 경로 탐색부(500)는 링크9가 확정된 후 링크9에서 연결된 링크를 검색할 수 있다. 회전기반 경로 탐색부(500)는 링크9에 연결된 링크12, 링크14, 링크15을 검색하여 (9,3.4), (9,2.8), (9,2.1)의 라벨을 붙일 수 있다. 회전기반 경로 탐색부(500)는 링크14의 경우 기존 라벨(2,2.9) 값보다 통행시간이 0.1이 빠르므로 기존 라벨을 대체할 수 있다. 회전기반 경로 탐색부(500)는 링크 15의 경우 기존 라벨 (5,2.0) 보다 통행시간이 느리므로 기존 라벨을 대체하지 못하고 탈락시킬 수 있다. 이와 같이, 회전기반 경로 탐색부(500)의 통행시간이 가장 작은 라벨을 제외한 라벨을 제거하는 기능은 라벨 제거 모듈(560)에서 수행될 수 있다. The rotation-based
도 9d를 참조하면, 회전기반 경로 탐색부(500)는 위와 같은 과정을 반복하여 최종적인 라벨링 결과를 도출할 수 있다. 회전기반 경로 탐색부(500)는 최종 라벨링된 결과에서 위해 Backward 라벨을 추적하는 방식으로 최적경로를 추출할 수 있다. Referring to FIG. 9D , the rotation-based
본 실시예로 회전기반 경로 탐색부(500)는 노드9까지의 경로를 추출하면 노드9의 라벨은 (23,3.8)이므로 Back 링크 ID인 23을 추출하여 링크23의 라벨을 참조하여 경로를 추출할 수 있다. 회전기반 경로 탐색부(500)는 링크23의 Back 링크 ID는 링크15, 링크15의 Back 링크 ID는 링크5, 링크5의 Back 링크 ID는 링크2로 추출할 수 있다. 회전기반 경로 탐색부(500)는 최적경로를 노드 ID로는 9-8-5-2-1로 추출할 수 있다. 회전기반 경로 탐색부(500)는 최적경로를 링크 ID로는 23-15-5-2로 추출할 수 있다. 회전기반 경로 탐색부(500)의 이러한 기능은 최적경로 추출 모듈(550)에서 수행될 수 있다. In this embodiment, when the rotation-based
도 10은 본 발명의 실시예에 따른 회전기반 경로 탐색부(500)가 이용하는 bucket&heap 하이브리드 자료구조를 나타낸다. 도 10을 참조하면, 회전기반 경로 탐색부(500)는 상위 버켓 내부에 하위 버켓을 구성하는 이중 버켓 데이터 구조를 사용하여 최적경로를 탐색할 수 있다. 회전기반 경로 탐색부(500)는 이중 버켓을 구성하여 그 내부를 정렬할 수 있는 구조를 사용할 수 있다. 회전기반 경로 탐색부(500)는 이중 버켓의 내부 정렬을 위한 데이터 구조로 heap 구조가 적용될 수 있다. 바람직하게는, 회전기반 경로 탐색부(500)는 이중 버켓의 내부 정렬을 위한 데이터 구조로 binary heap 구조가 적용될 수 있다. 10 shows a bucket & heap hybrid data structure used by the rotation-based
회전기반 경로 탐색부(500)는 하나의 bucket에 유사한 값을 가지고 있는 데이터를 저장하는 구조인 Bucket 자료구조를 사용할 수 있다. 본 실시예로, 회전기반 경로 탐색부(500)는 하나의 출발지를 기준으로 누적 통행시간을 노드에 저장할 수 있다. 회전기반 경로 탐색부(500)는 1분 단위로 bucket을 구성한다고 가정할 때 11번째 bucket에는 통행시간이 10분보다 크고 11분보다 작은 노드 ID를 리스트로 관리할 수 있다. The rotation-based
회전기반 경로 탐색부(500)는 upper bucket와 lower bucket으로 구성된 double bucket 구조를 사용할 수 있다. 회전기반 경로 탐색부(500)는 lower bucket을 0.1분 단위로 구성한다고 할 때, upper bucket 내부에 lower bucket이 10개씩 존재하게 되는 형태로 구성될 수 있다. 본 실시예로, 회전기반 경로 탐색부(500)는 upper bucket이 11번째이고 lower bucket이 5번째에 있는 bucket 내부에 노드까지의 누적 통행시간이 10.5분보다 크고 10.6분보다 작은 노드만을 리스트로 관리할 수 있다. 회전기반 경로 탐색부(500)는 double bucket을 이용하여 최종적으로 하위 bucket에 저장되는 데이터의 수를 적게 유지할 수 있다. The rotation-based
회전기반 경로 탐색부(500)는 bucket 자료구조를 이용하여 특정 범위 내에 있는 값을 갖는 데이터를 저장하고 있다가 해당 bucket의 순서가 오면 내부에 있는 데이터들을 다시 정렬하는 방식으로 운영할 수 있다. 회전기반 경로 탐색부(500)는 위에서 설명한 라벨링을 이용하여 경로를 탐색하는 과정이 진행되면서 정렬을 수행하므로 bucket&heap 하이브리드 자료구조를 이용할 경우 통행시간이 큰 경우는 뒤로 미뤄 놓기 때문에 작은 범위로 관리할 수 있다. 따라서, 회전기반 경로 탐색부(500)는 정렬하는 데이터의 사이즈를 감소시키고 정렬횟수를 감소시킬 수 있어 최적경로 탐색시간을 단축할 수 있다. The rotation-based
제1 라벨링 모듈(510)은 출발 노드에 직접 연결된 링크에서 회전 가능한 인접 링크를 검색하여 이전 링크번호와 통행시간을 포함하는 라벨을 부여할 수 있다. The
표식 모듈(520)은 표식을 갖는 라벨이 없는 경우 라벨이 부여된 링크 중 통행시간이 가장 짧은 링크를 검색하고, 검색된 링크의 라벨에 표식을 표시할 수 있다. When there is no label with the mark, the
제2 라벨링 모듈(530)은 표식을 갖는 라벨이 부여된 링크에서 회전 가능한 인접 링크를 검색하여 라벨을 부여할 수 있다. The
표식 변경 모듈(540)은 표식을 갖는 라벨을 제외한 라벨이 부여된 링크 중 통행시간이 가장 짧은 링크를 검색하고, 검색된 링크의 라벨에 표식을 표시하고 이전 표식을 갖는 라벨을 삭제할 수 있다. The
최적경로 추출 모듈(550)은 도착 노드에 직접 연결된 링크의 라벨에 포함된 이전 링크번호를 역순으로 연결하여 최적 경로를 추출할 수 있다. The optimal
라벨 제거 모듈(560)은 하나의 링크에 부여된 라벨이 복수개인 경우에는 통행시간이 가장 작은 라벨을 제외한 라벨을 제거할 수 있다. When a plurality of labels are assigned to one link, the
도 11은 본 발명의 실시예에 따른 최적경로 탐색 시스템(1)의 경로탐색 알고리즘 흐름도를 나타낸다. 도 11을 참조하면, 최적경로 탐색 시스템(1)은 서버(3)에서 노드 데이터, 링크 데이터, 및 회전제약 데이터를 읽어올 수 있다. 최적경로 탐색 시스템(1)은 읽어온 데이터를 이용하여 회전기반 회전데이터 구조를 구축할 수 있다. 최적경로 탐색 시스템(1)은 서버(3)에 저장된 노드 또는 링크기반의 회전데이터를 회전기반의 회전데이터로 변경할 수 있다. 최적경로 탐색 시스템(1)은 변경된 회전기반의 회전데이터의 통행시간을 추출하여 구축된 회전기반 회전데이터 구조의 해당 필드에 저장할 수 있다. 최적경로 탐색 시스템(1)은 bucket 구조를 생성하고 생성된 bucket에 heap을 생성할 수 있다. 최적경로 탐색 시스템(1)은 경로탐색 기술인 Dijstra 알고리즘을 토대로 라벨 표지 기법을 사용하여 링크에 라벨링을 진행할 수 있다. 최적경로 탐색 시스템(1)은 backward 경로를 추출하여 도착지까지의 최적경로를 추출할 수 있다. 11 shows a flow chart of a path search algorithm of the optimal
본 발명의 또다른 실시예로 최적경로 탐색 방법은 회전기반 회전데이터 구축단계, 통행시간 추출단계, 회전기반 회전데이터 변환단계, 및 회전기반 경로 탐색단계를 포함할 수 있다. As another embodiment of the present invention, the optimal route search method may include a turn-based rotation data construction step, a travel time extraction step, a turn-based rotation data conversion step, and a turn-based route search step.
회전기반 회전데이터 구축단계는 링크 데이터에 포함된 링크에서 인접한 링크로 이동 가능한 회전을 생성하고 생성된 회전의 회전 ID, 출발링크 ID, 도착링크 ID, 또는 통행시간을 포함하는 회전데이터 구조를 구축할 수 있다. 회전기반 회전데이터 구축단계는 전술한 회전기반 회전데이터 구축부에서 수행되는 동작을 의미한다. The rotation-based rotation data construction step creates a rotation that can move from a link included in the link data to an adjacent link, and builds a rotation data structure including the rotation ID, departure link ID, arrival link ID, or travel time of the generated rotation. can The rotation-based rotation data building step refers to an operation performed by the above-described rotation-based rotation data building unit.
통행시간 추출단계는 서버에 저장된 회전데이터에서 회전 ID에 해당하는 통행시간을 추출하여 상기 회전기반 회전데이터 구축단계에서 구축한 회전데이터에 저장할 수 있다. 통행시간 추출단계는 전술한 통행시간 추출부에서 수행되는 동작을 의미한다.The travel time extraction step may extract the travel time corresponding to the rotation ID from the rotation data stored in the server and store it in the rotation data constructed in the rotation-based rotation data construction step. The travel time extraction step refers to an operation performed by the aforementioned travel time extraction unit.
회전기반 경로 탐색단계는 회전기반 회전데이터 구축단계에서 구축한 회전데이터를 기준으로 최적 경로를 추출할 수 있다. 회전기반 경로 탐색단계는 전술한 회전기반 경로 탐색단계에서 수행되는 동작을 의미한다.In the rotation-based path search step, an optimal path may be extracted based on rotation data constructed in the rotation-based rotation data construction step. The rotation-based path search step refers to an operation performed in the aforementioned rotation-based path search step.
회전기반 경로 탐색단계는 출발 노드에 직접 연결된 링크에서 회전 가능한 인접 링크를 검색하여 이전 링크번호와 통행시간을 포함하는 라벨을 부여하는 단계, 표식을 갖는 라벨이 없는 경우 라벨이 부여된 링크 중 통행시간이 가장 짧은 링크를 검색하고, 검색된 링크의 라벨에 표식을 표시하는 단계, 표식을 갖는 라벨이 부여된 링크에서 회전 가능한 인접 링크를 검색하여 라벨을 부여하는 단계, 표식을 갖는 라벨을 제외한 라벨이 부여된 링크 중 통행시간이 가장 짧은 링크를 검색하고, 검색된 링크의 라벨에 표식을 표시하고 이전 표식을 갖는 라벨을 삭제하는 단계, 및 도착 노드에 직접 연결된 링크의 라벨에 포함된 이전 링크번호를 역순으로 연결하여 최적 경로를 추출하는 단계을 포함할 수 있다. The turn-based route search step searches for adjacent rotatable links among the links directly connected to the starting node and assigns a label including the previous link number and travel time. If there is no label with a marker, travel time among the labeled links Retrieving this shortest link, labeling the retrieved link, searching for adjacent rotatable links from the links labeled with the marker and labeling them, assigning labels excluding the labeled with the marker Retrieving the link with the shortest travel time among the found links, displaying a mark on the label of the searched link and deleting the label with the previous mark, and the previous link number included in the label of the link directly connected to the destination node in reverse order. It may include a step of extracting an optimal path by connecting.
이상에서 대표적인 실시예를 통하여 본 발명을 상세하게 설명하였으나, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리 범위는 설명한 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 특허청구범위와 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태에 의하여 정해져야 한다. Although the present invention has been described in detail through representative embodiments, those skilled in the art will understand that various modifications are possible to the above-described embodiments without departing from the scope of the present invention. will be. Therefore, the scope of the present invention should not be limited to the described embodiments and should not be defined, and should be defined by all changes or modifications derived from the claims and equivalent concepts as well as the claims to be described later.
1 : 최적경로 탐색 시스템
3 : 서버
100 : 회전기반 회전데이터 구축부
300 : 통행시간 추출부
500 : 회전기반 경로 탐색부
510 : 제 1 라벨링 모듈
520 : 표식 모듈
530 : 제 2 라벨링 모듈
540 : 표식 변경 모듈
550 : 최적경로 추출 모듈
560 : 라벨 제거 모듈1: Optimal path search system
3: Server
100: rotation-based rotation data construction unit
300: travel time extraction unit
500: rotation-based path search unit
510: first labeling module
520: mark module
530: second labeling module
540: mark change module
550: optimal path extraction module
560: label removal module
Claims (9)
상기 링크 데이터에 포함된 링크에서 인접한 링크로 이동 가능한 회전을 생성하고 생성된 회전의 회전 ID, 출발링크 ID, 도착링크 ID, 또는 통행시간을 포함하는 회전기반 회전데이터 구조를 구축하는 회전기반 회전데이터 구축부;
상기 서버에 저장된 회전데이터에서 회전 ID에 해당하는 통행시간을 추출하여 상기 회전기반 회전데이터 구축부가 구축한 회전기반 회전데이터에 저장하는 통행시간 추출부;
상기 회전기반 회전데이터 구축부가 구축한 회전기반 회전데이터를 기준으로 최적 경로를 추출하는 회전기반 경로 탐색부를 포함하는 것을 특징으로 하는 최적경로 탐색 시스템.
Node data consisting of node ID and coordinates, link data consisting of link ID, starting node ID, and arrival node ID, or rotation constraint data including rotation possibility information are read from the server to search for an optimal path. in the system,
Rotation-based rotation data for constructing a rotation-based rotation data structure that generates a rotation that can move from a link included in the link data to an adjacent link and includes the rotation ID, departure link ID, arrival link ID, or travel time of the generated rotation. construction department;
a travel time extraction unit extracting travel time corresponding to a rotation ID from rotation data stored in the server and storing the travel time in the rotation-based rotation data constructed by the rotation-based rotation data construction unit;
An optimal path search system comprising a rotation-based path search unit for extracting an optimal path based on the rotation-based rotation data built by the rotation-based rotation data construction unit.
상기 통행시간 추출부는,
상기 서버에 저장된 회전데이터가 출발링크 ID, 도착링크 ID, 및 통행시간을 포함하는 링크기반 회전데이터인 경우, 회전기반 회전데이터로 변환하여, 변환된 회전기반 회전데이터에서 회전 ID에 해당하는 통행시간을 추출하는 것을 특징으로 하는 최적경로 탐색 시스템.
According to claim 1,
The travel time extraction unit,
If the rotation data stored in the server is link-based rotation data including a departure link ID, an arrival link ID, and travel time, it is converted into rotation-based rotation data, and travel time corresponding to the rotation ID in the converted rotation-based rotation data. Optimal path search system, characterized in that for extracting.
상기 통행시간 추출부는,
상기 서버에 저장된 회전데이터가 출발노드 ID, 중간노드 ID, 도착노드 ID, 및 통행시간으로 구성된 노드기반 회전데이터인 경우, 출발노드 ID와 중간노드 ID에 대응되는 링크 ID를 출발링크 ID로 저장하고 중간노드 ID와 도착노드 ID에 대응되는 링크 ID를 도착링크 ID로 저장하여, 출발링크 ID, 도착링크 ID, 및 통행시간을 포함하는 링크기반 회전데이터로 변환하고,
변환된 링크기반 회전 데이터는 회전기반 회전데이터로 변환하여, 변환된 회전기반 회전데이터에서 회전 ID에 해당하는 통행시간을 추출하는 것을 특징으로 하는 최적경로 탐색 시스템.
According to claim 1,
The travel time extraction unit,
If the rotation data stored in the server is node-based rotation data composed of a start node ID, an intermediate node ID, an arrival node ID, and a travel time, a link ID corresponding to the start node ID and the intermediate node ID is stored as a start link ID, Link IDs corresponding to the intermediate node ID and destination node ID are stored as arrival link IDs, and converted into link-based rotation data including departure link ID, arrival link ID, and travel time;
The converted link-based rotation data is converted into rotation-based rotation data, and a travel time corresponding to a rotation ID is extracted from the converted rotation-based rotation data.
상기 회전기반 회전데이터 구축부는,
회전제약 데이터가 있는 링크에서는 회전제약 데이터가 회전 금지 데이터이면 생성된 회전에서 금지되는 회전을 삭제하고, 회전제약 데이터가 유턴 허용 데이터이면 유턴하는 회전을 생성하며,
회전제약 데이터가 없는 링크에서는 유턴하는 회전을 제외하고 인접한 링크로 이동 가능한 회전을 생성하는 것을 특징으로 하는 최적경로 탐색 시스템.
According to claim 1,
The rotation-based rotation data construction unit,
In a link with rotation constraint data, if the rotation constraint data is rotation prohibited data, the rotation prohibited from the generated rotation is deleted, and if the rotation constraint data is U-turn permitted data, a rotation that makes a U-turn is created,
An optimal path search system characterized in that in a link without rotation constraint data, a rotation that can be moved to an adjacent link is generated except for a rotation that makes a U-turn.
상기 회전기반 경로 탐색부는,
출발 노드에 직접 연결된 링크에서 회전 가능한 인접 링크를 검색하여 이전 링크번호와 통행시간을 포함하는 라벨을 부여하는 제1 라벨링 모듈;
표식을 갖는 라벨이 없는 경우 라벨이 부여된 링크 중 통행시간이 가장 짧은 링크를 검색하고, 검색된 링크의 라벨에 표식을 표시하는 표식 모듈;
표식을 갖는 라벨이 부여된 링크에서 회전 가능한 인접 링크를 검색하여 라벨을 부여하는 제2 라벨링 모듈;
표식을 갖는 라벨을 제외한 라벨이 부여된 링크 중 통행시간이 가장 짧은 링크를 검색하고, 검색된 링크의 라벨에 새로운 표식을 표시하고 이전 표식을 갖는 라벨을 삭제하는 표식 변경 모듈;
도착 노드에 직접 연결된 링크의 라벨에 포함된 이전 링크번호를 역순으로 연결하여 최적 경로를 추출하는 최적경로 추출 모듈을 포함하는 것을 특징으로 하는 최적경로 탐색 시스템.
According to claim 1,
The rotation-based path search unit,
A first labeling module for searching for adjacent rotatable links from links directly connected to the starting node and assigning a label including a previous link number and travel time;
a marker module for searching for a link having the shortest travel time among labeled links when there is no label with a marker, and displaying a marker on the label of the searched link;
a second labeling module for searching for a rotatable adjacent link among labeled links having a mark and assigning a label thereto;
a label change module that searches for a link with the shortest travel time among labeled links excluding labels with a label, displays a new label on the label of the searched link, and deletes the label with the previous label;
An optimal route search system comprising an optimal route extraction module for extracting an optimal route by connecting previous link numbers included in the label of a link directly connected to the destination node in reverse order.
상기 회전기반 경로 탐색부는,
하나의 링크에 부여된 라벨이 복수개인 경우에는 통행시간이 가장 작은 라벨을 제외한 라벨을 제거하는 라벨 제거 모듈을 더 포함하는 것을 특징으로 하는 최적경로 탐색 시스템.
According to claim 5,
The rotation-based path search unit,
When a plurality of labels are assigned to one link, the optimal path search system further comprises a label removal module for removing labels other than the label with the smallest travel time.
상기 회전기반 경로 탐색부는,
상위 버켓 내부에 하위 버켓을 구성하는 이중 버켓 데이터 구조를 사용하여 최적경로를 탐색하는 것을 특징으로 하는 최적경로 탐색 시스템.
According to claim 1,
The rotation-based path search unit,
An optimal path search system characterized by searching for an optimal path using a double bucket data structure constituting a lower bucket inside an upper bucket.
상기 링크 데이터에 포함된 링크에서 인접한 링크로 이동 가능한 회전을 생성하고 생성된 회전의 회전 ID, 출발링크 ID, 도착링크 ID, 또는 통행시간을 포함하는 회전기반 회전데이터 구조를 구축하는 회전기반 회전데이터 구축단계;
상기 서버에 저장된 회전데이터에서 회전 ID에 해당하는 통행시간을 추출하여 상기 회전기반 회전데이터 구축단계에서 구축한 회전기반 회전데이터에 저장하는 통행시간 추출단계;
상기 회전기반 회전데이터 구축단계에서 구축한 회전기반 회전데이터를 기준으로 최적 경로를 추출하는 회전기반 경로 탐색단계를 포함하는 것을 특징으로 하는 최적경로 탐색 방법.
Node data consisting of node ID and coordinates, link data consisting of link ID, starting node ID, and arrival node ID, or rotation constraint data including rotation possibility information are read from the server to search for an optimal path. in the method,
Rotation-based rotation data for constructing a rotation-based rotation data structure that generates a rotation that can move from a link included in the link data to an adjacent link and includes the rotation ID, departure link ID, arrival link ID, or travel time of the generated rotation. construction phase;
a travel time extraction step of extracting a travel time corresponding to a rotation ID from rotation data stored in the server and storing the travel time in the rotation-based rotation data constructed in the rotation-based rotation data construction step;
and a rotation-based path search step of extracting an optimal path based on the rotation-based rotation data constructed in the rotation-based rotation data construction step.
상기 회전기반 경로 탐색단계는,
출발 노드에 직접 연결된 링크에서 회전 가능한 인접 링크를 검색하여 이전 링크번호와 통행시간을 포함하는 라벨을 부여하는 단계;
표식을 갖는 라벨이 없는 경우 라벨이 부여된 링크 중 통행시간이 가장 짧은 링크를 검색하고, 검색된 링크의 라벨에 표식을 표시하는 단계;
표식을 갖는 라벨이 부여된 링크에서 회전 가능한 인접 링크를 검색하여 라벨을 부여하는 단계;
표식을 갖는 라벨을 제외한 라벨이 부여된 링크 중 통행시간이 가장 짧은 링크를 검색하고, 검색된 링크의 라벨에 표식을 표시하고 이전 표식을 갖는 라벨을 삭제하는 단계;
도착 노드에 직접 연결된 링크의 라벨에 포함된 이전 링크번호를 역순으로 연결하여 최적 경로를 추출하는 단계을 포함하는 것을 특징으로 하는 최적경로 탐색 방법.According to claim 8,
In the rotation-based path search step,
Searching for an adjacent rotatable link from links directly connected to the starting node and assigning a label including a previous link number and travel time;
If there is no label with a mark, searching for a link having the shortest travel time among the labeled links, and displaying a mark on the label of the searched link;
searching for adjacent rotatable links in the labeled links having a marker and assigning labels thereto;
searching for a link with the shortest travel time among labeled links excluding labels with a mark, displaying a mark on a label of the searched link, and deleting a label with a previous mark;
An optimal route search method comprising the step of extracting an optimal route by connecting previous link numbers included in labels of links directly connected to the destination node in reverse order.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210148195A KR102668821B1 (en) | 2021-11-01 | 2021-11-01 | Turn-based optimal path search method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210148195A KR102668821B1 (en) | 2021-11-01 | 2021-11-01 | Turn-based optimal path search method and system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20230063199A true KR20230063199A (en) | 2023-05-09 |
KR102668821B1 KR102668821B1 (en) | 2024-05-27 |
Family
ID=86409257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210148195A KR102668821B1 (en) | 2021-11-01 | 2021-11-01 | Turn-based optimal path search method and system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102668821B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060178819A1 (en) * | 2005-02-04 | 2006-08-10 | Microsoft Corporation | Efficient navigation routing system and method |
KR20070070700A (en) | 2005-12-29 | 2007-07-04 | 에스케이 주식회사 | Method and system for providing traffic information |
KR20120002416A (en) * | 2010-06-30 | 2012-01-05 | 현대자동차주식회사 | System for providing traffic information with turning information in crossroads and thereof method |
-
2021
- 2021-11-01 KR KR1020210148195A patent/KR102668821B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060178819A1 (en) * | 2005-02-04 | 2006-08-10 | Microsoft Corporation | Efficient navigation routing system and method |
KR20070070700A (en) | 2005-12-29 | 2007-07-04 | 에스케이 주식회사 | Method and system for providing traffic information |
KR20120002416A (en) * | 2010-06-30 | 2012-01-05 | 현대자동차주식회사 | System for providing traffic information with turning information in crossroads and thereof method |
Also Published As
Publication number | Publication date |
---|---|
KR102668821B1 (en) | 2024-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101313304B (en) | Schematic destination maps | |
Rosvall et al. | Networks and cities: An information perspective | |
JP3793032B2 (en) | Road guide method and apparatus | |
JP5300821B2 (en) | Traffic information description model establishment method, traffic information element knowledge base generation method, traffic information conversion method, traffic information description model establishment device, traffic information element knowledge base generation device, and traffic information conversion device | |
CN103323018B (en) | Based on feature identification and the method for fast searching of the hotspot path of period | |
JP5440217B2 (en) | Map data and electronic equipment | |
JP5440219B2 (en) | Map data and map data creation method | |
JP2008242053A (en) | Road map data structure, road map data storage medium, navigation device, and road map data generation method | |
JP2008089375A (en) | Data updating system, navigation device, and data updating method | |
Chen et al. | ScenicPlanner: planning scenic travel routes leveraging heterogeneous user-generated digital footprints | |
JP2001165681A (en) | Traffic network route searing method | |
KR20210117235A (en) | Method for managing travel route database based on location and server for the method | |
Wang et al. | Constrained route planning over large multi-modal time-dependent networks | |
KR20230063199A (en) | Turn-based optimal path search method and system | |
Falek et al. | Muse: Multimodal separators for efficient route planning in transportation networks | |
CN113656979B (en) | Road network data generation method and device, electronic equipment and storage medium | |
CN103246650A (en) | Road logic model and manufacture method thereof | |
CN112269845B (en) | Method for quickly matching electronic road map and bus route facing to different source data | |
CN114580796A (en) | Tour attribute path planning method | |
Alivand et al. | Choice set generation for modeling scenic route choice behavior with geographic information systems | |
JP2005338032A (en) | Positional information providing device and positional information using terminal | |
Babu et al. | Urban delay tolerant network simulator (udtnsim v0. 1) | |
JP2010217459A (en) | Device, system, program, and method for managing road network diagram | |
JP2016095425A (en) | Map data creation device and computer program | |
KR102553026B1 (en) | FDB-based roadmap generation device and method for route search |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |