KR20180040760A - 자율주행 차량을 위한 경로 탐색 장치 및 방법 - Google Patents

자율주행 차량을 위한 경로 탐색 장치 및 방법 Download PDF

Info

Publication number
KR20180040760A
KR20180040760A KR1020160132080A KR20160132080A KR20180040760A KR 20180040760 A KR20180040760 A KR 20180040760A KR 1020160132080 A KR1020160132080 A KR 1020160132080A KR 20160132080 A KR20160132080 A KR 20160132080A KR 20180040760 A KR20180040760 A KR 20180040760A
Authority
KR
South Korea
Prior art keywords
lane
link
list
lane link
destination
Prior art date
Application number
KR1020160132080A
Other languages
English (en)
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 KR1020160132080A priority Critical patent/KR20180040760A/ko
Publication of KR20180040760A publication Critical patent/KR20180040760A/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/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3492Special cost functions, i.e. other than distance or default speed limit of road segments employing speed data or traffic data, e.g. real-time or historical
    • 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
    • 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
    • G01C21/3469Fuel consumption; Energy use; Emission aspects
    • 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/36Input/output arrangements for on-board computers
    • G01C21/3602Input other than that of destination using image analysis, e.g. detection of road signs, lanes, buildings, real preceding vehicles using a camera
    • 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/36Input/output arrangements for on-board computers
    • G01C21/3697Output of additional, non-guidance related information, e.g. low fuel level
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions

Landscapes

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

Abstract

본 발명에 따른 자율주행 차량을 위한 경로 탐색 장치는 통신모듈, 경로 탐색을 위한 프로그램이 저장된 메모리 및 상기 메모리에 저장된 프로그램을 실행시키는 프로세서를 포함하되, 상기 프로세서는 상기 프로그램을 실행시킴에 따라, 기 생성되어 저장된 정밀 맵으로부터 출발지 링크 및 목적지 링크를 설정하고, 상기 출발지 링크에 각각 차선 길이에 대응하는 경로 비용을 할당하여 제 1 리스트에 추가한 뒤, 상기 제 1 리스트 중 최소 경로 비용을 가진 차선 링크와 이웃하는 차선 링크를 추출하며, 상기 추출된 차선 링크를 상기 제 1 리스트에 추가하고, 상기 최소 경로 비용을 가진 차선 링크를 상기 제 1 리스트에서 제 2 리스트로 이동시키며, 상기 제 1 리스트 중 최소 경로 비용을 가진 차선 링크가 상기 목적지 링크인 경우, 상기 목적지 링크의 연결 정보를 역추적하여 최종 경로를 설정한다.

Description

자율주행 차량을 위한 경로 탐색 장치 및 방법{APPARATUS AND METHOD FOR SEARCHING PATH OF AUTONOMOUS DRIVING VEHICLE}
본 발명은 자율주행 차량을 위한 경로 탐색 장치 및 방법에 관한 것으로서, 특히 차로 중심선을 이용하여 자율주행 상황 및 제어에 필요한 경로를 탐색하기 위한 장치 및 방법에 관한 것이다.
자율주행 차량이란 운전자의 조작 없이도 스스로 도로 상황을 파악하여 목적지에 도착할 수 있는 차량을 의미한다.
자율주행 차량에 적용되는 자율주행 기술은 자율주행 차량에 장착된 센서의 탐지영역을 기준으로 전역경로(Global Path-Planning)와 지역경로(Local Path-Planning)를 탐색 및 생성하고, 이를 이용하여 최종적으로 자율주행 차량의 제어를 수행한다.
이때, 전역경로는 미리 제공된 정밀 맵을 기반으로 산이나 호수와 같은 대규모의 지형적 특성 그리고 위험도 등을 고려하여 목적지까지 설정된 경로를 의미한다.
그리고 지역경로는 다양한 센서를 통해 가장 최근에 획득한 대략 수십미터 이내의 데이터로부터 지형 경사도 및 거칠기와 같은 지형정보와 다양한 장애물 정보를 추출하고, 이를 이용하여 전역경로에서 생성한 다음 경유점까지의 이동경로를 안전성과 안정성 관점에서 실시간으로 설정된 경로를 의미한다.
그러나 종래 기술에 따른 자율주행 차량에서의 경로 탐색 방법은 자율주행을 위한 전역 경로를 탐색함에 있어 많은 데이터를 요구한다는 문제가 있어, 실제 주행에 적용하기 어려운 문제가 있었다.
이와 관련하여, 한국공개특허공보 제10-2015-0115069호(발명의 명칭: 무인자율주행 차량의 주행경로 생성방법 및 장치)는 차량의 지역경로 생성시에 시작노드 와 종료노드 사이의 중간지점을 생성하여 주행경로를 생성하고, 그 주행경로를 실제로 주행하였을 때의 차량과 중앙선 사이의 이격거리를 토대로 상기 중간지점의 학습범위를 가변하여, 상기 주행경로가 중앙선에 근접되도록 상기 중간지점을 학습시키는 기술을 개시하고 있다.
본 발명의 실시예는 차선 레벨의 차로 중심선 데이터를 이용하여 자율주행 차량의 출발지로부터 목적지까지의 경로를 탐색할 수 있는 자율주행 차량을 위한 경로 탐색 장치 및 방법을 제공한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 자율주행 차량을 위한 경로 탐색 장치는 통신모듈, 경로 탐색을 위한 프로그램이 저장된 메모리 및 상기 메모리에 저장된 프로그램을 실행시키는 프로세서를 포함한다. 이때, 상기 프로세서는 상기 프로그램을 실행시킴에 따라, 기 생성되어 저장된 정밀 맵 데이터로부터 출발지 링크 및 목적지 링크를 설정하고, 상기 출발지 링크에 각각 차선 길이에 대응하는 경로 비용을 할당하여 제 1 리스트에 추가한 뒤, 상기 제 1 리스트 중 최소 경로 비용을 가진 차선 링크와 이웃하는 차선 링크를 추출하며, 상기 추출된 차선 링크를 상기 제 1 리스트에 추가하고, 상기 최소 경로 비용을 가진 차선 링크를 상기 제 1 리스트에서 제 2 리스트로 이동시키며, 상기 제 1 리스트 중 최소 경로 비용을 가진 차선 링크가 상기 목적지 링크인 경우, 상기 목적지 링크의 연결 정보를 역추적하여 최종 경로를 설정한다.
또한, 본 발명의 제 2 측면에 따른 자율주행 차량을 위한 경로 탐색 장치에서의 경로 탐색 방법은 기 생성되어 저장된 정밀 맵 데이터로부터 출발 지점에 해당하는 모든 차선 링크인 복수 개의 출발지 링크를 탐색하는 단계; 상기 정밀 맵 데이터로부터 목적 지점에 해당하는 모든 차선 링크인 복수 개의 목적지 링크를 탐색하는 단계; 상기 복수 개의 출발지 링크에 각각 경로 비용을 할당하여 제 1 리스트에 추가하는 단계; 상기 제 1 리스트 중 최소 경로 비용을 가진 차선 링크와 이웃하는 차선 링크를 추출하는 단계; 상기 추출된 차선 링크에 경로 비용을 할당하여 상기 제 1 리스트에 추가하는 단계; 기 최소 경로 비용을 가진 차선 링크를 제 2 리스트로 이동시키는 단계 및 상기 제 1 리스트에 포함된 차선 링크 중 최소 경로 비용을 가지는 차선 링크가 상기 목적지 링크인 경우, 상기 제 1 리스트에 포함된 목적지 링크의 연결 정보를 역추적하여 최종 경로를 설정하는 단계를 포함한다. 이때, 상기 경로 비용은 차선 링크에 대응하는 차선 길이에 기초하여 산출된다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 자율주행을 위한 경로를 종래 기술보다 더 적은 데이터를 이용하여 탐색 가능하다.
도 1a는 계층적 구조 데이터를 이용한 전역 경로 탐색 방법을 설명하기 위한 도면이다.
도 1b는 차로 중심선 간의 가상 연결 링크/노드를 이용한 전역 경로 검색 방법을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 자율주행 시스템의 개략도이다.
도 3은 본 발명의 일 실시예에 따른 경로 탐색 장치의 블록도이다.
도 4는 차로 중심선 데이터 모델을 도시한 도면이다.
도 5a 내지 도 5c는 출발지 링크 및 목적지 링크를 설정하는 방법을 설명하기 위한 도면이다.
도 6a 내지 도 6h는 본 발명의 일 실시예에 따른 경로 탐색 과정을 설명하기 위한 도면이다.
도 7a 및 도 7b는 기하연산을 이용하여 정적 데이터를 검색하는 방법을 설명하기 위한 도면이다.
도 8은 객체간의 관계 정보를 이용하여 정적 데이터를 검색하는 방법을 설명하기 위한 도면이다.
도 9는 자율주행 맵 데이터를 도시한 도면이다.
도 10은 본 발명의 일 실시예에 따른 경로 탐색 방법의 순서도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본원은 자율주행 차량을 위한 경로 탐색 장치(100) 및 방법에 관한 것이다.
이하에서는 도 1a 내지 도 9를 참조하여 본 발명의 일 실시예에 따른 경로 탐색 장치(100)에 대해 설명하도록 한다.
전역 경로 탐색은 목적지까지 주행을 위한 도로에 해당하는 차선 레벨의 차로 중심선을 검출하고, 이를 차량이 추종(following)하기 위한 경유점(way point) 리스트를 추출하는 것을 목적으로 한다. 이때, 경유점은 위치(x, y), 헤딩, 차속 등의 정보를 포함한다.
즉, 기존 내비게이션에서 POI(Point of Interest) 검색에 의한 목적지를 설정하고 해당 경로를 찾는 것과 달리, 본 발명은 해당 경로에 포함되어 있는 차선별 차로 중심선까지 추출하는 것을 목표로 한다.
이러한 자율주행 경로 검색에 적용되는 기술에 대해 도 1a 및 도 1b를 참조하여 설명하도록 한다.
도 1a는 계층적 구조 데이터를 이용한 전역 경로 탐색 방법을 설명하기 위한 도면이다.
계층적 구조에 의한 전역 경로 탐색 방법은 2D 도로 네트워크 데이터(노드/링크)를 이용하여(a), 기존 내비게이션에 적용되는 방법과 같이 Dijkstra 또는 A* 알고리즘에 기초하여 경로를 검색한 후(b), 검색된 결과 경로(링크 리스트, (c))에 해당하는 차로 중심선 데이터를 검색하는 방법이다.
해당 링크를 부모(parent)라고 보면 이에 포함된 차로 중심선 데이터는 자식(child)이며, 부모와 자식간의 관계(id에 의한 관계) 속성 정보를 이용하여, 차로 중심선 데이터를 검색한다(d).
이러한 계층적 구조 데이터를 이용하는 방법의 경우 자율주행을 위하여 차로 중심선 레벨의 정밀 맵 데이터가 반드시 필요하며, 부가적인 2D 도로 네트워크 데이터가 반드시 필요하다는 한계가 있다.
도 1b는 차로 중심선 간의 가상 연결 링크/노드를 이용한 전역 경로 검색 방법을 설명하기 위한 도면이다.
차로 중심선 간의 가성 연결 링크/노드를 이용한 전역 경로 검색 방법은 차로 중심선 간의 가상 연결 링크(P1) 및 노드(P2)를 추가하여 Dijkstra 또는 A* 알고리즘을 이용하여 해당 경로를 탐색하는 방법이다.
기존 내비게이션에에 적용되는 Dijkstra 또는 A* 알고리즘은 링크간의 연결성 정보가 없으면 경로를 찾을 수 없는 문제가 있기 때문에, 차로 중심선 간의 연결성을 가상으로 생성하여 경로를 탐색하는 방법이다.
이러한 경로 검색 방법의 경우 도 1a와 달리, 별도의 2D 내비비게이션의 도로 네트워크 데이터(노드/링크)가 없이도 자율주행을 위한 전역 경로(차로 중심선)를 찾을 수 있다는 장점이 있으나, 가상의 링크/노드 데이터를 필요로 하므로 이에 의한 데이터의 규모가 커지는 단점이 존재한다.
이와 같이 자율주행을 위한 경로 검색 기술의 경우 부가적인 2D 도로 네트워크 데이터를 필요로 하거나 가상의 링크/노드 데이터로 인하여 데이터의 규모가 매우 커지게 되는 문제가 있다.
반면 본 발명의 일 실시예에 따르면, 자율주행 차량에서의 자율주행을 위한 전역경로 검색을 차로 중심선 데이터를 이용하여 수행하고, 결과 경로에 포함되는 모든 차로 중심선 데이터를 추출하여 적은 데이터만으로도 최적의 최종 경로를 탐색할 수 있다.
도 2는 본 발명의 일 실시예에 따른 자율주행 시스템(1)의 개략도이다.
본 발명의 일 실시예에 따른 자율 주행 시스템(1)은 클라우드 서버(100a) 및 자율주행 차량(100b)을 포함한다.
이때, 자율주행 차량(100b)의 경로 탐색을 위한 경로 탐색 장치(100)는 클라우드 서버(100a)와 독립적인 서버 컴퓨터(server computer)에서 실행되거나, 도 2와 같이 클라우드 서버(100a)와 동일한 서버 컴퓨터에 서버 프로그램(server program)으로 탑재되어 각각 실행될 수 있다. 또한, 경로 탐색 장치(100)는 자율주행 차량(100b) 내의 시스템에 포함되어 실시될 수도 있다.
한편, 도 2에 도시된 자율주행 시스템(1)을 구성하는 클라우드 서버(100a) 및 자율주행 차량(100b)은 네트워크(network, A)를 통해 연결될 수 있다. 네트워크(A)는 단말들 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크(A)의 일 예에는 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다.
도 3은 본 발명의 일 실시예에 따른 경로 탐색 장치(100)의 블록도이다.
본 발명의 일 실시예에 따른 경로 탐색 장치(100)는 통신모듈(110), 메모리(120) 및 프로세서(130)를 포함한다. 본 발명의 일 실시예에 따른 경로 탐색 장치(100)는 상술한 바와 같이 클라우드 서버(100a) 또는 별도의 서버나 자율주행 차량(100b)의 시스템 상에 구현될 수 있는바, 이하 편의상 클라우드 서버(100a) 상에 구현되어 있는 예시를 통해 설명하도록 한다.
통신모듈(110)은 클라우드 서버(100a)와 자율주행 차량(100b)간의 데이터를 송수신한다.
이와 같은 통신모듈(110)은 유선 통신모듈 및 무선 통신모듈을 모두 포함할 수 있다. 유선 통신모듈은 전력선 통신 장치, 전화선 통신 장치, 케이블 홈(MoCA), 이더넷(Ethernet), IEEE1294, 통합 유선 홈 네트워크 및 RS-485 제어 장치로 구현될 수 있다. 또한, 무선 통신모듈은 WLAN(wireless LAN), Bluetooth, HDR WPAN, UWB, ZigBee, Impulse Radio, 60GHz WPAN, Binary-CDMA, 무선 USB 기술 및 무선 HDMI 기술 등으로 구현될 수 있다.
메모리(120)에는 경로 탐색을 위한 프로그램이 저장된다. 이때, 메모리(120)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 및 휘발성 저장장치를 통칭하는 것이다.
예를 들어, 메모리(120)는 콤팩트 플래시(compact flash; CF) 카드, SD(secure digital) 카드, 메모리 스틱(memory stick), 솔리드 스테이트 드라이브(solid-state drive; SSD) 및 마이크로(micro) SD 카드 등과 같은 낸드 플래시 메모리(NAND flash memory), 하드 디스크 드라이브(hard disk drive; HDD) 등과 같은 마그네틱 컴퓨터 기억 장치 및 CD-ROM, DVD-ROM 등과 같은 광학 디스크 드라이브(optical disc drive) 등을 포함할 수 있다.
프로세서(130)는 메모리(120)에 저장된 프로그램을 실행시킨다. 프로세서(130)는 자율주행을 하고자 하는 자율주행 차량(100b)의 운전자의 조작에 의해 목적 지점이 입력되면, 출발 지점(현재 위치 또는 운전자가 입력한 지점)부터 목적 지점까지의 자율주행을 위한 자율주행 맵 데이터의 요청명령을 통신모듈을 통해 자율주행 차량(100b)으로부터 수신한다.
이와 같은 요청을 수신한 프로세서(130)는 기구축된 정밀 맵 데이터를 검색하고, 자율주행 차량(100b)이 출발 지점부터 목적 지점까지 자율주행으로 도달하기 위한 주행 경로 및 안내 정보를 포함한 자율주행 맵 데이터(라우팅 데이터)를 생성하여 자율주행 차량(100b)으로 전송한다.
이때, 기구축된 정밀 맵 데이터는 수집용 차량에 의하여 자율주행 시 이용되는 정밀 맵을 생성하기 위한 로우 데이터가 수집되면, 실시간으로 클라우드 서버(100a)에 전송되어 클라우드 서버(100a)에서 구축될 수 있다. 여기서 로우 데이터는 기본적으로 수집용 차량의 전방에 대한 영상 데이터 또는 영상 데이터로부터 추출된 특징(feature) 데이터일 수도 있다. 이때, 특징 데이터는 영상 데이터로부터 추출된 로드 마크의 기하 정보가 포함된 데이터(점선, 실선 등), 랜드 마크의 위치 정보가 포함된 데이터일 수도 있다.
자율주행 맵 데이터를 수신한 자율주행 차량(100b)은 수신된 라우팅 데이터에 따라 자율주행함으로써 목적 지점까지 도달할 수 있다.
이와 같이 자율주행 차량(100b)의 경로 탐색을 위해, 도 4에 도시된 프로세서(130)는 차로 중심선 데이터 모델을 이용할 수 있다.
도 4는 차로 중심선 데이터 모델을 도시한 도면이다.
본 발명에 적용되는 차로 중심선 데이터 모델은 일반적인 내비게이션의 경로 탐색 방법에 적용되는 도로 네트워크 데이터 모델과 유사한 점도 있으나, 차선별 회전 정보(직진, 직좌, 직우, 유턴, 우, 좌)를 별도로 가진다.
또한, 차로 중심선은 도 4의 (a) 내지 (c)에 도시된 바와 같이, 도로의 차선을 선형으로 나타내는 차선 링크 정보(lane-link)와 교차로 지점, 유턴 지점 등과 같이 차선 링크의 속성이 바뀌는 지점을 나타내는 차선 노드 정보(lane-node)에 의해 연결성 정보를 유지하며, 프로세서(130)는 이를 이용하여 경로를 탐색한다.
구체적으로 프로세서(130)는 기 생성되어 저장된 정밀 맵으로부터 출발지 링크 및 목적지 링크를 설정한다. 이때, 프로세서(130)는 출발 지점 및 목적 지점에 각각 해당하는 모든 차선 링크를 각각 탐색하여 출발지 링크 및 목적지 링크를 설정할 수 있다.
도 5a 내지 도 5c는 출발지 링크 및 목적지 링크를 설정하는 방법을 설명하기 위한 도면이다.
기존 내비게이션에서의 도로 네트워크 데이터(링크/노드)를 이용한 경로 탐색 방법은 Dijkstra 또는 A* 알고리즘을 이용한다. 이는 출발 지점에 해당하는 하나의 차선 링크를 찾고 이와 연결된 차선 링크를 탐색하면서 목적지 링크에 도달할 때까지 반복한다. 그리고 목적지 링크에 도착하게 되면 목적지 링크로부터 역으로 연결된 링크를 탐색하면서 전체 경로를 탐색하게 된다.
한편, 다중 차로 중심선을 이용할 경우, 좌회전/우회전은 차로 중심선간의 연결성 정보가 없기 때문에, 위와 같은 종래 기술을 이용할 경우 목적지까지의 경로를 탐색할 수 없게 된다. 즉, 실제 자율주행 차량(100b)에서 주행을 위해서는 좌회전/우회전 또는 추월 등을 위한 차선 변경이 필수적이기 때문에, 해당 전 차선의 차로 중심선을 함께 추출해야 한다.
따라서, 본 발명의 일 실시예에서는 도 5a와 같이, 출발 지점에서 가장 가까운 하나의 링크를 출발지 링크로 설정하는 것이 아니라, 해당 도로의 모든 차선 링크를 출발지 링크(S)로 설정한다.
목적지 링크(D) 역시 마찬가지로 목적 지점에 해당하는 모든 차선 링크를 목적지 링크(D)로 설정한다.
이 경우, 좌회전 또는 우회전 이벤트가 발생하게 되면 해당 차선 링크가 목적지 링크(D)에 도달하지 못하는 경우가 발생할 수 있다. 즉, 도 5a에서 ‘L1’ 차선 링크에 연결되어 있는 다음 차선 링크가 목적지 링크(D)에 해당하는 차선 링크로 도달하지 못할 수 있다.
이를 위해, 본 발명의 일 실시예는 ‘L1’ 차선 링크가 우회전에 의한 교차로 링크이고 다음 링크를 검색할 경우, 해당 차선 링크의 이웃 링크(P4)를 모두 검색하여 확장함으로써 상기와 같은 문제를 해소할 수 있다.
구체적으로 프로세서(130)는 출발 지점과 가장 가까운 차선 링크인 제 1 차선 링크와 목적 지점과 가장 가까운 차선 링크인 제 2 차선 링크를 각각 탐색하고, 제 1 및 제 2 차선 링크와 이웃하는 모든 차선 링크인 제 1 이웃 차선 링크와 제 2 이웃 차선 링크를 각각 탐색할 수 있다. 그리고 탐색된 제 1 차선 링크 및 제 1 이웃 차선 링크를 출발지 링크(S)로 설정하고, 제 2 차선 링크 및 제 2 이웃 차선 링크를 목적지 링크(D)로 설정할 수 있다.
이때, 프로세서(130)는 기하 연산에 기초하여 출발 지점 및 목적 지점에 각각 대응하는 도로 상에 임의의 가상 라인을 생성하고, 가상 라인과 교차하는 링크를 제 1 및 제 2 이웃 차선 링크로 각각 탐색할 수 있다.
이와 달리, 프로세서(130)는 도 5b와 같이, 위상 연산에 기초하여 제 1 및 제 2 차선 링크 각각의 연결성 정보에 기초하여 제 1 및 제 2 이웃 차선 링크를 탐색할 수 있다. 여기에서 연결성 정보는 상술한 바와 같이 각 차선 링크에 대응하는 차선 링크 정보 및 차선 노드 정보를 포함하는 개념이다.
즉, 프로세서(130)는 차선 링크와 노드 간의 객체간의 관계 속성에 의해 각 차선 링크의 이웃 차선 링크를 탐색할 수 있다. 예를 들어, 도 5b와 같이 ‘L1-1’ 차선링크의 경우 종료 노드로 ‘N2-1’, 오른쪽에 위치한 차선 링크로 ‘L1-2’와 연결되어 있으며, 이러한 연결성 정보에 기초하여 프로세서(130)는 이웃 차선 링크를 검색할 수 있다.
위 과정에 따라, 출발지 링크 및 목적지 링크는 도 5c와 같이 설정될 수 있다. 즉, 제 1 차선 링크로 ‘L1-1’이 탐색되고, 제 2 차선 링크로 ‘L100-1’이 탐색되면, 제 1 이웃 차선 링크로 ‘L1-2’, 제 2 이웃 차선 링크로 ‘L100-2’가 탐색되어, 출발지 링크(S)는 ‘L1-1’과 ‘L1-2’로, 목적지 링크(D)는 ‘L100-1’과 ‘L100-2’로 설정될 수 있다.
출발지 링크(S) 및 목적지 링크(D)가 설정되면, 프로세서(130)는 출발지 링크(S)에 각각 차선 길이에 대응하는 경로 비용(cost)을 할당하여 제 1 리스트에 추가하고, Dijkstra 또는 A* 알고리즘에 기초하여 제 1 리스트 중 최소 경로 비용을 가진 차선 링크와 이웃하는 차선 링크를 추출한다.
즉, 프로세서(130)는 경로 비용에 기초하여 정렬(sort)되는 제 1 리스트에 포함된 차선 링크 중에서 가장 작은 경로 비용을 가지는 차선 링크를 선택하여 이와 연결되어 있는 모든 차선 링크를 추출한다. 그리고 추출된 차선 링크 각각에, 자신의 경로 비용과 부모 차선 링크의 최소 경로 비용을 합산하여 할당하고, 최소 경로 비용을 가진 차선 링크를 추출된 차선 링크의 부모 차선 링크로 할당하여 연결시킬 수 있다.
이와 같은 과정을 수행한 뒤, 프로세서(130)는 부모 차선 링크로 할당된 최소 경로 비용을 가진 차선 링크를 제 2 리스트로 이동시킨다.
여기에서 제 1 리스트는 공개 리스트(Openlist)이고, 제 2 리스트는 폐쇄 리스트(Closedlist)일 수 있다. 즉, 공개 리스트는 아직 조사하지 않은 차선 링크가 포함된 리스트이고, 폐쇄 리스트는 조사가 완료된 차선 링크가 포함된 리스트로서, 처음 알고리즘을 시작할 때에는 탐색된 곳이 없으므로 폐쇄 리스트에는 차선 링크가 포함되어 있지 않고, 공개 리스트에는 출발지 링크(S)로 설정된 차선 링크만이 포함되게 된다.
다시, 프로세서(130)는 제 1 리스트에 포함된 차선 링크 중 최소 경로 비용을 가지는 차선 링크를 선택하고, 이와 연결된 모든 차선 링크를 추출하여 위 과정을 동일하게 반복 수행한다.
그리고 프로세서(130)는 제 1 리스트 중 최소 경로 비용을 가진 차선 링크가 목적지 링크(D)인 경우, 목적지 링크(D)의 연결 정보를 역추적하여 최종 경로를 설정할 수 있다. 즉, 프로세서(130)는 목적지 링크(D)에 할당된 부모 차선 링크를 역추적하여 최종 경로를 설정할 수 있다.
이와 같은 과정을 도 6a 내지 도 6h를 참조하여 상세하게 설명하도록 한다.
도 6a 내지 도 6h는 본 발명의 일 실시예에 따른 경로 탐색 과정을 설명하기 위한 도면이다. 한편, 도 6a 내지 도 6h에는 차선이 2차선인 경우로 도시되어 있으나, 반드시 이에 한정되는 것은 아니다.
먼저, 프로세서(130)는 도 6a의 (a)와 같이 출발지 링크(S)를 ‘L1-1’과 ‘L1-2’로 설정하고, 목적지 링크(D)로 ‘L100-1’과 ‘L100-2’를 설정한다. 그리고 도 6a의 (b)와 같이 출발지 링크(S)인 ‘L1-1’과 ‘L1-2’를 제 1 리스트에 추가한다. 이때, 출발지 링크 ‘L1-1’과 ‘L1-2’의 경로 비용은 모두 ‘100’인 것으로 가정한다.
다음으로, 프로세서(130)는 도 6b의 (a)와 같이 최소 경로 비용을 가진 차선 링크로 ‘L1-1’을 선정한 경우, 이를 제 1 리스트에서 추출하여 이와 연결된 차선 링크 ‘L2-1’과 ‘L2-2’를 추출한다.
그리고 프로세서(130)는 도 6b의 (b)와 같이 차선 링크 ‘L2-1’에는 자신의 경로비용 ‘40’과 부모 차선 링크인 ‘L1-1’의 경로 비용인 ‘100’을 합산하여 ‘140’을 경로 비용으로 할당하고, 차선 링크 ‘L2-2’에는 자신의 경로비용 ‘45’와 부모 차선 링크인 ‘L1-1’의 경로 비용인 ‘100’을 합산하여 145을 경로 비용으로 할당한다.
그 다음, 프로세서(130)는 추출된 차선 링크 ‘L2-1’과 ‘L2-2’를 부모 차선 링크인 ‘L1-1’과 연결시킨 뒤 제 1 리스트에 추가시키고, 부모 차선 링크인 ‘L1-1’은 제 2 리스트로 이동시킨다.
다음으로, 프로세서(130)는 도 6c의 (a)와 같이 제 1 리스트에 포함된 차선 링크 중 최소 경로 비용을 가지는 차선 링크인 ‘L1-2’를 추출하여 이와 연결된 차선 링크 ‘L3-1’과 ‘L3-2’를 추출한다.
그리고 도 6c의 (b)와 같이 ‘L3-1’과 ‘L3-2’에 각각 자신의 경로 비용과 부모 차선 링크인 ‘L1-2’의 경로 비용을 합산하여 경로비용으로 할당한다.
그 다음, 프로세서(130)는 추출된 차선 링크 ‘L3-1’과 ‘L3-2’를 부모 차선 링크인 ‘L1-2’와 연결시킨 뒤 제 1 리스트에 추가하고, 부모 차선 링크인 ‘L1-2’는 제 2 리스트로 이동시킨다.
다음으로, 프로세서(130)는 6d의 (a)와 같이 제 1 리스트에 포함된 차선 링크 중 최소 경로 비용 ‘110’을 가지는 차선 링크인 ‘L3-2’를 추출하여 이와 연결된 차선 링크 ‘L4-1’을 추출한다.
그리고 도 6d의 (b)와 같이 차선 링크 ‘L4-1’을 제 1 리스트에 추가하고, 부모 차선 링크인 ‘L3-2’는 ‘L4-1’ 차선 링크와 연결시킨 뒤 제 2 리스트로 이동시킨다.
다음으로, 프로세서(130)는 도 6e의 (a)와 같이 차선 링크 ‘L4-1’의 부모 차선 링크 ‘L3-2’가 교차로에서의 우회전에 해당하는 차선 링크인바, 이 경우 차선 링크 ‘L4-1’과 이웃하는 차선 링크를 추출한다. 이때, 이웃하는 차선 링크를 추출하는 방법은 출발지 링크(S) 및 목적지 링크(D)를 설정할 때의 이웃 차선 추출 방법과 동일하게 적용될 수 있다.
이에 따라, 프로세서(130)는 도 6e의 (b)와 같이 추출된 차선 링크 ‘L4-2’에 자신의 경로 비용 ‘70’과 부모 차선 링크인 ‘L4-1’의 경로 비용 ‘110’을 합산하여 할당한 뒤, 제 1 리스트에 추가시킨다.
이와 같은 과정을 반복 수행하여 도 6f의 (a) 및 (b)와 같이 목적지 링크(D)로 설정된 ‘L100-1’(또는 ‘L100-2’)가 제 1 리스트에 추가된 경우, 도 6g의 (a) 내지 (c)와 같이 목적지 링크(D)인 ‘L100-1’의 연결 정보를 역추적하여 최종 경로(L1-2→L3-2→L4-2→L5-2→L100-1)를 설정할 수 있다.
한편, 프로세서(130)는 기하 연산 또는 위상 관계에 의한 연산에 기초하여 최종 경로에 포함된 각 차선 링크의 모든 이웃 차선 링크를 검색하고, 최종 경로에 포함된 각 차선 링크 및 이에 대응하는 이웃 차선 링크 간의 차선 변경 정보를 추출할 수 있다. 이때, 차선 변경 정보는 실제 자율주행 차량(100b)이 좌회전 또는 우회전시 차선 변경을 위해 필요한 정보이다.
이에 따라, 최종 경로에 대응하는 출발지 링크(S) 및 목적지 링크(D)는 도 6h의 (a) 및 (b)에 도시된 바와 같이, 각 경로의 차선 링크와 차선 변경 정보에 기초하여 서로 연결될 수 있다.
한편, 자율주행 차량(100b)에서 최종 경로로 탐색된 차선 링크와 차선 변경 정보 외에 도로 상에 위치한 정적 데이터가 추가되어야 자율주행이 가능하다. 이에 따라, 본 발명의 일 실시예는 프로세서(130)가 최종 경로에 포함된 정적 데이터를 검색하고, 최종 경로 상에 정적 데이터를 반영하여 자율주행 맵 데이터를 생성할 수 있다.
이때, 정적 데이터는 정지선, 정지선, 신호등, 과속 방지턱 및 횡단보도 중 하나 이상의 정보를 포함할 수 있으며, 그밖에 노면 표시 데이터(road mark), 교통 표지판, 도로 표지만 등을 포함할 수 있다.
예를 들어, 정지선 데이터는 교차로 또는 횡단보도에 위치한 신호등 인식을 위한 정지 위치를 위해 필요하며, 신호등 데이터는 자율주행 차량(100b)에서의 센서를 통해 신호등을 인식하기 위한 신호등의 위치 데이터를 의미한다.
또한, 과속 방지턱 데이터는 과속 방지턱에 의한 서행을 위해 필요하며, 횡단보도 데이터는 보행자 인식을 위해 필요한 데이터로서, 도로상에서는 센서를 통해 타차량 등의 장애물을 검출 및 트래킹하나, 횡단보도 데이터의 경우 횡단보도 영역에 의해서 보행자 유무를 보다 정확히 인식할 수 있다.
한편, 정지선 데이터는 선(line) 성분, 신호등 데이터는 점(point) 성분, 과속 방지턱 데이터는 선(line) 또는 면(polygon) 성분, 횡단보도 데이터는 면(polygon) 성분으로 나타낼 수 있다.
이와 같은 정적 데이터를 검출하기 위해서 프로세서(130)는 기하연산을 이용하거나 객체간 관계를 이용할 수 있다.
먼저, 기하연산을 이용하는 경우를 도 7a 및 도7b를 참조하여 설명하도록 한다.
도 7a 및 도 7b는 기하연산을 이용하여 정적 데이터를 검색하는 방법을 설명하기 위한 도면이다.
프로세서(130)는 정적 데이터와 최종 경로에 포함된 차선 링크가 분리되어 차선 노드가 생성되는 경우, 정적 데이터에 대응하는 선 또는 면과 차선 노드 간의 기하객체 교차 연산에 기초하여 정적 데이터를 검색할 수 있다.
이와 달리, 정적 데이터와 최종 경로에 포함된 차선 링크가 분리되어 차선 노드가 생성되지 않는 경우, 프로세서(130)는 정적 데이터에 대응하는 선과 차선 링크 간의 기하객체 교차 연산에 기초하여 정적 데이터를 검색할 수 있다.
예를 들어, 도 7a의 (a)와 같이 차선 링크 ‘L1-1’과 ‘L1-2’가 존재하고, 정지선(P5)과 차선 링크와 분리되어 차선 노드(P6)가 생성되는 경우, 프로세서(130)는 정지선에 대응하는 선(P5)과 차선 노드(P6) 간의 기하객체 교차 연산을 수행하여 정지선을 검색할 수 있다.
이와 달리 도 7a의 (b)와 같이 차선 링크 ‘L1-1’과 ‘L1-2’가 존재하고, 정지선(P5)에 차선 링크에 의하여 차선 노드(P6)가 생성되지 않는 경우, 프로세서(130)는 정지선에 대응하는 선(P5)과 차선 링크에 대응하는 선(P7) 간의 기하객체 교차 연산을 수행하여 정지선을 검색할 수 있다.
또 다른 예로 횡단보도의 경우, 도 7b의 (a)와 같이 횡단보도와 차선 링크가 분리되어 차선 노드(P9)가 생성되는 경우, 프로세서(130)는 횡단보도에 대응하는 면(P8)과 차선 노드(P9) 간의 기하객체 교차 연산을 수행하여 횡단보도를 검색할 수 있다.
이와 달리 도 7b의 (b)와 같이 횡단보도와 차선 링크에 의하여 차선 노드(P9)가 생성되지 않는 경우, 프로세서(130)는 횡단보도에 대응하는 면(P8)과 차선 링크에 대응하는 선(P10) 간의 기하객체 교차 연산을 수행하여 횡단보도를 검색할 수 있다.
다음으로, 객체간의 관계 정보를 이용하는 경우를 도 8을 참조하여 설명하도록 한다.
도 8은 객체간의 관계 정보를 이용하여 정적 데이터를 검색하는 방법을 설명하기 위한 도면이다.
본 발명의 일 실시예에 따른 경로 탐색 장치(100)는 차선 링크 및 정적 데이터를 포함하는 객체 간의 관계 정보가 미리 설정되어 저장된다. 이에 따라, 프로세서(130)는 최종 경로에 대응하는 정적 데이터의 객체 간의 관계 정보를 반영하여 자율주행 맵 데이터를 생성할 수 있다.
객체간의 관계 정보를 이용하여 정적 데이터를 검색하는 방법은 검색 성능을 높이기 위하여 데이터를 구축하는 단계에서 객체들 간의 관계 정보를 미리 저장시켜 놓을 수 있다.
이에 따라 도 8의 (a) 및 (b)에 도시된 바와 같이, 정지선(sl1) 및 과속 방지턱(sp1)은 차선 링크(L1-1, L1-2)와 서로 관계가 설정되어 있고, 신호등(tl1, tl2)과 횡단보도(cr1)는 정지선(sl1)과 서로 관계가 설정되어 있으며, 이와 같은 객체 간의 관계 정보를 반영하여 자율주행 맵 데이터를 생성할 수 있다.
도 9는 자율주행 맵 데이터를 도시한 도면이다.
위 과정에 따라 최종적으로 생성된 자율주행 맵 데이터는 도 9의 (a) 및 (b)에 도시된 바와 같이, 출발지 링크(S)인 ‘L1-1’, ‘L1-2’부터 목적지 링크(D)인 ‘L100-1’, ‘L100-2’까지의 최종 경로뿐만 아니라 차선 변경 정보, 회전 정보, 과속 방지턱, 신호등 등의 정적 데이터를 포함할 수 있다.
자율주행 차량(100b)은 이러한 자율주행 맵 데이터를 수신하면, 이에 기초하여 자율주행을 위한 상황판단 및 제어를 할 수 있다.
참고로, 본 발명의 실시예에 따른 도 3에 도시된 구성 요소들은 소프트웨어 또는 FPGA(Field Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)와 같은 하드웨어 형태로 구현될 수 있으며, 소정의 역할들을 수행할 수 있다.
그렇지만 '구성 요소들'은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 각 구성 요소는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.
따라서, 일 예로서 구성 요소는 소프트웨어 구성 요소들, 객체지향 소프트웨어 구성 요소들, 클래스 구성 요소들 및 태스크 구성 요소들과 같은 구성 요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다.
구성 요소들과 해당 구성 요소들 안에서 제공되는 기능은 더 작은 수의 구성 요소들로 결합되거나 추가적인 구성 요소들로 더 분리될 수 있다.
이하에서는 도 10을 참조하여, 본 발명의 일 실시예에 따른 경로 탐색 장치(100)에서의 경로 탐색 방법에 대하여 설명하도록 한다.
도 10은 본 발명의 일 실시예에 따른 경로 탐색 방법의 순서도이다.
본 발명의 일 실시예에 따른 경로 탐색 방법은 먼저, 기 생성되어 저장된 정밀 맵으로부터 출발 지점에 해당하는 모든 차선 링크인 복수 개의 출발지 링크를 탐색한다(S110).
그리고 정밀 맵으로부터 목적 지점에 해당하는 모든 차선 링크인 복수 개의 목적지 링크를 탐색한다(S110).
이때, 출발지 링크 및 목적지 링크를 탐색하는 단계는, 출발 지점 및 목적 지점과 각각 가장 가까운 차선인 제 1 차선 링크와 제 2 차선 링크를 선택한 다음, 제 1 및 제 2 차선 링크와 이웃하는 모든 차선 링크인 제 1 이웃 차선 링크와 제 2 이웃 차선 링크를 각각 탐색한 뒤, 탐색된 제 1 차선 링크와 제 1 이웃 차선 링크를 출발지 링크로, 제 2 차선 링크와 제 2 이웃 차선 링크를 목적지 링크로 각각 설정할 수 있다.
한편, 출발지 링크 및 목적지 링크를 탐색하는 단계(S110, S120)는 순차적으로 실시될 수도 있고 두 단계가 동시에 실시될 수도 있다.
다음으로, 복수 개의 출발지 링크에 각각 경로 비용을 할당하여 제 1 리스트에 추가한다(S130). 그리고 제 1 리스트에 포함된 차선 링크 중 최소 경로 비용을 가진 차선 링크와 이웃하는 차선 링크를 추출한다(S140).
다음으로, 추출된 차선 링크에 경로 비용을 할당하여(S150) 제 1 리스트에 추가하고(S160), 최소 경로 비용을 가진 차선 링크는 제 2 리스트로 이동시킨다(S170).
이때, 경로 비용은 차선 링크에 대응하는 차선 길이에 기초하여 산출된다. 그리고 추출된 차선 링크에는 각각 자신의 경로 비용과, 최소 비용을 가진 차선 링크의 경로 비용을 합산하여 할당한다. 그리고 최소 비용을 가진 차선 링크는 추출된 차선 링크의 부모 차선 링크로 할당하여 연결시킨다.
다음으로, 제 1 리스트에 포함된 차선 링크 중에서 최소 비용을 가진 차선 링크가 목적지 링크와 동일한지 여부를 판단하고(S180), 판단 결과 동일한 경우 제 1 리스트에 포함된 목적지 링크의 연결 정보를 역추적하여 최종 경로로 설정한다(S190). 즉, 목적지 링크에 할당된 부모 차선 링크를 역추적하여 최종 경로로 추출할 수 있다.
한편, 자율주행 차량(100b)은 실제 주행시 차선 변경을 수행하는 것이 필요하다. 따라서, 본 발명의 일 실시예에 따른 경로 탐색 방법은 최종 경로에 포함된 각 차선 링크의 모든 이웃 차선 링크를 검색하고, 각 차선 링크 및 이에 대응하는 이웃 차선 링크 간의 차선 변경 정보를 추출하는 단계를 더 포함할 수 있다. 이에 따라, 최종 경로에 대응하는 출발지 링크 및 목적지 링크는 차선 변경 정보에 기초하여 서로 연결될 수 있다.
또한, 본 발명의 일 실시예에 따른 경로 탐색 방법은 최종 경로 및 차선 변경 정보 외에 최종 경로 상에 포함된 정지선, 신호등, 과속 방지턱 및 횡단보도 중 하나 이상을 포함하는 정적 데이터를 검색하고, 이를 반영하여 자율주행 맵 데이터를 생성할 수 있다.
자율주행 차량(100b)은 이와 같이 생성된 자율주행 맵 데이터를 전달받아 자율주행에 필요한 상황판단 및 제어가 가능하다.
한편, 상술한 설명에서, 단계 S110 내지 S190은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. 아울러, 기타 생략된 내용이라 하더라도 도 1a 내지 도 9에서 이미 기술된 내용은 도 10의 경로 탐색 방법에도 적용될 수 있다.
이와 같은 본 발명의 일 실시예 중 어느 하나에 의하면, 자율주행을 위한 전역 경로를 종래 기술보다 더 적은 데이터를 이용하여 탐색 가능하다.
한편, 본 발명의 일 실시예에 따른 경로 탐색 장치(100)에서의 경로 탐색 방법은 컴퓨터에 의해 실행되는 매체에 저장된 컴퓨터 프로그램 또는 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 경로 탐색 장치
110: 통신모듈
120: 메모리
130: 프로세서

