KR102470845B1 - 통행요금 생성을 위한 최단경로 산출 방법 - Google Patents

통행요금 생성을 위한 최단경로 산출 방법 Download PDF

Info

Publication number
KR102470845B1
KR102470845B1 KR1020200162725A KR20200162725A KR102470845B1 KR 102470845 B1 KR102470845 B1 KR 102470845B1 KR 1020200162725 A KR1020200162725 A KR 1020200162725A KR 20200162725 A KR20200162725 A KR 20200162725A KR 102470845 B1 KR102470845 B1 KR 102470845B1
Authority
KR
South Korea
Prior art keywords
shortest path
distance value
adjacent line
node
line
Prior art date
Application number
KR1020200162725A
Other languages
English (en)
Other versions
KR20220074343A (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 KR1020200162725A priority Critical patent/KR102470845B1/ko
Publication of KR20220074343A publication Critical patent/KR20220074343A/ko
Application granted granted Critical
Publication of KR102470845B1 publication Critical patent/KR102470845B1/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
    • 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/3407Route searching; Route guidance specially adapted for specific applications
    • G01C21/3415Dynamic re-routing, e.g. recalculating the route when the user deviates from calculated route or after detecting real-time traffic data or accidents
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments

Landscapes

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

Abstract

본 발명은 통행요금 생성을 위한 최단경로 산출 방법에 관한 것으로, 본 발명은 두 개의 노드 간의 방향성을 갖는 인접선을 생성하는 단계와, 생성한 인접선의 거리값을 설정하는 단계와, 최단경로 거리값이 설정된 인접선들로 이루어진 최단경로 인접선 그룹에 최근 포함된 최근포함 인접선을 추출하는 단계, 그리고 추출한 최근포함 인접선에 기초하여 최단경로 인접선 그룹에 포함되지 않는 인접선의 최단경로 거리값을 산출하고 설정 거리값을 산출한 최단경로 거리값으로 갱신하는 단계를 포함한다. 이로 인해 본 발명은 통행요금 생성 속도가 향상되고, U턴 또는 P턴 구간에도 대응 가능하여 보다 정확한 통행요금을 생성할 수 있으며 주행차량의 입구영업소와 출구영업소가 동일하여도 이에 따른 주행거리 산정이 가능한 효과가 있다.

Description

통행요금 생성을 위한 최단경로 산출 방법{How to calculate the shortest route for generating tolls}
본 발명은 통행요금 생성을 위한 최단경로 산출 방법에 관한 것으로, 더욱 상세하게는 두 개의 노드 간의 방향성을 갖는 인접선을 생성하고 생성한 인접선에 설정된 거리값이 두 노드 간의 최단경로인 인접선에 기초하여 다른 인접선의 최단경로 거리값을 산출하는 수정형 Edge based Dijkstra 알고리즘을 통해 통행요금을 생성함으로써, 통행요금 생성 속도가 향상되고 U턴 또는 P턴 구간에도 대응 가능한 통행요금 생성을 위한 최단경로 산출 방법에 관한 것이다.
고속도로 통행요금이란 고속도로를 이용하려는 차량이 입구영업소를 통해 고속도로를 진입한 후 특정 출구영업소로 진출할 때 고속도로를 이용한 거리에 대한 통행료를 말한다.
이러한 고속도로 통행요금은 기본요금과 주행요금을 합산하여 산정하며, 차종(1종~6종)별로 그리고 고속도로 상의 차선의 수에 따라 요금이 차등 적용된다. 통행요금 생성시 입구영업소와 출구영업소 간의 경로는 최단경로로 하고, 상행과 하행이 동일한 경로이면 동일한 요금을 적용하며, 신규 생성된 요금은 구요금의 120%를 초과할 수 없으며 120%를 초과하는 경우 구요금의 120%로 보정하고, 상위 차종 요금이 하위 차종 요금보다 작을 경우 하위 차종 요금을 상위 차종 요금으로 한다.
한편, 입구영업소와 출구영업소 간의 최단경로 생성을 위해 종래에는 수정형 덩굴망 알고리즘이 사용되었다. 수정형 덩굴망 알고리즘을 이용한 종래의 최단 경로 생성 과정은 하기와 같다(하기에서의
Figure 112020128397264-pat00001
는 현재까지 계산된 값 중에서 출발지점 r에서 전노드 코드 g인 전노드를 거쳐 노드 j까지 이르는 최소 통행비용이고, g는 임의의 노드 j에 하나의 링크로 연결된 노드의 전노드 코드이며,
Figure 112020128397264-pat00002
는 출발지점 r에서 노드 j에 이르는 경로로써 전노드 코드 g에 해당하는 전노드의 번호이고,
Figure 112020128397264-pat00003
는 출발지점 r에서 노드 j에 이르는데 전노드 코드 g에 해당하는 전노드의 전노드이다. 그리고
Figure 112020128397264-pat00004
는 노드 i 에서의 j-i-j U-turn 벌점(penalty)이고,
Figure 112020128397264-pat00005
는 노선탐색 중 출발지점 r에서 전노드
Figure 112020128397264-pat00006
를 거쳐 노드 k까지의 새로이 계산된 노선비용이다).
[단계 0] 모든 노드에 노드표지(node label)를 초기화한다.
(1)
Figure 112020128397264-pat00007
,
Figure 112020128397264-pat00008
,
Figure 112020128397264-pat00009
∀r
(2)
Figure 112020128397264-pat00010
,
Figure 112020128397264-pat00011
,
Figure 112020128397264-pat00012
∀j (j는 r과 하나의 링크로 직접 연결된 노드)
(3)
Figure 112020128397264-pat00013
,
Figure 112020128397264-pat00014
,
Figure 112020128397264-pat00015
∀g, k (k≠r, k≠j),
(4) r을 집합 N의 목록에 기록하여 둔다, 그리고 i=r로 놓는다.
[단계 1] 집합 N에서 순서에 따라 노드 i를 선택하고 노드 i를 집합 N의 목록에서 제거한다.
Figure 112020128397264-pat00016
의 집합을 구한다.
이때,
Figure 112020128397264-pat00017
인 경우는 j를 집합에 포함시키지 않는다. 단, j-i-j의 U-turn 이 허용될 경우에는 j를 집합에 포함시킨다. 집합 N에서 선택할 노드가 없으면 [단계 5]로 간다.
[단계 2] 집합
Figure 112020128397264-pat00018
에서 순서에 따라 노드 j를 선택하고 집합
Figure 112020128397264-pat00019
의 목록에서 j를 제거한다.
Figure 112020128397264-pat00020
,
Figure 112020128397264-pat00021
인 집합을 구한다.
이때, i-j-i의 U-turn이 허용되어 k=i인 경우에는 i를 집합에
Figure 112020128397264-pat00022
포함시킨다. 하지만 U-turn 이 허용되지 않거나
Figure 112020128397264-pat00023
인 경우에는 k를
Figure 112020128397264-pat00024
에 포함시키지 않는다. 선택할 j가 없으면 [단계 1]로 간다.
[단계 3] 집합
Figure 112020128397264-pat00025
에서 순서에 따라 k를 선택한다. 집합
Figure 112020128397264-pat00026
목록에서 k를 제거한다.
k 노드에 대한 전노드로써 j 노드가 되는 전노드 코드 g를 찾는다.
이때, j노드가 전노드로 기록이 되어 있지 않으면 전노드 번호가 0으로 나오는 첫 번째 g를 노드 k에 대한 노드 j의 전노드 코드로 할당한다. 선택할 노드 k 가 없으면 [단계 2]로 간다.
[단계 4] 선택된 노드 k까지의 노선비용을 계산하고 노드표지를 수정한다.
(1) j노드의 전노드들 중에 i 노드번호를 전노드로 하는 전노드 코드 h를 찾는다.(
Figure 112020128397264-pat00027
)
(2)
Figure 112020128397264-pat00028
를 계산한다. (j가 i-j-i U-turn 허용노드인 경우:
Figure 112020128397264-pat00029
)
(3)
Figure 112020128397264-pat00030
<
Figure 112020128397264-pat00031
이면,
Figure 112020128397264-pat00032
=
Figure 112020128397264-pat00033
,
Figure 112020128397264-pat00034
,
Figure 112020128397264-pat00035
로 수정한다.
만일,
Figure 112020128397264-pat00036
이면, 노드 k 와 j를 각각 집합 N의 목록에 추가하도록 한다. 하지만 k 또는 j가 집합 N에 이미 있으면 해당되는 노드는 포함시키지 않는다.
(4)
Figure 112020128397264-pat00037
Figure 112020128397264-pat00038
이면, 노드표지를 수정하지 않고, k와 j를 N에 추가하지도 않는다.
(5) [단계 3]으로 간다.
[단계 5] 노드표지를 이용하여 최단경로를 역으로 추적한다.
(1)
Figure 112020128397264-pat00039
인 전노드 코드 g를 찾아, 전노드 k=
Figure 112020128397264-pat00040
, 전전노드 j=
Figure 112020128397264-pat00041
를 찾는다.
(2) j, k, d를 순서대로 노선노드집합 R의 목록에 R={j, k, d}와 같이 추가한다.
(3) 노드 k의 전노드가 j 즉 j=
Figure 112020128397264-pat00042
인 전노드 코드 g를 찾아, g에 속한 k노드의 전전노드 i=
Figure 112020128397264-pat00043
를 추적한다.
(4) i 노드를 노선노드집합 R 목록의 첫 번째 위치로 R={i, j, k, …, d}와 같이 추가한다.
(5)
Figure 112020128397264-pat00044
이면 최단경로 추적을 완료하고,
Figure 112020128397264-pat00045
이면 k=j, j=i로 놓고 (3)으로 가서 반복한다.
이러한 수정형 덩굴망 알고리즘은 기존의 덩굴망 알고리즘에 비해 하나의 노드에 필요에 따라 접근로 수만큼의 표지를 갖고, 이로 인해 표지를 설정함에 있어서 전노드 코드를 이용하기 위해 해당 표지를 찾는 단계인 [단계 3]이 추가되었으며, 최종 결과인 노드표지를 이용하여 최단경로를 역으로 추적할 때 항상 k노드와 k노드의 전노드 j의 두 개의 노드를 항상 동일하게 하면서 하나의 노드 i를 추적하기 때문에 교차로의 회전벌점 및 회전금지를 항상 반영하며 추적 가능하다. 따라서, 수정형 덩굴망 알고리즘을 이용하여 최단경로를 생성방법은 좌회전금지 교차로가 2개 이상으로 연속하여 위치한 경우에도 기존 덩굴망 알고리즘과는 달리 좌회전을 금지하는 교차로에서는 실제 상황에 부합하도록 좌회전 경로를 최단경로에 포함하지 않는다는 장점이 있다.
하지만, 수정형 덩굴망 알고리즘 역시 기존의 덩굴망 알고리즘과 같이 노드를 기준으로 하여 최단거리를 계산하기 때문에 노드의 개수 증가에 따른 계산량 증가가 상당하여 통상적으로 다수의 노드가 포함되는 고속도로 통행요금 생성을 위한 계산 시간이 오래 걸린다는 한계가 존재한다.
대한민국 등록특허 제10-0653036호
본 발명은 위에서 언급한 종래 기술이 가지는 문제점을 해결하기 위한 것으로 본 발명이 이루고자 하는 목적은, 두 개의 노드 간의 방향성을 갖는 인접선을 생성하고 생성한 인접선에 설정된 거리값이 두 노드 간의 최단경로인 인접선에 기초하여 다른 인접선의 최단경로 거리값을 산출하는 수정형 Edge based Dijkstra 알고리즘을 통해 통행요금을 생성하여, 통행요금 생성 속도가 향상되고 U턴 또는 P턴 구간에도 대응 가능한 통행요금 생성을 위한 최단경로 산출 방법을 제공하는 것이다.
본 발명의 일 실시예에 따른 통행요금 생성을 위한 최단경로 산출 방법은, 두 개의 노드 간의 방향성을 갖는 인접선을 생성하는 단계와, 생성한 인접선의 거리값을 설정하는 단계와, 최단경로 거리값이 설정된 인접선들로 이루어진 최단경로 인접선 그룹에 최근 포함된 최근포함 인접선을 추출하는 단계, 그리고 추출한 최근포함 인접선에 기초하여 최단경로 인접선 그룹에 포함되지 않는 인접선의 최단경로 거리값을 산출하고 설정 거리값을 산출한 최단경로 거리값으로 갱신하는 단계를 포함한다.
이때, 인접선을 생성하는 단계는 노드 중 시작 노드를 결정하는 단계와, 시작 노드를 출발점으로 하는 도로 방향에 따른 인접선을 생성하는 단계, 그리고 U턴 또는 P턴 구간이 존재하는 두 개의 노드 간에 역방향 인접선을 생성하는 단계를 포함할 수 있다.
또한, 인접선을 생성하는 단계는 역방향 인접선이 향하는 목적 노드가 시작 노드가 아니면 목적 노드를 출발점으로 하는 도로 방향에 따른 인접선을 추가 생성하는 단계를 더 포함할 수 있다.
또한, 최단경로 산출 방법은 설정 거리값이 최단경로 거리값으로 갱신된 인접선을 최단경로 인접선 그룹에 포함시키는 단계와, 생성한 인접선이 모두 최단경로 인접선 그룹에 포함되는지 판단하는 단계를 더 포함하고, 생성한 인접선이 모두 최단경로 인접선 그룹에 포함되는 것으로 판단될 때까지, 최근포함 인접선을 추출하는 단계에서부터 최단경로 거리값으로 갱신하는 단계까지 반복 수행할 수 있다.
또한, 최단경로 산출 방법은 생성한 인접선 중 시작 노드와 연결되는 하나의 시작 인접선을 선택하는 단계와, 선택한 시작 인접선을 최단경로 인접선 그룹에 포함시키는 단계를 더 포함할 수 있다.
또한, 시작 노드와 연결되는 인접선이 다수개인 경우, 시작 인접선을 선택하는 단계는 설정된 거리값이 최소인 인접선을 시작 인접선으로 선택할 수 있다.
또한, 최단경로 거리값으로 갱신하는 단계는 최단경로 인접선 그룹에 포함되지 않는 미포함 인접선이 연결하는 출발 노드와 목적 노드를 추출하는 단계와, 추출한 출발 노드로부터 목적 노드까지의 경로 중 최근포함 인접선을 포함하는 경로를 생성하는 단계와, 생성한 경로를 구성하는 인접선에 설정된 거리값을 합산하여 생성한 경로별 거리값을 산출하고 산출한 경로별 거리값 중 최소값을 선택하는 단계, 그리고 선택한 최소값과 미포함 인접선에 설정된 거리값을 비교하여 작은 값을 미포함 인접선의 최단경로 거리값으로 결정하고 설정 거리값을 갱신하는 단계를 포함할 수 있다.
본 발명에 의하면, 두 개의 노드 간의 방향성을 갖는 인접선을 생성하고 생성한 인접선에 설정된 거리값이 두 노드 간의 최단경로인 인접선에 기초하여 다른 인접선의 최단경로 거리값을 산출하는 수정형 Edge based Dijkstra 알고리즘을 통해 통행요금을 생성함으로써 통행요금 생성 속도가 향상되고, U턴 또는 P턴 구간에도 대응 가능하여 보다 정확한 통행요금을 생성할 수 있으며 주행차량의 입구영업소와 출구영업소가 동일하여도 이에 따른 주행거리 산정이 가능한 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 통행요금 생성을 위한 최단경로 산출 방법을 수행하는 최단경로산출 시스템의 기능 블록도이다.
도 2는 본 발명의 일 실시예에 따른 통행요금 생성을 위한 최단경로 산출 방법을 개략적으로 도시한 순서도이다.
도 3은 본 발명의 일 실시예에 따른 인접선 생성 과정을 도시한 순서도이다.
도 4의 (a), (b), (c)는 본 발명의 일 실시예에 따른 인접선 생성의 일례를 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 최단경로 산출부의 기능 블록도이다.
도 6의 (a), (b)는 미포함 인접선의 최소 거리값 산출 일례를 도시한 도면이다.
도 1은 본 발명의 일 실시예에 따른 통행요금 생성을 위한 최단경로 산출 방법을 수행하는 최단경로산출 시스템의 기능 블록도이다.
일반적으로 고속도로 통행요금은 영업소(톨게이트)의 신설, 기준거리 변경, 기준요금 변경, 도로의 확장, 진행방향 변경 등의 요금 변동요인이 발생하면 통행요금을 새로 생성해야 하며, 통행요금 생성을 위해서는 각 노드(영업소) 간의 최단경로 산출이 이루어져야 한다.
본 실시예에 따른 통행요금 생성을 위한 최단경로 산출 방법(이하, ‘최단경로 산출 방법’이라 한다)은 두 개의 노드 간의 방향성을 갖는 인접선을 생성하고 생성한 인접선에 설정된 거리값이 두 노드 간의 최단경로인 인접선에 기초하여 다른 인접선의 최단경로 거리값을 산출하는 수정형 Edge based Dijkstra 알고리즘을 통해 고속도로 통행요금을 생성하기 위한 것이다.
이를 위해, 본 실시예에 따른 최단경로 산출 시스템은 두 개의 노드 간에 인접선을 생성하는 인접선 생성부(10)와, 생성한 각 인접선의 거리값을 설정하는 거리값 설정부(20)와, 다수개의 인전선 중 시작 노드에 따른 시작 인접선을 결정하는 시작 인접선 결정부(30)와, 다수개의 인접선 중 거리값이 최단경로 거리값인 것으로 판단되는 인접선들을 그룹화하는 인접선 그룹화부(40)와, 다수개의 인접선 중 인접선 그룹화부(40)에 의해 최근 그룹화된 최근포함 인접선을 추출하거나 또는 그룹화되지 않은 미포함 인접선을 추출하는 인접선 추출부(50), 그리고 추출한 최근포함 인접선에 기초하여 미포함 인접선의 최단경로 거리값을 산출하는 최단경로 산출부(60)를 포함하여 구성될 수 있다.
도 1을 참조하여 보다 구체적으로 설명하면, 인접선 생성부(10)는 다수의 노드 중 두 개의 노드 간을 연결하는 연결 선을 생성한다. 여기서, 노드는 실제 도로 상의 영업소(톨게이트)에 해당하며 인접선 생성부(10)는 결정된 시작 노드에 기초하여 도로 방향을 따라 방향성을 갖는 인접선을 생성하는데, 이에 관한 보다 상세한 설명은 도 3 내지 도 4를 참조하여 후술하기로 한다.
거리값 설정부(20)는 인접선 생성부(10)에서 생성한 각 인접선의 거리값을 설정한다. 이때, 각 인접선에 설정하는 거리값은 실제 도로에서의 거리값이거나 또는 최단경로 산출부(60)에서 산출된 거리값일 수 있다. 바람직하게, 거리값 설정부(20)는 각 인접선의 거리값을 최초 설정시 인접선이 연결하는 두 개의 노드 간의 실제 도로 거리가 입력되어 설정될 수 있으며, 이후 최단경로 산출부(60)에서 최단경로 거리값이 산출되면 거리값 설정부(20)는 해당 인접선의 거리값 설정을 갱신할 수 있다.
시작 인접선 결정부(30)는 통행료 산출의 시작점이 되는 시작 노드와 연결되는 시작 인접선을 선택하여 결정할 수 있다. 바람직하게, 시작 인접선 결정부(30)는 시작 노드에 연결되는 시작 인접선이 다수개인 경우 다수개의 시작 인접선 후보 중에서 거리값이 가장 작은 인접선을 시작 인접선으로 선택할 수 있다.
인접선 그룹화부(40)는 전체 인접선 중에서 설정된 거리값이 최단경로 거리값인 것으로 판단되는 인접선을 최던경로 인접선 그룹에 포함시킬 수 있다. 바람직하게, 인접선 그룹화부(40)는 최단경로 산출부(60)에서 최단경로 거리값을 산출하여 설정 거리값이 갱신된 인접선을 최단경로 인접선으로 판단하고 최던경로 인접선 그룹에 포함시킬 수 있다. 이때, 인접선 그룹화부(40)는 인접선 정보가 초기화된 초기 시점에서 시작 인접선이 결정되면 결정된 시작 인접선을 최단경로 인접선으로 판단하고 최단경로 인접선 그룹에 포함시킬 수 있다. 인접선 추출부(50)는 최단경로 인접선 그룹에 최근 포함된 최근포함 인접선을 추출하거나 또는 전체 인접선 중 최단경로 인접선 그룹에 포함되지 않은 미포함 인접선을 추출할 수 있다.
최단경로 산출부(60)는 인접선 추출부(50)에서 추출한 미포함 인접선의 최단경로 거리값을 산출할 수 있다. 이때, 최단경로 산출부(60)는 인접선 추출부(50)에서 추출한 최근포함 인접선의 거리값에 기초하여 미포함 인접선의 최단경로 거리값을 산출하는데 이에 관한 보다 상세한 설명은 도 5를 참조하여 후술하기로 한다.
도 2는 본 발명의 일 실시예에 따른 통행요금 생성을 위한 최단경로 산출 방법을 개략적으로 도시한 순서도이다.
도 2를 참조하여 본 실시예에 따른 최단경로 산출 과정을 살펴보면, 우선 인접선 생성부(10)는 두 개의 노드 간의 방향성을 갖는 인접선을 생성하고, 인접선이 생성되면 거리값 설정부(20)는 생성한 인접선의 거리값을 설정할 수 있다(S10).
인접선의 최초 거리값 설정이 완료된 후 시작 인접선 결정부(30)는 생성된 인접선 중 시작 노드와 연결되는 하나의 시작 인접선을 선택하고(S20). 시작 인접선이 선택되면 인접선 그룹화부(40)는 선택된 시작 인접선을 최단경로 인접선 그룹에 포함시킬 수 있다(S30).
최단경로 인접선 그룹에 인접선이 추가되면 인접선 추출부(50)는 최단경로 인접선 그룹에 최근 포함된 최근포함 인접선을 추출할 수 있다(S40). 인접선 추출부(50)는 최근 포함 인접선이 추출되면 최단경로 인접선 그룹에 포함되지 않은 미포함 인접선을 추출하고, 최단경로 산출부(60)는 추출된 최근포함 인접선에 기초하여 미포함 인접선의 최단경로 거리값을 산출하며, 거리값 설정부(20)는 최단경로 거리값이 산출된 인접선의 설정 거리값을 산출한 최단경로 거리값으로 갱신할 수 있다(S50).
인접선 그룹화부(40)는 최단경로 산출부(60)에서 최단경로 거리값이 산출된 미포함 인접선을 최단경로 인접선 그룹에 포함시키며(S60), 인접선 추출부(50)는 모든 인접선이 최단경로 인접선 그룹에 포함되었는지 판단한다(S70).
만약, 모든 인접선이 최단경로 인접선 그룹에 포함되었다면(S70-Y), 본 실시예에 따른 최단경로 산출 과정이 종료되지만, 최단경로 인접선 그룹에 포함되지 못한 미포함 인접선이 남아 있다면(S70-N), 모든 인접선이 최단경로 인접선 그룹에 포함된 것으로 판단될 때까지, 최근포함 인접선을 추출하는 단계에서부터 최단경로 거리값으로 갱신하는 단계까지 반복 수행할 수 있다(S40~S60).
도 3은 본 발명의 일 실시예에 따른 인접선 생성 과정을 도시한 순서도이고, 도 4의 (a), (b), (c)는 본 발명의 일 실시예에 따른 인접선 생성의 일례를 도시한 도면이다.
도 3을 참조하여 본 실시예에 따른 최단경로 산출 과정 중 인접선 생성과정을 보다 구체적으로 살펴보면, 우선, 다수개의 노드 중 시작 노드가 결정된다(S11). 여기서, 시작 노드의 결정은 관리자에 의해 결정될 수 있다.
시작 노드가 결정되면 인접선 생성부(10)는 시작 노드를 출발점으로 하는 인접선을 생성할 수 있다(S12). 이때, 생성한 인접선은 방향성을 갖는데 인접선 생성부(10)는 시작 노드를 출발점으로 하는 도로 방향에 따른 인접선을 생성할 수 있다. 도 4의 (a)를 예로 하여 설명하면, 시작 노드가 t1인 경우 인접선 생성부(10)는 t1을 출발점으로 하여 진행되는 도로 방향에 따라 방향성을 갖는 각각의 인접선(l1)을 생성할 수 있다.
도로 방향에 따른 인접선 생성이 완료되면 인접선 생성부(10)는 실제 도로에 U턴 또는 P턴 구간이 존재하는 두 개의 노드 간에 역방향 인접선을 생성할 수 있다(S13). 도 4의 (b)를 예로 하여 설명하면, 실제 도로에서 t3 노드와 t5 노드 간에 U턴 또는 P턴 구간이 존재하는 것으로 가정하였을 때 인접선 생성부(10)는 t3과 t3 노드 간에 1차 생성되었던 인접선(l1)과 역방향인 역방향 인접선(l2)을 생성할 수 있다. 이때, U턴 또는 P턴 구간에 의한 역방향 인접선은 동일 구간의 정방향 인접선과 동일한 거리값이 설정될 수 있다.
역방향 인접선이 생성되면, 인접선 생성부(10)는 생성한 역방향 인접선이 향하는 목적 노드가 시작 노드인지 판단할 수 있다(S14). 만약 역방향 인접선이 향하는 목적 노드가 시작 노드인 경우(S14-Y), 인접선 생성과정을 종료하고, 반면에 역방향 인접선이 향하는 목적 노드가 시작 노드가 아닌 경우(S14-N), 목적 노드를 출발점으로 하는 도로 방향에 따른 인접선을 추가 생성할 수 있다(S15). 도 4의 (c)를 예로 하여 설명하면, 역방향 인접선(l2)이 향하는 목적 노드 t5는 시작 노드가 아니므로 목적 노드 t5를 출발점으로 하는 도로 방향에 따른 인접선(L3)을 추가 생성할 수 있다.
도 5는 본 발명의 일 실시예에 따른 최단경로 산출부의 기능 블록도이고, 도 6의 (a), (b)는 미포함 인접선의 최소 거리값 산출 일례를 도시한 도면이다.
상술한 바와 같이 최단경로 산출부(60)는 인접선 추출부(50)에서 추출한 최근포함 인접선의 거리값에 기초하여 미포함 인접선의 최단경로 거리값을 산출할 수 있다.
이를 위해 최단경로 산출부(60)는 도 5에 도시된 바와 같이 인접선 추출부(50)에서 추출한 미포함 인접선이 연결하는 출발 노드와 목적 노드를 추출하는 노드 추출부(61)와, 추출한 출발 노드로부터 목적 노드까지의 경로 중 인접선 추출부(50)에서 추출한 최근 인접선을 포함하는 경로를 생성하는 경로 생성부(62)와, 생성한 경로를 구성하는 인접선에 설정된 거리값을 합산하여 생성한 경로별 거리값을 산출하는 거리값 산출부(63)와, 산출한 경로별 거리값 중 최소값을 선택하는 최소값 선택부(64), 그리고 선택한 최소값과 미포함 인접선에 기설정된 거리값을 비교하여 작은 값을 미포함 인접선의 최단경로 거리값으로 결정하는 거리값 결정부(65)를 포함하여 구성될 수 있다. 바람직하게, 인접선 추출부(50)는 미포함 인접선이 다수개인 경우 모든 미포함 인접선을 추출하며 추출한 모든 미포함 인접선에 대하여 최단경로 거리값을 결정하는 과정이 수행될 수 있다.
도 6의 (a)와 (b)를 예로 하여 미포함 인접선의 최단경로 거리값 결정 과정을 설명하면, 인접선 추출부(50)에서 추출한 미포함 인접선이 인접선 c이고 최근 인접선이 인접선 a인 경우, 노드 추출부(61)는 인접선 c의 출발 노드 t1과 목적 노드 t4를 추출할 수 있다. 그리고 경로 생성부(62)는 출발 노드 t1으로부터 목적 노드 t4까지의 다수개의 경로 중 인접선 a가 포함된 경로인 a+b 경로를 생성할 수 있다. 본 예시에서는 노드 t1에서 노드 t4까지의 경로 중 인접선 a가 포함되는 경로가 a+b 경로 하나뿐이지만 만약 최근 인접선 a를 포함하는 경로가 다수개인 경우 다수개의 경로를 모두 생성할 수 있다. 반면에, 최근 인접선 a를 포함하는 경로가 없는 경우, 경로 생성부(62)는 경로 생성을 중단하고 다른 미포함 인접선에 대한 결로 생성을 수행할 수 있다. 거리값 산출부(63)는 생성된 각 경로의 거리값을 산출할 수 있다. a+b 경로의 거리값은 인접선 a에 설정된 거리값 1에 인접선 b에 설정된 거리값 2를 더해 3이되며, 본 예시에서 생성된 경로가 a+b 경로 하나이므로 자연히 최소값 선택부(64)는 a+b 경로의 거리값 3을 최소값으로 선택할 수 있다. 거리값 결정부(65)는 선택된 최소값 3과 미포함 인접선 c의 기설정 거리값 4를 비교하여 더 작은 값인 3을 미포함 인접선 c의 최단경로 거리값으로 결정할 수 있다. 이러한 과정을 통해 미포함 인접선 c의 최단경로 거리값이 결정되면 거리값 설정부(20)는 도 6의 (b)에 도시된 바와 같이 결정된 거리값 3을 인접선 c의 거리값으로 설정을 갱신할 수 있다.
한편, 본 실시예에 따른 최단경로 산출 방법에서 인접선 생성부(10)는 상술한 바와 같이 U턴 또는 P턴 구간을 적용하여 역방향 인접선을 생성하였다. 이와 같이 U턴 또는 P턴 구간에 의한 역방향 인접선은 특정 인접선의 최단경로 거리값에 영향을 끼칠 수 있다.
다시 도 6의 (a), (b)를 예로 하여 설명하면, 인접선 추출부(50)에서 추출한 미포함 인접선이 인접선 f이고 최근 인접선이 인접선 d인 경우, 노드 추출부(61)는 인접선 f의 출발 노드 t1과 목적 노드 t5를 추출할 수 있다. 그리고 경로 생성부(62)는 출발 노드 t1으로부터 목적 노드 t5까지의 다수개의 경로 중 인접선 d가 포함된 경로인 d+h 경로를 생성할 수 있다. 이처럼 경로 생성부(62)에서 생성하는 경로에는 역방향 인접선이 포함될 수 있다. d+h 경로의 거리값은 인접선 d에 설정된 거리값 3에 역방향 인접선 h에 설정된 거리값 2를 더해 5가되며, 최소값 선택부(64)는 d+h 경로의 거리값 5를 최소값으로 선택할 수 있다. 거리값 결정부(65)는 선택된 최소값 5과 미포함 인접선 f의 기설정 거리값 6를 비교하여 더 작은 값인 5을 미포함 인접선 f의 최단경로 거리값으로 결정할 수 있다. 따라서 거리값 설정부(20)는 도 6의 (b)에 도시된 바와 같이 결정된 거리값 5를 인접선 f의 거리값으로 설정을 갱신하며 이때, 역방향 인접선 i는 동일 구간에 존재하는 인접선 f와 동일한 거리값으로 설정되므로 역방향 인접선 i 또한 인접선 f와 함께 설정 거리값이 5로 갱신될 수 있다.
이로 인해 본 실시예에 따른 최단경로 생성 방법은 U턴 또는 P턴 구간에도 대응 가능하여 보다 정확한 통행요금을 생성할 수 있다.
한편, 고속도로를 이용하는 특정 차량이 입구영업소를 통해 고속도로를 진입한 후 U턴 또는 P턴 구간을 이용하여 다시 진입하였던 입구영업소를 통해 고속도로에서 빠져나오는 경우가 발생할 수 있는데, 이러한 경우 시작 노드와 목적 노드가 동일하므로 최단경로 생성이 불가능하며 통행료 정산에 오류가 발생할 수 있다.
하지만, 본 실시예에 따른 최단경로 산출 방법에서 인접선 생성부(10)는 상술한 바와 같이 U턴 또는 P턴 구간을 적용하여 역방향 인접선을 생성하였기 때문에 목적 노드가 시작 노드인 경로(시작 노드에서 시작 노드까지의 경로)를 생성할 수 있으며 이에 대한 최단경로 거리값을 산출할 수 있다.
바람직하게, 인접선 생성부(10)는 인접선 생성 과정에서 역방향 인접선이 생성되면 목적 노드가 시작 노드인 가상 인접선을 생성할 수 있다. 그리고 가상 인접선의 최초 설정 거리값은 ∞일 수 있으며, 인접선 그룹화부(40)는 가상 인접선 또한 최단거리 거리값 설정이 갱신되면 최단거리 인접선 그룹에 포함시킬 수 있으며, 인접선 추출부(50)는 가상 인접선 역시 미포함 인접선으로 추출할 수 있다. 다만, 가상 인접선을 포함하는 경로를 생성할 수 없으므로 인접선 추출부(50)는 가상 인접선이 최단거리 인접선 그룹에 포함되어도 가상 인접선을 최근 인접선의 추출 대상에서 제외할 수 있다.
다시 도 6의 (a), (b)를 예로 하여 설명하면, 인접선 추출부(50)에서 추출한 미포함 인접선이 가상 인접선이고 최근 인접선이 인접선 i인 경우, 노드 추출부(61)는 가상 인접선의 출발 노드 t1과 목적 노드 t1을 추출할 수 있다. 그리고 경로 생성부(62)는 출발 노드 t1으로부터 목적 노드 t1까지의 다수개의 경로 중 인접선 i가 포함된 경로인 d+h+i 경로를 생성할 수 있다. 도 6의 (b) 기준으로 d+h+i 경로의 거리값은 10이다. 최소값 선택부(64)는 생성된 경로가 d+h+I 경로 하나이므로 거리값 10을 최소값으로 선택할 수 있다. 거리값 결정부(65)는 선택된 최소값 10과 미포함 인접선인 가상 인접선의 기설정 거리값 ∞를 비교하여 더 작은 값인 10을 미포함 인접선인 가상 인접선의 최단경로 거리값으로 결정할 수 있다. 따라서 거리값 설정부(20)는 결정된 거리값 10을 가상 인접선의 거리값으로 설정을 갱신하며 인접선 그룹화부(40)는 가상 인접선을 최단거리 인접선 그룹에 포함시킬 수 있다.
이로 인해 본 실시예에 따른 최단경로 생성 방법은 주행차량의 입구영업소와 출구영업소가 동일하여도 이에 따른 주행거리 산정이 가능할 수 있다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
10: 인접선 생성부
20: 거리값 설정부
30: 시작 인접선 결정부
40: 인접선 그룹화부
50: 인접선 추출부
60: 최단경로 산출부
61: 노드 추출부
62: 경로 생성부
63: 거리값 산출부
64: 최소값 선택부
65: 거리값 결정부

Claims (7)

  1. 두 개의 노드 간의 방향성을 갖는 인접선을 생성하는 단계;
    생성한 상기 인접선의 거리값을 설정하는 단계;
    최단경로 거리값이 설정된 상기 인접선들로 이루어진 최단경로 인접선 그룹에 최근 포함된 최근포함 인접선을 추출하는 단계; 및
    추출한 상기 최근포함 인접선에 기초하여 상기 최단경로 인접선 그룹에 포함되지 않는 인접선의 최단경로 거리값을 산출하고 설정 거리값을 산출한 상기 최단경로 거리값으로 갱신하는 단계를 포함하는 통행요금 생성을 위한 최단경로 산출 방법.
  2. 제 1 항에 있어서, 상기 인접선을 생성하는 단계는
    상기 노드 중 시작 노드를 결정하는 단계;
    상기 시작 노드를 출발점으로 하는 도로 방향에 따른 상기 인접선을 생성하는 단계; 및
    U턴 또는 P턴 구간이 존재하는 두 개의 노드 간에 역방향 인접선을 생성하는 단계를 포함하는 것을 특징으로 하는 통행요금 생성을 위한 최단경로 산출 방법.
  3. 제 2 항에 있어서, 상기 인접선을 생성하는 단계는
    상기 역방향 인접선이 향하는 목적 노드가 상기 시작 노드가 아니면 상기 목적 노드를 출발점으로 하는 도로 방향에 따른 상기 인접선을 추가 생성하는 단계를 더 포함하는 것을 특징으로 하는 통행요금 생성을 위한 최단경로 산출 방법.
  4. 제 1 항에 있어서, 상기 최단경로 산출 방법은
    상기 설정 거리값이 상기 최단경로 거리값으로 갱신된 인접선을 상기 최단경로 인접선 그룹에 포함시키는 단계; 및
    생성한 상기 인접선이 모두 상기 최단경로 인접선 그룹에 포함되는지 판단하는 단계를 더 포함하고,
    생성한 상기 인접선이 모두 상기 최단경로 인접선 그룹에 포함되는 것으로 판단될 때까지, 상기 최근포함 인접선을 추출하는 단계에서부터 상기 최단경로 거리값으로 갱신하는 단계까지 반복 수행하는 것을 특징으로 하는 통행요금 생성을 위한 최단경로 산출 방법.
  5. 제 2 항에 있어서, 상기 최단경로 산출 방법은
    생성한 상기 인접선 중 상기 시작 노드와 연결되는 하나의 시작 인접선을 선택하는 단계; 및
    선택한 상기 시작 인접선을 상기 최단경로 인접선 그룹에 포함시키는 단계를 더 포함하는 것을 특징으로 하는 통행요금 생성을 위한 최단경로 산출 방법.
  6. 제 5 항에 있어서,
    상기 시작 노드와 연결되는 인접선이 다수개인 경우, 상기 시작 인접선을 선택하는 단계는 설정된 상기 거리값이 최소인 인접선을 상기 시작 인접선으로 선택하는 것을 특징으로 하는 통행요금 생성을 위한 최단경로 산출 방법.
  7. 제 1 항에 있어서, 상기 최단경로 거리값으로 갱신하는 단계는
    상기 최단경로 인접선 그룹에 포함되지 않는 미포함 인접선이 연결하는 출발 노드와 목적 노드를 추출하는 단계;
    추출한 상기 출발 노드로부터 상기 목적 노드까지의 경로 중 상기 최근포함 인접선을 포함하는 하나 이상의 경로를 생성하는 단계;
    생성한 상기 경로를 구성하는 상기 인접선에 설정된 거리값을 합산하여, 하나 이상의 상기 경로 각각의 거리값을 산출하고 산출한 상기 경로 각각의 거리값 중 최소값을 선택하는 단계; 및
    선택한 상기 최소값과 상기 미포함 인접선에 설정된 거리값을 비교하여 작은 값을 상기 미포함 인접선의 최단경로 거리값으로 결정하고 설정 거리값을 갱신하는 단계를 포함하는 것을 특징으로 하는 통행요금 생성을 위한 최단경로 산출 방법.
KR1020200162725A 2020-11-27 2020-11-27 통행요금 생성을 위한 최단경로 산출 방법 KR102470845B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200162725A KR102470845B1 (ko) 2020-11-27 2020-11-27 통행요금 생성을 위한 최단경로 산출 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200162725A KR102470845B1 (ko) 2020-11-27 2020-11-27 통행요금 생성을 위한 최단경로 산출 방법

Publications (2)

Publication Number Publication Date
KR20220074343A KR20220074343A (ko) 2022-06-03
KR102470845B1 true KR102470845B1 (ko) 2022-11-28

Family

ID=81983342

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200162725A KR102470845B1 (ko) 2020-11-27 2020-11-27 통행요금 생성을 위한 최단경로 산출 방법

Country Status (1)

Country Link
KR (1) KR102470845B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100402528B1 (ko) 2000-10-25 2003-10-17 닛본 덴끼 가부시끼가이샤 최소 비용 경로 탐색 장치 및 이것에 의해 이용되는 최소비용 경로 탐색 방법
KR100868789B1 (ko) 2006-12-06 2008-11-17 에스케이에너지 주식회사 차량의 경로 탐색 시스템 및 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100653036B1 (ko) * 2000-12-11 2006-11-30 주식회사 케이티 회전 금지, 유-턴, 피-턴을 고려한 다익스트라 알고리즘또는 플로이드-워셜 알고리즘을 이용한 최단경로 산출방법
KR100902737B1 (ko) * 2002-09-28 2009-06-15 주식회사 케이티 동적 교통정보를 바탕으로 하는 다수의 최적 경로 탐색 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100402528B1 (ko) 2000-10-25 2003-10-17 닛본 덴끼 가부시끼가이샤 최소 비용 경로 탐색 장치 및 이것에 의해 이용되는 최소비용 경로 탐색 방법
KR100868789B1 (ko) 2006-12-06 2008-11-17 에스케이에너지 주식회사 차량의 경로 탐색 시스템 및 방법

Also Published As

Publication number Publication date
KR20220074343A (ko) 2022-06-03

Similar Documents

Publication Publication Date Title
CN111947678B (zh) 一种针对结构化道路的自动驾驶导航方法及系统
CN108981741B (zh) 基于高精度地图的路径规划装置及方法
US10614600B2 (en) Graph based topological map matching
US6349261B1 (en) Method and apparatus for determining route within traffic network
CN111102988A (zh) 基于地图的路径规划方法、服务器、车载终端、存储介质
CN112161636B (zh) 一种基于单向模拟的货车路线规划方法及系统
CN101275841A (zh) 地物信息收集装置及地物信息收集方法
CN109031382B (zh) 一种基于停车位的高精度道路计算匹配方法及系统
US20080195307A1 (en) Method of Establishing Neighboring Points for a Digital Road Network System
CN113188553B (zh) 路线规划方法、装置、电子设备及机器可读存储介质
CN112033426B (zh) 行驶路径规划方法、装置及电子设备
CN110779539A (zh) 行车路径修正方法、装置、设备和存储介质
CN112033418B (zh) 一种离线地图匹配方法
KR102470845B1 (ko) 통행요금 생성을 위한 최단경로 산출 방법
CN111024079B (zh) 一种根据多个位置点与路线进行匹配的方法和系统
KR102190164B1 (ko) 화물차량 단속 회피경로 판단 시스템 및 그 제어방법
US20100100309A1 (en) Navigation device and program
CN112923941B (zh) 路线规划方法、数据挖掘方法、相应的装置及电子设备
KR100485867B1 (ko) 차량의 경로 탐색 시스템 및 그 방법
CN113280824A (zh) 高精度地图与标准地图关联方法及设备
CN105074798A (zh) 地图数据、地图显示装置以及地图数据使用方法
JP3951828B2 (ja) 道路形状推定装置
CN114234986A (zh) 一种地图数据的处理方法和装置
JP5679203B2 (ja) 自車位置認識システム、自車位置認識プログラム、及び自車位置認識方法
CN115798218B (zh) 关联交通标识信息的方法、装置及电子设备

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