KR102071154B1 - 자율 주행 차량의 주행 결정을 위한 주변 환경 구성 방법 및 시스템 - Google Patents

자율 주행 차량의 주행 결정을 위한 주변 환경 구성 방법 및 시스템 Download PDF

Info

Publication number
KR102071154B1
KR102071154B1 KR1020187009648A KR20187009648A KR102071154B1 KR 102071154 B1 KR102071154 B1 KR 102071154B1 KR 1020187009648 A KR1020187009648 A KR 1020187009648A KR 20187009648 A KR20187009648 A KR 20187009648A KR 102071154 B1 KR102071154 B1 KR 102071154B1
Authority
KR
South Korea
Prior art keywords
driving
scenario
handler
handlers
autonomous vehicle
Prior art date
Application number
KR1020187009648A
Other languages
English (en)
Other versions
KR20180049040A (ko
Inventor
리윤 리
동 리
지앙타오 후
이페이 지앙
지아밍 타오
구앙 양
진가오 왕
Original Assignee
바이두 유에스에이 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 바이두 유에스에이 엘엘씨 filed Critical 바이두 유에스에이 엘엘씨
Publication of KR20180049040A publication Critical patent/KR20180049040A/ko
Application granted granted Critical
Publication of KR102071154B1 publication Critical patent/KR102071154B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0015Planning or execution of driving tasks specially adapted for safety
    • B60W60/0016Planning or execution of driving tasks specially adapted for safety of the vehicle or its occupants
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/095Predicting travel path or likelihood of collision
    • B60W30/0956Predicting travel path or likelihood of collision the prediction being responsive to traffic or environmental parameters
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/408Radar; Laser, e.g. lidar
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/54Audio sensitive means, e.g. ultrasound
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2552/00Input parameters relating to infrastructure
    • B60W2552/50Barriers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/20Static objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/402Type
    • B60W2554/4026Cycles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/402Type
    • B60W2554/4029Pedestrians
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/80Spatial relation or speed relative to objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/80Spatial relation or speed relative to objects
    • B60W2554/802Longitudinal distance

Landscapes

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

Abstract

자율 주행 차량에 장착된 센서로부터 수신된 센서 데이터에 응답하여, 주변 환경이 센서 데이터에 기초하여 인식된다. 주변 환경에는 복수의 하위 환경이 포함된다. 각각의 하위 환경에 대해, 하위 환경과 관련된 복수의 주행 시나리오 핸들러 중 하나가 식별되며, 각각의 주행 시나리오 핸들러는 복수의 주행 시나리오 중 하나에 대응한다. 식별된 주행 시나리오 핸들러는 해당 하위 환경 내에서의 개별 주행 조건을 결정하기 위해 호출된다. 주변 환경에 대한 전체 주행 조건은 식별된 주행 시나리오 핸들러에 의해 제공되는 개별 주행 조건에 기초하여 결정된다. 루트 세그먼트는 주변 환경의 전체 주행 조건에 기초하여 계획되고, 루트 세그먼트는 루트와 관련된 복수의 루트 세그먼트 중 하나이다. 자율 주행 차량은 계획된 루트 세그먼트를 기초로 제어되고 주행된다.

Description

자율 주행 차량의 주행 결정을 위한 주변 환경 구성 방법 및 시스템
본 발명의 실시예들은 일반적으로 자율 주행 차량을 운행하는 것에 관한 것이다. 특히, 본 발명의 실시 예는 자율 주행 차량이 주행 결정을 내리기 위한 주변 환경을 구성하는 것에 관한 것이다.
자율 주행 모드에서(예를 들어, 운전자 없이) 운행하는 차량은 탑승자, 특히 운전자의 운전 관련 일부 책무를 덜어줄 수 있다. 자율 주행 모드에서 작동할 때, 차량은 온보드 센서를 사용하여 다양한 위치들로 내비게이트할 수 있고, 그 결과 최소한의 인간과의 상호 작용으로 또는 일부의 경우 승객 없이 차량이 이동하는 것이 허용된다.
운전 중 다양한 결정을 내리는 인간과 마찬가지로, 자율 주행 차량은 신호등, 교통 상황, 안전 규정, 인근 보행자 및 차량 등을 포함하되, 이에 한정되지 않는, 실제 주변 환경에 따라 즉각적인 주행 결정을 언제든지 내려야 한다. 인간이 차량을 운전할 때, 그/그녀는 암묵적으로 각각의 인지된 물체의 존재를 확인하고 각 물체와 결정을 연관시킨다. 따라서, 인간 운전자의 실제 결정 결과는 복잡하고 합성된 절차로부터 나오며, 각 물체에 대한 개별 결정은 통합되고, 차량의 예상 궤적으로 변환되어, 결국 스티어링 휠, 브레이크 및/또는 스로틀의 실제 핸들링으로 변환되는, 최종 결정으로 합성된다. 자율 주행 차량에서 그러한 사고 프로세스를 모방하는 것은 어렵다.
일부 실시예에 따르면, 자율 주행 차량을 개발할 때, 시스템은 자율 주행 차량이 주행 환경을 이해하고 안전하고 적절한 결정을 내리기 위해 특별히 설계된 주행 환경을 구축함으로써 인간 사고 프로세스를 에뮬레이션한다. 주행 환경(주행 세계라고도 함)은 여러 하위 환경(하위 세계라고도 함)으로 구성된다. 각 하위 환경은 지정된 목적을 위한 특정 시공간 영역 또는 주행 시나리오를 포함한다. 일 실시예에서, 구축될 환경은 모든 필수적 상황 하에서 인간이 인지할 수 있는 모든 물체를 캡쳐한다. 상이한 시나리오 하에서, 물체가 상이한 하위 환경에서 나타날 수 있기 때문에 물체는 상이한 의미를 가질 수 있고 따라서 물체에 대해 다른 결정이 이루어진다. 각 하위 환경에서 물체에 대한 결정은 실제 최종 결정 및 처리를 위해 일관된 방식으로 통합된다. 차량의 실제 처리를 나타내는 최종 결정은 각 개별 물체의 최종 결정으로부터 유추된다. 하위 환경은 인간의 주행 경험과 유사한 모든 필요한 시나리오를 포함하는 반면 각 하위 환경은 특정 목적 또는 주행 시나리오로 지정되는 것이 바람직하며, 이러한 하위 환경이 다소 독립적이어서 병렬적으로 빠르게 개발, 유지 및 구성하는 것을 용이하게 한다.
일 실시예에서, 자율 주행 차량에 장착된 다양한 센서로부터 수신된 센서 데이터에 응답하여, 자율 주행 차량의 주변 환경은 센서 데이터에 기초하여 인지된다. 주변 환경에는 자율 주행 차량을 둘러싼 다수의 하위 환경이 포함된다. 각각의 하위 환경에 대하여, 하위 환경에 대응하는 주행 시나리오와 관련된 주행 시나리오 핸들러(handler) 중 하나가 식별된다. 각 주행 시나리오 핸들러는 주행 하위 환경 내에서 특정 주행 시나리오를 처리한다. 식별된 주행 시나리오 핸들러는 대응하는 하위 환경 내에서 주행 조건 또는 주행 환경을 결정하기 위해 호출(invoke)된다. 주변 환경에 대한 전체 주행 조건은 주행 시나리오 핸들러에 의해 제공되는 하위 환경의 주행 조건에 기초하여 결정된다. 주변 환경의 전체 주행 조건에 대한 이해를 기초로 루트 세그먼트가 계획된다. 자율 주행 차량은 루트 세그먼트에 따라 제어되고 구동된다. 루트 세그먼트는 출발 위치에서 목적지 위치까지의 루트의 많은 루트 세그먼트 중 하나이다. 상술한 프로세스는 루트를 따라 각 루트 세그먼트에 대해 반복적으로 수행될 수 있다.
본 발명의 실시예들은 아래의 도면들에서 비제한적이며 예시적으로 도시되며, 유사한 참조 번호는 유사한 요소를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 네트워크 시스템을 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 자율 주행 차량의 일례를 나타내는 블록도이다.
도 3a 및 도 3b는 본 발명의 특정 실시예에 따른 자율 주행 차량과 함께 사용되는 데이터 처리 시스템의 일례를 나타내는 블록도이다.
도 4a 및 도 4b는 본 발명의 일 실시예에 따른 주행 시나리오의 예를 도시하는 블록도이다.
도 5a 및 도 5b는 본 발명의 다른 실시예에 따른 주행 시나리오의 예를 도시하는 블록도이다.
도 6은 본 발명의 일 실시예에 따른 주행 시나리오의 예를 도시하는 블록도이다.
도 7은 본 발명의 일 실시예에 따라 자율 주행 차량을 동작시키는 프로세스를 나타내는 흐름도이다.
도 8은 일 실시예에 따른 데이터 처리 시스템을 나타내는 블록도이다.
본 발명의 다양한 실시예들 및 양상들은 이하 세부 설명을 참조하여 설명되며, 첨부 도면들은 다양한 실시예들을 나타낸다. 아래의 설명 및 도면은 본 발명을 예시적으로 보여주며, 본 발명을 제한하는 것으로 해석되어서는 안 된다. 본 발명의 다양한 실시예들에 대한 완전한 이해를 제공하기 위해 다수의 구체적인 세부 사항들이 설명된다. 그러나, 어떤 경우에는, 본 발명의 실시예들에 대한 간결한 설명을 제공하기 위해 잘 알려진 또는 종래의 세부 사항은 설명되지 않는다.
명세서에서의 "일 실시예" 또는 "실시예"는, 실시예와 관련하여 설명된 특정 특징, 구조 또는 특성이 본 발명의 적어도 하나의 실시예에 포함될 수 있다는 것을 의미한다. 명세서의 다양한 곳에서 기재된 "일 실시예에서"라는 문구는 반드시 모두 동일한 실시예를 지칭하는 것은 아니다.
일부 실시 형태에 따르면 자율 주행 차량을 제조할 때 시스템은 자율 주행 차량에 대한 특별 설계된 주행 환경을 구축하고 인간의 사고 과정을 에뮬레이션함으로써 주행 환경을 이해하고 안전하고 적절한 결정을 내린다. 주행 환경(주행 세계라고도 함)은 몇개의 서브 환경(서브 세계라고도 함)으로 구성되어 있다. 각 서브 환경은 지정된 목적을 위한 특정의 시공간 영역 또는 주행 시나리오를 커버한다. 한 실시 형태에 있어서 구축되는 환경은 인간이 필요한 모든 상황에서 감지할 수 있는 모든 대상을 획득한다. 다른 시나리오에 있어서 대상은 다른 의미를 가질 수 있으며 다른 서브 환경에 출현할 수 있으므로 대상에 대해서 다른 결정이라고 한다. 각 서브 환경의 대상 결정은 실제 최종 결정과 처리 때문에 통합되는 방법으로 합병된다. 차량의 실제 조작을 알리는 최종 결정은 각각의 대상 최종 결정으로 추정된다. 서브 환경은 인간의 운전 경험에 비슷한 모든 필요한 시나리오를 커버하지만 각 서브 환경은 특정 목적 또는 주행 시나리오에 지정되는 것이 바람직하다. 이로써 이들 서브 환경은 일정한 독립성 가지고 개발과 유지 관리가 쉽고, 신속하게 병행하여 구축할 수 있다.
한 실시 형태에서는 자율 주행 차에 탑재된 다양한 센서로부터 수신된 센서 데이터에 응답하고 센서 데이터에 근거하여 자율 주행 차 주변 환경을 감지한다. 주변 환경은 자율 주행 차를 둘러싼 복수의 서브 환경을 포함한다. 각 서브 환경을 서브 환경에 대응하는 주행 시나리오에 관련된 주행 시나리오 핸들러의 1개가 식별된다. 주행 시나리오 핸들러의 각각은 주행 서브 환경 내의 특정의 주행 시나리오를 처리한다. 식별된 주행 시나리오 핸들러는 대응하는 서브 환경 내의 주행 조건 또는 주행 환경을 결정하기 위해서 호출된다. 주행 시나리오 핸들러에 의한 제공된 서브 환경의 주행 조건에 근거하여 주변 환경 전체의 주행 조건이 결정된다. 주변 환경 전체의 주행 조건의 이해에 기초하여 루트 세그먼트가 계획된다. 자율 주행 차는 루트 세그먼트에 따르고 제어되어 주행한다. 루트 세그먼트는 출발지에서 목적지까지 노선의 많은 루트 세그먼트 중의 1개이다. 위의 프로세스는 루트에 따라서 루트 세그먼트마다 반복 실행될 수 있다.
도 1은 본 발명의 일 실시예에 따른 자율 주행 차량 네트워크 구성을 나타내는 블록도이다. 도 1을 참조하면, 네트워크 구성(100)은, 네트워크(102) 상에서 하나 이상의 서버(103-104)와 통신 가능하게 결합될 수 있는 자율 주행 차량(101)을 포함한다. 하나의 자율 주행 차량이 도시되어 있지만, 다수의 자율 주행 차량이 서로 결합될 수 있고/있거나 네트워크(102)를 통해 서버들(103-104)에 결합될 수 있다. 네트워크(102)는 근거리 네트워크(LAN), 인터넷과 같은 광역 네트워크(WAN), 셀룰러 네트워크, 위성 네트워크 또는 이들의 조합과 같은 유선 또는 무선의 임의의 유형의 네트워크일 수 있다. 서버(들)(103-104)는 웹 또는 클라우드 서버, 애플리케이션 서버, 백엔드 서버 또는 이들의 조합과 같은 임의의 종류의 서버 또는 서버 클러스터일 수 있다. 서버(103-104)는 데이터 분석 서버, 콘텐츠 서버, 교통 정보 서버, 지도 및 관심 지점(POI: point of interest) 서버 또는 위치 서버 등일 수 있다.
자율 주행 차량은 차량이 운전자로부터의 입력이 거의 또는 전혀 없이 주변 환경을 내비게이트하는 자율 주행 모드로 구성될 수 있는 차량을 지칭한다. 이러한 자율 주행 차량은 차량이 운행되는 환경에 관한 정보를 검출하도록 구성된 하나 이상의 센서를 갖는 센서 시스템을 포함할 수 있다. 차량 및 관련 제어기(들)는 검출된 정보를 이용하여 주변 환경 사이로 내비게이트한다. 자율 주행 차량(101)은 수동 모드, 완전 자율 주행 모드 또는 부분 자율 주행 모드로 운행될 수 있다.
일 실시예에서, 자율 주행 차량(101)은 데이터 처리 시스템(110), 차량 제어 시스템(111), 무선 통신 시스템(112), 사용자 인터페이스 시스템(113), 인포테인먼트 시스템(114) 및 센서 시스템(115)을 포함하지만, 이에 한정되지 않는다. 자율 주행 차량(101)은, 예를 들어, 가속 신호 또는 명령, 감속 신호 또는 명령, 조향 신호 또는 명령, 제동 신호 또는 명령 등과 같은 다양한 통신 신호 및/또는 명령을 사용하여, 차량 제어 시스템(111) 및/또는 데이터 처리 시스템(110)에 의해 제어될 수 있는, 엔진, 차륜(wheel), 스티어링 휠, 변속기 등과 같은, 일반 차량에 포함되는 특정 공통 구성 요소를 더 포함할 수 있다.
구성요소(110-115)는 인터커넥트(interconnect), 버스, 네트워크 또는 이들의 조합을 통해 서로 통신 가능하게 결합될 수 있다. 예를 들어, 구성요소(110-115)는, 제어기 영역 네트워크(CAN) 버스를 통해 서로 통신 가능하게 결합될 수 있다. CAN 버스는, 호스트 컴퓨터가 없는 어플리케이션들에서 마이크로 컨트롤러들과 장치들이 서로 통신할 수 있도록 설계된 차량 버스 표준이다. 그것은 메시지 기반 프로토콜로서, 원래는 자동차 내의 멀티플렉스(multiplex) 전기 배선을 위해 설계되었지만, 다른 많은 상황에서도 사용된다.
이제 도 2를 참조하면, 일 실시예에서, 센서 시스템(115)은, 하나 이상의 카메라(211), GPS(global positioning system) 유닛(212), 관성 측정 유닛(IMU)(213), 레이더 유닛(214) 및 광 검출 및 측정(LIDAR) 유닛(215)을 포함하지만, 이에 한정되지 않는다. GPS 유닛(212)은 자율 주행 차량의 위치에 관한 정보를 제공하도록 동작 가능한 송수신기(트랜시버)를 포함할 수 있다. IMU 유닛(213)은, 관성 가속도에 기초하여 자율 주행 차량의 위치 및 방향(orientation) 변화를 감지할 수 있다. 레이더 유닛(214)은, 무선 신호를 활용하여 자율 주행 차량의 로컬 환경 내의 물체들을 감지하는 시스템을 나타낼 수 있다. 일부 실시예들에서, 물체를 감지하는 것 외에, 레이더 유닛(214)은 물체의 속력 및/또는 진로(heading)를 추가로 감지할 수 있다. LIDAR 유닛(215)은, 레이저를 사용하여 자율 주행 차량이 위치한 환경 내의 물체들을 감지할 수 있다. LIDAR 유닛(215)은, 여러 시스템 구성 요소들 중에서, 하나 이상의 레이저 소스, 레이저 스캐너 및 하나 이상의 검출기를 포함할 수 있다. 카메라(211)는 자율 주행 차량을 둘러싸는 환경의 이미지를 캡쳐하기 위한 하나 이상의 장치를 포함할 수 있다. 카메라(211)는 정지 화상 카메라 및/또는 비디오 카메라일 수 있다. 카메라는, 예를 들어, 카메라를 회전 및/또는 틸팅 플랫폼에 장착함으로써, 기계적으로 이동 가능할 수 있다.
센서 시스템(115)은, 소나(sonar) 센서, 적외선 센서, 스티어링(조향) 센서, 스로틀 센서, 제동 센서 및 오디오 센서(예를 들어, 마이크로폰)와 같은 다른 센서들을 더 포함할 수 있다. 오디오 센서는 자율 주행 차량을 둘러싸는 환경에서 소리(sound)를 캡쳐하도록 구성될 수 있다. 스티어링 센서는, 스티어링 휠, 차량의 차륜 또는 이들의 조합의 스티어링 각도를 감지하도록 구성될 수 있다. 스로틀 센서 및 제동 센서는, 차량의 스로틀 위치 및 제동 위치를 각각 감지한다. 일부 상황에서는, 스로틀 센서와 제동 센서가 통합 스로틀/제동 센서로 통합될 수 있다.
일 실시예에서, 차량 제어 시스템(111)은, 스티어링 유닛(201), 스로틀 유닛(202)(가속 유닛으로도 지칭됨), 제동 유닛(203), 컴퓨터 비전 시스템(204), 내비게이션 유닛(205)(내비게이션 및 경로 또는 내비게이션/경로 시스템으로도 지칭됨) 및 충돌 회피 유닛(206)(장애물 회피 시스템으로도 지칭됨)을 포함하지만, 이에 한정되지 않는다. 스티어링 유닛(201)은, 차량의 방향 또는 진로(또는 진행 방향)을 조정하기 위한 것이다. 스로틀 유닛(202)은 모터 또는 엔진의 속력을 제어하여 차량의 속력 및 가속도를 차례로 제어하기 위한 것이다. 제동 유닛(203)은 차량의 차륜 또는 타이어를 감속시키도록 마찰을 제공함으로써 차량을 감속시키기 위한 것이다.
컴퓨터 비전 시스템(204)은 자율 주행 차량의 환경 내의 물체 및/또는 특징을 식별하기 위해 하나 이상의 카메라(211)에 의해 캡쳐된 이미지를 처리하고 분석하는 것이다. 물체는 교통 신호, 도로 경계, 다른 차량, 보행자 및/또는 장애물 등을 포함할 수 있다. 컴퓨터 비전 시스템(204)은 물체 인식 알고리즘, 비디오 트래킹(tracking) 및 다른 컴퓨터 비전 기술을 사용할 수 있다. 일부 실시예에서, 컴퓨터 비전 시스템(204)은, 환경을 매핑하고, 물체를 추적하고, 물체의 속력 추정 등을 할 수 있다.
내비게이션 유닛 또는 시스템(205)은 자율 주행 차량의 주행 경로를 결정하는 것이다. 예를 들어, 네비게이션 시스템은, 일련의 속력 및 진행 방향(directional heading)을 결정하여, 인지된 장애물을 실질적으로 피하는 경로를 따라 자율 주행 차량의 이동을 수행하면서, 궁극적인 목적지에 이르는 도로 기반 경로를 따라 자율 주행 차량을 일반적으로 전진시킬 수 있다. 목적지는, 사용자 인터페이스를 통한 사용자 입력에 따라 설정될 수 있다. 내비게이션 시스템(205)은, 자율 주행 차량이 운행되는 동안 주행 경로를 동적으로 업데이트할 수 있다. 네비게이션 시스템(205)은, 자율 주행 차량을 위한 주행 경로를 결정하기 위해 GPS 시스템 및 하나 이상의 지도로부터의 데이터를 통합할 수 있다.
충돌 회피 유닛 또는 시스템(206)은 자율 주행 차량의 환경에서의 잠재적 장애물을 식별, 평가 및 회피하거나 협상(negotiate)하는 것이다. 예를 들어, 충돌 회피 시스템(206)은, 급회피 조작, 선회 조작, 제동 조작 등을 수행하기 위해, 제어 시스템의 하나 이상의 서브 시스템을 조작하여 자율 주행 차량의 네비게이션의 변화를 수행할 수 있다. 충돌 회피 시스템(206)은, 주변의 교통 패턴, 도로 상태 등에 기초하여, 실현 가능한 장애물 회피 조작을 자동으로 결정할 수 있다. 충돌 회피 시스템(206)은, 자율 주행 차량이 급회피하여 진입할 인접 영역에서, 차량, 건축 장애물 등을 다른 센서 시스템들이 검출할 때, 급회피 조작이 수행되지 않도록 구성될 수 있다. 충돌 회피 시스템(206)은, 사용 가능하면서 동시에 자율 주행 차량의 탑승자의 안전을 극대화하는 조작을 자동적으로 선택할 수 있다. 충돌 회피 시스템(206)은, 자율 운행 차량의 승객실에서 최소량의 가속도를 일으킬 것으로 예상되는 회피 조작을 선택할 수 있다. 도 2에 도시된 구성 요소들은, 하드웨어, 소프트웨어 또는 이들의 조합으로 구현될 수 있다.
도 1을 다시 참조하면, 무선 통신 시스템(112)은, 자율 주행 차량(101)과, 장치들, 센서들, 다른 차량들 등과 같은 외부 시스템들 간의 통신을 가능하게 한다. 예를 들어, 무선 통신 시스템(112)은, 하나 이상의 장치들과 직접 또는 네트워크(102) 상의 서버들(103-104)과 같은 통신 네트워크를 통해 무선 통신할 수 있다. 무선 통신 시스템(112)은, 임의의 셀룰러 통신 네트워크 또는 무선 근거리 네트워크(WLAN)를 사용할 수 있으며, 예를 들어, 다른 구성 요소 또는 시스템과 통신하기 위해 WiFi를 사용할 수 있다. 무선 통신 시스템(112)은, 예를 들어, 적외선 링크, 블루투스 등을 사용하여, 장치(예를 들어, 승객의 모바일 장치, 디스플레이 장치, 차량(101) 내의 스피커)와 직접 통신할 수 있다. 사용자 인터페이스 시스템(113)은, 예를 들어, 키보드, 터치 스크린 디스플레이 장치, 마이크로폰 및 스피커 등을 포함하는 차량(101) 내에 구현되는 주변 장치들의 일부일 수 있다.
자율 주행 차량(101)의 모든 기능의 일부는, 특히 자율 주행 모드에서 운행될 때, 데이터 처리 시스템(110)에 의해 제어되거나 관리될 수 있다. 데이터 처리 시스템(110)은, 센서 시스템(115), 제어 시스템(111), 무선 통신 시스템(112) 및/또는 사용자 인터페이스 시스템(113)으로부터 정보를 수신하고, 수신된 정보를 처리하고, 출발점에서 목적지점까지의 루트(route) 또는 경로를 계획한 다음, 계획 및 제어 정보에 기초하여 차량(101)을 주행하기 위해, 필요한 하드웨어(예를 들어, 프로세서(들), 메모리, 저장 장치) 및 소프트웨어(예를 들어, 운영 체제, 계획 및 라우팅(routing) 프로그램)을 포함한다. 대안적으로, 데이터 처리 시스템(110)은 차량 제어 시스템(111)과 통합될 수 있다.
예를 들어, 승객인 사용자는, 예를 들어, 사용자 인터페이스를 통해 여행의 출발 위치 및 목적지를 지정할 수 있다. 데이터 처리 시스템(110)은 자율 주행 차량(101)의 다른 구성 요소와 통신하여 여행 관련 데이터를 얻는다. 예를 들어, 데이터 처리 시스템(110)은 서버(103-104)의 일부일 수 있는, 위치 서버 및 지도 및 POI(MPOI) 서버로부터 위치 및 루트 정보를 획득할 수 있다. 위치 서버는 위치 서비스를 제공하고, MPOI 서버(105)는 지도 서비스와 특정 위치들의 POI들을 제공한다. 대안적으로, 이러한 위치 및 MPOI 정보는 데이터 처리 시스템(110)의 영구 저장 장치에 국부적으로 캐시될 수 있다.
루트를 따라 자율 주행 차량(101)을 이동하는 동안, 데이터 처리 시스템(110)은 교통 정보 시스템 또는 서버(TIS)로부터 실시간 교통 정보도 얻을 수 있다. 서버(103-104)는 제3자 엔티티에 의해 운영될 수 있다. 대안적으로, 서버들(103-104)의 기능들은 데이터 처리 시스템(110)과 통합될 수 있다. 데이터 처리 시스템(110)은, 실시간 교통 정보, MPOI 정보 및 위치 정보뿐만 아니라 센서 시스템(115)에 의해 검출 또는 감지된 실시간 로컬 환경 데이터(예를 들어, 장애물, 물체, 주변 차량)에 기초하여, 최적의 루트를 계획하고 예를 들어, 제어 시스템(111)을 통해, 지정된 목적지에 안전하고 효율적으로 도착하기 위해 계획된 루트에 따라 차량(101)을 주행할 수 있다.
일 실시예에 따르면, 자율 주행 차량(101)은 차량(101)의 승객에게 정보 및 엔터테인먼트(entertainment)를 제공하는 인포테인먼트 시스템(114)을 더 포함할 수 있다. 정보 및 엔터테인먼트 콘텐츠는 국부적으로 및/또는 원격으로 저장된 콘텐츠 정보(예컨대, 서버(103-104)에 의해 제공됨)에 기초하여 수신되고, 컴파일되고 렌더링(rendered)될 수 있다. 예를 들어, 정보는 네트워크(102)를 통해 임의의 서버(103-104)로부터 실시간으로 스트리밍되고 차량(101)의 디스플레이 장치 상에 디스플레이 될 수 있다. 정보는 예를 들어, 하나 이상의 카메라에 의해 실시간으로 캡쳐된 로컬 정보로 증강될(augmented) 수 있으며, 그 다음 증강된 콘텐츠는 가상 현실 방식으로 디스플레이될 수 있다.
자율 주행 차량에는, 실제 또는 물리적 창문(또는 윈도우)이 없을 수 있다. 오히려, "윈도우(window)"(본 명세서에서 가상 윈도우로 지칭됨)는, 선택적으로 터치 스크린을 구비한, 차량 윈도우의 형상으로 성형된 평면 또는 곡선형 스크린 디스플레이 장치로 나타나거나 대체될 수 있다. 디스플레이 장치는, 마치 사용자가 투명 윈도우를 통해 실제 물리적 콘텐츠를 관람하거나 보듯이, 적절한 카메라 또는 카메라들에 의해 실시간으로 동적으로 캡처되는 이미지 또는 이미지 스트림 (예를 들어, 비디오)을 표시할 것이다. 각각의 "윈도우"(예를 들어, 디스플레이 디바이스)에는, 실시간으로 디스플레이될 대응 콘텐츠를 스트리밍하기 위한 대응디스플레이 채널이 있으며, 이는 증강 현실 시스템, 예를 들어, 인포테인먼트 시스템(114) 및/또는 데이터 처리 시스템(110)에 의해 중앙 집중적으로 처리될 수 있다. 이러한 상황에서, 증강된 이미지는 인포테인먼트 시스템(114)을 통해 가상 현실 방식으로 디스플레이되고, 이는 증강 현실 방식이라고도 지칭된다.
일 실시예에서, 위치 및 루트 정보, MPOI 정보, 및/또는 실시간 교통 정보에 기초하여, 인포테인먼트 시스템(114) 및/또는 데이터 처리 시스템(110)은 현재의 교통 환경(예를 들어, MPOI )에 적절한 콘텐츠의 특정 유형을 결정한다. 시스템은, 예를 들어 실시간 여행(또는 이동) 정보에 기초하여, 콘텐츠 아이템 후보들로서 리스트 콘텐츠 아이템(예를 들어, 스폰서된 콘텐츠 또는 광고들)을 식별하기 위해 콘텐츠 인덱스(도시되지 않음)에서 룩업 동작을 수행한다.
일 실시예에 따르면, 데이터 처리 시스템(110)은 계획 모듈 및 제어 모듈(미도시)을 포함한다. 계획 모듈은 루트 또는 루트의 루트 세그먼트를 계획하여 제어 모듈이 자율 주행 차량(101)을 제어 및 주행시키고 계획된 루트를 따라 이동할 수 있게 한다. 루트는 자율 주행 차량에 장착된 다양한 센서로부터 수신된 센서 데이터를 기초로 자율 주행 차량(101)을 둘러싼 전체 주행 환경의 이해 또는 인지에 기초하여 생성될 수 있다.
일 실시예에서, 전체 주행 환경을 구성하거나 이해할 때, 주행 환경은 하나 이상의 하위 환경으로 분할되거나 인지되며, 각 하위 환경은 환경의 세그먼트를 나타낸다. 각 하위 환경은 하위 환경 내의 주행 조건을 나타내는 주행 파라미터 또는 메타 데이터 세트를 결정하기 위해 각각의 주행 시나리오 핸들러에 의해 처리된다. 루트를 따라 주기적으로 (예를 들어, 0.1 초마다) 이동할 때, 자율 주행 차량(101)은 센서 시스템(115)으로부터 센서 데이터를 수신하고 자율 주행 차량(101)의 주변 환경을 인지한다. 자율 주행 차량(101)은 주변 환경을 인식하고 하나 이상의 하위 환경으로 분할한다.
각각의 하위 환경에 대해, 대응하는 주행 시나리오 핸들러가 식별 및 호출되어 하위 환경의 주행 조건 또는 설정을 결정한다. 그런 다음, 자율 주행 차량(101)은 하위 환경의 개별 주행 조건에 기초하여 전체 주행 환경의 전체 주행 조건을 파악하여 결정한다. 후속 루트 세그먼트는 전체 주변 환경의 주행 조건에 대한 이해를 기초로 계획된다. 그 후, 자율 주행 차량(101)은 루트 세그먼트에 따라 이동한다. 상술한 과정은 루트를 따라 상이한 시점에서 각 루트 세그먼트에 대해 반복적으로 수행된다. 비디오 스트림의 비디오 프레임과 유사하게, 특정 시점에서의 주변 환경을 나타내는 각 프레임에 대해, 상술한 프로세스가 수행되어 후속 루트 세그먼트를 따라 자율 주행 차량(101)을 주행하기 위한 주행 조건 또는 주행 파라미터를 결정한다.
도 3a는 본 발명의 일 실시예에 따라 자율 주행 차량과 함께 사용되는 데이터 처리 시스템의 일례를 나타내는 블록도이다. 시스템(300)은 도 1의 자율 주행 차량(101)으로 구현될 수 있다. 도 3a를 참조하면, 데이터 처리 시스템(110)은 계획 모듈(301), 제어 모듈(302), 맵 및 루트 모듈(303) 및 인지 모듈(304)을 포함하지만 이에 한정되지 않는다. 또한, 데이터 처리 시스템(110)은 주행 시나리오 핸들러(305)의 리스트를 더 포함하고, 각 주행 시나리오 핸들러는 전체 주행 환경 중 대응 하위 환경 내에서 특정 주행 시나리오를 처리한다.
인지 모듈(304)은 인지된 보행자, 차량 및 장애물과 같은 주행 환경을 인지하는 센서 시스템(115)으로부터 수신된 센서 데이터를 처리하고, 마스터 차량 상태 정보(로컬라이제이션(localization), GPS 정보 및 섀시 상태)도 수집 및 변환되어 처리 및 결정을 위한 계획 모듈(301)에 제공된다. 인지 모듈(304)은 "보는 것과 있는 곳"("what do I see and where I am")을 처리하는 모듈이다. 맵 및 루트 모듈(303)은 맵 및 라우팅 정보가 저장되는 모듈이다. 주행 시나리오 핸들러(305)은 "어디로 가야 하는지, 주위에 있는 길은 무엇인지"(what do I see and where I am")와 같은 정보를 저장한다.
계획 모듈(301)은 센서 시스템(115)으로부터 수신된 센서 데이터 및/또는 다양한 소스들로부터 수신된 실시간 정보와 같은 다양한 정보(예컨대, 위치, 맵, 맵의 일부분인 POI 및 관심 지점 또는 MPOI 데이터베이스(303))에 기초하여 자율 주행 차량에 대한 경로 또는 루트를 계획한다. 계획 및 제어 데이터는 계획 모듈(301)에 의해 생성된다. 계획 및 제어 데이터에 기초하여, 제어 모듈(302)은 계획 및 제어 데이터에 의해 정의된 루트 또는 경로에 따라, 차량 제어 시스템(111)에 적절한 명령 또는 신호를 전송함으로써 자율 주행 차량을 제어하는 것이다. 계획 및 제어 데이터에는, 경로 또는 루트 상의 시간에 따른 상이한 시점에서 적절한 차량 설정 또는 주행 파라미터(예를 들어, 스로틀, 제동 및 선회 명령)를 사용하여 루트 또는 경로의 제1 지점에서 제2 지점까지 차량을 주행할 수 있는 충분한 정보가 포함되어 있다.
계획 모듈(301)은 자율 주행 차량이 주행 결정 및 계획을 수립하는 핵심 논리 모듈(core logic module)이다. 맵, 루트 및 인지된 물체를 고려하며, 교통 규칙 및/또는 이전 경험에 기초하여 차량의 조작(maneuver) 방식을 결정하고 계획한다. 궤적 및 속력/가속도와 같은 원하는 조작 상태에 관한 정보는 추가 처리를 위해 제어 모듈(302)로 전달된다. 계획 모듈(301) 및 제어 모듈(302)은, 도 2의 차량 제어 시스템(111)의 네비게이션 유닛(205)에 통신 가능하게 연결되거나 통합될 수 있다.
루트 또는 루트 세그먼트를 계획할 때, 계획 모듈(301)은 인지 모듈(304)에 의해 결정된 주변 환경 중 인지된 하위 환경에 대응하는 하나 이상의 주행 시나리오 핸들러를 호출한다. 각각의 주행 시나리오 핸들러는 인지된 하위 환경을 처리하여 하위 환경의 주행 조건을 결정하며, 이는 차량이 그 하위 환경에 진입하기로 결정한 경우 하위 환경 내에 어떤 물체가 위치하는지 그리고 차량이 어떻게 움직이는지를 결정하는 것을 포함한다. 주행 시나리오 핸들러로부터 획득된 개별 주행 조건에 기초하여, 계획 모듈(301)은 의사 결정을 수행한다. 특히, 계획 모듈(301)은 개개의 주행 시나리오 핸들러에 의해 인지되고 처리되는 하위 환경에 기초하여 전체 주변 환경을 구성한다. 계획 모듈(301)은 개개의 주행 시나리오 핸들러로부터의 개별 결정 또는 제안에 기초하여 최종 루트 결정한다. 계획 모듈(301)은 후속 루트 세그먼트를 나타내는 계획 및 제어 데이터를 생성하고 계획 및 제어 데이터를 제어 모듈(302)로 전송한다. 계획 및 제어 데이터에 기초하여, 제어 모듈(302)은 시스템(111)을 제어하기 위한 적절한 제어 명령 또는 지시를 발행하여 차량이 후속 루트 세그먼트 내에서 이동하도록 한다.
도 3b는 본 발명의 일 실시예에 따른 주행 시나리오 핸들러의 예시를 도시한 블록도이다. 도 3b를 참조하면, 일 실시예에서, 주행 시나리오 핸들러는 1) 특정 시나리오 핸들러(305A) 및 2) 공통 시나리오 핸들러(305B)의 2개의 레이어를 포함한다. 각각의 특정 시나리오 핸들러(305A)는 하위 환경에서 물체를 식별하는 것, 물체와 차량 사이의 거리, 및 차량이 특정 하위 환경에 진입하는 경우에 어떻게 움직여야 하는지를 결정하는 것을 포함하여, 특정 하위 환경의 주행을 처리한다. 각각의 공통 시나리오 핸들러(305B)는 특정 시나리오에 의해 공유되는 소정의 공통 시나리오를 처리한다. 각각의 공통 시나리오 핸들러(305B)는 특정 시나리오 핸들러(305A) 중 임의의 하나에 의해 호출될 수 있다. 각 시나리오 핸들러는 기본적으로 소정의 속성(attribute)과 연관된 속성(attribute) 또는 오브젝트(object)를 추출하는 일련의 API를 제공한다. 이러한 API는 주변 환경을 더 잘 이해하고 그에 기반하여 적절한 결정을 내리기 위해 계획 모듈(301)에 의해 활용된다.
일 실시예에서, 특정 시나리오 핸들러(305A)는, 전방(head) 차량 핸들러(321), 우측 순방향(foward) 차로 핸들러(322), 좌측 순방향 차로 핸들러(323), 후미(tailgate) 차량 핸들러(324), 우측 근접 핸들러(325), 좌측 역방향(reverse) 차로 핸들러(326), 교차로 핸들러(327), 차로 병합 핸들러(328), 횡단보도 핸들러(329) 및 클리어 존 핸들러(330)를 포함하지만, 이에 한정되지 않는다. 공통 시나리오 핸들러(305B)는 마스터 차량 핸들러(331), 교통 신호 핸들러(332), 정지 신호 핸들러(333) 및 양보 신호 핸들러(334)를 포함하지만 이에 한정되지 않는다.
마스터 차량 핸들러(331)는 차량이 현재 위치한 차로, 차량의 이동 방향, 위치, 맵 및 차량의 루트 정보를 포함하는 차량 자체에 관한 정보를 제공하나, 이에 한정되는 것은 아니다. 전방 차량 핸들러(321)는 전방 차량의 속력 및 전방 차량과 자율 주행 차량 간의 거리를 포함하여, 자율 주행 차량 앞에서 현재 이동 중인 전방 차량에 관한 정보를 제공한다. 전방 차량 핸들러(321)는 자율 주행 차량이 전방 차량을 따라 가야하는지 또는 전방 차량을 지나가야 하는지에 대한 제안을 더 제공할 수 있다.
우측 순방향 차로 핸들러(322) 및 좌측 순방향 차로 핸들러(323)는 자율 차량에 대한 우측 순방향 차로 및 좌측 순방향 차로에 관한 정보를 각각 제공한다. 제공되는 정보는 우측 및/또는 좌측 순방향 차로 공간 영역에 위치한 모든 물체 또는 차량을 포함할 수 있다. 예를 들어, 순방향 차로 핸들러는 자율 주행 차량이 차로 변경을 원하지 않는 경우 넛지(nudge)할 물체를 나타낼 수 있으며, 자율 주행 차량이 차로 변경을 원할 경우 양보하거나 추월할 물체를 나타낼 수 있다. 좌측 역방향 차로 핸들러(326)는 물체가 반대 방향에서 자율 주행 차량에 접근하고 있다는 것을 나타낼 수 있고, 넛지(nudge) 여부에 대해 제안을 나타낼 수 있다. 차로 병합 핸들러(328)는 자율 주행 차량이 양보해야 하는지 또는 추월해야 하는지를 나타내는 정보를 제공할 수 있다. 차로 병합 핸들러(328)는 교통 신호 핸들러(332)와 양보 신호 핸들러(334)와 조율될 수 있다.
후미 차량 핸들러(324)는 후미 차량과 자율 주행 차량 간의 속력 및 거리를 포함하여 자율 주행 차량을 따라오는 임의의 후미 차량을 식별할 수 있다. 우측 근접 대상 핸들러(325)는 임의의 실제 차선에 있지 않지만, 현재의 우측 차로의 우측 근접 영역에 있는 물체의 환경을 모델링한다. 예시로서, 자전거 차선의 오른쪽에 있는 자전거, 오른쪽 연석에 있는 보행자 또는 오른쪽에 주차된 차량 또는 고정 물체가 포함된다.
교차로 핸들러(327)는 차량이 한 영역에서 다른 지정 교차 영역으로 이동하는 영역을 포함하여 전체 교통 교차점(traffic junction)을 모델링한다. 예를 들어, 우회전할 때, 계획 모듈(301)은 교차로 핸들러(327)를 이용하여 교통 규칙 및 조건에 따라 추월되거나 양보될 필요가 있는 충돌 가능한 트래픽을 제공한다. 교차로 핸들러(327)는 수행될 특정 경로가 주어지면 어떤 물체 또는 물체들이 추월, 양보 또는 정지해야 하는지를 나타낼 수 있다.
횡단보도 핸들러(329)는 보행자가 걸을 가능성이 있는 영역을 모델링한다. 횡단보도 핸들러(329)는 횡단보도에 보행자가 있는지를 식별할 수 있다. 클리어 존 핸들러(330)는 자율 주행 차량이 통과할 수는 있지만 정지할 수 없는 영역을 모델링한다. 클리어 존 핸들러(330)는 교통 신호 핸들러(332)와 조율하여 자율 주행 차량이 클리어 존에 진입하기 전에 통과해야 하는지 또는 정지해야 하는지를 결정할 수 있다.
교통 신호 핸들러(332)는 자율 주행 차량의 현재 루트를 목적지로 제어하는 신호 정보를 제공한다. 교통 신호 핸들러(332)는 신호가 최근 변경된 이후 특정 교통 신호가 얼마나 오랫동안 유지되었는지 더 표시할 수 있다. 정지 신호 핸들러(333)는 현재 차로 또는 다른 차로에 정지 신호가 있는지 여부를 나타내는 정보를 제공한다. 정지 신호 핸들러(333)는 자율 주행 차량이 통행 권한을 가지는지의 여부를 더 표시할 수 있다. 정지 신호 핸들러(333)는 자율 주행 차량이 통행 권한을 가지고 있거나 가지고 있지 않는 대상을 추가로 식별할 수 있다. 정지 신호 핸들러(333)는 자율 주행 차량이 다시 이동을 시작하기 전에 자율 주행 차량이 충분한 기간(예를 들어, 3초) 동안 정지했는지 여부를 더 표시할 수 있다. 유사하게, 양보 신호 핸들러(334)는 현재 차로 및 다른 차로에 양보 신호가 있는지의 여부를 나타낸다. 핸들러(332-334)는 임의의 특정 핸들러(321-330)에 의해 호출될 수 있다.
도 4a는 본 발명의 일 실시예에 따른 주행 시나리오의 예시를 나타내는 도면이다. 도 4a를 참조하면, 이 예시에서, (마스터 차량 핸들러(331)에 의해 표시되는) 자율 주행 차량(401)이 중간 차로에서 주행 중이다. 센서 시스템(115)에서 수신된 센서 데이터에 기초하여, 인지된 하위 환경(402-405)이 점선 사각형에 표시된다. 하위 환경(402)은 우측 순방향 차로 시나리오를 나타낸다. 하위 환경(403)은 마스터 차량(401) 앞의 전방 차량 시나리오를 나타낸다. 하위 환경(404)은 좌측 순방향 차로 시나리오를 나타낸다. 하위 환경(405)은 후미 차량 시나리오를 나타낸다. 이러한 하위 환경(402-405)이 인지되고 식별되면, 전방 차량 핸들러(321), 우측 순방향 차로 핸들러(322), 좌측 순방향 차로 핸들러(323) 및 후미 차량 핸들러(324)와 같은 해당 주행 시나리오가 식별되고 도 4b에서 도시되는 것처럼 계획 모듈(301)에 의해 호출된다.
연관된 시나리오 핸들러에 의해 제공되는 하위 환경의 주행 조건을 나타내는 정보에 기초하여, 계획 모듈(301)은 자율 주행 차량을 제어하기 위해 루트 또는 루트 세그먼트를 계획하여 계획 및 제어 데이터를 생성한다. 본 예시에서, 전방 차량 핸들러(321)는 자율 주행 차량으로부터의 속력 및 거리와 같은 하위 환경(403)에서 전방 차량에 관한 정보를 제공할 수 있다. 자율 주행 차량이 전방 차량을 따라가야 하는지 아니면 차로를 변경해야 하는지에 대한 제안 사항이 제시될 수 있다. 유사하게, 후미 차량 핸들러(324)는 후미 차량과 자율 차량 사이의 속력 및 거리를 포함하여 하위 환경(405) 내의 자율 주행 차량 뒤에서 주행하는 차량에 관한 정보를 제공한다.
우측 순방향 차로 핸들러(322) 및 좌측 순방향 차로 핸들러(323)는 각각의 하위 환경(402, 404) 내에서 주행 조건을 제공한다. 본 예시에서, 좌측 순방향 차로 핸들러(323)는 근접 좌측 차로에서 주행하는 2개의 차량이 있고, 원격 좌측 차로로부터 근접 좌측 차로로 합류(merge)하는 또 다른 차량이 있음을 나타낼 수 있다. 우측 순방향 차로 핸들러(322)는 근접 우측 차로에는 차량이 없지만, 원격 우측 차로에 차량이 있음을 나타낼 수 있다. 하위 환경(402-405)에 관한 모든 정보에 기초하여, 계획 모듈(301)은 차로를 근접 우측 차로로 변경하는 것을 결정할 수 있다. 전체 환경을 특정 주행 시나리오 핸들러에 의해 처리되는 다수의 하위 환경으로 분할함으로써, 계획 모듈(301)의 의사 결정이 보다 효율적일 수 있다.
도 5a는 본 발명의 다른 실시예에 따른 주행 시나리오의 예를 도시하는 도면이다. 도 5a를 참조하면, 본 예시에서, 환경은 센서 시스템(115)에 의해 제공된 센서 데이터에 기초하여 좌측 역방향 차로 하위 환경(502) 및 우측 근접 하위 환경(503)을 가지는 것으로 인지된다. 따라서, 좌측 역방향 차로 핸들러(326) 및 우측 근접 핸들러(325)는 도 5b에 표시된 바와 같이 하위 환경(502-503) 내의 주행 조건을 결정하기 위해 호출된다. 본 예시에서, 좌측 역방향 핸들러(326)는 속력과 거리를 포함해서 반대 방향으로 좌측 차로에서 다가오는 차량이 있다는 것을 나타낼 수 있다. 우측 근접 핸들러(325)는 마스터 차량 하위 환경(501)에 나타나는 자율 주행 차량이 주행하는 차로의 연석에 보행자 및 자전거가 있음을 나타낼 수 있다. 계획 모듈(301)은 자율 주행 차량의 속력을 감소시키거나, 보행자 및 자전거 등을 통과하기 전에 반대편 차량이 통과하게 하는 것과 같이 루트를 계획할 수 있다.
도 6은 본 발명의 다른 실시예에 따른 주행 시나리오의 예시를 도시하는 도표이다. 마스터 차량(501)에 의해 표시된 자율 주행 차량의 관점에서 도 6을 참조하면, 인지된 환경은 하나 이상의 교통 신호 하위 환경(602), 교차로 하위 환경(603), 클리어 존 하위 환경(604), 및 횡단보도 하위 환경(605)을 포함한다. 결과적으로, 계획 모듈(301)에 의해 호출되는 대응 핸들러는 교차로 핸들러(327), 횡단보도 핸들러(329), 클리어 존 핸들러(330), 마스터 차량 핸들러(331) 및 교통 신호 핸들러(332)를 포함한다. 이러한 핸들러에 의해 제공된 정보에 기초하여, 계획 모듈(301)은 그에 따라 계획할 수 있다.
도 7은 본 발명의 일 실시예에 따라 자율 주행 차량을 동작시키는 프로세스를 나타내는 흐름도이다. 프로세스(700)는 소프트웨어, 하드웨어, 또는 이들의 조합을 포함할 수 있는 프로세싱 로직에 의해 수행될 수 있다. 예를 들어, 프로세스(700)는 도 1의 데이터 프로세싱 시스템(110)에 의해 수행될 수 있다. 도 7을 참조하면, 블록(701)에서, 프로세싱 로직은 자율 주행 차량에 장착된 다양한 센서를 갖는 센서 시스템으로부터 센서 데이터를 수신한다. 블록(702)에서, 프로세싱 로직은 하나 이상의 하위 환경의 리스트를 결정하기 위해 센서 데이터에 기초하여 자율 주행 차량의 주변 환경을 인지한다. (예: 교차로, 횡단보도, 왼쪽 차선, 오른쪽 차선). 각각의 하위 환경에 대해, 블록(703)에서, 프로세싱 로직은 하위 환경의 주행 조건을 결정하기 위해 하위 환경에 대응하는 특정 주행 시나리오 핸들러를 식별하고 호출한다. 블록(704)에서, 프로세싱 로직은 주행 시나리오 핸들러에 의해 제공되는 주행 조건에 기초하여 루트 또는 루트 세그먼트의 계획 및 제어 데이터를 계획하고 생성한다. 블록(705)에서, 프로세싱 로직은 계획 및 제어 데이터에 기초하여 자율 주행 차량을 주행 및 제어한다.
상술되고 도시된 구성 요소의 일부 또는 전부는 소프트웨어, 하드웨어 또는 이들의 조합으로 구현될 수 있다. 예를 들어, 이러한 구성 요소는 영구 기억 장치에 설치되고 저장되는 소프트웨어로서 구현될 수 있고, 이는 본 출원 전반에 걸쳐 기술된 프로세스 또는 동작들을 실행하기 위해 프로세서(미도시)에 의해 메모리에 로딩되고 실행될 수 있다. 대안적으로, 이러한 구성 요소는, 집적 회로(예를 들어, 주문형 집적 회로 또는 ASIC), 디지털 신호 처리기(DSP) 또는 필드 프로그래머블 게이트 어레이(Field Programmable Gate Array; FPGA)와 같은 전용 하드웨어에 프로그램되거나 내장된 실행 가능 코드로서 구현될 수 있으며, 이는 애플리케이션으로부터 대응하는 드라이버 및/또는 운영 체제를 통해 액세스될 수 있다. 또한, 이러한 구성요소는, 하나 이상의 특정 명령을 통해 소프트웨어 구성요소에 의해 액세스 가능한 명령어 세트의 일부로서, 프로세서 또는 프로세서 코어 내에 특정 하드웨어 로직으로서 구현될 수 있다.
도 8은 본 발명의 일 실시예와 함께 사용될 수 있는 데이터 처리 시스템의 일례를 나타내는 블록도이다. 예를 들어, 시스템(1500)은 예컨데 도 1의 데이터 처리 시스템(110) 또는 서버(103-104) 중 하나와 같은, 상술된 임의의 프로세스나 방법을 수행하는 상술된 임의의 데이터 처리 시스템을 나타낼 수 있다. 시스템(1500)은 다수의 상이한 구성 요소들을 포함할 수 있다. 이들 구성 요소는, 집적 회로(IC), 그 부분, 개별 전자 장치 또는 컴퓨터 시스템의 마더 보드 또는 애드-인 카드와 같은 회로 보드에 적용되는 다른 모듈로서 구현 될 수 있거나, 컴퓨터 시스템의 샤시 내에 다른 방법으로 통합되는 구성 요소들로써 구현될 수 있다.
또한, 시스템(1500)은 컴퓨터 시스템의 많은 구성 요소들의 상위 레벨 뷰를 도시하기 위한 것이다. 그러나, 추가의 구성 요소가 특정 구현 예에 존재할 수 있고, 또한, 도시된 구성 요소의 상이한 배열이 다른 구현 예에서 나타날 수 있음을 이해해야 한다. 시스템(1500)은 데스크탑, 랩탑, 태블릿, 서버, 이동 전화, 미디어 플레이어, PDA(personal digital assistant), 스마트 워치, 개인용 통신기, 게임 장치, 네트워크 라우터 또는 허브, 무선 액세스 포인트(AP) 또는 중계기(repeater), 셋톱 박스 또는 이들의 조합일 수 있다. 또한, 단지 하나의 기계 또는 시스템이 도시되어 있지만, "기계" 또는 "시스템"이라는 용어는, 본 출원에서 기술하는 방법들의 하나 이상을 실행하기 위해, 개별적으로 또는 공동으로 명령어들의 세트(또는 다수의 세트)를 수행하는 임의의 기계 또는 시스템의 집합을 포함하도록 취급될 것이다.
일 실시예에서, 시스템(1500)은 버스 또는 인터커넥트(1510)를 통해 프로세서(1501), 메모리(1503) 및 디바이스들(1505-1508)을 포함한다. 프로세서(1501)는, 내부에 단일 프로세서 코어 또는 다중 프로세서 코어를 포함하는, 단일 프로세서 또는 다중 프로세서를 나타낼 수 있다. 프로세서(1501)는, 마이크로 프로세서, 중앙 처리 장치(CPU) 등과 같은 하나 이상의 범용 프로세서를 나타낼 수 있다. 구체적으로, 프로세서(1501)는 CISC(COMPLEX INSTRUCTION SET COMPUTING) 마이크로프로세서, RISC(REDUCED INSTRUCTION SET COMPUTING) 마이크로프로세서, VLIW(VERY LONG INSTRUCTION WORD) 마이크로프로세서, 또는 다른 명령어 세트를 구현하는 프로세서, 또는 명령어 세트의 조합을 구현하는 프로세서들일 수 있다. 프로세서(1501)는 주문형 집적 회로(ASIC), 셀룰러 또는 베이스 밴드 프로세서, 필드 프로그래머블 게이트 어레이(FPGA), 디지털 신호 프로세서(DSP), 네트워크 프로세서, 그래픽 프로세서, 통신 프로세서, 암호화 프로세서, 코-프로세서, 임베디드 프로세서, 또는 명령어를 처리할 수 있는 임의의 다른 유형의 로직 등과 같은 하나 이상의 특수 목적 프로세서일 수도 있다.
프로세서(1501)는, 초 저전압 프로세서와 같은 저전력 멀티 코어 프로세서 소켓일 수 있고, 시스템의 다양한 구성요소와의 통신을 위한 메인 프로세싱 유닛 및 중앙 허브로서 작동할 수 있다. 이러한 프로세서는 시스템 온 칩(SoC)으로서 구현될 수 있다. 프로세서(1501)는, 본 명세서에서 논의된 동작들 및 단계들을 수행하기 위한 명령어들을 실행하도록 구성된다. 시스템(1500)은, 디스플레이 제어기, 그래픽 프로세서 및/또는 디스플레이 장치를 포함할 수 있는, 선택적인 그래픽 서브 시스템(1504)과 통신하는 그래픽 인터페이스를 더 포함할 수 있다.
프로세서(1501)는, 일 실시예에서 주어진 양의 시스템 메모리를 제공하기 위한 다수의 메모리 장치를 통해 구현될 수 있는, 메모리(1503)와 통신할 수 있다. 메모리(1503)는, 랜덤 액세스 메모리(RAM), 다이나믹 RAM(DRAM), 동기식 DRAM(SDRAM), 스태틱 RAM(SRAM)와 같은 하나 이상의 휘발성 저장(또는 메모리) 장치 또는 다른 유형의 저장 장치를 포함할 수 있다. 메모리(1503)는, 프로세서(1501) 또는 임의의 다른 장치에 의해 실행되는 명령어들의 시퀀스를 포함하는 정보를 저장할 수 있다. 예를 들어, 다양한 운영 체제, 장치 드라이버, 펌웨어(예를 들어, 입출력 기본 시스템 또는 BIOS), 및/또는 애플리케이션의 실행 가능 코드 및/또는 데이터는 메모리(1503)에 로드되고 프로세서(1501)에 의해 실행될 수 있다. 운영 체제는, 예를 들어, 로봇 운영 체제(ROS), 마이크로소프트® 사의 윈도우즈® 운영 체제, 애플의 맥 OS®/iOS®, 구글®의 안드로이드®, LINUX, UNIX, 또는 다른 실시간 또는 임베디드 운영 체제와 같은 임의의 유형의 운영 체제일 수 있다.
시스템(1500)은, 네트워크 인터페이스 장치(들)(1505), 선택적인 입력 장치(들)(1506) 및 다른 선택적인 I/O 장치(들)(1507)를 포함하는 장치들(1505-1508)과 같은 I/O 장치들을 더 포함할 수 있다. 네트워크 인터페이스 디바이스(1505)는 무선 트랜시버 및/또는 네트워크 인터페이스 카드(NIC)를 포함할 수 있다. 무선 트랜시버는, WiFi 트랜시버, 적외선 트랜시버, 블루투스 트랜시버, WiMax 트랜시버, 무선 셀룰러 전화 트랜시버, 위성 트랜시버(예를 들어, GPS(Global Positioning System) 송수신기) 또는 다른 무선 주파수(RF) 트랜시버일 수 있으며, 또는 이들의 조합일 수 있다. NIC는 이더넷 카드(Ethernet card)일 수 있다.
입력 장치(들)(1506)는, 마우스, 터치 패드, (디스플레이 장치(1504)와 통합될 수 있는) 터치 감지 스크린, 스타일러스와 같은 포인터 장치 및/또는 키보드(예를 들어, 물리적 키보드 또는 터치 감지 스크린의 일부로 표시되는 가상 키보드)를 포함할 수 있다. 예를 들어, 입력 장치(1506)는, 터치 스크린에 결합되는 터치 스크린 제어기를 포함할 수 있다. 터치 스크린 및 터치 스크린 제어기는, 예컨대 다수의 터치 감도 기술 중 임의의 것을 사용하여 접촉(CONTACT) 및 이동(MOVE) 또는 중지(BREAK)를 검출할 수 있다. 터치 감도 기술은 예를 들어, 용량성, 저항성, 적외선 및 표면 탄성파 기술뿐만 아니라, 터치 스크린과의 하나 이상의 접촉점을 결정하기 위한 그 외의 근접 센서 어레이 또는 다른 요소를 포함하며, 이에 제한되지 않는다.
I/O 장치들(1507)은 오디오 장치를 포함할 수 있다. 오디오 장치는 음성 인식, 음성 복제, 디지털 녹음 및/또는 전화 기능과 같은 음성 작동 기능을 가능하게 하기 위해 스피커 및/또는 마이크를 포함할 수 있다. 다른 I/O 장치들(1507)은, USB(universal serial bus) 포트(들), 병렬 포트(들), 직렬 포트(들), 프린터, 네트워크 인터페이스, 버스 브리지(예를 들어, PCI-PCI 브리지), 센서(들)(예를 들어, 가속도계, 자이로스코프, 자력계, 광 센서, 나침반, 근접 센서 등과 같은 모션 센서) 또는 이들의 조합을 포함할 수 있다. 장치들(1507)은 이미징 프로세싱 서브 시스템(예를 들어, 카메라)를 더 포함할 수 있다. 이미징 프로세싱 서브 시스템은, 사진 및 비디오 클립 녹화와 같은 카메라 기능들을 가능하게 하는데 이용되는, CCD(CHARGE COUPLED DEVICE) 또는 CMOS(COMPLEMENTARY METAL-OXIDE SEMICONDUCTOR) 광학 센서와 같은 광학 센서를 포함할 수 있다. 특정 센서들은, 센서 허브(미도시)를 통해 인터커넥트(1510)에 연결될 수 있고, 키보드 또는 열 센서와 같은 다른 장치는 시스템(1500)의 구체적인 구성 또는 설계에 따라 내장형 제어기(미도시)에 의해 제어될 수 있다.
데이터, 애플리케이션, 하나 이상의 운영 체제 등과 같은 정보의 영구 저장을 제공하기 위해, 대용량 저장 장치(미도시)가 또한 프로세서(1501)에 연결될 수 있다. 다양한 실시예에서, 시스템 응답성을 향상하고 더 얇고 가벼운 시스템 설계를 가능하게 하기 위해, 이 대용량 저장 장치는 SSD(solid state device)를 통해 구현될 수 있다. 그러나, 다른 실시예들에서, 대용량 저장 장치는, 시스템 활동의 재가동 시에 빠른 파워 업이 일어나도록, 파워 다운 이벤트들 동안 컨텍스트 상태(context state) 및 다른 그러한 정보의 비 휘발성 저장을 가능하게 하기 위해 SSD 캐시로서 작용하는, 더 적은 양의 SSD 스토리지와 함께 하드 디스크 드라이브(HDD)를 사용하여 주로 구현될 수 있다. 또한, 플래시 장치는, 예를 들어, 직렬 주변 장치 인터페이스(SPI)를 통해 프로세서(1501)에 결합될 수 있다. 이 플래시 장치는, 시스템의 다른 펌웨어뿐만 아니라 BIOS를 포함하는, 시스템 소프트웨어의 비휘발성 저장 공간을 제공할 수 있다.
저장 장치(1508)는, 본 명세서에 기술된 방법들 또는 기능들의 하나 이상을 내장하는 하나 이상의 명령어 세트 또는 소프트웨어(예를 들어, 모듈, 유닛 및/또는 로직(1528)이 저장되는 컴퓨터 액세스 가능 저장 매체(1509)(기계 판독 가능 저장 매체 또는 컴퓨터 판독 가능 매체로도 알려짐)을 포함할 수 있다. 프로세싱 모듈/유닛/로직(1528)은 예를 들어, 플래닝 모듈(301), 제어 모듈(302), 또는 임의의 주행 시나리오 핸들러(321-334)와 같은 전술한 컴포넌트 중 임의의 것을 나타낼 수 있다. 처리 모듈/유닛/로직(1528)은 또한 머신 액세스 가능 저장 매체를 또한 구성하는, 데이터 처리 시스템(1500), 메모리(1503) 및 프로세서(1501)에 의한 실행 중에 메모리(1503) 및/또는 프로세서(1501) 내에 완전히 또는 적어도 부분적으로 상주할 수 있다. 프로세싱 모듈/유닛/로직(1528)은 네트워크 인터페이스 장치(1505)를 통해 네트워크를 통해 더 송신되거나 수신될 수 있다.
또한, 컴퓨터 판독 가능 저장 매체(1509)는 전술한 일부 소프트웨어 기능을 지속적으로 저장하는데 사용될 수 있다. 컴퓨터 판독 가능 저장 매체(1509)는 예시적인 실시예에서 단일 매체로 도시되지만, "컴퓨터 판독 가능 저장 매체"라는 용어는 하나 이상의 명령어 세트들을 저장하는 단일 매체 또는 다중 매체(예를 들어, 중앙 집중식 또는 분산형 데이터베이스 및/또는 연관된 캐시들 및 서버들)를 포함하도록 취급되어야 한다. "컴퓨터 판독 가능 저장 매체"라는 용어는, 또한 기계에 의한 실행을 위한 명령어 세트를 저장 또는 인코딩할 수 있고, 본 발명의 방법론들 중 하나 이상을 기계가 수행하게 하는 임의의 매체를 포함하도록 취급될 것이다. 따라서, "컴퓨터 판독 가능 저장 매체"라는 용어는, 솔리드 스테이트 메모리, 광학 및 자기 매체, 또는 임의의 다른 비 일시적 기계 판독 가능 매체를 포함하도록 취급될 것이지만, 이에 한정되는 것은 아니다.
프로세싱 모듈/유닛/로직(1528), 본 명세서에서 설명된 구성 요소들 및 다른 특징들은, 개별 하드웨어 구성 요소들로서 구현되거나, ASIC, FPGA, DSP 또는 유사한 장치와 같은 하드웨어 구성 요소들의 기능성에 통합될 수 있다. 또한, 처리 모듈/유닛/로직(1528)은 하드웨어 장치 내의 펌웨어 또는 기능 회로로 구현될 수 있다. 또한, 처리 모듈/유닛/로직(1528)은 임의의 조합 하드웨어 장치 및 소프트웨어 구성 요소로 구현될 수 있다.
시스템(1500)은, 데이터 처리 시스템의 다양한 구성 요소로 도시되어 있지만, 구성 요소를 상호 접속시키는 임의의 특정 아키텍처나 방식을 나타내 위한 것이 아니다. 이러한 세부 사항들은 본 발명의 실시예들과 관련되지 않는다. 네트워크 컴퓨터들, 핸드 헬드 컴퓨터들, 이동 전화들, 서버들 및/또는 더 적은 구성 요소 또는 더 많은 구성 요소를 갖는 다른 데이터 처리 시스템들 또한 본 발명의 실시예들과 함께 사용될 수 있다.
전술한 상세 설명의 일부는, 컴퓨터 메모리 내의 데이터 비트에 대한 동작의 알고리즘 및 기호 표현의 방식으로 제시되었다. 이러한 알고리즘 설명 및 표현은, 데이터 처리 기술 분야의 당업자가 자신의 연구 내용을 다른 당업자에게 가장 효과적으로 전달하는데 사용되는 방법이다. 알고리즘은 본 명세서에서 그리고 일반적으로, 원하는 결과를 이끌어내는 일관된 동작 순서(self-consistent sequence)로 인식된다. 이 동작들은 물리량의 물리적인 조작을 요구하는 것들이다.
그러나 이러한 모든 용어 및 그와 유사한 용어들은 적절한 물리량과 관련되어야 하며 이러한 수량에 적용되는 편리한 레이블일 뿐이다. 상기 논의로부터 명백한 바와 같이, 특별히 달리 언급되지 않는 한, 명세서 전반에 걸쳐, 이하의 특허청구범위에서 제시된 것과 같은 용어들을 활용한 논의들은, 컴퓨터 시스템의 레지스터 및 메모리 내의 물리(전자)량으로 표현되는 데이터를, 컴퓨터 시스템 메모리 또는 레지스터 또는 다른 그러한 정보 저장소, 전송 또는 디스플레이 장치 내에 물리량으로 유사하게 표현되는 다른 데이터로 조작하고 변형시키는, 컴퓨터 시스템 또는 유사한 전자 컴퓨팅 장치의 동작 및 프로세스를 지칭한다.
본 발명의 실시예는 또한 본 명세서의 동작을 수행하기 위한 장치에 관한 것이다. 이러한 컴퓨터 프로그램은 비일시적 컴퓨터 판독 가능 매체에 저장된다. 기계 판독 가능 매체는, 기계(예를 들어, 컴퓨터)에 의해 판독 가능한 형태로 정보를 저장하기 위한 임의의 메커니즘을 포함한다. 예를 들어, 기계 판독 가능(예를 들어, 컴퓨터 판독 가능) 매체는 기계(예를 들어, 컴퓨터) 판독 가능 저장 매체(예를 들어, 읽기 전용 메모리(ROM)), 랜덤 액세스 메모리(RAM), 자기 디스 저장 매체, 광학 저장 매체, 플래시 메모리 장치)를 포함한다.
상기 도면들에 도시된 프로세스들 또는 방법들은, 하드웨어(예를 들어, 회로, 전용 로직 등), 소프트웨어(예를 들어, 비일시적인 컴퓨터 판독 가능 매체 상에 구현되는), 또는 이들의 조합을 포함하는 프로세싱 로직에 의해 수행될 수 있다. 프로세스들 또는 방법들이 몇몇 순차적인 동작들과 관련해서 상술되었지만, 기술된 동작들 중 일부는 다른 순서로 수행될 수 있다. 더욱이, 몇몇 동작들은 순차적으로보다는 병렬로 수행될 수 있다.
본 발명의 실시예는 임의의 특정 프로그래밍 언어를 참조하여 설명되지 않는다. 본 명세서에 설명된 본 발명의 실시예들의 교시를 구현하기 위해 다양한 프로그래밍 언어가 사용될 수 있다.
전술한 명세서에서, 본 발명의 실시예는 특정 예시적 실시예를 참조하여 설명되었다. 후술할 특허청구범위에 기재된 본 발명의 보다 넓은 사상 및 영역을 벗어나지 않으면서도 다양한 변형이 가능하다는 것은 명백할 것이다. 따라서, 명세서 및 도면은 제한적인 의미라기보다는 예시적인 의미로 간주되어야 한다.

Claims (21)

  1. 자율 주행 차량을 운행하기 위한 컴퓨터로 구현된 방법에 있어서,
    자율 주행 차량에 장착된 복수의 센서로부터 수신된 센서 데이터에 응답하여, 상기 센서 데이터에 기초하여 상기 자율 주행 차량을 둘러싼 복수의 하위 환경을 포함하는 주변 환경을 인식하는 단계;
    상기 하위 환경의 각각에 대해,
    상기 하위 환경과 관련된 복수의 주행 시나리오 핸들러 중 하나를 식별하는 단계 - 상기 주행 시나리오 핸들러 각각은 복수의 주행 시나리오 중 하나에 대응됨 -;
    상기 식별된 주행 시나리오 핸들러를 호출하여 상기 대응 하위 환경 내에서 개별 주행 조건을 결정하는 단계;
    상기 식별된 주행 시나리오 핸들러가 제공한 상기 개별 주행 조건에 기초하여 상기 주변 환경에 대한 전체 주행 조건을 결정하는 단계;
    상기 주변 환경의 상기 전체 주행 조건에 기초하여 루트 세그먼트를 계획하고, 계획 및 제어 데이터를 생성하는 단계; 및
    상기 계획 및 제어 데이터에 기초하여 상기 자율 주행 차량을 제어하는 단계를 포함하고,
    상기 복수의 주행 시나리오 핸들러 각각은, 상기 센서 데이터에 기초하여 상기 자율 주행 차량이 상기 대응 하위 환경 내에서 움직이는 방식을 나타내는 주행 파라미터를 제공하는, 방법.
  2. 삭제
  3. 제1항에 있어서, 상기 복수의 주행 시나리오 핸들러는, 특정 주행 시나리오를 처리하는 제1 세트의 주행 시나리오 핸들러와 공통 주행 시나리오를 처리하는 제2 세트의 주행 시나리오 핸들러를 포함하는, 방법.
  4. 제3항에 있어서, 상기 제1 세트의 주행 시나리오 핸들러 각각은, 상기 제2 세트의 주행 시나리오 핸들러 중 적어도 하나를 호출하는, 방법.
  5. 제3항에 있어서, 상기 제1 세트의 주행 시나리오 핸들러는,
    우측 차로 시나리오를 처리하는 제1 핸들러;
    좌측 차로 시나리오를 처리하는 제2 핸들러; 및
    교차로 시나리오를 처리하는 제3 핸들러를 포함하는, 방법.
  6. 제5항에 있어서, 상기 제1 세트의 주행 시나리오 핸들러는,
    전방 차량 시나리오를 처리하는 제4 핸들러;
    후미 차량 시나리오를 처리하는 제5 핸들러; 및
    횡단보도 시나리오를 처리하는 제6 핸들러를 더 포함하는, 방법.
  7. 제3항에 있어서, 상기 제2 세트의 주행 시나리오 핸들러는,
    교통 신호 시나리오를 처리하는 제1 핸들러;
    정지 신호 시나리오를 처리하는 제2 핸들러; 및
    양보 신호 시나리오를 처리하는 제3 핸들러를 포함하는, 방법.
  8. 명령어들을 저장하는 비일시적 기계 판독 가능 매체로서, 상기 명령어들은 프로세서에 의해 실행될 때 상기 프로세서로 하여금 자율 주행 차량을 운행 시키는 동작들을 수행하게 하고, 상기 동작들은,
    자율 주행 차량에 장착된 복수의 센서로부터 수신된 센서 데이터에 응답하여, 상기 센서 데이터에 기초하여 상기 자율 주행 차량을 둘러싼 복수의 하위 환경을 포함하는 주변 환경을 인식하는 것;
    상기 하위 환경의 각각에 대해,
    상기 하위 환경과 관련된 복수의 주행 시나리오 핸들러 중 하나를 식별하는 것 - 상기 주행 시나리오 핸들러 각각은 복수의 주행 시나리오 중 하나에 대응됨 -;
    상기 식별된 주행 시나리오 핸들러를 호출하여 상기 대응 하위 환경 내에서 개별 주행 조건을 결정하는 것;
    상기 식별된 주행 시나리오 핸들러가 제공한 상기 개별 주행 조건에 기초하여 상기 주변 환경에 대한 전체 주행 조건을 결정하는 것;
    상기 주변 환경의 상기 전체 주행 조건에 기초하여 루트 세그먼트를 계획하고, 계획 및 제어 데이터를 생성하는 것; 및
    상기 계획 및 제어 데이터에 기초하여 상기 자율 주행 차량을 제어하는 것을 포함하고,
    상기 복수의 주행 시나리오 핸들러 각각은, 상기 센서 데이터에 기초하여 상기 자율 주행 차량이 상기 대응 하위 환경 내에서 움직이는 방식을 나타내는 주행 파라미터를 제공하는, 비일시적 기계 판독 가능 매체.
  9. 삭제
  10. 제8항에 있어서, 상기 복수의 주행 시나리오 핸들러는, 특정 주행 시나리오를 처리하는 제1 세트의 주행 시나리오 핸들러와 공통 주행 시나리오를 처리하는 제2 세트의 주행 시나리오 핸들러를 포함하는, 비일시적 기계 판독 가능 매체.
  11. 제10항에 있어서, 상기 제1 세트의 주행 시나리오 핸들러 각각은, 상기 제2 세트의 주행 시나리오 핸들러 중 적어도 하나를 호출하는, 비일시적 기계 판독 가능 매체.
  12. 제10항에 있어서, 상기 제1 세트의 주행 시나리오 핸들러는,
    우측 차로 시나리오를 처리하는 제1 핸들러;
    좌측 차로 시나리오를 처리하는 제2 핸들러; 및
    교차로 시나리오를 처리하는 제3 핸들러를 포함하는, 비일시적 기계 판독 가능 매체.
  13. 제12항에 있어서, 상기 제1 세트의 주행 시나리오 핸들러는,
    전방 차량 시나리오를 처리하는 제4 핸들러;
    후미 차량 시나리오를 처리하는 제5 핸들러; 및
    횡단보도 시나리오를 처리하는 제6 핸들러를 더 포함하는, 비일시적 기계 판독 가능 매체.
  14. 제10항에 있어서, 상기 제2 세트의 주행 시나리오 핸들러는,
    교통 신호 시나리오를 처리하는 제1 핸들러;
    정지 신호 시나리오를 처리하는 제2 핸들러; 및
    양보 신호 시나리오를 처리하는 제3 핸들러를 포함하는, 비일시적 기계 판독 가능 매체.
  15. 데이터 처리 시스템에 있어서,
    프로세서; 및
    상기 프로세서에 결합되어 명령어들을 저장하는 메모리를 포함하고, 상기 명령어들은 상기 프로세서에 의해 실행될 때 상기 프로세서로 하여금 자율 주행 차량을 운행하는 동작들을 수행하게 하며, 상기 동작들은,
    자율 주행 차량에 장착된 복수의 센서로부터 수신된 센서 데이터에 응답하여, 상기 센서 데이터에 기초하여 상기 자율 주행 차량을 둘러싼 복수의 하위 환경을 포함하는 주변 환경을 인식하는 것;
    상기 하위 환경의 각각에 대해,
    상기 하위 환경과 관련된 복수의 주행 시나리오 핸들러 중 하나를 식별하는 것 - 상기 주행 시나리오 핸들러 각각은 복수의 주행 시나리오 중 하나에 대응됨 -;
    상기 식별된 주행 시나리오 핸들러를 호출하여 상기 대응 하위 환경 내에서 개별 주행 조건을 결정하는 것;
    상기 식별된 주행 시나리오 핸들러가 제공한 상기 개별 주행 조건에 기초하여 상기 주변 환경에 대한 전체 주행 조건을 결정하는 것;
    상기 주변 환경의 상기 전체 주행 조건에 기초하여 루트 세그먼트를 계획하고, 계획 및 제어 데이터를 생성하는 것; 및
    상기 계획 및 제어 데이터에 기초하여 상기 자율 주행 차량을 제어하는 것을 포함하고,
    상기 복수의 주행 시나리오 핸들러 각각은, 상기 센서 데이터에 기초하여 상기 자율 주행 차량이 상기 대응 하위 환경 내에서 움직이는 방식을 나타내는 주행 파라미터를 제공하는, 데이터 처리 시스템.
  16. 삭제
  17. 제15항에 있어서, 상기 복수의 주행 시나리오 핸들러는, 특정 주행 시나리오를 처리하는 제1 세트의 주행 시나리오 핸들러와 공통 주행 시나리오를 처리하는 제2 세트의 주행 시나리오 핸들러를 포함하는, 데이터 처리 시스템.
  18. 제17항에 있어서, 상기 제1 세트의 주행 시나리오 핸들러 각각은, 상기 제2 세트의 주행 시나리오 핸들러 중 적어도 하나를 호출하는, 데이터 처리 시스템.
  19. 제17항에 있어서, 상기 제1 세트의 주행 시나리오 핸들러는,
    우측 차로 시나리오를 처리하는 제1 핸들러;
    좌측 차로 시나리오를 처리하는 제2 핸들러; 및
    교차로 시나리오를 처리하는 제3 핸들러를 포함하는, 데이터 처리 시스템.
  20. 제19항에 있어서, 상기 제1 세트의 주행 시나리오 핸들러는,
    전방 차량 시나리오를 처리하는 제4 핸들러;
    후미 차량 시나리오를 처리하는 제5 핸들러; 및
    횡단보도 시나리오를 처리하는 제6 핸들러를 더 포함하는, 데이터 처리 시스템.
  21. 제17항에 있어서, 상기 제2 세트의 주행 시나리오 핸들러는,
    교통 신호 시나리오를 처리하는 제1 핸들러;
    정지 신호 시나리오를 처리하는 제2 핸들러; 및
    양보 신호 시나리오를 처리하는 제3 핸들러를 포함하는, 데이터 처리 시스템.
KR1020187009648A 2016-08-29 2017-01-17 자율 주행 차량의 주행 결정을 위한 주변 환경 구성 방법 및 시스템 KR102071154B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/250,815 US10712746B2 (en) 2016-08-29 2016-08-29 Method and system to construct surrounding environment for autonomous vehicles to make driving decisions
US15/250,815 2016-08-29
PCT/US2017/013808 WO2018044340A1 (en) 2016-08-29 2017-01-17 Method and system to construct surrounding environment for autonomous vehicles to make driving decisions

Publications (2)

Publication Number Publication Date
KR20180049040A KR20180049040A (ko) 2018-05-10
KR102071154B1 true KR102071154B1 (ko) 2020-01-29

Family

ID=61242450

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187009648A KR102071154B1 (ko) 2016-08-29 2017-01-17 자율 주행 차량의 주행 결정을 위한 주변 환경 구성 방법 및 시스템

Country Status (6)

Country Link
US (1) US10712746B2 (ko)
EP (1) EP3332300B1 (ko)
JP (1) JP6684345B2 (ko)
KR (1) KR102071154B1 (ko)
CN (1) CN108139756B (ko)
WO (1) WO2018044340A1 (ko)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6650635B2 (ja) * 2016-02-29 2020-02-19 パナソニックIpマネジメント株式会社 判定装置、判定方法、および判定プログラム
US10438074B2 (en) * 2017-06-14 2019-10-08 Baidu Usa Llc Method and system for controlling door locks of autonomous driving vehicles based on lane information
US11262756B2 (en) * 2018-01-15 2022-03-01 Uatc, Llc Discrete decision architecture for motion planning system of an autonomous vehicle
US10782699B2 (en) * 2018-03-10 2020-09-22 Baidu Usa Llc Real-time perception adjustment and driving adaption based on surrounding vehicles' behavior for autonomous driving vehicles
CN110398953B (zh) * 2018-04-25 2024-06-14 长沙智能驾驶研究院有限公司 智能驾驶系统、方法及计算机可读存储介质
EP3807807A1 (en) * 2018-06-18 2021-04-21 Zoox, Inc. Occlusion aware planning
US10642275B2 (en) 2018-06-18 2020-05-05 Zoox, Inc. Occulsion aware planning and control
US20200004265A1 (en) * 2018-06-28 2020-01-02 Baidu Usa Llc Autonomous driving vehicles with redundant ultrasonic radar
US11066067B2 (en) * 2018-06-29 2021-07-20 Baidu Usa Llc Planning parking trajectory for self-driving vehicles
US11054829B2 (en) 2018-07-17 2021-07-06 Baidu Usa Llc Multimodal motion planning framework for autonomous driving vehicles
KR102095333B1 (ko) * 2018-07-24 2020-04-01 인하대학교 산학협력단 증강현실 기반 실차 테스트 방법 및 시스템
US11186276B2 (en) * 2018-07-27 2021-11-30 Baidu Usa Llc Adjusting speeds along a path for autonomous driving vehicles
CN109032113A (zh) * 2018-08-09 2018-12-18 北京智行者科技有限公司 车辆控制单元
US10877473B2 (en) * 2018-08-09 2020-12-29 Here Global B.V. Method, apparatus and computer program product for differential policy enforcement for roadways
US10816995B2 (en) * 2018-08-24 2020-10-27 Baidu Usa Llc GPS based high precision timestamp generation circuit for an autonomous driving vehicle
US10788841B2 (en) * 2018-08-24 2020-09-29 Baidu Usa Llc Hardware centralized time synchronization hub for an autonomous driving vehicle
US10816979B2 (en) * 2018-08-24 2020-10-27 Baidu Usa Llc Image data acquisition logic of an autonomous driving vehicle for capturing image data using cameras
DE102018214419B4 (de) * 2018-08-27 2020-03-19 Volkswagen Aktiengesellschaft Verfahren und Vorrichtung zum automatisierten Fahren eines Fahrzeugs
CN109358592B (zh) 2018-08-30 2020-09-08 百度在线网络技术(北京)有限公司 车辆故障处理方法、装置、设备及存储介质
CN111027349B (zh) * 2018-10-10 2023-08-29 百度在线网络技术(北京)有限公司 一种防尾随提示方法、装置、设备及存储介质
US11087144B2 (en) * 2018-10-10 2021-08-10 Harman International Industries, Incorporated System and method for determining vehicle data set familiarity
CN111103874A (zh) * 2018-10-26 2020-05-05 百度在线网络技术(北京)有限公司 用于控制车辆的自动驾驶的方法、装置、设备和介质
CN111199087A (zh) * 2018-10-31 2020-05-26 百度在线网络技术(北京)有限公司 场景识别方法和装置
CN109677402A (zh) * 2018-11-13 2019-04-26 顺丰科技有限公司 自动驾驶工具的安全防护系统及方法
JP6935507B2 (ja) * 2018-12-26 2021-09-15 バイドゥ ドットコム タイムス テクノロジー (ベイジン) カンパニー リミテッド 自動運転のための自己反転線の相互回避アルゴリズム
CN111399490B (zh) * 2018-12-27 2021-11-19 华为技术有限公司 一种自动驾驶方法以及装置
CN110614995B (zh) * 2018-12-29 2021-01-22 长城汽车股份有限公司 车辆自动驾驶时的行车道选择方法、选择系统及车辆
CN109606384B (zh) 2018-12-29 2021-04-20 百度在线网络技术(北京)有限公司 车辆控制方法、装置、设备和存储介质
CN111771206B (zh) * 2019-01-30 2024-05-14 百度时代网络技术(北京)有限公司 用于自动驾驶车辆的地图分区系统
US10796571B2 (en) * 2019-01-31 2020-10-06 StradVision, Inc. Method and device for detecting emergency vehicles in real time and planning driving routes to cope with situations to be expected to be occurred by the emergency vehicles
EP3696786B1 (en) * 2019-02-13 2023-12-13 Volkswagen Aktiengesellschaft System, vehicle, network component, apparatuses, methods, and computer programs for a vehicle and a network component
CN109871017B (zh) * 2019-02-20 2022-09-13 阿波罗智能技术(北京)有限公司 自动驾驶参考线调用方法、装置和终端
CN109760675B (zh) * 2019-03-12 2021-05-25 百度在线网络技术(北京)有限公司 预测车辆轨迹的方法、装置、存储介质和终端设备
US11373527B2 (en) * 2019-03-25 2022-06-28 Micron Technology, Inc. Driver assistance for non-autonomous vehicle in an autonomous environment
US11341846B2 (en) 2019-04-04 2022-05-24 Geotab Inc. Traffic analytics system for defining road networks
US11335191B2 (en) 2019-04-04 2022-05-17 Geotab Inc. Intelligent telematics system for defining road networks
US11403938B2 (en) 2019-04-04 2022-08-02 Geotab Inc. Method for determining traffic metrics of a road network
US11335189B2 (en) 2019-04-04 2022-05-17 Geotab Inc. Method for defining road networks
US10699564B1 (en) 2019-04-04 2020-06-30 Geotab Inc. Method for defining intersections using machine learning
CN111845785A (zh) * 2019-04-29 2020-10-30 安波福技术有限公司 用于实现对传感器故障的自主运载工具响应的系统和方法
US11731612B2 (en) * 2019-04-30 2023-08-22 Baidu Usa Llc Neural network approach for parameter learning to speed up planning for complex driving scenarios
CN111982109A (zh) * 2019-05-24 2020-11-24 北京百度网讯科技有限公司 用于路径规划的方法、装置、设备和计算机可读存储介质
JP7255677B2 (ja) * 2019-06-18 2023-04-11 株式会社Ihi 走行経路生成装置及び制御装置
US11120566B2 (en) * 2019-06-28 2021-09-14 Baidu Usa Llc Determining vanishing points based on feature maps
KR20210005393A (ko) * 2019-07-04 2021-01-14 현대자동차주식회사 자율주행차량의 유턴 제어 장치 및 그 방법
US20210027629A1 (en) * 2019-07-25 2021-01-28 Baidu Usa Llc Blind area processing for autonomous driving vehicles
CN110488814A (zh) * 2019-07-30 2019-11-22 深圳市前海胡桃科技有限公司 一种自动驾驶方法、装置及终端设备
CN110491155A (zh) * 2019-07-30 2019-11-22 深圳市前海胡桃科技有限公司 一种自动驾驶装置的调度方法、装置及自动驾驶装置
US11958183B2 (en) 2019-09-19 2024-04-16 The Research Foundation For The State University Of New York Negotiation-based human-robot collaboration via augmented reality
CN110796007B (zh) * 2019-09-27 2023-03-03 华为技术有限公司 场景识别的方法与计算设备
CN112835346A (zh) * 2019-11-04 2021-05-25 大众汽车(中国)投资有限公司 用于控制车辆的方法和系统、及车载自动驾驶系统
CN111158659B (zh) * 2019-11-27 2021-10-01 华为技术有限公司 自动驾驶应用程序在不同开发平台间对接的方法
CN111178454A (zh) * 2020-01-03 2020-05-19 北京汽车集团有限公司 自动驾驶数据的标注方法、云端控制平台及存储介质
US11740628B2 (en) 2020-03-18 2023-08-29 Baidu Usa Llc Scenario based control of autonomous driving vehicle
US11673576B2 (en) * 2020-03-23 2023-06-13 Baidu Usa Llc Nested scenarios in planning for autonomous driving vehicles
US11312393B2 (en) * 2020-05-29 2022-04-26 Robert Bosch Gmbh Artificially falsifying sensor data to initiate a safety action for an autonomous vehicle
JP7230894B2 (ja) * 2020-09-29 2023-03-01 いすゞ自動車株式会社 自動運転装置
CN112965476B (zh) * 2021-01-22 2022-06-07 西安交通大学 一种基于多窗口模型的高速无人车轨迹规划系统及方法
CN112968946B (zh) * 2021-02-01 2023-06-02 斑马网络技术有限公司 网联车的场景识别方法、装置及电子设备
DE112021007341T5 (de) * 2021-03-22 2024-01-04 Mitsubishi Electric Corporation Steuervorrichtung und Steuerverfahren
CN113640014A (zh) * 2021-08-13 2021-11-12 北京赛目科技有限公司 自动驾驶车辆测试场景的构建方法、装置及可读存储介质
CN113734196B (zh) * 2021-08-27 2023-04-28 上海集度汽车有限公司 一种自动驾驶方法及自动驾驶系统及自动驾驶汽车
CN114274965A (zh) * 2021-12-29 2022-04-05 深圳市元征科技股份有限公司 车辆控制方法、车辆控制装置、车载终端设备及存储介质
CN114298772A (zh) * 2021-12-30 2022-04-08 阿波罗智联(北京)科技有限公司 信息展示方法、装置、设备以及存储介质
CN114407922A (zh) * 2022-01-18 2022-04-29 上汽通用五菱汽车股份有限公司 智能车辆自动驾驶方法、装置、设备及可读存储介质
CN116991084B (zh) * 2023-09-28 2023-12-19 北京斯年智驾科技有限公司 一种无人驾驶模拟仿真系统、方法、装置和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009184633A (ja) * 2008-02-08 2009-08-20 Denso Corp 車両制御システム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5229941A (en) * 1988-04-14 1993-07-20 Nissan Motor Company, Limtied Autonomous vehicle automatically running on route and its method
EP0913751B1 (de) 1997-11-03 2003-09-03 Volkswagen Aktiengesellschaft Autonomes Fahrzeug und Verfahren zur Steuerung eines autonomen Fahrzeuges
JP4353192B2 (ja) * 2006-03-02 2009-10-28 トヨタ自動車株式会社 進路設定方法、装置、プログラム、および自動運転システム
JP2011048470A (ja) * 2009-08-25 2011-03-10 Toyota Motor Corp 環境予測装置
US8589014B2 (en) * 2011-06-01 2013-11-19 Google Inc. Sensor field selection
US9140792B2 (en) * 2011-06-01 2015-09-22 GM Global Technology Operations LLC System and method for sensor based environmental model construction
US20130197736A1 (en) * 2012-01-30 2013-08-01 Google Inc. Vehicle control based on perception uncertainty
US8457827B1 (en) * 2012-03-15 2013-06-04 Google Inc. Modifying behavior of autonomous vehicle based on predicted behavior of other vehicles
JP6136543B2 (ja) * 2013-05-01 2017-05-31 村田機械株式会社 自律移動体
US8818681B1 (en) 2013-07-24 2014-08-26 Google Inc. Detecting and responding to tailgaters
FR3013875B1 (fr) * 2013-11-25 2017-03-31 Renault Sas Systeme et procede de formation d'images nocturnes pour un vehicule automobile.
CN104890670B (zh) * 2014-03-06 2019-09-10 富顶精密组件(深圳)有限公司 驾驶辅助系统及驾驶辅助方法
US20150316386A1 (en) * 2014-04-30 2015-11-05 Toyota Motor Engineering & Manufacturing North America, Inc. Detailed map format for autonomous driving
US20150316387A1 (en) 2014-04-30 2015-11-05 Toyota Motor Engineering & Manufacturing North America, Inc. Detailed map format for autonomous driving
CN104386063B (zh) * 2014-09-19 2017-07-11 奇瑞汽车股份有限公司 基于人工智能的驾驶辅助系统
CN105751999B (zh) * 2016-03-31 2018-07-20 汪家琳 全智能全自动无人驾驶汽车
US20180005052A1 (en) * 2016-07-01 2018-01-04 Uber Technologies, Inc. Static object detection for operating autonomous vehicle

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009184633A (ja) * 2008-02-08 2009-08-20 Denso Corp 車両制御システム

Also Published As

Publication number Publication date
KR20180049040A (ko) 2018-05-10
CN108139756B (zh) 2021-04-16
WO2018044340A1 (en) 2018-03-08
EP3332300B1 (en) 2020-04-29
US20180059672A1 (en) 2018-03-01
EP3332300A4 (en) 2018-08-22
EP3332300A1 (en) 2018-06-13
JP6684345B2 (ja) 2020-04-22
JP2019501435A (ja) 2019-01-17
US10712746B2 (en) 2020-07-14
CN108139756A (zh) 2018-06-08

Similar Documents

Publication Publication Date Title
KR102071154B1 (ko) 자율 주행 차량의 주행 결정을 위한 주변 환경 구성 방법 및 시스템
US11042157B2 (en) Lane/object detection and tracking perception system for autonomous vehicles
KR102223270B1 (ko) 여분의 초음파 radar를 구비한 자율 주행 차량
KR102078488B1 (ko) 차량 주변의 컨텍스트에 기초하여 차량의 하나 이상의 궤적을 예측하는 방법 및 시스템
KR102070530B1 (ko) 모션 계획에 기초한 자율 주행 차량의 운행 방법 및 시스템
JP6619778B2 (ja) 自律走行車の車両交通行動を予測して運転決定をするための方法及びシステム
US10457294B1 (en) Neural network based safety monitoring system for autonomous vehicles
US11367354B2 (en) Traffic prediction based on map images for autonomous driving
KR101975728B1 (ko) 자율 주행 차량을 위한 사이드슬립 보상 제어 방법
KR102048646B1 (ko) 자율 주행 차량 이동을 시뮬레이트하기 위한 물리 모델 및 머신 러닝과 결합된 방법
CN107943016B (zh) 用于自主车辆的群体驾驶风格学习框架
JP6799592B2 (ja) 自律走行車を完全に停止させるための速度制御
KR102279078B1 (ko) 자율 주행 차량의 v2x 통신 기반의 차량 차로 시스템
CN108136867B (zh) 自动驾驶车辆的车辆位置点转发方法
KR102398256B1 (ko) 비전 기반 인식 시스템에 의한 대립적 샘플들 검출 방법
JP2018158721A (ja) 自動運転車両に用いられる衝突予測及びエアバッグ事前展開システム
CN109085818B (zh) 基于车道信息控制自动驾驶车辆的车门锁的方法和系统
CN111712417A (zh) 用于自动驾驶车辆的、基于隧道的规划系统
US11080975B2 (en) Theft proof techniques for autonomous driving vehicles used for transporting goods
US20210188282A1 (en) Methods for obstacle filtering for a non-nudge planning system in an autonomous driving vehicle
CN111328313A (zh) 用于自动驾驶车辆的控制占主导的三点转弯规划
CN111103876A (zh) 自动驾驶车辆的基于雷达通信的扩展感知

Legal Events

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