KR102408151B1 - 차량 라우팅에서 장면 장애를 위한 예측 모델들의 사용 - Google Patents

차량 라우팅에서 장면 장애를 위한 예측 모델들의 사용 Download PDF

Info

Publication number
KR102408151B1
KR102408151B1 KR1020207017144A KR20207017144A KR102408151B1 KR 102408151 B1 KR102408151 B1 KR 102408151B1 KR 1020207017144 A KR1020207017144 A KR 1020207017144A KR 20207017144 A KR20207017144 A KR 20207017144A KR 102408151 B1 KR102408151 B1 KR 102408151B1
Authority
KR
South Korea
Prior art keywords
route
segment
score
cost
obstacle
Prior art date
Application number
KR1020207017144A
Other languages
English (en)
Other versions
KR20200074255A (ko
Inventor
디에트마 에브너
조슈아 세쓰 허바흐
마이클 스티븐 몬테메를로
Original Assignee
웨이모 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 웨이모 엘엘씨 filed Critical 웨이모 엘엘씨
Publication of KR20200074255A publication Critical patent/KR20200074255A/ko
Application granted granted Critical
Publication of KR102408151B1 publication Critical patent/KR102408151B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3446Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • G01C21/3423Multimodal routing, i.e. combining two or more modes of transportation, where the modes can be any of, e.g. driving, walking, cycling, public transport
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • G01C21/343Calculating itineraries, i.e. routes leading from a starting point to a series of categorical destinations using a global route restraint, round trips, touristic trips
    • 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/3461Preferred or disfavoured areas, e.g. dangerous zones, toll or emission zones, intersections, manoeuvre types, segments such as motorways, toll roads, ferries
    • 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/36Input/output arrangements for on-board computers
    • G01C21/3605Destination input or retrieval
    • G01C21/362Destination input or retrieval received from an external device or application, e.g. PDA, mobile phone or calendar application
    • 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/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/3815Road data
    • G01C21/3822Road feature data, e.g. slope data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • G06Q10/047Optimisation of routes or paths, e.g. travelling salesman problem
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0088Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours

Abstract

적어도, 해당 루트를 따르는 주행 환경을 횡단하는 장애의 레벨에 기초하여 자율 차량에 의한 이동을 위한 루트가 선택된다. 루트의 부분을 이동하는 것과 연관된 장애를 표시하는, 하나 이상의 자율 차량에 의해 제공되는 차량 신호들이 수집되고 주어진 시간 동안 가장 양호한 주행 루트를 예측하기 위해 사용된다. 이 신호들은 자율 주행 모드로부터 연결해제될 확률, 과도하게 장시간 동안 막힐 확률, 교통 밀도 등을 표시할 수 있다. 루트의 각각의 도로 세그먼트에 대해 장애 점수가 계산될 수 있고, 이어서 루트의 도로 세그먼트들 전부의 점수들이 함께 가산된다. 점수들은 이전의 연결해제들의 수, 원격 지원에 대한 이전 요청들, 비보호 좌회전 또는 우회전, 주행 영역의 부분들이 폐색되는지 등에 기초한다. 장애 점수는 특정 루트에 대한 비용을 계산하기 위해 사용되며, 이는 다른 가능한 루트들에 대해 계산된 비용들과 비교될 수 있다. 이러한 정보에 기초하여, 루트가 선택될 수 있다.

Description

차량 라우팅에서 장면 장애를 위한 예측 모델들의 사용
관련 출원들에 대한 상호 참조
본 출원은 2017년 12월 15일자로 출원된 미국 특허 출원 제15/843,223호의 이익을 주장하며, 그 개시는 본 명세서에 참고로 포함된다.
현재의 내비게이션 시스템들은 거리 및 주행 시간과 같은 인자들을 고려한다. 그러나, 이러한 시스템들은 차량들, 및 특히 자율 차량들의 운전자들 및 승객들에게 제한된 옵션들만을 제공한다. 이러한 자율 차량들은 승객들이 픽업(pickup) 또는 목적지 위치와 같은 일부 초기 입력을 제공할 수 있으며 차량이 그 위치까지 스스로 조종하는 완전 자율 모드로 동작할 수 있다. 다른 예들에서, 차량들은 반자율 또는 수동 모드로 동작할 수 있고, 여기서 인간 운전자는 차량 조종의 일부 또는 모든 양태들을 제어한다.
본 개시의 일 양태는 자율 차량에 대한 이동의 루트를 결정하는 방법을 제공한다. 이 방법은 하나 이상의 컴퓨팅 디바이스에서, 하나 이상의 차량으로부터 데이터를 수신하는 단계를 포함하고, 데이터는 하나 이상의 차량에 의해 횡단된 도로 세그먼트에 관한 정보를 제공하고, 데이터는 하나 이상의 차량으로부터의 하나 이상의 장애 신호(difficulty signal)를 포함한다. 데이터는 세그먼트에 대한 장애 값(difficulty value)을 결정하기 위해 사용되고, 장애 값은 자율 모드로부터 수동 모드로의 연결해제를 표시하는 하나 이상의 차량으로부터의 장애 신호들에 기초한다. 다른 예들에서, 장애 신호들은 원격 조작자로부터 지원을 요청하는 것, 도로 세그먼트를 따르는 다수의 비보호 회전, 자율 차량의 시야가 폐색되는 주행 영역의 부분, 임계 또는 비정상적인 수의 장애물 등을 표시할 수 있다. 원점과 목적지 사이의 하나 이상의 가능한 루트 각각에 대해 루트 비용이 계산되고, 루트 비용은 적어도, 해당 루트를 따르는 도로 세그먼트들에 대한 장애 값들에 기초하고, 하나 이상의 가능한 루트 각각에 대한 루트 비용에 기초하여 하나 이상의 가능한 루트 중 이동할 루트가 결정된다. 일부 예들에서, 이 방법은 자율 주행차가 결정된 결정된 루트를 주행하게 하는 단계를 추가로 포함한다. 장애 신호들은 시간적 피처들과 상관될 수 있다. 예를 들어, 특정 세그먼트에 대한 장애 값을 계산하는 것은 특정 세그먼트를 따르는 예상된 이동의 날짜 또는 시간을, 특정 세그먼트에 대한 장애 신호들과 상관된 날짜 또는 시간과 비교하는 것을 포함할 수 있다. 장애 값을 결정하는 것은 장애 신호들 중 적어도 하나에 대응하는 장애에 직면할 확률을 결정하는 것을 포함할 수 있다.
일부 예들에서, 이 방법은 도로 세그먼트에 대한 세그먼트 비용을 계산하는 단계를 추가로 포함할 수 있고, 세그먼트 비용은 장애 값, 거리, 및 도로 세그먼트를 횡단하는데 요구되는 시간에 기초하여 계산되고, 루트 비용은 루트를 따르는 도로 세그먼트들에 대한 세그먼트 비용에 기초하여 계산된다. 이러한 예들에서, 세그먼트 비용을 계산하는 것은 세그먼트에 대한 장애 값에 기초하여 장애 점수를 계산하는 것, 세그먼트의 거리에 기초하여 거리 점수를 계산하는 것, 세그먼트를 횡단하는데 요구되는 시간에 기초하여 시간 점수를 계산하는 것, 장애 점수, 거리 점수 및 시간 점수를 가중하는 것, 및 가중된 점수들의 함수로서 세그먼트 비용을 계산하는 것을 포함할 수 있다. 장애 점수, 거리 점수, 및 시간 점수를 가중하는 것은 장애 점수, 거리 점수, 및 시간 점수에 대한 계수들을 설정하는 것을 포함할 수 있고, 여기서 계수들은 상대적 가중치들을 조정하도록 수정가능하다. 입력은 자율 차량의 승객으로부터 수신될 수 있고, 계수들은 승객으로부터의 수신된 입력에 기초하여 조정될 수 있다.
본 개시의 다른 양태는 자율 차량에 대한 이동 루트를 결정하는 시스템을 제공한다. 시스템은 하나 이상의 메모리, 및 하나 이상의 메모리와 통신하는 하나 이상의 프로세서를 포함한다. 하나 이상의 프로세서는 하나 이상의 차량으로부터 데이터를 수신하고- 데이터는 하나 이상의 차량에 의해 횡단된 도로 세그먼트에 관한 정보를 제공하고, 하나 이상의 차량으로부터의 장애 신호들을 포함함 -, 데이터에 기초하여, 세그먼트에 대한 장애 값을 결정하도록 구성될 수 있고, 장애 값은 자율 모드로부터 수동 모드로의 연결해제를 표시하는 하나 이상의 차량으로부터의 장애 신호들에 기초한다. 일부 예들에서, 장애 신호는 대안적으로 또는 추가적으로 원격 조작자로부터 지원을 요청하는 것, 도로 세그먼트를 따르는 다수의 비보호 회전, 자율 차량의 시야가 폐색되는 주행 영역의 부분, 도로 세그먼트 상의 다수의 장애물 등을 표시할 수 있다. 하나 이상의 프로세서는 추가로, 원점과 목적지 사이의 하나 이상의 가능한 루트 각각에 대한 루트 비용을 계산하고- 여기서 루트 비용은 적어도, 해당 루트를 따르는 도로 세그먼트들에 대한 장애 값들에 기초함 -, 하나 이상의 가능한 루트 각각에 대한 루트 비용에 기초하여, 하나 이상의 가능한 루트 중 이동할 루트를 결정할 수 있다.
도 1은 예시적인 실시예에 따른 예시적인 차량의 기능도이다.
도 2는 본 개시의 양태들에 따른 상세한 지도 정보의 예이다.
도 3은 본 개시의 양태들에 따른 차량의 예시적인 내부 도면이다.
도 4는 예시적인 실시예에 따른 예시적인 시스템의 회화도이다.
도 5는 본 개시의 양태들에 따른 도 4의 시스템의 기능도이다.
도 6은 본 개시의 양태들에 따른 예시적인 데이터 구조이다.
도 7은 본 개시의 양태들에 따르는 예시적인 흐름도이다.
도 8은 도 2의 맵 정보와 연관된 가능한 루트 옵션들의 예이다.
도 9는 도 8의 가능한 루트 옵션들에 대한 도로 세그먼트들의 예이다.
도 10은 도 9의 도로 세그먼트들과 연관된 장애 레벨들의 예시적인 표현이다.
도 11은 도 8의 가능한 루트 옵션들에 대한 루트 비용들의 예시적인 계산이다.
개요
본 기술은 일반적으로 수집된 데이터를 사용하여 자율 차량의 시스템 거동을 개선하는 것에 관한 것이다. 특히, 이러한 수집된 데이터는 예측 모델에 포함되고, 루트를 이동하는 시간, 거리, 및 장애에 기초하여 취할 루트를 결정하기 위해 사용될 수 있다.
메트릭들은 자율, 반자율, 및 수동으로 조작되는 차량들을 포함할 수 있는 다수의 차량으로부터 학습된다. 이러한 메트릭들은 수집되고 조합하여 고려된다. 이러한 메트릭들은 예를 들어, 거리, 시간 및 장애를 포함할 수 있다. 장애 메트릭은, 건설 공사, 다수의 보행자 횡단, 도로가 거친지, 좁은지 등등과 같은 임의의 장애물들이 있는지에 관계없이, 특정 회전을 하는 것이 얼마나 어려웠는지와 같은 인자들을 고려한다. 메트릭들은 이전의 트립들의 로그들로부터 자동으로 학습되며, 따라서 시스템이 시간 경과에 따라 그 자체를 개선하는 것을 허용한다.
이러한 메트릭들은 시간적 피처들(예를 들어, 하루의 중 시간, 일주일 중 요일), 지리적 피처들(예를 들어, 정밀한 위치), 및 일반화 피처들(예를 들어, 속도 제한, 횡단보드들, 교차로들, 학교들과 같은 근처의 피처들)과 같은 특정 피처들과 연관될 수 있다. 예를 들어, 아침 러시아워에 대응하는 시간 동안 특정의 회전이 어려울 수 있지만, 동일한 회전이 이른 오후에는 덜 어려울 수 있고 밤 늦게는 훨씬 덜 어려울 수 있다. 이러한 피처들을 메트릭들과 연관시킴으로써, 이러한 피처들은 최적 루트를 결정할 때 고려될 수 있다.
장애 메트릭은 차량이 특정 도로 세그먼트를 횡단하는 것이 얼마나 어려운지를 표시하는 신호들에 기초하여 결정될 수 있다. 이러한 신호들은 자율 주행 모드로부터 연결해제될 확률, 과도하게 장시간 동안 막힐 확률, 교통 밀도 등을 표시할 수 있다. 일부 예들에 따르면, 각각의 도로 세그먼트에 대해 장애 점수가 계산되고, 이어서 루트의 도로 세그먼트들 전부의 점수들이 함께 가산된다. 점수들은 이전의 연결해제들의 수, 원격 조작자로부터의 지원을 위한 이전 요청들, 비보호 좌회전 또는 우회전, 주행 영역의 부분들이 폐색되는지, 사용자 불만들, 측정된 승객들의 불편, 차량이 더 이상 정상적으로 동작하지 않고 풀 오버 및 정지할 필요가 있을 수 있는 고장 응답들 등등에 기초할 수 있다.
점수들은 또한 세그먼트를 따라 이동을 완료하기 위한 예상 시간량 및 세그먼트의 거리에 기초하여 루트의 각각의 세그먼트에 대해 계산될 수 있다. 이 점수들은 장애 점수와 통합될 수 있다. 예를 들어, 장애, 시간, 및 거리 점수들은 모두 도로 세그먼트에 대한 비용을 계산하기 위해 사용될 수 있다. 이러한 비용은 예측 모델에 입력되고 최상의 루트를 결정하기 위해 사용될 수 있다.
최상의 루트를 결정할 때, 추가적인 주행 거리/시간과 더 쉬운 주행 조건들 사이의 트레이드오프들과 같은, 라우팅에서의 다양한 트레이드오프들을 조정하기 위해 동적 가중치들이 사용될 수 있다. 단지 트레이드오프의 일례로서, 운전자는 어려운 좌회전을 하는 것을 회피하기 위해 기꺼이 일부 거리를 더 멀리 운전하고자 할 수 있다. 동적 가중치들은, 예를 들어, 시나리오에 따라 조정될 수 있는 계수들일 수 있다. 예를 들어, 고객이 차량 내에 있는 제1 시나리오에서, 계수들은 가능한 더 긴 루트를 통해 더 용이하게 제공하는 것과 같이, 더 보수적이도록 조정될 수 있다. 한편, 테스트 운전자가 차량 내에 있는 제2 시나리오에서, 계수들은 더 신속하고 더 어려운 루트를 제공하는 것과 같이 더 모험적이도록 조정될 수 있다.
전술한 모델을 이용하여, 이동 루트들은 시간 및 거리뿐만 아니라, 장애에 기초하여 선택될 수 있다. 이러한 장애 정보는 다수의 차량 로그로부터 수집되기 때문에, 그것은 정확하고 또한 입력을 위해 사용자에게 부담을 지우지 않는다.
예시적인 시스템들
도 1에 도시된 바와 같이, 본 개시의 일 양태에 따른 차량(100)은 다양한 컴포넌트들을 포함한다. 본 개시의 특정 양태들이 특정한 타입들의 차량들과 관련하여 특히 유용하지만, 차량은 자동차들, 트럭들, 모터사이클들, 버스들, 오락용 차량들 등을 포함하지만, 이들로 제한되지 않은 임의 타입의 차량일 수 있다. 이러한 차량은 하나 이상의 프로세서(120), 메모리(130) 및 범용 컴퓨팅 디바이스들 내에 통상적으로 존재하는 다른 컴포넌트들을 포함하는 컴퓨팅 디바이스들(110)과 같은 하나 이상의 컴퓨팅 디바이스를 가질 수 있다.
메모리(130)는 프로세서(120)에 의해 실행되거나 또는 다른 방식으로 사용될 수 있는 명령어들(134) 및 데이터(132)를 포함하여, 하나 이상의 프로세서(120)에 의해 액세스가능한 정보를 저장한다. 메모리(130)는 컴퓨팅 디바이스 판독가능 매체, 또는 하드 드라이브, 메모리 카드, ROM, RAM, DVD 또는 다른 광학 디스크들과 같은 전자 디바이스의 지원으로 판독될 수 있는 데이터를 저장하는 다른 매체뿐만 아니라 다른 기입 가능 및 판독 전용 메모리들을 포함하는, 프로세서에 의해 액세스가능한 정보를 저장할 수 있는 임의의 타입일 수 있다. 시스템들 및 방법들은 전술한 것의 상이한 조합들을 포함할 수 있으며, 그것에 의해 명령어들 및 데이터의 상이한 부분들은 상이한 타입들의 매체 상에 저장된다.
명령어들(134)은 프로세서에 의해 직접적으로(예컨대 머신 코드) 또는 간접적으로(예컨대 스크립트들) 실행될 명령어들의 임의의 세트일 수 있다. 예를 들어, 명령어들은 컴퓨팅 디바이스 코드로서 컴퓨팅 디바이스 판독가능 매체 상에 저장될 수 있다. 그와 관련하여, 용어들 "명령어들" 및 "프로그램들"은 여기서 서로 교환하여 사용될 수 있다. 명령어들은 프로세서에 의한 직접 처리를 위한 오브젝트 코드 포맷(object code format)으로, 또는 요구에 따라 인터프리팅(interpret)되거나 미리 컴파일링(compile)되는 독립적인 소스 코드 모듈들의 스크립트들 또는 집합들을 포함하는 임의의 다른 컴퓨팅 디바이스 언어로 저장될 수도 있다. 명령어들의 기능들, 방법들 및 루틴들은 아래에 더 상세히 설명된다.
데이터(132)는 명령어들(134)에 따라 프로세서(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) 내에 포함되거나 자율 주행 컴퓨팅 시스템의 컴퓨팅 디바이스들을 제어할 수 있다. 자율 주행 컴퓨팅 시스템은 메모리(130)의 주 차량 제어 코드에 따라 차량(100)의 움직임을 제어하기 위해 차량의 다양한 컴포넌트들과 통신할 수 있다. 예를 들어, 도 1로 돌아가면, 컴퓨팅 디바이스들(110)은 메모리(130)의 명령어들(134)에 따라 차량(100)의 움직임, 속도 등을 제어하기 위해, 감속 시스템(160), 가속 시스템(162), 스티어링 시스템(164), 시그널링 시스템(166), 내비게이션 시스템(168), 포지셔닝 시스템(170), 지각 시스템(172) 및 동력 시스템(174)(즉, 차량의 엔진 또는 모터)과 같은, 차량(100)의 다양한 시스템들과 통신할 수 있다. 다시, 이러한 시스템들이 컴퓨팅 디바이스들(110)에 대해 외부에 있는 것으로 도시되지만, 실제로, 이러한 시스템들은, 다시 차량(100)을 제어하기 위한 자율 주행 컴퓨팅 시스템으로서, 컴퓨팅 디바이스들(110) 내에 또한 포함될 수 있다.
일례로서, 컴퓨팅 디바이스들(110)은 차량의 속도를 제어하기 위해, 브레이크들, 가속기 페달, 및/또는 차량의 엔진 또는 모터와 같은, 감속 시스템(160) 및/또는 가속 시스템(162)의 하나 이상의 액추에이터와 상호작용할 수 있다. 유사하게, 스티어링 휠, 스티어링 샤프트, 및/또는 랙 및 피니언 시스템 내의 피니언 및 랙과 같은 스티어링 시스템(164)의 하나 이상의 액추에이터는 차량(100)의 방향을 제어하기 위해 컴퓨팅 디바이스들(110)에 의해 사용될 수 있다. 예를 들어, 차량(100), 예컨대 자동차 또는 트럭이 도로 상에서의 사용을 위해 구성되면, 스티어링 시스템은 차량을 돌리기 위해 휠들의 각도를 제어하기 위한 하나 이상의 액추에이터를 포함할 수 있다. 시그널링 시스템(166)은 예를 들어, 필요할 때 방향 지시등들 또는 브레이크 등들을 점등함으로써 차량의 의도를 다른 운전자들 또는 차량들에 시그널링하기 위해 컴퓨팅 디바이스들(110)에 의해 사용될 수 있다.
내비게이션 시스템(168)은 위치에 대한 루트를 결정하고 따르기 위해 컴퓨팅 디바이스들(110)에 의해 사용될 수 있다. 이와 관련하여, 내비게이션 시스템(168) 및/또는 데이터(132)는 상세한 지도 정보, 예를 들어, 도로들의 형상 및 고도, 차선 라인들, 교차로들, 횡단 보도들, 속도 제한들, 교통 신호들, 건물들, 표지판들, 실시간 교통 정보, 초목, 또는 다른 이러한 물체들 및 정보를 식별하는 매우 상세한 지도들을 저장할 수 있다.
도 2는 복수의 도로를 포함하는 지리적 영역에 대한 지도 정보(200)의 예이다. 지도 정보(200)는 차선 라인들(210, 212, 214), 교통 신호등(220, 222), 정지 표지판들(250, 251, 252)과 같은 피처들 및 횡단보도들, 인도들, 및 양보 표지판들(260)과 같은 도시되지 않은 다른 피처들의 형상, 위치 및 다른 특성들을 식별하는 정보를 포함할 수 있다. 지도 정보(200)는 복수의 도로 각각에 대한 거리 정보, 및 속도 제한들, 조종들의 금지 등과 같은 다양한 도로들에 대한 규정들을 추가로 포함할 수 있다. 금지된 조종의 일례로서, 차량들은 평일 8am-4pm 사이에서 적색 신호등이 켜질 때 우회전하는 것이 방지될 수 있다. 일부 예들에 따르면, 지도 정보는 또한 이력적 교통 정보와 같은 교통 정보를 포함할 수 있다. 이러한 교통 정보는, 예를 들어, 교통량이 많을 때 며칠/몇 주의 시간들을 표시하는 시간적 제한들과 연관하여 저장될 수 있다.
지도 정보가 이미지 기반 지도로서 본 명세서에 도시되어 있지만, 이러한 지도 정보는 전적으로 이미지 기반(예를 들어, 래스터)일 필요가 없다. 예를 들어, 지도 정보는 도로들, 차선들, 교차로들, 및 이러한 피처들 사이의 연결부들과 같은 정보의 하나 이상의 로드그래프(roadgraph) 또는 그래프 네트워크들을 포함할 수 있다. 각각의 피처는 그래프 데이터로서 저장될 수 있고, 지리적 위치 및 그것이 다른 관련 피처들에 링크되는지 여부, 예를 들어, 정지 표지판이 도로 및 교차로 등에 링크되는지 여부와 같은 정보와 연관될 수 있다. 몇몇 예들에서, 연관된 데이터는 특정 로드그래프 피처들의 효율적인 룩업을 허용하기 위해 로드그래프의 그리드 기반 인덱스들을 포함할 수 있다.
포지셔닝 시스템(170)은 지도 상의 또는 지면 상의 차량의 상대 또는 절대 위치를 결정하기 위해 컴퓨팅 디바이스들(110)에 의해 사용될 수 있다. 예를 들어, 포지셔닝 시스템(170)은 디바이스의 위도, 경도 및/또는 고도 위치를 결정하기 위해 GPS 수신기를 포함할 수 있다. 레이저 기반 위치 확인 시스템들, 관성 보조(inertial-aided) GPS 또는 카메라 기반 위치 확인과 같은 다른 위치 확인 시스템들은 또한 차량의 위치를 식별하기 위해 사용될 수 있다. 차량의 위치는 위도, 경도 및 고도와 같은 절대 지리적 위치뿐만 아니라, 종종 절대 지리 위치보다 더 적은 잡음으로 결정될 수 있는, 바로 주변의 다른 차량들에 대한 위치와 같은 상대 위치 정보를 포함할 수 있다.
포지셔닝 시스템(170)은 차량의 방향과 속도 또는 이에 대한 변경들을 결정하기 위해 가속도계, 자이로스코프 또는 다른 방향/속도 검출 디바이스와 같은, 컴퓨팅 디바이스들(110)과 통신하는 다른 디바이스들을 또한 포함할 수 있다. 단지 예로서, 가속 디바이스는 중력의 방향 또는 이에 수직한 면에 대해 그 피치(pitch), 요(yaw) 또는 롤(roll)(또는 이에 대한 변경들)을 결정할 수 있다. 디바이스는 또한 이런 변화들의 속도와 방향에서 증가 또는 감소를 추적할 수 있다. 본 명세서에 개시된 바와 같이, 디바이스의 위치 및 방향 데이터의 제공은 컴퓨팅 디바이스들(110), 다른 컴퓨팅 디바이스들 및 이들의 조합들에 자동으로 제공될 수 있다.
지각 시스템(172)은 또한 다른 차량들, 도로 내의 장애물들, 교통 신호, 표지판, 나무 등과 같은 차량 외부의 물체들을 검출하기 위한 하나 이상의 컴포넌트를 포함한다. 예를 들어, 지각 시스템(172)은 레이저들, 소나(sonar), 레이더, 카메라들 및/또는 컴퓨팅 디바이스(110)에 의해 처리될 수 있는 데이터를 기록하는 임의의 다른 검출 디바이스들을 포함할 수 있다. 차량이 미니밴과 같은 승용 차량인 경우, 미니밴은 루프(roof) 또는 다른 편리한 위치에 장착된 레이저 또는 다른 센서들을 포함할 수 있다. 예를 들어, 도 3은 차량(100)의 예시적인 외부 도면이다. 이 예에서, 루프-탑(roof-top) 하우징(310) 및 돔(dome) 하우징(312)은 다양한 카메라들 및 레이더 유닛들뿐만 아니라 라이더(lidar) 센서를 포함할 수 있다. 또한, 차량(100)의 전방 단부에 위치된 하우징(320) 및 차량의 운전자 측 및 승객 측 상의 하우징들(330, 332)은 각각 라이더 센서를 격납할 수 있다. 예를 들어, 하우징(330)은 운전자 도어(360)의 앞에 위치한다. 차량(100)은 차량(100)의 루프 상에 또한 위치된 카메라들 및/또는 레이더 유닛들을 위한 하우징들(340, 342)을 또한 포함한다. 추가적인 레이더 유닛들 및 카메라들(도시되지 않음)이 차량(100)의 전방 및 후방 단부들에 그리고/또는 루프 또는 루프-탑 하우징(310)을 따라 다른 포지션들에 위치될 수 있다.
컴퓨팅 디바이스들(110)은 다양한 컴포넌트들을 제어함으로써 차량의 방향 및 속도를 제어할 수 있다. 예로써, 컴퓨팅 디바이스들(110)은 상세한 지도 정보 및 내비게이션 시스템(168)으로부터 데이터를 사용하여 완전히 자동으로 목적지 위치까지 차량을 내비게이팅(navigate)할 수 있다. 컴퓨팅 디바이스들(110)은 안전하게 위치에 도달하도록 요구될 때 물체들을 검출하고 물체들에 응답하기 위해 차량의 위치 및 지각 시스템(172)을 결정하도록 포지셔닝 시스템(170)을 사용할 수 있다. 그렇게 하기 위해서, 컴퓨팅 디바이스들(110)은 차량으로 하여금 (예를 들어, 가속 시스템(162)에 의해 엔진에 제공되는 연료 또는 다른 에너지를 증가시킴으로써) 가속하고, (감속 시스템(160)에 의해 엔진에 공급되는 연료를 감소시키고, 기어들을 바꿈으로써, 및/또는 브레이크들을 밟음으로써) 감속하고, (예를 들어, 스티어링 시스템(164)에 의해 차량(100)의 전방 또는 후방 휠들을 회전시킴으로써) 방향을 바꾸고, (예를 들어, 시그널링 시스템(166)의 방향 지시등들을 점등함으로써) 이러한 변화들을 시그널링하게 할 수 있다. 따라서, 가속 시스템(162)과 감속 시스템(160)은 차량의 엔진과 차량의 휠들 사이의 다양한 컴포넌트들을 포함하는 구동렬의 일부일 수 있다. 또한, 이들 시스템들을 제어함으로써, 컴퓨팅 디바이스들(110)은 또한 차량을 자율적으로 조종하기 위해 차량의 구동렬을 제어할 수 있다.
차량(100)의 컴퓨팅 디바이스(110)는 또한 다른 컴퓨팅 디바이스들 예컨대, 다른 차량들, 제어 센터들, 데이터베이스들, 사용자 디바이스들 등에 그리고 그것들로부터 정보를 전송하거나 수신할 수 있다. 도 4 및 도 5는, 각각, 네트워크(460)를 통해 접속되는 복수의 컴퓨팅 디바이스(410, 420, 430, 440) 및 저장 시스템(450)을 포함하는 예시적인 시스템(400)의 도해 및 기능도들이다. 시스템(400)은 또한 차량(100), 및 차량(100)과 동일하거나 차량(100)과 유사하게 구성될 수 있는 차량들(100A, 100B)을 포함한다. 간략함을 위해 몇몇 차량들 및 컴퓨팅 디바이스들만이 도시되지만, 전형적인 시스템은 상당히 더 많이 포함할 수 있다.
도 4에 도시된 바와 같이, 컴퓨팅 디바이스들(410, 420, 430, 440) 각각은 하나 이상의 프로세서, 메모리, 데이터 및 명령어들을 포함할 수 있다. 이러한 프로세서들, 메모리들, 데이터 및 명령어들은 컴퓨팅 디바이스(110)의 하나 이상의 프로세서(120), 메모리(130), 데이터(132), 및 명령어들(134)과 유사하게 구성될 수 있다.
네트워크(460), 및 중간 노드들은 블루투스, 블루투스 LE와 같은 단거리 통신 프로토콜들, 인터넷, 월드 와이드 웹, 인트라넷들, 가상 사설 네트워크들, 광역 네트워크들, 로컬 네트워크들, 하나 이상의 회사 전용 통신 프로토콜들을 사용하는 사설 네트워크들, 이더넷, WiFi 및 HTTP 및 이들의 다양한 조합들을 포함하는 다양한 구성들 및 프로토콜들을 포함할 수 있다. 이러한 통신은 모뎀들 및 무선 인터페이스들과 같은, 다른 컴퓨팅 디바이스들로 그리고 그로부터 데이터를 송신할 수 있는 임의의 디바이스에 의해 가능해질 수 있다.
일례에서, 하나 이상의 컴퓨팅 디바이스(110)는 다른 컴퓨팅 디바이스들에 그리고 다른 컴퓨팅 디바이스들로부터 데이터를 수신하고, 처리하고, 송신하는 목적을 위해 네트워크의 상이한 노드들과 정보를 교환하는 복수의 컴퓨팅 디바이스를 갖는 하나 이상의 서버 컴퓨팅 디바이스, 예를 들어, 로드 밸런스드 서버 팜(load balanced server farm)을 포함할 수 있다. 예를 들어, 하나 이상의 컴퓨팅 디바이스(410)는 네트워크(460)를 통해 차량(100)의 컴퓨팅 디바이스(110) 또는 차량(100A, 100B)의 유사한 컴퓨팅 디바이스뿐만 아니라 컴퓨팅 디바이스들(420, 430, 440)과 통신할 수 있는 하나 이상의 서버 컴퓨팅 디바이스를 포함할 수 있다. 예를 들어, 차량들(100, 100A, 100B)은 서버 컴퓨팅 디바이스들에 의해 다양한 위치들로 디스패칭될 수 있는 차량들의 플리트의 일부일 수 있다. 이와 관련하여, 서버 컴퓨팅 디바이스들(410)은 디스패칭 시스템으로서 기능할 수 있다. 또한, 플리트의 차량들은 차량의 각각의 포지셔닝 시스템들에 의해 제공되는 서버 컴퓨팅 디바이스들 위치 정보뿐만 아니라 아래에 더 논의되는 차량들의 상태에 관한 다른 정보를 주기적으로 전송할 수 있고, 하나 이상의 서버 컴퓨팅 디바이스는 플리트의 차량들 각각의 위치들 및 상태를 추적할 수 있다.
또한, 서버 컴퓨팅 디바이스들(410)은 컴퓨팅 디바이스들(420, 430, 440)의 디스플레이들(424, 434, 444)과 같은 디스플레이 상에서 사용자(422, 432, 442)와 같은 사용자에게 정보를 송신하고 제안하기 위해 네트워크(460)를 사용할 수 있다. 이와 관련하여, 컴퓨팅 디바이스들(420, 430, 440)은 클라이언트 컴퓨팅 디바이스들로서 고려될 수 있다.
도 4에 도시된 바와 같이, 각각의 클라이언트 컴퓨팅 디바이스(420, 430, 440)는 사용자(422, 432, 442)가 사용하도록 의도된 개인용 컴퓨팅 디바이스일 수 있고, 개인용 컴퓨팅 디바이스와 관련하여 일반적으로 사용되고 하나 이상의 프로세서(예를 들어, 중앙 처리 유닛(CPU)), 데이터 및 명령어들을 저장하는 메모리(예를 들어, RAM 및 내부 하드 드라이브들), 디스플레이들(424, 434, 444)과 같은 디스플레이(예를 들어, 화면, 터치스크린, 프로젝터, 텔레비전, 또는 정보를 표시하도록 동작가능한 다른 디바이스를 갖는 모니터), 및 사용자 입력 디바이스들(426, 436, 446)(예를 들어, 마우스, 키보드, 터치스크린 또는 마이크로폰)을 포함하는 컴포넌트들 모두를 가질 수 있다. 클라이언트 컴퓨팅 디바이스들은 비디오 스트림들을 레코딩하기 위한 카메라, 스피커들, 네트워크 인터페이스 디바이스, 및 이러한 요소들을 서로 접속시키기 위해 사용되는 모든 컴포넌트들을 또한 포함할 수 있다.
클라이언트 컴퓨팅 디바이스들(420, 430 및 440)은 각각 풀 사이즈의 개인용 컴퓨팅 디바이스를 포함할 수 있지만, 인터넷과 같은 네트워크를 통해 서버와 데이터를 무선으로 교환할 수 있는 모바일 컴퓨팅 디바이스들을 대안적으로 포함할 수 있다. 단지 예로서, 클라이언트 컴퓨팅 디바이스(420)는 인터넷 또는 다른 네트워크들을 통해 정보를 획득할 수 있는, 무선 인에이블 PDA, 태블릿 PC, 웨어러블 컴퓨팅 디바이스 또는 시스템, 또는 넷북과 같은 모바일 폰 또는 디바이스일 수 있다. 다른 예에서, 클라이언트 컴퓨팅 디바이스(430)는 도 4에서 손목 시계로서 도시된 웨어러블 컴퓨팅 시스템일 수 있다. 예로서, 사용자는 소형 키보드, 키패드, 마이크로폰을 사용하여, 카메라 또는 터치스크린을 사용하여 시각적 신호들을 사용하여 정보를 입력할 수 있다.
메모리(130)와 마찬가지로, 저장 시스템(450)은, 하드 드라이브, 메모리 카드, ROM, RAM, DVD, CD-ROM, 기입 가능 및 판독 전용 메모리들과 같은, 서버 컴퓨팅 디바이스들(410)에 의해 액세스가능한 정보를 저장할 수 있는 임의의 타입의 컴퓨터화된 스토리지일 수 있다. 또한, 저장 시스템(450)은 동일한 또는 상이한 지리적 위치들에 물리적으로 위치될 수 있는 복수의 상이한 저장 디바이스 상에 데이터가 저장되는 분산형 저장 시스템을 포함할 수 있다. 저장 시스템(450)은 도 4 및 도 5에 도시된 바와 같이 네트워크(460)를 통해 컴퓨팅 디바이스들에 접속될 수 있고/있거나 컴퓨팅 디바이스들(110, 410, 420, 430 등) 중 임의의 것에 직접 접속되거나 포함될 수 있다.
저장 시스템(450)은 이하에서 더 상세하게 설명되는 바와 같이 다양한 타입들의 정보를 저장할 수 있다. 이 정보는, 본 명세서에서 설명되는 특징들 중 일부 또는 전부를 수행하기 위해, 하나 이상의 서버 컴퓨팅 디바이스(410)와 같은 서버 컴퓨팅 디바이스에 의해 검색되거나 아니면 액세스될 수 있다. 일례로서, 저장 시스템(450)의 정보는 이전의 주행들 동안에 직면하는 장애들에 관한 다른 차량들로부터의 보고들을 포함할 수 있다. 이러한 장애들은, 예를 들어, 방해받은 센서 뷰들, 방해받은 도로들, 비보호 회전들, 거친 지형, 인간 운전자가 차량의 제어를 인계할 필요성, 지원 요청들, 또는 임의의 다른 장애들을 포함할 수 있다. 이러한 장애들의 보고들은 특정 장애가 어떤 것이었는지를 식별하는 메타데이터 및 장애가 발생했던 시간과 연관하여 저장될 수 있다. 일부 예들에서, 보고서들은 장애의 심각도 레벨을 표시하는 값과 연관하여 추가로 저장될 수 있다.
도 6은 저장 시스템(450)에 저장될 수 있는 정보의 타입 및 배열의 일례만을 제공한다. 도시된 바와 같이, 차트(600)는 차량 신호 식별자들(610), 신호 타입(620), 타임스탬프들(630), 및 위치(640)를 열거하는 다수의 열을 포함한다. 추가 정보가 또한 열거될 수 있고, 열들 중 일부가 생략될 수 있다는 것을 이해해야 한다. 단지 일례로서, 차트(600)는 또한, 주행 환경에 의해 부과되는 장애 레벨을 표시하는, 각각의 신호에 대한 연관된 장애 값을 저장할 수 있다. 열들 및 행들이 차트(600)가 임의의 순서로 정렬될 수 있거나, 상이한 조직 구조가 대체로 사용될 수 있다는 것이 추가로 이해되어야 한다.
예시적인 차트(600)에서, 차량 신호 식별자(610)는 차량에 의해 전송된 특정 신호를 식별할 수 있다. 각각의 고유한 신호는 고유 식별자를 가질 수 있다. 이 식별자는 특정 신호들을 구별하고 특정 정보의 식별을 용이하게 하기 위해 사용될 수 있다. 신호 식별자는, 서버 컴퓨팅 디바이스(410)에 의해 할당된, 차량에 의해 전송된 신호와 함께 포함될 수 있거나, 차량, 서버(410), 또는 다른 소스들로부터의 정보의 일부 조합으로 구성될 수 있다. 차트(600) 내의 신호들은 하나의 차량으로부터 또는 복수의 상이한 차량으로부터 나올 수 있다.
신호 타입(620)은 신호를 전송할 때 차량에 의해 직면하는 장애 타입을 표시한다. 인간 운전자가 수동으로 차량의 제어를 인계할 필요성, 원격 조작자로부터의 지원을 위한 요청, (예를 들어, 회전 또는 다른 조종을 행하는 것에 대한) 연장된 대기, 비보호 회전, 폐색된 센서 뷰, 급 브레이크 적용, 제한된 센서 뷰, 및 비보호 차선 횡단을 포함하는 몇 가지 예시적인 타입의 장애가 차트(600)에 열거된다. 추가의 예들은 사용자 불만들, 측정된 승객들의 불편, 고장 응답 등을 포함한다. 주행 환경으로부터 기인하는 주행 장애를 표시하는 다른 타입의 신호가 또한 저장될 수 있고, 동일한 타입의 다수의 신호가 저장될 수 있다.
타임스탬프들(630)은 신호가 차량에 의해 전송되었던 시간을 표시할 수 있다. 이 정보는 시간 의존적인 장애들에 특히 유용할 수 있다. 예를 들어, 특정 위치에서 회전을 행하기 위해 연장된 대기 시간들이 수업일들에서 2pm-4pm 사이에서만 경험되는 것이 신호들로부터 결정될 수 있다. 다른 예로서, 센서 뷰는, 뷰를 폐색하는 나무로부터 잎이 떨어지기 전에 봄 및 여름 개월들 동안에만 폐색될 수 있다. 이러한 시간 패턴들은 머신 러닝 기술들을 사용하여 인식될 수 있다. 타임스탬프들(630)은 또한 정보를 업데이트하기 위해 사용될 수 있다. 예를 들어, 수 개월 또는 수 일과 같은, 미리 결정된 임계값보다 오래된 신호들은 연관된 장애 레벨을 결정할 때 더 낮은 가중치를 부여받을 수 있거나 삭제될 수 있다. 도시된 바와 같이 타임스탬프 정보가 월:일:년::시:분:초로 표시되지만, 시간을 표시하기 위한 임의의 다른 규약이 사용될 수 있다는 것을 이해해야 한다.
위치 정보(640)는 신호가 그로부터 송신되었던 위치를 식별할 수 있다. 도시된 예에서, 위치 정보는 지역 식별자, 거리 식별자, 및 세그먼트 식별자에 의해 표시되고, 또한 다른 포맷들이 사용될 수 있다. 지역 식별자는 특정 도시, 상태, 국가, 또는 다른 영역을 표시하는 값을 포함할 수 있다. 거리 식별자는 분석의 목적을 위해 세그먼트들로 분할되는 특정 도로에 대응하는 값 또는 다른 인덱스들을 포함할 수 있다. 따라서, 세그먼트 식별자는 거리의 특정 세그먼트를 표시한다. 차트(600)에서 사용되는 위치 포맷은 단지 예일 뿐이고, 지리적 좌표들(예를 들어, 위도, 경도, 고도) 또는 다른 디스크립터들과 같은, 다양한 다른 포맷들 중 임의의 것이 사용될 수 있다는 것을 이해해야 한다.
일부 예들에서, 저장 시스템(450)은 또한 장애 신호들에 관한 정보에 기초한 모델과 같은, 주행 환경을 횡단하는 장애에 관련된 다른 정보를 저장할 수 있다. 예를 들어, 모델은 주어진 시간에 자율 모드로부터 수동 모드로의 전이를 요구하는 것과 같이, 어느 도로 세그먼트들이 장애를 나타낼 가능성이 있는지를 식별하는 예측 모델일 수 있다.
저장 시스템(450)은 또한 사용자에게 표시하기 위해 클라이언트 컴퓨팅 디바이스들에 제공될 수 있는 정보를 저장할 수 있다. 예를 들어, 저장 시스템(450)은 주어진 픽업 또는 목적지 위치에 대해 차량이 정지할 가능성이 있는 영역을 결정하기 위한 미리 결정된 거리 정보를 저장할 수 있다. 저장 시스템(450)은 또한 그래픽들, 아이콘들 및 사용자에게 표시될 수 있는 다른 아이템들을 저장할 수 있다.
차량(100)은 차량(100)이 이동할 루트를 결정하기 위해 저장 시스템(450)으로부터의 정보를 사용할 수 있다. 예를 들어, 원점 및 목적지를 고려하면, 여러 상이한 루트들이 차량(100)에 대해 이용가능할 수 있다. 그러나, 일부 루트들은 다른 루트들보다 이동하기가 더 어려울 수 있다. 저장 시스템(450)에 저장되는 주행 환경들을 횡단하는 것의 장애에 관한 정보는 어느 루트가 주어진 시간에 최소량의 장애를 제시할지를 결정하기 위해 사용될 수 있다. 일부 예들에서, 이러한 장애 정보는 시간, 거리, 통행료 등과 같은 다른 이동 정보와 조합하여 고려될 수 있다. 시간 정보는 교통, 속도 제한들, 및 주행 시간에 영향을 미치는 다른 정보를 고려할 수 있다. 일부 예들에 따르면, 장애 정보 및 다른 이동 정보가 가중될 수 있다. 예를 들어, 각각 장애 정보 및 시간 정보에 부여되는 가중치들을 조정함으로써, 더 긴 이동 시간에도 불구하고 더 용이한 이동을 위한 선호도가 수용될 수 있다. 잠재적으로 어려운 조건들에도 불구하고 최단 거리에 대한 선호도가, 각각 거리 및 장애에 부여하는 가중치들을 조정함으로써 수용될 수 있다.
예시적인 방법들
전술되고 도면들에 예시되는 동작들에 더하여, 다양한 동작들이 이제 설명될 것이다. 이하의 동작들은 아래에 설명되는 정확한 순서로 수행될 필요가 없다는 점이 이해되어야 한다. 오히려, 다양한 단계들은 상이한 순서로 또는 동시에 처리될 수 있고, 단계들은 또한 추가되거나 생략될 수 있다.
도 7은 주행 환경의 장애에 기초하여 루트를 선택하는 예시적인 방법을 나타내는 흐름도(700)를 제시한다. 블록 710에서, 복수의 도로 세그먼트에 관한 정보를 제공하는 데이터가 수신된다. 정보는 도 6과 관련하여 앞서 논의된 신호들과 같은, 도로 세그먼트들을 횡단했던 하나 이상의 차량으로부터의 신호들을 포함할 수 있다. 신호들은 도로 세그먼트를 횡단하는 것과 연관된 장애를 표시할 수 있으며, 이러한 장애는 주행 환경의 결과이다. 이러한 장애들의 예들은 수동 인계를 필요로 하는 것, 원격 조작자들로부터의 지원을 요청하는 것, 비보호 조종들, 제한된/폐색된/방해받은 뷰 등을 포함한다. 일부 예들에서, 장애들은 사용자 불만들, 측정된 승객 불편, 차량이 더 이상 정상적으로 동작할 수 없고, 풀 오버 및 정지할 필요가 있는 고장 응답들 등에 의해 시그널링될 수 있다. 승객 불편은, 예를 들어, 조사 응답들, 승객 심박수의 변화들, 온도, 또는 다른 바이탈들, 승객의 좌석 위치의 변화들, 제어들의 조정 등에 의해 측정될 수 있다.
블록 720에서, 수신된 정보에 기초하여 복수의 도로 세그먼트 각각에 대해 장애 값이 결정된다. 예를 들어, 장애 값은 제1 도로 세그먼트를 횡단하는 것과 연관된 장애 레벨을, 제2 도로 세그먼트를 횡단하는 장애 레벨과 비교하기 위해 사용될 수 있는 점수 또는 다른 값일 수 있다. 예를 들어, 차량 신호들에 의해 표시된 각각의 상이한 타입의 장애는 값을 가질 수 있다. 일부 경우들에서, 하나의 타입의 장애에 대한 값은 다른 타입의 값보다 더 높을 수 있다. 예를 들어, 원격 조작자로부터의 지원에 대한 요청과 연관된 장애 값은 비보호 회전과 연관된 장애 값과 상이할 수 있다. 다른 예들에서, 동일한 타입을 갖는 2개의 신호에 대한 값들이 상이하도록, 장애 값들은 다른 정보에 기초하여 변경될 수 있다. 이러한 장애 값들은 도로 세그먼트에 대한 장애 값을 계산하기 위해 사용될 수 있다. 예를 들어, 다양한 신호들의 장애 값들은 예측 모델에 반영될 수 있는데, 이는 이동된 경우 도로 세그먼트에서 직면할 장애를 예측한다. 그러한 예측은 시간 상관될 수 있어, 예측된 장애 레벨이 하루 중 시간, 주, 계절, 또는 다른 시간 정보에 따라 특정 도로 세그먼트에 대해 변할 수 있다. 특정 루트 세그먼트에 대해, 이동의 특정 시간에서 다수의 장애가 발생하는 것으로 예측될 수 있다. 따라서, 장애 값은 다수의 예측된 장애의 함수로서 계산될 수 있다.
블록 730에서, 원점과 목적지 사이의 하나 이상의 가능한 루트 각각에 대한 루트 비용이 복수의 도로 세그먼트와 연관된 장애 값들에 기초하여 계산된다. 예를 들어, 루트 비용은 루트를 따르는 각각의 도로 세그먼트에 대한 총 장애 값들일 수 있다. 일부 예들에서, 루트 비용은 또한 시간, 거리, 교통 등과 같은, 다른 이동 변수들에서의 인자일 수 있다.
블록 740에서, 계산된 루트 비용들에 기초하여 자율 차량에 대한 이동 루트가 선택된다. 따라서, 자율 차량의 제어 시스템은 차량이 선택된 루트를 이동하게 할 수 있다.
도 8은 원점(O)과 목적지(D) 사이의 다수의 가능한 루트(810, 820, 830)의 예를 도시한다. 루트들(810-830)은 도 2의 맵 정보(200)와 같은 맵 정보에 대해 도시된다.
도 9는 루트들(810, 820, 830)을 도시하고, 여기서 각각의 루트는 복수의 도로 세그먼트를 포함한다. 예를 들어, 제1 루트(810)는 세그먼트들(1a-1h)을 포함하고, 제2 루트(820)는 세그먼트들(2a-2f)을 포함하고, 제3 루트(830)는 세그먼트들(3a-3g)을 포함한다. 도로 세그먼트들은 지도 상에 표시된 각각의 도로에 대해 정의될 수 있거나, 또는 원점과 목적지 사이의 각각의 가능한 루트에 대해서만 정의될 수 있다. 도로 세그먼트들은 도로 또는 루트를, 분석을 위해 임의의 수의 개별 하위부분으로 분할할 수 있다. 예를 들어, 추가적인 더 작은 세그먼트들은 잠재적인 장애들을 더 미세한 입도로 분석하기 위해 사용될 수 있는 한편, 더 적은 수의 더 큰 세그먼트는 더 적은 메모리 및 컴퓨팅 리소스들을 소비하는 더 빠른 분석을 위해 사용될 수 있다. 일부 예들에서, 도로 세그먼트들은 하나의 세그먼트로부터 다음 세그먼트까지의 크기가 상이할 수 있다. 도로 세그먼트들은, 절대 거리, 회전들 간의 거리, 추정된 이동 시간 등과 같은 임의의 인자들에 기초하여 지정될 수 있다.
도 10은 각각의 도로 세그먼트의 상대적 장애를 나타내는 가능한 루트들(810-830)을 도시한다. 이 예에서, 증가된 장애는 증가된 라인 두께로 표현된다. 루트(810)를 따라, 세그먼트들(1a 및 1b)은 비교적 낮은 장애를 갖는 반면, 세그먼트(1c)는 매우 높은 연관된 레벨의 장애를 갖는다. 이것은 그러한 급격한 좌회전을 행하도록 차량을 조종하는 것의 장애에 기인할 수 있다. 다른 인자들은 회전을 행하는 동안의 가시성 및 회전이 보호되지 못하는지를 포함할 수 있다. 예를 들어, 차량이 급격한 좌회전을 행하고 있는 동안 차량이 회전하고 있는 도로를 따라 이동하는 다른 차량들이 정지 또는 양보를 할 필요가 없는 경우, 회전이 장애를 증가시켰다. 도시된 예에서, 루트(810)의 다른 어려운 세그먼트들은 세그먼트(1f)를 포함한다. 이것은, 높은 보행자 교통, 거친 지형, 제한된 가시성 등과 같은, 회전 이외의 인자들에 기인할 수 있다.
루트(820)를 따라, 세그먼트들(2a 및 2b)은 또한 낮은 상대적 장애를 갖는 것으로 도시된다. 이러한 세그먼트들은 루트(810)의 세그먼트들(1a 및 1b)과 동일한 도로 부분들에 대응하기 때문에, 이들은 동일한 장애 레벨을 갖는 것으로 예상될 것이다. 그러나, 세그먼트들(2c-2e)은 높은 레벨의 연관된 장애를 갖지만, 세그먼트(1c)의 것보다 여전히 낮다. 이러한 장애는 세그먼트(1c)의 회전을 행하려고 시도하는 차량들 주위에서 조종해야 하는 것, 세그먼트(2d)의 비보호 좌회전을 행하기 위해 대기하는 것, 또는 복수의 다른 가능성 중 임의의 것의 결과일 수 있다. 세그먼트(2e)의 장애는, (예를 들어, 건물들, 표지판들, 잎, 주차된 자동차들, 또는 임의의 다른 물체들로부터) 방해받은 뷰, 도로 건설 공사 등과 같은, 다른 주행 조건들의 결과일 수 있다.
루트(830)를 따라, 세그먼트(3c)만이 연관된 장애의 레벨을 갖는 것으로서 도시된다. 이 장애 레벨은 세그먼트(2c)의 것에 대응하고, 동일한 주행 조건들의 결과일 가능성이 있다. 세그먼트(3d)가 좌회전을 포함하지만, 이러한 회전은 낮은 레벨의 연관된 장애를 가질 수 있는데, 그 이유는, 그것이 반대 방향들에서 이동하는 차량들이 정지 표지판들(251, 252)에 따라 정지할 것이라는 점에서 보호 회전이기 때문이다.
도 11은 가능한 루트들(810, 820, 830) 각각에 대한 루트 비용의 예시적인 계산을 도시한다. 각각의 루트 세그먼트에 대해, 그 세그먼트에 부여된 장애 값이 열거된다. 도 10의 예에서 장애가 그래픽으로 표시되었지만, 그것은 도 11에서는 수치 값으로 표현된다. 그러나, 장애 레벨을 표시하기 위한 임의의 규약이 사용될 수 있다는 것을 이해해야 한다. 도 10과 일관되게, 루트(10)의 세그먼트(1c)는 가장 높은 연관된 장애 레벨을 갖도록 표시된다. 비교적 증가된 장애의 다른 세그먼트들은 루트(810)의 세그먼트(1f), 루트(820)의 세그먼트들(2c-2e), 및 루트(830)의 세그먼트(3c)를 포함한다. 루트들(820)이 h에 대응하는 세그먼트를 갖지 않기 때문에, 이러한 값들은 0으로 설정된다. 루트들을 따르는 각각의 세그먼트에 대한 값들은 루트에 대한 총 장애 값을 도출하도록 합산될 수 있다. 예를 들어, 루트(810)는 총 20의 장애 값을 갖고, 루트(820)는 총 18의 장애를 갖고, 루트(830)는 총 11의 장애 값을 갖는다. 따라서, 단지 장애를 고려하면, 루트(830)는 최저 루트 비용인 11을 갖는 가장 바람직한 루트일 수 있다. 그러나, 위에서 언급된 바와 같이, 일부 예들에서 루트 비용을 계산할 때 거리, 시간 등과 같은, 다른 인자들이 고려될 수 있다.
전술한 예들은 이동 루트를 결정하는 유리한 방법을 설명하는데, 그 이유는 그것이 시간 및 거리와 같은 인자들의 전통적인 고려를 확장시켜, 주행/승차 경험을 추가로 고려하기 때문이다. 따라서, 자율 차량의 승객들은 그것이 다른 루트들보다 더 오래 걸릴 수 있음에도 불구하고 더 매끄럽거나 덜 위험한 주행을 선택하는 옵션을 가질 수 있다. 이것은 트립 동안 독서하기, 일하기, 또는 휴식을 취하기를 원하는 승객들에게 특히 바람직할 수 있다.
차량에 의해 직면할 수 있는 상이한 타입의 장애의 다수의 예가 전술되었지만, 임의의 수의 추가 타입의 장애가 또한 루트 비용 계산에 반영될 수 있다는 것을 이해해야 한다. 예를 들어, 특정 거리들 상에서, 쓰레기 수거는 미리 결정된 시간들, 예컨대 매 화요일 및 금요일마다 7am-8am 사이에서 발생할 수 있다. 쓰레기 수거 시간들 동안, 느리게 이동하고 자주 정지하는 쓰레기 트럭은 그 거리 상에서 이동하는 차량에 대한 장애물을 나타낼 수 있다. 더욱이, 쓰레기를 수집하는 환경 미화원들의 존재는 그 거리에서 이동하는 차량의 동작에서 추가적인 주의를 요구한다. 따라서, 그 거리를 따르는 이전 또는 이력적 주행들로부터의 장애 신호들은 미리 결정된 임계값 위의 다수의 장애물(예를 들어, 쓰레기 트럭, 쓰레기 캔들, 환경 미화원들 등)을 표시할 수 있다. 장애 신호들은 또한 더 느린 주행 시간들, 증가된 대기 시간들, 증가된 수의 브레이킹 시스템의 적용들, 예상치 못한 조종들(예를 들어, 진로를 벗어남) 등을 표시할 수 있다. 이러한 장애 신호들 중 임의의 것 또는 전부는 미리 결정된 쓰레기 수거 시간들 동안 특정 거리에 대한 비용의 계산에서 사용될 수 있다.
단지 추가적인 예로서, 주어진 도로는 학교 근처에 있을 수 있다. 이와 같이, 수업 시간들 동안, 그리고 특히 학교에의 도착 시간 및 학교로부터의 해산 시간 동안, 증가된 양의 보행자들은 주어진 도로 상에서 걷고 있을 수 있거나 주어진 도로를 횡단할 수 있다. 따라서, 그러한 수업 시간들 동안, 증가된 수의 장애물들이 제시될 수 있고, 주어진 도로 상에서 이동하는 차량들에 의한 추가적인 주의를 요구한다. 주어진 도로를 이동했던 이전 차량들로부터의 장애 신호들은 수업 시간들에 대응하는 시간들 동안 이러한 추가 장애물들의 존재를 표시할 수 있다. 이러한 추가 장애물들은 일부 경우들에서 원격 조작자에 대해 지원 요청 또는 연결해제를 야기할 수 있다. 주어진 도로 상의 특정한 시간들 동안의 이러한 추가 장애물들의 존재를 표시하는 이러한 장애 신호들은 주어진 도로를 이동하기 위한 비용을 계산하기 위해 사용될 수도 있다.
달리 명시되지 않는 한, 전술한 대안 예들은 상호 배타적인 것이 아니라, 다양한 조합들로 구현될 수 있어 고유 장점들을 달성한다. 위에서 설명된 특징들의 이러한 및 다른 변형들 및 조합들은 청구항에 의해 규정되는 주제로부터 벗어나지 않고서 사용될 수 있기 때문에, 전술한 실시예들의 설명은 청구항에 의해 규정되는 주제의 제한으로서가 아니라 예시로서 받아들여져야 한다. 또한, 본 명세서에 설명된 예들의 제공뿐만 아니라 "예컨대", "포함하는" 등과 같이 표현된 절들은 청구항들의 주제를 특정 예들로 제한하는 것으로서 해석되어서는 안 되고; 오히려, 예들은 많은 가능한 실시예들 중 하나만을 예시하도록 의도된다. 게다가, 상이한 도면들 내의 동일한 참조 번호들은 동일 또는 유사한 요소들을 식별할 수 있다.

Claims (24)

  1. 자율 차량에 대한 이동 루트를 결정하는 방법으로서,
    하나 이상의 컴퓨팅 디바이스에서, 네트워크를 통해 저장 시스템으로부터 데이터를 검색(retrieving)하는 단계 - 상기 데이터는 상기 자율 차량이 아닌 복수의 차량들에 의해 횡단되는 도로 세그먼트들에 관한 정보를 제공하고, 상기 데이터는 상기 복수의 차량들 중 하나 이상에 의한 자율 모드로부터 수동 모드로의 이전의 연결해제들(disengagements)을 표시하는 복수의 장애 신호들(difficulty signals)을 포함하고, 상기 저장 시스템 및 상기 네트워크는 상기 자율 차량의 외부에 있음 -;
    상기 데이터에 기초하여, 상기 장애 신호들에 기초한 각각의 도로 세그먼트에 대한 장애 값(difficulty value)을 결정하는 단계;
    상기 하나 이상의 컴퓨팅 디바이스에 의해, 원점과 목적지 사이의 하나 이상의 가능한 루트 각각에 대한 루트 비용을 계산하는 단계 - 상기 루트 비용은 적어도, 해당 루트를 따르는 상기 도로 세그먼트들에 대한 상기 장애 값들에 기초함 -;
    상기 하나 이상의 가능한 루트 각각에 대한 상기 루트 비용에 기초하여, 상기 하나 이상의 가능한 루트 중 이동할 루트를 결정하는 단계; 및
    상기 결정된 루트에 기초하여 라우팅 신호(routing signal)를 생성하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 루트 비용은 상기 결정된 루트를 따르는 상기 도로 세그먼트들의 다수의 비보호 회전을 표시하는 장애 신호들에 추가로 기초하는 방법.
  3. 제1항에 있어서,
    상기 장애 신호들을 시간적 피처들과 상관시키는 단계를 추가로 포함하는 방법.
  4. 제3항에 있어서,
    특정 세그먼트에 대한 상기 장애 값을 계산하는 것은 상기 특정 세그먼트를 따르는 예상된 이동의 날짜 또는 시간을, 상기 특정 세그먼트에 대한 상기 장애 신호들과 상관된 날짜 또는 시간과 비교하는 것을 포함하는 방법.
  5. 제1항에 있어서,
    상기 장애 값을 결정하는 것은 상기 장애 신호들 중 적어도 하나에 대응하는 장애에 직면할 확률을 결정하는 것을 포함하는 방법.
  6. 제1항에 있어서,
    상기 장애 값들을 예측 모델에 입력하는 단계를 추가로 포함하는 방법.
  7. 제1항에 있어서,
    각각의 도로 세그먼트에 대한 세그먼트 비용을 계산하는 단계를 추가로 포함하고, 상기 세그먼트 비용은 상기 장애 값, 거리, 및 각각의 도로 세그먼트를 횡단하는데 요구되는 시간에 기초하여 계산되고;
    상기 루트 비용은 상기 루트를 따르는 상기 도로 세그먼트들에 대한 상기 세그먼트 비용에 기초하여 계산되는 방법.
  8. 제7항에 있어서,
    상기 세그먼트 비용을 계산하는 것은:
    각각의 도로 세그먼트에 대한 상기 장애 값에 기초하여 장애 점수를 계산하는 것;
    각각의 도로 세그먼트의 상기 거리에 기초하여 거리 점수를 계산하는 것;
    각각의 도로 세그먼트를 횡단하는데 요구되는 시간에 기초하여 시간 점수를 계산하는 것;
    상기 장애 점수, 상기 거리 점수, 및 상기 시간 점수를 가중하는 것; 및
    상기 가중된 점수들의 함수로서 상기 세그먼트 비용을 계산하는 것을 포함하는 방법.
  9. 제8항에 있어서,
    상기 장애 점수, 상기 거리 점수, 및 상기 시간 점수를 가중하는 것은 상기 장애 점수, 상기 거리 점수, 및 상기 시간 점수에 대한 계수들을 설정하는 것을 포함하고, 상기 계수들은 상대적 가중치들을 조정하도록 수정가능한 방법.
  10. 제9항에 있어서,
    상기 자율 차량의 승객으로부터의 입력을 수신하는 단계; 및
    상기 승객으로부터의 상기 수신된 입력에 기초하여 상기 계수들을 조정하는 단계를 추가로 포함하는 방법.
  11. 제1항에 있어서,
    상기 장애 값은: 원격 주행 지원을 요청하는 것, 각각의 도로 세그먼트를 따르는 다수의 비보호 회전, 상기 자율 차량의 시야가 폐색되는 주행 영역의 부분, 또는 각각의 도로 세그먼트를 따르는 다수의 장애물들 중 적어도 하나를 표시하는 상기 장애 신호들에 추가로 기초하는 방법.
  12. 제1항에 있어서,
    상기 자율 차량이 상기 라우팅 신호에 기초하여 상기 결정된 루트를 따라 주행하게 하는 단계를 추가로 포함하는 방법.
  13. 자율 차량에 대한 이동 루트를 결정하는 시스템으로서,
    네트워크;
    저장 시스템; 및
    하나 이상의 프로세서
    를 포함하고, 상기 하나 이상의 프로세서는:
    상기 네트워크를 통해 상기 저장 시스템으로부터 데이터를 검색하고 - 상기 데이터는 상기 자율 차량이 아닌 복수의 차량들에 의해 다른 시각들에 횡단된 도로 세그먼트들에 관한 정보를 제공하고, 상기 데이터는 상기 복수의 차량들 중 하나 이상에 의한 자율 모드로부터 수동 모드로의 이전의 연결해제들을 표시하는 복수의 장애 신호들을 포함하고, 상기 저장 시스템 및 상기 네트워크는 상기 자율 차량의 외부에 있음 -;
    상기 데이터에 기초하여, 상기 장애 신호들에 기초한 각각의 도로 세그먼트에 대한 장애 값을 결정하고;
    원점과 목적지 사이의 하나 이상의 가능한 루트 각각에 대한 루트 비용을 계산하고 - 상기 루트 비용은 적어도, 해당 루트를 따르는 상기 도로 세그먼트들에 대한 상기 장애 값들에 기초함 -;
    상기 하나 이상의 가능한 루트 각각에 대한 상기 루트 비용에 기초하여, 상기 하나 이상의 가능한 루트 중 이동할 루트를 결정하고;
    상기 결정된 루트에 기초하여 라우팅 신호를 생성하도록 구성되는 시스템.
  14. 제13항에 있어서,
    상기 루트 비용은 상기 결정된 루트를 따르는 상기 도로 세그먼트들의 다수의 비보호 회전을 표시하는 장애 신호들에 추가로 기초하는 시스템.
  15. 제13항에 있어서,
    상기 하나 이상의 프로세서는 상기 장애 신호들을 시간적 피처들과 상관시키도록 추가로 구성되는 시스템.
  16. 제15항에 있어서,
    특정 세그먼트에 대한 상기 장애 값을 계산하는 것은 상기 특정 세그먼트를 따르는 예상된 이동의 날짜 또는 시간을, 상기 특정 세그먼트에 대한 상기 장애 신호들과 상관된 날짜 또는 시간과 비교하는 것을 포함하는 시스템.
  17. 제13항에 있어서,
    상기 장애 값을 결정하는 것은 상기 장애 신호들 중 적어도 하나에 대응하는 장애에 직면할 확률을 결정하는 것을 포함하는 시스템.
  18. 제13항에 있어서,
    상기 하나 이상의 프로세서는 상기 장애 값들을 예측 모델에 입력하도록 추가로 구성되는 시스템.
  19. 제13항에 있어서,
    상기 하나 이상의 프로세서는:
    각각의 도로 세그먼트에 대한 세그먼트 비용을 계산하도록 추가로 구성되고, 상기 세그먼트 비용은 상기 장애 값, 거리, 및 각각의 도로 세그먼트를 횡단하는데 요구되는 시간에 기초하여 계산되고;
    상기 루트 비용은 상기 루트를 따르는 상기 도로 세그먼트들에 대한 상기 세그먼트 비용에 기초하여 계산되는 시스템.
  20. 제19항에 있어서,
    상기 세그먼트 비용을 계산하는 것은:
    각각의 도로 세그먼트에 대한 상기 장애 값에 기초하여 장애 점수를 계산하는 것;
    각각의 도로 세그먼트의 상기 거리에 기초하여 거리 점수를 계산하는 것;
    각각의 도로 세그먼트를 횡단하는데 요구되는 시간에 기초하여 시간 점수를 계산하는 것;
    상기 장애 점수, 상기 거리 점수, 및 상기 시간 점수를 가중하는 것; 및
    상기 가중된 점수들의 함수로서 상기 세그먼트 비용을 계산하는 것을 포함하는 시스템.
  21. 제20항에 있어서,
    상기 장애 점수, 상기 거리 점수, 및 상기 시간 점수를 가중하는 것은 상기 장애 점수, 상기 거리 점수, 및 상기 시간 점수에 대한 계수들을 설정하는 것을 포함하고, 상기 계수들은 상대적 가중치들을 조정하도록 수정가능한 시스템.
  22. 제21항에 있어서,
    상기 하나 이상의 프로세서는:
    상기 자율 차량의 승객으로부터의 입력을 수신하고;
    상기 승객으로부터의 상기 수신된 입력에 기초하여 상기 계수들을 조정하도록 추가로 구성되는 시스템.
  23. 제13항에 있어서,
    상기 장애 값은: 원격 주행 지원을 요청하는 것, 각각의 도로 세그먼트를 따르는 다수의 비보호 회전, 상기 자율 차량의 시야가 폐색되는 주행 영역의 부분, 또는 각각의 도로 세그먼트를 따르는 다수의 장애물 중 적어도 하나를 표시하는 상기 장애 신호들에 추가로 기초하는 시스템.
  24. 제13항에 있어서,
    상기 자율 차량은 상기 라우팅 신호에 기초하여 상기 결정된 루트를 따라 주행하게 되는 시스템.
KR1020207017144A 2017-12-15 2018-11-26 차량 라우팅에서 장면 장애를 위한 예측 모델들의 사용 KR102408151B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/843,223 US10684134B2 (en) 2017-12-15 2017-12-15 Using prediction models for scene difficulty in vehicle routing
US15/843,223 2017-12-15
PCT/US2018/062446 WO2019118161A1 (en) 2017-12-15 2018-11-26 Using prediction models for scene difficulty in vehicle routing

Publications (2)

Publication Number Publication Date
KR20200074255A KR20200074255A (ko) 2020-06-24
KR102408151B1 true KR102408151B1 (ko) 2022-06-14

Family

ID=66814366

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207017144A KR102408151B1 (ko) 2017-12-15 2018-11-26 차량 라우팅에서 장면 장애를 위한 예측 모델들의 사용

Country Status (9)

Country Link
US (2) US10684134B2 (ko)
EP (1) EP3724606B1 (ko)
JP (1) JP6959450B2 (ko)
KR (1) KR102408151B1 (ko)
CN (2) CN111480052B (ko)
AU (2) AU2018385335B2 (ko)
CA (1) CA3085725A1 (ko)
SG (1) SG11202005531PA (ko)
WO (1) WO2019118161A1 (ko)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10627813B2 (en) * 2015-04-21 2020-04-21 Panasonic Intellectual Property Management Co., Ltd. Information processing system, information processing method, and program
US10745006B2 (en) * 2018-02-01 2020-08-18 GM Global Technology Operations LLC Managing automated driving complexity of the forward path using perception system measures
JP2020079734A (ja) * 2018-11-12 2020-05-28 日本電信電話株式会社 経路探索装置、経路探索方法、及びプログラム
JP7115246B2 (ja) * 2018-11-21 2022-08-09 日本電信電話株式会社 現在位置推定装置、現在位置推定方法、及びプログラム
CA3120965A1 (en) * 2018-11-26 2020-06-04 Uber Technologies, Inc. Routing graph management in autonomous vehicle routing
US11829135B2 (en) 2018-11-28 2023-11-28 Uber Technologies, Inc. Tuning autonomous vehicle dispatch using vehicle performance
US20200284598A1 (en) * 2019-03-06 2020-09-10 Lyft, Inc. Systems and methods for autonomous vehicle performance evaluation
JP2021533334A (ja) * 2019-06-28 2021-12-02 グーグル エルエルシーGoogle LLC 計算されたパラメータ間のトレードオフを考慮したナビゲーションルートの生成およびカープーリングオプションの特定
CN115380196A (zh) * 2019-11-11 2022-11-22 御眼视觉技术有限公司 用于确定道路安全性的系统和方法
CN111121814A (zh) * 2020-01-08 2020-05-08 百度在线网络技术(北京)有限公司 导航方法、装置、电子设备及计算机可读存储介质
US11814073B2 (en) * 2020-03-18 2023-11-14 Baidu Usa Llc Learning based controller for autonomous driving
WO2021203429A1 (zh) * 2020-04-10 2021-10-14 华为技术有限公司 自动驾驶人工接管的预报方法、装置及系统
US11500372B2 (en) * 2020-05-18 2022-11-15 Gm Cruise Holdings Llc Joint optimization of robotic vehicle routing for ride quality, safety, and operator demand
US11886193B1 (en) 2020-06-04 2024-01-30 Nuro, Inc. Methods and apparatus for using scene-based metrics to gate readiness of autonomous systems
US11634161B2 (en) * 2020-06-24 2023-04-25 Woven Planet North America, Inc. Path planning using delta cost volume generated from movement restrictions and observed driving behavior
US11458991B2 (en) * 2020-06-29 2022-10-04 Woven Planet North America, Inc Systems and methods for optimizing trajectory planner based on human driving behaviors
US11892838B1 (en) 2020-07-27 2024-02-06 Nuro, Inc. Framework for validating autonomy and teleoperations systems
CN111739327B (zh) * 2020-07-29 2022-05-13 湖南汽车工程职业学院 一种基于物联网技术的路内停车规划系统
US11884291B2 (en) 2020-08-03 2024-01-30 Waymo Llc Assigning vehicles for transportation services
US11687094B2 (en) 2020-08-27 2023-06-27 Here Global B.V. Method, apparatus, and computer program product for organizing autonomous vehicles in an autonomous transition region
US11691643B2 (en) 2020-08-27 2023-07-04 Here Global B.V. Method and apparatus to improve interaction models and user experience for autonomous driving in transition regions
US11713979B2 (en) 2020-08-27 2023-08-01 Here Global B.V. Method, apparatus, and computer program product for generating a transition variability index related to autonomous driving
US11726471B2 (en) * 2020-08-27 2023-08-15 Waymo Llc Methods and systems for gradually adjusting vehicle sensor perspective using remote assistance
US20220063653A1 (en) * 2020-08-27 2022-03-03 Here Global B.V. Selecting an autonomous vehicle from a set of autonomous vehicles
JP7251535B2 (ja) * 2020-09-11 2023-04-04 トヨタ自動車株式会社 配車システム、配車サーバ、及び配車方法
JP7310764B2 (ja) * 2020-09-11 2023-07-19 トヨタ自動車株式会社 配車システム、配車サーバ、及び配車方法
CN112050824B (zh) * 2020-09-17 2023-03-28 阿波罗智联(北京)科技有限公司 用于车辆导航的路线规划方法、装置、系统及电子设备
US11519743B2 (en) * 2020-09-17 2022-12-06 International Business Machines Corporation Stalled self-driving vehicle rescue system
US11643103B2 (en) * 2020-09-24 2023-05-09 GM Global Technology Operations LLC Navigation considering route driving difficulty
US20220351616A1 (en) * 2021-04-28 2022-11-03 Verizon Patent And Licensing Inc. Systems and methods for route planning based on road safety metrics
JP2023043074A (ja) * 2021-09-15 2023-03-28 日立Astemo株式会社 車両制御システムおよび電子制御装置
US11790776B1 (en) 2022-07-01 2023-10-17 State Farm Mutual Automobile Insurance Company Generating virtual reality (VR) alerts for challenging streets
DE102022118245A1 (de) 2022-07-21 2024-02-01 Dr. Ing. H.C. F. Porsche Aktiengesellschaft System, Verfahren und Computerprogrammprodukt zur optimierten Testplanung für das Prototypenmanagement einer Entität
CN117171290B (zh) * 2023-11-03 2024-04-16 安徽蔚来智驾科技有限公司 确定安全行驶区域的方法及系统、自动驾驶方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101371930B1 (ko) 2012-11-08 2014-03-07 현대자동차주식회사 자율주행차량의 주행제어 장치 및 그 방법

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080059007A1 (en) * 2006-06-09 2008-03-06 Whittaker William L System and method for autonomously convoying vehicles
JP5796947B2 (ja) 2010-10-08 2015-10-21 三菱重工業株式会社 自律走行制御装置及びそれを備えた自律走行車両
US9188985B1 (en) * 2012-09-28 2015-11-17 Google Inc. Suggesting a route based on desired amount of driver interaction
JP6287264B2 (ja) * 2014-01-27 2018-03-07 アイシン・エィ・ダブリュ株式会社 経路案内システム、経路案内方法及びコンピュータプログラム
JP6467773B2 (ja) * 2014-02-25 2019-02-13 アイシン・エィ・ダブリュ株式会社 経路探索システム、経路探索方法及びコンピュータプログラム
US9547989B2 (en) * 2014-03-04 2017-01-17 Google Inc. Reporting road event data and sharing with other vehicles
US20150345967A1 (en) * 2014-06-03 2015-12-03 Nissan North America, Inc. Probabilistic autonomous vehicle routing and navigation
KR20160013713A (ko) * 2014-07-28 2016-02-05 현대자동차주식회사 자율주행차량의 전역경로 생성장치 및 방법
US9494439B1 (en) * 2015-05-13 2016-11-15 Uber Technologies, Inc. Autonomous vehicle operated with guide assistance of human driven vehicles
KR101724887B1 (ko) * 2015-08-10 2017-04-07 현대자동차주식회사 전방 도로 형상과 연결을 분석해 차선 변경과 타이밍을 결정하는 자율주행 제어 장치 및 방법
US9587952B1 (en) * 2015-09-09 2017-03-07 Allstate Insurance Company Altering autonomous or semi-autonomous vehicle operation based on route traversal values
US20170115124A1 (en) * 2015-10-21 2017-04-27 Ford Global Technologies, Llc Driver Workload Prediction and Path Routing
JP6815724B2 (ja) * 2015-11-04 2021-01-20 トヨタ自動車株式会社 自動運転システム
US10620635B2 (en) * 2015-11-05 2020-04-14 Hitachi, Ltd. Moving object movement system and movement path selection method
KR101747848B1 (ko) * 2015-11-27 2017-06-27 한국과학기술원 교통 상황 예측 서버 및 방법
US9557183B1 (en) * 2015-12-08 2017-01-31 Uber Technologies, Inc. Backend system for route planning of autonomous vehicles
DE102015225152A1 (de) * 2015-12-14 2017-06-14 Robert Bosch Gmbh Sicherheitsoptimierte Navigation
US10379533B2 (en) * 2016-01-04 2019-08-13 GM Global Technology Operations LLC System and method for autonomous vehicle fleet routing
CA3014660C (en) * 2016-02-15 2021-08-17 Allstate Insurance Company Early notification of non-autonomous area
US11267489B2 (en) * 2016-03-17 2022-03-08 Hitachi, Ltd. Automatic operation assistance system and automatic operation assistance method
US20170292843A1 (en) * 2016-04-07 2017-10-12 Delphi Technologies, Inc. Automated vehicle route planner with route difficulty scoring
US10054454B2 (en) * 2016-05-06 2018-08-21 Ford Global Technologies, Llc Network based storage of vehicle and infrastructure data for optimizing vehicle routing
CN109891472B (zh) * 2016-11-09 2021-11-26 本田技研工业株式会社 车辆控制系统、车辆控制方法及存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101371930B1 (ko) 2012-11-08 2014-03-07 현대자동차주식회사 자율주행차량의 주행제어 장치 및 그 방법

Also Published As

Publication number Publication date
KR20200074255A (ko) 2020-06-24
CN114216475A (zh) 2022-03-22
AU2020230354A1 (en) 2020-10-01
JP6959450B2 (ja) 2021-11-02
US10684134B2 (en) 2020-06-16
WO2019118161A8 (en) 2020-06-25
AU2020230354B2 (en) 2021-12-16
WO2019118161A1 (en) 2019-06-20
US20190186936A1 (en) 2019-06-20
CN111480052A (zh) 2020-07-31
CN111480052B (zh) 2021-12-21
US20200264003A1 (en) 2020-08-20
CA3085725A1 (en) 2019-06-20
AU2018385335B2 (en) 2020-07-16
AU2018385335A1 (en) 2020-07-09
EP3724606A1 (en) 2020-10-21
EP3724606B1 (en) 2024-04-17
SG11202005531PA (en) 2020-07-29
EP3724606A4 (en) 2021-09-08
JP2021507206A (ja) 2021-02-22

Similar Documents

Publication Publication Date Title
KR102408151B1 (ko) 차량 라우팅에서 장면 장애를 위한 예측 모델들의 사용
KR102365050B1 (ko) 승객 편안함을 위해 경로 및 운전 스타일을 결정하고 동적으로 업데이트하기 위한 방법 및 시스템
CN110036425B (zh) 用于操纵车辆的方法和系统以及非暂时性计算机可读介质
JP2019519420A (ja) 車両の監視制御方法
US11657318B2 (en) Assessing ride quality for autonomous vehicles
US11804136B1 (en) Managing and tracking scouting tasks using autonomous vehicles
CN113692373B (zh) 自动驾驶车辆服务的滞留和范围分析
WO2020123195A1 (en) Automated performance checks for autonomous vehicles
US11885639B2 (en) Generating scouting objectives
US11391587B1 (en) Assessing the impact of blockages on autonomous vehicle services
US11947356B2 (en) Evaluating pullovers for autonomous vehicles
US20240083458A1 (en) Using simulations to identify differences between behaviors of manually-driven and autonomous vehicles
US20220413510A1 (en) Targeted driving for autonomous vehicles
CN115214625A (zh) 识别自主车辆的可停车区域
CN113928335A (zh) 用于控制具有自主驾驶模式的车辆的方法和系统
US11884291B2 (en) Assigning vehicles for transportation services
EP4120172A1 (en) Real time event triggered feedback for autonomous vehicles
CN114595378A (zh) 用于运输服务的智能目的地建议

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant