KR20230173724A - 자율 주행 차량에 대한 다양한 교통 시나리오들에서의 승차감 개선 - Google Patents
자율 주행 차량에 대한 다양한 교통 시나리오들에서의 승차감 개선 Download PDFInfo
- Publication number
- KR20230173724A KR20230173724A KR1020237040516A KR20237040516A KR20230173724A KR 20230173724 A KR20230173724 A KR 20230173724A KR 1020237040516 A KR1020237040516 A KR 1020237040516A KR 20237040516 A KR20237040516 A KR 20237040516A KR 20230173724 A KR20230173724 A KR 20230173724A
- Authority
- KR
- South Korea
- Prior art keywords
- autonomous vehicle
- processor
- traffic
- moving
- traffic scenario
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 103
- 230000033001 locomotion Effects 0.000 claims abstract description 70
- 230000003190 augmentative effect Effects 0.000 claims abstract description 16
- 230000003068 static effect Effects 0.000 claims description 46
- 230000009467 reduction Effects 0.000 claims description 3
- 238000013439 planning Methods 0.000 abstract description 29
- 238000013527 convolutional neural network Methods 0.000 description 82
- 230000006870 function Effects 0.000 description 54
- 238000000926 separation method Methods 0.000 description 54
- 230000001149 cognitive effect Effects 0.000 description 49
- 238000010586 diagram Methods 0.000 description 47
- 210000002569 neuron Anatomy 0.000 description 47
- 238000010801 machine learning Methods 0.000 description 43
- 230000001133 acceleration Effects 0.000 description 42
- 230000008569 process Effects 0.000 description 40
- 238000004891 communication Methods 0.000 description 26
- 230000004807 localization Effects 0.000 description 26
- 230000036461 convulsion Effects 0.000 description 25
- 238000007726 management method Methods 0.000 description 25
- 230000006399 behavior Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 239000003795 chemical substances by application Substances 0.000 description 10
- 230000006378 damage Effects 0.000 description 9
- 238000012549 training Methods 0.000 description 9
- 230000009471 action Effects 0.000 description 8
- 230000004044 response Effects 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 6
- 238000011144 upstream manufacturing Methods 0.000 description 6
- 238000010276 construction Methods 0.000 description 5
- 230000008447 perception Effects 0.000 description 5
- 208000027418 Wounds and injury Diseases 0.000 description 4
- 238000013016 damping Methods 0.000 description 4
- 208000014674 injury Diseases 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 230000002787 reinforcement Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 238000012706 support-vector machine Methods 0.000 description 3
- 241000282412 Homo Species 0.000 description 2
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000008451 emotion Effects 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012913 prioritisation Methods 0.000 description 2
- 230000035807 sensation Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 206010048669 Terminal state Diseases 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000003534 oscillatory effect Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 238000000611 regression analysis Methods 0.000 description 1
- 230000001373 regressive effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000001020 rhythmical effect Effects 0.000 description 1
- 231100000817 safety factor Toxicity 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000013077 scoring method Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000001429 visible spectrum Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0013—Planning or execution of driving tasks specially adapted for occupant comfort
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes 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/08—Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
- B60W30/095—Predicting travel path or likelihood of collision
- B60W30/0956—Predicting travel path or likelihood of collision the prediction being responsive to traffic or environmental parameters
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes 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/10—Path keeping
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes 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/14—Adaptive cruise control
- B60W30/143—Speed control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes 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/18—Propelling the vehicle
- B60W30/18009—Propelling the vehicle related to particular drive situations
- B60W30/18154—Approaching an intersection
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes 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/18—Propelling the vehicle
- B60W30/18009—Propelling the vehicle related to particular drive situations
- B60W30/18163—Lane change; Overtaking manoeuvres
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W40/00—Estimation 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/02—Estimation 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/04—Traffic conditions
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0011—Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0015—Planning or execution of driving tasks specially adapted for safety
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0027—Planning or execution of driving tasks using trajectory prediction for other traffic participants
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2554/00—Input parameters relating to objects
- B60W2554/20—Static objects
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2554/00—Input parameters relating to objects
- B60W2554/40—Dynamic objects, e.g. animals, windblown objects
- B60W2554/402—Type
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2554/00—Input parameters relating to objects
- B60W2554/80—Spatial relation or speed relative to objects
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2555/00—Input parameters relating to exterior conditions, not covered by groups B60W2552/00, B60W2554/00
- B60W2555/60—Traffic rules, e.g. speed limits or right of way
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2720/00—Output or target parameters relating to overall vehicle dynamics
- B60W2720/10—Longitudinal speed
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2754/00—Output or target parameters relating to objects
- B60W2754/10—Spatial relation or speed relative to objects
- B60W2754/20—Lateral distance
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Traffic Control Systems (AREA)
Abstract
궤적 계획을 위해 운동학적 요인을 고려한 다양한 교통 시나리오들에서의 모션 제어 운행의 실시예들이 포함되어 있다. 일부 실시예들에서, 방법은: 환경에서 식별되는 적어도 하나의 대상체에 대한 위험 등급을 결정하는 단계 - 위험 등급은 각기의 대상체와 연관된 인지된 위험을 나타냄 -; 교통 시나리오와 관련한 계층적 요인 세트를 평가하는 단계 - 교통 시나리오의 궤적들에 대해 위험 등급 및 계층적 요인 세트에 기초하여 승객 승차감을 정량화하는 메트릭이 도출됨 -; 메트릭에 기초하여 승객 승차감을 높이기 위해 교통 시나리오에서의 모션 제어 운행을 결정하는 단계; 및 승객 승차감을 높이기 위해 상이한 교통 시나리오들에서의 모션 제어 운행들로 자율 주행 차량의 루트 플래너를 보강하는 단계를 포함한다.
Description
관련 출원에 대한 상호 참조
본 출원은, 그 전체 내용이 참조에 의해 본 명세서에 포함되는, 2021년 4월 27일에 출원된 미국 가특허 출원 제63/180,651호에 대한 우선권을 주장한다.
기술분야
본 개시는 일반적으로 승차감을 높이기 위해 자율 주행 차량에 대한 상이한 교통 시나리오들에서의 궤적들을 계획하는 것에 관한 것이다.
자율 주행 차량(AV) 소프트웨어 스택은 규칙집(rulebook)에 포함된 규칙 세트를 준수하는 하나 이상의 궤적을 계획할 수 있다. 상이한 AV 소프트웨어 스택들은 상이한 궤적들을 생성할 수 있으며, 이들 각각은 규칙집을 준수하지만, 예를 들면, 승차감과 관련하여 상충되는 관심사들, 가치들, 또는 결과들을 갖는다.
도 1은 자율 주행 시스템(autonomous system)의 하나 이상의 컴포넌트를 포함하는 차량이 구현될 수 있는 예시적인 환경이다.
도 2는 자율 주행 시스템을 포함한 차량의 하나 이상의 시스템의 다이어그램이다.
도 3은 도 1 및 도 2의 하나 이상의 디바이스 및/또는 하나 이상의 시스템의 컴포넌트들의 다이어그램이다.
도 4a는 자율 주행 시스템의 특정 컴포넌트들의 다이어그램이다.
도 4b는 신경 네트워크의 구현의 다이어그램이다.
도 4c 및 도 4d는 CNN의 예시적인 작동을 예시하는 다이어그램이다.
도 5a는 차선 마킹들 및 횡단보도들을 갖는 거리 교차로를 포함하는 토폴로지를 예시하는 맵이다.
도 5b는 에이전트(보행자)가 교차로에서 횡단보도에 진입하려고 하는 예시적인 교통 시나리오를 예시한다.
도 5c는 예시적인 AV가 교차로를 횡단하는 것을 예시한다.
도 6은 하나 이상의 실시예에 따른, 인간 주석 작성자(human annotator)가 궤적 쌍으로부터 궤적을 선택할 수 있게 하기 위한 예시적인 주석 달기 도구 인터페이스(annotation tool interface)이다.
도 7은 하나 이상의 실시예에 따른, 부분 순서 구조(partial-ordered structure)를 갖는 예시적인 규칙집이다.
도 8은 하나 이상의 실시예에 따른, ML 트레이닝 절차를 예시한다.
도 9는 하나 이상의 실시예에 따른, 신경 네트워크에 대한 트레이닝 데이터로서 사용될 교통 시나리오의 예시적인 조감도(BEV) 임베딩(의사 이미지)을 예시한다.
도 10은 하나 이상의 실시예에 따른, AV 궤적에 대한 합리성 점수(reasonableness score)를 예측하기 위해 ML 모델을 사용하는 프로세스의 흐름 다이어그램이다.
도 11은 하나 이상의 실시예에 따른, AV 궤적에 대한 합리성 점수를 예측하기 위해 ML 모델을 트레이닝시키는 프로세스의 흐름 다이어그램이다.
도 12는 실시예들에 따른 자율 주행 차량이 조우할 수 있는 특정 대상체(object)들의 위험 등급들을 예시하는 개략적인 다이어그램이다.
도 13a 내지 도 13k는 실시예들에 따른 횡방향 이격거리(lateral clearance)에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다.
도 14a 내지 도 14c는 실시예들에 따른 정적 대상체들을 조우할 때 횡방향 이격거리 대 안정적인 종방향 이동 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다.
도 15a 내지 도 15c는 실시예들에 따른 이동하는 또는 동적 대상체들을 조우할 때 횡방향 가속 대 종방향 감속 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다.
도 16a 내지 도 16c는 실시예들에 따른 종방향 가속 대 종방향 감속 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다.
도 17a 내지 도 17c는 실시예들에 따른 종방향 이격거리 대 종방향 감속(매끄럽게(smoothly) 또는 저크(jerk)) 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다.
도 18a 내지 도 18c는 실시예들에 따른 종방향 이격거리 대 횡방향 이격거리 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다.
도 19a 및 19b는 실시예들에 따른 제한 속도(speed limit) 변경으로 인한 종방향 감속(매끄럽게 또는 저크)에 관한 두 가지 교통 시나리오를 예시하는 개략적인 다이어그램들이다.
도 20은 실시예들에 따른 교차로에서의 가속 대 감속 옵션들에 관한 교통 시나리오를 예시하는 개략적인 다이어그램이다.
도 21은 실시예들에 따른 상대 속도 대 종방향 속도 옵션들에 관한 교통 시나리오를 예시하는 개략적인 다이어그램이다.
도 22a 및 도 22b는 실시예들에 따른 횡방향 이격거리 대 스웨잉(swaying) 옵션들에 관한 두 가지 교통 시나리오를 예시하는 개략적인 다이어그램들이다.
도 23a 및 도 23b는 실시예들에 따른 종방향 저크(longitudinal jerk) 대 횡방향 가속에 관한 교통 시나리오를 예시하는 개략적인 다이어그램들이다.
도 24는 실시예들에 따른 승차감에 기초한 운행 선호 사항들을 예시하는 개략적인 다이어그램이다.
도 25는 실시예들에 따른 승차감에 기초한 운행 선호 사항들을 예시하는 다른 개략적인 다이어그램이다.
도 26은 실시예들에 따른 궤적 계획에서 운동학적 요인들을 적용하는 예시적인 프로세스를 예시하는 흐름 다이어그램이다.
도 27은 실시예들에 따른 궤적 계획에서 운동학적 요인들을 적용하는 다른 예시적인 프로세스를 예시하는 흐름 다이어그램이다.
도 2는 자율 주행 시스템을 포함한 차량의 하나 이상의 시스템의 다이어그램이다.
도 3은 도 1 및 도 2의 하나 이상의 디바이스 및/또는 하나 이상의 시스템의 컴포넌트들의 다이어그램이다.
도 4a는 자율 주행 시스템의 특정 컴포넌트들의 다이어그램이다.
도 4b는 신경 네트워크의 구현의 다이어그램이다.
도 4c 및 도 4d는 CNN의 예시적인 작동을 예시하는 다이어그램이다.
도 5a는 차선 마킹들 및 횡단보도들을 갖는 거리 교차로를 포함하는 토폴로지를 예시하는 맵이다.
도 5b는 에이전트(보행자)가 교차로에서 횡단보도에 진입하려고 하는 예시적인 교통 시나리오를 예시한다.
도 5c는 예시적인 AV가 교차로를 횡단하는 것을 예시한다.
도 6은 하나 이상의 실시예에 따른, 인간 주석 작성자(human annotator)가 궤적 쌍으로부터 궤적을 선택할 수 있게 하기 위한 예시적인 주석 달기 도구 인터페이스(annotation tool interface)이다.
도 7은 하나 이상의 실시예에 따른, 부분 순서 구조(partial-ordered structure)를 갖는 예시적인 규칙집이다.
도 8은 하나 이상의 실시예에 따른, ML 트레이닝 절차를 예시한다.
도 9는 하나 이상의 실시예에 따른, 신경 네트워크에 대한 트레이닝 데이터로서 사용될 교통 시나리오의 예시적인 조감도(BEV) 임베딩(의사 이미지)을 예시한다.
도 10은 하나 이상의 실시예에 따른, AV 궤적에 대한 합리성 점수(reasonableness score)를 예측하기 위해 ML 모델을 사용하는 프로세스의 흐름 다이어그램이다.
도 11은 하나 이상의 실시예에 따른, AV 궤적에 대한 합리성 점수를 예측하기 위해 ML 모델을 트레이닝시키는 프로세스의 흐름 다이어그램이다.
도 12는 실시예들에 따른 자율 주행 차량이 조우할 수 있는 특정 대상체(object)들의 위험 등급들을 예시하는 개략적인 다이어그램이다.
도 13a 내지 도 13k는 실시예들에 따른 횡방향 이격거리(lateral clearance)에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다.
도 14a 내지 도 14c는 실시예들에 따른 정적 대상체들을 조우할 때 횡방향 이격거리 대 안정적인 종방향 이동 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다.
도 15a 내지 도 15c는 실시예들에 따른 이동하는 또는 동적 대상체들을 조우할 때 횡방향 가속 대 종방향 감속 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다.
도 16a 내지 도 16c는 실시예들에 따른 종방향 가속 대 종방향 감속 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다.
도 17a 내지 도 17c는 실시예들에 따른 종방향 이격거리 대 종방향 감속(매끄럽게(smoothly) 또는 저크(jerk)) 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다.
도 18a 내지 도 18c는 실시예들에 따른 종방향 이격거리 대 횡방향 이격거리 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다.
도 19a 및 19b는 실시예들에 따른 제한 속도(speed limit) 변경으로 인한 종방향 감속(매끄럽게 또는 저크)에 관한 두 가지 교통 시나리오를 예시하는 개략적인 다이어그램들이다.
도 20은 실시예들에 따른 교차로에서의 가속 대 감속 옵션들에 관한 교통 시나리오를 예시하는 개략적인 다이어그램이다.
도 21은 실시예들에 따른 상대 속도 대 종방향 속도 옵션들에 관한 교통 시나리오를 예시하는 개략적인 다이어그램이다.
도 22a 및 도 22b는 실시예들에 따른 횡방향 이격거리 대 스웨잉(swaying) 옵션들에 관한 두 가지 교통 시나리오를 예시하는 개략적인 다이어그램들이다.
도 23a 및 도 23b는 실시예들에 따른 종방향 저크(longitudinal jerk) 대 횡방향 가속에 관한 교통 시나리오를 예시하는 개략적인 다이어그램들이다.
도 24는 실시예들에 따른 승차감에 기초한 운행 선호 사항들을 예시하는 개략적인 다이어그램이다.
도 25는 실시예들에 따른 승차감에 기초한 운행 선호 사항들을 예시하는 다른 개략적인 다이어그램이다.
도 26은 실시예들에 따른 궤적 계획에서 운동학적 요인들을 적용하는 예시적인 프로세스를 예시하는 흐름 다이어그램이다.
도 27은 실시예들에 따른 궤적 계획에서 운동학적 요인들을 적용하는 다른 예시적인 프로세스를 예시하는 흐름 다이어그램이다.
이하의 설명에서는, 설명의 목적으로 본 개시의 완전한 이해를 제공하기 위해 다수의 특정 세부 사항들이 제시된다. 그렇지만, 본 개시에 의해 설명되는 실시예들이 이러한 특정 세부 사항들이 없더라도 실시될 수 있다는 것이 명백할 것이다. 일부 경우에, 본 개시의 측면들을 불필요하게 모호하게 하는 것을 피하기 위해 잘 알려진 구조들 및 디바이스들은 블록 다이어그램 형태로 예시되어 있다.
시스템, 디바이스, 모듈, 명령어 블록, 데이터 요소 등을 나타내는 것과 같은, 개략적인 요소들의 특정 배열 또는 순서는 설명의 편의를 위해 도면들에 예시되어 있다. 그렇지만, 본 기술 분야의 통상의 기술자라면 도면들에서의 개략적인 요소들의 특정 순서 또는 배열이, 그러한 것으로 명시적으로 설명되지 않는 한, 프로세스들의 특정 처리 순서 또는 시퀀스, 또는 프로세스들의 분리가 요구된다는 것을 암시하려는 것이 아님을 이해할 것이다. 게다가, 도면에 개략적인 요소를 포함시키는 것은, 그러한 것으로 명시적으로 설명되지 않는 한, 모든 실시예들에서 그러한 요소가 필요하다는 것 또는 일부 실시예들에서 그러한 요소에 의해 표현되는 특징들이 다른 요소들에 포함되지 않거나 다른 요소들과 결합되지 않을 수 있다는 것을 암시하려는 것이 아니다.
게다가, 2개 이상의 다른 개략적인 요소 간의 또는 이들 사이의 연결, 관계 또는 연관을 예시하기 위해 실선 또는 파선 또는 화살표와 같은 연결 요소들이 도면들에서 사용되는 경우에, 임의의 그러한 연결 요소들의 부재는 연결, 관계 또는 연관이 존재하지 않을 수 있다는 것을 암시하려는 것이 아니다. 환언하면, 본 개시를 모호하게 하지 않기 위해 요소들 사이의 일부 연결들, 관계들 또는 연관들이 도면들에 예시되어 있지 않다. 추가적으로, 예시의 편의를 위해, 요소들 사이의 다수의 연결들, 관계들 또는 연관들을 나타내기 위해 단일의 연결 요소가 사용될 수 있다. 예를 들어, 연결 요소가 신호들, 데이터 또는 명령어들(예를 들면, "소프트웨어 명령어들")의 통신을 나타내는 경우에, 본 기술 분야의 통상의 기술자라면 그러한 요소가, 통신을 수행하기 위해 필요하게 될 수 있는, 하나 또는 다수의 신호 경로들(예를 들면, 버스)을 나타낼 수 있다는 것을 이해할 것이다.
제1, 제2, 제3 등과 같은 용어들이 다양한 요소들을 설명하는 데 사용되지만, 이러한 요소들이 이러한 용어들에 의해 제한되어서는 안 된다. 제1, 제2, 제3 등과 같은 용어들은 하나의 요소를 다른 요소와 구별하는 데만 사용된다. 예를 들어, 설명된 실시예들의 범위를 벗어나지 않으면서, 제1 접촉은 제2 접촉이라고 지칭될 수 있고, 유사하게 제2 접촉은 제1 접촉이라고 지칭될 수 있다. 제1 접촉과 제2 접촉은 둘 모두 접촉이지만, 동일한 접촉은 아니다.
본 명세서에서의 다양한 설명된 실시예들에 대한 설명에서 사용되는 전문용어는 특정 실시예들을 설명하기 위해서만 포함되어 있으며, 제한하는 것으로 의도되지 않는다. 다양한 설명된 실시예들 및 첨부된 청구항들에 대한 설명에서 사용되는 바와 같이, 단수 형태들("한", "어떤" 및 "그")은 복수 형태들도 포함하는 것으로 의도되고, 문맥이 달리 명확히 나타내지 않는 한, "하나 이상" 또는 "적어도 하나"와 상호 교환적으로 사용될 수 있다. "및/또는"이라는 용어가, 본 명세서에서 사용되는 바와 같이, 연관된 나열된 항목들 중 하나 이상의 항목의 모든 가능한 조합들을 지칭하고 포괄한다는 것이 또한 이해될 것이다. 게다가, "포함한다(includes, comprises)" 및/또는 "포함하는(including, comprising)"이라는 용어들이, 본 설명에서 사용될 때, 언급된 특징, 정수, 단계, 동작, 요소, 및/또는 컴포넌트의 존재를 명시하지만, 하나 이상의 다른 특징, 정수, 단계, 동작, 요소, 컴포넌트, 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는다는 것이 이해될 것이다.
본 명세서에서 사용되는 바와 같이, "통신" 및 "통신하다"라는 용어들은 정보(또는, 예를 들어, 데이터, 신호, 메시지, 명령어, 명령 등에 의해 표현되는 정보)의 수신, 접수, 송신, 전달, 제공 등 중 적어도 하나를 지칭한다. 하나의 유닛(예를 들면, 디바이스, 시스템, 디바이스 또는 시스템의 컴포넌트, 이들의 조합들 등)이 다른 유닛과 통신한다는 것은 하나의 유닛이 직접적으로 또는 간접적으로 다른 유닛으로부터 정보를 수신하고/하거나 다른 유닛으로 정보를 전송(예를 들면, 송신)할 수 있다는 것을 의미한다. 이것은 본질적으로 유선 및/또는 무선인 직접 또는 간접 연결을 지칭할 수 있다. 추가적으로, 송신되는 정보가 제1 유닛과 제2 유닛 사이에서 수정, 처리, 중계 및/또는 라우팅될 수 있을지라도 2개의 유닛은 서로 통신하고 있을 수 있다. 예를 들어, 제1 유닛이 정보를 수동적으로(passively) 수신하고 정보를 제2 유닛으로 능동적으로(actively) 송신하지 않을지라도 제1 유닛은 제2 유닛과 통신하고 있을 수 있다. 다른 예로서, 적어도 하나의 중간 유닛(예를 들면, 제1 유닛과 제2 유닛 사이에 위치하는 제3 유닛)이 제1 유닛으로부터 수신되는 정보를 처리하고 처리된 정보를 제2 유닛으로 송신하는 경우 제1 유닛은 제2 유닛과 통신하고 있을 수 있다. 일부 실시예들에서, 메시지는 데이터를 포함하는 네트워크 패킷(예를 들면, 데이터 패킷 등)을 지칭할 수 있다.
본 명세서에서 사용되는 바와 같이, "~ 경우"라는 용어는, 선택적으로, 문맥에 따라 "~할 때", "~시에", "~라고 결정하는 것에 응답하여", "~을 검출하는 것에 응답하여" 등을 의미하는 것으로 해석된다. 유사하게, 문구 "~라고 결정되는 경우" 또는 "[언급된 조건 또는 이벤트]가 검출되는 경우"는, 선택적으로, 문맥에 따라, "~라고 결정할 시에", "~라고 결정하는 것에 응답하여", "[언급된 조건 또는 이벤트]를 검출할 시에", "[언급된 조건 또는 이벤트]를 검출하는 것에 응답하여" 등을 의미하는 것으로 해석된다. 또한, 본 명세서에서 사용되는 바와 같이, "갖는다(has, have)", "갖는(having)" 등과 같은 용어들은 개방형(open-ended) 용어들인 것으로 의도된다. 게다가, "~에 기초하여"라는 문구는, 달리 명시적으로 언급되지 않는 한, "~에 적어도 부분적으로 기초하여"를 의미하는 것으로 의도된다.
그 예들이 첨부 도면들에 예시되어 있는 실시예들에 대해 이제 상세하게 언급될 것이다. 이하의 상세한 설명에서, 다양한 설명된 실시예들에 대한 완전한 이해를 제공하기 위해 수많은 특정 세부 사항들이 제시된다. 그렇지만, 다양한 설명된 실시예들이 이러한 특정 세부 사항들이 없더라도 실시될 수 있다는 것이 본 기술 분야의 통상의 기술자에게 명백할 것이다. 다른 경우에, 실시예들의 측면들을 불필요하게 모호하게 하지 않기 위해 잘 알려진 방법들, 절차들, 컴포넌트들, 회로들, 및 네트워크들은 상세하게 설명되지 않았다.
일반 개요
일부 측면들 및/또는 실시예들에서, 본 명세서에서 설명되는 시스템들, 방법들, 및 컴퓨터 프로그램 제품들은 자율 주행 차량들에 대한 편안함 분석에서 요인 우선순위 부여(factor prioritization)를 위한 시스템들, 장치들, 방법들, 및 컴퓨터 프로그램 제품들을 포함하고/하거나 구현한다.
본 명세서에서 설명되는 시스템들, 방법들, 및 컴퓨터 프로그램 제품들의 구현 덕분에, 자율 주행 차량들에 대한 편안함 분석에서 요인 우선순위 부여를 위한 기술들은 승객 편안함에 대한 각각의 요인의 영향에 기초하여 운동학적 요인 세트에 순위를 부여하고 (예를 들면, 각각의 요인에 대한 경험적 또는 인간이 채택한 기준(baseline)들과 비교하여) 이러한 요인들을 정량화한다.
이제 도 1을 참조하면, 자율 주행 시스템을 포함하는 차량은 물론 포함하지 않는 차량이 운행되는 예시적인 환경(100)이 예시되어 있다. 예시된 바와 같이, 환경(100)은 차량들(102a 내지 102n), 대상체들(104a 내지 104n), 루트들(106a 내지 106n), 구역(108), 차량 대 인프라스트럭처(vehicle-to-infrastructure, V2I) 디바이스(110), 네트워크(112), 원격 자율 주행 차량(AV) 시스템(114), 플리트 관리 시스템(fleet management system)(116), 및 V2I 시스템(118)을 포함한다. 차량들(102a 내지 102n), 차량 대 인프라스트럭처(V2I) 디바이스(110), 네트워크(112), 자율 주행 차량(AV) 시스템(114), 플리트 관리 시스템(116), 및 V2I 시스템(118)은 유선 연결, 무선 연결, 또는 유선 또는 무선 연결의 조합을 통해 상호 연결된다(예를 들면, 통신 등을 하기 위해 연결을 설정한다). 일부 실시예들에서, 대상체들(104a 내지 104n)은 유선 연결, 무선 연결, 또는 유선 또는 무선 연결의 조합을 통해 차량들(102a 내지 102n), 차량 대 인프라스트럭처(V2I) 디바이스(110), 네트워크(112), 자율 주행 차량(AV) 시스템(114), 플리트 관리 시스템(116), 및 V2I 시스템(118) 중 적어도 하나와 상호 연결된다.
차량들(102a 내지 102n)(개별적으로는 차량(102)이라고 지칭되고 집합적으로는 차량들(102)이라고 지칭됨)은 상품 및/또는 사람들을 운송하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 실시예들에서, 차량들(102)은 네트워크(112)를 통해 V2I 디바이스(110), 원격 AV 시스템(114), 플리트 관리 시스템(116), 및/또는 V2I 시스템(118)과 통신하도록 구성된다. 일부 실시예들에서, 차량들(102)은 자동차, 버스, 트럭, 기차 등을 포함한다. 일부 실시예들에서, 차량들(102)은 본 명세서에서 설명되는 차량들(200)(도 2 참조)과 동일하거나 유사하다. 일부 실시예들에서, 한 세트의 차량들(200) 중의 한 차량(200)은 자율 주행 플리트 관리자(autonomous fleet manager)와 연관되어 있다. 일부 실시예들에서, 차량들(102)은, 본 명세서에서 설명되는 바와 같이, 각기의 루트들(106a 내지 106n)(개별적으로는 루트(106)라고 지칭되고 집합적으로는 루트들(106)이라고 지칭됨)을 따라 주행한다. 일부 실시예들에서, 하나 이상의 차량(102)은 자율 주행 시스템(예를 들면, 자율 주행 시스템(202)과 동일하거나 유사한 자율 주행 시스템)을 포함한다.
대상체들(104a 내지 104n)(개별적으로는 대상체(104)라고 지칭되고 집합적으로는 대상체들(104)이라고 지칭됨)은, 예를 들어, 적어도 하나의 차량, 적어도 하나의 보행자, 적어도 하나의 자전거 타는 사람, 적어도 하나의 구조물(예를 들면, 건물, 표지판, 소화전(fire hydrant) 등) 등을 포함한다. 각각의 대상체(104)는 정지해(예를 들면, 일정 시간 기간 동안 고정 위치에 위치해) 있거나 움직이고(예를 들면, 속도를 가지며 적어도 하나의 궤적과 연관되어) 있다. 일부 실시예들에서, 대상체들(104)은 구역(108) 내의 대응하는 위치들과 연관되어 있다.
루트들(106a 내지 106n)(개별적으로는 루트(106)라고 지칭되고 집합적으로는 루트들(106)이라고 지칭됨) 각각은 상태들 - 이 상태들을 따라 AV가 운행할 수 있음 - 을 연결시키는 행동 시퀀스(궤적이라고도 함)와 연관되어 있다(예를 들면, 행동 시퀀스를 규정한다). 각각의 루트(106)는 초기 상태(예를 들면, 제1 시공간적 위치, 속도 등에 대응하는 상태)에서 시작되고 최종 목표 상태(예를 들면, 제1 시공간적 위치와 상이한 제2 시공간적 위치에 대응하는 상태) 또는 목표 영역(예를 들면, 허용 가능한 상태들(예를 들면, 종료 상태(terminal state)들)의 부분 공간(subspace))에서 종료된다. 일부 실시예들에서, 제1 상태는 개인 또는 개인들이 AV에 의해 픽업(pick-up)되어야 하는 위치를 포함하고, 제2 상태 또는 영역은 AV에 의해 픽업된 개인 또는 개인들이 하차(drop-off)해야 하는 위치 또는 위치들을 포함한다. 일부 실시예들에서, 루트들(106)은 복수의 허용 가능한 상태 시퀀스들(예를 들면, 복수의 시공간적 위치 시퀀스들)을 포함하며, 복수의 상태 시퀀스들은 복수의 궤적들과 연관된다(예를 들면, 이를 정의한다). 일 예에서, 루트들(106)은, 도로 교차로에서의 회전 방향을 좌우하는 일련의 연결된 도로들과 같은, 상위 레벨 행동들 또는 부정확한 상태 위치들만을 포함한다. 추가적으로 또는 대안적으로, 루트들(106)은, 예를 들어, 특정 목표 차선들 또는 차선 구역들 내에서의 정확한 위치들 및 해당 위치들에서의 목표 속력과 같은, 보다 정확한 행동들 또는 상태들을 포함할 수 있다. 일 예에서, 루트들(106)은 중간 목적지들에 도달하는 제한된 룩어헤드 구간(lookahead horizon)을 갖는 적어도 하나의 상위 레벨 행동 시퀀스를 따라 있는 복수의 정확한 상태 시퀀스들을 포함하며, 여기서 제한된 구간의 상태 시퀀스들의 연속적인 반복들의 조합은 누적되어 복수의 궤적들에 대응하며 이 복수의 궤적들은 집합적으로 최종 목표 상태 또는 영역에서 종료하는 상위 레벨 루트를 형성한다.
구역(108)은 차량들(102)이 운행할 수 있는 물리적 구역(예를 들면, 지리적 영역)을 포함한다. 일 예에서, 구역(108)은 적어도 하나의 주(state)(예를 들면, 국가, 지방(province), 국가에 포함된 복수의 주들의 개개의 주 등), 주의 적어도 하나의 부분, 적어도 하나의 도시, 도시의 적어도 하나의 부분 등을 포함한다. 일부 실시예들에서, 구역(108)은 간선 도로(highway), 주간 간선 도로(interstate highway), 공원 도로, 도시 거리 등과 같은 적어도 하나의 명명된 주요 도로(thoroughfare)(본 명세서에서 "도로"라고 지칭됨)를 포함한다. 추가적으로 또는 대안적으로, 일부 예들에서, 구역(108)은 진입로(driveway), 주차장의 섹션, 공터 및/또는 미개발 부지의 섹션, 비포장 경로 등과 같은 적어도 하나의 명명되지 않은 도로를 포함한다. 일부 실시예들에서, 도로는 적어도 하나의 차선(예를 들면, 차량들(102)에 의해 횡단될 수 있는 도로의 일 부분)을 포함한다. 일 예에서, 도로는 적어도 하나의 차선 마킹과 연관된(예를 들면, 적어도 하나의 차선 마킹에 기초하여 식별되는) 적어도 하나의 차선을 포함한다.
차량 대 인프라스트럭처(V2I) 디바이스(110)(때때로 차량 대 인프라스트럭처(V2X) 디바이스라고 지칭됨)는 차량들(102) 및/또는 V2I 인프라스트럭처 시스템(118)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 실시예들에서, V2I 디바이스(110)는 네트워크(112)를 통해 차량들(102), 원격 AV 시스템(114), 플리트 관리 시스템(116), 및/또는 V2I 시스템(118)과 통신하도록 구성된다. 일부 실시예들에서, V2I 디바이스(110)는 RFID(radio frequency identification) 디바이스, 사이니지(signage), 카메라(예를 들면, 2차원(2D) 및/또는 3차원(3D) 카메라), 차선 마커, 가로등, 주차 미터기 등을 포함한다. 일부 실시예들에서, V2I 디바이스(110)는 차량들(102)과 직접 통신하도록 구성된다. 추가적으로 또는 대안적으로, 일부 실시예들에서, V2I 디바이스(110)는 V2I 시스템(118)을 통해 차량들(102), 원격 AV 시스템(114), 및/또는 플릿 관리 시스템(116)과 통신하도록 구성된다. 일부 실시예들에서, V2I 디바이스(110)는 네트워크(112)를 통해 V2I 시스템(118)과 통신하도록 구성된다.
네트워크(112)는 하나 이상의 유선 및/또는 무선 네트워크를 포함한다. 일 예에서, 네트워크(112)는 셀룰러 네트워크(예를 들면, LTE(long term evolution) 네트워크, 3G(third generation) 네트워크, 4G(fourth generation) 네트워크, 5G(fifth generation) 네트워크, CDMA(code division multiple access) 네트워크 등), PLMN(public land mobile network), LAN(local area network), WAN(wide area network), MAN(metropolitan area network), 전화 네트워크(예를 들면, PSTN(public switched telephone network)), 사설 네트워크, 애드혹 네트워크, 인트라넷, 인터넷, 광섬유 기반 네트워크, 클라우드 컴퓨팅 네트워크 등, 이러한 네트워크들의 일부 또는 전부의 조합 등을 포함한다.
원격 AV 시스템(114)은 네트워크(112)를 통해 차량들(102), V2I 디바이스(110), 네트워크(112), 원격 AV 시스템(114), 플리트 관리 시스템(116), 및/또는 V2I 시스템(118)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일 예에서, 원격 AV 시스템(114)은 서버, 서버들의 그룹, 및/또는 다른 유사한 디바이스들을 포함한다. 일부 실시예들에서, 원격 AV 시스템(114)은 플리트 관리 시스템(116)과 공동 배치된다(co-located). 일부 실시예들에서, 원격 AV 시스템(114)은 자율 주행 시스템, 자율 주행 차량 컴퓨트(autonomous vehicle compute), 자율 주행 차량 컴퓨트에 의해 구현되는 소프트웨어 등을 포함한, 차량의 컴포넌트들의 일부 또는 전부의 설치에 관여하고 있다. 일부 실시예들에서, 원격 AV 시스템(114)은 차량의 수명 동안 그러한 컴포넌트들 및/또는 소프트웨어를 유지 관리(예를 들면, 업데이트 및/또는 교체)한다.
플리트 관리 시스템(116)은 차량들(102), V2I 디바이스(110), 원격 AV 시스템(114), 및/또는 V2I 인프라스트럭처 시스템(118)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일 예에서, 플리트 관리 시스템(116)은 서버, 서버들의 그룹, 및/또는 다른 유사한 디바이스들을 포함한다. 일부 실시예들에서, 플리트 관리 시스템(116)은 승차 공유(ridesharing) 회사(예를 들면, 다수의 차량들(예를 들면, 자율 주행 시스템들을 포함하는 차량들 및/또는 자율 주행 시스템들을 포함하지 않는 차량들)의 운행을 제어하는 조직 등)와 연관되어 있다.
일부 실시예들에서, V2I 시스템(118)은 네트워크(112)를 통해 차량들(102), V2I 디바이스(110), 원격 AV 시스템(114), 및/또는 플리트 관리 시스템(116)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, V2I 시스템(118)은 네트워크(112)와 상이한 연결을 통해 V2I 디바이스(110)와 통신하도록 구성된다. 일부 실시예들에서, V2I 시스템(118)은 서버, 서버들의 그룹, 및/또는 다른 유사한 디바이스들을 포함한다. 일부 실시예들에서, V2I 시스템(118)은 지자체 또는 사설 기관(예를 들면, V2I 디바이스(110) 등을 유지 관리하는 사설 기관)과 연관되어 있다.
도 1에 예시된 요소들의 수 및 배열은 예로서 제공된다. 도 1에 예시된 것들보다, 추가적인 요소들, 더 적은 요소들, 상이한 요소들, 및/또는 상이하게 배열된 요소들이 있을 수 있다. 추가적으로 또는 대안적으로, 환경(100)의 적어도 하나의 요소는 도 1의 적어도 하나의 상이한 요소에 의해 수행되는 것으로 설명되는 하나 이상의 기능을 수행할 수 있다. 추가적으로 또는 대안적으로, 환경(100)의 적어도 하나의 요소 세트는 환경(100)의 적어도 하나의 상이한 요소 세트에 의해 수행되는 것으로 설명되는 하나 이상의 기능을 수행할 수 있다.
이제 도 2를 참조하면, 차량(200)은 자율 주행 시스템(202), 파워트레인 제어 시스템(204), 조향 제어 시스템(206), 및 브레이크 시스템(208)을 포함한다. 일부 실시예들에서, 차량(200)은 차량(102)(도 1 참조)과 동일하거나 유사하다. 일부 실시예들에서, 차량(102)은 자율 주행 능력을 갖는다(예를 들면, 완전 자율 주행 차량(예를 들면, 인간 개입에 의존하지 않는 차량), 고도 자율 주행 차량(예를 들면, 특정 상황들에서 인간 개입에 의존하지 않는 차량) 등을, 제한 없이, 포함한, 차량(200)이 인간 개입 없이 부분적으로 또는 완전히 운행될 수 있게 하는 적어도 하나의 기능, 특징, 디바이스 등을 구현한다). 완전 자율 주행 차량 및 고도 자율 주행 차량에 대한 상세한 설명에 대해서는, 참조에 의해 그 전체가 포함되는, SAE 국제 표준 J3016: 온로드 자동차 자동 운전 시스템에 관한 용어의 분류 및 정의(SAE International's standard J3016: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems)가 참조될 수 있다. 일부 실시예들에서, 차량(200)은 자율 주행 플리트 관리자 및/또는 승차 공유 회사와 연관되어 있다.
자율 주행 시스템(202)은 카메라들(202a), LiDAR 센서들(202b), 레이다 센서들(202c), 및 마이크로폰들(202d)과 같은 하나 이상의 디바이스를 포함하는 센서 스위트(sensor suite)를 포함한다. 일부 실시예들에서, 자율 주행 시스템(202)은 더 많거나 더 적은 디바이스들 및/또는 상이한 디바이스들(예를 들면, 초음파 센서, 관성 센서, GPS 수신기(아래에서 논의됨), 차량(200)이 주행한 거리의 표시와 연관된 데이터를 생성하는 주행 거리 측정 센서 등)을 포함할 수 있다. 일부 실시예들에서, 자율 주행 시스템(202)은 본 명세서에서 설명되는 환경(100)과 연관된 데이터를 생성하기 위해 자율 주행 시스템(202)에 포함된 하나 이상의 디바이스를 사용한다. 자율 주행 시스템(202)의 하나 이상의 디바이스에 의해 생성되는 데이터는 차량(200)이 위치하는 환경(예를 들면, 환경(100))을 관측하기 위해 본 명세서에서 설명되는 하나 이상의 시스템에 의해 사용될 수 있다. 일부 실시예들에서, 자율 주행 시스템(202)은 통신 디바이스(202e), 자율 주행 차량 컴퓨트(202f), 및 드라이브 바이 와이어(drive-by-wire, DBW) 시스템(202h)을 포함한다.
카메라들(202a)은 버스(예를 들면, 도 3의 버스(302)와 동일하거나 유사한 버스)를 통해 통신 디바이스(202e), 자율 주행 차량 컴퓨트(202f) 및/또는 안전 제어기(202g)와 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 카메라들(202a)은 물리적 대상체(예를 들면, 자동차, 버스, 연석, 사람들 등)을 포함하는 이미지들을 캡처하기 위한 적어도 하나의 카메라(예를 들면, CCD(charge-coupled device)와 같은 광 센서를 사용하는 디지털 카메라, 열 카메라, 적외선(IR) 카메라, 이벤트 카메라 등)를 포함한다. 일부 실시예들에서, 카메라(202a)는 출력으로서 카메라 데이터를 생성한다. 일부 예들에서, 카메라(202a)는 이미지와 연관된 이미지 데이터를 포함하는 카메라 데이터를 생성한다. 이 예에서, 이미지 데이터는 이미지에 대응하는 적어도 하나의 파라미터(예를 들면, 노출, 밝기 등과 같은 이미지 특성, 이미지 타임스탬프 등)를 명시할 수 있다. 그러한 예에서, 이미지는 한 포맷(예를 들면, RAW, JPEG, PNG 등)으로 되어 있을 수 있다. 일부 실시예들에서, 카메라(202a)는 입체시(stereopsis)(스테레오 비전(stereo vision))를 위해 이미지들을 캡처하도록 차량 상에 구성된(예를 들면, 차량 상에 위치된) 복수의 독립적인 카메라들을 포함한다. 일부 예들에서, 카메라(202a)는 복수의 카메라들을 포함하는데, 이 복수의 카메라들은 이미지 데이터를 생성하고 이미지 데이터를 자율 주행 차량 컴퓨트(202f) 및/또는 플리트 관리 시스템(예를 들면, 도 1의 플리트 관리 시스템(116)과 동일하거나 유사한 플리트 관리 시스템)으로 송신한다. 그러한 예에서, 자율 주행 차량 컴퓨트(202f)는 적어도 2개의 카메라로부터의 이미지 데이터에 기초하여 복수의 카메라들 중 적어도 2개의 카메라의 시야 내의 하나 이상의 대상체까지의 깊이를 결정한다. 일부 실시예들에서, 카메라들(202a)은 카메라들(202a)로부터 일정한 거리(예를 들면, 최대 100 미터, 최대 1 킬로미터 등) 내의 대상체들의 이미지들을 캡처하도록 구성된다. 그에 따라, 카메라들(202a)은 카메라들(202a)로부터 하나 이상의 거리에 있는 대상체들을 인지하도록 최적화되어 있는 센서들 및 렌즈들과 같은 특징부들을 포함한다.
일 실시예에서, 카메라(202a)는 시각적 운행 정보(visual navigation information)를 제공하는 하나 이상의 교통 신호등, 거리 표지판 및/또는 다른 물리적 대상체와 연관된 하나 이상의 이미지를 캡처하도록 구성된 적어도 하나의 카메라를 포함한다. 일부 실시예들에서, 카메라(202a)는 하나 이상의 이미지와 연관된 교통 신호등 데이터를 생성한다. 일부 예들에서, 카메라(202a)는 한 포맷(예를 들면, RAW, JPEG, PNG 등)을 포함하는 하나 이상의 이미지와 연관된 TLD 데이터를 생성한다. 일부 실시예들에서, TLD 데이터를 생성하는 카메라(202a)는, 카메라(202a)가 가능한 한 많은 물리적 대상체들에 관한 이미지들을 생성하기 위해 넓은 시야(예를 들면, 광각 렌즈, 어안 렌즈, 대략 120도 이상의 시야각을 갖는 렌즈 등)를 갖는 하나 이상의 카메라를 포함할 수 있다는 점에서, 카메라들을 포함하는 본 명세서에서 설명되는 다른 시스템들과 상이하다.
LiDAR(Laser Detection and Ranging) 센서들(202b)은 버스(예를 들면, 도 3의 버스(302)와 동일하거나 유사한 버스)를 통해 통신 디바이스(202e), 자율 주행 차량 컴퓨트(202f), 및/또는 안전 제어기(202g)와 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. LiDAR 센서들(202b)은 광 방출기(예를 들면, 레이저 송신기)로부터 광을 송신하도록 구성된 시스템을 포함한다. LiDAR 센서들(202b)에 의해 방출되는 광은 가시 스펙트럼 밖에 있는 광(예를 들면, 적외선 광 등)을 포함한다. 일부 실시예들에서, 작동 동안, LiDAR 센서들(202b)에 의해 방출되는 광은 물리적 대상체(예를 들면, 차량)와 조우하고 LiDAR 센서들(202b)로 다시 반사된다. 일부 실시예들에서, LiDAR 센서들(202b)에 의해 방출되는 광은 광이 조우하는 물리적 대상체들을 투과하지 않는다. LiDAR 센서들(202b)은 광 방출기로부터 방출된 광이 물리적 대상체와 조우한 후에 해당 광을 검출하는 적어도 하나의 광 검출기를 또한 포함한다. 일부 실시예들에서, LiDAR 센서들(202b)과 연관된 적어도 하나의 데이터 처리 시스템은 LiDAR 센서들(202b)의 시야에 포함된 대상체들을 나타내는 이미지(예를 들면, 포인트 클라우드, 결합된 포인트 클라우드(combined point cloud) 등)를 생성한다. 일부 예들에서, LiDAR 센서(202b)와 연관된 적어도 하나의 데이터 처리 시스템은 물리적 대상체의 경계들, 물리적 대상체의 표면들(예를 들면, 표면들의 토폴로지) 등을 나타내는 이미지를 생성한다. 그러한 예에서, 이미지는 LiDAR 센서들(202b)의 시야 내의 물리적 대상체들의 경계들을 결정하는 데 사용된다.
레이다(radar, Radio Detection and Ranging) 센서들(202c)은 버스(예를 들면, 도 3의 버스(302)와 동일하거나 유사한 버스)를 통해 통신 디바이스(202e), 자율 주행 차량 컴퓨트(202f), 및/또는 안전 제어기(202g)와 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 레이다 센서들(202c)은 전파(radio wave)들을 (펄스형으로 또는 연속적으로) 송신하도록 구성된 시스템을 포함한다. 레이다 센서들(202c)에 의해 송신되는 전파들은 미리 결정된 스펙트럼 내에 있는 전파들을 포함한다. 일부 실시예들에서, 작동 동안, 레이다 센서들(202c)에 의해 송신되는 전파들은 물리적 대상체와 조우하고 레이다 센서들(202c)로 다시 반사된다. 일부 실시예들에서, 레이다 센서들(202c)에 의해 송신되는 전파들이 일부 대상체들에 의해 반사되지 않는다. 일부 실시예들에서, 레이다 센서들(202c)과 연관된 적어도 하나의 데이터 처리 시스템은 레이다 센서들(202c)의 시야에 포함된 대상체들을 나타내는 신호들을 생성한다. 예를 들어, 레이다 센서(202c)와 연관된 적어도 하나의 데이터 처리 시스템은 물리적 대상체의 경계들, 물리적 대상체의 표면들(예를 들면, 표면들의 토폴로지) 등을 나타내는 이미지를 생성한다. 일부 예들에서, 이미지는 레이다 센서들(202c)의 시야 내의 물리적 대상체들의 경계들을 결정하는 데 사용된다.
마이크로폰들(202d)은 버스(예를 들면, 도 3의 버스(302)와 동일하거나 유사한 버스)를 통해 통신 디바이스(202e), 자율 주행 차량 컴퓨트(202f), 및/또는 안전 제어기(202g)와 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 마이크로폰들(202d)은 오디오 신호들을 캡처하고 오디오 신호들과 연관된(예를 들면, 오디오 신호들을 나타내는) 데이터를 생성하는 하나 이상의 마이크로폰(예를 들면, 어레이 마이크로폰, 외부 마이크로폰 등)을 포함한다. 일부 예들에서, 마이크로폰들(202d)은 트랜스듀서 디바이스들 및/또는 유사 디바이스들을 포함한다. 일부 실시예들에서, 본 명세서에서 설명되는 하나 이상의 시스템은 마이크로폰들(202d)에 의해 생성되는 데이터를 수신하고 이 데이터와 연관된 오디오 신호들에 기초하여 차량(200)에 상대적인 대상체의 위치(예를 들면, 거리 등)를 결정할 수 있다.
통신 디바이스(202e)는 카메라들(202a), LiDAR 센서들(202b), 레이다 센서들(202c), 마이크로폰들(202d), 자율 주행 차량 컴퓨트(202f), 안전 제어기(202g), 및/또는 DBW 시스템(202h)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 예를 들어, 통신 디바이스(202e)는 도 3의 통신 인터페이스(314)와 동일하거나 유사한 디바이스를 포함할 수 있다. 일부 실시예들에서, 통신 디바이스(202e)는 차량 대 차량(vehicle-to-vehicle, V2V) 통신 디바이스(예를 들면, 차량들 간의 데이터의 무선 통신을 가능하게 하는 디바이스)를 포함한다.
자율 주행 차량 컴퓨트(202f)는 카메라들(202a), LiDAR 센서들(202b), 레이다 센서들(202c), 마이크로폰들(202d), 통신 디바이스(202e), 안전 제어기(202g), 및/또는 DBW 시스템(202h)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, 자율 주행 차량 컴퓨트(202f)는 클라이언트 디바이스, 모바일 디바이스(예를 들면, 셀룰러 전화, 태블릿 등), 서버(예를 들면, 하나 이상의 중앙 처리 유닛, 그래픽 처리 유닛 등을 포함하는 컴퓨팅 디바이스) 등과 같은 디바이스를 포함한다. 일부 실시예들에서, 자율 주행 차량 컴퓨트(202f)는 본 명세서에서 설명되는 자율 주행 차량 컴퓨트(400)와 동일하거나 유사하다. 추가적으로 또는 대안적으로, 일부 실시예들에서, 자율 주행 차량 컴퓨트(202f)는 자율 주행 차량 시스템(예를 들면, 도 1의 원격 AV 시스템(114)과 동일하거나 유사한 자율 주행 차량 시스템), 플리트 관리 시스템(예를 들면, 도 1의 플리트 관리 시스템(116)과 동일하거나 유사한 플리트 관리 시스템), V2I 디바이스(예를 들면, 도 1의 V2I 디바이스(110)와 동일하거나 유사한 V2I 디바이스), 및/또는 V2I 시스템(예를 들면, 도 1의 V2I 시스템(118)과 동일하거나 유사한 V2I 시스템)과 통신하도록 구성된다.
안전 제어기(202g)는 카메라들(202a), LiDAR 센서들(202b), 레이다 센서들(202c), 마이크로폰들(202d), 통신 디바이스(202e), 자율 주행 차량 컴퓨트(202f), 및/또는 DBW 시스템(202h)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, 안전 제어기(202g)는 차량(200)의 하나 이상의 디바이스(예를 들면, 파워트레인 제어 시스템(204), 조향 제어 시스템(206), 브레이크 시스템(208) 등)를 작동시키기 위한 제어 신호들을 생성 및/또는 송신하도록 구성된 하나 이상의 제어기(전기 제어기, 전기기계 제어기 등)를 포함한다. 일부 실시예들에서, 안전 제어기(202g)는 자율 주행 차량 컴퓨트(202f)에 의해 생성 및/또는 송신되는 제어 신호들보다 우선하는(예를 들면, 이를 오버라이드하는) 제어 신호들을 생성하도록 구성된다.
DBW 시스템(202h)은 통신 디바이스(202e) 및/또는 자율 주행 차량 컴퓨트(202f)와 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, DBW 시스템(202h)은 차량(200)의 하나 이상의 디바이스(예를 들면, 파워트레인 제어 시스템(204), 조향 제어 시스템(206), 브레이크 시스템(208) 등)를 작동시키기 위한 제어 신호들을 생성 및/또는 송신하도록 구성된 하나 이상의 제어기(예를 들면, 전기 제어기, 전기기계 제어기 등)를 포함한다. 추가적으로 또는 대안적으로, DBW 시스템(202h)의 하나 이상의 제어기는 차량(200)의 적어도 하나의 상이한 디바이스(예를 들면, 방향 지시등, 헤드라이트, 도어록, 윈도실드 와이퍼 등)를 작동시키기 위한 제어 신호들을 생성 및/또는 송신하도록 구성된다.
파워트레인 제어 시스템(204)은 DBW 시스템(202h)과 통신하도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, 파워트레인 제어 시스템(204)은 적어도 하나의 제어기, 액추에이터 등을 포함한다. 일부 실시예들에서, 파워트레인 제어 시스템(204)은 DBW 시스템(202h)으로부터 제어 신호들을 수신하고, 파워트레인 제어 시스템(204)은 차량(200)이 전진하는 것을 시작하게 하고, 전진하는 것을 중지하게 하며, 후진하는 것을 시작하게 하고, 후진하는 것을 중지하게 하며, 한 방향으로 가속하게 하고, 한 방향으로 감속하게 하며, 좌회전을 수행하게 하고, 우회전을 수행하게 하는 등을 한다. 일 예에서, 파워트레인 제어 시스템(204)은 차량의 모터에게 제공되는 에너지(예를 들면, 연료, 전기 등)가 증가하게 하거나, 동일하게 유지되게 하거나, 또는 감소하게 함으로써, 차량(200)의 적어도 하나의 바퀴가 회전하게 하거나 회전하지 않게 한다.
조향 제어 시스템(206)은 차량(200)의 하나 이상의 바퀴를 회전시키도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, 조향 제어 시스템(206)은 적어도 하나의 제어기, 액추에이터 등을 포함한다. 일부 실시예들에서, 조향 제어 시스템(206)은 차량(200)이 좌측 또는 우측으로 방향 전환하게 하기 위해 차량(200)의 2개의 앞바퀴 및/또는 2개의 뒷바퀴가 좌측 또는 우측으로 회전하게 한다.
브레이크 시스템(208)은 차량(200)이 속력을 감소시키게 하고/하거나 정지해 있는 채로 유지되게 하기 위해 하나 이상의 브레이크를 작동시키도록 구성된 적어도 하나의 디바이스를 포함한다. 일부 예들에서, 브레이크 시스템(208)은 차량(200)의 대응하는 로터(rotor)에서 차량(200)의 하나 이상의 바퀴와 연관된 하나 이상의 캘리퍼(caliper)가 닫히게 하도록 구성된 적어도 하나의 제어기 및/또는 액추에이터를 포함한다. 추가적으로 또는 대안적으로, 일부 예들에서, 브레이크 시스템(208)은 자동 긴급 제동(automatic emergency braking, AEB) 시스템, 회생 제동 시스템 등을 포함한다.
일부 실시예들에서, 차량(200)은 차량(200)의 상태 또는 조건의 속성들을 측정 또는 추론하는 적어도 하나의 플랫폼 센서(명시적으로 예시되지 않음)를 포함한다. 일부 예들에서, 차량(200)은 GPS(global positioning system) 수신기, IMU(inertial measurement unit), 바퀴 속력 센서, 바퀴 브레이크 압력 센서, 바퀴 토크 센서, 엔진 토크 센서, 조향각 센서 등과 같은 플랫폼 센서들을 포함한다.
이제 도 3을 참조하면, 디바이스(300)의 개략적인 다이어그램이 예시되어 있다. 예시된 바와 같이, 디바이스(300)는 프로세서(304), 메모리(306), 저장 컴포넌트(308), 입력 인터페이스(310), 출력 인터페이스(312), 통신 인터페이스(314), 및 버스(302)를 포함한다. 일부 실시예들에서, 디바이스(300)는 차량들(102)의 적어도 하나의 디바이스(예를 들면, 차량들(102)의 시스템의 적어도 하나의 디바이스), 및/또는 네트워크(112)의 하나 이상의 디바이스(예를 들면, 네트워크(112)의 시스템의 하나 이상의 디바이스)에 대응한다. 일부 실시예들에서, 차량들(102)의 하나 이상의 디바이스(예를 들면, 차량들(102)의 시스템의 하나 이상의 디바이스), 및/또는 네트워크(112)의 하나 이상의 디바이스(예를 들면, 네트워크(112)의 시스템의 하나 이상의 디바이스)는 적어도 하나의 디바이스(300) 및/또는 디바이스(300)의 적어도 하나의 컴포넌트를 포함한다. 도 3에 도시된 바와 같이, 디바이스(300)는 버스(302), 프로세서(304), 메모리(306), 저장 컴포넌트(308), 입력 인터페이스(310), 출력 인터페이스(312), 및 통신 인터페이스(314)를 포함한다.
버스(302)는 디바이스(300)의 컴포넌트들 간의 통신을 가능하게 하는 컴포넌트를 포함한다. 일부 실시예들에서, 프로세서(304)는 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합으로 구현된다. 일부 예들에서, 프로세서(304)는 적어도 하나의 기능을 수행하도록 프로그래밍될 수 있는, 프로세서(예를 들면, 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU), 가속 처리 유닛(APU) 등), 마이크로폰, 디지털 신호 프로세서(DSP), 및/또는 임의의 처리 컴포넌트(예를 들면, 필드 프로그래머블 게이트 어레이(FPGA), 주문형 집적 회로(ASIC) 등)를 포함한다. 메모리(306)는 프로세서(304)가 사용하기 위한 데이터 및/또는 명령어들을 저장하는, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 및/또는 다른 유형의 동적 및/또는 정적 저장 디바이스(예를 들면, 플래시 메모리, 자기 메모리, 광학 메모리 등)를 포함한다.
저장 컴포넌트(308)는 디바이스(300)의 작동 및 사용에 관련된 데이터 및/또는 소프트웨어를 저장한다. 일부 예들에서, 저장 컴포넌트(308)는 하드 디스크(예를 들면, 자기 디스크, 광학 디스크, 광자기 디스크, 솔리드 스테이트 디스크 등), CD(compact disc), DVD(digital versatile disc), 플로피 디스크, 카트리지, 자기 테이프, CD-ROM, RAM, PROM, EPROM, FLASH-EPROM, NV-RAM 및/또는 다른 유형의 컴퓨터 판독 가능 매체를, 대응하는 드라이브와 함께, 포함한다.
입력 인터페이스(310)는 디바이스(300)가, 예컨대, 사용자 입력을 통해, 정보를 수신할 수 있게 하는 컴포넌트(예를 들면, 터치스크린 디스플레이, 키보드, 키패드, 마우스, 버튼, 스위치, 마이크로폰, 카메라 등)를 포함한다. 추가적으로 또는 대안적으로, 일부 실시예들에서, 입력 인터페이스(310)는 정보를 감지하는 센서(예를 들면, GPS(global positioning system) 수신기, 가속도계, 자이로스코프, 액추에이터 등)를 포함한다. 출력 인터페이스(312)는 디바이스(300)로부터의 출력 정보를 제공하는 컴포넌트(예를 들면, 디스플레이, 스피커, 하나 이상의 발광 다이오드(LED) 등)를 포함한다.
일부 실시예들에서, 통신 인터페이스(314)는 디바이스(300)가 유선 연결, 무선 연결, 또는 유선 연결과 무선 연결의 조합을 통해 다른 디바이스들과 통신할 수 있게 하는 트랜시버 유사 컴포넌트(예를 들면, 트랜시버, 개별 수신기 및 송신기 등)를 포함한다. 일부 예들에서, 통신 인터페이스(314)는 디바이스(300)가 다른 디바이스로부터 정보를 수신하고/하거나 다른 디바이스에 정보를 제공할 수 있게 한다. 일부 예들에서, 통신 인터페이스(314)는 이더넷 인터페이스, 광학 인터페이스, 동축 인터페이스, 적외선 인터페이스, RF(radio frequency) 인터페이스, USB(universal serial bus) 인터페이스, Wi-Fi® 인터페이스, 셀룰러 네트워크 인터페이스 등을 포함한다.
일부 실시예들에서, 디바이스(300)는 본 명세서에서 설명되는 하나 이상의 프로세스를 수행한다. 디바이스(300)는 프로세서(304)가, 메모리(305) 및/또는 저장 컴포넌트(308)와 같은, 컴퓨터 판독 가능 매체에 의해 저장된 소프트웨어 명령어들을 실행하는 것에 기초하여 이러한 프로세스들을 수행한다. 컴퓨터 판독 가능 매체(예를 들면, 비일시적 컴퓨터 판독 가능 매체)는 본 명세서에서 비일시적 메모리 디바이스로서 정의된다. 비일시적 메모리 디바이스는 단일의 물리적 저장 디바이스 내부에 위치한 메모리 공간 또는 다수의 물리적 저장 디바이스들에 걸쳐 분산된 메모리 공간을 포함한다.
일부 실시예들에서, 소프트웨어 명령어들은 통신 인터페이스(314)를 통해 다른 컴퓨터 판독 가능 매체로부터 또는 다른 디바이스로부터 메모리(306) 및/또는 저장 컴포넌트(308) 내로 판독된다. 실행될 때, 메모리(306) 및/또는 저장 컴포넌트(308)에 저장된 소프트웨어 명령어들은 프로세서(304)로 하여금 본 명세서에서 설명되는 하나 이상의 프로세스를 수행하게 한다. 추가적으로 또는 대안적으로, 고정 배선(hardwired) 회로는 본 명세서에서 설명되는 하나 이상의 프로세스를 수행하기 위해 소프트웨어 명령어들 대신에 또는 소프트웨어 명령어들과 함께 사용된다. 따라서, 본 명세서에서 설명되는 실시예들은, 달리 명시적으로 언급되지 않는 한, 하드웨어 회로와 소프트웨어의 임의의 특정 조합으로 제한되지 않는다.
메모리(306) 및/또는 저장 컴포넌트(308)는 데이터 저장소 또는 적어도 하나의 데이터 구조(예를 들면, 데이터베이스 등)를 포함한다. 디바이스(300)는 메모리(306) 또는 저장 컴포넌트(308) 내의 데이터 저장소 또는 적어도 하나의 데이터 구조로부터 정보를 수신하는 것, 이들에 정보를 저장하는 것, 이들에게 정보를 전달하는 것, 또는 이들에 저장된 정보를 탐색하는 것을 할 수 있다. 일부 예들에서, 정보는 네트워크 데이터, 입력 데이터, 출력 데이터, 또는 이들의 임의의 조합을 포함한다.
일부 실시예들에서, 디바이스(300)는 메모리(306)에 및/또는 다른 디바이스(예를 들면, 디바이스(300)와 동일하거나 유사한 다른 디바이스)의 메모리에 저장된 소프트웨어 명령어들을 실행하도록 구성된다. 본 명세서에서 사용되는 바와 같이, "모듈"이라는 용어는, 프로세서(304)에 의해 및/또는 다른 디바이스(예를 들면, 디바이스(300)와 동일하거나 유사한 다른 디바이스)의 프로세서에 의해 실행될 때, 디바이스(300)(예를 들면, 디바이스(300)의 적어도 하나의 컴포넌트)로 하여금 본 명세서에서 설명되는 하나 이상의 프로세스를 수행하게 하는, 메모리(306)에 및/또는 다른 디바이스의 메모리에 저장된 적어도 하나의 명령어를 지칭한다. 일부 실시예들에서, 모듈은 소프트웨어, 펌웨어, 하드웨어 등으로 구현된다.
도 3에 예시된 컴포넌트들의 수 및 배열은 예로서 제공된다. 일부 실시예들에서, 디바이스(300)는 도 3에 예시된 것들보다, 추가적인 컴포넌트들, 더 적은 컴포넌트들, 상이한 컴포넌트들, 또는 상이하게 배열된 컴포넌트들을 포함할 수 있다. 추가적으로 또는 대안적으로, 디바이스(300)의 컴포넌트 세트(예를 들면, 하나 이상의 컴포넌트)는 디바이스(300)의 다른 컴포넌트 또는 다른 컴포넌트 세트에 의해 수행되는 것으로 설명되는 하나 이상의 기능을 수행할 수 있다.
이제 도 4a를 참조하면, 자율 주행 차량 컴퓨트(400)(때때로 "AV 스택"이라고 지칭됨)의 예시적인 블록 다이어그램이 예시되어 있다. 예시된 바와 같이, 자율 주행 차량 컴퓨트(400)는 인지 시스템(402)(때때로 인지 모듈이라고 지칭됨), 계획 시스템(404)(때때로 계획 모듈이라고 지칭됨), 로컬라이제이션 시스템(406)(때때로 로컬라이제이션 모듈이라고 지칭됨), 제어 시스템(408)(때때로 제어 모듈이라고 지칭됨), 및 데이터베이스(410)를 포함한다. 일부 실시예들에서, 인지 시스템(402), 계획 시스템(404), 로컬라이제이션 시스템(406), 제어 시스템(408), 및 데이터베이스(410)는 차량의 자율 주행 운행 시스템(예를 들면, 차량(200)의 자율 주행 차량 컴퓨트(202f))에 포함되고/되거나 구현된다. 추가적으로 또는 대안적으로, 일부 실시예들에서, 인지 시스템(402), 계획 시스템(404), 로컬라이제이션 시스템(406), 제어 시스템(408), 및 데이터베이스(410)는 하나 이상의 독립형 시스템(예를 들면, 자율 주행 차량 컴퓨트(400) 등과 동일하거나 유사한 하나 이상의 시스템)에 포함된다. 일부 예들에서, 인지 시스템(402), 계획 시스템(404), 로컬라이제이션 시스템(406), 제어 시스템(408), 및 데이터베이스(410)는 본 명세서에서 설명되는 바와 같이 차량 및/또는 적어도 하나의 원격 시스템에 위치하는 하나 이상의 독립형 시스템에 포함된다. 일부 실시예들에서, 자율 주행 차량 컴퓨트(400)에 포함된 시스템들 중 임의의 것 및/또는 모두는 소프트웨어(예를 들면, 메모리에 저장된 소프트웨어 명령어들), 컴퓨터 하드웨어(예를 들면, 마이크로프로세서, 마이크로컨트롤러, 주문형 집적 회로(ASIC), 필드 프로그래머블 게이트 어레이(FPGA) 등), 또는 컴퓨터 소프트웨어와 컴퓨터 하드웨어의 조합들로 구현된다. 일부 실시예들에서, 자율 주행 차량 컴퓨트(400)가 원격 시스템(예를 들면, 원격 AV 시스템(114)과 동일하거나 유사한 자율 주행 차량 시스템, 플리트 관리 시스템(116)과 동일하거나 유사한 플리트 관리 시스템, V2I 시스템(118)과 동일하거나 유사한 V2I 시스템 등)과 통신하도록 구성된다는 것이 또한 이해될 것이다.
일부 실시예들에서, 인지 시스템(402)은 환경 내의 적어도 하나의 물리적 대상체와 연관된 데이터(예를 들면, 적어도 하나의 물리적 대상체를 검출하기 위해 인지 시스템(402)에 의해 사용되는 데이터)를 수신하고 적어도 하나의 물리적 대상체를 분류한다. 일부 예들에서, 인지 시스템(402)은 적어도 하나의 카메라(예를 들면, 카메라들(202a))에 의해 캡처되는 이미지 데이터를 수신하고, 이미지는 적어도 하나의 카메라의 시야 내의 하나 이상의 물리적 대상체와 연관되어 있다(예를 들면, 이를 나타낸다). 그러한 예에서, 인지 시스템(402)은 물리적 대상체들(예를 들면, 자전거, 차량, 교통 표지판, 보행자 등)의 하나 이상의 그룹화에 기초하여 적어도 하나의 물리적 대상체를 분류한다. 일부 실시예들에서, 인지 시스템(402)이 물리적 대상체들을 분류하는 것에 기초하여 인지 시스템(402)은 물리적 대상체들의 분류와 연관된 데이터를 계획 시스템(404)으로 송신한다.
일부 실시예들에서, 계획 시스템(404)은 목적지와 연관된 데이터를 수신하고 차량(예를 들면, 차량들(102))이 목적지를 향해 따라가면서 주행할 수 있는 적어도 하나의 루트(예를 들면, 루트들(106))와 연관된 데이터를 생성한다. 일부 실시예들에서, 계획 시스템(404)은 인지 시스템(402)으로부터의 데이터(예를 들면, 위에서 설명된, 물리적 대상체들의 분류와 연관된 데이터)를 주기적으로 또는 연속적으로 수신하고, 계획 시스템(404)은 인지 시스템(402)에 의해 생성되는 데이터에 기초하여 적어도 하나의 궤적을 업데이트하거나 적어도 하나의 상이한 궤적을 생성한다. 일부 실시예들에서, 계획 시스템(404)은 로컬라이제이션 시스템(406)으로부터 차량(예를 들면, 차량들(102))의 업데이트된 위치와 연관된 데이터를 수신하고, 계획 시스템(404)은 로컬라이제이션 시스템(406)에 의해 생성되는 데이터에 기초하여 적어도 하나의 궤적을 업데이트하거나 적어도 하나의 상이한 궤적을 생성한다.
일부 실시예들에서, 로컬라이제이션 시스템(406)은 한 영역에서의 차량(예를 들면, 차량들(102))의 한 위치와 연관된(예를 들면, 이를 나타내는) 데이터를 수신한다. 일부 예들에서, 로컬라이제이션 시스템(406)은 적어도 하나의 LiDAR 센서(예를 들면, LiDAR 센서들(202b))에 의해 생성되는 적어도 하나의 포인트 클라우드와 연관된 LiDAR 데이터를 수신한다. 특정 예들에서, 로컬라이제이션 시스템(406)은 다수의 LiDAR 센서들로부터의 적어도 하나의 포인트 클라우드와 연관된 데이터를 수신하고 로컬라이제이션 시스템(406)은 포인트 클라우드들 각각에 기초하여 결합된 포인트 클라우드를 생성한다. 이러한 예들에서, 로컬라이제이션 시스템(406)은 적어도 하나의 포인트 클라우드 또는 결합된 포인트 클라우드를 데이터베이스(410)에 저장되어 있는 해당 영역의 2차원(2D) 및/또는 3차원(3D) 맵과 비교한다. 로컬라이제이션 시스템(406)이 적어도 하나의 포인트 클라우드 또는 결합된 포인트 클라우드를 맵과 비교하는 것에 기초하여 로컬라이제이션 시스템(406)은 이어서 해당 구역에서의 차량의 위치를 결정한다. 일부 실시예들에서, 맵은 차량의 운행 이전에 생성되는 해당 영역의 결합된 포인트 클라우드를 포함한다. 일부 실시예들에서, 맵은 도로 기하학적 속성들의 고정밀 맵, 도로 네트워크 연결 속성들을 설명하는 맵, 도로 물리적 속성들(예컨대, 교통 속력, 교통량, 차량 교통 차선들과 자전거 타는 사람 교통 차선들의 수, 차선 폭, 차선 교통 방향들, 또는 차선 마커 유형들 및 위치들, 또는 이들의 조합들)을 설명하는 맵, 및 횡단보도들, 교통 표지판들 또는 다양한 유형들의 다른 주행 신호들과 같은 도로 특징물들의 공간적 위치들을 설명하는 맵을, 제한 없이, 포함한다. 일부 실시예들에서, 맵은 인지 시스템에 의해 수신되는 데이터에 기초하여 실시간으로 생성된다.
다른 예에서, 로컬라이제이션 시스템(406)은 GPS(global positioning system) 수신기에 의해 생성되는 GNSS(Global Navigation Satellite System) 데이터를 수신한다. 일부 예들에서, 로컬라이제이션 시스템(406)은 해당 구역에서의 차량의 위치와 연관된 GNSS 데이터를 수신하고, 로컬라이제이션 시스템(406)은 해당 구역에서의 차량의 위도 및 경도를 결정한다. 그러한 예에서, 로컬라이제이션 시스템(406)은 차량의 위도 및 경도에 기초하여 해당 영역에서의 차량의 위치를 결정한다. 일부 실시예들에서, 로컬라이제이션 시스템(406)은 차량의 위치와 연관된 데이터를 생성한다. 일부 예들에서, 로컬라이제이션 시스템(406)이 차량의 위치를 결정하는 것에 기초하여 로컬라이제이션 시스템(406)은 차량의 위치와 연관된 데이터를 생성한다. 그러한 예에서, 차량의 위치와 연관된 데이터는 차량의 위치에 대응하는 하나 이상의 시맨틱 속성과 연관된 데이터를 포함한다.
일부 실시예들에서, 제어 시스템(408)은 계획 시스템(404)으로부터 적어도 하나의 궤적과 연관된 데이터를 수신하고, 제어 시스템(408)은 차량의 운행을 제어한다. 일부 예들에서, 제어 시스템(408)은 계획 시스템(404)으로부터 적어도 하나의 궤적과 연관된 데이터를 수신하고, 제어 시스템(408)은 파워트레인 제어 시스템(예를 들면, DBW 시스템(202h), 파워트레인 제어 시스템(204) 등), 조향 제어 시스템(예를 들면, 조향 제어 시스템(206)) 및/또는 브레이크 시스템(예를 들면, 브레이크 시스템(208))으로 하여금 작동하게 하는 제어 신호들을 생성 및 송신하는 것에 의해 차량의 운행을 제어한다. 궤적이 좌회전을 포함하는 예에서, 제어 시스템(408)은, 차량(200)으로 하여금 좌회전하게 하게 하도록, 조향 제어 시스템(206)으로 하여금 차량(200)의 조향각을 조정하게 하는 제어 신호를 송신한다. 추가적으로 또는 대안적으로, 제어 시스템(408)은 차량(200)의 다른 디바이스들(예를 들면, 헤드라이트, 방향 지시등, 도어록, 윈도실드 와이퍼 등)로 하여금 상태들을 변경하게 하는 제어 신호들을 생성 및 송신한다.
일부 실시예들에서, 인지 시스템(402), 계획 시스템(404), 로컬라이제이션 시스템(406), 및/또는 제어 시스템(408)은 적어도 하나의 머신 러닝 모델(예를 들면, 적어도 하나의 다층 퍼셉트론(multilayer perceptron, MLP), 적어도 하나의 콘볼루션 신경 네트워크(convolutional neural network, CNN), 적어도 하나의 순환 신경 네트워크(recurrent neural network, RNN), 적어도 하나의 오토인코더(autoencoder), 적어도 하나의 트랜스포머(transformer) 등)을 구현한다. 일부 예들에서, 인지 시스템(402), 계획 시스템(404), 로컬라이제이션 시스템(406), 및/또는 제어 시스템(408)은 단독으로 또는 위에서 언급된 시스템들 중 하나 이상과 결합하여 적어도 하나의 머신 러닝 모델을 구현한다. 일부 예들에서, 인지 시스템(402), 계획 시스템(404), 로컬라이제이션 시스템(406), 및/또는 제어 시스템(408)은 파이프라인(예를 들면, 환경에 위치하는 하나 이상의 대상체를 식별하기 위한 파이프라인 등)의 일부로서 적어도 하나의 머신 러닝 모델을 구현한다. 머신 러닝 모델의 구현의 예는 도 4b 내지 도 4d와 관련하여 아래에 포함된다.
데이터베이스(410)는 인지 시스템(402), 계획 시스템(404), 로컬라이제이션 시스템(406) 및/또는 제어 시스템(408)으로 송신되며, 이들로부터 수신되고/되거나 이들에 의해 업데이트되는 데이터를 저장한다. 일부 예들에서, 데이터베이스(410)는 작동에 관련된 데이터 및/또는 소프트웨어를 저장하고 자율 주행 차량 컴퓨트(400)의 적어도 하나의 시스템을 사용하는 저장 컴포넌트(예를 들면, 도 3의 저장 컴포넌트(308)와 동일하거나 유사한 저장 컴포넌트)를 포함한다. 일부 실시예들에서, 데이터베이스(410)는 적어도 하나의 구역의 2D 및/또는 3D 맵들과 연관된 데이터를 저장한다. 일부 예들에서, 데이터베이스(410)는 도시의 일 부분, 다수의 도시들의 다수의 부분들, 다수의 도시들, 카운티, 주, 국가(State)(예를 들면, 나라(country)) 등의 2D 및/또는 3D 맵들과 연관된 데이터를 저장한다. 그러한 예에서, 차량(예를 들면, 차량들(102) 및/또는 차량(200)과 동일하거나 유사한 차량)은 하나 이상의 운전 가능한 영역(예를 들면, 단일 차선 도로, 다중 차선 도로, 간선도로, 시골 길(back road), 오프로드 트레일 등)을 따라 운전할 수 있고, 적어도 하나의 LiDAR 센서(예를 들면, LiDAR 센서들(202b)과 동일하거나 유사한 LiDAR 센서)로 하여금 적어도 하나의 LiDAR 센서의 시야에 포함된 대상체들을 나타내는 이미지와 연관된 데이터를 생성하게 할 수 있다.
일부 실시예들에서, 데이터베이스(410)는 복수의 디바이스들에 걸쳐 구현될 수 있다. 일부 예들에서, 데이터베이스(410)는 차량(예를 들면, 차량들(102) 및/또는 차량(200)과 동일하거나 유사한 차량), 자율 주행 차량 시스템(예를 들면, 원격 AV 시스템(114)과 동일하거나 유사한 자율 주행 차량 시스템), 플리트 관리 시스템(예를 들면, 도 1의 플리트 관리 시스템(116)과 동일하거나 유사한 플리트 관리 시스템), V2I 시스템(예를 들면, 도 1의 V2I 시스템(118)과 동일하거나 유사한 V2I 시스템) 등에 포함된다.
이제 도 4b를 참조하면, 머신 러닝 모델의 구현의 다이어그램이 예시되어 있다. 보다 구체적으로, 콘볼루션 신경 네트워크(CNN)(420)의 구현의 다이어그램이 예시되어 있다. 예시를 위해, CNN(420)에 대한 이하의 설명은 인지 시스템(402)에 의한 CNN(420)의 구현과 관련하여 이루어질 것이다. 그렇지만, 일부 예들에서 CNN(420)(예를 들면, CNN(420)의 하나 이상의 컴포넌트)이, 계획 시스템(404), 로컬라이제이션 시스템(406), 및/또는 제어 시스템(408)과 같은, 인지 시스템(402)과 상이하거나 인지 시스템(402) 이외의 다른 시스템들에 의해 구현된다는 것이 이해될 것이다. CNN(420)이 본 명세서에서 설명되는 바와 같은 특정 특징부들을 포함하지만, 이러한 특징부들은 예시 목적으로 제공되며 본 개시를 제한하는 것으로 의도되지 않는다.
CNN(420)은 제1 콘볼루션 계층(422), 제2 콘볼루션 계층(424), 및 콘볼루션 계층(426)을 포함하는 복수의 콘볼루션 계층들을 포함한다. 일부 실시예들에서, CNN(420)은 서브샘플링 계층(428)(때때로 풀링 계층(pooling layer)이라고 지칭됨)을 포함한다. 일부 실시예들에서, 서브샘플링 계층(428) 및/또는 다른 서브샘플링 계층들은 업스트림 시스템의 차원보다 작은 차원(즉, 노드들의 수)을 갖는다. 서브샘플링 계층(428)이 업스트림 계층의 차원보다 작은 차원을 갖는 것에 의해, CNN(420)은 초기 입력 및/또는 업스트림 계층의 출력과 연관된 데이터의 양을 통합(consolidate)함으로써, CNN(420)이 다운스트림 콘볼루션 연산들을 수행하는 데 필요한 계산들의 양을 감소시킨다. 추가적으로 또는 대안적으로, (도 4c 및 도 4d와 관련하여 아래에서 설명되는 바와 같이) 서브샘플링 계층(428)이 적어도 하나의 서브샘플링 함수와 연관되는(예를 들면, 이를 수행하도록 구성되는) 것에 의해, CNN(420)은 초기 입력과 연관된 데이터의 양을 통합한다.
인지 시스템(402)이 제1 콘볼루션 계층(422), 제2 콘볼루션 계층(424), 및 콘볼루션 계층(426) 각각과 연관된 각기의 입력들 및/또는 출력들을 제공하여 각기의 출력들을 생성하는 것에 기초하여 인지 시스템(402)은 콘볼루션 연산들을 수행한다. 일부 예들에서, 인지 시스템(402)이 제1 콘볼루션 계층(422), 제2 콘볼루션 계층(424), 및 콘볼루션 계층(426)에 대한 입력으로서 데이터를 제공하는 것에 기초하여 인지 시스템(402)은 CNN(420)을 구현한다. 그러한 예에서, 인지 시스템(402)이 하나 이상의 상이한 시스템(예를 들면, 차량(102)과 동일하거나 유사한 차량의 하나 이상의 시스템, 원격 AV 시스템(114)과 동일하거나 유사한 원격 AV 시스템, 플리트 관리 시스템(116)과 동일하거나 유사한 플리트 관리 시스템, V2I 시스템(118)과 동일하거나 유사한 V2I 시스템 등)으로부터 데이터를 수신하는 것에 기초하여, 인지 시스템(402)은 제1 콘볼루션 계층(422), 제2 콘볼루션 계층(424), 및 콘볼루션 계층(426)에 대한 입력으로서 데이터를 제공한다. 콘볼루션 연산들에 대한 상세한 설명은 도 4c와 관련하여 아래에 포함된다.
일부 실시예들에서, 인지 시스템(402)은 입력(초기 입력이라고 지칭됨)과 연관된 데이터를 제1 콘볼루션 계층(422)에 제공하고, 인지 시스템(402)은 제1 콘볼루션 계층(422)을 사용하여 출력과 연관된 데이터를 생성한다. 일부 실시예들에서, 인지 시스템(402)은 상이한 콘볼루션 계층에 대한 입력으로서 콘볼루션 계층에 의해 생성되는 출력을 제공한다. 예를 들어, 인지 시스템(402)은 서브샘플링 계층(428), 제2 콘볼루션 계층(424), 및/또는 콘볼루션 계층(426)에 대한 입력으로서 제1 콘볼루션 계층(422)의 출력을 제공한다. 그러한 예에서, 제1 콘볼루션 계층(422)은 업스트림 계층이라고 지칭되고, 서브샘플링 계층(428), 제2 콘볼루션 계층(424) 및/또는 콘볼루션 계층(426)은 다운스트림 계층들이라고 지칭된다. 유사하게, 일부 실시예들에서, 인지 시스템(402)은 서브샘플링 계층(428)의 출력을 제2 콘볼루션 계층(424) 및/또는 콘볼루션 계층(426)에 제공하고, 이 예에서, 서브샘플링 계층(428)은 업스트림 계층이라고 지칭될 것이며, 제2 콘볼루션 계층(424) 및/또는 콘볼루션 계층(426)은 다운스트림 계층들이라고 지칭될 것이다.
일부 실시예들에서, 인지 시스템(402)이 CNN(420)에 입력을 제공하기 전에 인지 시스템(402)은 CNN(420)에 제공되는 입력과 연관된 데이터를 처리한다. 예를 들어, 인지 시스템(402)이 센서 데이터(예를 들면, 이미지 데이터, LiDAR 데이터, 레이다 데이터 등)를 정규화하는 것에 기초하여, 인지 시스템(402)은 CNN(420)에 제공되는 입력과 연관된 데이터를 처리한다.
일부 실시예들에서, 인지 시스템(402)이 각각의 콘볼루션 계층과 연관된 콘볼루션 연산들을 수행하는 것에 기초하여, CNN(420)은 출력을 생성한다. 일부 예들에서, 인지 시스템(402)이 각각의 콘볼루션 계층과 연관된 콘볼루션 연산들을 수행하는 것 및 초기 데이터에 기초하여, CNN(420)은 출력을 생성한다. 일부 실시예들에서, 인지 시스템(402)은 출력을 생성하고 출력을 완전 연결 계층(430)으로서 제공한다. 일부 예들에서, 인지 시스템(402)은 콘볼루션 계층(426)의 출력을 완전 연결 계층(430)으로서 제공하고, 여기서 완전 연결 계층(430)은 F1, F2... FN이라고 지칭되는 복수의 특징 값들과 연관된 데이터를 포함한다. 이 예에서, 콘볼루션 계층(426)의 출력은 예측을 나타내는 복수의 출력 특징 값들과 연관된 데이터를 포함한다.
일부 실시예들에서, 인지 시스템(402)이 복수의 예측들 중에서 정확한 예측일 가능성이 가장 높은 것과 연관된 특징 값을 식별하는 것에 기초하여, 인지 시스템(402)은 복수의 예측들 중에서 한 예측을 식별한다. 예를 들어, 완전 연결 계층(430)이 특징 값들(F1, F2, ... FN)을 포함하고, F1이 가장 큰 특징 값인 경우에, 인지 시스템(402)은 F1과 연관된 예측을 복수의 예측들 중에서 정확한 예측인 것으로 식별한다. 일부 실시예들에서, 인지 시스템(402)은 예측을 생성하도록 CNN(420)을 트레이닝시킨다. 일부 예들에서, 인지 시스템(402)이 예측과 연관된 트레이닝 데이터를 CNN(420)에 제공하는 것에 기초하여, 인지 시스템(402)은 예측을 생성하도록 CNN(420)을 트레이닝시킨다.
이제 도 4c 및 도 4d를 참조하면, 인지 시스템(402)에 의한 CNN(440)의 예시적인 작동의 다이어그램이 예시되어 있다. 일부 실시예들에서, CNN(440)(예를 들면, CNN(440)의 하나 이상의 컴포넌트)은 CNN(420)(예를 들면, CNN(420)의 하나 이상의 컴포넌트)(도 4b 참조)과 동일하거나 유사하다.
단계(450)에서, 인지 시스템(402)은 CNN(440)에 대한 입력으로서 이미지와 연관된 데이터를 제공한다(단계(450)). 예를 들어, 예시된 바와 같이, 인지 시스템(402)은 이미지와 연관된 데이터를 CNN(440)에 제공하고, 여기서 이미지는 2차원(2D) 어레이에 저장되는 값들로서 표현되는 그레이스케일 이미지이다. 일부 실시예들에서, 이미지와 연관된 데이터는 컬러 이미지와 연관된 데이터를 포함할 수 있고, 컬러 이미지는 3차원(3D) 어레이에 저장되는 값들로서 표현된다. 추가적으로 또는 대안적으로, 이미지와 연관된 데이터는 적외선 이미지, 레이다 이미지 등과 연관된 데이터를 포함할 수 있다.
단계(455)에서, CNN(440)은 제1 콘볼루션 함수를 수행한다. 예를 들어, CNN(440)이 이미지를 나타내는 값들을 제1 콘볼루션 계층(442)에 포함된 하나 이상의 뉴런(명시적으로 예시되지 않음)에 대한 입력으로서 제공하는 것에 기초하여, CNN(440)은 제1 콘볼루션 함수를 수행한다. 이 예에서, 이미지를 나타내는 값들은 이미지의 한 영역(때때로 수용 영역(receptive field)이라고 지칭됨)을 나타내는 값들에 대응할 수 있다. 일부 실시예들에서, 각각의 뉴런은 필터(명시적으로 예시되지 않음)와 연관된다. 필터(때때로 커널이라고 지칭됨)는 크기가 뉴런에 대한 입력으로서 제공되는 값들에 대응하는 값들의 어레이로서 표현될 수 있다. 일 예에서, 필터는 에지(edge)(예를 들면, 수평 라인, 수직 라인, 직선 라인 등)을 식별하도록 구성될 수 있다. 연속적인 콘볼루션 계층들에서, 뉴런들과 연관된 필터들은 연속적으로 보다 복잡한 패턴들(예를 들면, 호, 대상체 등)을 식별하도록 구성될 수 있다.
일부 실시예들에서, CNN(440)이 제1 콘볼루션 계층(442)에 포함된 하나 이상의 뉴런 각각에 대한 입력으로서 제공되는 값들을 하나 이상의 뉴런 각각에 대응하는 필터의 값들과 곱하는 것에 기초하여, CNN(440)은 제1 콘볼루션 함수를 수행한다. 예를 들어, CNN(440)은 제1 콘볼루션 계층(442)에 포함된 하나 이상의 뉴런 각각에 대한 입력으로서 제공되는 값들을 하나 이상의 뉴런 각각에 대응하는 필터의 값들과 곱하여 단일 값 또는 값들의 어레이를 출력으로서 생성할 수 있다. 일부 실시예들에서, 제1 콘볼루션 계층(442)의 뉴런들의 집합적 출력은 콘볼루션된 출력(convolved output)이라고 지칭된다. 일부 실시예들에서, 각각의 뉴런이 동일한 필터를 갖는 경우에, 콘볼루션된 출력은 특징 맵(feature map)이라고 지칭된다.
일부 실시예들에서, CNN(440)은 제1 콘볼루션 계층(442)의 각각의 뉴런의 출력들을 다운스트림 계층의 뉴런들에 제공한다. 명료함을 위해, 업스트림 계층은 데이터를 상이한 계층(다운스트림 계층이라고 지칭됨)으로 송신하는 계층일 수 있다. 예를 들어, CNN(440)은 제1 콘볼루션 계층(442)의 각각의 뉴런의 출력들을 서브샘플링 계층의 대응하는 뉴런들에 제공할 수 있다. 일 예에서, CNN(440)은 제1 콘볼루션 계층(442)의 각각의 뉴런의 출력들을 제1 서브샘플링 계층(444)의 대응하는 뉴런들에 제공한다. 일부 실시예들에서, CNN(440)은 다운스트림 계층의 각각의 뉴런에 제공되는 모든 값들의 집계들에 바이어스 값을 가산한다. 예를 들어, CNN(440)은 제1 서브샘플링 계층(444)의 각각의 뉴런에 제공되는 모든 값들의 집계들에 바이어스 값을 가산한다. 그러한 예에서, 각각의 뉴런에 제공되는 모든 값들의 집계들 및 제1 서브샘플링 계층(444)의 각각의 뉴런과 연관된 활성화 함수에 기초하여, CNN(440)은 제1 서브샘플링 계층(444)의 각각의 뉴런에 제공할 최종 값을 결정한다.
단계(460)에서, CNN(440)은 제1 서브샘플링 함수를 수행한다. 예를 들어, CNN(440)이 제1 콘볼루션 계층(442)에 의해 출력되는 값들을 제1 서브샘플링 계층(444)의 대응하는 뉴런들에 제공하는 것에 기초하여, CNN(440)은 제1 서브샘플링 함수를 수행할 수 있다. 일부 실시예들에서, CNN(440)은 집계 함수에 기초하여 제1 서브샘플링 함수를 수행한다. 일 예에서, CNN(440)이 주어진 뉴런에 제공되는 값들 중에서 최대 입력을 결정하는 것(맥스 풀링 함수(max pooling function)라고 지칭됨)에 기초하여, CNN(440)은 제1 서브샘플링 함수를 수행한다. 다른 예에서, CNN(440)이 주어진 뉴런에 제공되는 값들 중에서 평균 입력을 결정하는 것(평균 풀링 함수(average pooling function)라고 지칭됨)에 기초하여, CNN(440)은 제1 서브샘플링 함수를 수행한다. 일부 실시예들에서, CNN(440)이 제1 서브샘플링 계층(444)의 각각의 뉴런에 값들을 제공하는 것에 기초하여, CNN(440)은 출력을 생성하며, 이 출력은 때때로 서브샘플링된 콘볼루션된 출력(subsampled convolved output)이라고 지칭된다.
단계(465)에서, CNN(440)은 제2 콘볼루션 함수를 수행한다. 일부 실시예들에서, CNN(440)은 위에서 설명된, CNN(440)이 제1 콘볼루션 함수를 수행한 방법과 유사한 방식으로 제2 콘볼루션 함수를 수행한다. 일부 실시예들에서, CNN(440)이 제1 서브샘플링 계층(444)에 의해 출력되는 값들을 제2 콘볼루션 계층(446)에 포함된 하나 이상의 뉴런(명시적으로 예시되지 않음)에 대한 입력으로서 제공하는 것에 기초하여, CNN(440)은 제2 콘볼루션 함수를 수행한다. 일부 실시예들에서, 위에서 설명된 바와 같이, 제2 콘볼루션 계층(446)의 각각의 뉴런은 필터와 연관되어 있다. 위에서 설명된 바와 같이, 제2 콘볼루션 계층(446)과 연관된 필터(들)는 제1 콘볼루션 계층(442)과 연관된 필터보다 더 복잡한 패턴들을 식별하도록 구성될 수 있다.
일부 실시예들에서, CNN(440)이 제2 콘볼루션 계층(446)에 포함된 하나 이상의 뉴런 각각에 대한 입력으로서 제공되는 값들을 하나 이상의 뉴런 각각에 대응하는 필터의 값들과 곱하는 것에 기초하여, CNN(440)은 제2 콘볼루션 함수를 수행한다. 예를 들어, CNN(440)은 제2 콘볼루션 계층(446)에 포함된 하나 이상의 뉴런 각각에 대한 입력으로서 제공되는 값들을 하나 이상의 뉴런 각각에 대응하는 필터의 값들과 곱하여 단일 값 또는 값들의 어레이를 출력으로서 생성할 수 있다.
일부 실시예들에서, CNN(440)은 제2 콘볼루션 계층(446)의 각각의 뉴런의 출력들을 다운스트림 계층의 뉴런들에 제공한다. 예를 들어, CNN(440)은 제1 콘볼루션 계층(442)의 각각의 뉴런의 출력들을 서브샘플링 계층의 대응하는 뉴런들에 제공할 수 있다. 일 예에서, CNN(440)은 제1 콘볼루션 계층(442)의 각각의 뉴런의 출력들을 제2 서브샘플링 계층(448)의 대응하는 뉴런들에 제공한다. 일부 실시예들에서, CNN(440)은 다운스트림 계층의 각각의 뉴런에 제공되는 모든 값들의 집계들에 바이어스 값을 가산한다. 예를 들어, CNN(440)은 제2 서브샘플링 계층(448)의 각각의 뉴런에 제공되는 모든 값들의 집계들에 바이어스 값을 가산한다. 그러한 예에서, 각각의 뉴런에 제공되는 모든 값들의 집계들 및 제2 서브샘플링 계층(448)의 각각의 뉴런과 연관된 활성화 함수에 기초하여, CNN(440)은 제2 서브샘플링 계층(448)의 각각의 뉴런에 제공할 최종 값을 결정한다.
단계(470)에서, CNN(440)은 제2 서브샘플링 함수를 수행한다. 예를 들어, CNN(440)이 제2 콘볼루션 계층(446)에 의해 출력되는 값들을 제2 서브샘플링 계층(448)의 대응하는 뉴런들에 제공하는 것에 기초하여, CNN(440)은 제2 서브샘플링 함수를 수행할 수 있다. 일부 실시예들에서, CNN(440)이 집계 함수를 사용하는 것에 기초하여, CNN(440)은 제2 서브샘플링 함수를 수행한다. 일 예에서, 위에서 설명된 바와 같이, CNN(440)이 주어진 뉴런에 제공되는 값들 중에서 최대 입력 또는 평균 입력을 결정하는 것에 기초하여, CNN(440)은 제1 서브샘플링 함수를 수행한다. 일부 실시예들에서, CNN(440)이 제2 서브샘플링 계층(448)의 각각의 뉴런에 값들을 제공하는 것에 기초하여, CNN(440)은 출력을 생성한다.
단계(475)에서, CNN(440)은 제2 서브샘플링 계층(448)의 각각의 뉴런의 출력을 완전 연결 계층들(449)에 제공한다. 예를 들어, CNN(440)은 제2 서브샘플링 계층(448)의 각각의 뉴런의 출력을 완전 연결 계층들(449)에 제공하여 완전 연결 계층들(449)로 하여금 출력을 생성하게 한다. 일부 실시예들에서, 완전 연결 계층들(449)은 예측(때때로 분류라고 지칭됨)과 연관된 출력을 생성하도록 구성된다. 예측은 CNN(440)에 대한 입력으로서 제공되는 이미지에 포함된 대상체가 대상체, 대상체 세트 등을 포함한다는 표시를 포함할 수 있다. 일부 실시예들에서, 본 명세서에서 설명되는 바와 같이, 인지 시스템(402)은 하나 이상의 동작을 수행하고/하거나 예측과 연관된 데이터를 상이한 시스템에 제공한다.
AV는 주어진 교통 시나리오를 상이한 방식으로 횡단할 수 있다. 상이한 AV 루트 플래너는 교통 시나리오를 횡단하는 선호 방식으로서 상이한 궤적을 선택할 수 있다. 그렇지만, AV가 교통 시나리오를 횡단하기 위한 "최상의" 궤적을 선택하는 것이 요망되며, 이는, 안전, 적법성 등과 같은, 다른 고려 사항들 외에도 승객(들)의 편안함을 고려하는 것을 포함할 수 있다. 예들에서, 최상의 궤적은 주관적일 수 있다. 추가적으로, 예들에서 최상의 궤적은 적어도 AV가 교통 법규를 준수할 수 있게 하고, 편안할 수 있게 하며, 윤리적일 수 있게 하는 등을 하는 것이다. 본 명세서에서 설명되는 실시예들은 해석 가능한 방식으로 AV 궤적들에 대한 합리성 점수들을 예측하기 위해 머신 러닝(ML) 모델을 사용한다. 예들에서, ML 모델은 도 4a 내지 도 4d와 관련하여 설명된 적어도 하나의 머신 러닝 모델이다. 일 실시예에서, 합리성 점수는 실수이고, 점수가 높을수록, 궤적이 더 합리적이다. 인간 주석 달기는 파라미터들을 모델에 알려준다. 해석 가능성을 달성하기 위해, 일 실시예에서, AV가 교통 시나리오를 어떻게 횡단하는지를, AV 궤적에 합리성 점수를 할당하기 위해 형식적으로(formally) 분석될 수 있는 인간이 이해 가능한 컴포넌트들로 분해하기 위해 규칙집이 사용될 수 있다. ML 모델이 트레이닝된 후에, ML 모델은 이어서 AV의 실시간 동작 동안 AV가 교통 시나리오를 횡단하기 위한 2개 이상의 궤적에 대한 합리성 점수를 예측하는 데 사용될 수 있다. 점수는 AV가 주어진 교통 시나리오를 횡단하기 위해 어느 궤적을 선택해야 하는지를 결정하는 데 사용될 수 있다. 이러한 방식으로, 하나의 궤적이, 합리적인 크라우드 데이터(crowd data)에 따라 더 "합리적"이기 때문에, 다른 궤적보다 선택될 수 있다.
교통 시나리오
일 실시예에서, 교통 시나리오는 다음과 같은 관련 특징들을 갖는다:
맵 M: 도로망 및 정적 환경(예를 들면, 건물, 도로 마킹)의 토폴로지. 도 5a는 차선 마킹들 및 횡단보도들(501)을 갖는 거리 교차로(500)를 포함하는 토폴로지를 예시하는 맵이다.
시나리오 b: 다른 에이전트들, 그들의 시작 위치 및 그들의 궤적들로 채워진 맵인, 교통 시나리오의 배경. 도 5b는 에이전트(502)(보행자)가 교차로(500)에서 횡단보도(501)에 진입하려고 하는 예시적인 교통 시나리오를 예시한다.
궤적 t: 주어진 교통 시나리오에서의 AV의 궤적.
시나리오 b의 실현 w, w ∈ W b: 실현은 교통 시나리오 및 이를 통한 AV의 궤적을 포함한다. 도 5c는 예시적인 AV(503)가 교차로(500)를 횡단하는 것을 예시한다.
주석 달기
ML 모델을 트레이닝시키기 위해서는 주석이 달린 데이터가 필요하다. 일 실시예에서, 주석이 달릴 원시 데이터는 교통 시나리오들의 모음
(1)
및 교통 시나리오들 각각과 연관된 실현 세트
(2)
이다. 이어서 인간 주석 작성자들에게 이러한 실현들의 서브세트를 보여주고 이들에 순위를 부여하도록 요청한다. 구체적으로, 순위 부여 π는 실현들의 모음 W의 순열이고:
,
(3)
여기서 는 순위 부여될 실현들의 수이고, π(wi)는 실현 wi의 순위이다. π는 ML 모델이 트레이닝되는 데 바탕이 되는 정답 데이터(ground-truth data)로서 역할한다. 인간이 특정 실현에 대한 절대 점수(absolute score)를 제공할 것으로 기대하는 것이 비현실적이기 때문에 주석 작성자가 실현들에 순위를 부여하거나 등급을 부여하도록 요청받는다는 점에 유의한다.
쌍별 비교
인간 주석 작성자에 대한 인지 부하를 감소시키기 위해, 일 실시예에서, 주석 작성자에게 실현 쌍을 보여주고 주석 작성자가 가장 합리적이라고 생각하는 실현을 선택하도록 주석 작성자에게 요청한다.
형식적으로, m개의 실현의 세트 {w 1,...,w m}를 고려한다. m개의 실현을 쌍으로 만드는 개의 방식이 있다. 예를 들어, 컴퓨터 스크린 상에서 그러한 쌍을 주석 작성자에게 보여주고, 예를 들어, 더 합리적인 실현과 같은, 그의 선호 실현을 선택하도록 요청한다. 일 실시예에서, 주석 작성자의 선호 사항이 함수 h로 인코딩되고:
,
(4)
여기서 는 m개의 실현을 쌍으로 만드는 k번째 가능한 방식이고, i, j는 1과 m 사이의 정수이다. 주석 작성자의 선호 사항을 인코딩하기 위해 다른 함수들이 사용될 수 있거나, 선호 사항이 직접적으로 사용될 수 있다.
실현 쌍들이 동일한 교통 시나리오로부터 나오도록 제약되지 않는다는 점에 유의한다. 그렇지만, 데이터 품질을 증가시키기 위해, 실현 쌍들이 동일한 시나리오로부터 나오도록 제약될 수 있다. 게다가, 잡음이 있는 주석 및 주석 작성자의 편견을 고려하기 위해, 동일한 실현 쌍 에 주석을 달도록 다수의 인간 주석 작성자들에게 요청할 수 있다. 게다가, 인코딩 함수 h가 주어지면, Nihar B. Shah, Sivaraman Balakrishnan, Adityanand Guntuboyina, and Martin J. Wainwright. Stochastically Transitive Models for Pairwise Comparisons: Statistical and Computational Issues, 2015에 설명된, Bradley-Terry 모델과 같은, 확률적 전이 모델(stochastically transitive model)을 사용하여 정답 데이터 π가 생성될 수 있음에 유의한다.
위에서 설명된 실현들은 상이한 방식들로 획득될 수 있다. 일 실시예에서, 인간 피험자가 상이한 방식들로 동일한 실제 교통 상황을 횡단하는 차량에 앉아 있다. 그렇지만, 이것은 엄청나게 비용이 많이 든다. 대안의 실시예에서, 테스트 케이스 편집기(test case editor)를 사용하여 수작업으로 생성되거나 교통을 시뮬레이션하는 알고리즘에 의해 생성되는 표현을 수집하는 시뮬레이터가 사용된다. 시뮬레이터는 3차원(3D) 비디오를 생성하고, 3차원(3D) 비디오가 이어서 인간 주석 작성자들에게 보여진다.
도 6은 하나 이상의 실시예에 따른, 인간 주석 작성자가 궤적 쌍으로부터 궤적을 선택할 수 있게 하기 위한 예시적인 주석 달기 도구 인터페이스(600)이다. 도구 인터페이스(600)의 다른 실시예들이 또한 가능하다. 도시된 예에서, "합리적인 운전자라면 A 또는 B에서와 같이 행동할 가능성이 가장 높을까요?"라는 지시와 함께, 예를 들어, 컴퓨터 스크린 상에 나란히 제시되는 비디오(601a)(A)와 비디오(601b)(B)를 인간 주석 작성자에게 보여준다. 인터페이스(600)는 주석 작성자가 비디오를 재생할 수 있게 하는 재생 버튼과 같은, 탐색 컨트롤(navigation control)들을 포함한다. 주석 작성자는 자신의 선호 사항을 나타내기 위해 비디오들(601a, 601b) 중 하나를 클릭할 수 있다. 탐색 컨트롤들은 주석 작성자가 상이한 교통 시나리오들 사이를 앞뒤로 이동할 수 있게 하기 위해 그래픽 사용자 인터페이스(GUI) 요소들을 또한 포함한다.
규칙집
위에서 이전에 정의된 바와 같이, "규칙집"은 수학적 규칙들로 변환되는 교통 법규들, 도로 규칙들 및 이해관계자 요구 사항들의 모음이며:
,
(5)
여기서 n개의 규칙이 있고 R은 실수들의 집합이라고 가정된다. 함수 ri (w)는 w에서의 AV에 의한 특정 규칙의 위반 또는 충족의 정도를 나타낸다. 예를 들어, r i (w)는 AV가 여전히 도로에 있는지 여부를 나타낼 수 있다.
규칙집은 또한 상이한 규칙들의 상대적 중요도에 관한 신뢰를 인코딩하는 우선순위 구조를 가질 수 있다. 부분 순서(partial ordering)를 갖는 예시적인 규칙집(700)이 도 7에 도시되어 있다. 인간의 안전이 주차 규칙들을 위반하는 것보다 우선순위를 부여받고, 주차 규칙들과 정차 규칙들은 유사한 중요도를 가지며, 여기서 우선순위는 위에서 아래로 증가한다는 점에 주목한다. 이러한 부분 순서 구조는 일부 궤적들(예를 들면, 보행자가 충돌되는 궤적, 및 AV가 불법적으로 주차되는 궤적)에는 순위를 부여하지만, (예를 들면, 주차된 자동차가 충돌되는 궤적, 및 동물이 충돌되는 다른 궤적과 같은) 모든 궤적들에 순위를 부여하는 것은 아니다.
ML 모델 - 셋업
일 실시예에서, "합리적인 인간"이 w 2보다 w 1을 선호하는 경우에만 s (w 1 ) > s (w 2 )이도록 - 단, w 1 및 w 2는 2개의 상이한 실현임 -, 임의의 실현들에 합리성 점수들을 할당할 수 있는 합리성 점수 함수(reasonableness scoring function) s가 정의된다:
,
(6)
함수 s는 실현에 대해 직접적으로 작동할 수 있지만, 해석 가능성을 달성하기 위해, 그의 아키텍처는 먼저 실현 w s를 규칙집으로부터 취해진 규칙들의 모음에 임베딩하고, 이어서 이들을 ML 모델을 사용하여 처리하도록 제약되며:
,
(7)
여기서 규칙들 임베딩(rules embedding)은 규칙집의 출력을 포함하며 다음과 같이 완전히 해석 가능(fully interpretable)하다:
.
(8)
함수 s rules는 규칙 위반 또는 충족에 기초하여 궤적들에 점수를 부여하는 학습된 ML 모델이며, 예를 들어, 완전 연결(fully-connected) 신경 네트워크 또는 결정 트리일 수 있다. s rules에 대한 일부 제약들이 있음에 유의한다. 더 큰 r i(w)가 규칙 i의 더 큰 충족을 나타낸다고 가정하면, 다음과 같은 제약이 있다:
.
(9)
1 ≤ i ≤ n인 경우, 임의의 w 및 δ는 임의의 양의 실수이다. 변수 α i는 n 차원의 i 번째 단위 벡터이며, 1인 그의 i 번째 엔트리를 제외하고는 모든 곳에서 0이다. 수학식 [9]는 2개의 실현 w 1과 w 2가 동일한 경우, w 2가 특정 규칙을 더 위반하는 것을 제외하고, w 1이 w 2보다 합리적이어야 한다는 것을 나타낸다.
도 8은 하나 이상의 실시예에 따른, ML 트레이닝 절차(800)를 예시한다. 도시된 예에서, 실현들 W의 데이터베이스(801)가 실현 쌍(w1, w2)에 대해 쿼리된다. 실현들을, 각각이 AV가 상이한 규칙들(예를 들면, 교통 법규들)을 얼마나 잘 준수하는지를 나타내는 점수들의 목록/벡터인, e rules(w 1) 및 e rules(w 2)로 변환하기 위해 하나 이상의 규칙집(804)이 이어서 사용된다. ML 모델(806)은 e rules (w 1)과 e rules (w 2)를 처리하고 w 1과 w 2에 등급을 부여한다. 예를 들어, ML 모델(806)은, w 1에 w 2보다 더 높은 등급을 부여하는 경우, w1이 w 2보다 더 합리적이라고 예측한다. 도 6을 참조하여 설명된 바와 같이, w 1 및 w 2의 3D 렌더링(803)을 본 복수의 인간 주석 작성자들(805)에 의해 결정된 바와 같이, 이렇지 않는 경우에 ML 모델(806)의 파라미터들이 수정된다. 다른 실시예들에서, 실현 쌍들에 주석을 달지 않고, 주석 작성자들이 임의의 수의 궤적들에 서로 대조하여 순위를 부여할 수 있다는 점에 유의한다.
모델 파라미터들의 튜닝
ML 모델(806)은 트레이닝 데이터로부터 결정될 필요가 있는 많은 파라미터들을 갖는다. 특히, 트레이닝 데이터 데이터베이스가 이하의 식에 의해 주어지는, K개의 실현 쌍 및 그들과 연관된 레이블들을 포함한다고 가정하며:
,
(10)
,
(11)
.
(12)
여기서 및 는 실현들이며 k=1...K이다.
학습 문제는 분류 문제로서 제시되며: 실현 쌍 x = (u, v) 및 그와 연관된 레이블 y = h (u, k)가 주어지면, ML 모델(806)은 실현 u가 실현 v보다 더 합리적인지 여부를 예측한다. 일 실시예에서, ML 모델(806)은 두 번: erules (u) 및 erules (v) 각각에 대해 한 번씩 실행되며, 2개의 예측: 합리성 점수들 s(u) 및 s(v)를 생성한다. 점수 차이(score differential)는 다음과 같이 정의되고
,
(13)
여기서 ML 모델(806)은 다음과 같은 방식으로 x를 분류하는 데 사용된다:
.
(14)
ML 모델(806)의 파라미터들이 이어서 목적(손실) 함수를 최소화하는 것에 의해 결정되고:
.
(15)
여기서 y 인 경우 L(y, d(x))는 모델에 페널티를 부과한다. 패널티의 크기는 d(x)에 의해 결정된다. <기호>는 정규화 항(regularization term)이며, 예를 들어, L1 또는 L2 정규화 항일 수 있다. 는 규칙집의 구조를 위반하는 예측들에 페널티를 부과하며:
,
(16)
여기서 는 다른 손실 항들에 대한 의 중요도를 인코딩하는 양의 스칼라이고, 는 실현 가 보다 선호되는지 여부에 대한 규칙집의 예측이며, 와 는 k번째 샘플에서의 실현 쌍이며, 여기서 k=1...K이다(따라서 = h(, )이다). 규칙집이 2개의 실현을 항상 비교할 수 있는 것은 아니며, 이 경우에 는 과 동일하다는 점에 유의한다. 규칙집은 2개의 실현 중 하나가 더 높은 계층구조 레벨에 있는 규칙을 위반하는 경우에만 2개의 실현을 비교할 수 있다. 구체적으로,
(17)
가능한 손실 함수
일 실시예에서, 힌지 손실 함수(hinge loss function)가 목적 함수(objective function)로서 사용될 수 있다. 힌지 손실은 레이블 y=+1을 갖는 샘플들과 레이블 y=-1을 갖는 샘플들 사이의 명확한 마진(clear margin)을 예상한다. 힌지 손실 함수는 다음과 같이 주어지며:
(18)
여기서 d(x)는 입력 x에 대한 점수 차이(differential score)이다. 다른 실시예에서, 다음과 같이 주어지는, 슬랙(slack)을 허용하는 상이한 손실 함수가 사용될 수 있다:
(19)
일 실시예에서, L1 손실 또는 L2 손실, 또는 L1 손실과 L2 손실의 조합(평활화된 L1 손실(smoothed L1 loss))이 사용될 수 있다. 예를 들어, L2 손실은 다음과 같이 주어진다:
(20)
회귀 학습 실시예
일 실시예에서, Nihar B. Shah, Sivaraman Balakrishnan, Adityanand Guntuboyina, and Martin J. Wainwright. Stochastically Transitive Models for Pairwise Comparisons: Statistical and Computational Issues, 2015에 설명된 바와 같이, 확률적 전이 모델을 주석 작성자들의 선호 사항들에 피팅(fitting)하는 것에 의해 정답 데이터가 실현들에 할당된다.
이러한 확률적 전이 모델들은 샘플들 에 대한 정답 회귀 목표(ground-truth regression target)들을 제공하며, 여기서 k=1...K이다.
,
(21)
여기서 는 실현 u에 할당되는 정답 점수(ground-truth score)이다. 파라미터 가 이어서 와 직접적으로 비교되고, L2 회귀 손실 과 같은 회귀 손실들이 사용된다. 대안적으로, s(u)가 와 직접적으로 비교될 수 있다.
예시적인 아키텍처들
개시된 실시예들에서 이용될 수 있는 매우 다양한 ML 모델들이 있다. 인공 신경 네트워크들이 특히 인기가 있으며, 실제로 매우 잘 작동한다. 그렇지만, 단순함을 위해, 선형 서포트 벡터 머신들(선형 SVM)이 사용될 수 있다. 선형 SVM은 또한 해석하기 더 쉽다. 다른 모델들은 회귀 분석, 베이지안 예측, 다층 퍼셉트론, 및 유전자 프로그래밍을 포함하지만 이에 제한되지 않는다.
일 실시예에서, 선형 SVM인 fSVM은 규칙집 내의 각각의 규칙에 가중치를 할당한다. 더 큰 가중치는 더 중요한 규칙을 나타낸다. 선형 SVM은 이어서 다음과 같은 방식으로 규칙 점수들 erules(w)로 실현 w에 등급을 부여하며:
,
(22)
여기서 α ∈ Rn이고, 단순함을 위해 바이어스 항(bias term)은 생략된다.
입력 x = (u, v)에 대해, 점수 차이는 다음과 같이 주어진다:
(23)
.
(24)
결과적으로, 선형 SVM은 두 번이 아니라 한 번 실행하는 것에 의해 데이텀(datum) (x, y)에 대해 트레이닝될 수 있다. 규칙 차이(rules differential)는 (e rules (u) - e rules (v))로서 제공된다. 선형 SVM들은 수학식 18에 나타낸 힌지 손실을 이용하며, 선형 SVM들의 경우, L2 정규화 항은 λα.α 형태이고, 여기서 λ ∈ R이다.
대안적인 임베딩
비록 교통 법규들이 운전자의 거동에 강한 영향을 미치지만, 이들이 운전자의 거동을 결정하는 유일한 요인들은 아니다. 다른 에이전트들의 거동 및 운전자의 시야가 어떻게 가려지는지와 같은, 다른 요인들도 역할을 한다. 자체적으로, 교통 법규들은 합리적인 거동을 구성하는 것에 대한 주석 작성자들의 선호 사항들을 항상 이해하기에 충분한 정보를 포함하지 않는다. 규칙들이 법규들에 인코딩되지 않은 거동을 포함하도록 확장되더라도(예를 들면, 진동 궤적(oscillatory trajectory)에 페널티를 부과하는 규칙), 주어진 규칙 세트가 모든 관련 요인들을 포함하는 것은 아닐 수 있다. 일부 실시예들에서, 운동학적 요인들은 승객 편안함에 따라 순위가 부여된다. 예들에서, 승객 편안함은 승객이 어떻게 느끼는지(예를 들면, 특정 감정이나 감각의 결정; 특정 감정이나 감각의 자기 인지(self perception))를 특성화한다. 예를 들어, 더 높은 승객 편안함은, 교통 시나리오를 횡단할 때와 같이, 승차 동안 승객이 안전, 보호 또는 비위협을 인지하는 것과 연관된다. 더 낮은 승객 편안함은 승차 동안 승객이 위험, 취약성 또는 위협을 인지하는 것과 연관된다. 요인들은 각각의 요인에 대한 인간이 채택한 기준들을 생성하여 정량화된다.
도 9는 하나 이상의 실시예에 따른, 신경 네트워크에 대한 트레이닝 데이터로서 사용될 교통 시나리오의 예시적인 조감도(BEV) 임베딩(900)을 예시한다. 일 실시예에서, 거동 예측 문헌에서 흔히 사용되는 바와 같이, 장면의 많은 관련 측면들을 BEV 의사 이미지에 임베딩하는 것에 의해 특정 장면에서 더 많은 정보가 캡처된다. 그러한 임베딩은, 예를 들어, 시나리오를 높이 H, 폭 W 및 C개의 채널의 의사 이미지에 매핑하는 함수일 수 있다:
,
(25)
예를 들어, 도 8에 도시된 의사 RGB 이미지에서, C = 3이고 운전 가능 구역(901), 횡단보도들(902) 등을 포함한다. 학습되는 점수 함수는 e rules(w) 대신에 임베딩 e img(w)에 대해 작동할 것이고, 수학식 7은 다음으로 대체된다:
.
(26)
따라서, 실현들을 의사 이미지들에 임베딩하는 것은 규칙 임베딩과 대조하여 비교하고, 규칙 임베딩을 통보하며, 규칙 임베딩을 검증하기 위한 대안적인 합리성 점수 부여 방법을 제공한다. 예를 들어, 학습된 임베딩에 기초한 ML 모델과 규칙 임베딩에 기초한 ML 모델 간의 큰 성능 갭(performance gap)은 관련 규칙들이 누락되어 있을 수 있음을 암시한다.
일 실시예에서, 컴퓨터 비전 커뮤니티가 의사 이미지들에 대한 우수한 효과를 보여주었기 때문에, simg는 CNN(Convolutional Neural Network)일 수 있다. 사용된 CNN은, 예를 들어, Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition, 2015에 설명된 바와 같은, 잔차 네트워크(residual network)일 수 있다. 또는, 대안적으로, Karen Simonyan and Andrew Zisserman. Very Deep Convolutional Networks for Large-Scale Image Recognition, 2014에 설명된 VGG 네트워크일 수 있다.
다른 실시예들에서, 궤적들의 벡터 표현에 대해 직접적으로 작동하는 벡터 임베딩과 같은, 다른 유형의 임베딩들이 사용될 수 있다. 벡터 임베딩은 Jiyang Gao et al. VectorNet: Encoding HD Maps and Agent Dynamics from Vectorized Representation.arXiv:2005.04259v1 [cs.CV]에 설명되어 있다.
추가적인 사용자 케이스들
A. 플래너 성능의 평가
일 실시예에서, 설명된 기술들은 루트 플래너 및 그 성능을 튜닝하는 데 사용될 수 있다. L개의 교통 시나리오의 모음이 주어지면
.
(27)
각각의 시나리오에 대해 루트 플래너가 실행된다. 루트 플래너는 위에서 설명된 바와 같은 트레이닝된 ML 모델을 사용하여 L개의 교통 시나리오 각각에 대한 궤적을 예측한다:
.
(28)
ML 모델은 궤적들 각각에 등급을 부여하고, 그 결과 L개의 점수가 얻어진다:
.
(29)
이러한 점수들로부터 플래너에 대한 메트릭이 형성될 수 있다. 예를 들어, 메트릭은 점수들의 평균일 수 있다:
.
(30)
추가적으로, 플래너가 어느 시나리오들에 대해 성능이 좋지 않았는지를 식별하는 것에 의해 플래너를 미세 튜닝(fine tune)하는 데 점수들이 도움이 될 수 있다. 플래너의 파라미터들 또는 설계가 이어서 부적절한 성능을 해결하기 위해 변경될 수 있다.
B. 2개의 AV 스택의 비교
일 실시예에서, 합리적인 크라우드 점수(reasonable-crowd score)는 2개의 AV 소프트웨어 스택의 성능을 비교하는 방식을 제공한다. AV 소프트웨어 스택들은 하나 이상의 서브시스템 구현(예를 들면, 플래너 및/또는 대상체 검출기)에서 상이할 수 있다. 일 실시예에서, 수학식 30의 메트릭은 AV 소프트웨어 스택들의 성능을 비교하는 데 사용된다.
C. 강화 학습
일 실시예에서, 위에서 설명된 트레이닝된 ML 모델은 강화 학습 알고리즘에서 보상 함수(reward function)로서 사용된다. 실제 로봇 공학에서, 양호한 보상 함수를 설계하는 것이 합리적인 거동을 획득하는 데 중요하다.
도 10은 하나 이상의 실시예에 따른, AV의 실시간 운행 동안 AV 궤적에 대한 합리성 점수를 예측하기 위해 ML 모델을 사용하는 프로세스(1000)의 흐름 다이어그램이다. 프로세스(1000)는, 예를 들어, 도 3을 참조하여 설명된 컴퓨터 시스템(300)에 의해 구현될 수 있다.
프로세스(1000)는 AV에 대한 궤적 세트를 생성하는 것으로 시작되며, 여기서 각각의 궤적은 교통 시나리오와 연관되어 있다(1001). 예를 들어, AV의 계획 모듈(404)은 교통 시나리오에 대한 다수의 후보 궤적들을 생성할 수 있으며, 후보 궤적들 각각은 규칙집 내의 규칙들을 충족시킨다.
프로세스(1000)는 각각의 궤적에 대한 합리성 점수를 예측하는 것으로 계속되며, 여기서 합리성 점수는 복수의 인간 주석 작성자들로부터 획득되는 입력 및 규칙집 구조를 위반하는 합리성 점수들의 예측들에 페널티를 부과하는 손실 함수를 사용하여 트레이닝되는 머신 러닝 모델로부터 획득된다(1002). 예를 들어, 합리성 점수들을 예측하도록 트레이닝되는 ML 모델은 실현 쌍들을 규칙집의 규칙들에 임베딩하는 것에 의해 생성되는 규칙집 점수 세트들로 트레이닝될 수 있으며, 여기서 점수 세트는 특정 실현이 규칙들을 얼마나 잘 준수하는지(즉, 규칙들을 위반하는지 충족시키는지)를 나타내거나 이에 대응한다.
프로세스(1000)는 차량 루트 플래너의 성능을 개선시키기 위해, 2개 이상의 차량 소프트웨어 스택을 비교하기 위해, 강화 학습 알고리즘에 대한 보상으로서 또는 차량 궤적들에 점수를 부여하는 머신 러닝 모델로부터 이득을 볼 수 있는 임의의 다른 응용에 의한 사용을 위해, 예측된 합리성 점수들을 사용하는 것으로 계속된다(1003). 예를 들어, 계획 모듈(404)은 교통 시나리오를 횡단하기 위해, 즉 보행자(502)와의 충돌을 피하기 위해 AV에 의해 사용될 가장 합리적인 궤적을 선택하기 위해 예측된 합리성 점수들을 사용할 수 있다.
도 11은 하나 이상의 실시예에 따른, AV 궤적에 대한 합리성 점수를 예측하기 위해 ML 모델을 트레이닝시키는 프로세스(1100)의 흐름 다이어그램이다. 프로세스(1100)는, 예를 들어, 도 3을 참조하여 설명된 컴퓨터 시스템(300)에 의해 구현될 수 있다.
프로세스(1100)는 하나 이상의 교통 시나리오의 실현 세트를 획득하는 것으로 시작되며, 여기서 각각의 실현은 교통 시나리오 및 교통 시나리오를 횡단하는 차량의 궤적을 포함한다(1101). 일 실시예에서, 인간 피험자가 상이한 방식들로 동일한 실제 교통 상황을 횡단하는 차량에 앉아 있다. 대안의 실시예에서, 테스트 케이스 편집기를 사용하여 수작업으로 생성되거나 교통을 시뮬레이션하는 알고리즘에 의해 생성되는 표현을 수집하는 시뮬레이터가 사용된다. 시뮬레이터는 3D 비디오들을 생성하고, 3D 비디오들은 이어서, 컴퓨터 디스플레이와 같은, 디스플레이 상에서 인간 주석 작성자들에게 제시된다.
프로세스(1100)는, 규칙집을 사용하여, 실현 세트를 궤적이 규칙집 내의 상이한 규칙들을 얼마나 잘 준수하는지에 대응하는 각각의 실현에 대한 점수 세트로 변환하는 것으로 계속된다(1102). 일 실시예에서, 실현들은 규칙집으로부터 취해지는 규칙들의 모음에 임베딩되며, 여기서 규칙집은 정확한 수학적 규칙들로 변환되는 교통 법규들, 도로 규칙들 및 이해관계자 요구 사항들의 모음을 포함한다. 각각의 실현에 대한 점수 세트가 있으며, 여기서 세트 내의 각각의 특정 점수는 궤적이 특정의 대응하는 규칙을 얼마나 잘 준수하는지를 나타낸다. 일 실시예에서, 계획 모듈은 각각의 궤적에 대한 모든 점수들을 가산할 것이고, 가장 높은 총 점수를 갖는 궤적이 특정 교통 시나리오에 대한 AV에 대한 "최상의" 궤적으로서 선택될 것이다. 그렇지만, 동일한 점수들을 가지는 다수의 후보 궤적들이 이용 가능한 경우, 다음 프로세스 단계에서 설명되는 바와 같이, 가장 합리적인 궤적을 선택하는 데 도움이 되는 합리적인 점수들을 살펴볼 수 있다.
프로세스(1100)는, 입력으로서 점수 세트를 갖는 머신 러닝 모델을 사용하여, 실현 세트에 대한 합리성 점수들을 예측하는 것으로 계속된다(1103). 머신 러닝 모델은 선형 SVM을 포함하지만 이에 제한되지 않는, 합리성 점수들을 예측하도록 트레이닝될 수 있는 임의의 모델일 수 있거나, 또는 실현들이 의사 이미지에 임베딩되는 경우, 예를 들어, CNN일 수 있다.
프로세스(1100)는 각각의 실현의 합리성을 나타내는 복수의 인간 주석 작성자들로부터의 주석들을 획득하는 것으로 계속된다(1104). 예를 들어, 도 6을 참조하여 설명된 바와 같이, 실현 쌍들은 2차원(2D) 또는 3D 비디오들로 렌더링되어 복수의 주석 작성자들에게 제시될 수 있다. 주석 작성자들은 가장 합리적이라고 생각하는 쌍의 실현을 선택하도록 요청받는다. 실현 쌍은 동일한 교통 시나리오 또는 상이한 교통 시나리오들을 포함할 수 있다.
프로세스(1100)는 주석들에 적어도 부분적으로 기초하여 정답 데이터를 생성하는 것으로 계속된다(1105). 예를 들어, 주석 작성자가 제1 실현을 선호하는 경우 제1 값(예를 들면, +1)을 출력하고 그렇지 않은 경우 다른 값(예를 들면, -1)을 출력하는 함수에 의해 주석들이 인코딩될 수 있다. 이 함수는 그러면, 예를 들어, Bradley-Terry 모델과 같은, 확률적 전이 모델들을 사용하여 정답 데이터를 생성하는 데 사용될 수 있다.
프로세스(1100)는 정답 데이터 및 예측된 합리성 점수들의 손실 함수를 최소화하는 것으로 계속되며, 여기서 손실 함수는 규칙집 구조를 위반하는 합리성 점수들의 예측들에 페널티를 부과한다(1106). 일 실시예에서, 힌지 손실 함수가 목적 함수로서 사용될 수 있다. 다른 예에서, 슬랙을 허용하는 손실 함수가 사용될 수 있다. 또 다른 실시예에서, L1 손실 또는 L2 손실, 또는 L1 손실과 L2 손실의 조합(평활화된 L1 손실)이 사용될 수 있다.
프로세스(1100)는 최소화된 손실 함수의 출력에 기초하여 머신 러닝 모델의 파라미터들을 결정하는 것으로 계속된다(1107). 예를 들어, 합리성 점수 차이(differential reasonableness score)가 최소화될 수 있다.
일부 실시예들에서, AV의 궤적을 결정하는 것은 위에서 설명된 바와 같은 다른 고려 사항들 외에도 승객(들)의 승차감을 고려하는 것을 포함한다. 본 명세서에 설명된 바와 같은 ML 모델은, 예를 들어, 적어도 하나의 요인에 기초하여 생성되는 메트릭들에 기초하여 합리성 점수들을 예측할 수 있다. 예들에서, 도 7에 예시된 바와 같이 승객 편안함은 우선순위가 낮은 규칙(low priority rule)이다. 실시예들에서, 승객 편안함과 연관된 메트릭들은 규칙집에 구체화된 규칙 세트에 포함된다. 추가적으로, 예들에서 승객 편안함과 연관된 메트릭들이 각기의 실현들에 할당된다. 본 기술들은 승객의 승차감을 특성화하는 요소들에 순위를 부여하고, 해석 가능한 형태의 상충되는 편안함들 사이의 명백한 충돌을 해결할 수 있게 한다.
실시예들에서, 본 기술들은 운동학적 요인들에 기초하여 메트릭들을 생성하고 요인들 간의 트레이드오프들의 해석 가능한 캡처를 가능하게 한다. 예를 들어, 운동학적 요인 세트는 승객 편안함에 대한 각각의 요인의 영향에 기초하여 순위가 부여된다. 요인들은 각각의 요인에 대한 경험적 또는 인간이 채택한 기준들을 사용하여 정량화된다. 예들에서, 요인들은 하나 이상의 콘텍스트와 연관된다. 실시예들에서, 본 기술들은 여정들을 계획하기 위해, AV를 제어하기 위해, 및/또는 요인들의 순위 부여를 통한 추가적인 트레이닝, 머신 러닝 또는 다른 지능에 대한 피드백 목적으로 상충되는 승차감 요인들(즉, 운동학적 요인들)을 해결한다.
본 기술들은 편안함 메트릭을 생성할 때 각각의 요인의 상대적 중요도를 지시하는 우선순위 구조에서 개별 운동학적 요인들의 계층구조를 설정한다. 이 계층구조는 적어도 부분적으로 설문조사 중심 응답(survey-oriented response)을 사용한 대규모 연구를 기반으로 한다. (1) 승차감에 영향을 미치는 개별 동적 요인들의 식별, (2) AV 스택에 대한 기여 및 의사 결정을 지시하는 계층구조의 생성(예를 들면, 도 2의 자율 주행 차량 컴퓨트(202f)), 및 (3) 자연주의적 운전 연구 및 도로변 계측에 기초한 승차감의 기준 정의들을 안내하는 것을 포함하는 프레임워크가 승차감을 조사하기 위해 생성된다.
실시예들에서, 운동학적 요인들은 AV와 환경 사이의 관계를 특성화한다. 실시예들에서, 운동학적 요인들은 환경을 통한 AV의 이동으로부터 도출된다. 본 명세서에서 설명되는 운동학적 요인들은 환경(예를 들면, 도 1의 환경(100))에 있는 대상체들(예를 들면, 도 1의 대상체들(104a 내지 104n))의 속성들에 의존한다. 운동학적 요인들은 아래의 도 13 내지 도 25의 예시적인 교통 시나리오들에서 추가로 설명된다. 실시예들에서, 실현 세트는 아래의 도 13 내지 도 25의 교통 시나리오들과 연관되어 있다. 대상체의 속성들은 대상체의 크기(예를 들면, 높이, 폭, 형상), 또는 대상체의 유형(예를 들면, 자전거, 차량, 교통 표지판, 보행자 등), 및/또는 대상체의 위험 등급을 지칭한다. 환경에 있는 대상체들은 도 12와 관련하여 설명된 바와 같이 위험 등급과 연관되어 있다. 위험 등급은 대상체가 얼마나 위험한 것으로 인지되는지 또는 충돌이 발생할 경우 야기될 수 있는 손상의 심각도 레벨을 나타낸다.
도 12는 본 개시의 실시예들에 따른 자율 주행 차량이 조우할 수 있는 복수의 대상체들의 위험 등급들을 예시하는 개략적인 다이어그램이다. 정적 대상체들은 상대적으로 낮은 위험 등급을 갖는다. 예를 들어, 연석(1201)은 정적이고 지면에 낮으며, 자율 주행 차량 내의 승객들의 안전에 대한 또는 다른 에이전트들(예를 들어 운전자, 보행자, 자전거 타는 사람 등)에 대한 큰 위험을 나타내지 않는다. 손상이나 부상의 인지된 위험이 증가함에 따라 위험 등급은 더 높아진다. 예를 들어, 세미 트럭(semi-truck), 버스 등과 같은, 위협적인 대상체(1202)(차량의 총 중량이 10,000 파운드 초과)는 높은 위험 등급을 갖는데, 그 이유는 자율 주행 차량이 세미 트럭과 충돌한 경우 자율 주행 차량 내의 운전자 및/또는 승객에 대해 손상 또는 부상의 인지된 위험이 높을 것이기 때문이다. 추가적으로, 세미 트럭은 승차감 측면에서 대부분의 운전자들과 승객들에게 "위협적"이다. 다른 예로서, 오토바이 타는 사람, 자전거 타는 사람, 또는 보행자와 같은, 취약한 대상체(1203)도 높은 위험 등급을 가지는데, 그 이유는 자율 주행 차량이 취약한 대상체(1203)와 충돌한 경우 취약한 대상체에 대해 손상 또는 부상의 인지된 위험이 높을 것이기 때문이다. 따라서, 취약한 대상체로부터 멀리 떨어져 더 큰 거리를 유지하는 것이 자율 주행 차량 내의 운전자 또는/및 승객에 더 편안할 수 있다. 도 12에 도시된 바와 같이, 예시적인 대상체들에 대한 위험 등급들은 다음과 같이 가장 높은 위험 등급부터 가장 낮은 위험 등급까지 순서대로 제공된다: 위협적인 대상체(1202)/취약한 대상체(1203) > 공사 구역(1204)/승용 차량(1205) > 고속도로/터널/벽(1207) > 덤불/생울타리/우체통(1206) > 연석(1201). 위협적인 대상체(1202)와 취약한 대상체(1203)는 동일한 위험 등급을 가지며; 공사 구역(1204)과 승용 차량(1205)은 동일한 위험 등급을 갖고; 고속도로, 터널 및 벽(1207)은 동일한 위험 등급을 가지며; 덤불, 생울타리 및 우체통(1206)은 동일한 위험 등급을 갖는다.
위험 등급에 의해 설정된 바와 같은 손상 및 부상의 위험에 대한 인지는 상이한 교통 시나리오들에서 어떻게 승차감을 높일지에 대한 이해를 안내한다. 추가적으로, 대상체들의 위험 등급들은 다수의 대상체들과 연관된 인지된 위험들 간의 충돌에 응답하여 자율 주행 차량을 어떻게 운행할지를 결정하는 데 사용될 수 있다. 예를 들어, 위협적인 대상체가 자율 주행 차량의 한쪽에 있는 반면 취약한 대상체가 자율 주행 차량의 다른 쪽에 있는 경우, 어느 한 대상체에 대한 근접성으로 인해 발생하는 상충되는 불편함을 처리하기 위해 자율 주행 차량을 어떻게 운행할지에 대한 결정이 대상체들의 위험 등급들에 기초하여 내려질 수 있다.
설명의 편의를 위해, 승객 편안함과 연관된 특정 운동학적 요인들이 제공된다. 그렇지만, 운동학적 요인들은 승객 편안함에 영향을 미치도록 제어되는 임의의 AV 거동을 포함할 수 있다. 예들에서, 운동학적 요인들은, 전반적인 승객 편안함에 가장 큰 영향을 미치는 것부터 전반적인 승객 편안함에 가장 적은 영향을 미치는 것까지 순서대로, (1) 주변의 정적 대상체들로부터의 최소 횡방향 이격거리(대상체 높이에 따라 다름) (2) 주변의 동적 대상체들로부터의 최소 횡방향 이격거리(대상체 높이에 따라 다름); (3) 주변의 정적 대상체들로부터의 최소 종방향 이격거리(대상체 높이 및 대상체 유형에 따라 다름); (4) 주변의 동적 대상체들로부터의 최소 종방향 이격거리(대상체 높이 및 대상체 유형에 따라 다름); (5) 종방향 속도(정적 대상체들에 대한 횡방향 이격거리에 따라 다름); (6) 주변의 도로 행위자들에 대한 상대 속도(동적 대상체들에 대한 횡방향 이격거리에 따라 다름); (7) 종방향 가속/종방향 감속(속도에 따라 다름); (8) 횡방향 가속/횡방향 감속(속도에 따라 다름); (9) 종방향 저크; (10) 횡방향 저크, (11) 횡방향 모션 안정성 및 감쇠(시간에 따른 매끄러움, 예를 들면, 스웨잉을 방지함); 및 (12) 종방향 모션 안정성/감쇠(시간에 따른 매끄러움, 여러 번의 정지/출발 브레이크 이벤트를 방지함)이다.
일부 실시예들에서, 인간이 채택한 기준은 인간 거동들의 대규모 분석에 기초하여 정의된다. 운전자들 또는/및 승객들에 대한 승차감 정도를 결정하기 위해, 운동학적 요인들이 기준과 비교될 수 있다. 예를 들어, AV가 보행자(예를 들면, 대상체)를 지나 운전하고 있을 때, 편안함 임계값을 나타내는 보행자와 AV 사이의 횡방향 이격거리는 아래와 같이 계산될 수 있으며:
(31)
여기서 Vego(t)는 AV의 속도이다. 일부 실시예들에서, 이격거리 편안함 임계값이 관련 운동학적 요인들에 적용되고 이격거리 편안함 임계값으로부터의 편차들을 정량화하는 메트릭들이 생성된다. 일부 실시예들에서, 기준 이격거리(baseline clearance)는 인간 거동의 분석을 사용하여 계산된다. 예를 들어, 기준 이격거리가 결정되고 주변의 정적 대상체들로부터의 최소 횡방향 이격거리, 주변의 동적 대상체들로부터의 최소 횡방향 이격거리, 주변의 정적 대상체들로부터의 최소 종방향 이격거리, 및 주변의 동적 대상체들로부터의 최소 종방향 이격거리와 같은 운동학적 요소들에 적용된다.
유사하게, 편안함 임계값을 나타내는 종방향 가속도는 아래와 같이 계산될 수 있다:
(32)
일부 실시예들에서, 종방향 가속 편안함 임계값이 관련 운동학적 요인들에 적용되고 종방향 가속 편안함 임계값으로부터의 편차들을 정량화하는 메트릭들이 생성된다. 일부 실시예들에서, 기준 종방향 가속도는 인간 거동의 분석을 사용하여 계산된다. 기준 종방향 가속도가 결정되고 종방향 가속 운동학적 요인에 적용된다.
편안함 임계값을 나타내는 감속도는 아래와 같이 계산될 수 있다:
(33)
일부 실시예들에서, 감속 편안함 임계값이 관련 운동학적 요인들에 적용되고 감속 편안함 임계값으로부터의 편차들을 정량화하는 메트릭들이 생성된다. 일부 실시예들에서, 기준 감속도는 인간 거동의 분석을 사용하여 계산된다. 기준 감속도가 결정되고 감속 운동학적 요인들에 적용된다.
편안함 임계값을 나타내는 횡방향 가속도는 아래와 같이 계산될 수 있다:
(34)
일부 실시예들에서, 횡방향 가속 편안함 임계값이 관련 운동학적 요인들에 적용되고 횡방향 가속 편안함 임계값으로부터의 편차들을 정량화하는 메트릭들이 생성된다. 일부 실시예들에서, 기준 횡방향 가속도는 인간 거동의 분석을 사용하여 계산된다. 기준 횡방향 가속도가 결정되고 횡방향 가속 운동학적 요인에 적용된다.
위의 이러한 예시적인 수학식 31 내지 수학식 34는 AV의 운전자들 또는/및 승객들에 대한 편안함 임계 값들을 획득하는 데 사용될 수 있다. 예를 들어, 횡방향 이격거리가 수학식 31을 통해 계산되는 이격거리 임계값보다 작은 경우, AV의 운전자들 및/또는 승객들은 불편하다고 느낄 것이다. 종방향 가속도가 수학식 32를 통해 계산되는 가속도 임계값보다 높은 경우, AV의 운전자들 및/또는 승객들은 불편하다고 느낄 것이다. 수학식 33을 통해 계산되는 감속도 임계값과 수학식 34를 통해 계산되는 횡방향 가속도 임계값에 대해서도 마찬가지이다.
실시예들에서, 각각의 요인 값은 그 각기의 편안함 임계 값과 비교될 수 있고, 승차감을 정량화하는 메트릭이 인간이 채택한 이러한 기준들, 즉 운동학적 요인 세트에 대한 편안함 임계 값들에 기초하여 운동학적 요인 세트 중 하나 이상의 운동학적 요인으로부터 도출될 수 있다.
운동학적 요인들은 도 24 및 도 25와 관련하여 설명되는 바와 같이 편안함 메트릭들을 도출하는 데 사용된다. 승차를 편안하게 또는 불편하게 만드는 것에 대한 각각의 요인의 각기의 영향의 평가를 가능하게 하기 위해 승차 품질(ride quality)의 승객 인지에 기여하는 이러한 운동학적 요인들이 식별된다. 추가적으로, 각각의 운동학적 요인 및 승차 품질에 대한 결과적인 인지를 고려하여 운전 조작, 경험, 및 상황이 평가된다. 본 명세서에 설명된 예시적인 교통 시나리오들에서, 운동학적 요인들이 서로 상충(in tension)할 수 있다. 도 13 내지 도 23과 관련하여 설명되는 바와 같이, 운동학적 요인들과 연관된 기준들(예를 들면, 편안함 임계 값들)을 결정하기 위해 교통 시나리오들 동안의 인간 거동이 획득된다. 예를 들어, 다양한 대상체들, 위험 등급들 등을 포함하는 교통 시나리오들에 응답하여, 응답자들은 편안하다고 인지되는 속도들, 가속들/감속들, 대상체 이격거리들을 갖는 시나리오들을 선택한다. 설문조사 응답자들은, 각각의 교통 시나리오가 다양한 운동학적 요인들을 포함하는 경우, 자신들이 더 편안하다고 느끼는 시나리오들을 선택하였다. 도 24 및 도 25에 도시된 바와 같이, 해당 설문조사의 결과는 각각의 요인이 전반적인 승객 편안함에 미치는 영향에 의해 순위가 부여되는 운동학적 요인들의 목록이다.
일 실시예에서, 상충되는 설정에서 운행(operation)들의 편안함에 관한 통계 데이터를 수집하기 위해 운전자들 또는/및 승객들에 대해 통계 설문조사가 수행될 수 있다. 다른 실시예에서, 상충되는 설정을 갖는 교통 시나리오들이 시뮬레이션되고, 따라서 시뮬레이션된 상충되는 설정에서 운행들의 편안함에 관한 데이터를 수집하기 위해 인간 운전자들의 인간 거동들이 (예를 들면, 카메라들에 의해) 모니터링될 수 있다. 궤적 계획을 위한 동작들은 안전성, 적법성, 승차감, 및 다른 운전 고려 사항들을 포함한 복수의 요인들에 의해 결정될 수 있다. 아래의 도 13 내지 도 23은 궤적들이 운동학적 요인들에 기초하여 결정되는 다양한 교통 시나리오들을 예시한다. 안전성과 적법성이 충족된다는 전제 하에 결정이 내려진다.
도 13a 내지 도 13k는 본 개시의 실시예들에 따른 횡방향 이격거리에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다. 예들에서, 도 13a 내지 도 13k는 운동학적 요인인 주변의 정적 대상체들로부터의 최소 횡방향 이격거리를 유지하는 것의 영향을 운동학적 요인인 주변의 동적 대상체들로부터의 최소 횡방향 이격거리를 유지하는 것의 상충되는 영향과 함께 예시한다. 도 13a 내지 도 13k는 자율 주행 차량이 2개의 대상체 사이를 이동하고 있는 다양한 교통 시나리오들을 예시한다. 일 실시예에서, 어느 AV 운행이 자율 주행 차량의 운전자/승객에 더 편안한지를 나타내기 위해 통계 설문조사가 수행된다. AV 운행은 자율 주행 차량과 어느 한 대상체 사이의 횡방향 이격거리를 결정하는 것에 관련되어 있다. 일반적으로, 2개의 대상체의 중앙에 있는 것(즉, 중앙성(centrality))이 운전자/승객에 바람직하다(예를 들면, 더 높은 승객 편안함을 야기한다). 그렇지만, 2개의 대상체가 상이한 위험 등급들을 가지는 경우, 운전자/승객은 더 낮은 위험 등급을 가지는 대상체에 더 가까운 것이 더 편안하다고 느낄 수 있다, 즉, 운전자/승객은 더 위험한 대상체를 피하는 것을 선호한다. 예를 들어, 자율 주행 차량이 이동하는 또는 동적 대상체보다 정적 대상체에 더 가까운 경우 운전자/승객은 더 편안하다고 느낀다.
일 실시예에서, 도 13a에 도시된 바와 같이, 자율 주행 차량(1301)이 벽(1302)(정적 대상체)과 오토바이 타는 사람(1302)(이동하는 또는 동적 대상체) 사이에서 이동하고 있는 경우, 설문조사 응답자들의 59%는 벽(1302)에 더 가까운 것이 더 편안하다고 느낀다. 일 실시예에서, 도 13b에 도시된 바와 같이, 자율 주행 차량(1301)이 벽(1302)과 세미 트럭(1304) 사이에서 이동하고 있는 경우, 설문조사 응답자들의 66%는 벽(1302)에 더 가까운 것이 더 편안하다고 느낀다. 일 실시예에서, 도 13c에 도시된 바와 같이, 자율 주행 차량(1301)이 벽(1302)과 자전거 타는 사람(1305) 사이에서 이동하고 있는 경우, 설문조사 응답자들의 58%는 벽(1302)에 더 가까운 것이 더 편안하다고 느낀다. 일 실시예에서, 도 13d에 도시된 바와 같이, 자율 주행 차량(1301)이 덤불(1306)(정적 대상체)과 승용 차량(1307)(이동하는 또는 동적 대상체) 사이에서 이동하고 있는 경우, 설문조사 응답자들의 59%는 덤불(1302)에 더 가까운 것이 더 편안하다고 느낀다. 일 실시예에서, 도 13e에 도시된 바와 같이, 자율 주행 차량(1301)이 연석(1308)과 승용 차량(1307) 사이에서 이동하고 있는 경우, 설문조사 응답자들의 63%는 연석(1308)에 더 가까운 것이 더 편안하다고 느낀다. 도 13a 내지 도 13e에 도시된 바와 같이, 설문조사 응답자들은 자율 주행 차량이 이동하는 또는 동적 대상체보다 정적 대상체에 더 가까운 경우 더 편안하다고 느끼는데, 그 이유는 정적 대상체가 취약하거나 위협적인 대상체보다 더 낮은 위험 등급을 가지기 때문이다.
일 실시예에서, 도 13f에 도시된 바와 같이, 자율 주행 차량(1301)이 공사 구역(1309)과 승용 차량(1307) 사이에서 이동하고 있는 경우, 설문조사 응답자들의 39%는 공사 구역(1309)에 더 가까운 것이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 40%는 승용 차량(1307)에 더 가까운 것이 더 편안하다고 느낀다. 공사 구역(1309)과 승용 차량(1307)은 동일한 위험 등급을 가지며, 따라서 설문 응답자들은 어느 한 대상체에 더 가깝거나 2개의 대상체의 중앙에 있는 것이 더 편안하다고 느낀다.
일 실시예에서, 도 13g에 도시된 바와 같이, 자율 주행 차량(1301)이 벽(1302)과 승용 차량(1307) 사이에서 이동하고 있는 경우, 설문조사 응답자들의 56%는 벽(1302)에 더 가까운 것이 더 편안하다고 느낀다. 벽(1302)은 단지 하나의 등급 스케일 차이(rating scale difference)로 승용 차량(1307)보다 더 낮은 위험 등급을 갖는다. 따라서, 설문조사 응답자들 중 약간 더 높은 비율만이 벽(1302)에 더 가까운 것이 더 편안하다고 느낀다. 예들에서, 중앙성(2개의 대상체의 중앙에 있음)과 회피성(avoidance)(즉, 더 위험한 대상체를 회피함) 사이에는 통계적으로 유의미한 차이가 없다.
일 실시예에서, 도 13h에 도시된 바와 같이, 자율 주행 차량(1301)이 보행자(1310)와 승용 차량(1307) 사이에서 이동하고 있는 경우, 설문조사 응답자들의 56%는 승용 차량(1307)에 더 가까운 것이 더 편안하다고 느낀다. 일 실시예에서, 도 13i에 도시된 바와 같이, 자율 주행 차량(1301)이 자전거 타는 사람(1305)과 승용 차량(1307) 사이에서 이동하고 있는 경우, 설문조사 응답자들의 52%는 승용 차량(1307)에 더 가까운 것이 더 편안하다고 느낀다. 일 실시예에서, 도 13j에 도시된 바와 같이, 자율 주행 차량(1301)이 보행자(1310)와 세미 트럭(1304) 사이에서 이동하고 있는 경우, 설문조사 응답자들의 43%는 세미 트럭(1304)에 더 가까운 것이 더 편안하다고 느낀다. 설문조사 응답자들의 43%는 보행자(1310)에 더 가까운 것이 가장 불편하다고 느낀다. 설문조사 응답자들의 43%는 세미 트럭(1304)에 더 가까운 것이 가장 불편하다고 느낀다. 일 실시예에서, 도 13k에 도시된 바와 같이, 자율 주행 차량(1301)이 자전거 타는 사람(1305)과 세미 트럭(1304) 사이에서 이동하고 있는 경우, 설문조사 응답자들의 46%는 세미 트럭(1304)에 더 가까운 것이 더 편안하다고 느낀다. 설문조사 응답자들의 40%는 자전거 타는 사람(1305)에 더 가까운 것이 가장 불편하다고 느낀다. 설문조사 응답자들의 44%는 세미 트럭(1304)에 더 가까운 것이 가장 불편하다고 느낀다. 도 13h 내지 도 13k에 도시된 바와 같이, 취약한 대상체가 2개의 대상체 중 하나인 경우, 편안함 선호 사항은, 위협 요인에 관계없이, 다른 대상체에 더 가까운 횡방향 이격거리 쪽으로 기우는 경향이 있다.
도 14a 내지 도 14c는 본 개시의 실시예들에 따른 정적 대상체들을 조우할 때 횡방향 이격거리 대 종방향 속도 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다. 예들에서, 도 14a 내지 도 14c는 운동학적 요인인 주변의 정적 대상체들로부터의 최소 횡방향 이격거리를 유지하는 것의 영향을 운동학적 요인인 종방향 속도의 상충되는 영향과 함께 예시한다. 예들에서, 정적 대상체들에 대해 최소 횡방향 이격거리를 유지할 때 속도가 증가함에 따라 승객은 더 낮은 레벨의 편안함을 경험한다. 일 실시예에서, 도 14a에 도시된 바와 같이, 자율 주행 차량(1301)이 나무(1311)를 지나 이동하고 있는 경우, 설문조사 응답자들의 54%는 자율 주행 차량(1301)의 현재 속력과 차선을 유지(종방향 속도를 유지)하는 것이 가장 불편하다고 느낀다. 설문조사 응답자들의 36%는 속력을 낮추는 것(속도 감소)이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 35%는 현재 속력을 유지하고 나무(1311)에서 더 멀리 떨어진 인접 차선으로 전환하는 것(횡방향 이격거리 증가)이 더 편안하다고 느낀다. 나무(1311)는 상대적으로 낮은 위험 등급을 갖는다. 속력을 낮추는 것과 다른 차선으로 전환하는 것 사이에는 유의미한 통계적 차이가 없다.
일 실시예에서, 도 14b에 도시된 바와 같이, 자율 주행 차량(1301)이 승용 차량(1307)을 지나 이동하고 있는 경우(예를 들면, 승용 차량(1307)이 자율 주행 차량(1301)이 이동하고 있는 차선 옆의 차선에 주차되어 있는 경우), 설문조사 응답자들의 72%는 자율 주행 차량(1301)의 현재 속력과 차선을 유지하는 것이 가장 불편하다고 느낀다. 설문조사 응답자들의 34%는 속력을 낮추는 것(속도 감소)이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 55%는 승용 차량(1307)에서 더 멀리 떨어진 인접 차선으로 전환하는 것(횡방향 이격거리 증가)이 더 편안하다고 느낀다. 승용 차량(1307)은 상대적으로 높은 위험 등급을 가지며, 더 많은 설문조사 응답자들이 현재 속력을 유지하고 다른 차선으로 전환하는 것을 선호한다.
일 실시예에서, 도 14c에 도시된 바와 같이, 자율 주행 차량(1301)이 자전거 타는 사람(1305)을 지나 이동하고 있는 경우(예를 들면, 자전거 타는 사람(1305)이 자율 주행 차량(1301)이 이동하고 있는 차선 옆의 차선에 정지해 있는 경우), 설문조사 응답자들의 77%는 자율 주행 차량(1301)의 현재 속력과 차선을 유지하는 것이 가장 불편하다고 느낀다. 설문조사 응답자들의 36%는 속력을 낮추는 것(속도 감소)이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 56%는 자전거 타는 사람(1305)에서 더 멀리 떨어진 인접 차선으로 전환하는 것(횡방향 이격거리 증가)이 더 편안하다고 느낀다. 자전거 타는 사람(1305)은 가장 높은 위험 등급을 가지며, 더 많은 설문조사 응답자들이 현재 속력을 유지하고 다른 차선으로 전환하는 것을 선호한다. 도 14a 내지 도 14c에 도시된 바와 같이, 정적 대상체를 지나갈 때 현재 속력과 차선을 유지하는 것이 설문조사 응답자들에 덜 편안하다. 정적 대상체의 위험 등급이 높을수록, 현재 속력을 유지하고 다른 차선으로 전환하는 것이 설문조사 응답자들에 더 편안하다. 설문조사 응답자들의 대부분은, 속도를 증가시키는 대신에, 차선을 전환하는 것(횡방향 이격거리 증가)을 선호한다. 정적 대상체 옆에서 AV(1301)가 빠를수록, 승객은 더 불편해질 것이다.
도 15a 내지 도 15c는 본 개시의 실시예들에 따른 이동하는 또는 동적 대상체들을 조우할 때 횡방향 가속 대 종방향 감속 및 횡방향 이격거리 대 종방향 속도에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다. 예들에서, 도 15a 내지 도 15c는 운동학적 요인인 횡방향 가속의 영향을 운동학적 요인인 종방향 감속의 상충되는 영향과 함께 예시한다. 도 15a 내지 도 15c는 또한 운동학적 요인인 횡방향 이격거리의 영향을 운동학적 요인인 종방향 속도의 상충되는 영향과 함께 예시한다. 예들에서, 동적 대상체들에 대해 횡방향 이격거리를 유지할 때 속도가 증가함에 따라 승객은 더 낮은 레벨의 편안함을 경험한다. 일 실시예에서, 도 15a에 도시된 바와 같이, 승용 차량(1307)이 자율 주행 차량(1301)이 이동하고 있는 차선으로 합류하는 경우, 설문조사 응답자들의 73%는 자율 주행 차량(1301)의 현재 속력과 차선을 유지하는 것(안정적인 종방향 이동)이 가장 불편하다고 느낀다. 설문조사 응답자들의 36%는 속력을 낮추는 것(속도 감소)이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 57%는 현재 속력을 유지하고 승용 차량(1307)에서 더 멀리 떨어진 인접 차선으로 전환하는 것(횡방향 이격거리 증가)이 더 편안하다고 느낀다.
일 실시예에서, 도 15b에 도시된 바와 같이, 자전거 타는 사람(1305)이 자율 주행 차량(1301)이 이동하고 있는 차선으로 합류하는 경우, 설문조사 응답자들의 77%는 자율 주행 차량(1301)의 현재 속력과 차선을 유지하는 것이 가장 불편하다고 느낀다. 설문조사 응답자들의 37%는 속력을 낮추는 것(속도 감소)이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 55%는 자전거 타는 사람(1305)에서 더 멀리 떨어진 인접 차선으로 전환하는 것(횡방향 이격거리 증가)이 더 편안하다고 느낀다.
일 실시예에서, 도 15c에 도시된 바와 같이, 세미 트럭(1304)이 자율 주행 차량(1301)이 이동하고 있는 차선으로 합류하는 경우, 설문조사 응답자들의 75%는 자율 주행 차량(1301)의 현재 속력과 차선을 유지하는 것이 가장 불편하다고 느낀다. 설문조사 응답자들의 31%는 속력을 낮추는 것(속도 감소)이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 61%는 세미 트럭(1304)에서 더 멀리 떨어진 인접 차선으로 전환하는 것(횡방향 이격거리 증가)이 더 편안하다고 느낀다. 도 15a 내지 도 15c에 도시된 바와 같이, 움직이는 또는 동적 대상체들은 정적 대상체들보다 더 위험하다. 동적 대상체가 자율 주행 차량(1301)이 이동하고 있는 차선으로 합류할 때, 설문조사 응답자들은, 속력을 낮추기보다는, 현재 속력을 유지하고 다른 차선으로 전환하는 것을 선호한다. 현재 속력을 유지하고 다른 차선으로 전환하는 것에 대한 이러한 선호는 움직이는 또는 동적 대상체가 "위협적"일 때 더욱 두드러진다. 설문조사 응답자들의 압도적 다수는 움직이는 또는 동적 대상체에 반응하는 것을 선호한다.
도 16a 내지 도 16c는 본 개시의 실시예들에 따른 종방향 가속 대 종방향 감속 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다. 예들에서, 도 16a 내지 도 16c는 운동학적 요인인 종방향 가속의 영향을 운동학적 요인인 종방향 감속의 상충되는 영향과 함께 예시한다. 일 실시예에서, 도 16a에 도시된 바와 같이, 승용 차량(1307)이 자율 주행 차량(1301)이 이동하고 있는 차선으로 합류하는 경우, 설문조사 응답자들의 54%는 자율 주행 차량(1301)의 현재 속력을 유지하는 것 가장 덜 편안하다고 느낀다. 설문조사 응답자들의 65%는 속력을 낮추는 것(종방향 감속)이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 22%는 속력을 높이는 것(종방향 가속)이 더 편안하다고 느낀다.
일 실시예에서, 도 16b에 도시된 바와 같이, 세미 트럭(1304)이 자율 주행 차량(1301)이 이동하고 있는 차선으로 합류하는 경우, 설문조사 응답자들의 65%는 자율 주행 차량(1301)의 현재 속력을 유지하는 것이 가장 덜 편안하다고 느낀다. 설문조사 응답자들의 54%는 속력을 낮추는 것(종방향 감속)이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 36%는 속력을 높이는 것(종방향 가속)이 더 편안하다고 느낀다.
일 실시예에서, 도 16c에 도시된 바와 같이, 자전거 타는 사람(1305)이 자율 주행 차량(1301)이 이동하고 있는 차선으로 합류하는 경우, 설문조사 응답자들의 57%는 자율 주행 차량(1301)의 현재 속력을 유지하는 것이 가장 덜 편안하다고 느낀다. 설문조사 응답자들의 54%는 속력을 낮추는 것(종방향 감속)이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 35%는 속력을 높이는 것(종방향 가속)이 더 편안하다고 느낀다. 도 16a 내지 도 16c에 도시된 바와 같이, 이동하는 대상체가 자율 주행 차량(1301)이 이동하고 있는 단일 차선으로 합류할 때, 가장 편안한 옵션은 속력을 낮추고 이동하는 대상체가 차선으로 합류하도록 허용하는 것이다. 합류하는 대상체가 더 "위험"할 때, 설문조사 응답자들의 약간 더 높은 비율이 가속하는 것을 선호한다.
도 17a 내지 도 17c는 본 개시의 실시예들에 따른 종방향 이격거리 대 종방향 감속(매끄럽게 또는 저크) 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다. 예들에서, 도 17a 내지 도 17c는 운동학적 요인인 주변의 동적 대상체들로부터의 최소 종방향 이격거리의 영향을 운동학적 요인인 종방향 저크의 상충되는 영향과 함께 예시한다. 일 실시예에서, 도 17a에 도시된 바와 같이, 자율 주행 차량(1301)은 차선에서 이동하고 있고, 제1 승용 차량(1307)은 동일한 차선에서 자율 주행 차량(1301) 앞에서 이동하고 있다. 제2 승용 차량(1307)이 자율 주행 차량(1301)과 제1 승용 차량(1307) 사이에 합류하고 있다. 설문조사 응답자들의 67%는 매끄럽게 속력을 낮추는 것이 더 편안하다고 느끼며, 따라서 제2 승용 차량(1307)이 합류하고 있을 때 자율 주행 차량(1301)은 제2 승용 차량(1307)에 가까이 있을 수 있다. 자율 주행 차량(1301)과 제2 승용 차량(1307)은 유사한 차종이고 동일한 위험 등급을 가지며, 따라서 더 많은 설문조사 응답자들은 차간 거리(following distance)(종방향 이격거리)를 유지하지 않는 것이 편안하고, 매끄러운 승차를 선호한다.
일 실시예에서, 도 17b에 도시된 바와 같이, 자율 주행 차량(1301)은 차선에서 이동하고 있고, 승용 차량(1307)은 동일한 차선에서 자율 주행 차량(1301) 앞에서 이동하고 있다. 세미 트럭(1304)이 자율 주행 차량(1301)과 승용 차량(1307) 사이에 합류하고 있다. 설문조사 응답자들의 55%는 매끄럽게 속력을 낮추는 것이 더 편안하다고 느끼며, 따라서 세미 트럭(1304)이 합류하고 있을 때 자율 주행 차량(1301)이 세미 트럭(1304)에 가까울 수 있는 반면; 설문조사 응답자들의 45%는 세미 트럭(1304)이 합류할 충분한 공간(room)(종방향 이격거리)을 허용하기 위해 브레이크를 세게 밟는 것(저크)이 더 편안하다고 느낀다. 위협적인 대상체의 경우, 설문조사 응답자들의 조금 더 높은 비율이 매끄러운 승차로 편안하다. 그렇지만, 위협적인 대상체를 위한 더 많은 공간을 제공하기 위해, 브레이크를 세게 밟아 급격하게 속력을 낮추는 것이 더 편안한 상당한 수의 설문조사 응답자들도 있다.
일 실시예에서, 도 17c에 도시된 바와 같이, 자율 주행 차량(1301)은 차선에서 이동하고 있고, 승용 차량(1307)은 동일한 차선에서 자율 주행 차량(1301) 앞에서 이동하고 있다. 자전거 타는 사람(1305)이 자율 주행 차량(1301)과 승용 차량(1307) 사이에 합류하고 있다. 설문조사 응답자들의 52%는 자전거 타는 사람(1305)이 합류할 충분한 공간(종방향 이격거리)을 허용하기 위해 브레이크를 세게 밟는 것(저크)이 더 편안하다고 느낀다. 취약한 대상체의 경우, 설문조사 응답자들의 더 높은 비율은 취약한 대상체를 피하는 것, 즉, 자율 주행 차량(1301)과 취약한 대상체 사이에 더 많은 거리를 유지하는 것이 더 편안하다.
도 18a 내지 도 18c는 본 개시의 실시예들에 따른 종방향 이격거리 대 횡방향 이격거리 옵션들에 관한 다양한 교통 시나리오들을 예시하는 개략적인 다이어그램들이다. 예들에서, 도 18a 내지 도 18c는 운동학적 요인인 주변의 동적 대상체들로부터의 최소 종방향 이격거리의 영향을 운동학적 요인인 주변의 동적 대상체들로부터의 최소 횡방향 이격거리의 상충되는 영향과 함께 예시한다. 일 실시예에서, 도 18a에 도시된 바와 같이, 자율 주행 차량(1301)은 차선에서 이동하고 있고, 제1 승용 차량(1307)은 동일한 차선에서 자율 주행 차량(1301) 앞에서 이동하고 있다. 제2 승용 차량(1307)이 인접 차선에서 자율 주행 차량(1301) 옆에서 이동하고 있다. 설문조사 응답자들의 51%는 제1 승용 차량(1307)을 바짝 따라가는 것이 불편하다고 느낀다. 설문조사 응답자들의 27%는 이 위치를 유지하는 것을 선호하는 반면, 설문조사 응답자들의 49%는 승용 차량들(즉, 제1 승용 차량(1307) 및 제2 승용 차량(1307)) 양쪽 모두로부터 더 멀리 떨어져 있는 것을 선호한다.
일 실시예에서, 도 18b에 도시된 바와 같이, 자율 주행 차량(1301)은 차선에서 이동하고 있고, 승용 차량(1307)은 동일한 차선에서 자율 주행 차량(1301) 앞에서 이동하고 있다. 세미 트럭(1304)이 인접 차선에서 자율 주행 차량(1301) 옆에서 이동하고 있다. 설문조사 응답자들의 54%는 승용 차량(1307)을 바짝 따라가는 것이 불편하다고 느낀다. 설문조사 응답자들의 28%는 이 위치를 유지하는 것을 선호하는 반면, 설문조사 응답자들의 51%는 차량들(즉, 승용 차량(1307) 및 세미 트럭(1304)) 양쪽 모두로부터 더 멀리 떨어져 있는 것을 선호한다.
일 실시예에서, 도 18c에 도시된 바와 같이, 자율 주행 차량(1301)은 차선에서 이동하고 있고, 제1 세미 트럭(1304)은 동일한 차선에서 자율 주행 차량(1301) 앞에서 이동하고 있다. 제2 세미 트럭(1304)이 인접 차선에서 자율 주행 차량(1301) 옆에서 이동하고 있다. 설문조사 응답자들의 60%는 제1 세미 트럭(1304)을 바짝 따라가는 것이 불편하다고 느낀다. 설문조사 응답자들의 22%는 이 위치를 유지하는 것을 선호하는 반면, 설문조사 응답자들의 60%는 세미 트럭들(즉, 제1 세미 트럭(1304) 및 제2 세미 트럭(1304)) 양쪽 모두로부터 더 멀리 떨어져 있는 것을 선호한다. 도 18a 내지 도 18c에 도시된 바와 같이, 위협적인 대상체들 또는/또는 위협적이지 않은 대상체들인지에 관계없이, 차량들 양쪽 모두에서 더 멀리 떨어져 있는 것이 설문조사 응답자들에 더 편안하다. 설문조사 응답자들은 세미 트럭들이나 다른 위협적인 대상체들(위협적인 도로 행위자들 또는 도로 에이전트들)에 대해 덜 편안하다고 느낀다. 설문조사 응답자들은, 앞에 있는 대상체가 위협적인지 여부에 관계없이, 자율 주행 차량(1301)이 대상체를 바짝 따라갈 때 가장 불편하다고 느낀다.
도 19a 및 도 19b는 본 개시의 실시예들에 따른, 종방향 감속(매끄럽게 또는 저크) 대 종방향 속도에 관한 두 가지 교통 시나리오를 예시하는 개략적인 다이어그램들이다. 예들에서, 도 19a 및 도 19b는 운동학적 요인인 종방향 저크의 영향을 운동학적 요인인 종방향 속도의 상충되는 영향과 함께 예시한다. 예들에서, 저크가 발생할 때 자율 주행 차량(1301)이 높은 속도로 이동하고 있는 경우 승객은 더 낮은 레벨의 편안함을 경험한다. 일 실시예에서, 도 19a에 도시된 바와 같이, 자율 주행 차량(1301)은 최대 제한 속도가 시속 40 마일인 구역으로부터 최대 제한 속도가 시속 25 마일인 구역으로 진입하고 있다. 설문조사 응답자들의 88%는, 자율 주행 차량(1301)이 일시적으로 시속 25 마일 초과일지라도, 매끄럽게 속력을 낮추는 것이 더 편안하다고 느낀다. 그렇지만, 도 7에 도시된 바와 같이, 승객 편안함은 교통 법규를 준수하는 것(예를 들면, 제한 속도 위반)에 비해 우선순위가 낮은 규칙이다. 제한 속도의 교통 법규를 따르기 위해, 승차감을 여전히 유지하면서, 자율 주행 차량(1301)은 새로운 제한 속도 구역(시속 25 마일)에 진입하기 전에 미리 계획을 세우고 차량 속력을 줄일 수 있다. 따라서, 자율 주행 차량(1301)은 종방향 저크를 방지함으로써, 차량의 승차 매끄러움(ride smoothness)을 유지할 수 있다.
일 실시예에서, 도 19b에 도시된 바와 같이, 자율 주행 차량(1301)은 최대 제한 속도가 시속 70 마일인 구역으로부터 최대 제한 속도가 시속 50 마일인 구역으로 진입하고 있다. 설문조사 응답자들의 86%는, 자율 주행 차량(1301)이 일시적으로 시속 50 마일 초과일지라도, 매끄럽게 속력을 낮추는 것이 더 편안하다고 느낀다. 도 19a 및 도 19b에 도시된 바와 같이, 자율 주행 차량(1301)이 갑작스런 제한 속도 감소를 적용받는 경우, 설문조사 응답자들은, 전자의 옵션으로 게시된 제한 속도가 일시적으로 초과하게 될지라도, 급제동하는 것보다 매끄럽게 속력을 낮추는 것이 더 편안하다고 느낀다. 그렇지만, 도 7에 도시된 바와 같이, 승객 편안함은 교통 법규를 준수하는 것(예를 들면, 제한 속도 위반)에 비해 우선순위가 낮은 규칙이다. 제한 속도의 교통 법규를 따르기 위해, 승차감을 여전히 유지하면서, 자율 주행 차량(1301)은 새로운 제한 속도 구역(시속 25 마일 또는 시속 50 마일)에 진입하기 전에 미리 계획을 세우고 차량 속력을 줄일 수 있다. 따라서, 자율 주행 차량(1301)은 종방향 저크를 방지함으로써, 차량의 승차 매끄러움을 유지할 수 있다.
도 20은 본 개시의 실시예들에 따른 교차로에서의 가속 대 감속 옵션들에 관한 교통 시나리오를 예시하는 개략적인 다이어그램이다. 예들에서, 도 20은 운동학적 요인인 종방향 가속의 영향을 운동학적 요인인 종방향 저크의 상충되는 영향과 함께 예시한다. 일 실시예에서, 도 20에 도시된 바와 같이, 자율 주행 차량(1301)은 황색 교통 신호등이 켜졌을 때 교차로를 향해 운전하고 있다. 설문조사 응답자들의 54%는 교차로를 통과하기 위해 속력을 높이는 것이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 45%는 잠재적인 적색 신호등을 무시하고 달리는 것을 피하기 위해 급제동하는 것이 더 편안하다고 느낀다. 도 20에 도시된 바와 같이, 설문조사 응답자들은 잠재적인 적색 신호등을 무시하고 달리는 것을 피하기 위해 급제동하는 것보다는 교차로를 통과하기 위해 속력을 높이는 것이 더 편안하다고 느낀다. 그렇지만, 도 7에 도시된 바와 같이, 승객 편안함은 교통 법규를 준수하는 것(예를 들면, 적색 신호등을 무시하고 달리는 것을 피하는 것)에 비해 우선순위가 낮은 규칙이다. 일부 구현들에서, 교통 법규를 따르기 위해, 승차감을 여전히 유지하면서, 자율 주행 차량(1301)은 교차로에 도착하기 전에 미리 계획을 세우고 차량 속력을 줄일 수 있다. 따라서, 자율 주행 차량(1301)은 교차로에서 종방향 저크(급제동)를 피할 수 있음으로써, 차량의 승차 매끄러움을 유지할 수 있다. 일부 구현들에서, 자율 주행 차량(1301)은, 교차로에서 급제동을 피하기 위해(종방향 가속이 종방향 저크보다 바람직함), 황색 신호등이 켜져 있을 때 교차로를 통과하기 위해 가속한다.
도 21은 본 개시의 실시예들에 따른 상대 속도 대 종방향 속도 옵션들에 관한 교통 시나리오를 예시하는 개략적인 다이어그램이다. 예들에서, 도 21은 운동학적 요인인 주변의 도로 행위자들에 대한 상대 속도의 영향을, 운동학적 요인인 종방향 속도의 상충되는 영향과 함께, 예시한다. 예들에서, 승객은 속도가 다른 차량들의 상대 속도(예를 들면, 교통 흐름)와 점점 더 달라짐에 따라 더 낮은 레벨의 편안함을 경험한다. 일 실시예에서, 도 21에 도시된 바와 같이, 자율 주행 차량(1301)은 차선에서 시속 40 마일로 이동하고 있다. 자율 주행 차량(1301)은 인접 차선에서 시속 25 마일로 이동하는 교통 흐름을 지나 이동하고 있다. 설문조사 응답자들의 51%는 시속 40 마일의 동일한 속력을 유지하면서 교통 흐름을 지나 이동하는 것이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 49%는 속력을 낮추는 것이 더 편안하다고 느낀다. 설문조사 응답자들의 49% 중에서, 설문조사 응답자들의 21%는 시속 25 마일(주변 교통 흐름과 동일한 속력)로 속력을 낮추는 것을 선호하는 반면, 설문조사 응답자들의 29%는 시속 30 마일(인접 교통 흐름보다 약간 더 높은 속력)로 속력을 낮추는 것을 선호한다. 도 21에 도시된 바와 같이, 설문조사 응답자들은 더 느리게 이동하고 있는 인접 교통 흐름을 지나 운전할 때 승차감과 관련하여 의견이 나누어졌다. 설문조사 응답자들의 51%는, 교통 흐름의 더 낮은 속력에 관계없이, 동일한 속력(예를 들면, 시속 40 마일)으로 교통 흐름을 지나 이동하는 것을 선호하고; 설문조사 응답자들의 거의 동일한 비율(49%)은 속력을 낮추는 것을 선호한다.
도 22a 및 도 22b는 본 개시의 실시예들에 따른 횡방향 이격거리 대 스웨잉 옵션들에 관한 두 가지 교통 시나리오를 예시하는 개략적인 다이어그램들이다. 예들에서, 스웨잉은 주행 차선을 따른 횡방향 이동을 지칭하며, 여기서 이동은 반복적이거나 리드미컬하거나 주기적이다. 예들에서, 도 22a 및 도 22b는 운동학적 요인인 횡방향 이격거리를 유지하는 것의 영향을, 운동학적 요인인 횡방향 저크의 상충되는 영향과 함께, 예시한다.
일 실시예에서, 도 22a에 도시된 바와 같이, 자율 주행 차량(1301)은 좌측 인접 차선에 있는 승용 차량(1307)과 우측 인접 차선에 있는 세미 트럭(1304) 사이의 차선에서 이동하고 있다. 설문조사 응답자들의 46%는 매끄러운 직진 주행을 유지하는 것이 가장 불편하다고 느낀다. 설문조사 응답자들의 51%는 위협적인 대상체(즉, 세미 트럭(1304))를 피하는 것이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 23%는 대상체들 양쪽 모두로부터 멀리 떨어져 스웨잉하는 것이 더 편안하다고 느낀다.
일 실시예에서, 도 22b에 도시된 바와 같이, 자율 주행 차량(1301)은 좌측 인접 차선에 있는 승용 차량(1307)과 우측 인접 차선에 있는 자전거 타는 사람(1305) 사이의 차선에서 이동하고 있다. 설문조사 응답자들의 51%는 매끄러운 직진 주행을 유지하는 것이 가장 불편하다고 느낀다. 설문조사 응답자들의 48%는 취약한 대상체(즉, 자전거 타는 사람(1305))를 피하는 것이 더 편안하다고 느끼는 반면, 설문조사 응답자들의 33%는 대상체들 양쪽 모두로부터 멀리 떨어져 스웨잉하는 것이 더 편안하다고 느낀다. 도 22a 및 도 22b에 도시된 바와 같이, 자율 주행 차량(1301)이 2개의 대상체(도로 행위자 또는 도로 에이전트) 사이에서 운전해야 할 때, 설문조사 응답자들의 대부분은 "위험한" 대상체들(취약한 대상체들 또는 위협적인 대상체들), 특히 취약한 대상체를 피하거나 그로부터 멀리 떨어져 스웨잉하는 것이 더 편안하다고 느낀다. 설문조사 응답자들의 대부분은 매끄러운 직진 주행을 유지하는 것이 가장 덜 편안하다.
도 23a 및 도 23b는 본 개시의 실시예들에 따른 종방향 저크 대 종방향 이격거리/횡방향 이격거리/종방향 모션 안정성에 관한 교통 시나리오를 예시하는 개략적인 다이어그램들이다. 예들에서, 도 23a 및 도 23b는 운동학적 요인인 종방향 저크의 영향을, 운동학적 요인들인 주변의 동적 대상체들로부터의 최소 종방향 이격거리, 주변의 동적 대상체들로부터의 최소 횡방향 이격거리, 및 종방향 모션 안정성의 상충되는 영향들과 함께, 예시한다. 일 실시예에서, 도 23a에 도시된 바와 같이, 자율 주행 차량(1301)은 한 줄로 늘어선 승용 차량들(1307)에 접근하고 있다(한 줄로 늘어선 승용 차량들(1307)은 자율 주행 차량(1301)보다 더 느리게 이동한다). 다른 승용 차량(1307)이, 제한 속도가 시속 70 마일인, 우측 인접 차선에서 이동하고 있다. 설문조사 응답자들의 67%는, 승용 차량(1307)이 우측 인접 차선에서 시속 70 마일의 속력으로 이동하고 있더라도, 자율 주행 차량(1301)의 속력을 유지하고 우측 인접 차선으로 전환하는 것(횡방향 가속)이 더 편안하다고 느낀다.
일 실시예에서, 도 23b에 도시된 바와 같이, 설문조사 응답자들의 68%는, 승용 차량(1307)이 우측 인접 차선에서 시속 30 마일의 속력으로 이동하고 있더라도(우측 인접 차선의 제한 속도는 시속 30 마일임), 자율 주행 차량(1301)의 속력을 유지하고 우측 인접 차선으로 전환하는 것(횡방향 가속)이 더 편안하다고 느낀다. 도 23a 및 도 23b에 도시된 바와 같이, 더 느리게 이동하고 있는 한 줄로 늘어선 차량들에 접근할 때, 설문조사 응답자들의 대부분은 차선을 변경할 때에도 속력을 유지하는 것이 더 편안하다고 느낀다. 이러한 선호도는 전환하려는 차선에서의 교통의 속력에 따라 변경되지 않는다. 전반적으로, 설문조사 응답자들의 대부분에 의해 급제동은 덜 편안한 것으로 인지된다.
도 24는 본 개시의 실시예들에 따른 승차감에 기초한 운행 선호 사항들을 예시하는 개략적인 다이어그램이다. 이러한 운행 선호 사항들은, 승차감에 관한 한, 상충되는 관심사들 간의 충돌을 해결하는 데 사용될 수 있다. 운행 선호 사항들 순위는 특정 교통 시나리오들에서 자율 주행 차량(AV)을 제어하기 위한 제어 파라미터들 및 다른 유형의 메트릭들로 변환될 수 있다. AV의 궤적은, 안전성 및 적법성 고려 사항들과 같은, 여러 요인들의 영향을 받을 수 있다. 승차감은 AV 궤적 계획을 추가로 보강하는 추가적인 요인일 수 있다.
일 실시예에서, 횡방향 가속(2401)은 설문조사 응답자들의 대부분에게 종방향 감속(2402)보다 더 편안한 옵션이다. 도 15a 내지 도 15c에 도시된 바와 같이, 설문조사 응답자들의 대부분은 매끄럽게 속력을 낮추는 것(종방향 감속(2402))보다 차선을 변경하고 AV의 동일한 속력을 유지하는 것(횡방향 가속(2401))이 더 편안하다고 느낀다.
일 실시예에서, 종방향 감속(2402)은 설문조사 응답자들의 대부분에게 종방향 가속(2403)보다 더 편안한 옵션이다. 도 16a 내지 도 16c에 도시된 바와 같이, 설문조사 응답자들의 대부분은 속력을 높여(종방향 가속(2403)) 후방의 공간을 포기하는 것보다 매끄럽게 속력을 낮추어(종방향 감속(2402)) 전방에 공간을 제공하는 것이 더 편안하다고 느낀다.
일 실시예에서, 종방향 가속(2403)은 설문조사 응답자들의 대부분에게 종방향 저크(2404)보다 더 편안한 옵션이다. 도 20에 도시된 바와 같이, 설문조사 응답자들의 대부분은 잠재적인 적색 신호등을 무시하고 달리는 것을 피하기 위해 급제동하는 것(종방향 저크(2404))보다 속력을 높여(종방향 가속(2403)) 교차로를 통과(황색 신호등에서 "통과")하는 것이 더 편안하다고 느낀다.
전반적으로, 종방향 모션 안정성을 유지하는 것이 종방향에서의 급격한 변경(종방향 저크)보다 더 편안하다. 매끄럽게 속력을 낮추는 것은 (안전성 요인이 중요한 역할을 하고 급제동이 필요하지 않는 한) 차간 거리를 유지하기 위해 급제동하는 것보다 훨씬 더 편안하다.
도 25는 본 개시의 실시예들에 따른 승차감에 기초한 운행 선호 사항들을 예시하는 개략적인 다이어그램이다. 일 실시예에서, 종방향 모션 안정성(2501)(도출된 메트릭)을 유지하는 것이 가장 편안한 옵션이다. 차간 거리를 유지하기 위해 급제동하는 것보다 매끄럽게 속력을 낮추는 것이 훨씬 더 편안하다. 도 23a 및 도 23b에 도시된 바와 같이, 속력을 유지하고 인접 차선으로 전환하는 것이 더 편안하다. 설문조사 응답자들의 대부분에 의해 급제동은 덜 편안한 것으로 인지된다.
양호한 차간 거리(종방향 이격거리)는 양호한 횡방향 이격거리보다 편안함에 더 중요하다. 일 실시예에서, 설문조사 응답자들의 대부분에게 주변의 동적 대상체들로부터의 종방향 이격거리(2502)가 더 큰 것은 주변의 동적 대상체들로부터의 횡방향 이격거리(2503)가 더 큰 것보다 더 편안한 옵션이다. 도 18a 내지 도 18c에 도시된 바와 같이, 앞 차량을 바짝 따라가는 것이 가장 불편하다.
일 실시예에서, 설문조사 응답자들의 대부분에게 주변의 동적 대상체들로부터의 횡방향 이격거리(2503)가 더 큰 것은 주변의 정적 대상체들로부터의 횡방향 이격거리(2504)가 더 큰 것보다 더 편안한 옵션이다. 도 13a 내지 도 13g에 도시된 바와 같이, 설문조사 응답자들의 대부분은, 정적 대상체들이 동적 대상체들보다 더 낮은 위험 등급을 갖기 때문에, 동적 대상체들보다 정적 대상체들에 더 가까이 있는 것이 더 편안하다고 느낀다. 더 위험한 대상체들로부터 더 많은 거리를 유지하는 것이 더 안전한 대상체들로부터 더 많은 거리를 유지하는 것보다 더 편안하다.
일 실시예에서, 설문조사 응답자들의 대부분에게 주변의 정적 대상체들로부터의 횡방향 이격거리(2504)가 더 큰 것은 현재 속력과 차선(종방향 속도(2505))을 유지하는 것보다 더 편안한 옵션이다. 도 14a 내지 도 14c에 도시된 바와 같이, 설문조사 응답자들의 대부분은 현재 속력과 차선을 유지하는 것이 가장 불편하다고 느낀다. 주변의 정적 대상체가 있을 때, 설문조사 응답자들의 대부분은 정적 대상체로부터 멀리 떨어져 있는 것(주변의 정적 대상체들로부터의 횡방향 이격거리(2504)가 더 큰 것)을 선호한다.
일 실시예에서, 설문조사 응답자들의 대부분에게 주변의 대상체들로부터의 횡방향 이격거리(주변의 정적 대상체들로부터의 횡방향 이격거리(2504) 또는 주변의 동적 대상체들로부터의 횡방향 이격거리(2503))가 더 큰 것은 현재 속력과 차선을 유지하는 것(횡방향 모션 안정성(2506))보다 더 편안한 옵션이다. 도 22a 및 도 22b에 도시된 바와 같이, 설문조사 응답자들의 대부분은 현재 속력과 차선을 유지하는 것이 가장 불편하다고 느낀다. 모든 도로 행위자들(주변의 대상체들)을 피하는 것이 임의의 도로 행위자들을 전혀 피하지 않는 것보다 더 편안하다(횡방향 모션 안정성(2506)).
도 26은 본 개시의 실시예들에 따른 궤적 계획에서 운동학적 요인들을 적용하는 예시적인 프로세스(2600)를 예시하는 흐름 다이어그램이다. AV의 루트 플래너는 AV에 대한 최적의 궤적을 계획하는 데 사용된다. 승차감과 관련하여 다양한 교통 시나리오들에서의 AV의 운행들을 고려하기 위해 루트 플래너가 보강될 수 있다. 보강된 루트 플래너는, 안전성 및 적법성 요인들 및 다른 요인들 외에도, 운동학적 요인을 고려하여 최적의 궤적을 계획하는 데 사용될 수 있다. AV는 계획된 궤적을 사용하여(AV의 제어 회로 또는 하나 이상의 프로세서를 사용하여) 운행될 수 있다. 일부 실시예들에서, 프로세스(2600)는, 도 2를 참조하여 설명된, 자율 주행 시스템(202)과 동일하거나 유사한 자율 주행 시스템을 사용하여 (예를 들면, 완전히, 부분적으로 등) 구현된다. 일부 실시예들에서, 프로세스(2600)의 단계들 중 하나 이상은 자율 주행 시스템과 별개이거나 자율 주행 시스템을 포함하는 다른 디바이스 또는 시스템, 또는 다른 디바이스 및/또는 시스템 그룹에 의해 (예를 들면, 완전히, 부분적으로 등) 수행된다. 예를 들어, 프로세스(2600)의 하나 이상의 단계는 원격 AV 시스템(114), 차량(102)(예를 들면, 차량(102 또는 200)의 자율 주행 시스템(202)), 도 3의 디바이스(300), 및/또는 AV 컴퓨트(400)(예를 들면, 도 4a의 AV 컴퓨트(400)의 하나 이상의 시스템)에 의해 (예를 들면, 완전히, 부분적으로 등) 수행될 수 있다. 일부 실시예들에서, 프로세스(2600)의 단계들은 서로 협력하여 위에 언급된 시스템들 중 임의의 것 사이에서 수행될 수 있다.
블록(2602)에서, AV는 (도 2에 도시된 바와 같은) 카메라들(202a), LiDAR 센서들(202b), 레이다 센서들(202c) 등과 같은 하나 이상의 검출 디바이스에 의해 도로에 있는 대상체를 검출한다.
블록(2604)에서, 대상체의 위험 등급이 결정된다. 도 12를 참조하면, 상이한 대상체들은 상이한 위험 등급들을 갖는다. AV는 대상체가 무엇인지를 식별하고 그에 따라 위험 등급을 할당할 수 있다.
블록(2606)에서, AV는, 대상체의 위험 등급에 기초하여, 승차감을 높이기 위해 교통 시나리오에서 AV를 어떻게 운행할지를 결정한다. 도 13 내지 도 25는 상충되는 설정에서 승차감을 높이기 위해 AV가 운행되는 다양한 교통 시나리오들을 개시한다.
블록(2608)에서, AV의 루트 플래너는 승차감을 높이기 위해 상이한 교통 시나리오들에서 모션 제어 운행(motion control operation)들로 보강될 수 있다. 예를 들어, 도 13 내지 도 25에 도시된 바와 같은 다양한 교통 시나리오들 및 각각의 교통 시나리오에 대한 선호 모션 제어 운행은, 루트 플래너가 운동학적 요인을 고려하여 궤적을 계획할 수 있도록, 루트 플래너를 보강하는 데 사용될 수 있다.
블록(2610)에서, 보강된 루트 플래너를 사용하여 특정 교통 시나리오에 대한 궤적이 계획된다. AV가 특정 교통 시나리오에 있을 때, 보강된 루트 플래너는 이 특정 교통 시나리오에 대한 새로운 궤적을 계획할 수 있다. 새로운 궤적은, 안전성, 적법성은 물론, 승차감과 같은, 복수의 요인들에 기초하여 계획된다.
블록(2612)에서, AV는 계획된 궤적을 사용하여 운행된다. AV는 새로운 궤적을 사용하여 운행될 수 있다. AV의 제어 회로(하나 이상의 프로세서)는 새로운 궤적을 따라 이동하도록 AV를 운행할 수 있다.
도 27은 본 개시의 실시예들에 따른 궤적 계획에서 운동학적 요인들을 적용하는 다른 예시적인 프로세스(2700)를 예시하는 흐름 다이어그램이다. 일부 실시예들에서, 프로세스(2700)는, 도 2를 참조하여 설명된, 자율 주행 시스템(202)과 동일하거나 유사한 자율 주행 시스템을 사용하여 (예를 들면, 완전히, 부분적으로 등) 구현된다. 일부 실시예들에서, 프로세스(2700)의 단계들 중 하나 이상은 자율 주행 시스템과 별개이거나 자율 주행 시스템을 포함하는 다른 디바이스 또는 시스템, 또는 다른 디바이스 및/또는 시스템 그룹에 의해 (예를 들면, 완전히, 부분적으로 등) 수행된다. 예를 들어, 프로세스(2700)의 하나 이상의 단계는 원격 AV 시스템(114), 차량(102)(예를 들면, 차량(102 또는 200)의 자율 주행 시스템(202)), 도 3의 디바이스(300), 및/또는 AV 컴퓨트(400)(예를 들면, 도 4a의 AV 컴퓨트(400)의 하나 이상의 시스템)에 의해 (예를 들면, 완전히, 부분적으로 등) 수행될 수 있다. 일부 실시예들에서, 프로세스(2700)의 단계들은 서로 협력하여 위에 언급된 시스템들 중 임의의 것 사이에서 수행될 수 있다.
블록(2702)에서, 교통 환경에서 식별되는 적어도 하나의 대상체에 대한 위험 등급이 결정된다. 위험 등급은 각기의 대상체와 연관된 인지된 위험을 나타낸다. 도 12를 참조하면, 상이한 대상체들은 상이한 위험 등급들을 갖는다. AV는 대상체가 무엇인지를 식별하고 그에 따라 위험 등급을 할당할 수 있다.
블록(2704)에서, 교통 시나리오와 관련한 계층적 요인(예를 들면, 운동학적 요인) 세트가 식별되고 평가된다. 도 24 및 도 25에 도시된 바와 같이, 계층적 요인 세트는: (1) 주변의 정적 대상체들로부터의 최소 횡방향 이격거리(대상체 높이에 따라 다름) (2) 주변의 동적 대상체들로부터의 최소 횡방향 이격거리(대상체 높이에 따라 다름); (3) 주변의 정적 대상체들로부터의 최소 종방향 이격거리(대상체 높이 및 대상체 유형에 따라 다름); (4) 주변의 동적 대상체들로부터의 최소 종방향 이격거리(대상체 높이 및 대상체 유형에 따라 다름); (5) 종방향 속도(정적 대상체들에 대한 횡방향 이격거리에 따라 다름); (6) 주변의 도로 행위자들에 대한 상대 속도(동적 대상체들에 대한 횡방향 이격거리에 따라 다름); (7) 종방향 가속/종방향 감속(속도에 따라 다름); (8) 횡방향 가속/횡방향 감속(속도에 따라 다름); (9) 종방향 저크; (10) 횡방향 저크, (11) 횡방향 모션 안정성 및 감쇠(시간에 따른 매끄러움, 예를 들면, 스웨잉을 방지함); 및 (12) 종방향 모션 안정성/감쇠(시간에 따른 매끄러움, 여러 번의 정지/출발 브레이크 이벤트를 방지함)를 포함할 수 있지만, 이에 제한되지 않는다.
또한, 교통 시나리오의 궤적들에 대해 위험 등급 및 계층적 요인 세트에 기초하여 승객 승차감을 정량화하는 메트릭이 도출된다. 예를 들어, 승객 승차감을 정량화하는 메트릭은 계층적 요인 세트로부터 도출된다. 예를 들어, 승객 승차감을 정량화하기 위해 각각의 운동학적 요인에 점수가 할당되고, 궤적들에 순위를 부여하기 위해 이 점수들이 고려된다.
블록(2706)에서, 메트릭에 기초하여 승객 승차감을 높이기 위해 교통 시나리오에 대해 모션 제어 운행이 결정된다. AV는 승차감을 높이기 위해 교통 시나리오에서 AV를 어떻게 운행할지를 결정한다.
블록(2708)에서, AV의 루트 플래너는 승차감을 높이기 위해 상이한 교통 시나리오들에서 모션 제어 운행들로 보강될 수 있다.
일부 비제한적인 실시예들 또는 예들에 따르면, 방법이 제공되며, 상기 방법은: 적어도 하나의 프로세서를 사용하여, 환경에서 식별되는 적어도 하나의 대상체에 대한 위험 등급 - 상기 위험 등급은 각기의 대상체와 연관된 인지된 위험을 나타냄 - 을 결정하는 단계; 상기 적어도 하나의 프로세서를 사용하여, 교통 시나리오와 관련한 계층적 요인 세트를 평가하는 단계 - 상기 교통 시나리오의 궤적들에 대해 상기 위험 등급 및 상기 계층적 요인 세트에 기초하여 승객 승차감을 정량화하는 메트릭이 도출됨 -; 상기 적어도 하나의 프로세서를 사용하여, 상기 메트릭에 기초하여 상기 승객 승차감을 높이기 위해 상기 교통 시나리오에서 모션 제어 운행을 결정하는 단계; 및 상기 적어도 하나의 프로세서를 사용하여, 상기 승객 승차감을 높이기 위해 상이한 교통 시나리오들에서 모션 제어 운행들로 자율 주행 차량의 루트 플래너를 보강하는 단계를 포함한다.
일부 비제한적인 실시예들 또는 예들에 따르면, 시스템이 제공되며, 상기 시스템은 적어도 하나의 프로세서; 및 명령어들을 저장한 메모리를 포함한다. 상기 적어도 하나의 프로세서에 의해 실행될 때, 상기 명령어들은 상기 적어도 하나의 프로세서로 하여금 동작들을 수행하게 하며, 상기 동작들은: 환경에서 식별되는 적어도 하나의 대상체에 대한 위험 등급 - 상기 위험 등급은 각기의 대상체와 연관된 인지된 위험을 나타냄 - 을 결정하는 동작; 교통 시나리오와 관련한 계층적 요인 세트를 평가하는 동작 - 상기 교통 시나리오의 궤적들에 대해 상기 위험 등급 및 상기 계층적 요인 세트에 기초하여 승객 승차감을 정량화하는 메트릭이 도출됨 -; 상기 메트릭에 기초하여 상기 승객 승차감을 높이기 위해 상기 교통 시나리오에서 모션 제어 운행을 결정하는 동작; 및 상기 승객 승차감을 높이기 위해 상이한 교통 시나리오들에서 모션 제어 운행들로 자율 주행 차량의 루트 플래너를 보강하는 동작을 포함한다.
일부 비제한적인 실시예들 또는 예들에 따르면, 하나 이상의 명령어를 포함하는 적어도 하나의 비일시적 컴퓨터 판독 가능 매체가 제공된다. 적어도 하나의 프로세서에 의해 실행될 때, 상기 명령어들은 상기 적어도 하나의 프로세서로 하여금 동작들을 수행하게 하며, 상기 동작들은: 환경에서 식별되는 적어도 하나의 대상체에 대한 위험 등급 - 상기 위험 등급은 각기의 대상체와 연관된 인지된 위험을 나타냄 - 을 결정하는 동작; 교통 시나리오와 관련한 계층적 요인 세트를 평가하는 동작 - 상기 교통 시나리오의 궤적들에 대해 상기 위험 등급 및 상기 계층적 요인 세트에 기초하여 승객 승차감을 정량화하는 메트릭이 도출됨 -; 상기 메트릭에 기초하여 상기 승객 승차감을 높이기 위해 상기 교통 시나리오에서 모션 제어 운행을 결정하는 동작; 및 상기 승객 승차감을 높이기 위해 상이한 교통 시나리오들에서의 모션 제어 운행들로 자율 주행 차량의 루트 플래너를 보강하는 동작을 포함한다.
조항 1: 방법으로서, 적어도 하나의 프로세서를 사용하여, 환경에서 식별되는 적어도 하나의 대상체에 대한 위험 등급 - 상기 위험 등급은 각기의 대상체와 연관된 인지된 위험을 나타냄 - 을 결정하는 단계; 상기 적어도 하나의 프로세서를 사용하여, 교통 시나리오와 관련한 계층적 요인 세트를 평가하는 단계 - 상기 교통 시나리오의 궤적들에 대해 상기 위험 등급 및 상기 계층적 요인 세트에 기초하여 승객 승차감을 정량화하는 메트릭이 도출됨 -; 상기 적어도 하나의 프로세서를 사용하여, 상기 메트릭에 기초하여 상기 승객 승차감을 높이기 위해 상기 교통 시나리오에서의 모션 제어 운행을 결정하는 단계; 및 상기 적어도 하나의 프로세서를 사용하여, 상기 승객 승차감을 높이기 위해 상이한 교통 시나리오들에서의 모션 제어 운행들로 자율 주행 차량의 루트 플래너를 보강하는 단계를 포함하는, 방법.
조항 2: 조항 1에 있어서, 상기 적어도 하나의 프로세서를 사용하여, 상기 보강된 루트 플래너를 사용하여 특정 교통 시나리오에서의 궤적을 선택하는 단계 - 상기 선택된 궤적은 상기 교통 시나리오의 상기 궤적들의 메트릭들과 비교할 때 가장 높은 메트릭을 포함함 -; 및 상기 적어도 하나의 프로세서를 사용하여, 상기 선택된 궤적을 사용하여 상기 자율 주행 차량을 운행하는 단계를 더 포함하는, 방법.
조항 3: 조항 1 또는 조항 2에 있어서, 취약한 대상체 또는 위협적인 대상체의 위험 등급은 정적 대상체의 위험 등급보다 더 높은, 방법.
조항 4: 조항 1 내지 조항 3 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량의 좌측에 있는 하나의 대상체 및 상기 자율 주행 차량의 우측에 있는 다른 대상체를 검출하는 단계 - 상기 2개의 대상체는 상이한 위험 등급들을 가짐 -; 및 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 상기 2개의 대상체 사이에 있을 때 상기 자율 주행 차량을 더 낮은 위험 등급을 갖는 대상체에 더 가깝게 이동시키는 단계를 더 포함하는, 방법.
조항 5: 조항 1 내지 조항 4 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량의 좌측에 있는 하나의 대상체 및 상기 자율 주행 차량의 우측에 있는 다른 대상체를 검출하는 단계 - 상기 2개의 대상체는 동일한 위험 등급을 가짐 -; 및 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 상기 2개의 대상체 사이에 있을 때 상기 자율 주행 차량을 상기 2개의 대상체 중 어느 하나에 더 가깝게 이동시키거나 상기 2개의 대상체의 중앙으로 이동시키는 단계를 더 포함하는, 방법.
조항 6: 조항 1 내지 조항 5 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량 옆에 있는 정적 대상체 - 상기 정적 대상체는 상기 자율 주행 차량보다 더 낮은 위험 등급을 가짐 - 를 검출하는 단계; 및 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량을 상기 정적 대상체로부터 멀리 떨어지게 이동시키는 단계를 더 포함하는, 방법.
조항 7: 조항 6에 있어서, 상기 자율 주행 차량을 상기 정적 대상체로부터 멀리 떨어지게 이동시키는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량의 속력을 낮추거나 상기 자율 주행 차량을 다른 차선으로 전환하는 단계를 더 포함하는, 방법.
조항 8: 조항 1 내지 조항 7 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 이동하는 대상체에 인접할 때 상기 자율 주행 차량을 다른 차선으로 전환하는 단계를 더 포함하는, 방법.
조항 9: 조항 1 내지 조항 8 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 이동하는 대상체가 상기 자율 주행 차량이 이동하고 있는 차선으로 합류할 때 상기 자율 주행 차량의 속력을 낮추는 단계를 더 포함하는, 방법.
조항 10: 조항 1 내지 조항 9 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 이동하는 대상체가 상기 자율 주행 차량이 이동하고 있는 차선으로 합류할 때 상기 자율 주행 차량의 속력을 매끄럽게 낮추는 단계 - 상기 자율 주행 차량과 상기 이동하는 대상체는 동일한 위험 등급을 가짐 - 를 더 포함하는, 방법.
조항 11: 조항 1 내지 조항 10 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 취약한 대상체가 상기 자율 주행 차량이 이동하고 있는 차선으로 합류할 때 상기 자율 주행 차량의 속력을 급격하게 낮추는 단계를 더 포함하는, 방법.
조항 12: 조항 1 내지 조항 11 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 하나의 이동하는 대상체가 상기 자율 주행 차량 앞에서 이동하고 있고 다른 이동하는 대상체가 상기 자율 주행 차량 옆에서 이동하고 있을 때 상기 자율 주행 차량을 2개의 이동하는 대상체로부터 멀리 떨어지게 이동시키는 단계를 더 포함하는, 방법.
조항 13: 조항 1 내지 조항 12 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 제한 속도 감소를 적용받을 때 상기 자율 주행 차량의 속력을 매끄럽게 낮추는 단계를 더 포함하는, 방법.
조항 14: 조항 1 내지 조항 13 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 교차로에 있는 임박한(upcoming) 황색 교통 신호등을 검출하는 단계; 및 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 상기 교차로를 향해 이동하고 있고 상기 황색 교통 신호등이 켜져 있을 때 상기 자율 주행 차량의 속력을 높여 상기 황색 교통 신호등을 통과하는 단계를 더 포함하는, 방법.
조항 15: 조항 1 내지 조항 14 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 인접 차선에 있는 복수의 이동하는 대상체들보다 더 빠르게 이동하고 있을 때 상기 자율 주행 차량의 속력을 유지시키거나 상기 자율 주행 차량의 속력을 낮추는 단계를 더 포함하는, 방법.
조항 16: 조항 1 내지 조항 15 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 상이한 위험 등급들을 가지는 2개의 이동하는 대상체 사이에 있을 때 더 높은 위험 등급을 갖는 이동하는 대상체를 피하도록 상기 자율 주행 차량을 이동시키는 단계를 더 포함하는, 방법.
조항 17: 조항 1 내지 조항 16 중 어느 한 조항에 있어서, 상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는: 상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 복수의 이동하는 대상체들에 접근하고 있을 때 상기 자율 주행 차량을 인접 차선으로 전환하고 동일한 속력을 유지시키는 단계를 더 포함하는, 방법.
조항 18: 시스템으로서, 상기 시스템은 적어도 하나의 프로세서; 및 명령어들을 저장한 메모리를 포함하며, 상기 적어도 하나의 프로세서에 의해 실행될 때, 상기 명령어들은 상기 적어도 하나의 프로세서로 하여금 동작들을 수행하게 하며, 상기 동작들은: 환경에서 식별되는 적어도 하나의 대상체에 대한 위험 등급 - 상기 위험 등급은 각기의 대상체와 연관된 인지된 위험을 나타냄 - 을 결정하는 동작; 교통 시나리오와 관련한 계층적 요인 세트를 평가하는 동작 - 상기 교통 시나리오의 궤적들에 대해 상기 위험 등급 및 상기 계층적 요인 세트에 기초하여 승객 승차감을 정량화하는 메트릭이 도출됨 -; 상기 메트릭에 기초하여 상기 승객 승차감을 높이기 위해 상기 교통 시나리오에서의 모션 제어 운행을 결정하는 동작; 및 상기 승객 승차감을 높이기 위해 상이한 교통 시나리오들에서의 모션 제어 운행들로 자율 주행 차량의 루트 플래너를 보강하는 동작을 포함하는, 시스템.
조항 19: 명령어들을 저장하는 비일시적 컴퓨터 판독 가능 저장 매체로서, 적어도 하나의 프로세서에 의해 실행될 때, 상기 명령어들은 상기 적어도 하나의 프로세서로 하여금 동작들을 수행하게 하며, 상기 동작들은: 환경에서 식별되는 적어도 하나의 대상체에 대한 위험 등급 - 상기 위험 등급은 각기의 대상체와 연관된 인지된 위험을 나타냄 - 을 결정하는 동작; 교통 시나리오와 관련한 계층적 요인 세트를 평가하는 동작 - 상기 교통 시나리오의 궤적들에 대해 상기 위험 등급 및 상기 계층적 요인 세트에 기초하여 승객 승차감을 정량화하는 메트릭이 도출됨 -; 상기 메트릭에 기초하여 상기 승객 승차감을 높이기 위해 상기 교통 시나리오에서의 모션 제어 운행을 결정하는 동작; 및 상기 승객 승차감을 높이기 위해 상이한 교통 시나리오들에서의 모션 제어 운행들로 자율 주행 차량의 루트 플래너를 보강하는 동작을 포함하는, 컴퓨터 판독 가능 저장 매체.
조항 20: 조항 19에 있어서, 취약한 대상체 또는 위협적인 대상체의 위험 등급은 정적 대상체의 위험 등급보다 더 높은, 컴퓨터 판독 가능 저장 매체.
전술한 설명에서, 본 개시의 측면들 및 실시예들은 구현마다 달라질 수 있는 다수의 특정 세부 사항들을 참조하여 설명되었다. 그에 따라, 설명 및 도면들은 제한적인 의미가 아니라 예시적인 의미로 간주되어야 한다. 본 발명의 범위의 유일한 독점적인 지표, 및 출원인들이 본 발명의 범위이도록 의도한 것은, 본 출원에서 특정 형태로 나오는 일련의 청구항들의 문언적 등가 범위이며, 임의의 후속 보정을 포함한다. 그러한 청구항들에 포함된 용어들에 대한 본 명세서에 명시적으로 제시된 임의의 정의들은 청구항들에서 사용되는 그러한 용어들의 의미를 결정한다. 추가적으로, 전술한 설명 및 이하의 청구항들에서 "더 포함하는"이라는 용어가 사용될 때, 이 문구에 뒤따르는 것은 추가적인 단계 또는 엔티티, 또는 이전에 언급된 단계 또는 엔티티의 서브단계/서브엔티티일 수 있다.
Claims (20)
- 방법으로서,
적어도 하나의 프로세서를 사용하여, 환경에서 식별되는 적어도 하나의 대상체에 대한 위험 등급 - 상기 위험 등급은 각기의 대상체와 연관된 인지된 위험을 나타냄 - 을 결정하는 단계;
상기 적어도 하나의 프로세서를 사용하여, 교통 시나리오와 관련한 계층적 요인 세트를 평가하는 단계 - 상기 교통 시나리오의 궤적들에 대해, 상기 위험 등급 및 상기 계층적 요인 세트에 기초하여 승객 승차감을 정량화하는 메트릭이 도출됨 -;
상기 적어도 하나의 프로세서를 사용하여, 상기 메트릭에 기초하여 상기 승객 승차감을 높이기 위해 상기 교통 시나리오에서의 모션 제어 운행을 결정하는 단계; 및
상기 적어도 하나의 프로세서를 사용하여, 상기 승객 승차감을 높이기 위해 상이한 교통 시나리오들에서의 모션 제어 운행들로 자율 주행 차량의 루트 플래너를 보강하는 단계
를 포함하는, 방법. - 제1항에 있어서,
상기 적어도 하나의 프로세서를 사용하여, 상기 보강된 루트 플래너를 사용하여 특정 교통 시나리오에서의 궤적을 선택하는 단계 - 상기 선택된 궤적은 상기 교통 시나리오의 상기 궤적들의 메트릭들과 비교할 때 가장 높은 메트릭을 포함함 -; 및
상기 적어도 하나의 프로세서를 사용하여, 상기 선택된 궤적을 사용하여 상기 자율 주행 차량을 운행하는 단계
를 더 포함하는, 방법. - 제1항 또는 제2항에 있어서,
취약한 대상체 또는 위협적인 대상체의 위험 등급이 정적 대상체의 위험 등급보다 더 높은 것인, 방법. - 제1항 내지 제3항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량의 좌측에 있는 하나의 대상체 및 상기 자율 주행 차량의 우측에 있는 다른 대상체를 검출하는 단계 - 2개의 대상체는 상이한 위험 등급들을 가짐 -; 및
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 상기 2개의 대상체 사이에 있을 때 상기 자율 주행 차량을 더 낮은 위험 등급을 갖는 대상체에 더 가깝게 이동시키는 단계를 더 포함하는 것인, 방법. - 제1항 내지 제4항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량의 좌측에 있는 하나의 대상체 및 상기 자율 주행 차량의 우측에 있는 다른 대상체를 검출하는 단계 - 2개의 대상체는 동일한 위험 등급을 가짐 -; 및
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 상기 2개의 대상체 사이에 있을 때 상기 자율 주행 차량을 상기 2개의 대상체 중 어느 하나에 더 가깝게 이동시키거나 상기 2개의 대상체의 중앙으로 이동시키는 단계를 더 포함하는 것인, 방법. - 제1항 내지 제5항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량 옆에 있는 정적 대상체 - 상기 정적 대상체는 상기 자율 주행 차량보다 더 낮은 위험 등급을 가짐 - 를 검출하는 단계; 및
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량을 상기 정적 대상체로부터 멀리 떨어지게 이동시키는 단계를 더 포함하는 것인, 방법. - 제6항에 있어서,
상기 자율 주행 차량을 상기 정적 대상체로부터 멀리 떨어지게 이동시키는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량의 속력을 낮추거나 상기 자율 주행 차량을 다른 차선으로 전환하는 단계를 더 포함하는 것인, 방법. - 제1항 내지 제7항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 이동하는 대상체에 인접할 때 상기 자율 주행 차량을 다른 차선으로 전환하는 단계를 더 포함하는 것인, 방법. - 제1항 내지 제7항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 이동하는 대상체가 상기 자율 주행 차량이 이동하고 있는 차선으로 합류할 때 상기 자율 주행 차량의 속력을 낮추는 단계를 더 포함하는 것인, 방법. - 제1항 내지 제9항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 이동하는 대상체가 상기 자율 주행 차량이 이동하고 있는 차선으로 합류할 때 상기 자율 주행 차량의 속력을 매끄럽게 낮추는 단계 - 상기 자율 주행 차량과 상기 이동하는 대상체는 동일한 위험 등급을 가짐 - 를 더 포함하는 것인, 방법. - 제1항 내지 제10항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 취약한 대상체가 상기 자율 주행 차량이 이동하고 있는 차선으로 합류할 때 상기 자율 주행 차량의 속력을 급격하게 낮추는 단계를 더 포함하는 것인, 방법. - 제1항 내지 제11항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 하나의 이동하는 대상체가 상기 자율 주행 차량 앞에서 이동하고 있고 다른 이동하는 대상체가 상기 자율 주행 차량 옆에서 이동하고 있을 때 상기 자율 주행 차량을 2개의 이동하는 대상체로부터 멀리 떨어지게 이동시키는 단계를 더 포함하는 것인, 방법. - 제1항 내지 제12항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 제한 속도 감소를 적용받을 때 상기 자율 주행 차량의 속력을 매끄럽게 낮추는 단계를 더 포함하는 것인, 방법. - 제1항 내지 제13항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 교차로에 있는 임박한(upcoming) 황색 교통 신호등을 검출하는 단계; 및
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 상기 교차로를 향해 이동하고 있고 상기 황색 교통 신호등이 켜져 있을 때 상기 자율 주행 차량의 속력을 높여 상기 황색 교통 신호등을 통과하는 단계를 더 포함하는 것인, 방법. - 제1항 내지 제14항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 인접 차선에 있는 복수의 이동하는 대상체들보다 더 빠르게 이동하고 있을 때 상기 자율 주행 차량의 속력을 유지시키거나 상기 자율 주행 차량의 속력을 낮추는 단계를 더 포함하는 것인, 방법. - 제1항 내지 제15항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 상이한 위험 등급들을 가지는 2개의 이동하는 대상체 사이에 있을 때 더 높은 위험 등급을 갖는 이동하는 대상체를 피하도록 상기 자율 주행 차량을 이동시키는 단계를 더 포함하는 것인, 방법. - 제1항 내지 제16항 중 어느 한 항에 있어서,
상기 교통 시나리오에서의 상기 모션 제어 운행을 결정하는 단계는:
상기 적어도 하나의 프로세서를 사용하여, 상기 자율 주행 차량이 복수의 이동하는 대상체들에 접근하고 있을 때 상기 자율 주행 차량을 인접 차선으로 전환하고 동일한 속력을 유지시키는 단계를 더 포함하는 것인, 방법. - 시스템으로서,
적어도 하나의 프로세서; 및
상기 적어도 하나의 프로세서에 의해 실행될 때, 상기 적어도 하나의 프로세서로 하여금 동작들을 수행하게 하는 명령어들을 저장한 메모리를 포함하며,
상기 동작들은:
환경에서 식별되는 적어도 하나의 대상체에 대한 위험 등급 - 상기 위험 등급은 각기의 대상체와 연관된 인지된 위험을 나타냄 - 을 결정하는 동작;
교통 시나리오와 관련한 계층적 요인 세트를 평가하는 동작 - 상기 교통 시나리오의 궤적들에 대해, 상기 위험 등급 및 상기 계층적 요인 세트에 기초하여 승객 승차감을 정량화하는 메트릭이 도출됨 -;
상기 메트릭에 기초하여 상기 승객 승차감을 높이기 위해 상기 교통 시나리오에서의 모션 제어 운행을 결정하는 동작; 및
상기 승객 승차감을 높이기 위해 상이한 교통 시나리오들에서의 모션 제어 운행들로 자율 주행 차량의 루트 플래너를 보강하는 동작
을 포함하는 것인, 시스템. - 적어도 하나의 프로세서에 의해 실행될 때, 상기 적어도 하나의 프로세서로 하여금 동작들을 수행하게 하는 명령어들을 저장한 비일시적 컴퓨터 판독 가능 저장 매체로서,
상기 동작들은:
환경에서 식별되는 적어도 하나의 대상체에 대한 위험 등급 - 상기 위험 등급은 각기의 대상체와 연관된 인지된 위험을 나타냄 - 을 결정하는 동작;
교통 시나리오와 관련한 계층적 요인 세트를 평가하는 동작 - 상기 교통 시나리오의 궤적들에 대해, 상기 위험 등급 및 상기 계층적 요인 세트에 기초하여 승객 승차감을 정량화하는 메트릭이 도출됨 -;
상기 메트릭에 기초하여 상기 승객 승차감을 높이기 위해 상기 교통 시나리오에서의 모션 제어 운행을 결정하는 동작; 및
상기 승객 승차감을 높이기 위해 상이한 교통 시나리오들에서의 모션 제어 운행들로 자율 주행 차량의 루트 플래너를 보강하는 동작
을 포함하는 것인, 컴퓨터 판독 가능 저장 매체. - 제19항에 있어서,
취약한 대상체 또는 위협적인 대상체의 위험 등급이 정적 대상체의 위험 등급보다 더 높은 것인, 컴퓨터 판독 가능 저장 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163180651P | 2021-04-27 | 2021-04-27 | |
US63/180,651 | 2021-04-27 | ||
PCT/US2022/026565 WO2022232292A1 (en) | 2021-04-27 | 2022-04-27 | Ride comfort improvement in different traffic scenarios for autonomous vehicle |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230173724A true KR20230173724A (ko) | 2023-12-27 |
Family
ID=83847474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020237040516A KR20230173724A (ko) | 2021-04-27 | 2022-04-27 | 자율 주행 차량에 대한 다양한 교통 시나리오들에서의 승차감 개선 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220355821A1 (ko) |
EP (1) | EP4330633A1 (ko) |
KR (1) | KR20230173724A (ko) |
WO (1) | WO2022232292A1 (ko) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2023002222A (ja) * | 2021-06-22 | 2023-01-10 | 株式会社Subaru | 運転支援装置 |
KR20230019334A (ko) * | 2021-07-30 | 2023-02-08 | 현대자동차주식회사 | 차량 경로 제어 장치 및 차량의 경로 제어 방법 |
US20230085147A1 (en) * | 2021-09-14 | 2023-03-16 | Yandex Self Driving Group Llc | Method for operating a robotic vehicle |
US20230322260A1 (en) * | 2022-04-06 | 2023-10-12 | Gm Cruise Holdings Llc | Systems and methods for dynamically responding to detected changes in a semantic map of an autonomous vehicle |
US12008681B2 (en) * | 2022-04-07 | 2024-06-11 | Gm Technology Operations Llc | Systems and methods for testing vehicle systems |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9645577B1 (en) * | 2016-03-23 | 2017-05-09 | nuTonomy Inc. | Facilitating vehicle driving and self-driving |
DE102017204393A1 (de) * | 2017-03-16 | 2018-09-20 | Robert Bosch Gmbh | Verfahren zum Ansteuern eines Fahrbetriebs eines Fahrzeugs |
US10606270B2 (en) * | 2017-10-18 | 2020-03-31 | Luminar Technologies, Inc. | Controlling an autonomous vehicle using cost maps |
DE102018222783A1 (de) * | 2018-12-21 | 2020-06-25 | Robert Bosch Gmbh | Verfahren zum Steuern eines automatisierten oder autonomen Fortbewegungsmittels und Auswerteeinheit |
US11347225B2 (en) * | 2019-02-05 | 2022-05-31 | Intel Corporation | Mechanism for conflict resolution and avoidance of collisions for highly automated and autonomous vehicles |
US20200307589A1 (en) * | 2019-03-29 | 2020-10-01 | Chongqing Jinkang New Energy Vehicle, Ltd. | Automatic lane merge with tunable merge behaviors |
US11754408B2 (en) * | 2019-10-09 | 2023-09-12 | Argo AI, LLC | Methods and systems for topological planning in autonomous driving |
-
2022
- 2022-04-27 KR KR1020237040516A patent/KR20230173724A/ko unknown
- 2022-04-27 US US17/731,222 patent/US20220355821A1/en active Pending
- 2022-04-27 EP EP22796654.6A patent/EP4330633A1/en active Pending
- 2022-04-27 WO PCT/US2022/026565 patent/WO2022232292A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US20220355821A1 (en) | 2022-11-10 |
EP4330633A1 (en) | 2024-03-06 |
WO2022232292A1 (en) | 2022-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11714413B2 (en) | Planning autonomous motion | |
KR102532546B1 (ko) | 미리 계산되거나 동적으로 생성된 궤적 뱅크로부터의 궤적 예측 | |
CN108292134B (zh) | 自主车辆、用于控制其的方法和系统以及计算机可读介质 | |
CN113721629B (zh) | 响应于物理环境的改变自适应制图以对自主车辆进行导航 | |
US11203362B1 (en) | Scoring autonomous vehicle trajectories using reasonable crowd data | |
US20220355821A1 (en) | Ride comfort improvement in different traffic scenarios for autonomous vehicle | |
WO2022072414A1 (en) | Methods and systems for predicting actions of an object by an autonomous vehicle to determine feasible paths through a conflicted area | |
KR102565573B1 (ko) | 서브시스템 성능 평가를 위한 메트릭 역전파 | |
KR102580085B1 (ko) | 자율 주행 차량의 성능을 평가하기 위한 테스트 시나리오의 선택 | |
KR20230166129A (ko) | 에이전트 궤적 예측 | |
US20240025443A1 (en) | Path generation based on predicted actions | |
US20240025395A1 (en) | Path generation based on predicted actions | |
KR20230143961A (ko) | 시뮬레이션된 상태들에 기초한 차량 행동 선택 | |
KR20230108672A (ko) | 규칙집 궤적 생성을 위한 그래프 탐색 | |
US20240025444A1 (en) | Path generation based on predicted actions | |
KR102601860B1 (ko) | 운전 데이터 기반 공간 계획 | |
CN116265313A (zh) | 用于操作自主运载工具的方法和系统以及计算机可读介质 | |
CN115113629A (zh) | 用于优化远程操作和/或规划器决策的机器学习系统和技术 | |
US20240025452A1 (en) | Corridor/homotopy scoring and validation | |
US12030509B1 (en) | Realism in log-based simulations | |
US20230391367A1 (en) | Inferring autonomous driving rules from data | |
US20240028035A1 (en) | Planning autonomous motion | |
US20240253663A1 (en) | Generating worst-case constraints for autonomous vehicle motion planning | |
US20230415772A1 (en) | Trajectory planning based on extracted trajectory features | |
CN117148828A (zh) | 操作自主运载工具的方法、系统和介质 |