KR102062608B1 - 자율 주행 차량의 제어 피드백에 기초한 맵 업데이트 방법 및 시스템 - Google Patents

자율 주행 차량의 제어 피드백에 기초한 맵 업데이트 방법 및 시스템 Download PDF

Info

Publication number
KR102062608B1
KR102062608B1 KR1020187006492A KR20187006492A KR102062608B1 KR 102062608 B1 KR102062608 B1 KR 102062608B1 KR 1020187006492 A KR1020187006492 A KR 1020187006492A KR 20187006492 A KR20187006492 A KR 20187006492A KR 102062608 B1 KR102062608 B1 KR 102062608B1
Authority
KR
South Korea
Prior art keywords
command
driving
control command
state
parameter
Prior art date
Application number
KR1020187006492A
Other languages
English (en)
Other versions
KR20190094095A (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 KR20190094095A publication Critical patent/KR20190094095A/ko
Application granted granted Critical
Publication of KR102062608B1 publication Critical patent/KR102062608B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • 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
    • 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
    • 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
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/14Adaptive cruise control
    • 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
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • B60W40/06Road conditions
    • B60W40/072Curvature of the road
    • 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
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • B60W40/06Road conditions
    • B60W40/076Slope angle of the road
    • 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/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • G01C21/30Map- or contour-matching
    • G01C21/32Structuring or formatting of map data
    • 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
    • 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/3833Creation or updating of map data characterised by the source of data
    • G01C21/3848Data obtained from both position sensors and additional sensors
    • 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/3885Transmission of map data to client devices; Reception of map data by client devices
    • G01C21/3896Transmission of map data from central databases
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • 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
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/16Pitch
    • 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
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/18Roll
    • B60W2550/142
    • 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
    • B60W2552/00Input parameters relating to infrastructure
    • B60W2552/15Road slope, i.e. the inclination of a road segment in the longitudinal direction

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
  • Traffic Control Systems (AREA)
  • Navigation (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

일 실시예에서, ADV가 도로 세그먼트를 주행하는 경우, 제1 제어 명령에 응답하여 주행 파라미터가 기록된다. 제1 주행 파라미터와 제1 제어 명령에 대응하는 목표 주행 파라미터 간의 차이를 결정된다. 차이가 미리 정해진 임계값을 초과한 것으로 판정하는 것에 응답하여, 차이를 보상하고 ADV가 목표 주행 파라미터에 더 가까운 제2 주행 파라미터로 주행하게 하는 제2 제어 명령이 발행된다. 도로 세그먼트의 경사 상태는 적어도 제2 제어 명령에 기초하여 도출된다. 도출된 경사 상태에 기초하여 도로의 도로 세그먼트에 대응하는 맵의 맵 데이터가 업데이트된다. 업데이트된 맵은 ADV가 이후 동일한 도로에서 주행할 때 도로의 경사 상태를 고려하여 적절한 제어 명령을 생성하고 발행하는 데에 사용될 수 있다.

Description

자율 주행 차량의 제어 피드백에 기초한 맵 업데이트 방법 및 시스템
본 발명의 실시예들은 일반적으로 자율 주행 차량을 동작하는 것에 관한 것이다. 특히, 본 발명의 실시예들은 자율 주행 차량의 제어 피드백에 기초하여 맵을 업데이트하는 것에 관한 것이다.
자율 주행 모드에서(예를 들어, 운전자 없이) 동작하는 차량에서 탑승자, 특히 운전자는 일부 운전과 관련하여 담당하고 있는 사항들로부터 경감될 수 있다. 자율 주행 모드에서 작동할 때, 차량은 온보드 센서 및 맵 및 경로 정보를 사용하여 다양한 위치들로 내비게이트할 수 있고, 그 결과 최소한의 인간과의 상호 작용으로 또는 일부의 경우 승객 없이 차량이 이동하는 것이 허용된다.
모션 계획 및 제어는 자율 주행에 있어서 중요한 동작들이다. 예를 들어 스로틀, 제동 및 스티어링 명령은 맵 및 경로 정보를 기초로 생성될 수 있는 자율 주행에서 가장 중요한 명령이다. 정확하고 최신의 맵, 특히 고해상도 맵은 자율 주행에 필수적이다. 그러나 도로 표면이 변경 될 수 있으며 맵 데이터 수집이 올바르지 않거나 부정확할 수 있다. 관성 측정 유닛과 같은 센서를 사용하여 도로 상태를 업데이트하는 것은 비용이 많이 든다. 도로 상태와 관련하여 맵을 업데이트하는 효율적인 방법이 부족하다.
본 개시의 실시예들은 자율 주행을 위한 맵을 업데이트하기 위한 컴퓨터로 구현된 방법, 비일시적 기계 판독가능한 매체 및 데이터 처리 시스템을 제공한다.
본 개시의 일 실시예에서, 자율 주행을 위한 맵을 업데이트하는 컴퓨터로 구현된 방법은: 제1 제어 명령에 응답하여 도로의 세그먼트에서 주행하는 자율 주행 차량(ADV)의 제1 주행 파라미터를 기록하는 단계; 상기 제1 주행 파라미터와 상기 제1 제어 명령에 대응하는 목표 주행 파라미터 간의 차이를 결정하는 단계; 상기 차이가 소정의 임계값을 초과하는 것으로 판정한 것에 응답하여, 제2 제어 명령을 발행하여 상기 차이를 보상하고 상기 ADV를 상기 목표 주행 파라미터에 더 가까운 제2 주행 파라미터로 주행하게 하는 단계; 적어도 상기 제2 제어 명령에 기초하여 상기 도로의 세그먼트의 경사 상태를 도출하는 단계; 및 상기 도출된 경사 상태에 기초하여 상기 도로의 세그먼트에 대응하는 맵의 맵 데이터를 업데이트하는 단계를 포함한다.
본 개시의 다른 실시예에서, 비일시적 기계 판독 가능 매체는, 프로세서에 의해 실행될 때 상기 프로세서로 하여금 동작을 수행하게 하는 명령어를 저장한다. 상기 동작은: 제1 제어 명령에 응답하여 도로의 세그먼트에서 주행하는 자율 주행 차량(ADV)의 제1 주행 파라미터를 기록하는 것; 상기 제1 주행 파라미터와 상기 제1 제어 명령에 대응하는 목표 주행 파라미터 간의 차이를 결정하는 것; 상기 차이가 소정의 임계값을 초과하는 것으로 판정한 것에 응답하여, 제2 제어 명령을 발행하여 상기 차이를 보상하고 상기 ADV를 상기 목표 주행 파라미터에 더 가까운 제2 주행 파라미터로 주행하게 하는 것; 적어도 상기 제2 제어 명령에 기초하여 상기 도로의 세그먼트의 경사 상태를 도출하는 것; 및 상기 도출된 경사 상태에 기초하여 상기 도로의 세그먼트에 대응하는 맵의 맵 데이터를 업데이트하는 것을 포함한다.
본 개시의 또 다른 실시예에서, 데이터 처리 시스템은, 프로세서; 및 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금 동작을 수행하게 하는 명령어들을 저장하기 위해 상기 프로세서에 연결된 메모리를 포함한다. 상기 동작들은: 제1 제어 명령에 응답하여 도로의 세그먼트에서 주행하는 자율 주행 차량(ADV)의 제1 주행 파라미터를 기록하는 것, 상기 제1 주행 파라미터와 상기 제1 제어 명령에 대응하는 목표 주행 파라미터 간의 차이를 결정하는 것, 상기 차이가 소정의 임계값을 초과하는 것으로 판정한 것에 응답하여, 제2 제어 명령을 발행하여 상기 차이를 보상하고 상기 ADV를 상기 목표 주행 파라미터에 더 가까운 제2 주행 파라미터로 주행하게 하는 것, 적어도 상기 제2 제어 명령에 기초하여 상기 도로의 세그먼트의 경사 상태를 도출하는 것, 및 상기 도출된 경사 상태에 기초하여 상기 도로의 세그먼트에 대응하는 맵의 맵 데이터를 업데이트하는 것을 포함한다.
본 개시의 또 다른 실시예에서, 자율 주행을 위한 맵을 업데이트하는 컴퓨터로 구현된 방법은: 복수의 차량들이 복수의 도로상에서 주행하고 있을 때 기록된 상기 차량들의 주행 통계를 수신하는 단계 - 상기 주행 통계는 상이한 시점에서 상기 차량들에 발행된 제어 명령과 상기 제어 명령에 응답한 상기 차량들의 응답을 포함함 -; 주어진 도로 세그먼트에 대해, 상기 차량들이 상기 제어 명령과 관련된 하나 이상의 목표 주행 파라미터를 유지하기 위해 상기 차량들의 이전 제어 명령을 보상하도록 하나 이상의 차량에 발행된 하나 이상의 제어 명령이 식별되는 단계; 상기 제어 명령 및 상기 목표 주행 파라미터에 기초하여 상기 도로의 세그먼트의 경사 상태를 도출하는 단계; 및 상기 도로의 세그먼트에 대응하는 맵의 맵 데이터를 업데이트하는 단계를 포함한다.
본 발명의 실시예들은 유사한 참조 번호가 유사한 요소들을 나타내는 첨부된 도면들의 도면들에서 예시로서 설명되고 이에 한정되지 않는다.
도 1은 본 발명의 일 실시예에 따른 네트워크 시스템을 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 자율 주행 차량의 일례를 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 자율 주행 차량과 함께 사용되는 인지 및 계획 시스템의 일례를 나타내는 블록도이다.
도 4a 내지 4c는 차량 또는 도로의 경사(slope) 상태를 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 경사 상태-명령 매핑 테이블의 일례를 나타내는 블록도이다.
도 6a는 본 발명의 일 실시예에 따른 피치(pitch) 상태-명령 매핑 테이블의 일례를 나타내는 블록도이다.
도 6b는 본 발명의 일 실시예에 따른 롤(roll) 상태-명령 매핑 테이블의 일례를 나타내는 블록도이다.
도 7은 본 발명의 일 실시예에 따른 자율 주행을 위한 맵을 업데이트하는 프로세스를 나타내는 흐름도이다.
도 8은 본 발명의 다른 실시예에 따른 자율 주행을 위한 맵을 업데이트하는 프로세스를 나타내는 흐름도이다.
도 9는 본 발명의 다른 실시예에 따른 맵을 업데이트하는 시스템을 나타내는 블록도이다.
도 10은 본 발명의 다른 실시예에 따른 자율 주행을 위한 맵을 업데이트하는 프로세스를 나타내는 흐름도이다.
도 11은 일 실시예에 따른 데이터 처리 시스템을 나타내는 블록도이다.
본 발명의 다양한 실시예들 및 양상들은 이하 세부 설명을 참조하여 설명되며, 첨부 도면들은 다양한 실시예들을 나타낸다. 아래의 설명 및 도면은 본 발명을 예시적으로 보여주며, 본 발명을 제한하는 것으로 해석되어서는 안 된다. 다수의 구체적인 세부 사항들이 본 발명의 다양한 실시예들의 완전한 이해를 제공하기 위해 설명된다. 그러나, 어떤 경우에는, 본 발명의 실시예들에 대한 간결한 설명을 제공하기 위해 잘 알려진 또는 종래의 세부 사항은 설명되지 않는다.
명세서에서의 "일 실시예" 또는 "실시예"에 대한 참조는, 실시예와 관련하여 설명된 특정 특징, 구조 또는 특성이 본 발명의 적어도 하나의 실시예에 포함될 수 있다는 것을 의미한다. 명세서의 다양한 곳에서 기재된 "일 실시예에서"라는 문구는 반드시 모두 동일한 실시예를 지칭하는 것은 아니다.
본 발명의 일 실시예에 따르면, 도로의 경사 상태를 결정하기 위한 비싼 센서를 이용하는 대신에, 자율 주행 차량 (ADV)이 그 특정 도로를 주행할 때의 경사 상태를 추정하기 위해 제어 피드백이 이용된다. 일 실시예에서, ADV가 도로의 특정 도로 세그먼트를 주행하는 경우, 목표 상태(예: 목표 속도, 목표 가속도, 목표 진행 방향)에 도달하기 위해 ADV를 주행시키기 위한 계획 및 제어 데이터에 기초하여 제어 명령(예를 들어, 속도 제어 명령, 스티어링 명령)이 ADV에 발행된다. ADV의 응답은 기록되고 운전의 목표 정보와 비교된다. ADV의 응답이 목표로부터 벗어난 경우, 오류를 보상하기 위해 추가 제어 명령이 발행될 수 있다.
추가적인 제어 명령에 기초하여, 도로 세그먼트의 경사 상태가 추정될 수 있다. 이러한 추정은 ADV가 평평한 도로에서 주행하는 경우 일반적으로 ADV가 목표로부터 많이 벗어나지 않는다는 가정에 근거할 수 있다. ADV가 목표에서 벗어나면, 그것은 도로의 경사 상태에 기인할 수 있다. 차량의 제어 피드백을 사용함으로써, 도로의 경사 상태가 추정될 수 있고, 예를 들어, 특정 도로 세그먼트가 경사진 도로 세그먼트일 수 있음을 나타내기 위해, 동일한 목적으로 비싼 센서를 사용할 필요 없이, 특정 도로 세그먼트에 대응하는 맵의 맵 데이터가 업데이트될 수 있다. 업데이트된 맵은 목표에 가능한 가깝게 차량을 주행시키기 위해 도로 세그먼트의 경사 상태를 고려하여 동일한 도로 세그먼트를 주행할 때 적절한 제어 명령을 발행하는데에 차후 이용될 수 있다.
일 실시예에서, ADV가 도로 세그먼트를 주행하는 경우, 제1 제어 명령(예를 들어, 속도 제어 명령, 스티어링 명령)에 응답하여 주행 파라미터(예: 속도, 가속도, 진행 방향)가 기록된다. 제1 주행 파라미터와 제1 제어 명령에 대응하는 목표 주행 파라미터 사이의 차이를 결정되며, 차이는 도로의 경사로 인한 목표로부터의 오차를 나타낸다. 차이가 미리 정해진 임계값을 초과한 것으로 판정하는 것에 응답하여, 차이를 보상하고 ADV가 목표 주행 파라미터에 더 가까운 제2 주행 파라미터로 주행하게 하는 제2 제어 명령이 발행된다. 도로 세그먼트의 경사 상태는 적어도 제2 제어 명령 또는 제1 제어 명령과 제2 제어 명령 간의 차이에 기초하여 도출된다. 도출된 경사 상태에 기초하여 도로의 도로 세그먼트에 대응하는 맵의 맵 데이터가 업데이트된다. 업데이트된 맵은 ADV가 이후 동일한 도로에서 주행할 때 도로의 경사 상태를 고려하여 적절한 제어 명령을 생성하고 발행하는 데에 사용될 수 있다.
일 실시예에 따라, 도로 세그먼트의 경사 상태를 도출함에 있어서, 룩업 동작은 테이블과 같은 경사-명령 매핑 데이터 구조에서 실행되어, 제2 제어 명령과 목표 주행 파라미터와 대략 일치하는 매핑 엔트리를 검색하고 찾아낸다. 경사 상태는 경사/명령 매핑 테이블의 매칭 엔트리에서 얻어진다. 경사/명령 매핑 테이블은 다수의 맵핑 엔트리를 포함한다. 각각의 매핑 엔트리는 특정 경사 상태를 특정 제어 명령 및 특정 주행 파라미터로 또는 그 반대로 매핑한다. 경사/명령 매핑 테이블은 다양한 데이터 구조 또는 데이터베이스로 구현될 수 있다.
일 실시예에서, 경사/명령 맵핑 테이블은 평평한 도로 및 경사진 도로를 포함하는 다양한 상이한 유형의 도로를 주행하는 다양한 차량의 다량의 주행 통계의 기초하여 생성될 수 있다. 차량은 자율적으로 운전되거나 다양한 운전자에 의해 운전될 수 있다. 주행 통계는, 차량이 평평한 도로 및 경사진 도로를 포함한 다양한 상이한 유형의 도로에서 주행될 때 상이한 시점에서 발행된 상이한 제어 명령(예: 속도 제어 명령, 스티어링 명령) 및 기록된 차량의 응답(예: 가속/감속, 진행 방향)을 포함할 수 있다. 일 실시예에서, 경사/명령 매핑 테이블은 피치 상태-명령(피치/명령) 매핑 테이블 및 롤 상태-명령 (롤/명령) 매핑 테이블을 포함한다. 피치/명령 매핑 테이블은 다수의 피치 매핑 엔트리를 포함한다. 각 피치 매핑 엔트리는 속도 제어 명령(예: 스로틀/제동 명령)과 차량의 속도 또는 가속/감속을 피치 상태 또는 그 반대 방향으로 매핑한다. 롤/명령 매핑 테이블은 다수의 롤 매핑 엔트리를 포함한다. 각 롤 매핑 엔트리는 스티어링 명령 및 차량의 진행 방향 또는 각도를 롤 상태 또는 그 반대 방향으로 매핑한다. 경사/명령 매핑 테이블은 다른 주행 파라미터에 대한 다른 매핑 테이블을 더 포함할 수 있다.
본 발명의 다른 실시예에 따르면, 다수의 ADV의 주행 통계가 캡쳐되어 수집된다. 주행 통계는 다른 시점 및 다른 도로에서 차량에 발행된 제어 명령 및 명령에 응답한 차량의 응답을 기록한다. 캡쳐된 명령은 도로의 경사 상태로 인한 오류를 보상하기 위해 생성된 제어 명령을 포함할 수 있다. 그리고 나서, 주행 통계는 오프라인의 데이터 분석 시스템에서 분석되어 적어도 일부 도로의 경사 상태를 도출하고, 그 도로의 대응하는 맵 데이터는 경사 상태에 기초하여 업데이트된다. 대안적으로, 각 차량은 그 자신 소유의 로컬 맵을 업데이트한다. 그리고 나서, 차량의 로컬 맵은 중앙 시스템으로 전송되어 글로벌 맵으로 병합되고 나서, 글로벌 맵은 향후 사용을 위해 다시 차량으로 재분배된다.
일 실시예에 따르면, 다수의 차량의 주행 통계가 수집되며, 주행 통계는, 차량에 발행된 다양한 제어 명령 및 제어 명령에 응답한 차량의 응답을 포함한다. 주어진 도로 세그먼트에 대해, 차량이 제어 명령과 관련된 하나 이상의 목표 주행 파라미터를 유지하기 위해 차량의 이전 제어 명령을 보상하도록 하나 이상의 차량에 발행된 하나 이상의 제어 명령이 식별된다. 도로 세그먼트의 경사 상태는 제어 명령 및 목표 주행 파라미터에 기초하여 도출된다. 경사 상태에 기초하여 도로 세그먼트에 대응하는 맵의 맵 데이터가 업데이트된다.
경사진 도로는 오르막/내리막 도로와 같은 종방향의 경사진 도로, 기울어진 좌 /우 도로와 같은 횡방향의(cross) 경사진 도로 또는 두 가지의 조합일 수 있다. 경사 상태는 주어진 시점에서 도로의 피치 상태 및/또는 롤 상태를 포함할 수 있다. 경사 상태는 경사 각 또는 경사 백분율로 나타낼 수 있다. 유사하게, 피치 상태는 피치 각도 또는 피치 백분율로 나타낼 수 있으며 롤 상태는 롤 각도 또는 롤 비율로 나타낼 수 있다. 평평한 도로는 대략 제로 경사 상태를 가진 도로를 가리킨다. 주행 파라미터는 다른 주행 파라미터뿐만 아니라 속도, 가속률(acceleration rate) 및/또는 진행 방향을 포함할 수 있다.
도 1은 본 발명의 일 실시예에 따른 자율 주행 차량 네트워크 구성을 나타내는 블록도이다. 도 1을 참조하면, 네트워크 구성(100)은, 네트워크(102) 상에서 하나 이상의 서버(103-104)와 통신 가능하게 결합될 수 있는 자율 주행 차량(101)을 포함한다. 하나의 자율 주행 차량이 도시되어 있지만, 다수의 자율 주행 차량이 서로 결합될 수 있고/있거나 네트워크(102)를 통해 서버들(103-104)에 결합될 수 있다. 네트워크(102)는 근거리 통신망(LAN), 인터넷과 같은 광역 네트워크(WAN), 셀룰러 네트워크, 위성 네트워크 또는 이들의 조합과 같은 유선 또는 무선의 임의의 유형의 네트워크일 수 있다. 서버(들) (103-104)는 웹 또는 클라우드 서버, 애플리케이션 서버, 백엔드 서버 또는 이들의 조합과 같은 임의의 종류의 서버 또는 서버 클러스터일 수 있다. 서버(103-104)는 데이터 분석 서버, 콘텐츠 서버, 교통 정보 서버, 맵 및 관심 지점(MPOI: map and point of interest) 서버 또는 위치 서버 등일 수 있다.
자율 주행 차량은, 자율 주행 모드에서 운전자로부터의 입력이 거의 또는 전혀 없이 차량이 주변 환경 사이로 네비게이트할 수 있도록 구성될 수 있는 차량을 지칭한다. 이러한 자율 주행 자량은 차량이 운행되는 환경에 관한 정보를 검출하도록 구성된 하나 이상의 센서를 갖는 센서 시스템을 포함할 수 있다. 차량 및 관련 제어기(들)는 검출된 정보를 이용하여 주변 환경 사이로 네비게이트한다. 자율 주행 차량(101)은 수동 모드, 완전 자율 주행 모드 또는 부분 자율 주행 모드로 운행될 수 있다.
일 실시예에서, 자율 주행 차량(101)은 인지 및 계획 시스템(110), 차량 제어 시스템(111), 무선 통신 시스템(112), 사용자 인터페이스 시스템(113), 인포테인먼트 시스템(114) 및 센서 시스템(115)을 포함하지만, 이에 한정되지 않는다. 자율 주행 차량(101)은, 예를 들어, 가속 신호 또는 명령, 감속 신호 또는 명령, 스티어링 신호 또는 명령, 제동 신호 또는 명령 등과 같은 다양한 통신 신호 및/또는 명령을 사용하여, 차량 제어 시스템(111) 및/또는 인지 및 계획 시스템(110)에 의해 제어될 수 있는, 엔진, 차륜(wheel), 스티어링 휠, 변속기 등과 같은, 일반 차량에 포함되는 특정 공통 구성 요소를 더 포함할 수 있다.
구성요소(110-115)는 인터커넥트(interconnect), 버스, 네트워크 또는 이들의 조합을 통해 서로 통신 가능하게 결합될 수 있다. 예를 들어, 구성요소(110-115)는, 제어기 영역 네트워크(CAN) 버스를 통해 서로 통신 가능하게 결합될 수 있다. CAN 버스는, 호스트 컴퓨터가 없는 어플리케이션들에서 마이크로 컨트롤러들과 장치들이 서로 통신할 수 있도록 설계된 차량 버스 표준이다. 그것은 메시지 기반 프로토콜로서, 원래는 자동차 내의 멀티플렉스(multiplex) 전기 배선을 위해 설계되었지만, 다른 많은 상황에서도 사용된다.
이제 도 2를 참조하면, 일 실시예에서, 센서 시스템(115)은, 하나 이상의 카메라(211), GPS(global positioning system) 유닛(212), 관성 측정 유닛(IMU)(213), 레이더 유닛(214) 및 광 검출 및 측정(LIDAR) 유닛(215)을 포함하지만, 이에 한정되지 않는다. GPS 시스템(212)은 자율 주행 차량의 위치에 관한 정보를 제공하도록 동작 가능한 송수신기(트랜시버)를 포함할 수 있다. IMU 유닛(213)은, 관성 가속도에 기초하여 자율 주행 차량의 위치 및 방향 변화를 감지할 수 있다. 레이더 유닛(214)은, 무선 신호를 활용하여 자율 주행 차량의 로컬 환경 내의 물체들을 감지하는 시스템을 나타낼 수 있다. 일부 실시예들에서, 물체를 감지하는 것 외에, 레이더 유닛(214)은 물체의 속력 및/또는 진행 방향(heading)을 추가로 감지할 수 있다. LIDAR 유닛(215)은, 레이저를 사용하여 자율 주행 차량이 위치한 환경 내의 물체들을 감지할 수 있다. LIDAR 유닛(215)은, 다른 시스템 구성 요소들 중에서, 하나 이상의 레이저 소스, 레이저 스캐너 및 하나 이상의 검출기를 포함할 수 있다. 카메라(211)는 자율 주행 차량을 둘러싸는 환경의 이미지를 캡쳐하기 위한 하나 이상의 장치를 포함할 수 있다. 카메라(211)는 정지 화상 카메라 및/또는 비디오 카메라일 수 있다. 카메라는, 예를 들어, 카메라를 회전 및/또는 틸팅 플랫폼에 장착함으로써, 기계적으로 이동 가능할 수 있다.
센서 시스템(115)은, 소나 센서, 적외선 센서, 스티어링(조향) 센서, 스로틀 센서, 제동 센서 및 오디오 센서(예를 들어, 마이크로폰)와 같은 다른 센서들을 더 포함 할 수 있다. 오디오 센서는 자율 주행 차량을 둘러싸는 환경에서 소리(sound)를 캡쳐하도록 구성될 수 있다. 스티어링 센서는, 스티어링 차륜, 차량의 차륜 또는 이들의 조합의 스티어링 각도를 감지하도록 구성될 수 있다. 스로틀 센서 및 제동 센서는, 차량의 스로틀 위치 및 제동 위치를 각각 감지한다. 일부 상황에서는, 스로틀 센서와 제동 센서가 통합 스로틀/제동 센서로 통합될 수 있다.
일 실시예에서, 센서 시스템(115)은 피치 센서(216) 및 롤 센서(217)를 선택적으로 포함할 수 있다. 피치 센서(216)는 도로의 피치 상태를 나타내는 차량의 피치 각도를 감지 및 결정하도록 구성된다. 롤 센서(217)는 도로의 롤 상태를 나타내는 차량의 롤 각도를 감지 및 결정하도록 구성된다. 피치 센서(216) 및 롤 센서(217)는 단일 센서로서 통합될 수 있다. 대안적으로, 피치 상태 및 롤 상태는 GPS/맵 정보 및/또는 IMU 데이터에 기초하여 결정될 수 있다. 도로의 피치 상태 및/또는 롤 상태는 이러한 센서들 또는 IMU를 사용할 필요 없이 제어 피드백들에 기초하여 결정될 수 있으며, 이는 이하에서 더 상세히 설명 될 것이다.
일 실시예에서, 차량 제어 시스템(111)은, 스티어링 유닛(201), 스로틀 유닛(202)(가속 유닛으로도 지칭됨) 및 제동 유닛(203)을 포함하지만, 이에 한정되지 않는다. 스티어링 유닛(201)은, 차량의 방향 또는 진행 방향을 조정하기 위한 것이다. 스로틀 유닛(202)은 모터 또는 엔진의 속력을 제어하여 차량의 속력 및 가속을 차례로 제어하기 위한 것이다. 제동 유닛(203)은 차량의 차륜 또는 타이어를 감속시키도록 마찰을 제공함으로써 차량을 감속시키기 위한 것이다. 도 2에 도시된 구성 요소들은, 하드웨어, 소프트웨어 또는 이들의 조합으로 구현될 수 있다.
도 1을 다시 참조하면, 무선 통신 시스템(112)은, 자율 주행 차량(101)과, 장치들, 센서들, 다른 차량들 등과 같은 외부 시스템들 간의 통신을 가능하게 한다. 예를 들어, 무선 통신 시스템(112)은, 하나 이상의 장치들과 직접 또는 네트워크(102) 상의 서버들(103-104)과 같은 통신 네트워크를 통해 무선 통신할 수 있다. 무선 통신 시스템(112)은, 임의의 셀룰러 통신 네트워크 또는 무선 근거리 네트워크(WLAN)를 사용할 수 있으며, 예를 들어, 다른 구성 요소 또는 시스템과 통신하기 위해 WiFi를 사용할 수 있다. 무선 통신 시스템(112)은, 예를 들어, 적외선 링크, 블루투스 등을 사용하여, 장치(예를 들어, 승객의 모바일 장치, 디스플레이 장치, 차량(101) 내의 스피커)와 직접 통신할 수 있다. 사용자 인터페이스 시스템(113)은, 예를 들어, 키워드(keyword), 터치 스크린 디스플레이 장치, 마이크로폰 및 스피커 등을 포함하는 차량(101) 내에 구현되는 주변 장치들의 일부일 수 있다.
자율 주행 차량(101)의 일부 또는 모든 기능은, 특히 자율 주행 모드에서 운행될 때, 인지 및 계획 시스템(110)에 의해 제어되거나 관리될 수 있다. 인지 및 계획 시스템(110)은, 센서 시스템(115), 제어 시스템(111), 무선 통신 시스템(112) 및/또는 사용자 인터페이스 시스템(113)으로부터 정보를 수신하고, 수신된 정보를 처리하고, 출발점에서 목적지점까지의 루트(route) 또는 경로를 계획한 다음, 계획 및 제어 정보에 기초하여 차량(101)을 주행하기 위해, 필요한 하드웨어(예를 들어, 프로세서(들), 메모리, 저장 장치) 및 소프트웨어(예를 들어, 운영 체계, 계획 및 라우팅(routing) 프로그램)을 포함한다. 대안적으로, 인지 및 계획 시스템(110)은 차량 제어 시스템(111)과 통합될 수 있다.
예를 들어, 승객인 사용자는, 예를 들어, 사용자 인터페이스를 통해 여행의 출발 위치 및 목적지를 지정할 수 있다. 인지 및 계획 시스템(110)은 여행 관련 데이터를 획득한다. 예를 들어, 인지 및 계획 시스템(110)은 서버들(103-104)의 일부일 수 있는 MPOI 서버로부터 위치 및 루트 정보를 획득할 수 있다. 위치 서버는 위치 서비스를 제공하고, MPOI 서버는 맵 서비스와 특정 위치들의 POI들을 제공한다. 대안적으로, 이러한 위치 및 MPOI 정보는 인지 및 계획 시스템(110)의 영구 저장 장치에 국부적으로 캐시될 수 있다.
자율 주행 차량(101)이 루트를 따라 이동하는 동안, 인지 및 계획 시스템(110)은 교통 정보 시스템 또는 서버(TIS)로부터 실시간 교통 정보도 획득할 수 있다. 서버(103-104)는 제3 엔티티에 의해 운영될 수 있다. 대안적으로, 서버들(103-104)의 기능들은 인지 및 계획 시스템(110)과 통합될 수 있다. 인지 및 계획 시스템(110)은, 실시간 교통 정보, MPOI 정보 및 위치 정보뿐만 아니라 센서 시스템(115)에 의해 검출 또는 감지된 실시간 로컬 환경 데이터(예를 들어, 장애물, 물체, 주변 차량)에 기초하여, 예를 들어, 제어 시스템(111)을 통해, 최적의 루트를 계획하고, 지정된 목적지에 안전하고 효율적으로 도착하기 위해 계획된 루트에 따라 차량(101)을 주행할 수 있다.
서버(103)는 다양한 클라이언트에 대해 데이터 분석 서비스를 수행하기 위한 데이터 분석 시스템일 수 있다. 일 실시예에서, 데이터 분석 시스템(103)은 데이터 수집기(121) 및 머신 러닝 엔진(122)을 포함한다. 데이터 수집기(121)는 자율 주행 차량 또는 인간 운전자에 의해 운행되는 일반 차량을 포함하는 다양한 차량으로부터 주행 통계(123)를 수집한다. 주행 통계(123)는 상이한 시점에서, 발행된 주행 명령(예를 들어, 스로틀, 제동, 스티어링 명령) 및 차량의 센서에 의해 캡쳐된 차량의 응답(예를 들어, 속력, 가속, 감속, 방향)을 나타내는 정보를 포함한다. 주행 통계(123)는, 상이한 시점에서의 주행 환경, 예를 들어, 루트(출발 및 목적지 위치 포함), MPOI, 도로 상태, 날씨 상태 등을 설명하는 정보를 더 포함할 수 있다. 주행 통계(123)는 차량의 명령 및 응답이 캡쳐되었을 때 차량이 주행하고 있는 도로의 피치 상태 및 롤 상태와 같은 경사 상태를 더 포함한다. 경사 상태는 경사 각도 또는 경사 백분율로 나타낼 수 있다. 유사하게, 피치 상태는 피치 각도 또는 피치 백분율로 나타낼 수 있으며 롤 상태는 롤 각도 또는 롤 비율로 나타낼 수 있다.
일 실시예에서, 주행 통계(123)는 차량이 알려진 피치 상태 및 알려진 롤 상태(예를 들어, 알려진 오르막 각도 또는 내리막 각도를 각각 갖는 오르막 도로 또는 내리막 도로)와 같은 알려진 경사 상태를 갖는 특정 도로에서 주행하고 있을 때 기록될 수 있다. 주행 통계(123)는 센서, GPS /맵 데이터 및/또는 IMU에 의해 측정 될 수 있는, 알려진 경사진 도로상의 특정 주행 파라미터를 유지하기 위해 특정 제어 명령이 발행되어야 한다는 것을 나타내는 정보를 포함한다. 예를 들어, 주행 통계(123)는, 오르막 또는 내리막 도로에서 주행하는 차량의 특정 속도 또는 가속 또는 감속을 유지하기 위해 스로틀 명령 또는 제동 명령과 같은 특정 속도 제어 명령이 발행되어야 한다는 것을 나타내는 정보를 포함할 수 있다. 유사하게, 주행 통계(123)는, 횡방향 경사 도로 상에서 차량의 특정 진행 방향을 유지하기 위해 특정 스티어링 제어 명령이 발행되어야 한다는 것을 나타내는 정보를 포함할 수 있다.
주행 통계(123)에 기초하여, 머신 러닝 엔진(122)은 다양한 목적을 위해 규칙, 알고리즘 및/또는 예측 모델(124)의 세트를 생성 또는 훈련시킨다. 일 실시예에서, 기계 학습 엔진(122)은 주행 통계(123)를 분석하고 다양한 차량에 대한 경사/명령 매핑 데이터 구조 또는 테이블(125)을 생성한다. 경사/명령 매핑 테이블은 다수의 맵핑 엔트리를 포함한다. 각각의 매핑 엔트리는 특정 제어 명령 및 주행 파라미터를 경사 상태로 또는 그 반대로 매핑한다. 각각의 매핑 엔트리는 대응하는 경사 상태를 갖는 경사진 도로에서 주행하는 차량의 대응하는 주행 파라미터를 유지하기 위해, 대응하는 제어 명령이 발행되어야 한다는 것을 나타낸다. 다른 종류의 차량이 다르게 구성될 수 있으므로(예: 다른 무게, 크기, 마력, 최소 선회 반경), 다른 경사/명령 테이블이 여러 유형의 차량에 대해 구성될 수 있다. 대안적으로, 단일 경사/명령 테이블이 여러 유형의 차량에 대해 구성될 수 있다. 그리고 나서, 경사/명령 매핑 테이블(125)은 제어 피드백에 기초하여 도로의 경사 상태를 추정하기 위해 ADV의 자율 운전을 위해 실시간으로 사용되도록 ADV 상에 업로드 될 수 있으며, 여기서 경사 상태는 도로에 대응하는 맵의 맵 데이터를 업데이트하도록 이용될 수 있다.
대안적으로, 매핑 테이블(125)은 기계 학습 예측 또는 결정 모델로서 구현될 수 있다. 예측 또는 결정 모델에 제공된 입력은 제어 명령 및 주행 파라미터를 포함할 수 있고, 예측 또는 결정 모델의 출력은 경사 상태일 수 있다. 피치/명령 예측 모델과 롤/명령 예측 모델이 있을 수 있다. 피치/명령 예측 모델에 대한 입력은 속도 제어 명령(예: 스로틀 또는 제동 명령)과 주행 파라미터(예: 속도, 가속 또는 감속)를 포함할 수 있으며, 피치/명령 모델의 출력은 도로의 피치 상태(예: 종방향의 기울기/경사 백분율 또는 각도)일 수 있다. 롤/명령 예측 모델에 대한 입력은 스티어링 명령 및 진행 방향을 포함할 수 있으며, 롤/명령 예측 모델의 출력은 도로의 롤 상태(예: 교차 경사/경사 백분율 또는 각도)일 수 있다.
도 3은 본 발명의 일 실시예에 따른 자율 주행 차량과 함께 사용되는 인지 및 계획 시스템의 일례를 나타내는 블록도이다. 시스템(300)은, 도 1의 자율 주행 차량(101)의 일부로서 구현될 수 있으며, 인지 및 계획 시스템(110), 제어 시스템(111) 및 센서 시스템(115)을 포함하지만, 이에 한정되지 않는다. 도 3을 참조하면, 인지 및 계획 시스템(110)은 로컬라이제이션(localization) 모듈(301), 인지 모듈(302), 결정 모듈(303), 계획 모듈(304), 제어 모듈(305), 경사 처리 모듈(308) 및 맵 업데이트 모듈(309)을 포함하지만, 이에 제한되지 않는다. 경사 처리 모듈(308)은 피치 상태 및 롤 상태를 각각 처리하기 위한 피치 처리 모듈(306) 및 롤 처리 모듈(307)을 포함할 수 있다.
모듈들(301-309)의 일부 또는 전부는 소프트웨어, 하드웨어 또는 이들의 조합으로 구현될 수 있다. 예를 들어, 이들 모듈은 영구 저장 장치(352)에 설치되고, 메모리(351)에 로드되며, 하나 이상의 프로세서(미도시)에 의해 실행될 수 있다. 이들 모듈 중 일부 또는 전부는, 도 2의 차량 제어 시스템(111)의 일부 또는 모든 모듈들과 통신 가능하게 결합되거나 통합될 수 있다. 모듈들(301-309) 중 일부는 통합 모듈로서 함께 통합될 수 있다. 예를 들어, 피치 처리 모듈(306) 및 롤 처리 모듈(307)은 제어 모듈 (305) 및/또는 계획 모듈 (304)과 통합될 수 있다.
로컬라이제이션 모듈(301)은, (예를 들어, GPS 유닛(212)을 이용하여) 자율 주행 차량(300)의 현재 위치를 결정하고, 사용자의 여행 또는 루트와 관련된 임의의 데이터를 관리한다. 로컬라이제이션 모듈(301)(맵 및 루트 모듈이라고도 함)은 사용자의 여행 또는 루트와 관련된 임의의 데이터를 관리한다. 사용자는, 예를 들어, 사용자 인터페이스를 통해 로그인하고 여행의 출발 위치 및 목적지를 지정할 수 있다. 로컬라이제이션 모듈(301)은, 맵 및 루트 정보(311)와 같은 자율 주행 차량(300)의 다른 구성 요소와 통신하여 여행 관련 데이터를 획득한다. 예를 들어, 로컬라이제이션 모듈(301)은 위치 서버, 및 맵 및 POI(MPOI) 서버로부터 위치 및 루트 정보를 획득할 수 있다. 위치 서버는 위치 서비스를 제공하고, MPOI 서버는 맵 서비스와 맵 및 경로 정보(311)의 일부로서 캐시될 수 있는 특정 위치들의 POI들을 제공한다. 자율 주행 차량(300)이 루트를 따라 이동하는 동안, 로컬라이제이션(localization) 모듈(301)은 교통 정보 시스템 또는 서버로부터 실시간 교통 정보도 획득할 수 있다.
센서 시스템(115)에 의해 제공되는 센서 데이터 및 로컬라이제이션 모듈(301)에 의해 획득되는 로컬라이제이션 정보에 기초하여, 인지 모듈(302)에 의해 주변 환경의 인지(perception)가 결정된다. 인지 정보는 일반 운전자가 그가 주행하는 차량 주위를 어떻게 인지(perceive)하는지를 나타낼 수 있다. 인지(perception)는 차로 구성(예를 들어, 직선 또는 곡선 차선), 신호등 신호, 다른 차량의 상대적 위치, 보행자, 건물, 횡단 보도 또는 기타 교통 관련 표지판(예를 들어, 정지 표지판, 양보 표지판) 등을, 예를 들어, 물체의 형태로 포함할 수 있다.
인지 모듈(302)은, 자율 주행 차량의 환경에서 물체 및/또는 특징을 식별하기 위해, 하나 이상의 카메라에 의해 캡쳐된 이미지를 처리 및 분석하는 컴퓨터 비전 시스템 또는 컴퓨터 비전 시스템의 기능을 포함할 수 있다. 물체는 교통 신호, 도로 경계, 다른 차량, 보행자 및/또는 장애물 등을 포함할 수 있다. 컴퓨터 비전 시스템은 물체 인식 알고리즘, 비디오 추적 및 다른 컴퓨터 비전 기술을 사용할 수 있다. 일부 실시예에서, 컴퓨터 비전 시스템은, 환경을 매핑하고, 물체를 추적하고, 물체의 속력 추정 등을 할 수 있다. 인지 모듈(302)은 레이더 및/또는 LIDAR와 같은 다른 센서에 의해 제공되는 다른 센서 데이터에 기초하여 물체를 검출할 수도 있다.
각각의 물체에 대해, 결정 모듈(303)은 물체를 어떻게 다룰지에 대한 결정을 한다. 예를 들어, 특정 물체(예를 들어, 교차 루트에 있는 다른 차량)뿐만 아니라 물체를 기술하는 메타 데이터(예를 들어, 속력, 방향, 선회 각도)에 대해서, 결정 모듈(303)은 물체를 어떤 식으로 대면할지를 결정한다(예를 들어, 추월, 양보, 정지, 통과). 결정 모듈(303)은, 영구 저장 장치(352)에 저장될 수 있는 트래픽 규칙 또는 운전 규칙(312)과 같은 규칙들의 세트에 따라 이러한 결정을 내릴 수 있다.
인지된 물체들 각각에 대한 결정에 기초하여, 계획 모듈(304)은 자율 주행 차량에 대한 경로 또는 루트뿐만 아니라 주행 파라미터(예를 들어, 거리, 속력 및/또는 회전 각도)를 계획한다. 즉, 주어진 물체에 대해, 결정 모듈(303)은 물체에 대한 처리를 결정하고, 계획 모듈(304)은 그것을 어떻게 수행할지를 결정한다. 예를 들어, 주어진 물체에 대해, 결정 모듈(303)은 물체를 지나가는 것으로 결정할 수 있는 반면, 계획 모듈(304)은 물체의 좌측 또는 우측으로 지나갈지를 결정할 수 있다. 계획 및 제어 데이터는 계획 모듈(304)에 의해 생성되고, 차량(300)이 다음 이동 사이클(예를 들어, 다음 루트/경로 세그먼트)에서 어떻게 움직일 것인지를 기술하는 정보를 포함한다. 예를 들어, 계획 및 제어 데이터는, 차량(300)이 시속 30 마일(mph)의 속력으로 10m 이동한 다음 25 mph의 속력으로 우측 차로로 변경하도록 지시할 수 있다.
계획 및 제어 데이터에 기초하여, 제어 모듈(305)은 계획 및 제어 데이터에 의해 정의된 루트 또는 경로에 따라, 차량 제어 시스템(111)에 적절한 명령 또는 신호를 전송함으로써 자율 주행 차량을 제어 및 주행한다. 계획 및 제어 데이터에는, 경로 또는 루트 상의 시간에 따른 상이한 지점들에서 적절한 차량 설정 또는 주행 파라미터(예를 들어, 스로틀, 제동 및 선회 명령)를 사용하여 루트 또는 경로의 제1 지점에서 제2 지점까지 차량을 주행할 수 있는 충분한 정보가 포함되어 있다.
일 실시예에서, 계획 단계는 다수의 계획 사이클 또는 명령 사이클, 예를 들어 100 밀리초(MS)의 시간 간격마다 수행된다. 계획 사이클 또는 명령 사이클 각각에 대해 하나 이상의 제어 명령(command)이 계획 및 제어 데이터를 기반으로 발행된다. 즉, 매 100MS마다, 계획 모듈(304)은 후속 루트 세그먼트 또는 경로 세그먼트를 계획하며, 후속 루트 세그먼트 또는 경로 세그먼트는 예컨대 목표 위치 및 ADV가 목표 위치에 도달하는데 필요한 시간을 포함할 수 있다. 대안적으로, 계획 모듈(304)은 특정 속력, 방향, 및/또는 스티어링 각 등을 추가로 특정할 수 있다. 일 실시예에서, 계획 모듈(304)은 예컨대 5초와 같은 소정의 후속 기간 동안 루트 세그먼트 또는 경로 세그먼트를 계획한다. 각 계획 사이클에 대해, 계획 모듈(304)은 이전 사이클에서 계획된 목표 위치에 기초하여 현재 사이클(예를 들어, 다음 5초)에 대한 목표 위치를 계획한다. 그 후, 제어 모듈(305)은 현재 사이클의 계획 및 제어 데이터에 기초하여 하나 이상의 제어 명령(예를 들어, 스로틀, 제동, 스티어링 제어 명령)을 발생시킨다.
결정 모듈(303) 및 계획 모듈(304)은 통합 모듈로서 통합될 수 있다. 결정 모듈(303)/계획 모듈(304)은, 자율 주행 차량에 대한 주행 경로를 결정하기 위한 내비게이션 시스템 또는 내비게이션 시스템의 기능들을 포함할 수 있다. 예를 들어, 네비게이션 시스템은, 일련의 속력 및 진행 방향(directional heading)을 결정하여, 인지된 장애물을 실질적으로 피하는 경로를 따라 자율 주행 차량의 이동을 수행하면서, 궁극적인 목적지에 이르는 도로 기반 경로를 따라 자율 주행 차량을 일반적으로 전진시킬 수 있다. 목적지는, 사용자 인터페이스 시스템(113)을 통한 사용자 입력에 따라 설정될 수 있다. 내비게이션 시스템은, 자율 주행 차량이 운행되는 동안 주행 경로를 동적으로 업데이트할 수 있다. 네비게이션 시스템은, 자율 주행 차량을 위한 주행 경로를 결정하기 위해 GPS 시스템 및 하나 이상의 맵으로부터의 데이터를 통합할 수 있다.
결정 모듈(303)/계획 모듈(304)은, 자율 주행 차량의 환경에서의 잠재적 장애물을 식별, 평가 및 회피하거나 협상하기 위한 충돌 회피 시스템 또는 충돌 회피 시스템의 기능을 더 포함할 수 있다. 예를 들어, 충돌 회피 시스템은, 급회피 조작, 선회 조작, 제동 조작 등을 수행하기 위해, 제어 시스템(111)의 하나 이상의 서브 시스템을 조작하여 자율 주행 차량의 네비게이션의 변화를 수행할 수 있다. 충돌 회피 시스템은, 주변의 교통 패턴, 도로 조건 등에 기초하여, 실현 가능한 장애물 회피 조작을 자동으로 결정할 수 있다. 충돌 회피 시스템은, 자율 주행 차량이 급회피하여 진입할 인접 영역에서, 차량, 건축 장애물 등을 다른 센서 시스템이 검출할 때, 급회피 조작이 수행되지 않도록 구성될 수 있다. 충돌 회피 시스템이, 사용 가능하면서 자율 운행 차량의 탑승자의 안전을 극대화하는 조작을 자동적으로 선택할 수 있다. 충돌 회피 시스템은, 자율 운행 차량의 승객실에서 최소량의 가속을 일으킬 것으로 예상되는 회피 조작을 선택할 수 있다.
본 발명의 일 실시예에 따르면, 도로의 경사 상태를 결정하기 위한 비싼 센서를 이용하는 대신에, 자율 주행 차량 (ADV)이 그 특정 도로를 주행할 때의 경사 상태를 추정하기 위해 제어 피드백이 이용된다. 일 실시예에서, ADV가 도로의 특정 도로 세그먼트를 주행하는 경우, 제어 모듈(305)은 목표 상태(예: 목표 속력, 목표 가속도 및/또는 목표 진행 방향)에 도달하기 위해 ADV를 주행시키기 위한 계획 및 제어 데이터에 기초하여 제어 명령(예를 들어, 속도 제어 명령, 스티어링 명령)을 ADV에 발행한다. ADV의 응답은 기록되고 운전의 목표 정보와 비교된다. ADV의 응답이 목표로부터 벗어난 경우, 제어 명령 (305)은 차량이 의도된 목표 주행 파라미터에 더 가까운 주행 파라미터로 주행할 수 있도록 에러를 보상하기 위해 추가 제어 명령을 발행한다.
추가적인 제어 명령에 기초하여, 제어 모듈(305)은 경사 처리 모듈(308)을 작동시켜서 도로 세그먼트의 경사 상태를 결정하거나 추정한다. 경사 처리 모듈(308)은 경사/명령 매핑 테이블(125)을 이용하여 추가 제어 명령 및 목표 주행 파라미터에 기초하여 도로의 경사 상태를 추정한다. 이러한 추정은 ADV가 평평한 도로에서 주행하는 경우 일반적으로 ADV가 목표로부터 많이 벗어나지 않는다는 가정에 근거할 수 있다. ADV가 목표에서 벗어나면, 그것은 도로의 경사 상태에 기인할 수 있다. 차량의 제어 피드백을 사용함으로써, 도로의 경사 상태가 추정될 수 있다. 추정된 경사 상태에 기초하여, 맵 업데이트 모듈(309)은 예를 들어, 특정 도로 세그먼트가 경사진 도로 세그먼트일 수 있음을 나타내기 위해, 특정 도로 세그먼트에 대응하는 맵의 맵 데이터(311)를 업데이트한다. 업데이트된 맵은 목표에 가능한 가깝게 차량을 주행시키기 위해 도로 세그먼트의 경사 상태를 고려하여 동일 또는 유사한 도로 세그먼트를 주행할 때 적절한 제어 명령을 발행하는데에 차후 이용될 수 있다.
일 실시예에서, ADV가 도로 세그먼트를 주행하는 경우, 제어 모듈(305)에 의해 발행된 제1 제어 명령(예를 들어, 속력 제어 명령, 스티어링 명령)에 응답하여 제1 주행 파라미터(예: 속력, 가속도, 진행 방향)가 기록된다. 주행 파라미터는 센서 시스템(115)의 센서 중 적어도 일부를 사용하여 측정될 수 있다. 제1 주행 파라미터와 제1 제어 명령에 대응하는 목표 주행 파라미터 간의 차이가 결정된다. 차이가 소정의 임계 값을 초과하는 것으로 결정하는 것에 응답하여(예를 들어, 차량이 목표로부터 벗어 났음), 제어 모듈(305)은 차이를 보상하기 위해 제2 제어 명령을 발행하고 ADV가 목표 주행 파라미터에 더 가까운 제2 주행 파라미터로 주행하게 한다. 경사 처리 모듈(308)은 예를 들어, 경사/명령 매핑 테이블(125)을 사용하여, 적어도 제2 제어 명령에 기초하여 도로 세그먼트의 경사 상태를 결정한다. 경사 상태에 기초하여, 맵 업데이트 모듈(309)은 업데이트된 도로의 도로 세그먼트에 대응하는 맵의 맵 데이터(311)를 업데이트한다. 업데이트된 맵은 ADV가 이후 동일한 도로에서 주행할 때 도로의 경사 상태를 고려하여 적절한 제어 명령을 생성하고 발행하는 데에 사용될 수 있다.
일 실시예에 따라, 도로 세그먼트의 경사 상태를 도출함에 있어서, 경사 처리 모듈(308)은 경사/명령 매핑 테이블(125)에서 룩업 동작을 실행하여, 제2 제어 명령과 목표 주행 파라미터와 대략 일치하는 매핑 엔트리를 검색하고 찾아낸다. 경사 상태는 경사/명령 매핑 테이블의 매칭 엔트리에서 얻어진다. 도 5는 본 발명의 일 실시예에 따른 경사-명령 매핑 테이블의 일례를 나타내는 블록도이다. 일 실시예에서, 경사/명령 매핑 테이블(125)는 다수의 매핑 엔트리를 포함한다. 각각의 매핑 엔트리는 특정 제어 명령(501) 및 특정 주행 파라미터(502)를 경사 상태(501)로 또는 그 반대로 매핑한다.
경사 상태를 도출함에 있어서, 경사 처리 모듈(308)은 목표 주행 파라미터와 정확히 또는 대략 매칭되는 필드(502) 및 제2 제어 명령과 정확히 또는 대략 매칭되는 필드(501)를 갖는 매핑 엔트리에 대하여 위치 확인하기 위해 제2 제어 명령 및 목표 주행 파라미터에 기초하여 경사/명령 매핑 테이블(125)에서 검색한다. 일치하는 엔트리가 발견되면, 일치하는 엔트리의 필드(503)로부터 경사 상태가 획득될 수 있다. 그리고 나서, 경사 상태는 도로 세그먼트에 대응하는 맵 데이터(311)를 업데이트하는데 이용된다. 경사/명령 매핑 테이블(125)는 다양한 데이터 구조, 데이터베이스 또는 예측 모델로 구현될 수 있다.
일 실시예에서, 경사/명령 맵핑 테이블 125는 평평한 도로 및 경사진 도로를 포함하는 다양한 상이한 유형의 도로를 주행하는 다양한 차량의 다량의 주행 통계의 기초하여 데이터 분석 시스템(예를 들어, 데이터 분석 시스템(103))에 의해 생성될 수 있다. 차량은 자율적으로 운전되거나 다양한 운전자에 의해 운전될 수 있다. 주행 통계는, 차량이 평평한 도로 및 경사진 도로를 포함한 다양한 상이한 유형의 도로에서 주행될 때 상이한 시점에서 발행된 상이한 제어 명령(예: 속도 제어 명령, 스티어링 명령) 및 기록된 차량의 응답(예: 속도, 가속 또는 감속, 진행 방향)을 포함할 수 있다.
일 실시예에서, 경사 처리 모듈(308)은 피치 처리 모듈(306) 및 롤 처리 모듈(307)을 포함하며, 경사 처리 모듈(308)에 의해 호출되어 도로의 피치 상태 및 롤 상태를 결정할 수 있다. 경사/명령 매핑 테이블(125)는 피치 상태-명령(피치/명령) 매핑 테이블(313) 및 롤 상태-명령(롤/명령) 매핑 테이블(314)를 포함한다. 피치/명령 맵핑 테이블(313)의 일례가 도 6a에 도시되어 있고 롤/명령 맵핑 테이블(314)의 예가 도 6b에 도시되어 있다. 도 6a 및 도 6b를 참조하면, 피치/명령 맵핑 테이블(313)은 다수의 피치 매핑 엔트리를 포함한다. 각 피치 매핑 엔트리는 속도 제어 명령(예를 들어, 스로틀/제동 명령)(601) 및 차량의 속도(602)를 피치 상태(603)로 매핑한다. 일 실시예에서, 가속은 필드(602)에서의 속도 대신에 사용될 수 있다. 롤/명령 매핑 테이블(314)은 다수의 롤 매핑 엔트리를 포함한다. 각 롤 매핑 엔트리는 스티어링 명령(651) 및 차량의 진행 방향 또는 각도(652)를 롤 상태(653)에 매핑한다. 피치/커맨드 매핑 테이블(313) 및 롤/명령 매핑 테이블(314) 내의 엔트리의 데이터는 다른 시점에서 운전하는 다량의 차량으로부터 수집된 다량의 주행 통계에 기초하여 데이터 분석 시스템(예를 들어, 데이터 분석 시스템(103))에 의해 수집되고 덧붙여진다.
이제 도 4a-4c를 참조하면, 피치 상태는 차량이 오르막 위치 또는 내리막 위치에 위치되는지(예를 들어, 차량의 전방 단부가 상 또는 하로 기울어져 있는지)와 같은 차량의 상하 방위(orientation)를 지칭한다. 피치 상태는 도 4b에 도시된 바와 같이 피치 경사 각도 또는 피치 기울기/ 경사백분율로 나타낼 수 있다. 양의 피치 각도는 오르막 도로를 나타내고 음의 피치 각도는 내리막 도로를 나타내거나, 그 반대를 나타낸다. 롤 상태는 차량이 기울어 지거나 왼쪽 또는 오른쪽으로 굴렀는지 여부를 나타낸다. 롤 상태는 도 4c에 도시된 바와 같이 롤 경사 각도 또는 롤 기울기/경사 백분율로 나타낼 수 있다. 양의 롤 각도는 왼쪽으로 기울어진 도로를 나타내며 음의 롤 각도는 오른쪽으로 기울어진 도로를 나타내거나, 그 반대를 나타낸다. 경사 각도(θ)는 상승(rise)과 주행(run) 사이의 접선(tangent) 관계에 기초하여 결정될 수 있으며, 여기서 tan(θ) = 상승/주행이다. 경사 백분율은 100 * (상승/주행)에 의해 결정할 수 있다. 경사 각도 또는 경사 백분율은 본 명세서 전반에 걸쳐 피치 상태 또는 롤 상태로서 이용될 수 있다.
도 6a를 다시 참조하면, 이 예에서, 차량이 평평한 도로에서 주행할 때, 차량의 속력을 초당 10 미터(m/s)로 유지하기 위해, 20% 페달 값의 스로틀 명령이 요구된다. 차량이 경사진 도로에서 주행하고 있다고 가정 할 때, 동일한 스로틀 명령이 사용되면 차량의 속도가 목표 속도인 10m/s를 벗어날 수 있다. 목표 속도와 동일한 속도를 유지하기 위해 30 % 페달 값의 스로틀 명령이 적용되어 도로의 경사를 보상한다. 목표는 비싼 센서를 사용할 필요 없이 도로의 상태를 결정하는 것이다.
일 실시예에서, 30%의 추가 스로틀 명령 및 10m/s의 목표 속력에 기초하여, 피치 처리 모듈(306)은 10m/s의 속력과 대략적으로 매칭하는 필드(602)와 30%의 스로틀 명령과 대략적으로 매칭하는 필드(601)를 갖는 매핑 엔트리를 피치/명령 맵핑 테이블(313)에서 검색하고 찾는다. 이 예에서, 매칭 엔트리(610)가 찾아진다. 매칭하는 엔트리(610)로부터, 경사 상태(즉, 2 %의 경사 상태)는 필드(603)로부터 획득될 수 있다. 그리고 나서, 2%의 경사 상태는 도로 세그먼트가 2% 기울기 등급의 경사진 도로 세그먼트임을 나타내기 위해 도로 세그먼트에 해당하는 맵의 맵 데이터를 업데이트하도록 이용된다.
유사하게, 도로 세그먼트의 롤 상태는 전술한 바와 유사한 기술을 사용하여 6b에 도시 된 바와 같이 롤/명령 매핑 테이블(314)을 사용하여 결정될 수 있다. 이제 도 6b를 참조하면, 제어 모듈(305)은 제1 스티어링 명령에 응답하여 ADV의 진행 방향이 목표 진행 방향을 벗어난 것을 검출하면, 제어 모듈(305)은 오류를 보상하기 위해 제2 스티어링 제어 명령을 발행하여 ADV가 목표 진행 방향에 더 가까운 진행 방향으로 주행될 수 있다. 제2 스티어링 명령 및 목표 진행 방향에 기초하여, 롤 처리 모듈(307)은 롤/명령 매핑 테이블(314)을 검색하도록 호출되어 제2 스티어링 명령과 정확하게 또는 대략적으로 매칭되는 필드(651)와 목표 진행 방향과 정확하게 또는 대략적으로 매칭되는 필드(651)을 갖는 엔트리를 검색하여 찾아낸다. 롤 상태는 매칭 엔트리의 필드(653)로부터 획득된다.
도 7은 본 발명의 일 실시예에 따른 자율 주행을 위한 맵을 업데이트하는 프로세스를 나타내는 흐름도이다. 프로세스(700)는 소프트웨어, 하드웨어, 또는 이들의 조합을 포함할 수 있는 프로세싱 로직에 의해 수행될 수 있다. 예를 들어, 프로세스(700)는 제어 모듈(305), 경사 처리 모듈(308) 및/또는 맵 업데이트 모듈(309)에 의해 수행될 수 있다. 도 7을 참조하면, 단계(701)에서, 처리 로직은 제1 제어 명령 (예컨대, 속도 제어 명령, 스티어링 명령)에 응답하여, 도로의 세그먼트 상에 주행하는 ADV의 제1 주행 파라미터(예를 들어, 속도, 가속도, 진행 방향)를 기록한다. 단계(702)에서, 프로세싱 로직은 제1 주행 파라미터와 제1 제어 명령에 대응하는 목표 주행 파라미터 간의 차이를 결정한다. 차이가 소정의 임계값을 초과하면, 단계(703)에서, 처리 로직은 제2 제어 명령을 발행하여 보상하고 ADV가 목표 주행 파라미터에 더 가까운 제2 주행 파라미터로 주행하게 한다. 단계(704)에서, 처리 로직은 제2 제어 명령 및 목표 주행 파라미터에 기초하여 도로 세그먼트의 경사 상태를 도출한다. 단계(705)에서, 도로 세그먼트과 연관된 맵의 맵 데이터는 경사 상태에 기초하여 업데이트된다.
도 8은 본 발명의 다른 실시예에 따른 자율 주행을 위한 맵을 업데이트하는 프로세스를 나타내는 흐름도이다. 프로세스(800)은 소프트웨어, 하드웨어, 또는 이들의 조합을 포함할 수 있는 프로세싱 로직에 의해 수행될 수 있다. 프로세스(800)는 도 7의 단계들(704)의 일부로서 수행될 수 있다. 도 8을 참조하면, 단계(801)에서, 주행 파라미터(예를 들어, 속도, 가속도, 진행 방향)를 유지하기 위해 ADV의 주행을 보상하기 위해 제어 명령(예컨대, 속도 제어 명령, 스티어링 명령)이 수신된다. 동작(802)에서, 제어 명령 및 주행 파라미터에 기초하여 룩업 동작이 경사/명령 매핑 테이블에서 수행되어, 제어 명령 및 주행 파라미터와 정확히 또는 대략적으로 매칭하는 매핑 엔트리를 검색하고 찾아낸다. 경사/명령 매핑 테이블은 다수의 맵핑 엔트리를 포함한다. 각각의 매핑 엔트리는 특정 제어 명령과 특정 주행 파라미터를 경사 상태로 매핑한다. 단계(803)에서, 경사 상태는 매칭 엔트리로부터 획득되고, 여기서 경사 상태는 ADV가 주행하는 도로 세그먼트와 연관된 맵의 맵 데이터를 업데이트하는데 이용된다.
전술한 맵 업데이트 기술은 각각의 ADV 내에서 개별적으로 실행된다. 본 발명의 다른 실시예에 따르면, 다수의 ADV의 주행 통계가 캡쳐되어 수집된다. 주행 통계는 다른 시점 및 다른 도로에서 차량에 발행된 제어 명령 및 명령에 응답한 차량의 응답을 기록한다. 캡쳐된 명령은 도로의 경사 상태로 인한 오류를 보상하기 위해 생성된 제어 명령을 포함할 수 있다. 그리고 나서, 주행 통계는 오프라인의 데이터 분석 시스템에서 전송되고 분석되어 일부 도로의 경사 상태를 도출하고, 그 도로의 대응하는 맵 데이터는 경사 상태에 기초하여 업데이트된다. 대안적으로, 각 차량은 그 자신 소유의 로컬 맵을 업데이트한다. 그리고 나서, 차량의 로컬 맵은 중앙 시스템으로 전송되어 글로벌 맵으로 병합되고 나서, 글로벌 맵은 향후 사용을 위해 다시 차량으로 재분배된다.
도 9는 본 발명의 다른 실시예에 따른 맵을 업데이트하는 시스템을 나타내는 블록도이다. 도 9를 참조하면, 다수의 ADV들(101A-101B)은 네트워크(102)를 통해 맵 업데이트 서버(900)로서 데이터 분석 시스템에 통신 가능하게 결합된다. ADV(101A-101B) 각각은 평평한 도로 및 경사진 도로를 포함한 다양한 유형의 도로에서 ADV가 주행할 때 주행 통계를 수집하고 기록하는 데이터 기록 장치 (예: 데이터 기록 장치(901A-901B))를 포함한다. 그리고 나서, 주행 통계는 서버(900)의 데이터 수집기(911)에 전송되고 수집된다. 데이터 분석 모듈(912)은 전술한 기술 중 적어도 일부를 사용하여 상이한 도로의 경사 상태를 결정 또는 도출하기 위해 주행 통계를 분석한다. 경사 상태에 기초하여, 맵 업데이트 장치(913)는 맵(915)을 업데이트하도록 구성된다.
다른 실시예에 따르면, ADV(101A-101B) 각각은 ADV가 주행하는 도로의 경사 상태를 결정한다. ADV들(101A-101B) 각각은 그들의 각각의 로컬 맵(예를 들어, 로컬 맵(903A-903B))을 업데이트하기 위해 맵 업데이트 장치(예: 맵 업데이트 장치(902A-902B))를 포함한다. 그 다음, 로컬 맵(903A-903B)은 맵 병합기(914)에 전송되고 맵 병합기(914)에 의해 수신된다. 맵 병합기(914)는 수신된 로컬 맵을 글로벌 맵으로서 맵(915)으로 병합 또는 통합하도록 구성된다. 그리고 나서, 업데이트된 맵(915)는 이후의 자율 주행을 위해 ADV(101A-101B)로 다시 재분배된다. 컴포넌트(911-914)는, 소프트웨어, 하드웨어, 또는 이들의 조합으로 구현될 수 있다.
도 10은 본 발명의 다른 실시예에 따른 맵을 업데이트하는 프로세스를 나타내는 흐름도이다. 프로세스(1000)는 소프트웨어, 하드웨어, 또는 이들의 조합을 포함할 수 있는 프로세싱 로직에 의해 수행될 수 있다. 예를 들어, 프로세스(1000)은 도 9의 맵 업데이트 서버(900)에 의해 수행될 수 있다. 도 10을 참조하면, 단계(1001)에서, 다수의 차량의 주행 통계가 수집되며, 여기서 주행 통계는, 차량에 발행된 다양한 제어 명령 및 제어 명령에 대한 응답한 차량의 응답을 포함한다. 주어진 도로 세그먼트에 대해, 단계(1002)에서, 차량이 제어 명령과 관련된 하나 이상의 목표 주행 파라미터를 유지하기 위해 차량의 이전 제어 명령을 보상하도록 하나 이상의 차량에 발행된 하나 이상의 제어 명령이 식별된다. 단계(1003)에서, 도로 세그먼트의 경사 상태는 제어 명령 및 목표 주행 파라미터에 기초하여 도출된다. 단계(1004)에서, 도로 세그먼트와 대응하는 맵의 맵 데이터는 경사 상태에 기초하여 업데이트된다.
설명의 목적상, 본 명세서 전반에 걸쳐, 매핑 테이블 또는 데이터 구조가 본 발명의 실시예를 설명하기 위해 이용된다. 그러나, 매핑 테이블은 기계 학습 예측 또는 결정 모델우의 일부로서 구현될 수 있다. 예측 또는 결정 모델에 제공된 입력은 제어 명령 및 주행 파라미터를 포함할 수 있고, 예측 또는 결정 모델의 출력은 경사 상태일 수 있다. 피치/명령 예측 모델과 롤/명령 예측 모델이 있을 수 있다. 피치/명령 예측 모델에 대한 입력은 속도 제어 명령(예: 스로틀 또는 제동 명령)과 주행 파라미터(예: 속도, 가속 또는 감속)를 포함할 수 있으며, 피치/명령 모델의 출력은 도로의 피치 상태(예: 종방향의 기울기/경사 백분율 또는 각도)일 수 있다. 롤/명령 예측 모델에 대한 입력은 스티어링 명령 및 진행 방향을 포함할 수 있으며, 롤/명령 예측 모델의 출력은 도로의 롤 상태(예: 교차 경사/경사 백분율 또는 각도)일 수 있다.
상술되고 도시된 구성 요소의 일부 또는 전부는 소프트웨어, 하드웨어 또는 이들의 조합으로 구현될 수 있다. 예를 들어, 이러한 구성 요소는, 본 출원 전반에 걸쳐 기술된 프로세스 또는 동작들을 실행하기 위해, 프로세서(미도시)에 의해 메모리에 로딩되어 실행될 수 있는, 영구 기억 장치에 설치되어 저장되는 소프트웨어로서 구현될 수 있다. 대안적으로, 이러한 구성 요소는, 집적 회로(예를 들어, 주문형 집적 회로 또는 ASIC), 디지털 신호 처리기(DSP) 또는 필드 프로그래머블 게이트 어레이(Field Programmable Gate Array; FPGA)와 같은 전용 하드웨어에 프로그램되거나 내장된 실행 가능 코드로서 구현될 수 있으며, 이는 애플리케이션으로부터 대응하는 드라이버 및/또는 운영 체제를 통해 액세스될 수 있다. 또한, 이러한 구성 요소는 하나 이상의 특정 명령을 통해 소프트웨어 구성 요소에 의해 액세스 가능한 명령 세트의 일부로서 프로세서 또는 프로세서 코어에서 특정 하드웨어 로직으로서 구현될 수 있다.
도 11은 본 발명의 일 실시예와 함께 사용될 수 있는 데이터 처리 시스템의 일례를 나타내는 블록도이다. 예를 들어, 시스템(1500)은, 예를 들어, 도 1의 인지 및 계획 시스템(110), 임의의 서버(103-104), 또는 도 9의 맵 업데이트 서버와 같은, 상술된 임의의 프로세스 또는 방법을 수행하는 상술된 데이터 처리 시스템 중 임의의 것을 나타낼 수 있다. 시스템(1500)은 다수의 상이한 구성 요소들을 포함할 수 있다. 이들 구성 요소는, 집적 회로(IC), 그 부분, 개별 전자 장치 또는 컴퓨터 시스템의 마더 보드 또는 애드-인 카드와 같은 회로 보드에 적용되는 다른 모듈로서 구현 될 수 있거나, 컴퓨터 시스템의 샤시 내에 다른 방법으로 통합되는 구성 요소들로써 구현될 수 있다.
또한, 시스템(1500)은 컴퓨터 시스템의 많은 구성 요소들의 상위 레벨 뷰를 도시하기 위한 것이다. 그러나, 추가의 구성 요소가 특정 구현 예에 존재할 수 있고, 또한, 도시된 구성 요소의 상이한 배열이 다른 구현 예에서 나타날 수 있음을 이해해야 한다. 시스템(1500)은 데스크탑, 랩탑, 태블릿, 서버, 이동 전화, 미디어 플레이어, PDA(personal digital assistant), 스마트 워치, 개인용 통신기, 게임 장치, 네트워크 라우터 또는 허브, 무선 액세스 포인트(AP) 또는 중계기(repeater), 셋톱 박스 또는 이들의 조합일 수 있다. 또한, 단지 하나의 기계 또는 시스템이 도시되어 있지만, "기계" 또는 "시스템"이라는 용어는, 본 출원에서 기술하는 방법들의 하나 이상을 실행하기 위해, 개별적으로 또는 공동으로 명령어들의 세트(또는 다수의 세트)를 수행하는 임의의 기계 또는 시스템의 집합을 포함하도록 취급될 것이다.
일 실시예에서, 시스템(1500)은 버스 또는 인터커넥트(1510)을 통해 연결된 프로세서(1501), 메모리(1503) 및 디바이스들(1505-1508)을 포함한다. 프로세서(1501)는 단일 프로세서 코어 또는 그 안에 포함된 다중 프로세서 코어를 갖는 단일 프로세서 또는 다중 프로세서를 나타낼 수 있다. 프로세서(1501)는, 마이크로 프로세서, 중앙 처리 장치(CPU) 등과 같은 하나 이상의 범용 프로세서를 나타낼 수 있다. 구체적으로, 프로세서(1501)는 CISC(COMPLEX INSTRUCTION SET COMPUTING) 마이크로프로세서, RISC(REDUCED INSTRUCTION SET COMPUTING) 마이크로프로세서, VLIW(VERY LONG INSTRUCTION WORD) 마이크로프로세서, 또는 다른 명령어 세트를 구현하는 마이크로프로세서, 또는 명령어 세트의 조합을 구현하는 프로세서일 수 있다. 프로세서(1501)는 주문형 집적 회로(ASIC), 셀룰러 또는 베이스 밴드 프로세서, 필드 프로그래머블 게이트 어레이(FPGA), 디지털 신호 프로세서(DSP), 네트워크 프로세서, 그래픽 프로세서, 통신 프로세서, 암호화 프로세서, 코-프로세서, 임베디드 프로세서, 또는 명령어를 처리할 수 있는 임의의 다른 유형의 로직 등과 같은 하나 이상의 특수 목적 프로세서일 수도 있다.
초 저전압 프로세서와 같은 저전력 멀티 코어 프로세서 소켓일 수 있는, 프로세서(1501)는, 메인 프로세싱 유닛 및 시스템의 다양한 구성요소와의 통신을 위한 중앙 허브로서 작동할 수 있다. 이러한 프로세서는 시스템 온 칩(SoC)으로서 구현될 수 있다. 프로세서(1501)는, 본 명세서에서 논의된 동작들 및 단계들을 수행하기 위한 명령어들을 실행하도록 구성된다. 시스템(1500)은, 디스플레이 제어기, 그래픽 프로세서 및/또는 디스플레이 장치를 포함할 수 있는, 선택적인 그래픽 서브 시스템(1504)과 통신하는 그래픽 인터페이스를 더 포함할 수 있다.
프로세서(1501)는, 일 실시예에서 주어진 양의 시스템 메모리를 제공하기 위해 다수의 메모리 장치를 통해 구현될 수 있는 메모리(1503)와 통신할 수 있다. 메모리(1503)는, 랜덤 액세스 메모리(RAM), 다이나믹 RAM(DRAM), 동기식 DRAM(SDRAM), 스태틱 RAM(SRAM)와 같은 하나 이상의 휘발성 저장(또는 메모리) 장치 또는 다른 유형의 저장 장치를 포함할 수 있다. 메모리(1503)는, 프로세서(1501) 또는 임의의 다른 장치에 의해 실행되는 명령어들의 시퀀스를 포함하는 정보를 저장할 수 있다. 예를 들어, 다양한 운영 체제, 장치 드라이버, 펌웨어(예를 들어, 입출력 기본 시스템 또는 BIOS), 및/또는 애플리케이션의 실행 가능 코드 및/또는 데이터는 메모리(1503)에 로드되고 프로세서(1501)에 의해 실행될 수 있다. 운영 체제는, 예를 들어, 로봇 운영 체제(ROS), 마이크로소프트® 사의 윈도우즈® 운영 체제, 애플의 맥 OS®/iOS®, 구글®의 안드로이드®, LINUX, UNIX, 또는 다른 실시간 또는 임베디드 운영 체제와 같은 임의의 유형의 운영 체제일 수 있다.
시스템(1500)은, 네트워크 인터페이스 장치(들)(1505), 선택적인 입력 장치(들)(1506) 및 다른 선택적인 IO 장치(들)(1507)을 포함하는 장치들(1505-1508)과 같은 IO 장치들을 더 포함할 수 있다. 네트워크 인터페이스 디바이스(1505)는 무선 트랜시버 및/또는 네트워크 인터페이스 카드(NIC)를 포함할 수 있다. 무선 트랜시버는, WiFi 트랜시버, 적외선 트랜시버, 블루투스 트랜시버, WiMax 트랜시버, 무선 셀룰러 전화 트랜시버, 위성 트랜시버(예를 들어, GPS(Global Positioning System) 송수신기) 또는 다른 무선 주파수(RF) 트랜시버일 수 있으며, 또는 이들의 조합일 수 있다. NIC는 이더넷 카드(Ethernet card)일 수 있다.
입력 장치(들)(1506)은, 마우스, 터치 패드, (디스플레이 장치(1504)와 통합될 수 있는) 터치 감지 스크린, 스타일러스와 같은 포인터 장치 및/또는 키보드(예를 들어, 물리적 키보드 또는 터치 감지 스크린의 일부로 표시되는 가상 키보드)를 포함할 수 있다. 예를 들어, 입력 장치(1506)는, 터치 스크린에 결합되는 터치 스크린 제어기를 포함할 수 있다. 터치 스크린 및 터치 스크린 제어기는, 예컨대 다수의 터치 감도 기술 중 임의의 것을 사용하여 접촉(CONTACT) 및 이동(MOVE) 또는 중지(BREAK)를 검출할 수 있다. 터치 감도 기술은 예를 들어, 용량성, 저항성, 적외선 및 표면 탄성파 기술뿐만 아니라, 터치 스크린과의 하나 이상의 접촉점을 결정하기 위한 그 외의 근접 센서 어레이 또는 다른 요소를 포함하며, 이에 제한되지 않는다.
IO 장치들(1507)은 오디오 장치를 포함할 수 있다. 오디오 장치는 음성 인식, 음성 복제, 디지털 녹음 및/또는 전화 기능과 같은 음성 작동 기능을 용이하게 하기 위해 스피커 및/또는 마이크를 포함할 수 있다. 다른 IO 장치들(1507)은, USB(universal serial bus) 포트(들), 병렬 포트(들), 직렬 포트(들), 프린터, 네트워크 인터페이스, 버스 브리지(예를 들어, PCI-PCI 브리지), 센서(들)(예를 들어, 가속도계, 자이로스코프, 자력계, 광 센서, 나침반, 근접 센서 등과 같은 모션 센서) 또는 이들의 조합을 포함할 수 있다. 디바이스들(1507)은 이미징 프로세싱 서브 시스템(예를 들어, 카메라)를 더 포함할 수 있다. 이미징 프로세싱 서브 시스템은, 사진 및 비디오 클립 녹화와 같은 카메라 기능들을 용이하게 하는데 이용되는, CCD(CHARGE COUPLED DEVICE) 또는 CMOS(COMPLEMENTARY METAL-OXIDE SEMICONDUCTOR) 광학 센서를 포함할 수 있다. 특정 센서는, 센서 허브(미도시)를 통해 인터커넥트(1510)에 연결될 수 있지만, 키보드 또는 열 센서와 같은 다른 장치는 시스템(1500)의 특정 구성 또는 설계에 따라 내장형 제어기(미도시)에 의해 제어될 수 있다.
데이터, 애플리케이션, 하나 이상의 운영 체제 등과 같은 정보의 영구 저장을 제공하기 위해, 대용량 저장 장치(미도시)가 또한 프로세서(1501)에 연결될 수 있다. 다양한 실시예에서, 시스템 응답성을 향상시킬 뿐만 아니라 더 얇고 가벼운 시스템 설계를 가능하게 하기 위해, 이 대용량 저장 장치는 SSD(solid state device)를 통해 구현될 수 있다. 그러나, 다른 실시예들에서, 대용량 저장 장치는, 시스템 활동의 재시작 시에 빠른 파워 업이 일어나도록, 파워 다운 이벤트들 동안 컨텍스트 상태(context state) 및 다른 그러한 정보의 비 휘발성 저장을 가능하게 하기 위해 SSD 캐시로서 작용하는, 더 적은 양의 SSD 스토리지와 함께 하드 디스크 드라이브(HDD)를 사용하여 주로 구현될 수 있다. 또한, 플래시 장치는, 예를 들어, 직렬 주변 장치 인터페이스(SPI)를 통해 프로세서(1501)에 결합될 수 있다. 이 플래시 장치는, 시스템의 다른 펌웨어뿐만 아니라 BIOS를 포함하는, 시스템 소프트웨어의 비휘발성 저장 공간을 제공할 수 있다.
저장 장치(1508)는, 본 명세서에 기술된 방법들 또는 기능들의 하나 이상을 내장하는 하나 이상의 명령어 세트 또는 소프트웨어(예를 들어, 모듈, 유닛 및/또는 로직(1528))가 저장되는 컴퓨터 액세스 가능 저장 매체(1509)(기계 판독 가능 저장 매체 또는 컴퓨터 판독 가능 매체로도 알려짐)을 포함할 수 있다. 프로세싱 모듈/유닛/로직(1528)은, 예를 들어, 계획 모듈(304), 제어 모듈(305), 경사 처리 모듈 (308) 및/또는 맵 업데이트 모듈 (309)과 같은, 상술한 구성요소의 임의의 것을 나타낼 수 있다. 대안적으로, 처리 모듈/유닛/로직(1528)은 데이터 수집기(911), 데이터 분석 모듈(912), 맵 업데이트 장치(913) 및/또는 맵 병합기(914)를 나타낼 수 있다. 처리 모듈/유닛/로직(1528)은 또한 머신 액세스 가능 저장 매체를 또한 구성하는, 데이터 처리 시스템(1500), 메모리(1503) 및 프로세서(1501)에 의한 실행 중에 메모리(1503) 및/또는 프로세서(1501) 내에 완전히 또는 적어도 부분적으로 상주할 수 있다. 프로세싱 모듈/유닛/로직(1528)은 네트워크 인터페이스 장치(1505)를 통해 네트워크를 통해 더 송신되거나 수신될 수 있다.
또한, 컴퓨터 판독 가능 저장 매체(1509)는 전술한 일부 소프트웨어 기능을 지속적으로 저장하는데 사용될 수 있다. 컴퓨터 판독 가능 저장 매체(1509)는 단일 매체로 예시적인 실시예로 도시되지만, "컴퓨터 판독 가능 저장 매체"라는 용어는 하나 이상의 명령어 세트들을 저장하는 단일 매체 또는 다중 매체(예를 들어, 중앙 집중식 또는 분산형 데이터베이스 및/또는 연관된 캐시들 및 서버들)를 포함하도록 취급되어야 한다. "컴퓨터 판독 가능 저장 매체"라는 용어는, 또한 기계에 의한 실행을 위한 명령 세트를 저장 또는 인코딩할 수 있고, 본 발명의 방법들 중 하나 이상을 기계가 수행하게 하는 임의의 매체를 포함하도록 취급될 것이다. 따라서, "컴퓨터 판독 가능 저장 매체"라는 용어는, 솔리드 스테이트 메모리, 광학 및 자기 매체, 또는 임의의 다른 비 일시적 기계 판독 가능 매체를 포함하도록 취급될 것이지만, 이에 한정되는 것은 아니다.
프로세싱 모듈/유닛/로직(1528), 본 명세서에서 설명된 구성 요소들 및 다른 특징들은, 개별 하드웨어 구성 요소들로서 구현되거나, ASIC, FPGA, DSP 또는 유사한 장치와 같은 하드웨어 구성 요소들의 기능성에 통합될 수 있다. 또한, 처리 모듈/유닛/로직(1528)은 하드웨어 장치 내의 펌웨어 또는 기능 회로로 구현될 수 있다. 또한, 처리 모듈/유닛/로직(1528)은 임의의 조합 하드웨어 장치 및 소프트웨어 구성 요소로 구현될 수 있다.
시스템(1500)은, 데이터 처리 시스템의 다양한 구성 요소로 도시되어 있지만, 구성 요소를 상호 접속시키는 임의의 특정 아키텍처 또는 방식을 나타내기 위한 것이 아니다. 이러한 세부 사항들은 본 발명의 실시예들과 관련되지 않다. 네트워크 컴퓨터들, 핸드 헬드 컴퓨터들, 이동 전화들, 서버들 및/또는 더 적은 구성 요소 또는 더 많은 구성 요소를 갖는 다른 데이터 처리 시스템들이 또한 본 발명의 실시예들과 함께 사용될 수 있다.
전술한 상세한 설명의 일부는, 컴퓨터 메모리 내의 데이터 비트에 대한 연산의 알고리즘 및 기호 표현과 관련하여 제시되었다. 이러한 알고리즘 설명 및 표현은, 데이터 처리 기술 분야의 당업자가 자신의 연구 내용을 다른 당업자에게 가장 효과적으로 전달하는데 사용되는 방법이다. 여기에서의 알고리즘은 일반적으로 원하는 결과를 이끌어내는 일관된 동작 순서로 인식된다. 이 동작들은 물리량의 물리적인 조작을 요구하는 것들이다.
그러나 이러한 모든 용어 및 그와 유사한 용어는 적절한 물리양과 관련되어 있으며 이러한 양에 적용되는 편리한 레이블이다. 상기 논의로부터 명백한 바와 같이 특별히 언급하지 않는 한, 명세서 전반에 걸쳐, 이하의 특허청구범위에 기재된 것과 같은 용어를 이용한 설명은 컴퓨터 시스템 또는 유사한 전자 컴퓨팅 장치의 동작 및 프로세스를 참고하며, 동작 및 프로세스는 컴퓨터 시스템의 레지스터 및 메모리 내의 물리(전자) 양으로 표현된 데이터를 컴퓨터 시스템 메모리 또는 레지스터 또는 기타 정보 저장 장치, 전송 또는 디스플레이 장치 내에서 물리량으로 유사하게 표현되는 다른 데이터로 조작 및 변형한다.
본 발명의 실시예는 또한 본 명세서의 동작을 수행하기 위한 장치에 관한 것이다. 이러한 컴퓨터 프로그램은 비일시적 컴퓨터 판독 가능 매체에 저장된다. 기계 판독 가능 매체는, 기계(예를 들어, 컴퓨터) 판독 가능 형태로 정보를 저장하기 위한 임의의 메커니즘을 포함한다. 예를 들어, 기계 판독 가능(예를 들어, 컴퓨터 판독 가능) 매체는 기계(예를 들어, 컴퓨터) 판독 가능 저장 매체(예를 들어, 읽기 전용 메모리(ROM)), 랜덤 액세스 메모리(RAM), 자기 저장 매체, 광학 저장 매체, 플래시 메모리 장치)를 포함한다.
상기 도면들에 도시된 프로세스들 또는 방법들은, 하드웨어(예를 들어, 회로, 전용 로직 등), 소프트웨어(예를 들어, 비일시적인 컴퓨터 판독 가능 매체 상에 구현되는), 또는 이들의 조합을 포함하는 프로세싱 로직에 의해 수행될 수 있다. 프로세스들 또는 방법들이 몇몇 순차적인 동작들과 관련해서 위에서 설명되었지만, 기술된 동작들 중 일부는 다른 순서로 수행될 수 있다. 더욱이, 몇몇 동작들은 순차적이 아니라 병렬로 수행될 수 있다.
본 발명의 실시예는 임의의 특정 프로그래밍 언어를 참조하여 설명되지 않는다. 본 명세서에 설명된 본 발명의 실시예들의 교시를 구현하기 위해 다양한 프로그래밍 언어가 사용될 수 있다는 것을 이해할 것이다.
전술한 명세서에서, 본 발명의 실시예는 특정 실시예를 참조하여 설명되었다. 후술할 특허청구범위에 기재된 본 발명의 더 넓은 사상 및 범위를 벗어나지 않으면서도 다양한 변형이 가능하다는 것은 명백할 것이다. 따라서, 명세서 및 도면은 제한적인 의미라기보다는 예시적인 의미로 간주되어야 한다.

Claims (20)

  1. 자율 주행을 위한 맵을 업데이트하는 컴퓨터로 구현된 방법에 있어서,
    제1 제어 명령에 응답하여 도로의 세그먼트에서 주행하는 자율 주행 차량(ADV)의 제1 주행 파라미터를 기록하는 단계 - 상기 제1 제어 명령은 제1 스티어링 명령을 포함하고, 상기 제1 주행 파라미터는 제1 주행 방향을 포함함 -;
    상기 제1 주행 파라미터와 상기 제1 제어 명령에 대응하는 목표 주행 파라미터 간의 차이를 결정하는 단계 - 상기 목표 주행 파라미터는 목표 주행 방향을 포함함 -;
    상기 차이가 소정의 임계값을 초과하는 것으로 판정한 것에 응답하여, 제2 제어 명령을 발행하여 보상하고 상기 ADV를 상기 목표 주행 파라미터에 더 가까운 제2 주행 파라미터로 주행하게 하는 단계 - 상기 제2 제어 명령은 제2 스티어링 명령을 포함함 -;
    적어도 상기 제2 제어 명령에 기초하여 상기 도로의 상기 세그먼트의 경사 상태를 도출하는 단계 - 상기 경사 상태는 롤 상태를 포함하고, 상기 롤 상태는 상기 ADV가 왼쪽 또는 오른쪽으로 기울어 지거나 굴렀는지 여부를 나타냄 -; 및
    상기 도출된 경사 상태에 기초하여 상기 도로의 상기 세그먼트에 대응하는 맵의 맵 데이터를 업데이트하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서, 상기 도로의 상기 세그먼트의 경사 상태를 도출하는 단계는,
    상기 제 2 제어 명령 및 상기 목표 주행 파라미터와 매칭되는 매핑 엔트리를 검색하고 찾아내도록 경사-명령(경사/명령) 매핑 테이블에서 룩업 동작을 수행하는 단계; 및
    상기 경사/명령 테이블의 매칭 엔트리로부터 상기 경사 상태를 획득하는 단계를 포함하는, 방법.
  3. 제2항에 있어서, 상기 경사/명령 매핑 테이블은 복수의 매핑 엔트리를 포함하고, 각각의 상기 매핑 엔트리는 특정 제어 명령 및 특정 주행 파라미터를 특정 경사 상태에 매핑하는, 방법.
  4. 제3항에 있어서, 상기 경사/명령 매핑 테이블은 상이한 경사 상태를 갖는 다양한 형태의 도로에서 주행하는 복수의 차량의 주행 통계에 기초하여 생성되고, 상기 주행 통계는 상이한 시점에서 상기 차량에 발행된 제어 명령 및 상기 차량으로부터의 응답을 기록하는, 방법.
  5. 제3항에 있어서, 각각의 상기 매핑 엔트리의 제어 명령은, 상기 매핑 엔트리의 대응 주행 파라미터에 따라 주행하는 차량을 유지하기 위해 발행되는, 방법.
  6. 제1항에 있어서, 상기 경사 상태는 피치 상태를 더 포함하는, 방법.
  7. 제1항에 있어서, 상기 제1 및 제2 제어 명령은 속력 제어 명령을 더 포함하는, 방법.
  8. 명령어들을 저장하는 비일시적 기계 판독 가능 매체로서, 상기 명령어들은 프로세서에 의해 실행될 때 상기 프로세서로 하여금 동작들을 수행하게 하고, 상기 동작들은,
    제1 제어 명령에 응답하여 도로의 세그먼트에서 주행하는 자율 주행 차량(ADV)의 제1 주행 파라미터를 기록하는 것 - 상기 제1 제어 명령은 제1 스티어링 명령을 포함하고, 상기 제1 주행 파라미터는 제1 주행 방향을 포함함 -;
    상기 제1 주행 파라미터와 상기 제1 제어 명령에 대응하는 목표 주행 파라미터 간의 차이를 결정하는 것 - 상기 목표 주행 파라미터는 목표 주행 방향을 포함함 -;
    상기 차이가 소정의 임계값을 초과하는 것으로 판정한 것에 응답하여, 제2 제어 명령을 발행하여 보상하고 상기 ADV를 상기 목표 주행 파라미터에 더 가까운 제2 주행 파라미터로 주행하게 하는 것 - 상기 제2 제어 명령은 제2 스티어링 명령을 포함함 -;
    적어도 상기 제2 제어 명령에 기초하여 상기 도로의 상기 세그먼트의 경사 상태를 도출하는 것 - 상기 경사 상태는 롤 상태를 포함하고, 상기 롤 상태는 상기 ADV가 왼쪽 또는 오른쪽으로 기울어 지거나 굴렀는지 여부를 나타냄 -; 및
    상기 도출된 경사 상태에 기초하여 상기 도로의 상기 세그먼트에 대응하는 맵의 맵 데이터를 업데이트하는 것
    을 포함하는, 기계 판독 가능 매체.
  9. 제8항에 있어서, 상기 도로의 상기 세그먼트의 경사 상태를 도출하는 것은,
    상기 제 2 제어 명령 및 상기 목표 주행 파라미터와 매칭되는 매핑 엔트리를 검색하고 찾아내도록 경사-명령(경사/명령) 매핑 테이블에서 룩업 동작을 수행하는 것; 및
    상기 경사/명령 테이블의 매칭 엔트리로부터 상기 경사 상태를 획득하는 것을 포함하는, 기계 판독 가능 매체.
  10. 제9항에 있어서, 상기 경사/명령 매핑 테이블은 복수의 매핑 엔트리를 포함하고, 각각의 상기 매핑 엔트리는 특정 제어 명령 및 특정 주행 파라미터를 특정 경사 상태에 매핑하는, 기계 판독 가능 매체.
  11. 제10항에 있어서, 상기 경사/명령 매핑 테이블은 상이한 경사 상태를 갖는 다양한 형태의 도로에서 주행하는 복수의 차량의 주행 통계에 기초하여 생성되고, 상기 주행 통계는 상이한 시점에서 상기 차량에 발행된 제어 명령 및 상기 차량으로부터의 응답을 기록하는, 기계 판독 가능 매체.
  12. 제10항에 있어서, 각각의 상기 매핑 엔트리의 제어 명령은, 상기 매핑 엔트리의 대응 주행 파라미터에 따라 주행하는 차량을 유지하기 위해 발행되는, 기계 판독 가능 매체.
  13. 제8항에 있어서, 상기 경사 상태는 피치 상태를 더 포함하는, 기계 판독 가능 매체.
  14. 제8항에 있어서, 상기 제1 및 제2 제어 명령은 속력 제어 명령을 더 포함하는, 기계 판독 가능 매체.
  15. 데이터 처리 시스템에 있어서,
    프로세서; 및
    상기 프로세서에 결합되어 명령어들을 저장하는 메모리를 포함하고, 상기 명령어들은 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금 동작들을 수행하게 하며, 상기 동작들은,
    제1 제어 명령에 응답하여 도로의 세그먼트에서 주행하는 자율 주행 차량(ADV)의 제1 주행 파라미터를 기록하는 것 - 상기 제1 제어 명령은 제1 스티어링 명령을 포함하고, 상기 제1 주행 파라미터는 제1 주행 방향을 포함함 -,
    상기 제1 주행 파라미터와 상기 제1 제어 명령에 대응하는 목표 주행 파라미터 간의 차이를 결정하는 것 - 상기 목표 주행 파라미터는 목표 주행 방향을 포함함 -,
    상기 차이가 소정의 임계값을 초과하는 것으로 판정한 것에 응답하여, 제2 제어 명령을 발행하여 보상하고 상기 ADV를 상기 목표 주행 파라미터에 더 가까운 제2 주행 파라미터로 주행하게 하는 것 - 상기 제2 제어 명령은 제2 스티어링 명령을 포함함 -,
    적어도 상기 제2 제어 명령에 기초하여 상기 도로의 상기 세그먼트의 경사 상태를 도출하는 것 - 상기 경사 상태는 롤 상태를 포함하고, 상기 롤 상태는 상기 ADV가 왼쪽 또는 오른쪽으로 기울어 지거나 굴렀는지 여부를 나타냄 -, 및
    상기 도출된 경사 상태에 기초하여 상기 도로의 상기 세그먼트에 대응하는 맵의 맵 데이터를 업데이트하는 것
    을 포함하는, 데이터 처리 시스템.
  16. 자율 주행을 위한 맵을 업데이트하는 컴퓨터로 구현된 방법에 있어서,
    복수의 차량들이 복수의 도로상에서 주행하고 있을 때 기록된 상기 차량들의 주행 통계를 수신하는 단계 - 상기 주행 통계는 상이한 시점에서 상기 차량들에 발행된 제어 명령과 상기 제어 명령에 응답한 상기 차량들의 응답을 포함하고, 상기 제어 명령은 스티어링 명령을 포함함 -;
    주어진 도로 세그먼트에 대해, 상기 차량들이 상기 제어 명령과 관련된 하나 이상의 목표 주행 파라미터를 유지하기 위해 상기 차량들의 이전 제어 명령을 보상하도록 하나 이상의 차량에 발행된 하나 이상의 제어 명령이 식별되는 단계 - 상기 목표 주행 파라미터는 목표 주행 방향을 포함함 -;
    상기 제어 명령 및 상기 목표 주행 파라미터에 기초하여 상기 도로의 세그먼트의 경사 상태를 도출하는 단계 - 상기 경사 상태는 롤 상태를 포함하고, 상기 롤 상태는 상기 ADV가 왼쪽 또는 오른쪽으로 기울어 지거나 굴렀는지 여부를 나타냄 -; 및
    상기 도로의 세그먼트에 대응하는 맵의 맵 위치의 맵 데이터를 업데이트하는 단계
    를 포함하는, 방법.
  17. 제16항에 있어서, 상기 도로의 세그먼트의 경사 상태를 도출하는 단계는:
    상기 제어 명령 및 대응 목표 주행 파라미터의 각각에 대해, 상기 제어 명령 및 상기 목표 주행 파라미터와 매칭되는 매핑 엔트리를 검색하고 찾아내도록 경사-명령(경사/명령) 매핑 테이블에서 룩업 동작을 수행하는 단계, 및
    상기 경사/명령 테이블의 매칭 엔트리로부터 경사 상태를 획득하는 단계를 포함하는, 방법.
  18. 제17항에 있어서, 상기 경사/명령 매핑 테이블은 복수의 매핑 엔트리를 포함하고, 각각의 상기 매핑 엔트리는 특정 제어 명령 및 특정 주행 파라미터를 특정 경사 상태에 매핑하는, 방법.
  19. 제18항에 있어서, 상기 경사/명령 매핑 테이블은 상이한 경사 상태를 갖는 다양한 형태의 도로에서 주행하는 복수의 차량의 주행 통계에 기초하여 생성되고, 주행 통계는 상이한 시점에서 상기 차량에 발행된 제어 명령 및 성가 차량으로부터의 응답을 기록하는, 방법.
  20. 제18항에 있어서, 각각의 상기 매핑 엔트리의 제어 명령은, 상기 매핑 엔트리의 대응 주행 파라미터에 따라 주행하는 차량을 유지하기 위해 발행되는, 방법.
KR1020187006492A 2017-05-22 2017-05-22 자율 주행 차량의 제어 피드백에 기초한 맵 업데이트 방법 및 시스템 KR102062608B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/085272 WO2018213969A1 (en) 2017-05-22 2017-05-22 Method and system for updating maps based on control feedbacks of autonomous driving vehicles

Publications (2)

Publication Number Publication Date
KR20190094095A KR20190094095A (ko) 2019-08-12
KR102062608B1 true KR102062608B1 (ko) 2020-01-06

Family

ID=64395231

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187006492A KR102062608B1 (ko) 2017-05-22 2017-05-22 자율 주행 차량의 제어 피드백에 기초한 맵 업데이트 방법 및 시스템

Country Status (6)

Country Link
US (1) US10488205B2 (ko)
EP (1) EP3423787B8 (ko)
JP (1) JP6653381B2 (ko)
KR (1) KR102062608B1 (ko)
CN (1) CN109287122B (ko)
WO (1) WO2018213969A1 (ko)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102062608B1 (ko) * 2017-05-22 2020-01-06 바이두닷컴 타임즈 테크놀로지(베이징) 컴퍼니 리미티드 자율 주행 차량의 제어 피드백에 기초한 맵 업데이트 방법 및 시스템
US10308242B2 (en) * 2017-07-01 2019-06-04 TuSimple System and method for using human driving patterns to detect and correct abnormal driving behaviors of autonomous vehicles
US10520319B2 (en) * 2017-09-13 2019-12-31 Baidu Usa Llc Data driven map updating system for autonomous driving vehicles
US10775790B2 (en) * 2018-02-09 2020-09-15 Baidu Usa Llc Methods and systems for model predictive control of autonomous driving vehicle
CN111566715A (zh) * 2018-03-29 2020-08-21 松下知识产权经营株式会社 控制装置以及地图生成方法
US10816992B2 (en) * 2018-04-17 2020-10-27 Baidu Usa Llc Method for transforming 2D bounding boxes of objects into 3D positions for autonomous driving vehicles (ADVs)
US11180145B2 (en) * 2018-11-29 2021-11-23 Baidu Usa Llc Predetermined calibration table-based vehicle control system for operating an autonomous driving vehicle
EP3700793A4 (en) * 2018-12-26 2020-09-09 Baidu.com Times Technology (Beijing) Co., Ltd. CORNER NEGOTIATION PROCEDURE FOR AUTONOMOUS VEHICLES WITHOUT MAP AND LOCALIZATION
CN112055805A (zh) * 2019-01-30 2020-12-08 百度时代网络技术(北京)有限公司 用于自动驾驶车辆的点云登记系统
US11468690B2 (en) * 2019-01-30 2022-10-11 Baidu Usa Llc Map partition system for autonomous vehicles
US11066069B2 (en) * 2019-03-04 2021-07-20 Baidu Usa Llc Extra-freedom stitch method for reference line smoothing
CN109960260A (zh) * 2019-03-21 2019-07-02 上海赛摩物流科技有限公司 一种自主导引车辆及其导航方法和控制装置
CN114127658B (zh) * 2019-06-14 2023-05-23 宝马股份公司 使用道路模型2d流形的6d空间中的3d里程
CN110304065A (zh) * 2019-07-23 2019-10-08 广州小鹏汽车科技有限公司 一种车辆的起步控制方法、系统及车辆
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
CN112445219A (zh) * 2019-08-30 2021-03-05 北京京东乾石科技有限公司 用于控制无人设备的方法和装置
JP7194096B2 (ja) * 2019-09-30 2022-12-21 本田技研工業株式会社 走行制御装置
US11338819B2 (en) * 2019-09-30 2022-05-24 Baidu Usa Llc Cloud-based vehicle calibration system for autonomous driving
KR102244759B1 (ko) * 2019-10-07 2021-04-28 (주)오토노머스에이투지 분할 제어에 기반하여 자율주행자동차의 안정성을 향상시키기 위한 방법 및 이를 이용한 시스템
JP7306283B2 (ja) * 2020-01-31 2023-07-11 トヨタ自動車株式会社 車両
CN113492863B (zh) * 2020-03-18 2023-03-10 北京车和家信息技术有限公司 自动驾驶的控制方法及装置
US11332152B2 (en) * 2020-05-29 2022-05-17 GM Global Technology Operations LLC Method and apparatus for determining a velocity of a vehicle
CN111735469B (zh) * 2020-06-15 2022-08-23 腾讯科技(深圳)有限公司 地图导航实现方法、存储介质及服务器
CN113799772B (zh) * 2020-09-18 2024-03-01 北京京东乾石科技有限公司 车辆的控制方法、装置以及控制系统
US11579627B2 (en) * 2020-12-17 2023-02-14 Tusimple, Inc. Systems and methods for updating navigational maps
CN113778086A (zh) * 2021-09-03 2021-12-10 上海擎朗智能科技有限公司 地图构建和使用方法、机器人及存储介质
KR102542337B1 (ko) * 2021-09-14 2023-06-12 (주) 경성테크놀러지 전동이동보조기기 운행 보조 시스템
CN113865600B (zh) * 2021-09-28 2023-01-06 北京三快在线科技有限公司 一种高精地图的构建方法及装置
CN113963542B (zh) * 2021-10-25 2022-12-27 京东鲲鹏(江苏)科技有限公司 无人车的数据处理方法及相关设备
CN113706737B (zh) * 2021-10-27 2022-01-07 北京主线科技有限公司 基于自动驾驶车辆的路面巡检系统及方法
US11565699B1 (en) * 2022-03-31 2023-01-31 Plusai, Inc. Methods and apparatus for automated speed selection and retarder application in downhill driving of an autonomous tractor trailer
CN116340307B (zh) * 2023-06-01 2023-08-08 北京易控智驾科技有限公司 坡道图层生成方法和装置、高精度地图及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100657579B1 (ko) * 2002-12-05 2006-12-14 주식회사 만도 차량용 주행제어 장치
JP2013008287A (ja) * 2011-06-27 2013-01-10 Toyota Central R&D Labs Inc 道路勾配推定システム、道路勾配推定装置、及びプログラム

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2266208C (en) * 1999-03-19 2008-07-08 Wenking Corp. Remote road traffic data exchange and intelligent vehicle highway system
US6847887B1 (en) * 2003-03-04 2005-01-25 Navteq North America, Llc Method and system for obtaining road grade data
JP2006284414A (ja) * 2005-04-01 2006-10-19 Xanavi Informatics Corp 車載情報端末、自動車の走行制御システム、自動車の走行制御装置及び方法
JP2009006889A (ja) * 2007-06-28 2009-01-15 Aisin Aw Co Ltd 道路勾配測定装置、道路勾配測定方法及びコンピュータプログラム
JP4582170B2 (ja) * 2008-03-27 2010-11-17 トヨタ自動車株式会社 勾配情報演算装置、車両走行制御装置、ナビゲーションシステム
US9255529B2 (en) * 2010-02-23 2016-02-09 Honda Motor Co., Ltd. Longitudinal G adjusted throttle response
JP5482320B2 (ja) * 2010-03-11 2014-05-07 株式会社デンソー 車両用運転支援装置
JP5824901B2 (ja) * 2011-06-22 2015-12-02 日産自動車株式会社 勾配推定装置
SE1100538A1 (sv) * 2011-07-15 2013-01-16 Scania Cv Ab Grafiskt användargränssnitt
US8527199B1 (en) * 2012-05-17 2013-09-03 Google Inc. Automatic collection of quality control statistics for maps used in autonomous driving
US20140032087A1 (en) * 2012-07-25 2014-01-30 Mobiwize Solutions Ltd. Reducing fuel consumption by accommodating to anticipated road and driving conditions
CN203083575U (zh) * 2013-01-29 2013-07-24 延锋伟世通汽车电子有限公司 基于实际道路属性自我学习的车载导航设备
US10451428B2 (en) * 2013-03-15 2019-10-22 Volkswagen Aktiengesellschaft Automatic driving route planning application
US9170115B2 (en) * 2013-06-03 2015-10-27 Hyundai Motor Company Method and system for generating road map using data of position sensor of vehicle
JP6376619B2 (ja) * 2014-04-04 2018-08-22 テスラ・インコーポレーテッド エネルギー制約の下での旅程計画立案
US9227635B1 (en) * 2014-09-25 2016-01-05 Nissan North America, Inc. Method and system of assisting a driver of a vehicle
CN105691393B (zh) * 2014-11-25 2018-01-19 广州汽车集团股份有限公司 基于实时路况的车辆智能巡航控制方法及装置
US10049129B2 (en) * 2014-12-22 2018-08-14 Here Global B.V. Method and apparatus for providing map updates from distance based bucket processing
US10124784B2 (en) * 2015-04-13 2018-11-13 Ford Global Technologies, Llc Method and system for controlling shifting of a vehicle in cruise control
JP6791616B2 (ja) * 2015-04-27 2020-11-25 トヨタ自動車株式会社 自動運転車両システム
EP3130891B1 (en) * 2015-08-11 2018-01-03 Continental Automotive GmbH Method for updating a server database containing precision road information
EP3130945B1 (en) * 2015-08-11 2018-05-02 Continental Automotive GmbH System and method for precision vehicle positioning
US9797505B2 (en) * 2015-08-14 2017-10-24 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for alerting/downshifting in response to an upcoming downgrade
US10406923B2 (en) * 2015-09-25 2019-09-10 Farada & Future Inc. GPS assist in regenerative braking
US10223380B2 (en) * 2016-03-23 2019-03-05 Here Global B.V. Map updates from a connected vehicle fleet
US20170301232A1 (en) * 2016-04-13 2017-10-19 Here Global B.V. Intersection Map Message Creation for Vehicle Communication
US10733460B2 (en) * 2016-09-14 2020-08-04 Nauto, Inc. Systems and methods for safe route determination
US10710603B2 (en) * 2016-10-19 2020-07-14 Here Global B.V. Segment activity planning based on route characteristics
CN106525057A (zh) * 2016-10-26 2017-03-22 陈曦 高精度道路地图的生成系统
US10459441B2 (en) * 2016-12-30 2019-10-29 Baidu Usa Llc Method and system for operating autonomous driving vehicles based on motion plans
EP3544856B1 (en) * 2017-01-12 2023-12-20 Mobileye Vision Technologies Ltd. Determining a road surface characteristic
KR101975725B1 (ko) * 2017-01-13 2019-05-07 바이두닷컴 타임즈 테크놀로지(베이징) 컴퍼니 리미티드 학습 기반 모델 예측 제어를 이용한 자율 주행 차량의 노면 마찰 결정 방법 및 시스템
KR102062608B1 (ko) * 2017-05-22 2020-01-06 바이두닷컴 타임즈 테크놀로지(베이징) 컴퍼니 리미티드 자율 주행 차량의 제어 피드백에 기초한 맵 업데이트 방법 및 시스템
EP3410414A1 (en) * 2017-05-31 2018-12-05 Panasonic Intellectual Property Corporation of America Information processing method, information processing apparatus, system, and storage medium
US20180347993A1 (en) * 2017-05-31 2018-12-06 GM Global Technology Operations LLC Systems and methods for verifying road curvature map data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100657579B1 (ko) * 2002-12-05 2006-12-14 주식회사 만도 차량용 주행제어 장치
JP2013008287A (ja) * 2011-06-27 2013-01-10 Toyota Central R&D Labs Inc 道路勾配推定システム、道路勾配推定装置、及びプログラム

Also Published As

Publication number Publication date
US10488205B2 (en) 2019-11-26
JP2019526840A (ja) 2019-09-19
EP3423787A4 (en) 2019-01-09
EP3423787B8 (en) 2020-04-08
KR20190094095A (ko) 2019-08-12
WO2018213969A1 (en) 2018-11-29
JP6653381B2 (ja) 2020-02-26
CN109287122A (zh) 2019-01-29
EP3423787B1 (en) 2020-01-29
CN109287122B (zh) 2022-05-27
US20190003839A1 (en) 2019-01-03
EP3423787A1 (en) 2019-01-09

Similar Documents

Publication Publication Date Title
KR102062608B1 (ko) 자율 주행 차량의 제어 피드백에 기초한 맵 업데이트 방법 및 시스템
KR102223270B1 (ko) 여분의 초음파 radar를 구비한 자율 주행 차량
US11545033B2 (en) Evaluation framework for predicted trajectories in autonomous driving vehicle traffic prediction
KR101975728B1 (ko) 자율 주행 차량을 위한 사이드슬립 보상 제어 방법
CN111061261B (zh) 使用标准导航地图与基于车辆的先前轨迹确定的车道配置的自动驾驶方法
KR102048646B1 (ko) 자율 주행 차량 이동을 시뮬레이트하기 위한 물리 모델 및 머신 러닝과 결합된 방법
KR102020163B1 (ko) 자율 주행 차량의 조향률의 동적 조정
US10421460B2 (en) Evaluation framework for decision making of autonomous driving vehicle
KR102260486B1 (ko) 자율 주행 차량의 완전 정지를 위한 속력 제어
CN108891417B (zh) 用于操作自动驾驶车辆的方法及数据处理系统
KR102279078B1 (ko) 자율 주행 차량의 v2x 통신 기반의 차량 차로 시스템
CN108733046B (zh) 用于自动驾驶车辆的轨迹重新规划的系统和方法
CN110621541B (zh) 用于生成轨迹以操作自动驾驶车辆的方法和系统
KR102042946B1 (ko) 자율 주행 차량을 위한 감속 연석 기반 방향 검출 및 차선 유지 시스템
WO2018232681A1 (en) TRAFFIC PREDICTION BASED ON CARD IMAGES FOR AUTONOMOUS DRIVING
JP2020523552A (ja) 自動運転車両の経路計画のための運転シナリオに基づく車線ガイドライン
JP2019522830A (ja) 車線縁石補助による自律走行車の車線逸脱検出及び車線維持システム
JP2020083306A (ja) 自動運転車両を動作させるための所定のキャリブレーションテーブルに基づく車両制御システム
CN111103876A (zh) 自动驾驶车辆的基于雷达通信的扩展感知
CN113226825A (zh) 自动驾驶车辆的基于扭矩反馈的车辆纵向自动校准系统
US11312380B2 (en) Corner negotiation method for autonomous driving vehicles without map and localization

Legal Events

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