Claims (19)

  1. 자율주행 차량을 위한 경로 탐색 장치에 있어서,
    통신모듈,
    경로 탐색을 위한 프로그램이 저장된 메모리 및
    상기 메모리에 저장된 프로그램을 실행시키는 프로세서를 포함하되,
    상기 프로세서는 상기 프로그램을 실행시킴에 따라, 기 생성되어 저장된 정밀 맵으로부터 출발지 링크 및 목적지 링크를 설정하고, 상기 출발지 링크에 각각 차선 길이에 대응하는 경로 비용을 할당하여 제 1 리스트에 추가한 뒤, 상기 제 1 리스트 중 최소 경로 비용을 가진 차선 링크와 이웃하는 차선 링크를 추출하며,
    상기 추출된 차선 링크를 상기 제 1 리스트에 추가하고, 상기 최소 경로 비용을 가진 차선 링크를 상기 제 1 리스트에서 제 2 리스트로 이동시키며,
    상기 제 1 리스트 중 최소 경로 비용을 가진 차선 링크가 상기 목적지 링크인 경우, 상기 목적지 링크의 연결 정보를 역추적하여 최종 경로를 설정하는 것인 경로 탐색 장치.
  2. 제 1 항에 있어서,
    상기 프로세서는 출발 지점 및 목적 지점에 각각 해당하는 모든 차선 링크를 각각 탐색하여 상기 출발지 링크 및 목적지 링크를 설정하는 것인 경로 탐색 장치.
  3. 제 1 항에 있어서,
    상기 제 1 리스트는 공개 리스트(open list)이고, 상기 제 2 리스트는 폐쇄 리스트(closed list)인 것인 경로 탐색 장치.
  4. 제 1 항에 있어서,
    상기 프로세서는 상기 출발 지점 및 목적 지점과 각각 가장 가까운 차선 링크인 제 1 차선 링크와 제 2 차선 링크를 탐색하고, 상기 제 1 및 제 2 차선 링크와 이웃하는 모든 차선 링크인 제 1 이웃 차선 링크와 제 2 이웃 차선 링크를 각각 탐색하여, 상기 탐색된 제 1 차선 링크 및 제 1 이웃 차선 링크를 출발지 링크로 설정하고, 상기 제 2 차선 링크 및 제 2 이웃 차선 링크를 목적지 링크로 설정하는 것인 경로 탐색 장치.
  5. 제 4 항에 있어서,
    상기 프로세서는 상기 출발 지점 및 목적 지점에 각각 대응하는 도로 상에 임의의 가상 라인을 생성하고, 상기 가상 라인과 교차하는 링크를 상기 제 1 및 제 2 이웃 차선 링크로 각각 탐색하는 것인 경로 탐색 장치.
  6. 제 4 항에 있어서,
    상기 프로세서는 상기 제 1 및 제 2 차선 링크 각각의 연결성 정보에 기초하여 상기 제 1 및 제 2 이웃 차선 링크를 탐색하되,
    상기 연결성 정보는 각 차선 링크에 대응하는 차선 링크 정보 및 차선 노드 정보를 포함하는 것인 경로 탐색 장치.
  7. 제 1 항에 있어서,
    상기 프로세서는 상기 추출된 차선 링크 각각에, 상기 추출된 차선 링크에 대응하는 경로 비용 및 상기 최소 경로 비용을 가진 차선 링크의 경로 비용을 합산하여 할당하고, 상기 최소 경로 비용을 가진 차선 링크를 상기 추출된 차선 링크의 부모 차선 링크로 할당하여 연결하는 것인 경로 탐색 장치.
  8. 제 7 항에 있어서,
    상기 프로세서는 상기 목적지 링크에 할당된 부모 차선 링크를 역추적하여 상기 최종 경로를 설정하는 것인 경로 탐색 장치.
  9. 제 7 항에 있어서,
    상기 프로세서는 상기 추출된 차선 링크에 할당된 부모 차선 링크가 교차로에서의 좌회전 또는 우회전에 대응하는 차선 링크인 경우, 추출된 차선 링크와 이웃하는 차선 링크인 이웃 차선 링크를 추출하고, 추출된 이웃 차선 링크의 경로 비용 및 상기 부모 차선 링크의 경로 비용을 합산하여 할당한 뒤, 상기 이웃 차선 링크를 상기 제 1 리스트에 추가시키는 것인 경로 탐색 장치.
  10. 제 1 항에 있어서,
    상기 프로세서는 상기 최종 경로에 포함된 각 차선 링크의 모든 이웃 차선 링크를 검색하고, 상기 최종 경로에 포함된 각 차선 링크 및 이에 대응하는 이웃 차선 링크 간의 차선 변경 정보를 추출하되,
    상기 최종 경로에 대응하는 출발지 링크 및 목적지 링크는 상기 차선 변경 정보에 기초하여 서로 연결되는 것인 경로 탐색 장치.
  11. 제 1 항에 있어서,
    상기 프로세서는 상기 최종 경로에 포함된 정적 데이터를 검색하고, 상기 최종 경로에 상기 정적 데이터를 반영하여 자율주행 맵 데이터를 생성하되,
    상기 정적 데이터는 정지선, 신호등, 과속 방지턱 및 횡단보도 중 하나 이상의 정보를 포함하는 것인 경로 탐색 장치.
  12. 제 11 항에 있어서,
    상기 프로세서는 상기 정적 데이터와 상기 최종 경로에 포함된 차선 링크가 분리되어 차선 노드가 생성되는 경우, 상기 정적 데이터에 대응하는 선 또는 면과 상기 차선 노드 간의 기하객체 교차 연산에 기초하여 상기 정적 데이터를 검색하고,
    상기 정적 데이터와 상기 최종 경로에 포함된 차선 링크가 분리되어 차선 노드가 생성되지 않는 경우, 상기 정적 데이터에 대응하는 선과 상기 차선 링크 간의 기하객체 교차 연산에 기초하여 상기 정적 데이터를 검색하는 것인 경로 탐색 장치.
  13. 제 11 항에 있어서,
    상기 차선 링크 및 상기 정적 데이터를 포함하는 객체 간의 관계 정보는 미리 설정되어 저장되되,
    상기 프로세서는 상기 최종 경로에 대응하는 상기 정적 데이터의 객체 간의 관계 정보를 반영하여 상기 자율주행 맵 데이터를 생성하는 것인 경로 탐색 장치.
  14. 자율주행 차량을 위한 경로 탐색 장치에서의 경로 탐색 방법에 있어서,
    기 생성되어 저장된 정밀 맵으로부터 출발 지점에 해당하는 모든 차선 링크인 복수 개의 출발지 링크를 탐색하는 단계;
    상기 정밀 맵으로부터 목적 지점에 해당하는 모든 차선 링크인 복수 개의 목적지 링크를 탐색하는 단계;
    상기 복수 개의 출발지 링크에 각각 경로 비용을 할당하여 제 1 리스트에 추가하는 단계;
    상기 제 1 리스트 중 최소 경로 비용을 가진 차선 링크와 이웃하는 차선 링크를 추출하는 단계;
    상기 추출된 차선 링크에 경로 비용을 할당하여 상기 제 1 리스트에 추가하는 단계;
    상기 최소 경로 비용을 가진 차선 링크를 제 2 리스트로 이동시키는 단계 및
    상기 제 1 리스트에 포함된 차선 링크 중 최소 경로 비용을 가지는 차선 링크가 상기 목적지 링크인 경우, 상기 제 1 리스트에 포함된 목적지 링크의 연결 정보를 역추적하여 최종 경로를 설정하는 단계를 포함하되,
    상기 경로 비용은 차선 링크에 대응하는 차선 길이에 기초하여 산출되는 것인 경로 탐색 방법.
  15. 제 14 항에 있어서,
    상기 출발지 링크 및 목적지 링크로 탐색하는 단계는,
    상기 출발 지점 및 목적 지점과 각각 가장 가까운 차선 링크인 제 1 차선 링크와 제 2 차선 링크를 탐색하는 단계;
    상기 제 1 및 제 2 차선 링크와 이웃하는 모든 차선 링크인 제 1 이웃 차선 링크와 제 2 이웃 차선 링크를 각각 탐색하는 단계 및
    상기 탐색된 제 1 차선 링크 및 제 1 이웃 차선 링크를 출발지 링크로 설정하고, 상기 제 2 차선 링크 및 제 2 이웃 차선 링크를 목적지 링크로 설정하는 단계를 포함하는 경로 탐색 방법.
  16. 제 14 항에 있어서,
    상기 추출된 차선 링크를 상기 제 1 리스트에 추가하고, 상기 최소 경로 비용을 가진 차선 링크를 제 2 리스트에 추가하는 단계는,
    상기 추출된 차선 링크 각각에, 자신의 경로 비용 및 상기 최소 경로 비용을 가진 차선 링크의 경로 비용을 합산하여 할당하는 단계 및
    상기 최소 경로 비용을 가진 차선 링크를 상기 추출된 차선 링크의 부모 차선 링크로 할당하여 연결하는 단계를 포함하는 것인 경로 탐색 방법.
  17. 제 16 항에 있어서,
    상기 목적지 링크의 연결 정보를 역추적하여 최종 경로를 설정하는 단계는,
    상기 목적지 링크에 할당된 부모 차선 링크를 역추적하여 상기 최종 경로를 추출하는 것인 경로 탐색 방법.
  18. 제 14 항에 있어서,
    상기 최종 경로에 포함된 각 차선 링크의 모든 이웃 차선 링크를 검색하는 단계 및
    상기 각 차선 링크 및 이에 대응하는 이웃 차선 링크 간의 차선 변경 정보를 추출하는 단계를 더 포함하되,
    상기 최종 경로에 대응하는 출발지 링크 및 목적지 링크는 상기 차선 변경 정보에 기초하여 서로 연결되는 것인 경로 탐색 방법.
  19. 제 14 항에 있어서,
    상기 최종 경로에 포함된 정적 데이터를 검색하는 단계 및
    상기 최종 경로에 상기 정적 데이터를 반영한 자율주행 맵 데이터를 생성하는 단계를 더 포함하되,
    상기 정적 데이터는 정지선, 신호등, 과속 방지턱 및 횡단보도 중 하나 이상의 정보를 포함하는 것인 경로 탐색 방법.

KR1020160132080A 2016-10-12 2016-10-12 자율주행 차량을 위한 경로 탐색 장치 및 방법 KR20180040760A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160132080A KR20180040760A (ko) 2016-10-12 2016-10-12 자율주행 차량을 위한 경로 탐색 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160132080A KR20180040760A (ko) 2016-10-12 2016-10-12 자율주행 차량을 위한 경로 탐색 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20180040760A true KR20180040760A (ko) 2018-04-23

Family

ID=62089234

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160132080A KR20180040760A (ko) 2016-10-12 2016-10-12 자율주행 차량을 위한 경로 탐색 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20180040760A (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102069666B1 (ko) * 2018-11-14 2020-01-23 주식회사 모빌테크 포인트 클라우드 맵 기반의 자율주행차량용 실시간 주행경로 설정 방법
CN111016896A (zh) * 2018-10-08 2020-04-17 株式会社万都 交叉路口路径生成设备及交叉路口处车辆控制方法和设备
KR20210047341A (ko) * 2018-12-10 2021-04-29 모셔널 에이디 엘엘씨 모션 그래프 구성 및 차선 레벨 루트 계획
KR20220074688A (ko) 2020-11-27 2022-06-03 연세대학교 산학협력단 도로 교통 시설과 무선 통신 기술을 이용한 도심용 차량의 위치 추정 방법
US11398154B2 (en) 2020-11-27 2022-07-26 Uif (University Industry Foundation), Yonsei University Vehicle localization method for urban environment using road traffic infrastructure and wireless communication technology
KR20230109534A (ko) 2022-01-13 2023-07-20 국민대학교산학협력단 정밀도로지도 기반 자율주행 자동차의 전역 경로 생성 장치 및 그 동작방법

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111016896A (zh) * 2018-10-08 2020-04-17 株式会社万都 交叉路口路径生成设备及交叉路口处车辆控制方法和设备
KR20200044193A (ko) * 2018-10-08 2020-04-29 주식회사 만도 교차로에서의 경로 생성 장치 및 교차로에서의 차량 제어 장치 및 방법
US11260864B2 (en) 2018-10-08 2022-03-01 Mando Mobility Solutions Corporation Path generation apparatus at intersection, and method and apparatus for controlling vehicle at intersection
CN111016896B (zh) * 2018-10-08 2024-05-17 汉拿科锐动电子股份公司 交叉路口路径生成设备及交叉路口处车辆控制方法和设备
KR102069666B1 (ko) * 2018-11-14 2020-01-23 주식회사 모빌테크 포인트 클라우드 맵 기반의 자율주행차량용 실시간 주행경로 설정 방법
KR20210047341A (ko) * 2018-12-10 2021-04-29 모셔널 에이디 엘엘씨 모션 그래프 구성 및 차선 레벨 루트 계획
CN113196011A (zh) * 2018-12-10 2021-07-30 动态Ad有限责任公司 运动图构建和车道级路线规划
US11604071B2 (en) 2018-12-10 2023-03-14 Motional Ad Llc Motion graph construction and lane level route planning
KR20220074688A (ko) 2020-11-27 2022-06-03 연세대학교 산학협력단 도로 교통 시설과 무선 통신 기술을 이용한 도심용 차량의 위치 추정 방법
US11398154B2 (en) 2020-11-27 2022-07-26 Uif (University Industry Foundation), Yonsei University Vehicle localization method for urban environment using road traffic infrastructure and wireless communication technology
US11935406B2 (en) 2020-11-27 2024-03-19 Uif (University Industry Foundation), Yonsei University Vehicle localization method for urban environment using road traffic infrastructure and wireless communication technology
KR20230109534A (ko) 2022-01-13 2023-07-20 국민대학교산학협력단 정밀도로지도 기반 자율주행 자동차의 전역 경로 생성 장치 및 그 동작방법

Similar Documents

Publication Publication Date Title
US11774261B2 (en) Automatic annotation of environmental features in a map during navigation of a vehicle
JP7280465B2 (ja) ナビゲーション情報を処理する方法、ナビゲーション情報を処理する地図サーバコンピュータプログラム、自律車両のナビゲーションを支援する車両システム、および自律車両
KR20180040760A (ko) 자율주행 차량을 위한 경로 탐색 장치 및 방법
US11255679B2 (en) Global and local navigation for self-driving
US11454973B2 (en) Mapped driving paths for autonomous vehicle
US11604071B2 (en) Motion graph construction and lane level route planning
US10846511B2 (en) Automatic detection and positioning of pole-like objects in 3D
Hentschel et al. Autonomous robot navigation based on openstreetmap geodata
WO2020108207A1 (zh) 一种高精度地图的构建方法及装置
KR20200134313A (ko) 자율주행 차량을 위한 상대적인 아틀라스 및 그 생성
US11615563B2 (en) Navigation using points on splines
WO2021231906A1 (en) Systems and methods for vehicle navigation involving traffic lights and traffic signs
JP7477256B2 (ja) ナビゲーションのためのマップタイル要求を最適化するためのシステム及び方法
EP3647733A1 (en) Automatic annotation of environmental features in a map during navigation of a vehicle
CN108332761B (zh) 一种使用及创建路网地图信息的方法与设备
Yang et al. A novel GIS platform for UGV application in the unknown environment
WO2023168262A2 (en) Machine learning-based traffic light relevancy mapping