KR102352063B1 - 자율 주행 차량에서 정차 분석을 향상시키기 위해 승객들의 승하차 시간을 추정하기 - Google Patents

자율 주행 차량에서 정차 분석을 향상시키기 위해 승객들의 승하차 시간을 추정하기 Download PDF

Info

Publication number
KR102352063B1
KR102352063B1 KR1020217036308A KR20217036308A KR102352063B1 KR 102352063 B1 KR102352063 B1 KR 102352063B1 KR 1020217036308 A KR1020217036308 A KR 1020217036308A KR 20217036308 A KR20217036308 A KR 20217036308A KR 102352063 B1 KR102352063 B1 KR 102352063B1
Authority
KR
South Korea
Prior art keywords
vehicle
location
time
passenger
processors
Prior art date
Application number
KR1020217036308A
Other languages
English (en)
Other versions
KR20210135367A (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 KR20210135367A publication Critical patent/KR20210135367A/ko
Application granted granted Critical
Publication of KR102352063B1 publication Critical patent/KR102352063B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • G01C21/3438Rendez-vous, i.e. searching a destination where several users can meet, and the routes to this destination for these users; Ride sharing, i.e. searching a route such that at least two users can share a vehicle for at least part of the route
    • 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/18Propelling the vehicle
    • B60W30/18009Propelling the vehicle related to particular drive situations
    • B60W30/18054Propelling the vehicle related to particular drive situations at stand still, e.g. engine in idling state
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/14Adaptive cruise control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/10Estimation 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 vehicle motion
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/3815Road data
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • GPHYSICS
    • 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/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0291Fleet control
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/123Traffic control systems for road vehicles indicating the position of vehicles, e.g. scheduled vehicles; Managing passenger vehicles circulating according to a fixed timetable, e.g. buses, trains, trams
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/20Monitoring the location of vehicles belonging to a group, e.g. fleet of vehicles, countable or determined number of vehicles
    • G08G1/202Dispatching vehicles on the basis of a location, e.g. taxi dispatching
    • 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
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0043Signal treatments, identification of variables or parameters, parameter estimation or state estimation
    • B60W2050/0052Filtering, filters
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/04Vehicle stop

Landscapes

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

Abstract

본 개시내용의 양태들은 어떤 위치에서 승객을 승차 또는 하차시키기 위해 차량(100)을 정차시키는 것을 제공한다. 예시적인 방법들은 차량을 상기 위치(680) 쪽으로 기동하는 것을 포함한다. 승객이 차량에 타거나 내리기 위한 시간량이 추정된다. 일단 차량이 상기 위치로부터 미리 결정된 거리에 있다면, 차량을 정차시키기 위한 가능한 장소들의 세트가 결정된다. 가능한 장소들의 세트의 각각의 장소에 대해, 대응하는 임계값이 결정된다. 가능한 장소들의 세트의 각각의 장소에 대해, 추정된 시간량이 대응하는 임계값과 비교된다. 비교들에 기초하여 가능한 장소들의 세트 중 특정한 하나의 장소가 식별되고, 승객이 차량에 타거나 차량에서 내리는 것을 허용하기 위해 특정한 하나의 장소에서 차량을 정차시킨다.

Description

자율 주행 차량에서 정차 분석을 향상시키기 위해 승객들의 승하차 시간을 추정하기{ESTIMATING TIME TO PICK UP AND DROP OFF PASSENGERS FOR IMPROVED STOPPING ANALYSIS IN AUTONOMOUS VEHICLES}
[관련 출원에 대한 상호 참조]
본 출원은 2017년 8월 22일 출원된 미국 특허 출원 제15/682,754호의 계속 출원이며, 이 출원의 개시 내용은 본 명세서에 참조에 의해 여기 통합된다.
인간 운전자를 요구하지 않는 차량들과 같은 자율 주행 차량들은 하나의 위치로부터 또 다른 위치로의 승객들 또는 물품들의 운송에 도움을 주기 위해 이용될 수 있다. 이러한 차량들은 승객들이 승차 또는 목적지 위치와 같은 몇몇 초기 입력을 제공하고, 차량이 해당 위치까지 스스로 기동하는 완전 자율 주행 모드에서 동작할 수 있다.
사람(또는 사용자)이 차량을 통해 두 위치 사이에서 물리적으로 운송되기를 원할 때, 이들은 임의 수의 운송 서비스를 이용할 수 있다. 지금까지, 이러한 서비스들은 통상적으로 사용자를 승차시키기 위한 위치로의 배차 지시를 받은 인간 운전자를 수반한다. 대다수의 경우에, 인간 운전자 및 사용자는 사용자가 승차하게 될 정확한 위치를 미리 정할 수 있다. 또한, 운전자들 및 사용자들은 서로 "손을 흔들어 승차 의사를 주고받고", 눈인사를 나누고, 서로에게 말하거나, 또는 서로의 인식을 표시하기 위해 다른 신호들을 이용하고, 그에 의해 차량이 승차를 위한 정확한 위치에 도달하기 전에 어떤 위치에 합의할 수 있다. 이는 인간 운전자를 갖지 않는 자율 주행 차량들의 경우에는 쉽게 달성가능한 것이 아니다.
본 개시내용의 일 양태는 어떤 위치에서 승객을 승차 또는 하차시키기 위해 차량을 정차시키는 방법을 제공한다. 방법은 하나 이상의 프로세서에 의해 차량을 상기 위치를 향해 기동시키는 단계; 하나 이상의 프로세서에 의해, 승객이 차량에 타거나 차량에서 내리기 위한 시간량을 추정하는 단계; 일단 차량이 상기 위치로부터 미리 결정된 거리에 있다면, 하나 이상의 프로세서에 의해, 차량을 정차시키기 위한 가능한 장소들의 세트를 결정하는 단계; 가능한 장소들의 세트의 각각의 장소에 대해, 대응하는 임계값을 결정하는 단계; 가능한 장소들의 세트의 각각의 장소에 대해, 하나 이상의 프로세서에 의해, 추정된 시간량을 대응하는 임계값과 비교하는 단계; 하나 이상의 프로세서에 의해, 비교들에 기초하여 가능한 장소들의 세트 중 특정한 하나의 장소를 식별하는 단계; 및 하나 이상의 프로세서에 의해, 승객이 차량에 타거나 또는 차량에서 내리는 것을 허용하기 위해 특정한 하나의 장소에 차량을 정차시키는 단계를 포함한다.
일 예에서, 추정은 승객이 상기 위치에서 차량에서 내리거나 또는 탈 것인지에 기초하여 결정된다. 또 다른 예에서, 추정은 최소 시간량을 이용하고 복수의 인자에 따라 추가 시간을 그 최소 시간량에 추가하여 결정된다. 이 예에서, 복수의 인자는 승객이 임의의 패키지들을 갖는지를 포함한다. 추가적으로 또는 대안적으로, 복수의 인자는 임의의 패키지들이 차량의 화물칸으로부터 회수될 필요가 있는지를 포함한다. 추가적으로 또는 대안적으로, 복수의 인자는 임의의 패키지들이 차량의 화물칸에 배치될 필요가 있는지를 포함한다. 추가적으로 또는 대안적으로, 복수의 인자는 승객이 하나 이상의 차량에 타거나 내리기 위한 이전 시간량을 식별하는 이력 정보를 포함한다. 추가적으로 또는 대안적으로, 복수의 인자는 승객과 함께 차량에 타거나 내릴 다른 승객들의 수를 포함한다. 추가적으로 또는 대안적으로, 복수의 인자는 어린이 안전 좌석이 설치될지를 포함한다. 추가적으로 또는 대안적으로, 복수의 인자는 이력 교통 정보를 포함한다. 또 다른 예에서, 방법은 또한 비교들에 기초하여 가능한 장소들의 세트를 필터링하고 필터링된 가능한 장소들의 세트의 각각의 장소에 대해 비용 값을 결정하고, 및 특정한 하나의 장소가 비용 값들에 기초한 것을 식별하는 단계를 포함한다.
본 개시내용의 또 다른 양태는 어떤 위치에서 승객을 승차시키거나 하차시키기 위해 차량을 정차시키는 시스템을 제공한다. 시스템은 상기 위치를 향해 차량을 기동하고; 승객이 차량에 타거나 내리기 위한 시간량을 추정하고; 일단 차량이 상기 위치로부터 미리 결정된 거리에 있다면, 차량을 정차시키기 위한 가능한 장소들의 세트를 결정하고; 가능한 장소들의 세트의 각각의 위치에 대해, 대응하는 임계값을 결정하고; 가능한 장소들의 세트의 각각의 장소에 대해, 추정된 시간량을 대응하는 임계값과 비교하고; 비교들에 기초하여 가능한 장소들의 세트 중 특정한 하나의 장소를 식별하고; 및 승객이 차량에 타거나 내리도록 허용하기 위해 특정한 하나의 장소에서 차량을 정차시키도록 구성된 하나 이상의 프로세서를 포함한다.
일 예에서, 추정은 승객이 상기 위치에서 차량에서 내리거나 또는 탈 것인지에 기초하여 결정된다. 또 다른 예에서, 추정은 최소 시간량을 이용하고 복수의 인자에 따라 추가 시간을 그 최소 시간량에 추가하여 결정된다. 이 예에서, 복수의 인자는 승객과 함께 차량에 타거나 내릴 다른 승객들의 수를 포함한다. 추가적으로 또는 대안적으로, 복수의 인자는 어린이 안전 좌석이 설치될지를 포함한다. 추가적으로 또는 대안적으로, 복수의 인자는 이력 교통 정보를 포함한다. 또 다른 예에서, 하나 이상의 프로세서는 비교들에 기초하여 가능한 장소들의 세트를 필터링하고 필터링된 가능한 장소들의 세트의 각각의 장소에 대해 비용 값을 결정하고, 및 특정한 하나의 장소가 비용 값들에 기초한 것을 식별하도록 추가로 구성된다. 또 다른 예에서, 시스템은 또한 차량을 포함한다.
본 개시 내용의 추가 양태는 명령어들이 저장되는 비일시적 컴퓨터 판독가능 저장 매체를 제공한다. 명령어들은, 하나 이상의 프로세서에 의해 실행될 때, 하나 이상의 프로세서로 하여금 방법을 수행하도록 야기한다. 방법은 어떤 위치를 향해 차량을 기동하는 단계; 승객이 차량에 타거나 내리기 위한 시간량을 추정하는 단계; 일단 차량이 상기 위치로부터 미리 결정된 거리에 있다면, 차량을 정차시키기 위한 가능한 장소들의 세트를 결정하는 단계; 가능한 장소들의 세트의 각각의 장소에 대해, 대응하는 임계값을 결정하는 단계; 가능한 장소들의 세트의 각각의 장소에 대해, 추정된 시간량을 대응하는 임계값과 비교하는 단계; 비교들에 기초하여 가능한 장소들의 세트 중 특정한 하나의 장소를 식별하는 단계; 및 승객이 차량에 타거나 내리도록 허용하기 위해 특정한 하나의 장소에서 차량을 정차시키는 단계를 포함한다.
도 1은 본 개시내용의 양태들에 따른 예시적인 차량의 기능도이다.
도 2a 및 도 2b는 본 발명의 양태들에 따른 상세 지도 정보의 예시적인 표현이다.
도 3a 내지 도 3d는 본 개시내용의 양태들에 따른 차량의 예시적인 외부 뷰들이다.
도 4는 본 개시내용의 양태들에 따른 시스템의 예시적인 그림 도면이다.
도 5는 본 개시내용의 양태들에 따른 시스템의 예시적 기능도이다.
도 6은 본 개시내용의 양태들에 따른 도로 구간의 뷰이다.
도 7은 본 개시내용의 양태들에 따른 흐름도이다.
자체 운전 차량들을 위한 승객 승차 및 하차는 사람들과 이들 차량들을 제어하는 컴퓨팅 디바이스들 사이에서 정보를 통신하는데 수반되는 어려움들로 인해 도전적인 과제일 수 있다. 이러한 컴퓨팅 디바이스들 및 보행자가 서로를 "인식"한다 하더라도, 컴퓨팅 디바이스들은 보행자가 차량에 타거나 내리도록 하기 위해 정차하고 기다리는 적절한 장소를 여전히 찾아내야만 한다. 통상적으로, 차량이 정차하는 장소는 승차 위치 또는 하차 위치로부터의 거리뿐만 아니라, 승차하는 곳이 분주한 거리 또는 조용한 거리에 있는지 및 특정 위치들에서 정차하는 것이 교통 흐름에 얼마나 방해될지와 같은 안전 고려 사항들에 의해 안내된다. 승객이 안전하게 타고 내리게 허용하는 것은 심각한 관심 사항이고, 안전성의 관점에서 가장 큰 위험을 승객에게 야기한다.
차량이 정차하는 장소는 차량을 제어하기 위해 컴퓨팅 디바이스들에 의해 사용되는 상세 지도 정보에서 그런 것처럼 미리 지정될 수 있거나 그렇지 않을 수 있다. 임의의 이벤트에서, 지도의 각각의 운전가능한 영역은 주차 또는 정차 특성들을 식별하는 그 특색을 이용하여 식별될 수 있다. "Keep Clear" 또는 "Don't Block the Box" 영역들, 과속방지턱, 또는 철도 선로와 같은 적어도 일부 영역들은 승객이 차량에 타거나 내리기를 허용하기에 적절하지 않으므로, 승객을 승차시키거나 하차시키기 위해 정차하는데 있어서 "접근 금지 영역(off limits)"일 수 있다. 다른 영역들은 지도 정보에서 직접적으로 또는 특정 시간 제한과 연관된 특정 타입으로서 플래깅됨으로써 간접적으로 특정 시간 제한들 또는 임계 시간량들과 연관될 수 있다.
차량이 정차할 수 있는 곳을 결정하기 전에, 컴퓨팅 디바이스들은 승객이 타거나 내리도록 허용하기 위해 차량이 얼마나 오래 정차할 필요가 있을 것인지를 먼저 추정할 수 있다. 차량이 얼마나 오랫동안 정차하도록 요구될 수 있는지에 대한 추정은 차량이 승객을 태우고 있는지 또는 승객을 내리고 있는지에 의존할 수 있다. 차량이 얼마나 오랫동안 정차할 필요가 있는지를 계산하기 위해 추가적인 인자들이 또한 사용될 수 있다. 이것은 연령, 이력, 승객들의 수, 가방들의 수, 및/또는 차량이 이동을 시작하기 전에 승객이 차량에 어린이 안전 좌석(카 시트)을 설치할 필요가 있는지, 기타 등등과 같이 애플리케이션에게 승객에 의해 제공되는 정보를 포함할 수 있다. 다른 인자들은 승차 위치 또는 하차 위치와 관련될 수 있다.
따라서, 정차하기 위한 추정된 시간은 베이스라인 또는 최소 시간량을 수반할 수 있다. 위에서 언급된 바와 같이, 이러한 최소 시간량은 차량이 승객을 태우고 있는지 또는 승객을 내려주고 있는지에 의존하여 상이할 수 있다. 각각의 추가적인 인자에 대해, 인자의 타입에 기초하여 추가적인 시간이 추정치에 추가될 수 있다.
이후, 추정치는 차량을 정차시키고 승객이 타거나 내리도록 허용하는 적절한 장소를 결정하기 위해 사용될 수 있다. 예를 들어, 차량의 컴퓨팅 디바이스들은 (일단 식별된) 승객의 어떤 거리 내에서 정차할 가능한 장소들의 리스트 및/또는 승차 위치, 또는 내리는 경우에는 하차할 위치를 식별할 수 있다.
각각의 가능한 장소에 대해, 대응하는 임계 시간량이 지도 정보로부터 식별될 수 있다. 그후, 임계 시간량은 추정된 시간과 비교되어, 가능한 장소들의 리스트의 장소들 중 어떤 것이 차량을 정차시키기에 적절한지를 식별할 수 있다. 하나의 적절한 위치만이 리스트에 포함된다면, 컴퓨팅 디바이스들은 이런 최상의 장소에서 정차하도록 차량을 기동시킬 수 있다.
하나보다 많은 적절한 위치가 있다면, 컴퓨팅 디바이스들은 가능한 장소들의 리스트 중 각각의 장소들에서 정차하기 위한 비용 분석을 수행할 수 있다. 이러한 비용 분석은 복수의 인자에 기초하여 가능한 장소들의 리스트의 장소들의 각각에서 정차하기 위한 비용을 확립하는 것을 포함할 수 있다. 가능한 장소들의 리스트에서의 각각의 장소에 대한 비용 평가들은 차량을 정차시키기 위한 최상의 장소를 식별하기 위해 사용될 수 있다. 그후, 컴퓨팅 디바이스들은 이러한 최상의 장소에서 정차하도록 차량을 기동시킬 수 있다.
전술한 특징들은, 자율 주행 차량의 컴퓨팅 디바이스들이 승객들을 승차시키거나 하차시키도록 하기 위해서 차량을 정차시킬 곳에 대한 더 나은 그리고 더 안전한 결정들을 행하게 할 수 있다. 이것은, 결국, 다른 교통 흐름을 방해하지 않으면서도 승객들에 대한 더 나은 그리고 더 안전한 결정들을 허용할 수 있다.
예시적 시스템들
도 1에 도시된 바와 같이, 본 개시내용의 일 양태에 따른 차량(100)은 다양한 컴포넌트들을 포함한다. 본 개시내용의 특정 양태들은 특정 타입들의 차량들과 관련되어 특히 유용하지만, 차량은 자동차들, 트럭들, 모터사이클들, 버스들, 레크리에이션 차량들 등을 포함하지만 이에 제한되지는 않는 임의의 타입의 차량일 수 있다. 차량은 하나 이상의 프로세서(120), 메모리(130), 및 범용 컴퓨팅 디바이스들에 전형적으로 존재하는 다른 컴포넌트들을 포함하는 컴퓨팅 디바이스(110)와 같은 하나 이상의 컴퓨팅 디바이스를 가질 수 있다.
메모리(130)는 프로세서(120)에 의해 실행되거나 또는 다른 방식으로 사용될 수 있는 명령어들(132) 및 데이터(134)를 포함하여, 하나 이상의 프로세서(120)에 의해 액세스가능한 정보를 저장한다. 메모리(130)는 컴퓨팅 디바이스 판독가능 매체, 또는 하드 드라이브, 메모리 카드, ROM, RAM, DVD 또는 다른 광학 디스크들과 같이 전자 디바이스의 도움으로 판독될 수 있는 데이터를 저장하는 다른 매체뿐만 아니라 다른 기입 가능 및 판독 전용 메모리들을 포함하여, 프로세서에 의해 액세스가능한 정보를 저장할 수 있는 임의의 타입의 것일 수 있다. 시스템들 및 방법들은 상술한 것의 상이한 조합들을 포함할 수 있으며, 이에 의해 명령어들 및 데이터의 상이한 부분들이 상이한 타입들의 매체상에 저장된다.
명령어들(132)은 프로세서에 의해 직접적으로 (예컨대 기계어 코드로) 또는 간접적으로(예컨대 스크립트들로) 실행될 명령어들의 임의의 세트일 수 있다. 예를 들어, 명령어들은 컴퓨팅 디바이스 코드로서 컴퓨팅 디바이스 판독가능 매체상에 저장될 수 있다. 이와 관련하여, 용어들 "명령어들" 및 "프로그램들"은 본 명세서에서 상호교환적으로 사용될 수 있다. 명령어들은 프로세서에 의한 직접 처리를 위한 오브젝트 코드 포맷(object code format)으로, 또는 온 디맨드로 인터프리팅(interpret)되거나 미리 컴파일링(compile)되는 독립적인 소스 코드 모듈들의 스크립트들 또는 컬렉션들을 포함하는 임의의 다른 컴퓨팅 디바이스 언어로 저장될 수 있다. 명령어들의 기능들, 방법들, 및 루틴들은 이하에 더 상세히 설명된다.
데이터(134)는 명령어들(132)에 따라 프로세서(120)에 의해 검색되고, 저장되거나 수정될 수 있다. 일 예로서, 메모리(130)의 데이터(134)는 미리 정의된 시나리오들을 저장할 수 있다. 주어진 시나리오는 물체의 타입, 물체에 대한 물체의 위치의 범위뿐만 아니라, 자율 주행 차량이 물체 주위로 기동할 수 있는지, 물체가 회전 신호를 사용하고 있는지, 물체의 현재 위치에 관련된 교통 신호등의 상태, 물체가 정지 신호에 접근하고 있는지, 기타 등등과 같은 다른 요인들을 포함하는 시나리오 요건들의 세트를 식별할 수 있다. 요건들은 "우회전 신호가 켜짐" 또는 "우회전 전용 차선에 있음"과 같은 이산 값들, 또는 "차량(100)의 현재 경로로부터 30 내지 60도 오프셋되는 각도로 오리엔테이션되는 진로를 갖는" 것과 같은 어떤 값들의 범위를 포함할 수 있다. 일부 예들에서, 미리 결정된 시나리오들은 다중의 대상에 대한 유사한 정보를 포함할 수 있다.
하나 이상의 프로세서(120)는 상업적으로 이용가능한 CPU들과 같은 임의의 종래의 프로세서들일 수 있다. 대안적으로, 하나 이상의 프로세서는 ASIC 또는 다른 하드웨어 기반 프로세서와 같은 전용 디바이스일 수 있다. 도 1이 컴퓨팅 디바이스(110)의 프로세서, 메모리, 및 다른 요소들이 동일한 블록 내에 있는 것으로 기능적으로 도시하지만, 프로세서, 컴퓨팅 디바이스, 또는 메모리는 동일한 물리적 하우징 내에 격납될 수 있거나 격납될 수 없는 다중 프로세서, 컴퓨팅 디바이스들, 또는 메모리들을 실제로 포함할 수 있다는 것을 본 기술 분야의 통상의 기술자는 이해할 것이다. 예로서, 내부 전자 디스플레이(152)는 고대역폭 또는 다른 네트워크 접속을 통해 컴퓨팅 디바이스(110)와 인터페이싱할 수 있는, 그 자신의 프로세서 또는 CPU(central processing unit), 메모리 등을 갖는 전용 컴퓨팅 디바이스에 의해 제어될 수 있다. 일부 예들에서, 이 컴퓨팅 디바이스는 사용자의 클라이언트 디바이스와 통신할 수 있는 사용자 인터페이스 컴퓨팅 디바이스일 수 있다. 유사하게, 메모리는 컴퓨팅 디바이스(110)의 하우징과는 상이한 하우징에 위치되는 하드 드라이브 또는 다른 저장 매체일 수 있다. 따라서, 프로세서 또는 컴퓨팅 디바이스에 대한 언급은 병행적으로 동작하거나 하지 않을 수 있는 프로세서들 또는 컴퓨팅 디바이스들 또는 메모리들의 컬렉션에 대한 언급을 포함하는 것으로 이해될 것이다.
컴퓨팅 디바이스(110)는 전술한 프로세서 및 메모리와 같은 컴퓨팅 디바이스와 연계하여 보통 사용되는 모든 컴포넌트들뿐만 아니라 사용자 입력(150)(예를 들어, 마우스, 키보드, 터치 스크린 및/또는 마이크로폰) 및 다양한 전자 디스플레이들(예를 들어, 스크린을 가지는 모니터 또는 정보를 디스플레이하도록 동작가능한 임의의 다른 전자 디바이스)을 포함할 수 있다. 이 예에서, 차량은 정보 또는 시청각 경험을 제공하기 위해 내부 전자 디스플레이(152)뿐만 아니라 하나 이상의 스피커(154)를 포함한다. 이와 관련하여, 내부 전자 디스플레이(152)는 차량(100)의 객실 내에 위치될 수 있고, 차량(100) 내의 승객들에게 정보를 제공하기 위해 컴퓨팅 디바이스(110)에 의해 사용될 수 있다. 내부 스피커들 이외에, 하나 이상의 스피커(154)가 차량(100) 외부의 대상들에게 가청 통지들을 제공하기 위해 차량상의 다양한 위치들에 배열된 외부 스피커들을 포함할 수 있다.
일 예에서, 컴퓨팅 디바이스(110)는 차량(100) 내에 포함되는 자율 주행 컴퓨팅 시스템일 수 있다. 자율 주행 컴퓨팅 시스템은 차량의 다양한 컴포넌트들과 통신할 수 있다. 예를 들어, 도 1로 돌아가면, 컴퓨팅 디바이스(110)는, 차량 승객으로부터의 지속적인 또는 주기적인 입력을 필요로 하지 않거나 필요로 하는 자율 주행 모드에서 메모리(130)의 명령어들(132)에 따라 차량(100)의 이동, 속력 등을 제어하기 위해서 (차량의 제동을 제어하기 위한) 감속 시스템(160), (차량의 가속을 제어하기 위한) 가속 시스템(162), (바퀴들의 오리엔테이션 및 차량의 방향을 제어하기 위한) 조향 시스템(164), (회전 신호들을 제어하기 위한) 시그널링 시스템(166), (차량을 어떤 위치로 또는 물체들 주위로 내비게이팅하기 위한) 내비게이션 시스템(168), (차량의 위치를 결정하기 위한) 위치확인 시스템(170), (차량의 환경에서 물체들을 검출하기 위한) 인지 시스템(172), 및 동력 시스템(174)(예를 들어, 배터리 및/또는 가스 또는 디젤 동력 엔진)과 같은 차량(100)의 다양한 시스템들과 통신 상태에 있을 수 있다. 다시금, 이러한 시스템들이 컴퓨팅 디바이스(110)에 대해 외부에 있는 것으로 도시되지만, 실제로는, 이러한 시스템들은, 다시금 차량(100)을 제어하기 위한 자율 주행 컴퓨팅 시스템으로서, 컴퓨팅 디바이스(110)에 또한 포함될 수 있다.
컴퓨팅 디바이스(110)는 다양한 컴포넌트들을 제어함으로써 차량의 방향 및 속력을 제어할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 지도 정보 및 내비게이션 시스템(168)으로부터의 데이터를 이용하여 차량을 목적지 위치까지 완전히 자율적으로 내비게이팅할 수 있다. 컴퓨팅 디바이스(110)는 안전하게 목적지 위치에 도달하도록 요구될 때 위치확인 시스템(170)을 이용하여 차량의 위치를 결정하고 차량의 위치 및 인지 시스템(172)을 이용하여 물체들을 검출하고 그에 응답할 수 있다. 그렇게 하기 위해서, 컴퓨팅 디바이스들(110)은 차량으로 하여금 (예를 들어, 가속 시스템(162)에 의해 엔진에 제공되는 연료 또는 다른 에너지를 증가시킴으로써) 가속하고, (예를 들어, 감속 시스템(160)에 의해 엔진에 공급되는 연료를 감소시키고, 기어를 바꿈으로써, 및/또는 브레이크들을 밟음으로써) 감속하고, (예를 들어, 조향 시스템(164)에 의해 차량(100)의 전륜 또는 후륜을 회전시킴으로써) 방향을 바꾸고, 및 (예를 들어, 시그널링 시스템(166)의 방향 지시등들을 점등함으로써) 이러한 변화들을 시그널링하도록 야기할 수 있다. 따라서, 가속 시스템(162)과 감속 시스템(160)은 차량의 엔진과 차량의 바퀴 사이의 다양한 컴포넌트들을 포함하는 동력전달장치의 일부일 수 있다. 다시금, 이들 시스템들을 제어함으로써, 컴퓨팅 디바이스들(110)은 또한 차량을 자율적으로 기동하기 위해 차량의 동력전달장치를 제어할 수 있다.
일 예로서, 컴퓨팅 디바이스(110)는 차량의 속력을 제어하기 위해 감속 시스템(160) 및 가속 시스템(162)과 상호작용할 수 있다. 유사하게, 조향 시스템(164)은 차량(100)의 방향을 제어하기 위해 컴퓨팅 디바이스(110)에 의해 사용될 수 있다. 예를 들어, 승용차 또는 트럭과 같은 차량(100)이, 도로상에서의 사용을 위해 구성되면, 조향 시스템은 차량을 회전시키기 위해 바퀴들의 각도를 제어하는 컴포넌트들을 포함할 수 있다. 시그널링 시스템(166)은, 예를 들어, 필요할 때 방향 지시등 또는 브레이크등을 점등함으로써 차량의 의도를 다른 운전자들 또는 차량들에 시그널링하도록 컴퓨팅 디바이스(110)에 의해 사용될 수 있다.
내비게이션 시스템(168)은 어떤 위치에 대한 경로를 결정하고 그 경로를 따라가도록 컴퓨팅 디바이스(110)에 의해 사용될 수 있다. 이와 관련하여, 내비게이션 시스템(168) 및/또는 데이터(134)는 컴퓨팅 디바이스들(110)이 차량을 내비게이팅하거나 제어하는데 이용할 수 있는 지도 정보, 예를 들어 매우 상세한 지도를 저장할 수 있다. 예로서, 이러한 지도는 도로들, 차선 마커들, 교차로들, 횡단보도들, 제한 속도, 교통 신호등들, 건물들, 표지판들, 실시간 또는 이력 교통 정보, 초목, 또는 다른 이러한 물체들의 형상 및 고도 및 정보를 식별할 수 있다. 차선 마커들은 실선 또는 파선의 이중 또는 단일 차선 라인들, 실선 또는 파선의 차선 라인들, 반사기들 등과 같은 특징들을 포함할 수 있다. 주어진 차선은 좌측 및 우측 차선 라인들 또는 차선의 경계를 정의하는 다른 차선 마커들과 연관될 수 있다. 따라서, 대부분의 차선들은 어느 한 차선 라인의 좌측 에지 및 또 다른 차선 라인의 우측 에지에 의해 경계가 정해질 수 있다. 앞서 유의한 바와 같이, 지도 정보는 과거의 유사한 시간들에서의 특정의 승차 위치로부터 알려진 교통 또는 혼잡 정보 및/또는 통과 스케줄들(열차, 버스 등)을 저장할 수 있다. 이 정보는 심지어 컴퓨팅 디바이스들(110)에 의해 수신된 정보에 의해 실시간으로 업데이트될 수 있다.
인지 시스템(172)은 또한, 다른 차량들, 도로에서의 장애물들, 교통 신호들, 표지판들, 나무들 등과 같은, 차량 외부의 물체들을 검출하기 위한 하나 이상의 컴포넌트를 포함할 수 있다. 예를 들어, 인지 시스템(172)은 하나 이상의 LIDAR 센서, 소나 디바이스들, 레이더 유닛들, 카메라들, 및/또는 컴퓨팅 디바이스들(110)에 의해 처리될 수 있는 데이터를 기록하는 임의의 다른 검출 디바이스들을 포함할 수 있다. 인지 시스템의 센서들은 물체들 및 위치, 오리엔테이션, 크기, 형상, 타입(예를 들어, 차량, 보행자, 자전거 탑승자, 기타 등등), 진로, 및 움직임의 속력 등과 같은 그들의 특성들을 검출할 수 있다. 센서들 및/또는 전술한 특성들로부터의 원시 데이터는 기술 함수(descriptive function), 벡터, 및/또는 경계 박스로 정량화되거나 배열될 수 있고, 또한 이것이 인지 시스템(172)에 의해 생성됨에 따라 주기적으로 그리고 연속적으로 추가 처리를 위해 컴퓨팅 디바이스들(110)에 송신된다. 이하에서 보다 상세히 논의되는 바와 같이, 컴퓨팅 디바이스들(110)은 위치확인 시스템(170)을 이용하여 차량의 위치를 결정하고 인지 시스템(172)을 이용하여 그 위치에 안전하게 도달하는 것이 필요할 때 물체들을 검출하고 이에 응답할 수 있다.
도 2a 및 도 2b는 도로의 작은 구역에 대한 지도 정보(200)의 예이다. 이 예에서, 지도 정보(200)는 차선 라인들(210, 212, 214, 216), 제한선들(220, 222, 224), 주차 지점들(230, 232, 234, 236), 주차 금지 구역(240), 진입로(250), 라인들(214, 216) 및 제한선들(222, 224)에 의해 정의되는 갓길 영역들(260, 262), 및 차선들(270, 272)과 같은 도로 구역의 도로 특징들의 형상, 위치 및 다른 특성들을 식별하는 정보를 포함한다.
도로 특징들 외에도, 지도 정보는 다양한 정차 영역들 및 연관 타입들을 식별할 수 있다. 정차 영역들은 차량이 주차 지점, 갓길, 도로에 또는 주차장에의 입구/출구에 인접한 곳, 교통 차선, 주차 금지 구역, 소화전에 인접한 곳, 포스팅된 "Keep Clear" 또는 "Don't Block the Box" 영역, 과속방지턱, 철도 선로 등과 같이 특정 주차 또는 정차 특성들로 운전할 수 있는 영역들을 포함할 수 있다. 각각의 정차 영역은 지도 정보에서 연관된 타입을 갖는 3개 이상의 모서리 또는 변을 갖는 다각형으로서 정의될 수 있다. 예를 들어, 도 2b에 도시된 바와 같이, 영역들(230', 232', 234', 236', 240', 250', 260', 262', 270', 및 272')의 다각형들은 도 2a의 주차 지점들(230, 232, 234, 236), 주차 금지 구역(240), 진입로(250), 갓길들(260, 262), 및 차선들(270, 272)의 특징들 각각에 대한 2차원 또는 3차원 영역에 제각기 대응한다.
이러한 정차 영역들 각각은 지도 정보에서 직접적으로 또는 특정 시간 제한과 연관된 특정 타입으로서 플래깅됨으로써 간접적으로 특정 시간 제한들과 연관될 수 있다. 이러한 시간 제한들은 차량이 영역에서 정차되기 위한 수용가능한 시간량에 대응할 수 있다. 따라서, 이러한 시간 제한들은 주어진 위치들에서 정차하기 위한 합법적 및/또는 사회적으로 수용가능한 시간량들에 대응할 수 있다. 예로서, 지정된 주차 지점에 대해, 시간 제한은, 예를 들어, 오전 2시와 오전 6 사이의 주차 금지, 1 또는 2시간 주차, 15분 주차와 같이 해당 주차 지점에 대한 규칙들에 대응할 수 있다. 이하의 표 1은 도 2b의 영역들에 대한 예시적인 시간 제한들을 나타내는데, 이것은 배타적인 제한들 또는 다른 경우에는 그러한 시간 제한들의 제한들로 간주해서는 안 된다.
영역 시간 제한 영역 유형
230' 15 분 주차 지점
232' 15 분 주차 지점
234' 15 분 주차 지점
236' 15 분 주차 지점
240' 1 분 주차 금지 구역
250' 15 초 진입로
260' 1 분 갓길
262' 1 분 갓길
270' 10 초 차선
272' 10 초 차선
일부 경우들에서, 이러한 시간 제한들은 상황에 의존적일 수 있다. 다시 말해서, 현재 교통 조건들은 이러한 시간 제한들을 단축하거나 및/또는 길게 할 수 있다. 예를 들어, 차선(270')에서의 정차는 또 다른 차량들과 같은 어떤 다른 물체에게도 방해받지 않는 한 10초의 시간 제한보다 더 긴 것이 적절할 수 있다. 10초의 시간 제한은, 일단 (즉, 또 다른 차량이 배후에서부터 차량(100)에 접근하고 있으므로) 방해될 수 있는 또 다른 차량이 인지 시스템에 의해 검출되면, 시작될 수 있다.
물론, 이러한 정차 영역들 중 적어도 어떤 것, 예컨대 "Keep Clear" 또는 "Don't Block the Box" 영역들, 교차로들, 횡단보도들, 과속방지턱, 또는 철도 선로들은 승객이 차량에 타거나 내리는 것을 허용하는 데에 적절하지 않고, 따라서 승객이 차량에 타거나 내리는 것을 허용하도록 차량이 정차해서는 안 되는 "접근 금지" 정차 영역들일 수 있다. 이러한 예들에서, 시간 제한은 0초에 설정될 수 있다.
상세한 지도 정보는 이미지 기반 지도로서 본 명세서에서 묘사되지만, 지도 정보는 전적으로 이미지 기반일 필요가 없다(예를 들어, 래스터(raster)). 예를 들어, 상세 지도 정보는 도로들, 차선들, 교차로들, 및 이 특징들 사이의 연결들과 같은 정보의 하나 이상의 도로그래프들 또는 그래프 네트워크를 포함할 수 있다. 각각의 특징은 그래프 데이터로서 저장될 수 있고, 지리적 위치 및 이것이 다른 관련된 특징들에 링크되는지 여부, 예를 들어 정지 신호가 도로 및 교차로 등에 링크되는지 여부와 같은 정보와 연관될 수 있다. 일부 예들에서, 연관된 데이터는 어떤 도로그래프 특징들의 효율적인 룩업을 허용하기 위해 도로그래프의 그리드 기반 인덱스들을 포함할 수 있다.
도 3a 내지 도 3d는 차량(100)의 외부 뷰들의 예들이다. 알 수 있는 바와 같이, 차량(100)은 전조등(302), 윈드쉴드(windshield)(303), 후미등(taillight)/회전 신호등(turn signal light)(304), 후방 윈드쉴드(305), 도어들(306), 사이드 뷰 미러(side view mirror)(308), 타이어 및 바퀴(310), 및 회전 신호/주차등(312)과 같은, 전형적인 차량의 많은 특징을 포함한다. 전조등(302), 후미등/회전 신호(304), 및 회전 신호/주차등(312)은 시그널링 시스템(166)과 연관될 수 있다. 광 막대(light bar)(307)도 시그널링 시스템(166)과 또한 연관될 수도 있다. 하우징(314)은 인지 시스템(172)의 LIDAR 센서, 소나 디바이스, 레이더 유닛, 카메라 등과 같은 하나 이상의 센서를 하우징할 수 있지만, 이러한 센서들은 또한 차량의 다른 영역들에 통합될 수 있다.
차량(100)의 하나 이상의 컴퓨팅 디바이스(110)는 또한, 예를 들어, 무선 네트워크 접속들(156)을 사용하여 다른 컴퓨팅 디바이스들에 및 그들로부터 정보를 수신 또는 전송할 수 있다. 무선 네트워크 접속은, 예를 들어, 블루투스(R), 블루투스 LE, LTE, 셀룰러, 근접장 통신들, 기타 등등, 및 전술한 것들의 다양한 조합들을 포함할 수 있다. 도 4 및 도 5는 제각기, 네트워크(460)를 통해 접속되는 복수의 컴퓨팅 디바이스(410, 420, 430, 440) 및 저장 시스템(450)을 포함하는 예시적인 시스템(400)의 묘사도 및 기능도들이다. 시스템(400)은 또한 차량(100), 및 차량(100)과 유사하게 구성될 수 있는 차량(100A)을 포함한다. 단순화를 위해 몇몇 차량들 및 컴퓨팅 디바이스들만이 묘사되지만, 통상적인 시스템은 훨씬 더 많은 것을 포함할 수 있다.
도 4에 도시된 바와 같이, 컴퓨팅 디바이스들(410, 420, 430, 440) 각각은 하나 이상의 프로세서, 메모리, 데이터 및 명령어를 포함할 수 있다. 이러한 프로세서들, 메모리들, 데이터 및 명령어들은 컴퓨팅 디바이스(110)의 하나 이상의 프로세서(120), 메모리(130), 데이터(134), 및 명령어(132)와 유사하게 구성될 수 있다.
네트워크(460), 및 개재 노드들은 블루투스(R), 블루투스 LE와 같은 단거리 통신 프로토콜들, 인터넷, 월드 와이드 웹, 인트라넷, 가상 사설 네트워크, 광역 네트워크, 로컬 네트워크, 하나 이상의 회사 전용 통신 프로토콜들을 이용하는 사설 네트워크, 이더넷, WiFi 및 HTTP, 및 전술한 것의 다양한 조합들을 포함하는 다양한 구성들 및 프로토콜들을 포함할 수 있다. 이러한 통신은 모뎀 및 무선 인터페이스와 같은, 다른 컴퓨팅 디바이스들에 데이터를 송신하고 그로부터 데이터를 송신할 수 있는 임의의 디바이스에 의해 가능해질 수 있다.
일 예에서, 하나 이상의 컴퓨팅 디바이스(110)는 다른 컴퓨팅 디바이스들에 그리고 다른 컴퓨팅 디바이스들로부터 데이터를 수신하고, 처리하고, 송신하는 목적을 위해 네트워크의 상이한 노드들과 정보를 교환하는 복수의 컴퓨팅 디바이스를 포함하는 서버, 예를 들어, 부하 분산 서버 팜(load balanced server farm)을 포함할 수 있다. 예를 들어, 하나 이상의 컴퓨팅 디바이스(410)는 네트워크(460)를 통해 차량(100)의 하나 이상의 컴퓨팅 디바이스(110) 또는 차량(100A)의 유사한 컴퓨팅 디바이스뿐만 아니라 클라이언트 컴퓨팅 디바이스들(420, 430, 440)과 통신할 수 있는 하나 이상의 서버 컴퓨팅 디바이스를 포함할 수 있다. 예를 들어, 차량들(100 및 100A)은 서버 컴퓨팅 디바이스들에 의해 다양한 위치들에 파견(dispatch)될 수 있는 차량들의 무리(fleet)의 일부일 수 있다. 이와 관련하여, 차량들의 무리는 차량의 제각기 위치확인 시스템들에 의해 제공되는 서버 컴퓨팅 디바이스 위치 정보를 주기적으로 송신할 수 있고, 하나 이상의 서버 컴퓨팅 디바이스는 차량들의 위치들을 추적할 수 있다.
또한, 서버 컴퓨팅 디바이스들(410)은 컴퓨팅 디바이스들(420, 430, 440)의 디스플레이들(424, 434, 444)과 같은 디스플레이상에서 사용자(422, 432, 442)와 같은 사용자에게 정보를 송신하고 제안하기 위해 네트워크(460)를 이용할 수 있다. 이와 관련하여, 컴퓨팅 디바이스들(420, 430, 440)은 클라이언트 컴퓨팅 디바이스들로서 고려될 수 있다.
도 5에 도시된 바와 같이, 각각의 클라이언트 컴퓨팅 디바이스(420, 430, 440)는 사용자(422, 432, 442)가 이용하도록 의도된 개인용 컴퓨팅 디바이스일 수 있고, 하나 이상의 프로세서(예를 들어, 중앙 처리 유닛(CPU)), 데이터 및 명령어들을 저장하는 메모리(예를 들어, RAM 및 내부 하드 드라이브들), 디스플레이들(424, 434, 444)과 같은 디스플레이(예를 들어, 화면, 터치 스크린, 프로젝터, 텔레비전, 또는 정보를 표시하도록 동작가능한 다른 디바이스를 갖는 모니터), 및 사용자 입력 디바이스들(426, 436, 446)(예를 들어, 마우스, 키보드, 터치 스크린 또는 마이크로폰)을 포함하여 개인용 컴퓨팅 디바이스와 연계하여 보통 이용되는 컴포넌트들 모두를 가질 수 있다. 클라이언트 컴퓨팅 디바이스들은 비디오 스트림들을 기록하기 위한 카메라, 스피커들, 네트워크 인터페이스 디바이스, 및 이러한 요소들을 서로 접속시키기 위해 사용되는 모든 컴포넌트들을 또한 포함할 수 있다.
클라이언트 컴퓨팅 디바이스들(420, 430, 및 440)이 각각 풀 사이즈의 개인용 컴퓨팅 디바이스를 포함할 수 있지만, 인터넷과 같은 네트워크를 통해 서버와 데이터를 무선으로 교환할 수 있는 모바일 컴퓨팅 디바이스들을 대안적으로 포함할 수 있다. 단지 예로서, 클라이언트 컴퓨팅 디바이스(420)는 인터넷 또는 다른 네트워크들을 통해 정보를 획득할 수 있는, 무선 인에이블 PDA, 태블릿 PC, 웨어러블 컴퓨팅 디바이스 또는 시스템, 또는 넷북과 같은 모바일 폰 또는 디바이스일 수 있다. 또 다른 예에서, 클라이언트 컴퓨팅 디바이스(430)는 도 4에서 손목 시계로서 도시된 웨어러블 컴퓨팅 시스템일 수 있다. 예로서, 사용자는 소형 키보드, 키패드, 마이크로폰을 사용하여, 카메라 또는 터치스크린에 의한 시각적 신호들을 사용하여 정보를 입력할 수 있다.
일부 예들에서, 클라이언트 컴퓨팅 디바이스(440)는 사용자들(422 및 432)과 같은 사용자들에게 컨시어지 서비스(concierge service)를 제공하기 위해 관리자에 의해 이용되는 컨시어지 워크스테이션일 수 있다. 예를 들어, 컨시어지(442)는 이하에서 더 상세하게 설명되는 바와 같이, 컨시어지 워크스테이션(440)을 이용하여 이들 제각기의 클라이언트 컴퓨팅 디바이스들 또는 차량들(100 또는 100A)을 통해 사용자들과의 전화 호출 또는 오디오 연결을 통해 통신하여 차량들(100 및 100A)의 안전한 운행 및 사용자들의 안전을 보장해 줄 수 있다. 단일 컨시어지 워크스테이션(440)만이 도 4 및 도 5에 도시되어 있지만, 임의의 수의 이러한 워크스테이션들이 전형적인 시스템에 포함될 수 있다.
저장 시스템(450)은 이하에서 더 상세하게 설명되는 바와 같이 다양한 유형들의 정보를 저장할 수 있다. 이 정보는, 본 명세서에서 설명되는 특징들 중 일부 또는 전부를 수행하기 위해서, 하나 이상의 서버 컴퓨팅 디바이스(410)와 같은 서버 컴퓨팅 디바이스에 의해 검색되거나 다른 방식으로 액세스될 수 있다. 예를 들어, 정보는 사용자를 하나 이상의 서버 컴퓨팅 디바이스에게 식별하기 위하여 이용될 수 있는 크리덴셜들(credentials)(예컨대, 전통적인 단일 인자 인증(single-factor authentication)의 경우에서와 같은 사용자 명칭 및 패스워드뿐만 아니라, 무작위적 식별자들, 생체계측들 등과 같은 다중 인자 인증들에서 전형적으로 이용되는 다른 타입들의 크리덴셜들)과 같은 사용자 계정 정보를 포함할 수 있다. 사용자 계정 정보는 또한 사용자 명칭, 연락처 정보, 사용자의 클라이언트 컴퓨팅 디바이스(또는 다중 디바이스가 동일한 사용자 계정과 함께 사용되는 경우 디바이스들)의 식별 정보뿐만 아니라 연령 정보, 건강 정보, 및 이하 논의되는 바와 같이 과거에 사용자가 차량들에 타거나 내리는 데에 얼마나 오래 걸리는지에 관한 사용자 이력 정보와 같은 개인 정보를 포함할 수 있다.
저장 시스템(450)은 위치들 사이의 경로들을 생성하고 평가하기 위한 라우팅 데이터를 또한 저장할 수 있다. 예를 들어, 라우팅 정보는 제1 위치에 있는 차량이 제2 위치에 도달하는데 얼마나 오래 걸릴지를 추정하기 위해 사용될 수 있다. 이와 관련하여, 라우팅 정보는 전술된 바와 같은 상세한 지도 정보만큼 반드시 특정적이지는 않지만, 도로뿐만 아니라 방향(편도, 양방향 등), 오리엔테이션(북, 남 등), 속도 제한들과 같은 해당 도로에 관한 정보를 포함하는 지도 정보뿐만 아니라, 예상되는 교통 상황들을 식별하는 교통 정보 등을 포함할 수 있다.
저장 시스템(450)은 또한 사용자에게 표시하기 위해 클라이언트 컴퓨팅 디바이스들에 제공될 수 있는 정보를 저장할 수 있다. 예를 들어, 저장 시스템(450)은 차량이 주어진 승차 또는 목적지 위치에 대해 정차할 가능성이 있는 영역을 결정하기 위한 미리 결정된 거리 정보를 저장할 수 있다. 저장 시스템(450)은 또한 그래픽들, 아이콘들, 및 이하 논의되는 바와 같이 사용자에게 표시될 수 있는 다른 아이템들을 저장할 수 있다.
메모리(130)와 마찬가지로, 저장 시스템(250)은, 하드 드라이브, 메모리 카드, ROM, RAM, DVD, CD-ROM, 기입 가능, 및 판독 전용 메모리들과 같은, 서버 컴퓨팅 디바이스들(410)에 의해 액세스가능한 정보를 저장할 수 있는 임의의 유형의 컴퓨터화된 스토리지의 것일 수 있다. 또한, 저장 시스템(450)은 동일한 또는 상이한 지리적 위치들에 물리적으로 위치될 수 있는 복수의 상이한 저장 디바이스상에 데이터가 저장되는 분산형 저장 시스템을 포함할 수 있다. 저장 시스템(450)은 도 4에 도시된 바와 같이 네트워크(460)를 통해 컴퓨팅 디바이스들에 연결될 수 있고 및/또는 컴퓨팅 디바이스들(110, 410, 420, 430, 440 등) 중 임의의 것에 직접 연결되거나 그에 통합될 수 있다.
예시적 방법
앞서 설명되고 도면들에 도시되는 동작들에 더하여, 다양한 동작들이 이제 설명될 것이다. 이하의 동작들은 아래에 설명되는 정확한 순서로 수행될 필요가 없다는 점이 이해되어야 한다. 오히려, 다양한 단계들은 상이한 순서로 또는 동시에 처리될 수 있고, 단계들은 또한 추가되거나 생략될 수 있다.
일 양태에서, 사용자는 차량에 요청하기 위한 애플리케이션을 클라이언트 컴퓨팅 디바이스에 다운로드할 수 있다. 예를 들어, 사용자들(422 및 432)은 이메일 내의 링크를 통해, 웹사이트로부터 직접적으로, 또는 애플리케이션 스토어를 통해 애플리케이션을 클라이언트 컴퓨팅 디바이스들(420 및 430)에 다운로드할 수 있다. 예를 들어, 클라이언트 컴퓨팅 디바이스는 네트워크를 통해 애플리케이션에 대한 요청을, 예를 들어, 하나 이상의 서버 컴퓨팅 디바이스(410)에 송신하고, 그 응답으로 애플리케이션을 수신할 수 있다. 애플리케이션은 클라이언트 컴퓨팅 디바이스에서 국지적으로 설치될 수 있다.
이후 사용자는 그의 클라이언트 컴퓨팅 디바이스를 사용하여 애플리케이션에 액세스하고 차량에 요청할 수 있다. 예를 들어, 사용자(432)와 같은 사용자는 클라이언트 컴퓨팅 디바이스(430)를 이용하여 차량에 대한 요청을 하나 이상의 서버 컴퓨팅 디바이스(410)에 전송할 수 있다. 이것의 일부로서, 사용자는 승차 로케이션, 목적지 로케이션, 및 일부 경우들에는, 차량이 정차할 수 있는 서비스 영역 내의 어딘가의 하나 이상의 중간 정차 로케이션들을 식별할 수 있다.
이러한 승차 및 목적지 위치들은 미리 정의될 수 있고(예를 들어, 주차장의 특정 영역들 등) 또는 단순히 차량들의 서비스 영역 내의 임의의 위치일 수 있다. 예로서, 승차 로케이션은 사용자의 클라이언트 컴퓨팅 디바이스의 현재의 로케이션으로 디폴트될 수 있거나, 사용자의 클라이언트 디바이스에서 사용자에 의해 입력될 수 있다. 예를 들어, 사용자는 주소 또는 다른 위치 정보를 입력할 수 있거나, 승차 위치를 선택하기 위해 지도상에서 위치를 선택할 수 있다. 일단 사용자가 승차 및/또는 목적지 위치들 중 하나 이상을 선택하였다면, 클라이언트 컴퓨팅 디바이스(420)는 위치 또는 위치들을 중앙집중화된 배차 시스템의 하나 이상의 서버 컴퓨팅 디바이스에 전송할 수 있다. 이에 응답하여, 서버 컴퓨팅 디바이스(410)와 같은 하나 이상의 서버 컴퓨팅 디바이스들은, 예를 들어, 사용자에 대한 가용성 및 근접성에 기초하여 차량(100)과 같은 차량을 선택할 수 있다. 이후 서버 컴퓨팅 디바이스(410)는 사용자를 차량(100)에 대한 승객으로서 할당하고, 선택된 차량(여기서 차량(100))을 배차하여 할당된 승객을 승차시킬 수 있다. 이것은 차량의 컴퓨팅 디바이스들(110)에 할당된 승객에 의해 지정된 승차 및/또는 목적지 위치들을 제공하는 것뿐만 아니라, 클라이언트 컴퓨팅 디바이스(430)와 같은 클라이언트 컴퓨팅 디바이스를 인증하기 위해 차량(100)의 컴퓨팅 디바이스들(110)에 의해 사용될 수 있는 정보를 제공하는 것을 포함할 수 있다.
그 후, 컴퓨팅 디바이스들(110)은 승차 위치를 향해 차량(100)을 기동하고, 승객을 태운 후에 목적지 위치를 향해 기동할 수 있다. 도 6은 지도 정보(200)에 대응하는 도로의 작은 구역을 나타낸다. 이와 관련하여, 차선 라인들(610, 612, 614, 616)은 차선 라인들(210, 212, 214, 216), 제한선들(620, 622, 624)에 대응하고, 주차 지점들(630, 632, 634, 636)은 주차 지점들(230, 232, 234, 236)에 대응하고, 주차 금지 구역(640)은 주차 금지 구역(240)에 대응하고, 진입로(650)는 진입로(250)에 대응하고, 갓길 지역들(660, 662)은 갓길 지역들(260, 262)에 대응하고, 차선들(670, 672)은 차선들(270, 272)에 대응한다. 이 예에서, 차량(100)은 차선(670)에 있고 승객을 승차시키는 위치 또는 하차시키는 위치에 대응하는 위치(680)에 접근하고 있다.
일단 차량이 50 미터 이상의 위치와 같은, 미리 결정된 거리의 승차 또는 하차 위치 내에 있다면, 컴퓨팅 디바이스들(110)은 정차하기 위한 장소를 찾기를 시작하고 승객이 차량에 타거나 내리는 것을 허용할 수 있다. 이것을 행하기 위해, 차량의 컴퓨팅 디바이스들은 승객이 차량에 타거나 내릴 때 얼마나 오래 걸릴지에 대응하는 시간을 먼저 추정할 수 있다. 따라서 이것은 승객이 타거나 내리는 것을 대기하기 위해(또는, 승차를 위해 차량에 타는 경우에, 승객이 차량에 물리적으로 도달하고 및/또는 도착하기 위해) 차량이 얼마나 오랫동안 정차할 필요가 있는지에 대응할 수 있다.
정차하기 위한 추정된 시간은 베이스라인 또는 최소 시간량을 포함할 수 있다. 위에서 언급된 바와 같이, 이러한 최소 시간량은 차량이 승객을 태우고 있는지 또는 승객을 내려주고 있는지에 의존하여 상이할 수 있다. 예를 들어, 승객이 좌석 벨트를 풀고, 도어를 열고, 차량에서 내리고, 도어를 닫는 것보다 차량의 도어를 열고, 차량에 들어가고, 앉고, 좌석 벨트를 안전하게 연결하고, 도어를 닫고, (예를 들어, 버튼을 누름으로써) 차량의 자체 주행 모드를 개시하는 데 더 많은 시간이 걸릴 수 있다. 예로서, 차량에 타기 위해 10초가 걸리지만 차량에서 내리기 위하 5초만이 걸릴 것으로 예상될 수 있다. 따라서, 승차를 위한 베이스라인은 10초일 수 있는 반면, 하차를 위한 베이스라인은 단지 5초일 수 있다.
이후 컴퓨팅 디바이스(110)는 추가적인 시간 인자들을 식별할 수 있다. 각각의 추가적인 시간 인자에 대해, 소량의 추가 시간이 인자의 타입에 기초하여 최소 시간량에 추가될 수 있다. 이것은 연령 정보 또는 건강 정보(즉, 승객이 허약한지 여부)와 같이 승객에 의해 애플리케이션에 제공되는 정보를 포함할 수 있으며, 이는 승객이 얼마나 빨리 또는 느리게 움직일 것으로 예상되는지를 나타낼 수 있다. 승객이 차량(들)에 도달하여 타거나 또는 과거에 차량(들)에서 내리는 데에 얼마나 시간이 걸렸는지 또는 승객이 통상적으로 얼마나 늦을 수 있는지와 같은, 서비스와의 승객 자신의 이력이 또한 고려될 수 있다. 인자들은 승객들의 총 수, 박스들 또는 백들과 같은 패키지들의 수, 차량의 트렁크 또는 다른 화물칸 내에 배치될 필요가 있는 임의의 백들이 있는지, 임의의 다른 승객들의 나이 또는 건강, 또는 차량이 이동을 시작할 수 있기 전에 승객이 차량에 어린이 안전 시트(카 시트)를 설치할 필요가 있는지 등과 같이 특정 여행에 대해 사용자에 의해 제공되는 정보를 또한 포함할 수 있다. 이와 관련하여, 정차하기 위한 총 시간은 식별된 각각의 추가 인자들의 시간들의 합일 수 있다. 예를 들어, 각각의 추가 승객에 대해 5초, 각각의 고령자 또는 허약한 승객에 대해 또 다른 5초, 각각의 가방에 대해 3초, 및 각각의 어린이 안전 좌석의 설치를 위해 3분이 추가될 수 있다.
승차 위치와 관련된 다른 인자들이 또한 추정된 시간을 결정하기 위해 사용될 수 있다. 예를 들어, 정차하기 위한 정확한 추정 시간을 결정하기 위해서, 가능한 장소와 승차 위치 사이의 거리에 기초하여 추가적인 시간이 추가될 수 있다. 이러한 추가 시간은 사람이 평균 걸음걸이 속도로 걸어서 거리를 커버하는 데에 얼마나 오래 걸릴 것으로 예상되는지에 기초하여 결정될 수 있다.
추가적으로 또는 대안적으로, 과거에 유사한 시간들에서의 특정 승차 위치로부터의 알려진 교통 또는 혼잡 정보가 인자로서 사용될 수 있다. 예로서, 특정한 이웃은 학교가 파하는 주간 동안 특정 시간들에서 바쁘거나, 또는 열차역은 열차 스케줄에 의존하여 매시간마다 몇 분 동안만 바쁘게 될 수 있다. 이러한 시간 동안, 예상된 혼잡에 기초하여 10초 이상과 같은 추가 시간이 추정된 시간에 추가될 수 있다. 따라서, 이러한 추가 시간은 승객이 사람 또는 차량의 무리로 인해 차량에 도달하는 데 필요한 추가 시간을 고려할 수 있다. 예를 들어, 이것은 통과 위치(transit location)의 스케줄과 관련된 특정 시간들에서만 바쁠 수 있는 기차역 또는 버스 정류소와 같은 통과 위치에서 특히 관련성이 있을 수 있다. 기차 또는 버스가 늦게 운행되는 경우 추가적인 시간이 추가될 수 있다. 앞서 유의한 바와 같이, 이러한 혼잡 및 통과 스케줄(열차, 버스 등) 정보는 지도 정보에 저장될 수 있고 새로운 정보가 컴퓨팅 디바이스들(110)에 의해 수신됨에 따라 업데이트될 수 있다.
추가적으로 또는 대안적으로, 이러한 혼잡 및 통과 스케줄 정보는 가능한 장소들 중 임의의 것에 대한 임계 시간량과 연관되는 대응하는 임계 시간량 또는 타입을 조절하기 위해 사용될 수 있다. 예를 들어, 통과 위치의 예로 돌아가서, 하나 이상의 상이한 타입의 가능한 장소들에 대한 대응하는 임계 시간량이 감소될 수 있다. 다시 말해서, (차량들 또는 사람들에 의한) 혼잡으로 인해 승객이 차량에 타거나 내리는 데에 더 오래 걸릴 가능성이 있을 때, 차량이 덜 바람직한 위치에서 정차할 가능성을 줄이기 위해 더 엄격한 임계값들이 사용될 수 있다.
그 후 추정된 시간은 차량을 정차시키고 승객이 타거나 내리도록 허용하기 위한 적절한 장소를 결정하기 위해 사용될 수 있다. 예를 들어, 차량의 컴퓨팅 디바이스들은 (일단 식별되고 및/또는 승객의 클라이언트 디바이스들이 인증되는) 승객의 어떤 거리 내에서 정차하기 위한 가능한 장소들의 리스트 및/또는 승차 위치를 식별할 수 있다. 차량의 컴퓨팅 디바이스들은 또한 이러한 리스트를 이용가능한 장소들(즉, 개방된 주차 지점들, 아무 것도 없는 갓길, 등)에 제한할 수 있다. 도 6으로 돌아가서, 차량(100)이 위치(680)의 미리 결정된 거리 내에 있다고 가정하면 그리고 차량(100)이 차선(670)에 있다고 주어지면, 컴퓨팅 디바이스들은 정차하기 위한 가능한 장소들로서 주차 지점들(630, 636)뿐만 아니라 주차 금지 구역들(640)을 식별할 수 있다. 주차 지점들(632 및 634)은 이러한 주차 지점들이 다른 차량들에 의해 현재 점유된다는 사실로 인해 이 리스트로부터 제외될 수 있다. 또한, 갓길 영역들(660 및 662)뿐만 아니라 입구(650)는 차량(100)이 차선(672)에서 이동하고 있을 것을 요구할 것이다. 다시 말해서, 이러한 영역들은 차량을 정차시키기 위해 "이용가능한" 장소들로 간주되지 않을 수 있다.
앞서 유의한 바와 같이, 각각의 가능한 장소는 임계 시간량과 연관되는 대응하는 임계 시간량 또는 타입과 연관될 수 있다. 그후, 임계 시간량은 추정된 시간과 비교되어, 가능한 장소들의 리스트의 장소들 중 어떤 것이 차량을 정차시키기에 적절한지를 식별할 수 있다. 도 2b로 돌아가면, 주차 지점들(630, 636) 및 주차 금지 구역(640)은 주차 지점들(230, 236) 및 주차 금지 구역(240)에 대응하지 않는다. 이들 지도 특징들은 그 각각이 연관된 시간 제한을 갖는 영역들(230', 236', 및 240')에 대응한다. 그후 이러한 시간 제한들은 추정된 시간과 비교되어 정차하기 위한 가능한 장소들 중 임의의 것이 적합할지를 결정할 수 있다. 추정된 시간이 정차하기 위한 주어진 가능한 장소에 대한 시간 제한보다 큰 경우, 정차하기 위한 이러한 주어진 가능한 장소는 차량을 정차시키기 위한 적절한 장소로 고려되지 않을 것이다. 이와 관련하여, 리스트는 부적절한 장소들을 제거하기 위해 필터링될 수 있거나 새로운 리스트가 생성될 수 있다. 예를 들어, 차량이 위치(680)에서 정차하기 위한 추정된 시간이 2분이라면, 1분의 영역(240')을 통한 연관된 시간 제한을 갖는 주차 금지 구역(640)은 차량이 정차하기 위한 적절한 위치가 아닐 수 있다. 이와 관련하여, 주차 금지 영역(640)은 가능한 장소들의 리스트로부터 필터링되거나 제거될 수 있다.
필터링 및/또는 제거 후에 단 하나의 적절한 위치만이 리스트에 포함되는 경우, 이후 컴퓨팅 디바이스들(110)은 이런 최상의 장소에서 정차하도록 차량을 기동할 수 있다. 하나보다 많은 적절한 위치가 있다면, 컴퓨팅 디바이스들(110)은 가능한 장소들의 리스트의 각각의 장소들에서 정차하기 위한 비용 분석을 수행할 수 있다. 이러한 비용 분석은 복수의 인자에 기초하여 가능한 장소들의 리스트의 장소들 각각에서 정차하기 위한 비용 값을 확립하고 비용 값들을 합산하여 총 비용을 결정하는 것을 포함할 수 있다. 일 예로서, 복수의 인자는 장소가 승객의 GPS 좌표로부터 얼마나 멀리 떨어져 있는지(멀리 떨어져 있는 것은 더 높은 비용 값을 가질 수 있음), 장소가 승차 위치 또는 하차 위치로부터 얼마나 멀리 떨어져 있는지(멀리 떨어지는 것은 더 높은 비용 값을 가질 수 있음), 장소의 타입(소화전은 주차 지역보다 더 높은 비용을 가질 수 있고, 차선에서의 정차는 사회적 책임 또는 승객에의 불편함과 관련된 비용을 가질 수 있음), 및 각각의 추정된 시간이 대응하는 임계 시간량에 얼마나 가까울 수 있는지(너무 가까운 것은 더 높은 비용 값을 가질 수 있음)를 (승차에 대해) 포함할 수 있다. "블록 주위로" 차량을 이동시키고 정차하기 위한 "더 좋은" 장소를 찾으려고 시도하기 위한 비용 값이 또한 결정되고 총 비용 평가에 포함될 수 있다. 예를 들어, 이것이 주위로 루프 백하는데 걸리는 시간이 컴퓨팅 디바이스들(110)이 차량이 정차하고 있고 승객이 나와서 (예컨대 차량이 조기에 도착했을 때와 같이) 차량을 만나기를 기다리는 데에 예상되는 시간보다 작다면, 주위로 루프 백하는 비용은 대기하는 비용보다 높을 수 있다.
이후 가능한 장소들의 리스트에서의 각각의 장소에 대한 총 비용 평가들은 차량을 정차시키기 위한 최상의 장소를 식별하는 데에 사용될 수 있다. 예를 들어, 위의 예들에서와 같이 고 비용이 "나쁜" 것이라고 가정하면, 최저 비용 장소는 차량을 정차시키기 위한 "최상의" 장소로서 식별될 수 있다. 그후, 컴퓨팅 디바이스들은 이러한 최상의 장소에서 정차하도록 차량을 기동시킬 수 있다. 도 6의 예로 돌아가면, 주차 지점(630)은 이것이 위치(680)에 더 가깝게 위치됨에 따라 주차 지점(636)보다 더 낮은 총 비용 평가를 가질 수 있다. 이와 관련하여, 컴퓨팅 디바이스들(110)은 승객이 (타는 경우에) 차량에 승차하거나 (내리는 경우에) 차량에서 하차하도록 허용하기 위해 차량(100)이 주차 지점(630)에서 정차하도록 기동할 수 있다.
몇몇 그럴 것 같지 않은 경우들에서, 컴퓨팅 디바이스들은, 추정된 시간량이 모든 가능한 장소들에 대해 대응하는 시간 임계량보다 큰 경우 및/또는 단순히 정차하기 위한 이용 가능한 장소들이 없는 경우(다시 말해서, 안전하거나, 적절하거나 또는 이용가능하지 않은 차선에서 정차하는 것)에서와 같이, 차량을 정차하기 위한 어떤 장소도 식별하지 못할 수 있다. 이러한 경우들에서, 컴퓨팅 디바이스들은 "블록 주위로" 차량을 기동하려고 시도하거나, 또는 그보다는 승차 또는 하차 위치를 통과한 다음, 승차 또는 하차 위치로 복귀하기 위해 차량을 기동하려고 시도할 수 있다. 다른 예들에서, 시간 제한들은 조절될 수 있는데, 예를 들어, 10초만큼 또는 그보다 더 큰 만큼 또는 그보다 더 작은 만큼 증가될 수 있다. 이러한 조절은 특정 타입들의 영역들에만 제한될 수 있고, 예를 들어, 철도 선로들상에서 정차하기 위한 시간 제한은 결코 제로를 넘어서 증가될 수 없다.
동시에, 승객의 클라이언트 컴퓨팅 디바이스는 차량이 승객을 위해 정차하고 대기할 적절한 지점을 발견하는 데 있어서 어려움을 겪는다는 통지를 전송받을 수 있다. 이후, 통지는 승객이 새로운 위치를 식별하고 및/또는 차량이 블록 주위로 진행하고 돌아오도록 요청하게 허용할 수 있다. 다시 말해서, 승객에게는 문제를 해결하기 위해 얼마나 최상인지를 판정하는 옵션이 주어질 수 있다. 승객은 승객의 클라이언트 컴퓨팅 디바이스에서 컴퓨팅 디바이스들(110)에 전송될 수 있는 자신의 선호도(및 필요하다면 새로운 위치)를 입력할 수 있다. 이후 컴퓨팅 디바이스들(110)은 승객의 선호도에 따라 차량을 제어할 수 있다.
블록 주위로 기동하고 및/또는 통지를 전송하는 것에 추가적으로 또는 대안적으로, 승객은 그가 "현재적으로" 승차할 준비가 되어 있다는 것을 표시하기 위해 자신의 클라이언트 컴퓨팅 디바이스를 사용할 수 있다. 이는 승객이 준비되고 대기하고 있는 것, 예를 들어, 건물 내에 있거나 여전히 승차 위치를 향해 이동하는 것(즉, 걷고 있거나, 버스상에서, 열차상에서, 기타 등등)과는 대조적으로 건물 외부에 있고 연석(curb)에 있는 것을 의미할 수 있다. 이는 추정된 시간을 수정하고 및 실효적으로 이전에 필터링된 또는 제거된 가능한 장소들을 "재인에이블(re-enable)" 또는 "재목록화(re-list)"하는 데에 사용될 수 있다.
본 명세서에 설명되는 특징들은 자율 주행 차량의 컴퓨팅 디바이스들이 승객들을 승차 또는 하차시키기 위해 차량을 정차시킬 곳에 대한 더 나은 그리고 더 안전한 결정들을 행하도록 허용할 수 있다. 이는, 다음으로, 승객들에 대한 더 나은 그리고 더 안전한 결정들을 허용하면서도 다른 교통을 방해하거나 불편하지 않게 할 수 있다.
도 7은 컴퓨팅 디바이스(110)의 하나 이상의 프로세서(120)와 같은 하나 이상의 프로세서에 의해 수행될 수 있는 흐름도(700)이다. 이 예에서, 블록(710)에서, 차량은 승객을 승차 또는 하차시키기 위한 위치를 향해 기동된다. 블록(720)에서, 승객이 차량에 타거나 내리는 시간량이 추정된다. 일단 차량이 상기 위치로부터 미리 결정된 거리에 있다면, 차량을 정차시키기 위한 가능한 장소들의 세트가 블록(730)에서 결정된다. 가능한 장소들의 세트의 각각의 장소에 대해, 블록(740)에서 대응하는 임계값이 결정된다. 가능한 장소들의 세트의 각각의 장소에 대해, 블록(750)에서 추정된 시간량이 대응하는 임계값과 비교된다. 블록(760)에서의 비교들에 기초하여 가능한 장소들의 세트 중 특정한 하나의 장소가 식별되고, 블록(770)에서 승객이 차량에 타거나 차량에서 내리는 것을 허용하기 위해 특정한 하나의 장소에서 차량을 정차시킨다.
달리 명시되지 않는 한, 전술한 대안 예들은 상호 배타적인 것이 아니라, 다양한 조합들로 구현될 수 있어 고유 장점들을 달성한다. 위에서 논의된 특징의 이들 및 다른 변형 및 조합은 청구항에 의해 정의되는 청구 대상으로부터 벗어나지 않고 활용될 수 있기 때문에, 전술한 실시예의 설명은 청구항에 의해 정의되는 주제의 제한으로서가 아니라 예시로서 받아들여져야 한다. 또한, 본 명세서에 설명된 예들의 제공뿐만 아니라 "와 같은", "포함하는" 등과 같이 구문화된 절들이 청구항들의 청구 대상을 특정 예들로만 제한하는 것으로서 해석해서는 안 된다; 오히려, 예들은 많은 가능한 실시예들 중 하나만을 예시하도록 의도된다. 게다가, 상이한 도면들 내의 동일한 참조 번호들은 동일 또는 유사한 요소들을 식별할 수 있다.

Claims (18)

  1. 위치에서 적어도 하나의 승객을 승차 또는 하차시키기 위해 차량을 정차시키는 방법으로서:
    하나 이상의 프로세서에 의해, 차량을 상기 위치를 향해 기동시키는 단계;
    상기 하나 이상의 프로세서에 의해, 상기 적어도 하나의 승객이 차량에 타거나 내리기 위해 상기 차량이 정차할 필요가 있는 시간량을 추정하는 단계;
    일단 상기 차량이 상기 위치로부터 미리 결정된 거리에 있다면, 상기 하나 이상의 프로세서에 의해, 상기 차량을 정차시키기에 가능한 장소들의 세트를 결정하는 단계;
    상기 가능한 장소들의 세트의 각각의 장소에 대해, 상기 차량이 다른 교통을 실질적으로 방해하지 않고 정차할 수 있는 대응하는 임계 시간량을 결정하는 단계;
    상기 가능한 장소들의 세트의 각각의 장소에 대해, 상기 하나 이상의 프로세서에 의해, 상기 추정된 시간량을 해당 장소에 대한 상기 대응하는 임계 시간량과 비교하는 단계;
    상기 하나 이상의 프로세서에 의해, 상기 비교들에 기초하여 상기 가능한 장소들의 세트 중 특정한 하나의 장소를 식별하는 단계; 및
    상기 하나 이상의 프로세서에 의해, 상기 적어도 하나의 승객이 상기 차량에 타거나 내리는 것을 허용하기 위해 상기 특정한 하나의 장소에서 상기 차량을 정차시키는 단계를 포함하는 방법.
  2. 제1항에 있어서,
    상기 추정하는 단계는 상기 적어도 하나의 승객이 상기 위치에서 상기 차량에서 내리거나 탈 것인지에 기초하여 결정되는 방법.
  3. 제1항에 있어서,
    상기 추정하는 단계는 최소 시간량을 이용하고 복수의 인자에 따라 추가 시간을 그 최소 시간량에 추가하여 결정되는 방법.
  4. 제3항에 있어서,
    상기 복수의 인자는 상기 적어도 하나의 승객이 임의의 패키지들을 갖는지를 포함하는 방법.
  5. 제3항에 있어서,
    상기 복수의 인자는 임의의 패키지들이 상기 차량의 화물칸으로부터 회수될 필요가 있는지를 포함하는 방법.
  6. 제3항에 있어서,
    상기 복수의 인자는 임의의 패키지들이 상기 차량의 화물칸 내에 배치될 필요가 있는지를 포함하는 방법.
  7. 제3항에 있어서,
    상기 복수의 인자는 상기 적어도 하나의 승객이 하나 이상의 차량에 타거나 내리기 위한 이전 시간량들을 식별하는 이력 정보를 포함하는 방법.
  8. 제3항에 있어서,
    상기 복수의 인자는 어린이 안전 좌석이 설치될지를 포함하는 방법.
  9. 제3항에 있어서,
    상기 복수의 인자는 이력 교통 정보를 포함하는 방법.
  10. 제1항에 있어서,
    상기 비교들에 기초하여 상기 가능한 장소들의 세트를 필터링하는 단계; 및
    상기 필터링된 가능한 장소들의 세트의 각각의 장소에 대해 비용 값을 결정하는 단계 - 상기 특정한 하나의 장소를 식별하는 단계는 상기 비용 값들에 기초함 - 를 추가로 포함하는 방법.
  11. 위치에서 적어도 하나의 승객을 승차 또는 하차시키기 위해 차량을 정차시키는 시스템으로서:
    차량을 상기 위치를 향해 기동하고;
    상기 적어도 하나의 승객이 차량에 타거나 내리기 위해 상기 차량이 정차할 필요가 있는 시간량을 추정하고;
    일단 상기 차량이 상기 위치로부터 미리 결정된 거리에 있다면, 상기 차량을 정차시키기에 가능한 장소들의 세트를 결정하고;
    상기 가능한 장소들의 세트의 각각의 장소에 대해, 상기 차량이 다른 교통을 실질적으로 방해하지 않고 정차할 수 있는 대응하는 임계 시간량을 결정하고;
    상기 가능한 장소들의 세트의 각각의 장소에 대해, 상기 추정된 시간량을 해당 장소에 대한 상기 대응하는 임계 시간량과 비교하고;
    상기 비교들에 기초하여 상기 가능한 장소들의 세트 중 특정한 하나의 장소를 식별하고;
    상기 적어도 하나의 승객이 상기 차량에 타거나 내리는 것을 허용하기 위해 상기 특정한 하나의 장소에서 상기 차량을 정차시키도록 구성된 하나 이상의 프로세서를 포함하는 시스템.
  12. 제11항에 있어서,
    상기 추정하는 것은 상기 적어도 하나의 승객이 상기 위치에서 상기 차량에 타거나 내릴 것인지에 기초하여 결정되는 시스템.
  13. 제11항에 있어서,
    상기 추정하는 것은 최소 시간량을 이용하고 복수의 인자에 따라 추가 시간을 그 최소 시간량에 추가하여 결정되는 시스템.
  14. 제13항에 있어서,
    상기 복수의 인자는 어린이 안전 좌석이 설치될지를 포함하는 시스템.
  15. 제13항에 있어서,
    상기 복수의 인자는 이력 교통 정보를 포함하는 시스템.
  16. 제11항에 있어서,
    상기 하나 이상의 프로세서는:
    상기 비교들에 기초하여 상기 가능한 장소들의 세트를 필터링하고;
    상기 필터링된 가능한 장소들의 세트의 각각의 장소에 대해 비용 값을 결정하도록 - 상기 특정한 하나의 장소를 식별하는 것은 상기 비용 값들에 기초함 - 추가로 구성되는 시스템.
  17. 제11항에 있어서,
    상기 차량을 추가로 포함하는 시스템.
  18. 명령어들이 저장되는 비일시적 컴퓨터 판독가능 매체로서, 상기 명령어들은 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 위치에서 적어도 하나의 승객을 승차 또는 하차시키기 위해 차량을 정차시키는 방법을 실행하도록 하고, 상기 방법은:
    상기 위치를 향해 차량을 기동하는 단계;
    적어도 하나의 승객이 차량에 타거나 내리기 위해 상기 차량이 정차할 필요가 있는 시간량을 추정하는 단계;
    일단 상기 차량이 상기 위치로부터 미리 결정된 거리에 있다면, 상기 차량을 정차시키기에 가능한 장소들의 세트를 결정하는 단계;
    상기 가능한 장소들의 세트의 각각의 장소에 대해, 상기 차량이 다른 교통을 실질적으로 방해하지 않고 정차할 수 있는 대응하는 임계 시간량을 결정하는 단계;
    상기 가능한 장소들의 세트의 각각의 장소에 대해, 상기 추정된 시간량을 해당 장소에 대한 상기 대응하는 임계 시간량과 비교하는 단계;
    상기 비교들에 기초하여 상기 가능한 장소들의 세트 중 특정한 하나의 장소를 식별하는 단계; 및
    상기 적어도 하나의 승객이 상기 차량에 타거나 내리는 것을 허용하기 위해 상기 특정한 하나의 장소에서 상기 차량을 정차시키는 단계를 포함하는 비일시적 컴퓨터 판독가능 매체.
KR1020217036308A 2017-08-22 2018-08-21 자율 주행 차량에서 정차 분석을 향상시키기 위해 승객들의 승하차 시간을 추정하기 KR102352063B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US15/682,754 2017-08-22
US15/682,754 US20190066515A1 (en) 2017-08-22 2017-08-22 Estimating time to pick up and drop off passengers for improved stopping analysis in autonomous vehicles
PCT/US2018/047206 WO2019040420A1 (en) 2017-08-22 2018-08-21 ESTIMATING TIME TO GO AND DEPOSIT PASSENGERS FOR BETTER STOP ANALYSIS IN SELF-CONTAINED VEHICLES
KR1020207004876A KR102325200B1 (ko) 2017-08-22 2018-08-21 자율 주행 차량에서 정차 분석을 향상시키기 위해 승객들의 승하차 시간을 추정하기

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020207004876A Division KR102325200B1 (ko) 2017-08-22 2018-08-21 자율 주행 차량에서 정차 분석을 향상시키기 위해 승객들의 승하차 시간을 추정하기

Publications (2)

Publication Number Publication Date
KR20210135367A KR20210135367A (ko) 2021-11-12
KR102352063B1 true KR102352063B1 (ko) 2022-01-17

Family

ID=65437653

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020217036308A KR102352063B1 (ko) 2017-08-22 2018-08-21 자율 주행 차량에서 정차 분석을 향상시키기 위해 승객들의 승하차 시간을 추정하기
KR1020207004876A KR102325200B1 (ko) 2017-08-22 2018-08-21 자율 주행 차량에서 정차 분석을 향상시키기 위해 승객들의 승하차 시간을 추정하기

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020207004876A KR102325200B1 (ko) 2017-08-22 2018-08-21 자율 주행 차량에서 정차 분석을 향상시키기 위해 승객들의 승하차 시간을 추정하기

Country Status (9)

Country Link
US (1) US20190066515A1 (ko)
EP (1) EP3649025A4 (ko)
JP (1) JP6983304B2 (ko)
KR (2) KR102352063B1 (ko)
CN (1) CN111032469B (ko)
AU (2) AU2018321467B2 (ko)
CA (1) CA3073318C (ko)
SG (1) SG11202000830UA (ko)
WO (1) WO2019040420A1 (ko)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7095968B2 (ja) 2017-10-02 2022-07-05 トヨタ自動車株式会社 管理装置
US20200104770A1 (en) * 2018-09-28 2020-04-02 Ford Global Technologies, Llc Rideshare with special need accommodations
US11543824B2 (en) * 2018-10-09 2023-01-03 Waymo Llc Queueing into pickup and drop-off locations
US10988137B2 (en) * 2018-12-04 2021-04-27 Waymo Llc Driveway maneuvers for autonomous vehicles
JP7123840B2 (ja) * 2019-03-19 2022-08-23 本田技研工業株式会社 車両制御装置、監視システム、車両制御方法、およびプログラム
JP2020166719A (ja) * 2019-03-29 2020-10-08 本田技研工業株式会社 駐車場管理装置、駐車場管理方法、およびプログラム
US11493353B1 (en) 2019-03-31 2022-11-08 Gm Cruise Holdings Llc Autonomous vehicle consumption of real-time public transportation data to guide curb access and usage
US10843566B2 (en) * 2019-04-26 2020-11-24 Waymo Llc Audible passenger announcements for autonomous vehicle services
JP7258679B2 (ja) * 2019-07-08 2023-04-17 日産自動車株式会社 車両走行管理システム及び車両走行管理方法
US11048256B2 (en) * 2019-08-09 2021-06-29 Waymo Llc Parking behaviors for autonomous vehicles
US11462019B2 (en) * 2019-09-20 2022-10-04 Gm Cruise Holdings Llc Predicting rider entry time for pick-up and drop-off locations
DE102019218411A1 (de) * 2019-11-27 2021-05-27 Volkswagen Aktiengesellschaft Verfahren zum Halten eines selbstfahrenden Fahrzeugs
US11281220B2 (en) * 2019-12-23 2022-03-22 GM Cruise Holdings, LLC Low mobility assistance for autonomous vehicles passengers
JP7238838B2 (ja) * 2020-03-30 2023-03-14 トヨタ自動車株式会社 自動運転システム
CN112652192A (zh) * 2021-01-04 2021-04-13 北京嘀嘀无限科技发展有限公司 确定限制停靠位置的方法、装置、设备、介质和程序产品
CN112991814B (zh) * 2021-03-18 2022-07-12 上海万科投资管理有限公司 一种基于Token的车辆管控方法及系统
US11794779B2 (en) * 2021-03-19 2023-10-24 Waymo Llc Pullover maneuvers for autonomous vehicles
US20220343763A1 (en) * 2021-04-21 2022-10-27 Waymo Llc Identifying parkable areas for autonomous vehicles
US11731659B2 (en) 2021-04-29 2023-08-22 Argo AI, LLC Determination of vehicle pullover location considering ambient conditions
JP7480748B2 (ja) 2021-05-18 2024-05-10 トヨタ自動車株式会社 ライドシェア車両の制御装置及び制御方法
US11656093B2 (en) 2021-09-27 2023-05-23 Argo AI, LLC Method and system for navigating vehicle to pickup / drop-off zone
KR102625975B1 (ko) * 2021-11-29 2024-01-19 주식회사 오비고 자율주행 버스의 운행을 제어하기 위한 학습 방법 및 학습 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치
WO2024004453A1 (ja) * 2022-06-28 2024-01-04 ソニーグループ株式会社 移動体制御情報生成方法、移動体制御情報生成装置、および移動体、並びに移動体制御システム
CN116611565B (zh) * 2023-05-23 2023-12-29 岭南师范学院 基于数据分析的用户行为监控系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3302740B2 (ja) 1992-11-18 2002-07-15 株式会社東芝 列車運行管理方法及び装置
US20150219464A1 (en) * 2014-02-04 2015-08-06 Here Global B.V. Method and apparatus for providing passenger embarkation points for points of interests
US20150346727A1 (en) 2015-08-12 2015-12-03 Madhusoodhan Ramanujam Parking Autonomous Vehicles
WO2016209595A1 (en) 2015-06-22 2016-12-29 Google Inc. Determining pickup and destination locations for autonomous vehicles

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0327290D0 (en) * 2003-11-24 2003-12-24 Rolls Royce Plc Method and system for assisting the passage of an entity through successive zones to a destination
US20110130916A1 (en) * 2009-12-01 2011-06-02 Ise Corporation Location Based Vehicle Data Logging and Diagnostic System and Method
US20130179205A1 (en) * 2012-01-10 2013-07-11 Eduard SLININ Systems and methods for optimizing transportation resources
US20140142996A1 (en) * 2012-11-21 2014-05-22 Mitchel Ian Skyer System and method for passengers vehicle management
US20140358394A1 (en) * 2013-02-15 2014-12-04 Lxtch, Llc Jolt and Jar Recorder System and Methods of Use Thereof
US20150006072A1 (en) * 2013-06-30 2015-01-01 Jeremy Kasile Goldberg Dynamically Optimized Transportation System
US9631933B1 (en) * 2014-05-23 2017-04-25 Google Inc. Specifying unavailable locations for autonomous vehicles
US9610948B2 (en) * 2015-03-04 2017-04-04 General Electric Company Movement detection system and method
US20160283896A1 (en) * 2015-03-24 2016-09-29 GM Global Technology Operations LLC Operating an inventory system of a vehicle
CN106469514A (zh) * 2015-08-21 2017-03-01 阿里巴巴集团控股有限公司 一种地点提示方法和装置
US20170169366A1 (en) * 2015-12-14 2017-06-15 Google Inc. Systems and Methods for Adjusting Ride-Sharing Schedules and Routes
KR20170075353A (ko) * 2015-12-23 2017-07-03 한국교통대학교산학협력단 비콘을 이용한 대중교통 승하차 시스템 및 방법
US11205240B2 (en) * 2015-12-30 2021-12-21 Waymo Llc Autonomous vehicle services
US10347134B2 (en) * 2015-12-31 2019-07-09 Gt Gettaxi Limited System for navigating drivers to selected locations to reduce passenger wait time
US20170213308A1 (en) * 2016-01-26 2017-07-27 GM Global Technology Operations LLC Arbitration of passenger pickup and drop-off and vehicle routing in an autonomous vehicle based transportation system
US9911084B2 (en) * 2016-02-02 2018-03-06 International Business Machines Corporation Autonomous vehicle scheduling system for pickup and drop-off of passengers
US10255816B2 (en) * 2016-04-27 2019-04-09 Uber Technologies, Inc. Transport vehicle configuration for impaired riders
US11599833B2 (en) * 2016-08-03 2023-03-07 Ford Global Technologies, Llc Vehicle ride sharing system and method using smart modules
US10322719B2 (en) * 2016-09-08 2019-06-18 Ford Global Technologies, Llc Vehicle repositioning system
US10043396B2 (en) * 2016-09-13 2018-08-07 Ford Global Technologies, Llc Passenger pickup system and method using autonomous shuttle vehicle
US10681513B2 (en) * 2016-10-20 2020-06-09 nuTonomy Inc. Identifying a stopping place for an autonomous vehicle
US20180143027A1 (en) * 2016-11-22 2018-05-24 Microsoft Technology Licensing, Llc Dynamic route planning for demand-based transport
US10528059B2 (en) * 2017-05-24 2020-01-07 Uatc, Llc Systems and methods for controlling autonomous vehicles that provide a vehicle service to users

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3302740B2 (ja) 1992-11-18 2002-07-15 株式会社東芝 列車運行管理方法及び装置
US20150219464A1 (en) * 2014-02-04 2015-08-06 Here Global B.V. Method and apparatus for providing passenger embarkation points for points of interests
WO2016209595A1 (en) 2015-06-22 2016-12-29 Google Inc. Determining pickup and destination locations for autonomous vehicles
US20150346727A1 (en) 2015-08-12 2015-12-03 Madhusoodhan Ramanujam Parking Autonomous Vehicles

Also Published As

Publication number Publication date
EP3649025A4 (en) 2021-05-26
EP3649025A1 (en) 2020-05-13
JP6983304B2 (ja) 2021-12-17
KR20210135367A (ko) 2021-11-12
KR102325200B1 (ko) 2021-11-11
AU2021202268A1 (en) 2021-05-06
CA3073318A1 (en) 2019-02-28
CN111032469B (zh) 2023-09-26
JP2020531337A (ja) 2020-11-05
AU2018321467B2 (en) 2021-01-28
WO2019040420A1 (en) 2019-02-28
US20190066515A1 (en) 2019-02-28
CN111032469A (zh) 2020-04-17
AU2018321467A1 (en) 2020-02-27
SG11202000830UA (en) 2020-03-30
CA3073318C (en) 2023-04-18
AU2021202268B2 (en) 2022-05-12
KR20200022050A (ko) 2020-03-02

Similar Documents

Publication Publication Date Title
KR102352063B1 (ko) 자율 주행 차량에서 정차 분석을 향상시키기 위해 승객들의 승하차 시간을 추정하기
CN110785780B (zh) 用于自动驾驶车辆中乘客的提前上车的方法和系统
US11669783B2 (en) Identifying unassigned passengers for autonomous vehicles
US11475119B2 (en) Recognizing assigned passengers for autonomous vehicles
JP2019537530A (ja) 自律走行車の停車位置のプランニング

Legal Events

Date Code Title Description
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant