KR102257112B1 - 자율 차량들을 위한 동적 라우팅 - Google Patents
자율 차량들을 위한 동적 라우팅 Download PDFInfo
- Publication number
- KR102257112B1 KR102257112B1 KR1020217005643A KR20217005643A KR102257112B1 KR 102257112 B1 KR102257112 B1 KR 102257112B1 KR 1020217005643 A KR1020217005643 A KR 1020217005643A KR 20217005643 A KR20217005643 A KR 20217005643A KR 102257112 B1 KR102257112 B1 KR 102257112B1
- Authority
- KR
- South Korea
- Prior art keywords
- vehicle
- lane
- segments
- assigned
- cost values
- Prior art date
Links
- 238000000034 method Methods 0.000 claims description 25
- 239000007787 solid Substances 0.000 description 29
- 230000015654 memory Effects 0.000 description 16
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 230000008447 perception Effects 0.000 description 6
- 239000003550 marker Substances 0.000 description 5
- 230000011664 signaling Effects 0.000 description 5
- 238000010276 construction Methods 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000446 fuel Substances 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000009941 weaving Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000007 visual effect Effects 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/3407—Route searching; Route guidance specially adapted for specific applications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
-
- 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/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
-
- 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/20—Instruments for performing navigational calculations
-
- 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
- G01C21/3461—Preferred or disfavoured areas, e.g. dangerous zones, toll or emission zones, intersections, manoeuvre types, segments such as motorways, toll roads, ferries
-
- 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
- G01C21/3469—Fuel consumption; Energy use; Emission aspects
-
- 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/36—Input/output arrangements for on-board computers
- G01C21/3667—Display of a road map
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0217—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/09—Arrangements for giving variable traffic instructions
- G08G1/0962—Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
- G08G1/0968—Systems involving transmission of navigation instructions to the vehicle
- G08G1/096833—Systems involving transmission of navigation instructions to the vehicle where different aspects are considered when computing the route
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Mathematical Physics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Human Computer Interaction (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Navigation (AREA)
- Traffic Control Systems (AREA)
- Instructional Devices (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
Abstract
맵 정보를 사용하여 목적지로의 트립을 위한 루트(660)가 생성된다. 루트와 관련하여, 차량(100)이 자율 모드로 주행할 수 없는, 접근-금지(no-go) 도로 세그먼트들의 세트가 맵 정보로부터 식별된다. 차량의 현재 위치 주위의 로컬 영역(800)이 결정된다. 로컬 영역 내의 위치들에 대응하는 맵 정보의 도로 세그먼트들을 포함하는 로컬 맵 영역(900)이 결정된다. 로컬 맵 영역의 도로 세그먼트들로부터 복수의 접근-금지 도로 세그먼트의 세트가 필터링된다. 로컬 맵 영역의 필터링된 도로 세그먼트들의 각각의 도로 세그먼트에 비용 값이 배정된다. 임의의 배정된 비용 값들이 사용되어, 미래에 사전 결정된 기간 동안 차량을 기동시키기 위한 계획을 결정한다. 차량은 계획에 따라 기동된다.
Description
본 출원은 2016년 11월 18일자로 출원된 U.S. 특허 출원 번호 15/355,658의 계속출원이며, 그 개시내용은 본 명세서에 참조로 통합된다.
인간 운전자를 요구하지 않는 차량들과 같은 자율 차량들은 하나의 위치(location)로부터 또 다른 위치로의 승객들 또는 아이템들의 이송을 돕는데 사용될 수 있다. 그러한 차량들은 승객들이 픽업(pickup) 또는 목적지 위치와 같은 일부 초기 입력을 제공할 수 있는 완전 자율 모드로 동작할 수 있으며, 차량은 대응 위치까지 스스로 기동한다.
그러한 차량들은 통상적으로 인근에 있는 객체들을 검출하기 위해 다양한 타입들의 센서들을 갖추고 있다. 예를 들어, 자율 차량들은 차량의 인근으로부터 데이터를 스캔 및 기록하는 레이저들, 소나, 레이더, 카메라들, 및 다른 디바이스들을 포함할 수 있다. 이러한 디바이스들 중 하나 이상으로부터의 센서 데이터는 객체들 및 그들의 각각의 특성들(포지션, 형상, 헤딩, 속도 등)을 검출하는데 사용될 수 있다. 이러한 특성들은, 미래에 어떤 짧은 기간 동안 객체가 무엇을 할 가능성이 있는지를 예측하는데 사용될 수 있어 이러한 객체들을 피하기 위해 차량을 제어하는데 사용될 수 있다. 따라서, 검출, 식별, 및 예측은 자율 차량의 안전한 동작을 위한 중요한 기능들이다.
센서들을 사용하는 것에 더하여, 이러한 차량들은 그들의 환경에 대한 고도로 상세한 맵들에 의존할 수 있다. 이러한 맵들은 내비게이션(예를 들어, 2개의 위치 사이에서 어떻게 갈지를 결정하는 것)뿐만 아니라 측위(localization)(차량이 이 세상 어디에 있는지를 결정하는 것) 둘 모두에 중요하다.
본 개시내용의 양태들은 차량을 기동시키기 위한 방법을 제공한다. 방법은 하나 이상의 프로세서에 의해, 맵 정보를 사용하여 제1 위치로부터 목적지까지의 트립을 위한 루트를 생성하는 단계- 맵 정보는 도로들의 형상 및 위치를 정의하는 도로 세그먼트들을 포함하고, 맵 정보는 또한 차량이 자율 모드로 주행할 수 없는 도로 세그먼트들을 정의하는 적어도 하나의 접근-금지 도로 세그먼트(no-go roadway segment)를 식별함 -; 하나 이상의 프로세서에 의해, 맵 정보로부터, 복수의 접근-금지 도로 세그먼트로부터 루트와 관련있는 접근-금지 도로 세그먼트들의 세트를 식별하는 단계; 하나 이상의 프로세서에 의해, 차량의 현재 위치 주위의 로컬 영역을 결정하는 단계; 하나 이상의 프로세서에 의해, 로컬 영역 내의 위치들에 대응하는 맵 정보의 도로 세그먼트들을 포함하는 로컬 맵 영역을 식별하는 단계; 하나 이상의 프로세서에 의해, 로컬 맵 영역의 도로 세그먼트들로부터 복수의 접근-금지 도로 세그먼트의 세트를 필터링하는 단계; 하나 이상의 프로세서에 의해, 로컬 맵 영역의 필터링된 도로 세그먼트들의 각각의 도로 세그먼트에 비용 값을 배정하는 단계; 하나 이상의 프로세서에 의해, 임의의 배정된 비용 값들을 사용하여, 미래에 사전 결정된 시간 기간 동안 차량을 기동시키기 위한 계획을 결정하는 단계; 및 하나 이상의 프로세서에 의해, 계획에 따라 차량을 기동시키는 단계를 포함한다.
하나의 예에서, 방법은 또한 차량이 목적지로부터 시작하는 그래프 워크를 사용하여 목적지에 도달하는 것을 허용하지 않는 적어도 하나의 추가적인 접근-금지 도로 세그먼트를 식별하는 단계를 포함하고, 접근-금지 도로 세그먼트들의 세트는 적어도 하나의 접근-금지 도로 세그먼트뿐만 아니라 적어도 하나의 추가적인 도로 세그먼트를 포함한다. 또 다른 예에서, 로컬 맵 영역은 맵 정보에 대해 그래프 컷(graph cut)을 수행함으로써 식별된다. 또 다른 예에서, 로컬 영역은 차량이 차량의 현재 위치로부터 미래에 제2 사전 결정된 시간 기간 내에 도달할 수 있는 지역(area)에 대응한다. 또 다른 예에서, 로컬 영역은 주기적으로 결정되고, 접근-금지 도로 세그먼트들의 세트는 트립을 위해 한 번만 식별된다. 또 다른 예에서, 비용 값은 도로 세그먼트에 대응하는 공사 지역(construction area)에 기초하여 로컬 맵 영역의 필터링된 도로 세그먼트들의 도로 세그먼트에 배정된다. 또 다른 예에서, 도로 세그먼트에 대응하는 비보호 좌 회전(unprotected left turn)에 기초하여 로컬 맵 영역의 필터링된 도로 세그먼트들의 도로 세그먼트에 비용 값이 배정된다. 또 다른 예에서, 도로 세그먼트로부터 목적지에 도달하기 위한 시간에 기초하여 로컬 맵 영역의 필터링된 도로 세그먼트들의 도로 세그먼트에 비용 값이 배정된다. 또 다른 예에서, 방법은 또한 적어도 하나의 배정된 비용 값을 로컬 캐시에 저장하는 단계; 로컬 영역과 적어도 부분적으로 중첩하는 제2 로컬 영역을 결정하는 단계; 제2 로컬 영역 내의 위치들에 대응하는 맵 정보의 도로 세그먼트들을 포함하는 제2 로컬 맵 영역을 식별하는 단계; 제2 로컬 맵 영역의 도로 세그먼트들로부터 복수의 접근-금지 도로 세그먼트의 세트를 필터링하는 단계; 로컬 캐시로부터 적어도 하나의 배정된 비용 값을 검색함으로써 제2 로컬 맵 영역의 필터링된 도로 세그먼트들의 각각의 도로 세그먼트에 비용 값을 배정하는 단계; 제2 로컬 맵 영역의 필터링된 도로 세그먼트들의 각각의 도로 세그먼트에 대한 임의의 배정된 비용 값들을 사용하여, 미래에 제2 사전 결정된 기간 동안 차량을 기동시키기 위한 제2 계획을 결정하는 단계; 및 제2 계획에 따라 차량을 기동시키는 단계를 포함한다. 또 다른 예에서, 계획은 로컬 영역 밖으로 이어지고 비용 값들의 최저 축적을 갖는 로컬 맵 영역의 필터링된 도로 세그먼트들의 접속된 도로 세그먼트들의 세트를 포함한다. 또 다른 예에서, 계획을 결정하는 단계는 차량에 대한 차선 변경이 강제되어야 하는지를 결정하는 단계를 포함한다. 또 다른 예에서, 계획을 결정하는 단계는 2개의 차선 도로 세그먼트 사이에서 차량을 움직이게 하기 위해 회전(turn)이 실행되어야 하는지를 결정하는 단계를 포함한다. 또 다른 예에서, 계획을 결정하는 단계는 루트의 도로 세그먼트들에 대응하는 주요 경로가 이용가능하지 않을 때 보조 경로를 식별하는 단계를 포함한다.
본 개시내용의 또 다른 양태는 차량을 기동시키기 위한 시스템을 제공한다. 시스템은 하나 이상의 프로세서를 포함하며, 하나 이상의 프로세서는 맵 정보를 사용하여 제1 위치로부터 목적지까지의 트립을 위한 루트를 생성하고- 맵 정보는 도로들의 형상 및 위치를 정의하는 도로 세그먼트들을 포함하고, 맵 정보는 또한 차량이 자율 모드로 주행할 수 없는 도로 세그먼트들을 정의하는 복수의 접근-금지 도로 세그먼트를 식별함 -; 복수의 접근-금지 도로 세그먼트로부터 루트에 관련있는 접근-금지 도로 세그먼트들의 세트를 식별하고; 차량의 현재 위치 주위의 로컬 영역을 결정하고; 로컬 영역 내의 위치들에 대응하는 맵 정보의 도로 세그먼트들을 포함하는 로컬 맵 영역을 식별하고; 로컬 맵 영역의 도로 세그먼트들로부터 복수의 접근-금지 도로 세그먼트의 세트를 필터링하고; 로컬 맵 영역의 필터링된 도로 세그먼트들의 각각의 도로 세그먼트에 비용 값을 배정하고; 임의의 배정된 비용 값들을 사용하여, 미래에 사전 결정된 기간 동안 차량을 기동시키기 위한 계획을 결정하고; 계획에 따라 차량을 기동시키도록 구성된다.
하나의 예에서, 하나 이상의 프로세서는 차량이 목적지에서 시작하는 그래프 워크를 사용하여 목적지에 도달하는 것을 허용하지 않는 적어도 하나의 추가적인 접근-금지 도로 세그먼트를 식별하도록 추가로 구성되고, 접근-금지 도로 세그먼트의 세트는 적어도 하나의 접근-금지 도로 세그먼트뿐만 아니라 적어도 하나의 추가적인 도로 세그먼트를 포함한다. 또 다른 예에서, 로컬 영역은 주기적으로 결정되고, 접근-금지 도로 세그먼트들의 세트는 트립을 위해 한 번만 식별된다. 또 다른 예에서, 도로 세그먼트에 대응하는 공사 지역에 기초하여 로컬 맵 영역의 필터링된 도로 세그먼트들의 도로 세그먼트에 비용 값이 배정된다. 또 다른 예에서, 도로 세그먼트에 대응하는 비보호 좌 회전에 기초하여 로컬 맵 영역의 필터링된 도로 세그먼트들의 도로 세그먼트에 비용 값이 배정된다. 또 다른 예에서, 도로 세그먼트로부터 목적지에 도달하기 위한 시간에 기초하여 로컬 맵 영역의 필터링된 도로 세그먼트들의 도로 세그먼트에 비용 값이 배정된다.
본 개시내용의 추가 양태는 명령어들이 저장되는 비-일시적인 컴퓨터 판독가능 매체를 제공한다. 명령어들은, 하나 이상의 프로세서에 의해 수행될 때, 하나 이상의 프로세서로 하여금 차량을 기동시키기 위한 방법을 수행하게 한다. 방법은 맵 정보를 사용하여 제1 위치로부터 목적지까지의 트립을 위한 루트를 생성하는 단계- 맵 정보는 도로들의 형상 및 위치를 정의하는 도로 세그먼트들을 포함하고, 맵 정보는 또한 차량이 자율 모드로 주행할 수 없는 도로 세그먼트들을 정의하는 복수의 접근-금지 도로 세그먼트를 식별함 -; 복수의 접근-금지 도로 세그먼트로부터 루트에 관련있는 접근-금지 도로 세그먼트들의 세트를 식별하는 단계; 차량의 현재 위치 주위의 로컬 영역을 결정하는 단계; 로컬 영역 내의 위치들에 대응하는 맵 정보의 도로 세그먼트들을 포함하는 로컬 맵 영역을 식별하는 단계; 로컬 맵 영역의 도로 세그먼트들로부터 복수의 접근-금지 도로 세그먼트의 세트를 필터링하는 단계; 로컬 맵 영역의 필터링된 도로 세그먼트들의 각각의 도로 세그먼트에 비용 값을 배정하는 단계; 임의의 배정된 비용 값들을 사용하여, 미래에 사전 결정된 기간 동안 차량을 기동시키기 위한 계획을 결정하는 단계; 및 계획에 따라 차량을 기동시키는 단계를 포함한다.
도 1은 본 개시내용의 양태들에 따른 예시적인 차량의 기능적 다이어그램이다.
도 2a 및 도 2b는 본 개시내용의 양태들에 따른 맵 정보의 다이어그램들이다.
도 3a 내지 도 3d는 본 개시내용의 양태들에 따른 차량의 예시적인 외부 뷰들이다.
도 4는 본 개시내용의 양태들에 따른 시스템의 회화 다이어그램(pictorial diagram)이다.
도 5는 본 개시내용의 양태들에 따른 도 4의 시스템의 기능적 다이어그램이다.
도 6 내지 도 14는 본 개시내용의 양태들에 따른 데이터 및 도로의 섹션에 대한 뷰들이다.
도 15는 본 개시내용의 양태들에 따른 흐름 다이어그램이다.
도 2a 및 도 2b는 본 개시내용의 양태들에 따른 맵 정보의 다이어그램들이다.
도 3a 내지 도 3d는 본 개시내용의 양태들에 따른 차량의 예시적인 외부 뷰들이다.
도 4는 본 개시내용의 양태들에 따른 시스템의 회화 다이어그램(pictorial diagram)이다.
도 5는 본 개시내용의 양태들에 따른 도 4의 시스템의 기능적 다이어그램이다.
도 6 내지 도 14는 본 개시내용의 양태들에 따른 데이터 및 도로의 섹션에 대한 뷰들이다.
도 15는 본 개시내용의 양태들에 따른 흐름 다이어그램이다.
개요(OVERVIEW)
본 기술은 자율 차량을 위한 루트의 계획에 관한 것이다. 예를 들어, 자율 차량은 목적지로의 루트를 생성하기 위한 라우팅 또는 내비게이팅 시스템(환언하면, 장기 계획) 및 루트를 따르는 경로를 생성하기 위한 계획 시스템(환언하면, 단기 계획) 둘 모두를 포함하는 컴퓨팅 시스템에 의해 제어될 수 있다. 라우팅 시스템은 도로그래프(roadgraph)를 참조하고, 차량의 현재 위치를 목적지 위치와 접속시키는 일련의 도로 또는 차선 세그먼트들(차선 아이디(id), 시작, 종료)을 식별함으로써 루트를 결정한다. 그 다음에, 계획 시스템은 이 루트를 기준선으로 사용하여, 목적지에 도달하기 위해, 어느 쪽으로 회전할지, 어떤 차선들 안에 있어야 할지 등을 결정한다. 계획 시스템이 루트를 따르지 않는 경로를 생성하는 것을 허용함으로써, 차량은 그것을 차량의 현재 환경에 더 많이 반응하게 만드는 방식으로 제어될 수 있다.
루트를 생성하기 위해, 라우팅 시스템은 맵 정보에 액세스해야 한다. 맵 정보는 도로 표면, 차선 마커들, 커브들, 횡단보도들 등과 같은 도로 피처들의 형상 및 배향을 설명할 수 있다. 위에 표시된 바와 같이, 도로들은 식별자들, 시작점들 및 종점들에 의해 식별되는 차선들 내의 세그먼트들에 의해 정의될 수 있다. 세그먼트들을 함께 접속함으로써, 2개의 위치 사이의 루트가 생성될 수 있다. (차량에 대한 속도 제약으로 인해, 위험한 지역으로 인해, 세그먼트들이 충분히 맵핑되지 않았기 때문에, 또는 다른 이유들로 인해) 차량이 안전하게 주행할 수 없는 곳들과 같은 특정 지역들을 피하기 위해, 맵 정보는 차량이 이동할 수 없는 세그먼트들 또는 "접근-금지 영역들(no-go regions)"을 포함할 수 있다.
일단 루트가 식별되면, 목적지에 대한 모든 관련있는 접근-금지 영역들이 식별될 수 있다. 목적지에서 시작해서 시작 위치(통상적으로, 차량의 현재 위치)를 향하는 간단한 그래프 워크가 사용될 수 있다. 본질적으로, 이것은 목적지가 일정하게 유지되고 차량을 목적지까지 가게 하지 못할 모든 세그먼트를 식별하는 것으로 가정한다. 이 시점에 다른 상세한 분석은 요구되지 않으므로, 이러한 결정은 목적지당 한 번만 행해질 수 있다.
차량의 현재 위치를 사용하여, 차량 주위의 로컬 영역이 식별될 수 있다. 이러한 로컬 영역은 차량 뒤의 일부 작은 영역뿐만 아니라 차량 (이동 방향의) 전방 및 차량(으로부터 횡 방향들의) 주위에 있는 지역을 포함할 수 있다. 예를 들어, 로컬 영역은 차량이 일부 사전 결정된 시간 기간 내에 아마도 도달할 수 있을 모든 지역에 대응할 수 있다. 이러한 로컬 영역은 주기적으로 식별될 수 있다.
그 다음에, 로컬 영역은 간단한 그래프 컷을 수행하는데 사용될 수 있는데, 환언하면, 맵 정보의 나머지로부터 맵 영역을 분리하는데 사용하는 주변을 정의한다. 대안적으로, 맵 정보의 세그먼트들은 대응 영역의 지역 내에서 간단한 그래프 워크를 행함으로써 식별될 수 있다. 그 다음에, 필터링된 맵 영역을 획득하기 위해 임의의 이전에 식별된 접근-금지 영역들이 맵 영역으로부터 제거된다.
그 다음에, 필터링된 맵 영역 내의 모든 나머지 세그먼트에게 비용 값이 배정된다. 비용들은, 예를 들어, 맵 정보 내의 데이터로부터 차량의 환경에 관한 선험적 지식에 기초하여 배정될 수 있다. 많은 비용 값들에 대해 영역들 사이에 상당한 중첩이 있을 것이기 때문에, 이러한 정보는 빠른 검색을 위해 로컬 캐시에 저장될 수 있다.
그 다음에, 비용 값들은 차량을 기동시키는 방법을 결정하기 위해 플래너 시스템에 제공될 수 있다. 예를 들어, 차량의 컴퓨팅 디바이스들은 로컬 영역 밖으로 이어지는 세그먼트들의 최저 비용 세트를 결정할 수 있다. 결과는 미래에 짧은 기간 동안 차량을 제어하는 방법을 계획하는데 사용될 수 있다.
플래너 시스템은 초당 여러 번 새로운 계획을 결정할 것이기 때문에, 많은 비용 값들이 간단히 로컬 캐시로부터 검색될 수 있다. 차량이 로컬 영역 내에서 움직일 때 변경할 가능성이 있는 것들(이를테면, 목적지까지의 시간에 관한 것들 등)은 필요에 따라 재계산될 수 있다. 또한, 새로운 로컬 영역이 계산될 때 모든 비용 값의 전부 또는 전부보다 적게 재계산될 수 있다.
위에 설명한 바와 같은 비용 값들을 사용함으로써, 차량의 컴퓨팅 디바이스들은 느리게 움직이거나 정지된 객체 주위를 위빙(weave)할지 아니면 통과(pass)할지에 관한 더 나은 의사 결정들을 실시할 수 있다. 따라서, 본 명세서에서 설명되는 피처들은 차량의 컴퓨팅 디바이스들이 차량을 실시간으로 제어하는 방법에 관한 더 나은 의사 결정들을 실시하는 것을 허용한다. 예를 들어, 라우팅 시스템은, 2개의 차선 세그먼트 사이에서 움직이기 위해 멀티-포인트 회전이 실행되어야 하는 경우에, 또는 주요 경로가 이용가능하지 않으면 보조 경로가 사용되어야 하는 경우에, 차선 변경이 강제되어야 하는지를 결정할 수 있다. 이것은 즉각적인 환경 조건들에 대한 차량의 이용가능한 응답들을 크게 개선하고 증가시키며, 이는 플래너 시스템이 목적지까지의 최상의 경로를 신속하고 효율적으로 발견하는 것을 허용한다. 또한, 이러한 방식으로 비용 값 계산들을 제한하고, 단지 목적지당 한번 모든 관련있는 접근-금지 영역들을 식별함으로써, 이것은 위에서 설명한 라우팅 및 계획 시스템들의 효율을 극적으로 증가시킨다.
예시적인 시스템들(EXAMPLE SYSTEMS)
도 1에 도시된 바와 같이, 본 개시내용의 하나의 양태에 따른 차량(100)은 다양한 컴포넌트들을 포함한다. 본 개시내용의 특정 양태들은 특정 타입들의 차량들과 관련하여 특히 유용한 한편, 차량은 승용차들, 트럭들, 오토바이들, 버스들, 레크리에이션 차량들 등을 포함하지만 이에 한정되지 않는, 임의의 타입의 차량일 수 있다. 차량은 범용 컴퓨팅 디바이스들에 통상적으로 존재하는 하나 이상의 프로세서(120), 메모리(130) 및 다른 컴포넌트들을 포함하는 컴퓨팅 디바이스들(110)과 같은, 하나 이상의 컴퓨팅 디바이스를 가질 수 있다.
메모리(130)는 프로세서(120)에 의해 실행되거나 아니면 달리 사용될 수 있는 명령어들(132) 및 데이터(134)를 포함하는, 하나 이상의 프로세서(120)에 의해 액세스가능한 정보를 저장한다. 메모리(130)는 컴퓨팅 디바이스-판독가능 매체, 또는 하드-드라이브, 메모리 카드, ROM, RAM, DVD 또는 다른 광학 디스크들과 같은 전자 디바이스의 도움으로 판독될 수 있는 데이터를 저장하는 다른 매체뿐만 아니라 다른 기입-가능 및 판독-전용 메모리들을 포함하는, 프로세서에 의해 액세스가능한 정보를 저장할 수 있는 임의의 타입일 수 있다. 시스템들 및 방법들은 전술한 것의 상이한 조합들을 포함할 수 있고, 명령어들 및 데이터의 상이한 부분들이 상이한 타입들의 매체 상에 저장된다.
명령어들(132)은 프로세서에 의해 (머신 코드와 같이) 직접적으로 또는 (스크립트들과 같이) 간접적으로 실행될 명령어들의 임의의 세트일 수 있다. 예를 들어, 명령어들은 컴퓨팅 디바이스-판독가능 매체상에 컴퓨팅 디바이스 코드로서 저장될 수 있다. 이와 관련하여, 용어들 "명령어들" 및 "프로그램들"은 본 명세서에서 상호대체가능하게 사용될 수 있다. 명령어들은 프로세서에 의한 직접 처리를 위한 객체 코드 포맷(object code format)으로, 또는 요구에 따라 해석(interpret)되거나 미리 컴파일링(compile)되는 독립적인 소스 코드 모듈들의 컬렉션들 또는 스크립트들을 포함하는 임의의 다른 컴퓨팅 디바이스 언어로 저장될 수 있다. 명령어들의 함수들, 메소드들 및 루틴들은 아래 더 상세히 설명된다.
데이터(134)는 명령어들(132)에 따라 프로세서(120)에 의해 검색, 저장 또는 수정될 수 있다. 예를 들어, 청구되는 발명의 요지가 임의의 특정한 데이터 구조에 의해 제한되지는 않지만, 데이터는 컴퓨팅 디바이스 레지스터들에, 복수의 상이한 필드 및 기록을 갖는 테이블, XML 문서들 또는 플랫 파일들과 같은 관계형 데이터베이스로 저장될 수 있다. 데이터는 또한 임의의 컴퓨팅 디바이스-판독가능 포맷으로 포맷화될 수 있다.
하나 이상의 프로세서(120)는 상업적으로 이용가능한 CPU들과 같은 임의의 종래의 프로세서들일 수 있다. 대안적으로, 하나 이상의 프로세서는 ASIC 또는 다른 하드웨어-기반 프로세서와 같은 전용 디바이스일 수 있다. 도 1이 컴퓨팅 디바이스(110)의 프로세서, 메모리, 및 다른 엘리먼트들을 동일한 블록 내에 있는 것으로 기능적으로 예시하지만, 프로세서, 컴퓨팅 디바이스, 또는 메모리는 동일한 물리적 하우징 내에 저장될 수 있거나 저장될 수 없는 다수의 프로세서, 컴퓨팅 디바이스, 또는 메모리를 실제로 포함할 수 있다는 것을 본 기술 분야의 통상의 기술자는 이해할 것이다. 예를 들어, 메모리는 컴퓨팅 디바이스들(110)의 하우징과는 상이한 하우징 내에 위치되는 하드 드라이브 또는 다른 저장 매체일 수 있다. 그에 따라, 프로세서 또는 컴퓨팅 디바이스에 대한 참조들은 병렬로 동작할 수 있거나 동작할 수 없는 프로세서들 또는 컴퓨팅 디바이스들 또는 메모리들의 컬렉션에 대한 참조들을 포함한다는 것이 이해될 것이다.
컴퓨팅 디바이스들(110)은 위에서 설명한 프로세서 및 메모리와 같은 컴퓨팅 디바이스뿐만 아니라 사용자 입력(150)(예컨대, 마우스, 키보드, 터치 스크린 및/또는 마이크로폰) 및 다양한 전자 디스플레이들(예컨대, 스크린을 갖는 모니터 또는 정보를 디스플레이하도록 동작가능한 임의의 다른 전기 디바이스)과 관련하여 정상적으로 사용되는 컴포넌트들 전부를 포함할 수 있다. 이러한 예에서, 차량은 정보 또는 시청각 경험들을 제공하기 위해 내부 전자 디스플레이(152)뿐만 아니라 하나 이상의 스피커(154)를 포함한다. 이와 관련하여, 내부 전자 디스플레이(152)는 차량(100)의 캐빈(cabin) 내에 위치될 수 있고, 차량(100) 내의 승객들에게 정보를 제공하기 위해 컴퓨팅 디바이스들(110)에 의해 사용될 수 있다.
컴퓨팅 디바이스들(110)은 아래 상세하게 설명되는 클라이언트 컴퓨팅 디바이스들 및 서버 컴퓨팅 디바이스들과 같은 다른 컴퓨팅 디바이스들과의 통신을 용이하게 하기 위한 하나 이상의 무선 네트워크 접속(156)을 또한 포함할 수 있다. 무선 네트워크 접속들은 블루투스(Bluetooth), 블루투스 저 에너지(low energy)(LE), 셀룰러 접속들과 같은 단 거리 통신 프로토콜들뿐만 아니라, 인터넷, 월드 와이드 웹(World Wide Web), 인트라넷(intranet)들, 가상적인 사설 네트워크들, 광역 네트워크들, 로컬 네트워크들, 하나 이상의 회사들에게 독점적인 통신 프로토콜들을 사용하는 사설 네트워크들, 이더넷, WiFi 및 HTTP를 포함하는 다양한 구성들과 프로토콜들, 및 전술한 것의 다양한 조합들을 포함할 수 있다.
하나의 예에서, 컴퓨팅 디바이스들(110)은 차량(100) 내로 통합되는 자율 주행 컴퓨팅 시스템일 수 있다. 자율 주행 컴퓨팅 시스템은 차량의 다양한 컴포넌트들과 통신 가능할 수 있다. 예를 들어, 도 1로 돌아가면, 컴퓨팅 디바이스들(110)은 메모리(130)의 명령어들(132)에 따라 차량(100)의 움직임, 속도 등을 제어하기 위해 감속 시스템(160), 가속 시스템(162), 조향 시스템(164), 시그널링 시스템(166), 라우팅 시스템(168), 포지셔닝 시스템(170), 및 지각 시스템(172)과 같은, 차량(100)의 다양한 시스템들과 통신 상태에 있을 수 있다. 다시, 이러한 시스템들이 컴퓨팅 디바이스들(110) 외부에 있는 것으로 도시되지만, 실제로, 이러한 시스템들은 또한 차량(100)을 제어하기 위한 자율 주행 컴퓨팅 시스템으로서 다시, 컴퓨팅 디바이스들(110) 내로 통합될 수 있다.
일례로서, 컴퓨팅 디바이스들(110)은 차량의 속도를 제어하기 위해 감속 시스템(160) 및 가속 시스템(162)과 상호작용할 수 있다. 유사하게, 조향 시스템(164)은 차량(100)의 방향을 제어하기 위해 컴퓨팅 디바이스들(110)에 의해 사용될 수 있다. 예를 들어, 승용차 또는 트럭과 같은 차량(100)이 도로상에서 사용하기 위해 구성되는 경우, 조향 시스템은 휠들의 각도를 제어하여 차량을 회전시키기 위한 컴포넌트들을 포함할 수 있다. 시그널링 시스템(166)은 예를 들어, 필요할 때 방향 지시등들(turn signals) 또는 브레이크등들(brake lights)을 점등시킴으로써, 다른 운전자들 또는 차량들에게 차량의 의도를 시그널링하기 위해 컴퓨팅 디바이스들(110)에 의해 사용될 수 있다.
라우팅 시스템(168)은 위치에 대한 루트를 결정하고 따르기 위해 컴퓨팅 디바이스들(110)에 의해 사용될 수 있다. 이와 관련하여, 라우팅 시스템(168) 및/또는 데이터(134)는 상세한 맵 정보, 예컨대, 도로들의 형상 및 표고(elevation), 차선 라인들, 교차로들, 횡단보도들, 속도 제한들, 교통 신호들, 건물들, 표지들, 실시간 교통 정보, 초목, 또는 다른 그러한 객체들 및 정보를 식별하는 고도로 상세한 맵들을 저장할 수 있다. 환언하면, 이러한 상세한 맵 정보는 도로들을 포함하는 차량의 예상된 환경의 지오메트리뿐만 아니라 이러한 도로들에 대한 속도 규제들(법적 속도 제한들)을 정의할 수 있다. 또한, 이러한 맵 정보는 지각 시스템(172)으로부터 수신된 실시간 정보와 함께, 컴퓨팅 디바이스들(110)에 의해 사용되어 교통의 어느 방향들이 주어진 위치에서 선행권을 갖는지를 결정할 수 있는 교통 신호등들, 정지 표지들, 양보 표지들 등과 같은, 교통 제어들에 관한 정보를 포함할 수 있다.
도 2a 및 도 2b는 교차로들(220, 222, 224)을 포함하는 도로의 섹션에 대한 맵 정보의 일례이다. 도 2a는 차선 마크들 또는 차선 라인들(210, 212, 214), 교통 신호들(230, 232, 234)(명확성 및 간략화를 위해 다른 도면들에서는 도시되지 않음), 정지 표지(240)(명확성 및 간략화를 위해 다른 도면들에서는 도시되지 않음)뿐만 아니라 정지선들(250, 252, 254)의 형상, 위치 및 다른 특성들을 식별하는 정보를 포함하는 맵 정보의 일부를 도시한다. 이러한 피처들에 추가로, 맵 정보는 또한 각각의 차선에 대한 교통의 방향뿐만 아니라 차선 라인들에 의해 정의된 차선들을 식별하는 정보에 더하여, 컴퓨팅 디바이스들(110)이 특정한 기동을 완료할(즉, 회전(turn)을 완료하거나 차도(lane of traffic) 또는 교차로를 횡단할) 선행권을 그 차량이 갖는지를 결정하는 것을 허용하는 정보를 포함할 수 있다.
피처 정보에 추가하여, 맵 정보는 일련의 도로 또는 차선 세그먼트들을 포함할 수 있다. 각각의 차선 세그먼트는 시작점, 종점 및 식별자에 의해 정의된다. 예를 들어, 도 2b는 예를 들어 차선 세그먼트들(270, 272, 274)을 포함하는 복수의 차선 세그먼트를 추가하여 도 2a의 정보의 대부분을 도시한다. 물론, 많은 차선 세그먼트들이 도시되지만, 명확성 및 간략화를 위해 소수만이 참조된다. 도 2b는 개방 원들(260, 262, 264, 266)과 같은 개방 원들로 이러한 시작점 및 종점을 도시한다. 물론, 시작점 및 종점을 각각 표현하는 많은 개방 원이 도시되지만, 명확성 및 간략화를 위해 소수만이 참조된다. 알 수 있는 바와 같이, 원(260)은 차선 세그먼트(270)에 대한 시작점을 표현하고, 원(262)은 세그먼트(270)에 대한 종점을 표현한다. 유사하게, 원(262)은 차선 세그먼트(272)에 대한 시작점을 표현하고, 원(264)은 차선 세그먼트(272)에 대한 종점을 표현한다. 게다가, 원(264)은 차선 세그먼트(274)에 대한 시작점을 표현하고, 원(266)은 차선 세그먼트(274)에 대한 종점을 표현한다. 도시되어 있지는 않지만, 이들 차선 세그먼트들 각각은 식별자, 예를 들어 차선 세그먼트의 상대 또는 실제 위치에 대응하는 숫자 값과 연관될 수 있다.
맵 정보는 또한 세그먼트들에 관한 추가적인 정보를 식별할 수 있다. 예를 들어, 도 2b에 도시된 바와 같이, 차선 세그먼트들(270 및 272)은 실선으로 도시되며, 이는 차선 세그먼트들(270 및 272)이 자율적으로 주행하는 차량에 이용가능하다는 것을 표시한다. 동시에, 차선 세그먼트(274)는 그 차선 세그먼트가 차량이 이동할 수 없는 접근-금지 영역에 대응한다는 것을 표시하기 위해 파선으로 도시된다. 이것은, 예를 들어, 알려진 공사의 지역들, 혼잡 지역들, 고속도로들(예를 들어, 차량이 고속도로에서 주행하거나 그렇게 고속으로 주행하는 것이 허가되지 않는 곳)에 대한 진입 램프들로 이어지는 차선들, 충분히 맵핑되지 않은(즉, 맵 정보에서 충분히 설명되지 않은) 지역들로 이어지는 차선들, 또는 다른 이유들 등을 포함할 수 있다. 물론, 많은 실선 차선 세그먼트들(자율적으로 주행하는 차량에 이용가능함) 및 파선 차선 세그먼트들(접근-금지 영역들)이 도시되지만, 명확성과 간략화를 위해 소수만이 참조된다.
맵 정보가 이미지-기반 맵으로서 본 명세서에 도시되지만, 이러한 맵 정보가 전적으로 이미지 기반(예를 들어, 래스터)일 필요는 없다. 예를 들어, 맵 정보는 도로들, 차선들, 교차로들, 및 이러한 피처들 사이의 접속들과 같은 정보의 하나 이상의 도로그래프 또는 그래프 네트워크를 포함할 수 있다. 각각의 피처는 그래프 데이터로서 저장될 수 있고, 지리적 위치 및 다른 관련 피처들에 링크되는지 여부, 예를 들어, 정지 표지가 도로 및 교차로에 링크될 수 있는지 등과 같은 정보와 연관될 수 있다. 일부 예들에서, 연관된 데이터는 도로그래프의 그리드-기반 인덱스들을 포함할 수 있어, 특정 도로그래프 피처들의 효율적인 룩업을 허용한다.
포지셔닝 시스템(170)은 맵 상의 또는 지면(earth) 상의 차량의 상대 또는 절대 포지션을 결정하기 위해 컴퓨팅 디바이스들(110)에 의해 사용될 수 있다. 예를 들어, 포지셔닝 시스템(170)은 디바이스의 위도, 경도 및/또는 고도 포지션을 결정하기 위해 GPS 수신기를 포함할 수 있다. 레이저-기반 측위(localization) 시스템들, 관성-보조(inertial-aided) GPS, 또는 카메라-기반 측위와 같은 다른 위치 시스템들이 또한 차량의 위치를 식별하는데 사용될 수 있다. 차량의 위치는 위도, 경도 및 고도와 같은 절대 지리적 위치뿐만 아니라 절대 지리적 위치보다 더 적은 잡음으로 흔히 결정될 수 있는 그 바로 주위의 다른 승용차들에 대한 위치와 같은 상대 위치 정보를 포함할 수 있다.
포지셔닝 시스템(170)은 또한 차량의 방향과 속도 또는 그들에 대한 변경들을 결정하기 위해 가속도계, 자이로스코프 또는 또 다른 방향/속도 검출 디바이스와 같은, 컴퓨팅 디바이스들(110)과 통신하는 다른 디바이스들을 포함할 수 있다. 단지 예로서, 가속 디바이스는 중력의 방향 또는 그에 수직인 평면에 대해 그의 피치(pitch), 요(yaw) 또는 롤(roll)(또는 그들에 대한 변경들)을 결정할 수 있다. 디바이스는 또한 그러한 변경들의 속도 및 방향에서의 증가들 또는 감소들을 추적할 수 있다. 본 명세서에 진술된 바와 같은 디바이스의 위치 및 배향 데이터의 제공은 컴퓨팅 디바이스들(110), 다른 컴퓨팅 디바이스들 및 전술한 것들의 조합들에 자동으로 제공될 수 있다.
지각 시스템(172)은 또한 다른 차량들, 도로에서의 장애물들, 교통 신호들, 표지들, 나무들 등과 같은 차량의 외부에 있는 객체들을 검출하기 위한 하나 이상의 컴포넌트를 포함한다. 예를 들어, 지각 시스템(172)은 레이저들, 소나, 레이더, 카메라들 및/또는 컴퓨팅 디바이스들(110)에 의해 처리될 수 있는 데이터를 기록하는 임의의 다른 검출 디바이스들을 포함할 수 있다. 차량이 승용차와 같은 소형 승객 차량인 경우에, 승용차는 지붕 또는 다른 편리한 위치에 장착된 레이저 또는 다른 센서들을 포함할 수 있다. 예를 들어, 차량의 지각 시스템은 객체들 및 그들의 특성들, 이를테면 위치, 배향, 크기, 형상, 타입, 움직임의 방향 및 속도 등을 검출하기 위해 LIDAR, 소나, 레이더, 카메라들 등과 같은 다양한 센서들을 사용할 수 있다. 센서들로부터의 원시 데이터 및/또는 앞서 언급한 특성들은 컴퓨팅 디바이스들(110)에 의한 처리를 위해 서술적 함수 또는 벡터로 정량화 또는 배열될 수 있다. 아래 더 상세히 논의되는 바와 같이, 컴퓨팅 디바이스들(110)은 포지셔닝 시스템(170)을 사용하여 차량의 위치를 결정하고 지각 시스템(172)을 사용하여 그 위치에 안전하게 도달할 필요가 있을 때 객체들을 검출하고 그들에 응답할 수 있다.
도 3a 내지 도 3d는 차량(100)의 외부 뷰들의 예들이다. 알 수 있는 바와 같이, 차량(100)은 헤드라이트들(302), 윈드쉴드(windshield)(303), 후미등들/방향 지시등들(304), 후방 윈드쉴드(305), 도어들(306), 사이드 뷰 미러(side view mirror)들(308), 타이어들과 휠들(310), 및 방향 지시/주차등들(312)과 같은, 통상적인 차량의 많은 피처를 포함한다. 헤드라이트들(302), 후미등들/방향 지시등들(304) 및 방향 지시/주차등들(312)은 시그널링 시스템(166)과 연관될 수 있다. 라이트 바(light bar)(307) 또한 시그널링 시스템(166)과 연관될 수 있다.
차량(100)은 또한 지각 시스템(172)의 센서들을 포함한다. 예를 들어, 하우징(314)은 360도 또는 더 좁은 시야들을 갖기 위한 하나 이상의 레이저 디바이스 및 하나 이상의 카메라 디바이스를 포함할 수 있다. 하우징들(316 및 318)은 예를 들어 하나 이상의 레이더 및/또는 소나 디바이스를 포함할 수 있다. 지각 시스템(172)의 디바이스들은 또한 후미등들/방향 지시등들(304) 및/또는 사이드 뷰 미러들(308)과 같은 통상적인 차량 컴포넌트들 내로 통합될 수 있다. 이러한 레이더, 카메라 및 레이저 디바이스들 각각은 지각 시스템(172)의 일부로서 이러한 디바이스들로부터의 데이터를 처리하고 센서 데이터를 컴퓨팅 디바이스들(110)에 제공하는 처리 컴포넌트들과 연관될 수 있다.
데이터(134)는 다음 10초 정도와 같은 사전 결정된 시간 기간 동안 객체의 미래의 거동을 예측하기 위한 다양한 거동-시간 모델들을 저장할 수 있다. 하나의 예에서, 거동-시간 모델들은 지각 시스템(172), 및 특히 또 다른 도로 사용자로부터 수신된 객체에 대한 데이터를 사용하도록 구성될 수 있는데, 이는 도로 사용자의 특성들뿐만 아니라 아래 더 상세히 논의되는 추가적인 맥락관련 정보를 포함한다. 일례로서, 지각 시스템(172)으로부터의 데이터에 포함된 위치, 헤딩, 속도, 및 다른 특성들을 고려하면, 거동-시간 모델들은 객체가 각각의 예측에 대한 대응하는 가능성 값뿐만 아니라 사전 결정된 시간 기간 동안 거동할 수 있는 방법에 대한 하나 이상의 예측의 세트를 제공할 수 있다. 예측들은 예를 들어 객체가 사전 결정된 시간 기간에 대응하는 미래에 다양한 시간에 있을 것으로 예상되는 미래의 위치들의 세트를 정의하는 궤적을 포함할 수 있다. 가능성 값들은 예측들 중 어느 것이 (서로에 대해) 발생할 가능성이 더 큰지를 표시할 수 있다. 이와 관련하여, 가장 큰 가능성 값을 갖는 예측은 발생할 가능성이 가장 클 수 있는 반면, 더 낮은 가능성 값들을 가진 예측들은 발생할 가능성이 더 적을 수 있다.
따라서, 거동-시간 모델들은 특정한 도로 사용자가 특정한 수평선 또는 사전 결정된 시간 기간(예컨대, 10초)에 걸쳐 무엇을 할 것인지에 대한 가능한 가설들 및 각각의 가설에 대한 상대적인 가능성들의 세트를 생성하도록 구성될 수 있다. 이러한 모델들은 그 위치에서 관찰된 객체가 과거에 어떻게 거동했는지, 직관 등에 관한 데이터를 사용하여 훈련될 수 있고, 또한 차량들, 보행자들, 오토바이들, 자전거를 탄 사람들 등과 같은 특정한 타입들의 객체들에 대해 구체적으로 지정될 수 있다. 그 다음에, 컴퓨팅 디바이스들(110)은 차량의 궤적과 상호작용하고 고려할 가치가 있는 충분한 가능성이 있는 가설에 관해 추론할 수 있다.
컴퓨팅 디바이스들(110)은 다양한 컴포넌트들을 제어함으로써 차량의 방향 및 속도를 제어할 수 있다. 예로서, 컴퓨팅 디바이스들(110)은 상세한 맵 정보, 지각 시스템(172) 및 라우팅 시스템(168)으로부터의 데이터를 사용하여 차량을 목적지 위치까지 완전히 자율적으로 내비게이팅할 수 있다. 차량을 기동시키기 위해, 컴퓨팅 디바이스들(110)은 차량이 (예컨대, 가속 시스템(162)에 의해 엔진에 제공되는 연료 또는 다른 에너지를 증가시킴으로써) 가속되게 하고, (예컨대, 감속 시스템(160)에 의해 엔진에 공급되는 연료를 감소시키고, 기어들을 변경하고/하거나 브레이크들을 밟음으로써) 감속되게 하고, (예컨대, 조향 시스템(164)에 의해 차량(100)의 전방 또는 후방 휠들을 회전시킴으로써) 방향을 변경하게 하고, (예컨대, 시그널링 시스템(166)의 방향 지시등들을 점등함으로써) 그러한 변경들을 시그널링하게 할 수 있다. 따라서, 가속 시스템(162) 및 감속 시스템(160)은 차량의 엔진 및 차량의 휠들 사이의 다양한 컴포넌트들을 포함하는 구동렬(drivetrain)의 일부일 수 있다. 다시, 이들 시스템들을 제어함으로써, 컴퓨팅 디바이스들(110)은 또한 차량을 자율적으로 기동시키기 위해 차량의 구동렬을 제어할 수 있다.
차량(100)의 하나 이상의 컴퓨팅 디바이스(110)는 또한 다른 컴퓨팅 디바이스들에 정보를 이송하거나 그들로부터 정보를 수신할 수 있다. 도 4 및 도 5는, 각각, 네트워크(460)를 통해 접속되는 복수의 컴퓨팅 디바이스(410, 420, 430, 440) 및 저장 시스템(450)을 포함하는 예시적인 시스템(400)의 회화 및 기능적 다이어그램들이다. 시스템(400)은 또한 차량(100), 및 차량(100)과 유사하게 구성될 수 있는 차량(100A)을 포함한다. 간략화를 위해 소수의 차량들 및 컴퓨팅 디바이스들만이 도시되지만, 통상적인 시스템은 훨씬 더 많이 포함할 수 있다.
도 4에 도시된 바와 같이, 컴퓨팅 디바이스들(410, 420, 430, 440) 각각은 하나 이상의 프로세서, 메모리, 데이터 및 명령어를 포함할 수 있다. 그러한 프로세서들, 메모리들, 데이터 및 명령어들은 컴퓨팅 디바이스들(110)의 하나 이상의 프로세서(120), 메모리(130), 데이터(134) 및 명령어(132)와 유사하게 구성될 수 있다.
네트워크(460), 및 중간 노드들은 블루투스, 블루투스 LE와 같은 단 거리 통신 프로토콜들, 인터넷, 월드 와이드 웹, 인트라넷들, 가상 사설 네트워크들, 광역 네트워크들, 로컬 네트워크들, 하나 이상의 회사 전용 통신 프로토콜들을 사용하는 사설 네트워크들, 이더넷, WiFi 및 HTTP를 포함하는 다양한 구성들과 프로토콜들, 및 전술한 것들의 다양한 조합들을 포함할 수 있다. 그러한 통신은 모뎀들 및 무선 인터페이스들과 같은, 다른 컴퓨팅 디바이스들에게 그리고 그들로부터 데이터를 송신할 수 있는 임의의 디바이스에 의해 용이해질 수 있다.
하나의 예에서, 하나 이상의 컴퓨팅 디바이스(410)는 다른 컴퓨팅 디바이스들에게 그리고 그들로부터 데이터를 수신, 처리 및 송신하는 것을 목적으로 네트워크의 상이한 노드들과 정보를 교환하는 복수의 컴퓨팅 디바이스를 갖는 서버, 예컨대, 로드 밸런싱 서버 팜(load balanced server farm)을 포함할 수 있다. 예를 들어, 하나 이상의 컴퓨팅 디바이스(410)는 네트워크(460)를 통해 차량(100)의 하나 이상의 컴퓨팅 디바이스(110) 또는 차량(100A)의 유사한 컴퓨팅 디바이스뿐만 아니라 클라이언트 컴퓨팅 디바이스들(420, 430, 440)과 통신할 수 있는 하나 이상의 서버 컴퓨팅 디바이스를 포함할 수 있다. 예를 들어, 차량들(100 및 100A)은 서버 컴퓨팅 디바이스들에 의해 다양한 위치들로 디스패치될 수 있는 차량들의 플리트(fleet)의 일부일 수 있다. 이와 관련하여, 플리트의 차량들은 차량의 각자의 포지셔닝 시스템들에 의해 제공되는 서버 컴퓨팅 디바이스 위치 정보를 주기적으로 전송할 수 있고, 하나 이상의 서버 컴퓨팅 디바이스는 차량들의 위치들을 추적할 수 있다.
또한, 서버 컴퓨팅 디바이스들(410)은 컴퓨팅 디바이스들(420, 430, 440)의 디스플레이들(424, 434, 444)과 같은 디스플레이상에서 사용자(422, 432, 442)와 같은 사용자에게 정보를 송신 및 제시하기 위해 네트워크(460)를 사용할 수 있다. 이와 관련하여, 컴퓨팅 디바이스들(420, 430, 440)은 클라이언트 컴퓨팅 디바이스들로서 고려될 수 있다.
도 5에 도시된 바와 같이, 각각의 클라이언트 컴퓨팅 디바이스(420, 430, 440)는 사용자(422, 432, 442)가 사용하도록 의도된 개인용 컴퓨팅 디바이스일 수 있고, 개인용 컴퓨팅 디바이스와 관련하여 정상적으로 사용되는 하나 이상의 프로세서(예컨대, 중앙 처리 장치(CPU)), 데이터 및 명령어들을 저장하는 메모리(예컨대, RAM 및 내부 하드 드라이브들), 디스플레이들(424, 434, 444)과 같은 디스플레이(예컨대, 스크린, 터치-스크린, 프로젝터, 텔레비전, 또는 정보를 디스플레이하도록 동작가능한 다른 디바이스를 갖는 모니터), 및 사용자 입력 디바이스들(예컨대, 마우스, 키보드, 터치-스크린 또는 마이크로폰)을 포함하는 컴포넌트들 전부를 가질 수 있다. 클라이언트 컴퓨팅 디바이스들은 또한 비디오 스트림들을 기록하기 위한 카메라, 스피커들, 네트워크 인터페이스 디바이스, 및 이러한 엘리먼트들을 서로 접속하기 위해 사용되는 컴포넌트들 전부를 포함할 수 있다.
클라이언트 컴퓨팅 디바이스들(420, 430 및 440)은 각각 풀-사이즈의 개인용 컴퓨팅 디바이스를 포함할 수 있지만, 그들은 대안적으로 인터넷과 같은 네트워크를 통해 서버와 데이터를 무선으로 교환할 수 있는 모바일 컴퓨팅 디바이스들을 포함할 수 있다. 단지 예로서, 클라이언트 컴퓨팅 디바이스(420)는 인터넷 또는 다른 네트워크들을 통해 정보를 획득할 수 있는, 무선-인에이블 PDA, 태블릿 PC, 웨어러블 컴퓨팅 디바이스 혹은 시스템, 랩톱, 또는 넷북과 같은 디바이스 또는 모바일 폰일 수 있다. 또 다른 예에서, 클라이언트 컴퓨팅 디바이스(430)는 도 4에 도시된 바와 같은 "스마트 시계"와 같은 웨어러블 컴퓨팅 디바이스일 수 있다. 일례로서, 사용자는 키보드, 키패드, 다-기능 입력 버튼, 마이크로폰, 카메라나 다른 센서들에 의한 시각적 신호들(예를 들어, 손 또는 다른 제스처들), 터치 스크린 등을 사용하여 정보를 입력할 수 있다.
일부 예들에서, 클라이언트 컴퓨팅 디바이스(440)는 사용자들(422 및 432)과 같은 사용자들에게 컨시어지(concierge) 서비스들을 제공하기 위해 관리자(administrator)에 의해 사용되는 컨시어지 워크 스테이션일 수 있다. 예를 들어, 사용자(442)는 아래 더 상세하게 설명되는 바와 같이 차량들(100 및 100A)의 안전한 동작 및 사용자들의 안전을 보장하기 위해 그들의 각자의 클라이언트 컴퓨팅 디바이스들 또는 차량들(100 또는 100A)을 통한 사용자들과의 전화 호출 또는 오디오 접속 경유하여 통신하는 컨시어지 워크 스테이션(440)을 사용하는 컨시어지일 수 있다. 도 4 및 도 5에는 단일 컨시어지 워크 스테이션(440)만 도시되지만, 임의의 수의 그러한 워크 스테이션들이 통상적인 시스템에 포함될 수 있다.
저장 시스템(450)은 다양한 타입들의 정보를 저장할 수 있다. 이러한 정보는, 본 명세서에서 설명되는 피처들 중 일부 또는 전부를 수행하기 위해, 하나 이상의 서버 컴퓨팅 디바이스(410)와 같은 서버 컴퓨팅 디바이스에 의해 검색 또는 달리 액세스될 수 있다. 예를 들어, 정보는 하나 이상의 서버 컴퓨팅 디바이스에 대한 사용자를 식별하는데 사용될 수 있는 크리덴셜들(credentials)(예컨대, 전통적인 단일-인자 인증(single-factor authentication)의 경우에서와 같은 사용자 이름 및 패스워드뿐만 아니라, 랜덤 식별자들, 생체인식들 등과 같은 멀티-인자 인증들에서 통상적으로 사용되는 다른 타입들의 크리덴셜들)과 같은 사용자 계정 정보를 포함할 수 있다. 사용자 계정 정보는 또한 사용자의 클라이언트 컴퓨팅 디바이스(또는 다수의 디바이스가 동일한 사용자 계정에 의해 사용되는 디바이스들)의 정보를 식별하는, 사용자의 이름, 연락처 정보와 같은 개인 정보뿐만 아니라 사용자에 대한 하나 이상의 고유 신호를 포함할 수 있다.
메모리(130)와 마찬가지로, 저장 시스템(450)은, 하드-드라이브, 메모리 카드, ROM, RAM, DVD, CD-ROM, 기입-가능 및 판독-전용 메모리들과 같은, 서버 컴퓨팅 디바이스들(410)에 의해 액세스가능한 정보를 저장할 수 있는 임의의 타입의 컴퓨터화된 스토리지일 수 있다. 게다가, 저장 시스템(450)은 동일한 또는 상이한 지리적 위치들에 물리적으로 위치될 수 있는 복수의 상이한 저장 디바이스 상에 데이터가 저장되는 분산형 저장 시스템을 포함할 수 있다. 저장 시스템(450)은 도 4에 도시된 바와 같이 네트워크(460)를 통해 컴퓨팅 디바이스들에 접속될 수 있고/있거나 컴퓨팅 디바이스들(110, 410, 420, 430, 440 등) 중 임의의 것에 직접 접속되거나 통합될 수 있다.
예시적 방법들(EXAMPLE METHODS)
위에 설명되고 도면들에서 예시되는 동작들에 더하여, 다양한 동작들에 대해 이제 설명될 것이다. 다음의 동작들이 아래 설명되는 정확한 순서로 수행될 필요는 없다는 것이 이해되어야 한다. 오히려, 다양한 단계들이 상이한 순서로 또는 동시에 핸들링될 수 있으며, 단계들이 추가되거나 생략될 수도 있다.
하나의 양태에서, 사용자는 차량을 요청하기 위한 애플리케이션을 클라이언트 컴퓨팅 디바이스에 다운로드할 수 있다. 예를 들어, 사용자들(422 및 432)은 이메일 내의 링크를 통해, 웹사이트로부터 직접, 또는 애플리케이션 스토어를 경유하여 애플리케이션을 클라이언트 컴퓨팅 디바이스들(420 및 430)에 다운로드할 수 있다. 예를 들어, 클라이언트 컴퓨팅 디바이스는 네트워크를 통해 애플리케이션에 대한 요청을, 예를 들어 하나 이상의 서버 컴퓨팅 디바이스(410)에 송신하고, 이에 응답하여 애플리케이션을 수신할 수 있다. 애플리케이션은 클라이언트 컴퓨팅 디바이스에 로컬로 설치될 수 있다.
그 다음에, 사용자는 그 또는 그녀의 클라이언트 컴퓨팅 디바이스를 사용하여 애플리케이션에 액세스하고 차량을 요청할 수 있다. 일례로서, 사용자(432)와 같은 사용자는 클라이언트 컴퓨팅 디바이스(430)를 사용하여 차량에 대한 요청을 하나 이상의 서버 컴퓨팅 디바이스(410)에 전송할 수 있다. 요청은 픽업 위치 또는 지역 및/또는 목적지 위치 또는 지역을 식별하는 정보를 포함할 수 있다. 이에 응답하여, 하나 이상의 서버 컴퓨팅 디바이스(410)는 예를 들어 이용가능성 및 위치에 기초하여 차량을 식별하고 픽업 위치로 디스패치할 수 있다. 이러한 디스패치는 사용자(및/또는 사용자의 클라이언트 컴퓨팅 디바이스), 픽업 위치 및 목적지 위치 또는 지역에 차량을 배정하기 위해 사용자(및/또는 사용자의 클라이언트 디바이스)를 식별하는 정보를 차량에 전송하는 것을 수반할 수 있다.
차량(100)이 차량을 디스패치하는 정보를 수신하면, 차량의 하나 이상의 컴퓨팅 디바이스(110)는 위에 설명한 다양한 피처들을 사용하여 차량을 픽업 위치로 기동시킬 수 있다. 지금 승객인 사용자가 차량 내에 안전하게 있으면, 컴퓨팅 디바이스들(110)은 목적지 위치로의 루트를 따라 자율적으로 차량을 제어하기 위해 필요한 시스템들을 개시할 수 있다. 예를 들어, 내비게이션 시스템(168)은 데이터(134)의 맵 정보를 사용하여 맵 정보의 차선 세그먼트들의 세트를 따르는 목적지 위치로의 경로 또는 루트를 결정할 수 있다. 그 다음에, 컴퓨팅 디바이스들(110)은 목적지로 향하는 루트를 따라 위에서 설명한 바와 같이 자율적으로(또는 자율 주행 모드로) 차량을 기동시킬 수 있다.
도 6은 도 2a 및 도 2b의 맵 정보에 정의된 도로의 섹션에 대응하는 도로의 섹션의 예시적인 뷰이다. 예를 들어, 도 6은 교차로들(220, 222, 224)에 대응하는 교차로들(620, 622, 624)을 도시한다. 게다가, 차선 라인들(610, 612 및 614)의 형상, 위치 및 다른 특성들은 차선 라인들(210, 212, 214)의 형상, 위치 및 다른 특성들에 대응한다. 유사하게, 교통 신호들(630, 632, 634)(명확성 및 간략화를 위해 다른 도면들에서는 도시되지 않음)은 교통 신호들(230, 232, 234)에 대응하고, 정지 표지(640)(명확성 및 간략화를 위해 다른 도면들에서는 도시되지 않음)는 정지 표지(240)에 대응하며, 정지선들(650, 652, 654)은 정지선들(250, 252, 254)에 대응한다.
차선 세그먼트들을 함께 접속시킴으로써, 라우팅 시스템(168)은 2개의 위치 사이의 루트를 생성할 수 있다. 예를 들어, 도 6은 시작 위치(즉, 차량(100)의 시작 위치)를 표현하는 마커(670)와 목적지 위치를 표현하는 마커(672) 사이의 루트(660)를 도시한다. 알 수 있는 바와 같이, 루트(660)는 시작 위치와 목적지 위치 사이에 함께 연결된 도 2b의 맵 정보의 복수의 차선 세그먼트를 포함한다. 물론, 그러한 루트들은 맵 정보에서 접근-금지 영역들로서 식별되는 어떠한 차선 세그먼트들도 포함하지 않는다.
루트가 식별되면, 목적지 위치에 대한 모든 관련있는 접근-금지 영역들이 식별될 수 있다. 간단한 그래프 워크가 목적지에서 시작해서 시작 위치를 향해 사용될 수 있다. 본질적으로, 이것은 목적지가 일정하게 유지되고 차량을 목적지에 가제 하지 못할 모든 세그먼트를 식별하는 것으로 가정한다. 예를 들어, 마커(672)에 의해 표현된 목적지가 일정하게 유지되는 것으로 가정하면, 도 7은 차선 세그먼트(274)를 포함하는, 루트(660)가 통과하는 영역들 내에 있는 도 2b의 맵 정보로부터의 접근-금지 영역들(파선으로 도시된 차선 세그먼트들) 전부를 도시한다. 게다가, 도 7은 접근-금지 영역들처럼 상세한 맵 정보에는 포함되지 않지만, 차량을 마커(672)의 목적지 위치까지 가지 못하게 할 차선 세그먼트들에 대응하는 (파선으로 도시된) 라인 세그먼트들(710, 720, 730)에 대응하는 추가적인 접근-금지 영역들을 도시한다. 이 시점에 다른 상세한 분석은 요구되지 않으므로, 이러한 결정은 목적지당 한 번만 행해질 수 있다.
차량의 현재 위치를 사용하여, 로컬 영역이 식별될 수 있다. 이러한 로컬 영역은 차량 뒤의 일부 작은 영역뿐만 아니라 차량 (이동 방향의) 전방 및 차량(으로부터 횡 방향들의) 주위에 있는 지역을 포함할 수 있다. 예를 들어, 로컬 영역은 차량이 방금 있었던 마지막 10초 정도뿐만 아니라, 그 다음 45초 정도와 같은, 일부 사전 결정된 시간 기간 내에 차량이 아마도 도달할 수 있는 모든 지역에 대응할 수 있다. 도 8은 도 2a 및 도 2b의 맵 정보를 갖는 마커(670)(도시되지 않음)의 시작 위치에서의 차량(100)을 도시한다. 로컬 영역(800)은 차량(100)이 사전 결정된 시간 기간 내에 도달할 수 있는 차선 세그먼트들을 커버하는 지역을 표현한다. 이러한 로컬 영역은 주기적으로, 예를 들어, 2-3초 정도 마다 식별될 수 있다.
그 다음에, 로컬 영역이 사용되어 간단한 그래프 컷을 수행하는데, 환언하면, 로컬 영역을 사용해서 주변을 정의하여 맵 정보의 나머지로부터 맵 영역을 분리한다. 예를 들어, 로컬 영역(800)의 그래프 컷은 도 9에 도시된 바와 같은 맵 영역(900)을 초래할 것이다. 이것은 맵 영역 내의 차선 세그먼트들 모두를 식별한다. 대안적으로, 맵 정보의 세그먼트들은 그 영역의 그 지역 내에서 간단한 그래프 워크를 행함으로써 식별될 수 있다.
그 다음에, (목적지 위치에 기초하여 식별된 임의의 추가적인 접근-금지 영역들뿐만 아니라 맵 정보로부터의) 임의의 이전에 식별된 접근-금지 영역들은 맵 영역으로부터 제거되어 필터링된 맵 영역을 제공한다. 예를 들어, 맵 영역(900)으로부터 도 7에 도시된 이전에 식별된 접근-금지 영역들(파선으로 도시된 차선 세그먼트들)을 필터링하는 것은 도 10의 필터링된 맵 영역(1000)을 초래할 것이다.
그 다음에, 필터링된 맵 영역에서의 모든 나머지 차선 세그먼트에 비용 값이 배정된다. 비용들은 차량의 환경의 선험적 지식에 기초하여 배정될 수 있다. 예를 들어, 비용들은, 차선 세그먼트가 차선(100)이 새로운 차선에 합류할 것을 요구하는지, 차선 세그먼트가 또 다른 차량이 새로운 차선에 합류해야 한다고 요구하는지, 차선 세그먼트가 혼잡한 상업 지역에서 최우측 차선인지(즉 심한 노상 주차, 현물(spots) 밖으로 후진 또는 이동하는 차량들, 보행자 통행이 있음), 차선 세그먼트가 활발한 진입로 또는 진입로들이 있는 최우측 차선인지(즉, 진입로 또는 진입로들을 떠나려고 시도하는 다른 차량들이 있음), 차선 세그먼트가 좁은 도로에 대응하는지, 차선 세그먼트가 한쪽 또는 양쪽에 주차된 많은 차량이 습관적으로 있어 좁혀진 도로에 대응하는지, 차선 세그먼트가 차량이 특정한 타입의 회전(즉, 보호 좌회전, 4방향 정지시 좌회전, 통제되지 않은 교차로에서의 좌회전, 비보호 좌회전 등)을 실시할 것을 요구할 것인지, 차선 세그먼트가 특정한 분류(즉, 프리웨이, 익스프레스웨이, 간선도로, 대로, 교외, 도시, 주거용, 주차장 등)를 갖는 도로에 대응하는지, 차선 세그먼트가 공사 지역에 대응하는지, 차선 세그먼트로부터 목적지에 도달하는 시간의 양 등에 기초하여 각각의 차선 세그먼트에 배정될 수 있다. 많은 비용 값들에 대한 영역들 사이의 상당한 중첩이 존재할 것이므로, 이러한 정보는 빠른 검색을 위해 로컬 캐시에 저장될 수 있다.
그 다음에, 비용 값들은 차량을 기동시키는 방법을 결정하기 위해 플래너 시스템에 제공될 수 있다. 예를 들어, 차량의 컴퓨팅 디바이스들은 로컬 영역 밖으로 이어지는 세그먼트들의 최저 비용 세트를 결정할 수 있다. 목적지에 도달하는 시간의 양과 관련하여, 컴퓨팅 디바이스들은 차량의 현재 또는 미래의 위치로부터 로컬 영역의 에지까지 가기 위한 비용을 최소화하려고 시도할 수 있다. 게다가, 컴퓨팅 디바이스들은 또한 로컬 영역의 에지들에서 다양한 차선 세그먼트들로부터 목적지까지 가는 비용을 고려할 수 있고, 로컬 영역 내의 어느 경로들이 사용되어야 하는지를 식별할 때 이것을 인자로서 사용할 수 있다. 예를 들어, 로컬 영역으로부터 2개가 존재하는 경우; 그 중 하나는 목적지로부터 2분이고, 그 중 다른 하나는 목적지로부터 20분이고, 로컬 영역 내의 어느 경로들이 다른 것들에 비해 선호되는지(더 낮은 비용들을 갖는지)를 컴퓨팅 디바이스들에게 알리기 위해 18분 차이가 사용될 수 있다. 결과는 미래에 짧은 기간, 예를 들어, 그 다음 10초 정도 동안 차량을 제어하는 방법을 계획하는데 사용될 수 있다.
플래너 시스템은 초당 여러 번 새로운 계획을 결정할 것이기 때문에, 많은 비용 값이 간단히 차량의 컴퓨팅 디바이스들 내의 로컬 캐시에 저장 및 그로부터 검색될 수 있다. 차량이 로컬 영역 내에서 움직일 때 변경할 가능성이 있는 것들(이를테면, 목적지까지의 시간에 관한 것들 등)은 필요에 따라 재계산될 수 있다. 게다가, 새로운 로컬 영역이 계산될 때, 비용 값들 전부 또는 전부보다 적게 재계산될 수 있다.
위에 설명한 바와 같은 비용 값들을 사용함으로써, 차량의 컴퓨팅 디바이스들은 느리게 움직이거나 정지된 객체 주위를 위빙(weave)할지 아니면 통과할지에 관한 더 나은 의사 결정들을 실시할 수 있다. 도 11 내지 도 14는 이러한 시나리오들의 예들을 제공한다. 도 11은 연속적인 직선이 회전하는 것보다 덜 최적이지만 여전히 옵션인 느리게 이동하거나 정지된 차량 주위의 위빙의 예이다. 이러한 예에서, 차량(100)은 교차로(624)를 향해 움직이고 있다. 차량(1100)은 또한 교차로(624)에 접근하고 있고 차량(100)과 동일한 차선에 있다. 위에 언급한 바와 같이, 차량(1100)은 느리게 움직이거나 정지된 차량일 수 있다.
도 2b의 차선 세그먼트들의 서브세트는 검은색 실선, 회색 실선, 또는 파선으로 도시된다. 검은색 실선 차선 세그먼트들(이를테면, 라인 세그먼트들(1120, 1122, 1124))은 더 낮은 비용의 값들을 갖는 차선 세그먼트들을 표현한다. 이와 관련하여, 이러한 검은색 실선 차선 세그먼트들은 차량이 교차로(624)에서 우회전을 실시하는 차량을 포함하는 목적지(도시되지 않음)까지 따라가는 루트에 실제로 대응할 수 있다. 회색 실선 차선 세그먼트들(이를테면, 차선 세그먼트들(1130, 1132, 1134))은 검은색 실선 라인 세그먼트들보다 더 높은 비용 값들을 갖는 차선 세그먼트들을 표현한다. 파선 차선 세그먼트들(이를테면, 차선 세그먼트들(1140, 1142, 1144))은 (도 2b에 도시된 바와 같이) 접근-금지 영역들과 연관된 차선 세그먼트들을 표현하거나, 간단히 회색 실선 차선 세그먼트들보다 더 높은 비용 값들을 갖는다는 것을 표현한다. 물론, 명확성과 간략화를 위해 도 2b의 차선 세그먼트들의 서브세트만이 도시된다. 이러한 예에서, 컴퓨팅 디바이스들은 차량(100)이 교차로에서 실제로 우회전을 실시하지 않고 교차로(624)를 통하여 차량(1100) 주위로 기동하도록 제어할 수 있다. 물론, 컴퓨팅 디바이스들(110)은 높은 비용 값들을 고려하여 파선 차선 세그먼트들을 사용하지 않을 것이다.
도 12는 연속적인 직선이 옵션이 아닌 느리게 이동하거나 정지된 차량 주위의 위빙의 일례이다. 이러한 예에서, 차량(100)은 교차로(624)를 향해 움직이고 있다. 차량(1200)은 또한 교차로(624)에 접근하고 있고 차량(100)과 동일한 차선에 있다. 위에서 언급된 바와 같이, 차량(1200)은 느리게 이동하거나 정지된 차량일 수 있다.
도 2b의 차선 세그먼트들의 서브세트는 검은색 실선, 회색 실선, 또는 파선으로 도시된다. 검은색 실선 차선 세그먼트들(이를테면, 라인 세그먼트들(1220, 1222, 1224))은 더 낮은 비용의 값들을 갖는 차선 세그먼트들을 표현한다. 이와 관련하여, 이러한 검은색 실선 차선 세그먼트들은 차량이 교차로(620)에서 우회전을 실시하는 차량을 포함하는 목적지(도시되지 않음)까지 따라가는 루트에 실제로 대응할 수 있다. 회색 실선 차선 세그먼트들(이를테면, 차선 세그먼트들(1230, 1232, 1234))은 검은색 실선 라인 세그먼트들보다 더 높은 비용 값들을 갖는 차선 세그먼트들을 표현한다. 파선 차선 세그먼트들(이를테면, 차선 세그먼트들(1240, 1242))은 (도 2b에 도시된 바와 같이) 접근-금지 영역들과 연관되거나, 간단히 회색 실선 차선 세그먼트들보다 더 높은 비용 값들을 갖는 차선 세그먼트들을 표현한다. 물론, 명확성과 간략화를 위해 도 2b의 차선 세그먼트들의 서브세트만이 도시된다. 이러한 예에서, 컴퓨팅 디바이스들은 차량(100)이 교차로(620)를 통하지 않고 차량(1200) 주위로 기동하도록 제어할 수 있다. 여기서, 그들은 접근-금지 영역들(또는 대안적으로, 매우 높은 비용 값들)을 표현하기 때문에, 컴퓨팅 디바이스들은 라인 세그먼트들(1240, 1242)을 사용하지 않을 것이다. 따라서, 차량(100)이 우회전을 실시하지 않고 교차로(620)를 통하여 계속되는 것이 방지될 것이다.
유사하게, 컴퓨팅 디바이스들(110)은 특정한 차선에서 구동할지에 관한 결정들을 실시할 수 있다. 예를 들어, 혼잡한 도로들 상에서 우측 차선에서의 주행을 피하려고 시도하는 것이 필요할 수 있는 반면, 좌측 차선을 피하는 것 또한 도 13의 예에서와 같은 안전상의 이유들로 중요할 수 있다. 이러한 예에서, 차량(100)은 교차로(622)를 향해 움직이고 있다. 도 2b의 차선 세그먼트들의 서브세트는 검은색 실선, 회색 실선, 또는 파선으로 도시된다. 검은색 실선 차선 세그먼트들(이를테면, 라인 세그먼트들(1320, 1322, 1324))은 더 낮은 비용의 값들을 갖는 차선 세그먼트들을 표현한다. 이와 관련하여, 이러한 검은색 실선 차선 세그먼트들은 차량이 교차로(622)를 통하여 이동하는 차량을 포함하는 목적지(도시되지 않음)까지 따라가는 루트에 실제로 대응할 수 있다. 회색 실선 차선 세그먼트들(이를테면, 차선 세그먼트들(1330, 1332, 1334))은 검은색 실선 라인 세그먼트들보다 더 높은 비용 값들을 갖는 차선 세그먼트들을 표현한다. 파선 차선 세그먼트들(이를테면, 차선 세그먼트들(1340, 1342, 1344))은 (도 2b에 도시된 바와 같이) 접근-금지 영역들과 연관되거나, 간단히 회색 실선 차선 세그먼트들보다 더 높은 비용 값들을 갖는 차선 세그먼트들을 표현한다. 물론, 명확성과 간략화를 위해 도 2b의 차선 세그먼트들의 서브세트만이 도시된다. 이러한 예에서, 컴퓨팅 디바이스들은 차선 세그먼트들(1320, 1322, 1324, 1330, 1332, 1334)(우측 또는 중간 차선들) 중 임의의 것 상의, 더 낮은 비용 값들로 인해 차선 세그먼트들(1320, 1322, 1324)(중간 차선)에 대한 선호도를 갖는, 차량을 기동시키도록 차량(100)을 제어할 수 있다. 여기서, 그들은 접근-금지 영역들(또는 대안적으로, 매우 높은 비용 값들)을 표현하기 때문에, 컴퓨팅 디바이스들은 라인 세그먼트들(1340, 1342 및 1344)(좌측 차선)을 사용하지 않을 것이다. 따라서, 차량(100)은 중간 또는 우측 차선들에서 주행하는 것이 허가되면서, 좌측 차선에서 주행하는 것이 방지될 것이다.
비용 값들은 또한 차량의 컴퓨팅 디바이스들이 (도 12의 예에서와 같이) 하나의 방향 또는 다수의 방향에서의 강제 차선 변경들을 식별하게 허용할 수 있다. 예를 들어, 도 14는 강제 차선 변경을 도시하지만, 2개의 옵션(우회전 또는 좌회전/U-턴)을 포함한다. 이러한 예에서, 차량(100)은 교차로(622)를 향해 움직이고 있다. 도 2b의 차선 세그먼트들의 서브세트는 검은색 실선, 회색 실선, 또는 파선으로 도시된다. 검은색 실선 차선 세그먼트들(이를테면, 라인 세그먼트들(1320, 1322, 1324))은 더 낮은 비용의 값들을 갖는 차선 세그먼트들을 표현한다. 이와 관련하여, 이러한 검은색 실선 차선 세그먼트들은 차량이 교차로(622)를 통해 이동하고 우회전을 실시하는 차량을 포함하는 목적지(도시되지 않음)까지 따라가는 루트에 실제로 대응할 수 있다. 회색 실선 차선 세그먼트들(이를테면, 차선 세그먼트들(1330, 1332, 1334))은 검은색 실선 라인 세그먼트들보다 더 높은 비용 값들을 갖는 차선 세그먼트들을 표현하고, 이러한 예에서, 교차로(622)를 통하여 이동하고 교차로(622)에서 좌회전 또는 U-턴을 실시하는 차량에 대응한다. 파선 차선 세그먼트들(이를테면, 차선 세그먼트들(1340, 1342, 1344))은 (도 2b에 도시된 바와 같이) 접근-금지 영역들과 연관되거나, 간단히 회색 실선 차선 세그먼트들보다 더 높은 비용 값들을 갖는 차선 세그먼트들을 표현한다. 물론, 명확성과 간략화를 위해 도 2b의 차선 세그먼트들의 서브세트만이 도시된다. 이러한 예에서, 컴퓨팅 디바이스들은 차선 세그먼트들(1320, 1322, 1324, 1330, 1332, 1334)(우측 또는 중간 차선들) 중 임의의 것 상의, 더 낮은 비용 값들로 인해 차선 세그먼트들(1320, 1322, 1324)(우측 차선)에 대한 선호도를 갖는, 차량을 기동하도록 차량(100)을 제어할 수 있다. 여기서, 그들은 접근-금지 영역들(또는 대안적으로, 매우 높은 비용 값들)을 표현하기 때문에, 컴퓨팅 디바이스들은 라인 세그먼트들(1340, 1342 및 1344)(좌측 차선)을 사용하지 않을 것이다. 따라서, 라인 세그먼트들(1340, 1342 및 1344)은 차량이 우측 중간 또는 좌측 차선에서 교차로를 통하여 진행하는 것을 방지할 것이다. 게다가, 라인 세그먼트들(1340, 1342 및 1344)은 교차로(622)에서 우회전(세그먼트들(1322 및 1324)을 따라감) 또는 좌회전/U-턴(세그먼트들(1432 및 1434)을 따라감)을 실시하게 차량(100)을 제어하도록 컴퓨팅 디바이스들(110)을 강제할 것이다.
도 15는 자율 주행 모드로 차량(100)을 기동시키기 위해 차량(100)의 컴퓨팅 디바이스들(110)과 같은 차량의 하나 이상의 컴퓨팅 디바이스의 하나 이상의 프로세서에 의해 수행될 수 있는 예시적인 흐름 다이어그램(1500)이다. 이러한 예에서, 블록 1510에서, 맵 정보를 사용하여 제1 위치로부터 목적지까지의 트립을 위한 루트가 생성된다. 맵 정보는 도로들의 형상 및 위치를 정의하는 도로 세그먼트들을 포함하고, 차량이 자율 모드로 주행할 수 없는 도로 세그먼트들을 정의하는 복수의 접근-금지 도로 세그먼트를 식별한다. 블록 1520에서, 복수의 접근-금지 도로 세그먼트로부터의 루트에 관련있는 접근-금지 도로 세그먼트들의 세트가 맵 정보로부터 식별된다. 블록 1530에서, 차량의 현재 위치 주위의 로컬 영역이 결정된다. 블록 1540에서, 로컬 영역 내의 위치들에 대응하는 맵 정보의 도로 세그먼트들을 포함하는 로컬 맵 영역이 결정된다. 블록 1550에서, 로컬 맵 영역의 도로 세그먼트들로부터 복수의 접근-금지 도로 세그먼트의 세트가 필터링된다. 블록 1560에서, 로컬 맵 영역의 필터링된 도로 세그먼트들의 각각의 도로 세그먼트에 비용 값이 배정된다. 블록 1570에서, 임의의 배정된 비용 값들이 사용되어 미래에 사전 결정된 기간 동안 차량을 기동시키기 위한 계획을 결정한다. 블록 1580에서 계획에 따라 차량이 기동된다.
달리 언급되지 않는 한, 전술한 대안적인 예들은 상호 배타적이지 않지만, 고유의 장점들을 달성하도록 다양한 조합들로 구현될 수 있다. 위에서 논의된 피처들의 이들 및 다른 변형들 및 조합들은 청구항들에 의해 정의되는 발명의 요지에서 벗어나지 않고 활용될 수 있음에 따라, 실시예의 전술한 설명은 청구항들에 의해 정의되는 발명의 요지의 제한으로서가 아니라 예시로서 취해져야 한다. 게다가, 본 명세서에 설명된 예들의 제공, 뿐만 아니라 "이를테면(such as)", "포함하는(including)" 등과 같은 문구들은 청구항들의 발명의 요지를 특정 예들로 제한하는 것으로 해석되어서는 안 되고; 오히려, 예들은 많은 가능한 실시예 중 하나만을 예시하기 위한 것으로 의도된다. 또한, 상이한 도면들에서의 동일한 참조 번호들은 동일하거나 유사한 엘리먼트들을 식별할 수 있다.
본 명세서에 설명된 기술은 예를 들어, 자율 차량들의 동적 라우팅을 위한 광범위한 산업적 적용가능성을 향유한다.
Claims (20)
- 차량을 기동시키기 위한 방법으로서,
하나 이상의 프로세서에 의해, 복수의 차선 세그먼트를 포함하는 맵 정보를 사용하여 제1 위치로부터 목적지까지의 트립을 위한 루트를 생성하는 단계;
상기 하나 이상의 프로세서에 의해, 상기 차량의 현재 위치에 기초하여 상기 맵 정보의 로컬 맵 영역에 대한 차선 세그먼트들의 세트를 결정하는 단계- 상기 로컬 맵 영역은 상기 차량이 사전 결정된 시간 기간 내에 도달할 수 있는 모든 영역들에 대응함 -;
상기 하나 이상의 프로세서에 의해, 상기 목적지에 기초하여 상기 로컬 맵 영역의 차선 세그먼트들의 세트의 각각의 차선 세그먼트에 비용 값을 배정하는 단계;
상기 하나 이상의 프로세서에 의해, 임의의 배정된 비용 값들을 사용하여, 객체를 통과할지 여부를 결정하는 단계; 및
상기 하나 이상의 프로세서에 의해, 상기 객체를 통과할지 여부의 결정에 기초하여 상기 차량을 기동시키는 단계
를 포함하는 방법. - 제1항에 있어서, 상기 객체는 상기 차량과 동일한 차선에 있는 다른 차량인, 방법.
- 제1항에 있어서, 상기 객체는 상기 차량과 동일한 차선에 있는 정지된 차량인, 방법.
- 제1항에 있어서, 상기 객체를 통과할지 여부를 결정하는 단계는 또한 상기 차량이 주행 중인 제1 차선에 인접한 제2 차선에 대한 차선 세그먼트들에 대해 배정된 비용 값들에 기초하는, 방법.
- 제1항에 있어서, 상기 객체를 통과할지 여부를 결정하는 단계는 또한 상기 차량이 상기 객체를 통과하는 경우 회전하지 않고 교차로를 통과하는 상기 차량에 대응하는 차선 세그먼트들에 대해 배정된 비용 값들에 기초하는, 방법.
- 제1항에 있어서, 상기 객체를 통과할지 여부를 결정하는 단계는 또한 상기 차량이 상기 객체를 통과하지 않는 경우 교차로를 우회전하는 상기 차량에 대응하는 차선 세그먼트들에 대해 배정된 비용 값들에 기초하는, 방법.
- 제1항에 있어서,
상기 차선 세그먼트들의 세트의 차선 세그먼트들 중 적어도 일부는 상기 비용 값들이 배정되는 경우 상기 차량이 주행중인 차선 세그먼트에 인접한 차선의 차선 세그먼트들에 대응하는, 방법. - 제1항에 있어서, 상기 비용 값들은 상기 목적지 위치에 기초하여 또한 배정되는, 방법.
- 제1항에 있어서, 상기 차선 세그먼트들의 세트의 주어진 차선 세그먼트에 대해 임의의 배정된 비용 값들 중 적어도 하나를 배정하는 것은 로컬 캐시로부터 이전에 배정된 비용 값을 검색하는 것을 포함하는, 방법.
- 제1항에 있어서, 상기 차선 세그먼트들의 세트의 제2의 주어진 차선 세그먼트에 대해 임의의 배정된 비용 값들 중 적어도 제2의 비용 값을 배정하는 것은 상기 목적지에 기초하여 새로운 값을 생성하는 것을 포함하는, 방법.
- 차량을 기동시키기 위한 시스템으로서,
하나 이상의 프로세서
를 포함하며, 상기 하나 이상의 프로세서는,
복수의 차선 세그먼트를 포함하는 맵 정보를 사용하여 제1 위치로부터 목적지까지의 트립을 위한 루트를 생성하고;
상기 차량의 현재 위치에 기초하여 상기 맵 정보의 로컬 맵 영역에 대한 차선 세그먼트들의 세트를 결정하고- 상기 로컬 맵 영역은 상기 차량이 사전 결정된 시간 기간 내에 도달할 수 있는 모든 영역들에 대응함 -;
상기 목적지에 기초하여 상기 로컬 맵 영역의 차선 세그먼트들의 세트의 각각의 차선 세그먼트에 비용 값을 배정하고;
임의의 배정된 비용 값들을 사용하여, 객체를 통과할지 여부를 결정하고; 그리고
상기 객체를 통과할지 여부의 결정에 기초하여 상기 차량을 기동시키도록 구성되는 시스템. - 제11항에 있어서, 상기 객체는 상기 차량과 동일한 차선에 있는 다른 차량인, 시스템.
- 제11항에 있어서, 상기 객체는 상기 차량과 동일한 차선에 있는 정지된 차량인, 시스템.
- 제11항에 있어서, 상기 하나 이상의 프로세서는 상기 차량이 주행 중인 제1 차선에 인접한 제2 차선에 대한 차선 세그먼트들에 대해 배정된 비용 값들에 또한 기초하여 상기 차량의 통과 여부를 결정하도록 더 구성되는, 시스템.
- 제14항에 있어서, 상기 하나 이상의 프로세서는 상기 차량이 상기 객체를 통과하는 경우 회전하지 않고 교차로를 통과하는 상기 차량에 대응하는 차선 세그먼트들에 대해 배정된 비용 값들에 또한 기초하여 상기 객체의 통과 여부를 결정하도록 더 구성되는, 시스템.
- 제14항에 있어서, 상기 하나 이상의 프로세서는 상기 차량이 상기 객체를 통과하지 않는 경우 교차로를 우회전하는 상기 차량에 대응하는 상기 차선 세그먼트들에 대해 배정된 비용 값들에 또한 기초하여 상기 객체의 통과 여부를 결정하도록 더 구성되는, 시스템.
- 제11항에 있어서, 상기 차선 세그먼트들의 세트의 차선 세그먼트들 중 적어도 일부는 상기 비용 값들이 배정되는 경우 상기 차량이 주행중인 차선 세그먼트에 인접한 차선의 차선 세그먼트들에 대응하는, 시스템.
- 제11항에 있어서, 상기 하나 이상의 프로세서는 상기 차선 세그먼트들의 세트의 주어진 차선 세그먼트에 대해 임의의 배정된 비용 값들 중 적어도 하나를 배정하도록 더 구성되며, 배정하는 것은 로컬 캐시로부터 이전에 배정된 비용 값을 검색하는 것을 포함하는, 시스템.
- 제11항에 있어서, 상기 하나 이상의 프로세서는 상기 차선 세그먼트들의 세트의 제2의 주어진 차선 세그먼트에 대해 임의의 배정된 비용 값들 중 적어도 제2의 비용 값을 배정하도록 더 구성되며, 배정하는 것은 상기 목적지에 기초하여 새로운 값을 생성하는 것을 포함하는, 시스템.
- 제11항에 있어서, 상기 차량을 더 포함하는 시스템.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/355,658 | 2016-11-18 | ||
US15/355,658 US10042362B2 (en) | 2016-11-18 | 2016-11-18 | Dynamic routing for autonomous vehicles |
KR1020197014093A KR102222323B1 (ko) | 2016-11-18 | 2017-11-14 | 자율 차량들을 위한 동적 라우팅 |
PCT/US2017/061478 WO2018093754A1 (en) | 2016-11-18 | 2017-11-14 | Dynamic routing for autonomous vehicles |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020197014093A Division KR102222323B1 (ko) | 2016-11-18 | 2017-11-14 | 자율 차량들을 위한 동적 라우팅 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210024232A KR20210024232A (ko) | 2021-03-04 |
KR102257112B1 true KR102257112B1 (ko) | 2021-05-27 |
Family
ID=60480463
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020197014093A KR102222323B1 (ko) | 2016-11-18 | 2017-11-14 | 자율 차량들을 위한 동적 라우팅 |
KR1020217005643A KR102257112B1 (ko) | 2016-11-18 | 2017-11-14 | 자율 차량들을 위한 동적 라우팅 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020197014093A KR102222323B1 (ko) | 2016-11-18 | 2017-11-14 | 자율 차량들을 위한 동적 라우팅 |
Country Status (9)
Country | Link |
---|---|
US (3) | US10042362B2 (ko) |
EP (1) | EP3520095B1 (ko) |
JP (2) | JP6840240B2 (ko) |
KR (2) | KR102222323B1 (ko) |
CN (2) | CN114370883B (ko) |
AU (2) | AU2017362952B2 (ko) |
CA (1) | CA3043211C (ko) |
SG (1) | SG10202106031WA (ko) |
WO (1) | WO2018093754A1 (ko) |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9321461B1 (en) * | 2014-08-29 | 2016-04-26 | Google Inc. | Change detection using curve alignment |
US10042362B2 (en) * | 2016-11-18 | 2018-08-07 | Waymo Llc | Dynamic routing for autonomous vehicles |
US11003183B2 (en) * | 2017-09-13 | 2021-05-11 | Baidu Usa Llc | Driving scene based path planning for autonomous driving vehicles |
JP7072581B2 (ja) * | 2017-09-18 | 2022-05-20 | バイドゥドットコム タイムズ テクノロジー (ベイジン) カンパニー リミテッド | 自動運転車両の経路計画のための運転シナリオに基づく車線ガイドライン |
US10795367B2 (en) * | 2018-01-11 | 2020-10-06 | Uatc, Llc | Mapped driving paths for autonomous vehicle |
US11360482B2 (en) * | 2018-01-29 | 2022-06-14 | Baidu Usa Llc | Method and system for generating reference lines for autonomous driving vehicles using multiple threads |
US11333503B2 (en) | 2018-04-19 | 2022-05-17 | Uatc, Llc | Global and local navigation for self-driving |
US10982969B2 (en) | 2018-10-23 | 2021-04-20 | Here Global B.V. | Method, apparatus, and computer program product for lane-level route guidance |
US11022457B2 (en) * | 2018-10-23 | 2021-06-01 | Here Global B.V. | Method, apparatus, and computer program product for lane-level route guidance |
US11287818B2 (en) * | 2019-01-23 | 2022-03-29 | Uatc, Llc | Depart constraints implementation in autonomous vehicle routing |
AU2020211604A1 (en) | 2019-01-25 | 2021-09-09 | Uber Technologies, Inc. | Operator assistance for autonomous vehicles |
US11161504B2 (en) * | 2019-03-19 | 2021-11-02 | Honda Motor Co., Ltd. | Vehicle control apparatus and method |
JP7210357B2 (ja) * | 2019-03-28 | 2023-01-23 | 本田技研工業株式会社 | 車両制御装置、車両制御方法、及びプログラム |
US11142214B2 (en) | 2019-08-06 | 2021-10-12 | Bendix Commercial Vehicle Systems Llc | System, controller and method for maintaining an advanced driver assistance system as active |
US11754408B2 (en) * | 2019-10-09 | 2023-09-12 | Argo AI, LLC | Methods and systems for topological planning in autonomous driving |
US11414130B2 (en) * | 2019-10-09 | 2022-08-16 | Argo AI, LLC | Methods and systems for lane changes using a multi-corridor representation of local route regions |
CN114766022A (zh) * | 2019-11-06 | 2022-07-19 | 俄亥俄州创新基金会 | 使用多时域优化的车辆动力学和动力总成控制***和方法 |
EP3855121A3 (en) * | 2019-12-30 | 2021-10-27 | Waymo LLC | Kinematic model for autonomous truck routing |
CN111157010B (zh) * | 2019-12-31 | 2021-07-30 | 惠州市德赛西威汽车电子股份有限公司 | 一种用于无人驾驶的地图生成方法 |
JP2021123178A (ja) * | 2020-02-03 | 2021-08-30 | 株式会社デンソー | 経路計画装置、経路計画方法、経路計画プログラム |
US11774263B2 (en) * | 2020-03-11 | 2023-10-03 | At&T Intellectual Property I, L.P. | Shared overlay maps |
KR20220153643A (ko) * | 2020-03-27 | 2022-11-18 | 트랜스파인더 코포레이션 | 주행 시나리오에 기초하여 주행 루트를 자동으로 용이하게 하는 것 |
KR102443401B1 (ko) | 2020-06-29 | 2022-09-15 | 주식회사 라이드플럭스 | 자율주행 차량을 위한 로드 네트워크 데이터 생성 방법, 장치 및 컴퓨터프로그램 |
WO2022006873A1 (en) * | 2020-07-10 | 2022-01-13 | Beijing Didi Infinity Technology And Development Co., Ltd. | Vehicle repositioning on mobility-on-demand platforms |
JP7518689B2 (ja) * | 2020-07-29 | 2024-07-18 | カワサキモータース株式会社 | 移動経路生成システム、移動経路生成プログラム及び移動経路生成方法 |
JP7287373B2 (ja) * | 2020-10-06 | 2023-06-06 | トヨタ自動車株式会社 | 地図生成装置、地図生成方法及び地図生成用コンピュータプログラム |
JP7442424B2 (ja) * | 2020-11-05 | 2024-03-04 | 株式会社日立製作所 | 走行領域管理装置、走行領域管理システム及び走行領域管理方法 |
US20220242440A1 (en) * | 2021-01-29 | 2022-08-04 | Argo AI, LLC | Methods and system for generating a lane-level map for an area of interest for navigation of an autonomous vehicle |
CN115113616B (zh) * | 2021-03-08 | 2024-06-14 | 广东博智林机器人有限公司 | 一种路径规划方法 |
US11965749B2 (en) * | 2021-03-31 | 2024-04-23 | Argo AI, LLC | System and method for automated lane conflict estimation in autonomous vehicle driving and map generation |
US11335142B1 (en) | 2021-06-01 | 2022-05-17 | Geotab Inc. | Systems for analyzing vehicle journeys |
US11862011B2 (en) | 2021-06-01 | 2024-01-02 | Geotab Inc. | Methods for analyzing vehicle traffic between geographic regions |
US11527153B1 (en) * | 2021-06-01 | 2022-12-13 | Geotab Inc. | Systems for analyzing vehicle traffic between geographic regions |
US20230032468A1 (en) * | 2021-07-28 | 2023-02-02 | Rivian Ip Holdings, Llc | Tour guide mode user interface and experience |
US11348064B1 (en) * | 2021-08-12 | 2022-05-31 | Airspace Technologies, Inc. | System and methods for alternate path generation |
US11748696B2 (en) | 2021-08-12 | 2023-09-05 | Airspace Technologies, Inc. | System and methods for alternate path generation |
CN114018240A (zh) * | 2021-10-29 | 2022-02-08 | 广州小鹏自动驾驶科技有限公司 | 一种地图数据的处理方法和装置 |
USD1018337S1 (en) | 2021-12-23 | 2024-03-19 | Waymo Llc | Sensor assembly |
USD1014398S1 (en) | 2021-12-23 | 2024-02-13 | Waymo Llc | Vehicle |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090204320A1 (en) | 2008-02-12 | 2009-08-13 | Cisco Technology, Inc. | Traffic Predictive Directions |
US20140207325A1 (en) | 2013-01-21 | 2014-07-24 | GM Global Technology Operations LLC | Efficient data flow algorithms for autonomous lane changing, passing and overtaking behaviors |
US20140229053A1 (en) | 2008-10-01 | 2014-08-14 | Murata Machinery, Ltd. | Autonomous mobile device |
US20150142207A1 (en) | 2013-11-18 | 2015-05-21 | Robert Bosch Gmbh | Method and driver assistance device for supporting lane changes or passing maneuvers of a motor vehicle |
JP2015158467A (ja) | 2014-02-25 | 2015-09-03 | アイシン・エィ・ダブリュ株式会社 | 経路探索システム、経路探索方法、コンピュータプログラム及びコストテーブルのデータ構造 |
US20150345967A1 (en) | 2014-06-03 | 2015-12-03 | Nissan North America, Inc. | Probabilistic autonomous vehicle routing and navigation |
Family Cites Families (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6192314B1 (en) | 1998-03-25 | 2001-02-20 | Navigation Technologies Corp. | Method and system for route calculation in a navigation application |
US6393362B1 (en) * | 2000-03-07 | 2002-05-21 | Modular Mining Systems, Inc. | Dynamic safety envelope for autonomous-vehicle collision avoidance system |
CN1343605A (zh) * | 2001-09-17 | 2002-04-10 | 杜尔文 | 以机载gps电子地图预禁止***,扼制***性劫机事件的抗偏航自适应驾驶仪 |
JP2006098232A (ja) * | 2004-09-29 | 2006-04-13 | Clarion Co Ltd | ナビゲーション装置、方法及びプログラム |
KR20080057634A (ko) | 2006-12-20 | 2008-06-25 | 엘지전자 주식회사 | 대형차량용 네비게이션 장치와 그를 이용한 경로 검색 및안내방법 |
JP4165602B2 (ja) * | 2007-01-12 | 2008-10-15 | トヨタ自動車株式会社 | 車両およびその制御方法 |
JP2008209506A (ja) * | 2007-02-23 | 2008-09-11 | Fujitsu Ltd | グラフィックスシステム及びマスク変形方法 |
US8762056B2 (en) | 2007-06-28 | 2014-06-24 | Apple Inc. | Route reference |
JP4416020B2 (ja) * | 2007-08-03 | 2010-02-17 | トヨタ自動車株式会社 | 走行計画生成装置 |
JP2009053091A (ja) * | 2007-08-28 | 2009-03-12 | Xanavi Informatics Corp | ナビゲーション装置 |
US20100023251A1 (en) | 2008-07-25 | 2010-01-28 | Gale William N | Cost based open area maps |
JP2010071767A (ja) * | 2008-09-17 | 2010-04-02 | Kousokuya Inc | ネットワーク経路探索装置、方法及びプログラム |
EP2169500B1 (en) | 2008-09-25 | 2012-04-04 | Volvo Car Corporation | Method of assessing vehicle paths in a road environment and a vehicle path assessment system. |
US8618922B2 (en) * | 2010-03-30 | 2013-12-31 | GM Global Technology Operations LLC | Method and system for ensuring operation of limited-ability autonomous driving vehicles |
JP5510007B2 (ja) | 2010-04-01 | 2014-06-04 | 株式会社デンソー | 経路探索装置および経路案内システム |
JP5605101B2 (ja) * | 2010-09-07 | 2014-10-15 | トヨタ自動車株式会社 | 情報処理装置、ナビゲーション装置及び経路案内情報提供方法 |
US8509982B2 (en) | 2010-10-05 | 2013-08-13 | Google Inc. | Zone driving |
DE102010052114A1 (de) | 2010-11-20 | 2012-05-24 | Bayerische Motoren Werke Aktiengesellschaft | Navigationssystem |
EP2487461B1 (en) | 2011-02-09 | 2015-10-07 | Harman Becker Automotive Systems GmbH | Vehicle navigation device and method |
PE20190658A1 (es) | 2012-02-24 | 2019-05-08 | Abbvie Stemcentrx Llc | Moduladores y metodos de empleo novedosos |
US9123152B1 (en) * | 2012-05-07 | 2015-09-01 | Google Inc. | Map reports from vehicles in the field |
US9633564B2 (en) * | 2012-09-27 | 2017-04-25 | Google Inc. | Determining changes in a driving environment based on vehicle behavior |
US9188985B1 (en) | 2012-09-28 | 2015-11-17 | Google Inc. | Suggesting a route based on desired amount of driver interaction |
US9008961B2 (en) * | 2012-11-30 | 2015-04-14 | Google Inc. | Determining and displaying auto drive lanes in an autonomous vehicle |
US8825258B2 (en) * | 2012-11-30 | 2014-09-02 | Google Inc. | Engaging and disengaging for autonomous driving |
JP2014125095A (ja) * | 2012-12-26 | 2014-07-07 | Tokai Rika Co Ltd | 車両盗難防止装置 |
JP2016513805A (ja) | 2013-03-15 | 2016-05-16 | キャリパー コーポレイション | 車両ルート指定および交通管理のための車線レベル車両ナビゲーション |
WO2014139821A1 (en) * | 2013-03-15 | 2014-09-18 | Volkswagen Aktiengesellschaft | Automatic driving route planning application |
DE102013207581A1 (de) * | 2013-04-25 | 2014-10-30 | Robert Bosch Gmbh | Verfahren zum automatischen Betätigen eines Fahrtrichtungsanzeigers eines Kraftfahrzeuges |
CN103383265B (zh) * | 2013-07-04 | 2016-12-07 | 宁波吉利汽车研究开发有限公司 | 汽车自动驾驶*** |
JP6252235B2 (ja) * | 2014-02-25 | 2017-12-27 | アイシン・エィ・ダブリュ株式会社 | 自動運転支援システム、自動運転支援方法及びコンピュータプログラム |
US9097549B1 (en) * | 2014-03-17 | 2015-08-04 | Ford Global Technologies, Llc | Learning automated vehicle |
WO2015145692A1 (ja) * | 2014-03-27 | 2015-10-01 | 三菱電機株式会社 | 運転支援情報生成システム及び運転支援情報提供装置及び運転支援情報生成方法及び運転支援情報生成プログラム |
US9713982B2 (en) * | 2014-05-22 | 2017-07-25 | Brain Corporation | Apparatus and methods for robotic operation using video imagery |
JP6308032B2 (ja) | 2014-06-04 | 2018-04-11 | 株式会社デンソー | 運転操作を生成するシステムおよび方法 |
JP6451111B2 (ja) * | 2014-07-10 | 2019-01-16 | 日産自動車株式会社 | 走行支援装置及び走行支援方法 |
JP6437629B2 (ja) * | 2015-03-03 | 2018-12-12 | パイオニア株式会社 | 経路探索装置、制御方法、プログラム及び記憶媒体 |
JP6545507B2 (ja) * | 2015-03-31 | 2019-07-17 | アイシン・エィ・ダブリュ株式会社 | 自動運転支援システム、自動運転支援方法及びコンピュータプログラム |
US9816830B2 (en) * | 2015-05-20 | 2017-11-14 | Uber Technologies, Inc. | Navigation lane guidance |
US9733096B2 (en) * | 2015-06-22 | 2017-08-15 | Waymo Llc | Determining pickup and destination locations for autonomous vehicles |
US9701239B2 (en) * | 2015-11-04 | 2017-07-11 | Zoox, Inc. | System of configuring active lighting to indicate directionality of an autonomous vehicle |
US9672734B1 (en) * | 2016-04-08 | 2017-06-06 | Sivalogeswaran Ratnasingam | Traffic aware lane determination for human driver and autonomous vehicle driving system |
US10042362B2 (en) * | 2016-11-18 | 2018-08-07 | Waymo Llc | Dynamic routing for autonomous vehicles |
US10514697B2 (en) * | 2017-09-15 | 2019-12-24 | GM Global Technology Operations LLC | Vehicle remote assistance mode |
KR102567973B1 (ko) * | 2017-12-14 | 2023-08-17 | 삼성전자주식회사 | 자율주행 차량의 주행정보 제공 방법 |
US20190354114A1 (en) * | 2018-05-16 | 2019-11-21 | Uber Technologies, Inc. | Selective Activation of Autonomous Vehicles |
-
2016
- 2016-11-18 US US15/355,658 patent/US10042362B2/en active Active
-
2017
- 2017-11-14 CA CA3043211A patent/CA3043211C/en active Active
- 2017-11-14 AU AU2017362952A patent/AU2017362952B2/en not_active Ceased
- 2017-11-14 CN CN202210110545.2A patent/CN114370883B/zh active Active
- 2017-11-14 SG SG10202106031WA patent/SG10202106031WA/en unknown
- 2017-11-14 WO PCT/US2017/061478 patent/WO2018093754A1/en unknown
- 2017-11-14 JP JP2019524052A patent/JP6840240B2/ja active Active
- 2017-11-14 EP EP17805082.9A patent/EP3520095B1/en active Active
- 2017-11-14 CN CN201780074664.4A patent/CN110036425B/zh active Active
- 2017-11-14 KR KR1020197014093A patent/KR102222323B1/ko active IP Right Grant
- 2017-11-14 KR KR1020217005643A patent/KR102257112B1/ko active IP Right Grant
-
2018
- 2018-07-09 US US16/029,922 patent/US10691131B2/en not_active Expired - Fee Related
-
2020
- 2020-05-13 US US15/931,012 patent/US11537133B2/en active Active
- 2020-05-28 AU AU2020203517A patent/AU2020203517B2/en active Active
-
2021
- 2021-02-16 JP JP2021022319A patent/JP7266053B2/ja active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090204320A1 (en) | 2008-02-12 | 2009-08-13 | Cisco Technology, Inc. | Traffic Predictive Directions |
US20140229053A1 (en) | 2008-10-01 | 2014-08-14 | Murata Machinery, Ltd. | Autonomous mobile device |
US20140207325A1 (en) | 2013-01-21 | 2014-07-24 | GM Global Technology Operations LLC | Efficient data flow algorithms for autonomous lane changing, passing and overtaking behaviors |
US20150142207A1 (en) | 2013-11-18 | 2015-05-21 | Robert Bosch Gmbh | Method and driver assistance device for supporting lane changes or passing maneuvers of a motor vehicle |
JP2015158467A (ja) | 2014-02-25 | 2015-09-03 | アイシン・エィ・ダブリュ株式会社 | 経路探索システム、経路探索方法、コンピュータプログラム及びコストテーブルのデータ構造 |
US20150345967A1 (en) | 2014-06-03 | 2015-12-03 | Nissan North America, Inc. | Probabilistic autonomous vehicle routing and navigation |
Also Published As
Publication number | Publication date |
---|---|
CN110036425B (zh) | 2022-02-01 |
JP2020502632A (ja) | 2020-01-23 |
US20200341478A1 (en) | 2020-10-29 |
CN114370883B (zh) | 2024-04-16 |
CA3043211C (en) | 2024-03-19 |
AU2020203517B2 (en) | 2021-05-20 |
JP6840240B2 (ja) | 2021-03-10 |
SG10202106031WA (en) | 2021-07-29 |
AU2017362952A1 (en) | 2019-05-23 |
KR20210024232A (ko) | 2021-03-04 |
AU2017362952B2 (en) | 2020-04-23 |
US20190004527A1 (en) | 2019-01-03 |
AU2020203517A1 (en) | 2020-06-18 |
US11537133B2 (en) | 2022-12-27 |
JP2021082331A (ja) | 2021-05-27 |
WO2018093754A1 (en) | 2018-05-24 |
EP3520095A1 (en) | 2019-08-07 |
KR20190067233A (ko) | 2019-06-14 |
EP3520095B1 (en) | 2024-02-14 |
CN114370883A (zh) | 2022-04-19 |
US20180143643A1 (en) | 2018-05-24 |
US10042362B2 (en) | 2018-08-07 |
CA3043211A1 (en) | 2018-05-24 |
US10691131B2 (en) | 2020-06-23 |
JP7266053B2 (ja) | 2023-04-27 |
CN110036425A (zh) | 2019-07-19 |
KR102222323B1 (ko) | 2021-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102257112B1 (ko) | 자율 차량들을 위한 동적 라우팅 | |
US11709490B1 (en) | Behavior and intent estimations of road users for autonomous vehicles | |
KR102274273B1 (ko) | 자율 차량을 위한 정지 위치 계획 | |
KR102488743B1 (ko) | 자율 차량들을 위한 교통 재지향에 대한 검출 및 응답 | |
CN112789209B (zh) | 减少由停止的自主车辆给周围道路使用者带来的不便 | |
CN111183428A (zh) | 识别自动驾驶车辆的分配的乘客 | |
CN114435393B (zh) | 用于自主驾驶***的对轨道智能体的行为预测 | |
AU2021201402B2 (en) | Detecting and responding to traffic redirection for autonomous vehicles |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
E701 | Decision to grant or registration of patent right |