KR20220150892A - 사용자가 내비게이션에서 실수를 할 가능성이 있을 때 미리 생성되는 대체 내비게이션 길안내 - Google Patents

사용자가 내비게이션에서 실수를 할 가능성이 있을 때 미리 생성되는 대체 내비게이션 길안내 Download PDF

Info

Publication number
KR20220150892A
KR20220150892A KR1020227027543A KR20227027543A KR20220150892A KR 20220150892 A KR20220150892 A KR 20220150892A KR 1020227027543 A KR1020227027543 A KR 1020227027543A KR 20227027543 A KR20227027543 A KR 20227027543A KR 20220150892 A KR20220150892 A KR 20220150892A
Authority
KR
South Korea
Prior art keywords
maneuver
user
navigation
location
likelihood
Prior art date
Application number
KR1020227027543A
Other languages
English (en)
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 KR20220150892A publication Critical patent/KR20220150892A/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/3415Dynamic re-routing, e.g. recalculating the route when the user deviates from calculated route or after detecting real-time traffic data or accidents
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3461Preferred or disfavoured areas, e.g. dangerous zones, toll or emission zones, intersections, manoeuvre types, segments such as motorways, toll roads, ferries
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3484Personalized, e.g. from learned user behaviour or user-defined profiles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3492Special cost functions, i.e. other than distance or default speed limit of road segments employing speed data or traffic data, e.g. real-time or historical
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3626Details of the output of route guidance instructions
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3626Details of the output of route guidance instructions
    • G01C21/3629Guidance using speech or audio output, e.g. text-to-speech
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3626Details of the output of route guidance instructions
    • G01C21/3641Personalized guidance, e.g. limited guidance on previously travelled routes
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3667Display of a road map
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3697Output of additional, non-guidance related information, e.g. low fuel level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Abstract

경로를 이동할 때 사용자에 의한 오류 가능성을 예측하고 선제 조치를 취하기 위해, 컴퓨팅 디바이스는 경로를 통해 출발 위치로부터 목적지 위치까지의 내비게이션 길안내에 대한 사용자의 요청을 수신한다. 컴퓨팅 디바이스는 기동 및 기동을 위한 경로 상의 위치를 각각 포함하는 내비게이션 지시를 포함하는 내비게이션 길안내 세트를 사용자에게 제공한다. 경로 상의 다가오는 기동에 대해, 컴퓨팅 디바이스는 사용자가 기동을 부정확하게 수행할 가능성을 결정한다. 상기 가능성이 임계 가능성을 초과한다는 결정에 응답하여, 사용자가 기동을 위한 위치에 도착하기 전에, 컴퓨팅 디바이스는 대체 경로를 통해 상기 경로를 벗어난 위치로부터 목적지 위치로 이동하기 위한 대체 내비게이션 길안내 세트를 생성한다.

Description

사용자가 내비게이션에서 실수를 할 가능성이 있을 때 미리 생성되는 대체 내비게이션 길안내
본 발명은 대체 내비게이션 길안내에 관한 것으로, 보다 상세하게는 사용자가 경로를 이동할 때 오류 가능성을 예측하고, 이 가능성에 기초하여 대체 내비게이션 길안내를 미리 생성하는 것에 관한 것이다.
본 명세서에 제공된 배경기술은 본 발명의 컨텍스트를 일반적으로 제시하기 위한 목적이다. 본 배경기술 섹션에서 기술되는 범위까지 현재 명명된 발명자들의 성과 뿐만 아니라 출원 시점에 선행기술로서 인정되지 않는 기술의 양태들은 본 발명에 대한 선행기술로서 명시적으로 또는 묵시적으로도 인정되지 않는다.
오늘날 컴퓨터, 스마트폰 등에서 실행되는 소프트웨어 애플리케이션 또는 임베디드 디바이스는 단계별 내비게이션 길안내를 생성한다. 일반적으로, 사용자는 출발 위치 및 목적지를 특정하고, 소프트웨어 애플리케이션은 길안내를 즉시 및/또는 사용자가 출발 위치로부터 목적지로 이동함에 따라 디스플레이 및/또는 오디오 포맷으로 제시한다.
이러한 소프트웨어 애플리케이션은 일반적으로 거리, 거리 이름, 건물 번호 표시를 활용하여, 경로를 기반으로 내비게이션 길안내를 생성한다. 예를 들어, 이러한 시스템은 "4분의 1마일을 간 다음 메이플 스트리트로 우회전"과 같은 지시를 운전자에게 제공할 수 있다.
내비게이션 오류의 가능성을 예측하기 위해, 내비게이션 오류 예측 시스템은 일련의 내비게이션 지시에 포함된 다가오는 기동의 특성을 결정한다. 특성은 기동 자체의 특성 예를 들어, 기동 유형, 이전 기동에 기초한 및/또는 사용자의 현재 위치에 기초한 초기 차선 포지션, 기동을 수행하기 위한 최종 차선 포지션, 기동과 이전 기동 사이의 거리 및/또는 시간, 기동의 복잡도 수준 등 및/또는 기동에 대한 환경에 관한 특성 예를 들어, 기동을 수행하는 차량 내 소음 수준, 기동 위치, 기동이 수행되는 도로의 교통량, 차량의 속도, 차량이 기동 위치에 접근함에 따라 긴급 차량이 차량을 지나갔는지 여부 등일 수 있다.
내비게이션 오류 예측 시스템은 사용자가 이러한 특성에 기초하여 기동을 부정확하게 수행할 가능성을 결정할 수 있다. 예를 들어, 차량 내의 소음 수준이 높을수록 가능성이 더 높을 수 있다. 다른 예에서, 그 가능성은 기동에 대한 더 높은 복잡도 수준에 대해 더 높을 수 있다. 일부 구현예에서, 내비게이션 오류 예측 시스템은 이들 특성들 중 하나 이상에 점수를 할당할 수 있고, 그 다음 다가오는 기동에 대한 전체 점수를 생성하기 위해 임의의 적절한 방식으로 특성 점수들을 결합할 수 있다. 내비게이션 오류 예측 시스템은 그 다음 전체 점수에 따라 사용자가 기동을 부정확하게 수행할 가능성을 결정할 수 있다.
다른 구현예에서, 내비게이션 오류 예측 시스템은 다양한 기동 및/또는 환경에 대한 사용자의 과거 경험에 기초하여 기계 학습 모델을 생성하기 위해 기계 학습 기법을 사용할 수 있다. 예를 들어, 라디오가 너무 크게 재생되거나 트럭이 지나가는 경우 사용자가 내비게이션 지시를 따르지 못했을 수 있다. 다른 예에서, 기동이 6방향 교차로에서 약간의 우회전이었고 사용자가 크게 우회전을 했을 때 사용자는 내비게이션 지시를 따를 수 없었을 수 있다.
따라서, 내비게이션 오류 예측 시스템은 사용자에게 제공되는 기동 세트와 기동이 수행되거나 시도되었던 환경에 대한 정보를 수집한다. 각 기동에 대해, 내비게이션 오류 예측 시스템은 기동이 정확하게 수행되었는지 여부에 대한 표시를 수집하고, 그렇지 않은 경우 기동을 시도한 후 사용자의 위치를 수집한다. 그런 다음 이 정보는 사용자가 기동을 잘못 수행할 가능성을 결정하고, 기동을 시도한 후 사용자가 있을 위치를 예측하기 위해 기계 학습 모델을 트레이닝하기 위한 트레이닝 데이터로 사용된다. 예를 들어, 기동의 복잡도 수준이 높거나 매우 높고, 사용자가 60mph 이상으로 이동하는 경우, 기계 학습 모델은 사용자가 기동을 잘못 수행할 가능성을 0.7로 결정할 수 있다.
다가오는 기동에 대해, 내비게이션 오류 예측 시스템은 사용자가 기동을 부정확하게 수행할 결정된 가능성을 임계 가능성(예를 들어, 0.25)과 비교한다. 가능성이 임계 가능성보다 높으면 내비게이션 오류 예측 시스템이 선제 조치를 취할 수 있다. 선제 조치의 예는 기동을 시도한 후 사용자에 대한 예측된 위치로부터 목적지 위치로의 내비게이션 길안내의 대안 세트를 생성하는 것을 포함할 수 있다. 사용자가 기동을 위한 위치에 도착하기 전에 내비게이션 길안내의 대체 세트가 생성될 수 있다. 이러한 방식으로, 사용자가 기동을 시도한 후 경로를 벗어난 위치에 있으면 사용자는 사용자의 현재 위치에서 내비게이션 길안내의 대체 세트가 생성될 수 있을 때까지 기다릴 필요가 없다. 대신, 내비게이션 애플리케이션이 경로를 다시 계산할 때, 사용자가 더 이상 혼란을 겪지 않고 목적지 위치에서 더 멀리 이동하지 않도록 내비게이션 길안내의 대체 세트가 사전 생성되어 원활한 방식으로 사용자에게 제공된다.
선제 조치의 다른 예는 다가오는 기동을 수행하기 위한 난이도에 관한 경고를 제공하는 것을 포함할 수 있다. 경고에 추가하여, 내비게이션 오류 예측 시스템은 사용자가 다가오는 기동을 위한 위치에 도착하기 전에 대체 경로를 선택하도록 사용자 제어를 제공할 수 있다.
선제 조치는 또한 이전 기동에 대한 내비게이션 지시가 제시되는 동안 다가오는 기동에 대한 내비게이션 지시를 제시하는 것을 포함할 수 있다. 이러한 방식으로, 사용자는 사용자가 이전 기동을 수행하기 전에 다음 기동을 인지하여, 사용자가 이전 기동을 수행할지 또는 대체 내비게이션 길안내를 요청할지 여부를 결정할 수 있도록 한다. 추가적으로, 사용자는 사용자가 이전 기동을 완료하는 즉시 다음 기동을 수행하기 위해 필요한 조치를 취할 수 있도록 다음 기동을 수행할 준비를 할 수 있다. 예를 들어, 제1 기동은 사용자가 4차선 고속도로의 왼쪽 차선에 합류하는 고속도로로 진입하는 것일 수 있다. 다음 기동은 고속도로에 진입한 후 0.3마일의 오른쪽 차선을 사용하여 고속도로를 빠져나가는 것일 수 있다. 이 시나리오에서, 고속도로 진입을 위한 내비게이션 지시와 함께 고속도로 나가기 위한 내비게이션 지시가 제시될 수 있다. 이러한 방식으로 사용자는 다음 기동이 너무 어려워 고속도로에 진입하지 못할 수 있다고 판단하거나 고속도로에 진입하는 즉시 차선을 변경하여 사용자가 출구에 도달하기 전에 오른쪽 차선으로 건너갈 수 있도록 준비할 수 있다.
선제 조치의 또 다른 예는 다가오는 기동을 포함하는 내비게이션 길안내를 반복하는 것, 다가오는 기동을 포함하는 오디오 내비게이션 길안내의 볼륨을 증가시키는 것, 다가오는 기동을 포함하는 내비게이션 길안내의 상세 수준 및/또는 길이를 증가시키는 것, 다가오는 기동을 포함하는 시각적 내비게이션 지시를 제시하는 디스플레이의 밝기를 증가시키는 것, 시각적 내비게이션 지시를 위한 디스플레이의 크기를 증가시키는 것 등을 포함할 수 있다.
본 개시의 기법의 일 예시적 실시예는 경로를 이동할 때 사용자에 의한 오류의 가능성을 예측하기 위한 방법이다. 방법은 경로를 통해 출발 위치로부터 목적지 위치까지의 내비게이션 길안내에 대한 사용자의 요청을 수신하는 단계, 및 복수의 내비게이션 지시를 포함하는 내비게이션 길안내의 세트를 사용자에게 제공하는 단계를 포함한다. 각 내비게이션 지시는 기동 및 기동을 위한 경로 상의 위치를 포함한다. 상기 경로 상의 적어도 하나의 다가오는 기동에 대해, 방법은 사용자가 기동을 부정확하게 수행할 가능성을 결정하는 단계, 및 상기 가능성이 임계 가능성을 초과한다는 결정에 응답하여, 사용자가 기동을 위한 위치에 도착하기 전에, 대체 경로를 통해 상기 경로를 벗어난 위치로부터 목적지 위치로 이동하기 위한 대체 내비게이션 길안내 세트를 생성하는 단계를 포함한다.
다른 예시적 실시예는 차량에서 경로를 이동할 때 사용자에 의한 오류 가능성을 예측하기 위한 컴퓨팅 디바이스이며, 컴퓨팅 디바이스는 하나 이상의 프로세서 및 하나 이상의 프로세서에 결합되고 명령어를 저장하는 비일시적 컴퓨터 판독가능 메모리를 포함한다. 명령어는 하나 이상의 프로세서에 의해 실행될 때, 컴퓨팅 디바이스로 하여금 경로를 통해 출발 위치로부터 목적지 위치까지의 내비게이션 길안내에 대한 사용자의 요청을 수신하게 하고, 복수의 내비게이션 지시를 포함하는 내비게이션 길안내의 세트를 사용자에게 제공하게 한다. 각 내비게이션 지시는 기동 및 기동을 위한 경로 상의 위치를 포함한다. 상기 경로 상의 적어도 하나의 다가오는 기동에 대해, 명령어는 컴퓨팅 디바이스로 하여금 사용자가 기동을 부정확하게 수행할 가능성을 결정하게 하고, 그리고 상기 가능성이 임계 가능성을 초과한다는 결정에 응답하여, 사용자가 기동을 위한 위치에 도착하기 전에, 대체 경로를 통해 상기 경로를 벗어난 위치로부터 목적지 위치로 이동하기 위한 대체 내비게이션 길안내 세트를 생성하게 한다.
또 다른 실시예는 명령어를 저장하는 비일시적 컴퓨터 판독가능 메모리이다. 명령어는 하나 이상의 프로세서에 의해 실행될 때, 하나 이상의 프로세서로 하여금 경로를 통해 출발 위치로부터 목적지 위치까지의 내비게이션 길안내에 대한 사용자의 요청을 수신하게 하고, 복수의 내비게이션 지시를 포함하는 내비게이션 길안내의 세트를 사용자에게 제공하게 한다. 각 내비게이션 지시는 기동 및 기동을 위한 경로 상의 위치를 포함한다. 상기 경로 상의 적어도 하나의 다가오는 기동에 대해, 명령어는 하나 이상의 프로세서로 하여금 사용자가 기동을 부정확하게 수행할 가능성을 결정하게 하고, 그리고 상기 가능성이 임계 가능성을 초과한다는 결정에 응답하여, 사용자가 기동을 위한 위치에 도착하기 전에, 대체 경로를 통해 상기 경로를 벗어난 위치로부터 목적지 위치로 이동하기 위한 대체 내비게이션 길안내 세트를 생성하게 한다.
도 1은 본 개시의 기법이 내비게이션에서 오류 가능성을 예측하는데 사용될 수 있는 예시적 차량을 도시한다.
도 2은 내비게이션에서 오류 가능성을 예측하기 위한 기법이 구현될 수 있는 예시적 시스템의 블록도이다.
도 3a 및 도 3b는 사용자가 수행하는데 어려움을 겪는 예시적 기동을 도시한다.
도 4은 도 2의 내비게이션 오류 예측 시스템이 특정한 기동에 대한 사용자의 오류 가능성을 예측하기 위한 기계 학습 모델을 생성하기 위해 활용할 수 있는 예시적 기동 데이터 테이블이다.
도 5는 기계 학습 모델을 사용하여 기동에 대한 오류 가능성의 예측을 도시하는 결합된 블록 및 논리 다이어그램이다.
도 6은 출발 위치로부터 목적지 위치까지의 경로를 디스플레이하고, 경로 상의 기동에 관한 경고를 포함하는 예시적 내비게이션 디스플레이를 도시한다. 그리고
도 7은 내비게이션 오류 예측 시스템에서 동작하거나 이와 협력하는 컴퓨팅 디바이스에서 구현될 수 있는 경로를 이동할 때 사용자에 의한 오류 가능성을 예측하기 위한 예시적 방법의 흐름도이다.
개요
본 명세서에 기술된 본 발명은 다음의 이점들을 실현하도록 특정한 실시예들에서 구현될 수 있다. 사용자가 기동을 부정확하게 수행할 가능성이 임계 가능성을 초과한다는 결정에 응답하여 내비게이션 길안내의 대체 세트를 생성함으로써, 사용자가 실수할 가능성이 있기 전에 사전에 대체 내비게이션 길안내 세트를 준비하여 사용자가 기동을 잘못 수행할 경우에 대비한다. 이는 사용자가 기동을 잘못 수행한 경우 필요할 때 올바른 내비게이션 길안내가 준비되어 있고 이러한 지시를 제공하는데 지연이 없음을 의미한다. 이는 사용자가 목적지까지 효과적으로 탐색할 수 있도록 하기 위해 사용자의 실수에 따라 대체 내비게이션 지시가 종종 신속하게 발행되어야 하기 때문에 중요하다. 지연은 사용자의 추가 실수 가능성을 높이고, 사용자가 목적지까지의 시간을 늘리는 차선책을 취할 가능성을 높일 수 있다. 게다가, 실수의 가능성이 임계 가능성 이상일 때 대체 내비게이션 길안내만을 생성함으로써, 여기에 설명된 구현예는 모든 기동에 대한 대체 내비게이션 길안내를 생성하는 것과 연관될 과도한 프로세싱 및 데이터 검색을 피한다. 따라서 계산 효율성이 향상된다.
또한, 구현예는 명확성을 향상시키고 사용자에 의한 오류의 가능성을 줄이기 위해 하나 이상의 내비게이션 길안내가 적응되도록 한다. 예를 들어, 사용자가 기동을 부정확하게 수행할 가능성이 임계 가능성을 초과한다고 결정하는 것에 응답하여, 사용자가 적응된 내비게이션 지시를 올바르게 이해할 가능성을 증가시키도록 적응된 기동에 대한 적응된 내비게이션 지시가 사용자에게 제공될 수 있다. 이는 지시의 볼륨을 높이거나 지시의 디스플레이 밝기 또는 크기를 늘리는 것을 포함할 수 있다. 이는 적응된 지시 내에서 기동을 위한 지시의 하나 이상의 반복을 제시하는 것을 더 포함할 수 있다. 이는 적응된 지시가 제공되는 기간을 연장하거나 적응된 지시 내에 기동이 어렵거나 실수가 있을 수 있다는 하나 이상의 경고 또는 알림을 사용자에게 제공하는 것을 더 포함할 수 있다. 적응된 지시는 또한 하나 이상의 추가 인터페이스를 통해 제공되도록 적응될 수 있다. 예를 들어, 지시가 디스플레이 인터페이스를 통해 제공되는 경우, 적응된 지시는 오디오 인터페이스를 통해 제공될 수 있다(또는 그 반대로). 적응된 내비게이션 지시를 제공함으로써, 사용자가 기동을 잘못 수행할 가능성이 감소되고, 이에 의해 잠재적으로 수정 내비게이션 길안내/지시를 발행할 필요를 피할 수 있다.
예시적 하드웨어 및 소프트웨어 컴포넌트들
도 1을 참조하면, 상술한 기법이 구현될 수 있는 예시적 환경(1)은 휴대용 디바이스(10) 및 헤드 유닛(14)을 가진 차량(12)을 포함한다. 휴대용 디바이스(10)는 예를 들어 스마트폰 또는 태블릿 컴퓨터일 수 있다. 휴대용 디바이스(10)는 유선(예: USB(Universal Serial Bus)) 또는 무선(예: Bluetooth, Wi-Fi Direct)일 수 있는 통신 링크(16)를 통해 차량(12)의 헤드 유닛(14)과 통신한다. 휴대용 디바이스(10)는 또한 4세대 또는 3세대 셀룰러 네트워크(각각 4G 또는 3G)와 같은 무선 통신 네트워크를 통해 다양한 컨텐츠 제공자, 서버 등과 통신할 수 있다.
헤드 유닛(14)은 디지털 지도와 같은 내비게이션 정보를 제시하기 위한 디스플레이(18)를 포함할 수 있다. 일부 구현예에서 디스플레이(18)는 터치 스크린이고, 목적지의 이름 또는 주소, 출발지 등을 포함할 수 있는 텍스트 입력을 위한 소프트웨어 키보드를 포함한다. 헤드 유닛(14) 및 스티어링휠의 하드웨어 입력 제어(20 및 22)는 각각 영숫자 문자를 입력하거나 내비게이션 길안내를 요청하는 다른 기능을 수행하는데 사용될 수 있다. 헤드 유닛(14)은 또한 예를 들어 마이크로폰(24) 및 스피커(26)와 같은 오디오 입력 및 출력 컴포넌트를 포함할 수 있다. 스피커(26)는 휴대용 디바이스(10)로부터 전송된 오디오 지시를 재생하는데 사용될 수 있다.
내비게이션 오류 예측 시스템이 구현될 수 있는 예시적 통신 시스템(100)이 도 2에 도시된다. 통신 시스템(100)은 "지도 애플리케이션(22)"으로도 지칭될 수 있는 지리적 애플리케이션(22)을 실행하도록 구성된 클라이언트 컴퓨팅 디바이스(10)를 포함한다. 구현예에 따라, 애플리케이션(22)은 인터렉티브 디지털 지도를 디스플레이하고, 운전, 도보 또는 오디오 및 시각적 내비게이션 길안내를 포함하는 다른 내비게이션 길안내를 제공하기 위해 라우팅 데이터를 요청 및 수신하고, 다양한 지리적 위치를 제공하는 컨텐츠 등을 제공할 수 있다. 클라이언트 컴퓨팅 디바이스(10)는 사용자에 의해 동작되어 다양한 위치로 탐색하는 동안 디지털 지도를 디스플레이한다.
클라이언트 컴퓨팅 디바이스(10)에 더하여, 통신 시스템(100)은 기동을 수행할 때 사용자에 의한 오류 가능성을 예측하고 가능성에 기초하여 클라이언트 디바이스(10)에 대체 내비게이션 길안내를 제공하도록 구성된 서버 디바이스(60)를 포함한다. 서버 디바이스(60)는 예시적 구현예에서, 기계 학습 모델을 트레이닝하기 위한 트레이닝 데이터에 추가하여, 다가오는 기동을 수행할 때 오류 가능성을 예측하기 위한 기계 학습 모델을 저장하는 데이터베이스(80)에 통신가능하게 결합될 수 있다. 트레이닝 데이터는 내비게이션 지시 세트에 포함된 기동 및 기동의 특성을 포함하여 사용자에게 제공되는 내비게이션 지시 세트를 포함할 수 있다. 기동의 특성은 기동 유형, 이전 기동에 기초한 및/또는 사용자의 현재 위치에 기초한 초기 차선 포지션, 기동을 수행하기 위한 최종 차선 포지션, 기동과 이전 기동 사이의 거리 및/또는 시간, 기동의 복잡도 수준, 기동을 수행하는 차량 내 소음 수준, 기동 위치, 기동이 수행되는 도로의 교통량, 차량의 속도, 차량이 기동 위치에 접근함에 따라 긴급 차량이 차량을 지나갔는지 여부 등을 포함할 수 있다. 또한, 각 기동에 대해, 트레이닝 데이터는 기동이 정확하게 수행되었는지 여부에 대한 표시를 포함하고, 그렇지 않은 경우 기동을 시도한 후 사용자의 위치를 포함한다. 트레이닝 데이터는 도 4을 참조하여 아래에서 더 자세히 기술된다.
보다 일반적으로, 서버 디바이스(60)는 지리적 컨텍스트와 링크될 수 있는 임의의 유형의 적합한 지리 공간 정보 또는 정보를 저장하는 하나 이상의 데이터베이스와 통신할 수 있다. 통신 시스템(100)은 예를 들어, 운전, 도보, 자전거 또는 대중 교통 길안내를 제공하는 내비게이션 데이터 서버(34)를 포함할 수 있다. 또한, 통신 시스템(100)은 지도 디스플레이를 생성하기 위한 지도 데이터를 서버 디바이스(60)에 제공하는 지도 데이터 서버(50)를 포함할 수 있다. 통신 시스템(100)에서 동작하는 디바이스는 통신 네트워크(30)를 통해 상호 연결될 수 있다.
다양한 구현예에서, 클라이언트 컴퓨팅 디바이스(10)는 스마트폰 또는 태블릿 컴퓨터일 수 있다. 클라이언트 컴퓨팅 디바이스(10)는 메모리(20), 하나 이상의 프로세서(CPU)(16), GPU(graphics processing unit)(12), 마이크로폰 및 스피커를 포함하는 I/O 모듈(14), 사용자 인터페이스(UI)(32) 및 GPS 모듈을 포함하는 하나 이상의 센서(19)를 포함할 수 있다. 메모리(20)는 비일시적 메모리일 수 있으며, 랜덤 액세스 메모리(RAM), 읽기 전용 메모리(ROM), 플래시 메모리, 다른 유형의 영구적 메모리 등과 같은 하나 이상의 적절한 메모리 모듈을 포함할 수 있다. I/O 모듈(14)은 예를 들어 터치 스크린일 수 있다. 다양한 구현예에서, 클라이언트 컴퓨팅 디바이스(10)는 도 2에 도시된 것보다 적은 수의 컴포넌트를 포함하거나 반대로 추가적 컴포넌트를 포함할 수 있다. 다른 실시예에서, 클라이언트 컴퓨팅 디바이스(10)는 임의의 적절한 휴대용 또는 비휴대용 컴퓨팅 디바이스일 수 있다. 예를 들어, 클라이언트 컴퓨팅 디바이스(10)는 랩톱 컴퓨터, 데스크톱 컴퓨터, 스마트 워치 또는 스마트 글래스와 같은 웨어러블 디바이스 등일 수 있다.
메모리(20)는 임의의 유형의 적합한 모바일 또는 범용 운영 체제일 수 있는 운영 체제(OS)(26)를 저장한다. OS(26)는 애플리케이션이 센서 판독 값을 검색할 수 있게 하는 애플리케이션 프로그래밍 인터페이스(API) 기능을 포함할 수 있다. 예를 들어, 컴퓨팅 디바이스(10)에서 실행하도록 구성된 소프트웨어 애플리케이션은 그 순간에 클라이언트 컴퓨팅 디바이스(10)의 현재 위치를 검색하기 위해 OS(26) API를 호출하는 명령어를 포함할 수 있다. API는 API가 추정치에 얼마나 확실한지에 대한 정량적 표시를 반환할 수 있다(예: 백분율).
메모리(20)는 또한 상기 표시된 바와 같이 인터렉티브 디지털 지도를 생성하고 및/또는 다른 지리적 기능을 수행하도록 구성된 지도 애플리케이션(22)을 저장한다. 매핑 애플리케이션(22)은 내비게이션 지시를 수신하고, 내비게이션 디스플레이(24)를 통해 내비게이션 지시를 제시할 수 있다. 지도 애플리케이션(22)은 운전, 도보 또는 대중 교통 길안내를 디스플레이할 수 있고, 일반적으로 지리, 지리위치 내비게이션 등과 관련된 기능을 내비게이션 디스플레이(24)를 통해 제공한다.
비록 도 2가 지도 애플리케이션(22)을 독립형 애플리케이션으로서 도시하지만, 지도 애플리케이션(22)의 기능은 또한 클라이언트 컴퓨팅 디바이스(10) 상에서 실행되는 웹 브라우저를 통해 액세스 가능한 온라인 서비스의 형태로 클라이언트 컴퓨팅 디바이스(10) 상에서 실행되는 다른 소프트웨어 애플리케이션에 대한 플러그인 또는 확장으로서 제공될 수 있다. 맵핑 애플리케이션(22)은 일반적으로 상이한 각각의 운영 체제에 대해 상이한 버전으로 제공될 수 있다. 예를 들어, 클라이언트 컴퓨팅 디바이스(10)의 제조사는 Android™ 플랫폼용 맵핑 애플리케이션(22), iOS™ 플랫폼용 다른 SDK 등을 포함하는 SDK(Software Development Kit)를 제공할 수 있다.
일부 구현예에서, 서버 디바이스(60)는 하나 이상의 프로세서(62) 및 메모리(64)를 포함한다. 메모리(64)는 유형적, 비일시적 메모리일 수 있으며, 랜덤 액세스 메모리(RAM), 읽기 전용 메모리(ROM), 플래시 메모리, 다른 유형의 영구적 메모리 등과 같은 임의의 유형의 적절한 메모리 모듈을 포함할 수 있다. 메모리(64)는 내비게이션 오류 예측 엔진(68)을 구성하는 프로세서(62)에서 실행 가능한 명령어를 저장하며, 이는 다가오는 기동에 대한 사용자의 오류 가능성을 결정할 수 있고, 기동을 시도한 후 사용자의 예측된 위치로부터 대체 내비게이션 길안내를 생성하는 것과 같은 선제 조치를 취할 수 있다. 내비게이션 오류 예측 엔진(68)은 차량의 소음량, 기동을 위한 위치에서의 트래픽 양, 차량이 기동을 위한 위치에 접근할 때 차량의 속도와 같은 기동을 위한 환경의 특성을 포함하는 기동의 특성에 기초하여 다가오는 기동에 대한 사용자의 오류 가능성을 결정할 수 있다. 일부 시나리오에서, 내비게이션 오류 예측 엔진(68)은 다가오는 기동에 대한 사용자의 오류 가능성을 결정하기 위한 기계 학습 모델을 생성할 수 있다. 내비게이션 오류 예측 엔진(68)은 다가오는 기동의 특성을 기계 학습 모델에 적용하여 다가오는 기동에 대한 사용자의 오류 가능성을 결정할 수 있다. 추가적으로, 내비게이션 오류 예측 엔진(68)은 클라이언트 디바이스(10)에 대체 내비게이션 길안내를 제공할 수 있으며, 이것은 예를 들어 사용자의 현재 위치가 다가오는 기동을 시도한 후 경로를 벗어날 때 내비게이션 디스플레이(24)에 의해 제시된다. 일부 실시예에서, 내비게이션 오류 예측 엔진(68)은 아래에서 더 상세히 설명되는 기계 학습 엔진을 포함한다.
내비게이션 오류 예측 엔진(68) 및 내비게이션 디스플레이(24)는 내비게이션 오류 예측 시스템의 컴포넌트로서 동작할 수 있다. 대안적으로, 내비게이션 오류 예측 시스템은 서버 측 컴포넌트만을 포함할 수 있고, 내비게이션 지시를 제시하기 위한 명령어를 내비게이션 디스플레이(24)에 제공할 수 있다. 다시 말해서, 이들 실시예에서의 내비게이션 오류 예측 기법은 내비게이션 디스플레이(24)에 투명하게 구현될 수 있다. 다른 대안으로서, 내비게이션 오류 예측 엔진(68)의 전체 기능은 내비게이션 디스플레이(24)에서 구현될 수 있다.
간단히 하기 위해, 도 2은 서버의 단지 하나의 인스턴스로서 서버 디바이스(60)를 도시한다. 그러나, 일부 구현예에 따른 서버 디바이스(60)는 각각 하나 이상의 프로세서를 구비하고 다른 서버 디바이스와 독립적으로 동작할 수 있는 하나 이상의 서버 디바이스의 그룹을 포함한다. 이러한 그룹에서 동작하는 서버 디바이스는 요청을 프로세싱하는 것과 연관된 하나의 동작이 하나의 서버 디바이스에서 수행되고, 동일한 요청을 프로세싱하는 것과 연관된 다른 동작은 다른 서버 디바이스에서 수행되거나 또는 임의의 기타 적절한 기법에 따라 수행되는 분산 방식으로 클라이언트 컴퓨팅 디바이스(10)로부터의 요청을 개별적으로(예를 들어, 가용성에 기초하여) 프로세싱할 수 있다. 이 논의의 목적상, "서버 디바이스"라는 용어는 개별 서버 디바이스 또는 둘 이상의 서버 디바이스의 그룹을 지칭할 수 있다.
동작시, 클라이언트 컴퓨팅 디바이스(10)에서 동작하는 내비게이션 디스플레이(24)는 데이터를 수신하고 서버 디바이스(60)에 전송한다. 따라서, 일례에서, 클라이언트 컴퓨팅 디바이스(10)는 출발 위치로부터 목적지까지의 내비게이션 길안내를 요청하는 내비게이션 오류 예측 엔진(68)(서버 디바이스(60)에서 구현됨)에 통신을 전송할 수 있다. 따라서, 내비게이션 오류 예측 엔진(68)은 요청에 응답하여 내비게이션 길안내 세트를 획득하고, 클라이언트 컴퓨팅 디바이스(10)에 내비게이션 길안내 세트를 제공할 수 있다.
그 다음 다가오는 기동에 대해, 내비게이션 오류 예측 엔진(68)은 기동에 관한 환경의 특성을 획득한다. 이것은 차량의 소음 수준, 차량의 속도 등과 같은 다가오는 기동을 위해 클라이언트 컴퓨팅 디바이스(10)를 둘러싼 환경을 나타내는 센서 데이터를 획득하는 것을 포함할 수 있다. 그 결과, 내비게이션 오류 예측 엔진(68)은 사용자가 기동의 특성에 기초하여 다가오는 기동을 잘못 수행할 가능성을 결정할 수 있다. 내비게이션 오류 예측 엔진(68)은 사용자가 기동을 수행하는데 실수를 하는 경우에 대체 내비게이션 길안내 세트를 생성하여 클라이언트 컴퓨팅 디바이스(10)에 제공할 수 있다.
클라이언트 컴퓨팅 디바이스(10)는 사용자의 현재 위치를 결정할 수 있고, 현재 위치가 내비게이션 길안내에 대한 경로를 벗어나면, 클라이언트 컴퓨팅 디바이스(10)는 대체 내비게이션 길안내를 제시할 수 있다. 다른 구현예에서, 내비게이션 오류 예측 엔진(68)은 내비게이션 디스플레이(24) 상에 제시될 수 있는 다가오는 기동에 대해 클라이언트 컴퓨팅 디바이스(10)에 경고를 제공할 수 있다. 또 다른 구현예에서, 내비게이션 오류 예측 엔진(68)은 사용자가 적응된 내비게이션 지시를 정확하게 이해할 가능성을 증가시키기 위해 내비게이션 디스플레이(24) 상에 제시될 수 있는 클라이언트 컴퓨팅 디바이스(10)에 다가오는 기동을 위한 적응된 내비게이션 지시를 제공할 수 있다. 적응된 내비게이션 지시는 반복될 수 있고, 증가된 볼륨 또는 디스플레이 밝기로 제시될 수 있고, 더 긴 기간 동안 제시될 수 있거나, 이전 내비게이션 지시가 제시되는 동안 이전 내비게이션 지시와 함께 제시될 수 있다.
내비게이션 오류 예측 엔진(68)은 내비게이션 지시 생성 시, 이전 기동 완료 후, 이전 기동이 완료되기 전 기동 후, 다가오는 기동이 완료되기 전 미리 결정된 수의 기동의 기동 후 또는 다른 적절한 시간에 다가오는 기동에 관한 환경의 특성을 획득할 수 있다.
내비게이션 오류 예측 시스템은 운전 방향을 참조하여 여기에서 설명되지만, 이것은 단지 예시의 편의를 위한 것이다. 내비게이션 오류 예측 시스템은 도보, 자전거, 대중 교통 또는 임의의 적절한 내비게이션 길안내에 대해 구현될 수 있다. 소음 수준은 클라이언트 컴퓨팅 디바이스(10)를 둘러싸는 영역 내의 소음 수준일 수 있고, 속도 데이터는 클라이언트 컴퓨팅 디바이스(10)가 차량 내에 있는지 여부에 관계없이 클라이언트 컴퓨팅 디바이스(10)의 속도일 수 있다.
임의의 경우에, 내비게이션 오류 예측 엔진(68)은 다가오는 기동의 특성에 기초하여 사용자가 다가오는 기동을 부정확하게 수행할 가능성을 결정한다. 일부 구현예에서, 내비게이션 오류 예측 엔진(68)은 차량 내의 소음 수준에 기초하여 사용자가 다가오는 기동을 부정확하게 수행할 가능성을 결정한다. 내비게이션 오류 예측 엔진(68)은 더 높은 소음 수준에 대한 더 높은 가능성을 결정할 수 있다. 또한, 사용자가 다가오는 기동을 잘못 수행할 가능성은 소음 수준의 변화에 기초하여 결정될 수 있다. 예를 들어, 소음 수준이 중간 소음 수준이지만 시간이 지남에 따라 일정하게 유지되는 경우, 사용자는 내비게이션 지시가 사용자에게 제시될 때 소음 수준이 크게 증가하는 경우보다 내비게이션 지시를 오해할 가능성이 적다. 따라서, 내비게이션 오류 예측 엔진(68)은 시간에 따른 소음 수준의 더 큰 증가에 대해 더 높은 가능성을 결정할 수 있다. 일부 구현예에서, 내비게이션 오류 예측 엔진(68)은 소음 수준과 소음 수준의 변화의 적절한 조합에 기초하여 사용자가 다가오는 기동을 부정확하게 수행할 가능성을 결정한다.
다른 구현예에서, 내비게이션 오류 예측 엔진(68)은 기동에 대한 복잡도 수준에 기초하여 사용자가 다가오는 기동을 부정확하게 수행할 가능성을 결정한다. 복잡도 수준은 1에서 100까지와 같은 복잡도 점수일 수 있고, "매우 낮음", "낮음", "보통", "높음", "매우 높음" 등과 같은 카테고리일 수 있거나 기타 적절한 방식으로 표시될 수 있다. 기동에 대한 복잡도 수준은 4거리 교차로에서 회전, 6거리 교차로에서 회전, 원형 교차로, U턴, 고속도로 합류, 고속도로 진출과 같은 기동 유형에 기초하여 결정될 수 있다. 일부 구현예에서, 기동에 대한 복잡도 수준은 기동 유형 및 기동의 위치의 조합에 기초하여 결정될 수 있다. 기동이 기동 유형이 일반적인 위치에 있는 경우(예: 위치를 포함하는 지리적 영역 내 기동 유형의 빈도가 임계 빈도를 초과하는 경우), 기동이 기동 유형이 일반적이지 않은 위치에 있는 경우보다 복잡도 수준이 낮을 수 있다. 예를 들어, 원형 교차로가 흔한 영국에서는 원형 교차로가 흔하지 않은 미국보다 복잡도 수준이 낮을 수 있다.
복잡도 수준은 또한 다가오는 기동과 이전 기동 사이의 시간 또는 거리의 양에 기초하여 결정될 수 있다. 이전 기동 직후에 발생하는 기동은 복잡도 수준이 더 높을 수 있다. 또한, 사용자가 기동을 수행하기 위해 변경해야 하는 차선의 수에 따라 복잡도 수준이 결정될 수 있다. 예를 들어, 내비게이션 오류 예측 엔진(68)은 이전 기동을 수행한 후 사용자에 대한 초기 차선을 사용자가 다가오는 기동을 수행하기 위한 최종 차선과 비교할 수 있다. 기동 수행을 위한 차선 변경 횟수가 증가할수록 복잡도 수준이 증가할 수 있다.
도 3a는 높은 복잡도 수준(예를 들어, 70의 복잡도 점수)을 갖는 어려운 기동의 일례를 도시한다. 도 3a에 도시된 바와 같이, 사용자는 Valeri Street에서 북쪽으로 향하고 있다. 사용자가 교차로에 접근하면, 기동은 회전 교차로에서 Chavez Street으로 세 번째 출구로 나가는 것이다. 많은 사용자가 원형 교차로에 대한 상당한 경험이 없기 때문에 사용자는 실수로 원형 교차로에서 첫 번째 또는 두 번째 출구로 나갈 수 있다. 도 3b는 높은 복잡도 수준(예를 들어, 85의 복잡도 점수)을 갖는 어려운 기동의 또 다른 예를 도시한다. 도 3b에 도시된 바와 같이, 사용자는 좌측 차선에서 합류하는 고속도로에 진입한다. 고속도로는 5차선 고속도로이며 다가오는 기동은 0.3마일의 맨 오른쪽 차선에서 고속도로를 빠져나가는 것이다. 사용자가 Lake Street의 고속도로에서 나가려면 0.3마일 이내에 맨 왼쪽 차선에서 맨 오른쪽 차선으로 이동해야 한다. 이것은 사용자가 필요한 차선 변경을 하기에 충분한 시간을 허용하지 않을 수 있으며 사용자는 Lake Street의 고속도로를 빠져나갈 수 없다.
또 다른 구현예에서, 내비게이션 오류 예측 엔진(68)은 소음 수준, 기동에 대한 복잡도 수준 및/또는 기동에 대한 다른 특성들의 임의의 적절한 조합에 기초하여 사용자가 다가오는 기동을 부정확하게 수행할 가능성을 결정한다. 예를 들어, 내비게이션 오류 예측 엔진(68)은 기동에 대한 특성 각각에 점수를 할당하고, 기동에 대한 전체 점수를 생성하기 위해 임의의 적절한 방식으로 점수를 결합할 수 있다. 내비게이션 오류 예측 엔진(68)은 그 다음 기동에 대한 전체 점수에 기초하여 가능성을 결정할 수 있다.
다른 구현예에서, 내비게이션 오류 예측 엔진(68)은 사용자가 기동을 부정확하게 수행할 가능성을 결정하기 위한 기계 학습 모델을 생성한다. 사용자가 기동을 부정확하게 수행할 가능성을 결정하기 위한 기계 학습 모델을 생성하기 위해, 내비게이션 오류 예측 엔진(68)은 사용자에게 이전에 제공된 내비게이션 지시 세트를 포함하는 트레이닝 데이터를 획득하며, 여기서 각각의 내비게이션 지시는 기동을 포함한다.
트레이닝 데이터는 또한 기동이 수행되었던 환경의 특성을 포함하여 이러한 기동 각각의 특성을 포함할 수 있다. 예를 들어, 위치 데이터 및/또는 다른 사용자 데이터를 공유하는 옵션을 선택한 사용자는 내비게이션 지시가 제시되었을 때 수집된 각각의 클라이언트 컴퓨팅 디바이스(10)로부터의 센서 데이터와 함께 각각의 클라이언트 컴퓨팅 디바이스(10)에 의해 제시된 내비게이션 지시 세트를 전송할 수 있다. 센서 데이터는 각 내비게이션 지시에 대해, 내비게이션 지시가 제시되었던 때의 교통량, 내비게이션 지시가 제시되었던 시간, 내비게이션 지시가 제시되었던 때의 기상 조건, 내비게이션 지시가 제시되었던 때의 소음 수준, 내비게이션 지시가 제시되었던 때의 사용자의 현재 위치, 내비게이션 지시가 제시되었던 때의 사용자의 현재 속도 등을 포함할 수 있다.
일부 실시예에서, 클라이언트 컴퓨팅 디바이스(10)는 클라이언트 컴퓨팅 디바이스(10)에 포함된 시계 및 마이크로폰을 통해 시간 및 소음 수준을 각각 결정한다. 날씨를 결정하기 위해, 클라이언트 컴퓨팅 디바이스(10)는 레인 센서를 포함하거나 기상청과 같은 외부 서비스와 통신할 수 있다. 예를 들어, 클라이언트 컴퓨팅 디바이스(10)는 GPS 모듈과 통신하여 현재 위치를 획득하고, 현재 위치를 포함하는 지역에 대한 날씨 데이터에 대한 요청을 기상청에 전송할 수 있다. 교통량을 결정하기 위해, 클라이언트 컴퓨팅 디바이스(10)는 현재 위치를 획득하기 위해 GPS 모듈과 통신하고, 현재 위치를 포함하는 지역에 대한 교통 데이터에 대한 요청을 트래픽 서비스에 전송할 수 있다.
임의의 경우에, 제시된 각각의 내비게이션 지시에 대해, 내비게이션 오류 예측 엔진(68)은 기동에 대한 특성, 기동이 정확하게 수행되었는지 여부에 대한 표시, 그리고 그렇지 않은 경우 기동을 시도한 후 사용자의 위치를 획득한다. 예를 들어, 내비게이션 지시가 제시된 후 사용자의 현재 위치가 원래 경로의 경로와 다르기 때문에 지도 애플리케이션(22)이 새로운 경로를 생성한 경우, 내비게이션 오류 예측 엔진(68)은 기동이 정확하게 수행되지 않았다는 표시를 수신할 수 있고, 기동을 시도한 후 사용자의 현재 위치의 표시를 수신할 수 있다.
내비게이션 지시 세트, 기동 특성, 기동이 올바르게 수행되었는지 여부의 표시 및/또는 기동 시도 후 사용자의 위치가 기계 학습 기법을 사용하여 기계 학습 모델을 생성하기 위한 트레이닝 데이터로서 제공될 수 있다.
기계 학습 모델을 생성하기 위한 예시적 트레이닝 데이터
도 4은 기계 학습 모델을 생성하는데 사용될 수 있는 예시적 트레이닝 데이터(400)를 도시한다. 일부 실시예에서, 트레이닝 데이터(400)는 데이터베이스(80)에 저장될 수 있다. 트레이닝 데이터(400)는 2개의 부분을 포함할 수 있다: 기동 특성(410) 및 시도된 기동의 결과(420). 기동 특성(410)은 기동(402) 및 기동 유형(404), 예를 들어 4방향 교차로에서의 회전, 6방향 교차로에서의 회전, 원형교차로, 고속도로 합류, 고속도로 출구, U턴, 급회전, 약간 회전, 차선 변경 등을 포함할 수 있다.
기동 특성(410)은 또한 기동(406)에 대한 복잡도 수준을 포함할 수 있다. 복잡도 수준(406)은 1 내지 100과 같은 복잡도 점수일 수 있고, "매우 낮음", "낮음", "보통", "높음", "매우 높음" 등과 같은 카테고리일 수 있거나, 다른 적절한 방식으로 표시된다. 기동에 대한 복잡도 수준(406)은 4방향 교차로에서의 회전, 6방향 교차로에서의 회전, 원형 교차로, U턴, 고속도로 합류, 고속도로 출구 등과 같은 기동 유형(404)에 기초하여 결정될 수 있다. 복잡도 수준(406)은 또한 다가오는 기동과 이전 기동 사이의 시간 또는 거리의 양에 기초하여 결정될 수 있다. 이전 기동 직후에 발생하는 기동은 복잡도 수준이 더 높을 수 있다. 또한, 사용자가 기동을 수행하기 위해 변경해야 하는 차선의 수에 따라 복잡도 수준(406)이 결정될 수 있다. 예를 들어, 내비게이션 오류 예측 엔진(68)은 이전 기동을 수행한 후 사용자에 대한 초기 차선을 사용자가 다가오는 기동을 수행하기 위한 최종 차선과 비교할 수 있다. 기동 수행을 위한 차선 변경 횟수가 증가할수록 복잡도 수준(406)이 증가할 수 있다.
또한, 기동 특성(410)은 기동(408)의 위치를 포함할 수 있다. 데이터 테이블(400)의 위치 열(408)은 GPS 좌표를 포함하지만, 위치는 교차로, 거리 주소 또는 임의의 다른 적절한 위치일 수 있다.
추가적으로, 기동 특성(410)은 기동(412)의 위치에서의 트래픽의 양을 포함할 수 있고, 가벼운 트래픽, 중간 트래픽, 또는 대규모 트래픽으로 분류된다. 예를 들어 도로의 교통량이 적으면 도로 상의 차량이 제한 속도 이상으로 주행하고 있음을 나타낼 수 있다. 도로의 중간 교통량은 도로 상의 차량이 제한 속도 미만의 임계 속도(예: 제한 속도 5-10 mph 이내) 내에서 주행하고 있음을 나타낼 수 있다. 도로의 많은 교통량은 도로 상의 차량이 제한 속도 미만의 임계 속도(예: 제한 속도 5-10 mph 미만)보다 낮은 속도로 주행하고 있음을 나타낼 수 있다.
더욱이, 기동 특성(410)은 사용자가 기동의 위치(414)에 접근할 때 차량 또는 클라이언트 컴퓨팅 디바이스(10)의 속도 및 배경 음악 또는 차량 내 대화, 거리 소음, 경적 소리, 전화 벨소리 등과 같은 차량 내 또는 주변의 소음 수준(416을 포함할 수 있다. 소음 수준(416)은 데시벨(dB)로 표시되거나 조용함(예를 들어, 제1 임계 데시벨 양 미만), 중간(예를 들어, 제1 임계 데시벨 양과 제1 임계 데시벨보다 높은 제2 임계 데시벨 양 사이), 시끄러움(예: 제2 임계 데시벨 양 이상) 등으로 카테고리화될 수 있다. 일부 실시예에서, 소음 수준(416)은 라디오 또는 기타 음악 재생, 거리 소음 등과 같은 소음의 소스 표시를 또한 포함할 수 있다. 또한 일부 실시예에서, 소음 수준(416)은 사용자가 기동의 위치에 접근함에 따라 조용한 것에서 큰 것으로, 큰 것에서 중간으로 등과 같이 시간에 따른 소음 수준의 변화의 표시를 포함할 수 있다.
예시적 트레이닝 데이터(400)는 기동(402), 기동 유형(404), 기동 복잡도 수준(406), 기동(408)의 위치, 교통 데이터(412), 속도 데이터(414) 및 기동 특성(410)으로서 소음 데이터(416)를 포함하지만, 이들은 단지 설명의 편의를 위한 기동 특성의 몇 가지 예이다. 기동 및/또는 기동과 관련된 환경을 나타내는 임의의 적절한 특성은 경로 상의 이전 기동의 위치, 연속 기동 사이의 시간 또는 거리, 차량의 차선 포지션, 차량이 기동 위치에 접근함에 따라 긴급 차량이 차량을 지나쳤는지 여부 등과 같은 기동 특성(410)으로서 사용될 수 있다.
기동 특성(410)에 더하여, 트레이닝 데이터(400)는 시도된 기동(420)의 결과를 나타내는 데이터를 포함할 수 있다. 시도된 기동(420)의 결과를 나타내는 데이터는 기동이 올바르게 수행되었는지(422)의 표시를 포함할 수 있다. 예를 들어, 사용자의 현재 위치가 사용자가 기동 위치에 도착한 후 경로 상의 경로와 다른 경우, 내비게이션 오류 예측 엔진(68)은 사용자가 기동을 수행하는데 실수를 했다는 표시를 수신할 수 있다. 시도된 기동(420)의 결과를 나타내는 데이터는 또한 사용자의 현재 위치가 경로 상의 경로와 다른 경우 기동을 시도한 후 사용자의 현재 위치의 표시를 포함할 수 있다. 예를 들어, 기동이 약간 우회전인 경우, 사용자의 현재 위치는 사용자가 급하게 우회전을 했음을 나타낼 수 있다. 다른 예에서, 기동이 원형 교차로의 세 번째 출구로 나가는 것인 경우, 사용자의 현재 위치는 사용자가 원형 교차로의 두 번째 출구에서 나갔음을 나타낼 수 있다.
기계 학습 모델을 생성하기 위해, 내비게이션 오류 예측 엔진(68)은 올바르게 수행된 기동 및 부정확하게 수행된 기동에 대응하는 트레이닝 데이터(400)의 서브세트를 분류할 수 있다. 예를 들어, 트레이닝 데이터(400)의 첫 번째 행(시끄러운 환경에서 복잡도 수준이 낮은 우회전 포함)은 올바르게 수행된 기동에 대응하는 것으로 분류될 수 있다. 트레이닝 데이터(400)의 네 번째 행(조용한 환경에서 복잡도가 높은 원형 교차로 포함)은 잘못 수행된 기동에 대응하는 것으로 분류될 수 있다.
그 후, 내비게이션 오류 예측 엔진(68)은 기계 학습 모델을 생성하기 위해 제1 및 제2 서브세트를 분석할 수 있다. 기계 학습 모델은 회귀 분석(예: 로지스틱 회귀, 선형 회귀 또는 다항 회귀), k- 최근접 이웃, 결정 트리, 랜덤 포레스트, 부스팅, 신경망, 지원 벡터 머신, 딥 러닝, 강화 학습, 베이지안 네트워크 등과 같은 다양한 기계 학습 기법을 사용하여 생성될 수 있다. 일부 실시예에서, 내비게이션 오류 예측 엔진(68)은 사용자가 기동을 부정확하게 수행할 가능성을 결정하기 위한 제1 기계 학습 모델 및 기동을 시도한 후 사용자의 위치를 예측하기 위한 제1 기계 학습 모델을 생성할 수 있다.
예를 들어, 사용자가 기동을 잘못 수행할 가능성을 결정하기 위한 기계 학습 모델은 분기로 연결된 여러 노드를 갖는 의사결정 트리일 수 있으며, 여기서 각 노드는 기동 특성에 대한 테스트를 나타내고(예: 기동 복잡도 수준이 낮습니까?), 각 분기는 테스트 결과를 나타내고(예: NO), 각 리프는 사용자가 기동을 잘못 수행할 가능성을 나타낸다(예: 0.4). 다른 구현예에서, 각각의 리프는 가능성의 범위(예를 들어, 0.2-0.3)를 나타낼 수 있다.
보다 구체적으로, 내비게이션 오류 예측 엔진(68)은 제1 노드가 소음 레벨이 큰지 여부에 대응하는 결정 트리를 생성할 수 있다. 소음 수준이 크지 않은 경우, 제1 분기는 트래픽이 많은지 여부에 대응하는 제2 노드에 연결할 수 있다. 트래픽이 많은 경우, 제2 분기는 복잡도 수준이 높은지 여부에 대응하는 제3 노드에 연결할 수 있다. 복잡도 수준이 높으면, 제3 분기가 리프 노드에 연결될 수 있으며 이는 사용자가 기동을 부정확하게 수행할 가능성이 0.3임을 나타낼 수 있다. 결정 트리는 리프 노드 1개와 분기 3개가 포함되어 있지만 이는 설명을 쉽게 하기 위한 예일뿐이다. 각 결정 트리는 기동 특성에 대한 테스트의 적절한 수 및/또는 유형을 갖는 임의의 수의 노드, 분기 및 잎을 포함할 수 있다.
기동을 시도한 후 사용자의 위치를 예측하기 위한 기계 학습 모델은 또한 각 노드가 기동 특성에 대한 테스트를 나타내는 분기로 연결된 여러 노드를 갖는 결정 트리일 수 있다. 다른 구현예에서, 기동을 시도한 후 사용자의 위치를 예측하기 위한 기계 학습 모델은 신경 네트워크일 수 있다. 예를 들어, 트레이닝 데이터에 기초하여, 기계 학습 모델은 사용자가 약간의 우회전에서 실수를 했을 때 사용자가 심하게 우회전했을 가능성이 있다고 결정할 수 있다. 따라서, 기계 학습 모델은 사용자가 기동을 위한 교차로에서 급우회전한 위치에 있을 것이라고 예측할 수 있다. 다른 예에서, 기계 학습 모델은 트레이닝 데이터에 기초하여 사용자가 도로 표지판을 보기 어려운 위치에서 좌회전에서 실수를 했을 때 및/또는 소음 수준이 클 때 사용자가 계속 직진할 가능성이 높다고 결정할 수 있다. 따라서, 기계 학습 모델은 사용자가 기동을 위해 교차로를 지나 직진하는 것에 해당하는 위치에 있을 것이라고 예측할 수 있다.
기계 학습 기법을 사용하여 내비게이션에서 오류를 예측하기 위한 예시적 로직
도 5는 도 2의 내비게이션 오류 예측 엔진(68)이 예시적 시나리오에서 각각의 기동에 대한 내비게이션 오류를 예측하는 방법을 개략적으로 도시한다. 도 5의 일부 블록은 하드웨어 및/또는 소프트웨어 컴포넌트(예: 블록 502)를 나타내고, 다른 블록은 이러한 데이터 구조, 레지스터 또는 상태 변수(예를 들어, 블록 504, 512, 520)를 저장하는 데이터 구조 또는 메모리를 나타내고, 다른 블록은 출력 데이터를 나타낸다(예를 들어, 블록(506)). 입력 신호는 대응하는 신호 이름이 라벨링된 화살표로 표현된다.
도 5의 기계 학습 엔진(502)은 기계 학습 모델(520)을 생성하기 위해 내비게이션 오류 예측 엔진(68) 내에 포함될 수 있다. 기계 학습 모델(520)을 생성하기 위해, 기계 학습 엔진(502)은 제1 기동이 제공되었던 때의 기동 특성의 제1 특성과 함께 내비게이션 지시에서 사용자에게 이전에 제공된 제1 기동(522) 및 사용자가 기동을 정확하게 수행했는지 여부의 제1 표시를 포함하는 트레이닝 데이터를 수신한다. 트레이닝 데이터는 또한 제2 기동이 제공되었을 때 기동 특성의 제2 세트와 함께 내비게이션 지시에서 동일하거나 다른 사용자에게 이전에 제공된 제2 기동(524) 및 사용자가 기동을 정확하게 수행했는지 여부의 제2 표시를 포함한다. 또한, 트레이닝 데이터는 제3 기동이 제공되었을 때 기동 특성의 제3 세트와 함께 동일하거나 다른 사용자에게 이전에 제공된 제3 기동(526) 및 사용자가 기동을 정확하게 수행했는지 여부의 제3 표시를 포함한다. 또한, 트레이닝 데이터는 n번째 기동이 제공되었을 때 기동 특성의 제n 세트와 함께 동일한 또는 다른 사용자에게 이전에 제공된 제n 기동(528) 및 사용자가 기동을 정확하게 수행했는지 여부의 제n 표시를 포함한다.
예시적 트레이닝 데이터는 동일하거나 상이한 사용자에게 제공되는 4개의 기동(522-528)을 포함하지만, 이는 단지 예시의 용이성을 위한 예시일 뿐이다. 트레이닝 데이터는 임의의 수의 사용자로부터 임의의 수의 기동을 포함할 수 있다.
이어서, 기계 학습 엔진(502)은 트레이닝 데이터를 분석하여 사용자가 기동을 부정확하게 수행할 가능성을 결정하고 및/또는 기동을 시도한 후 사용자의 위치를 예측하기 위한 기계 학습 모델(520)을 생성한다. 일부 실시예에서, 기계 학습 엔진(502)은 사용자가 기동을 잘못 수행할 가능성을 결정하고 기동을 시도한 후 사용자의 위치를 예측하기 위한 별도의 기계 학습 모델을 생성한다. 기계 학습 모델(520)이 선형 회귀 모델로 예시되어 있지만, 기계 학습 모델은 로지스틱 회귀 모델, 결정 트리, 신경망, 초평면 또는 임의의 다른 적절한 기계 학습 모델과 같은 또 다른 유형의 회귀 모델일 수 있다.
어느 경우이든, 사용자의 내비게이션 길안내 요청에 응답하여, 도 5의 시스템은 예를 들어 내비게이션 서버(34)로부터의 파일에서 경로(504)에 대한 내비게이션 지시 세트를 수신한다. 이 예에서, 내비게이션 지시 세트(504)는 기동 1-3의 기술을 포함하지만, 일반적으로 내비게이션 지시 세트(504)는 임의의 수의 기동을 포함할 수 있다. 각각의 내비게이션 지시 세트(504)에 대해, 시스템은 사용자의 클라이언트 컴퓨팅 디바이스(10) 주변 외부 환경(512)을 나타내는 센서 데이터를 포함하는 기동 특성을 획득한다. 센서 데이터는 사용자의 차량 주변 지역에 대한 교통 데이터, 시간, 사용자의 차량 주변 지역에 대한 날씨 데이터와 같은 가시성 데이터 및/또는 배경 음악 또는 차량에서 말하는 소리, 거리 소음, 경적 소리, 전화 벨소리 등과 같이 차량 내부 또는 주위의 소음 수준을 나타내는 소음 데이터를 포함할 수 있다.
그 다음, 기계 학습 엔진(502)은 외부 환경(512)을 나타내는 센서 데이터를 포함하는 기동 특성을 기계 학습 모델(520)에 적용하여 기동을 수행할 때 사용자가 실수를 할 가능성을 결정할 수 있다. 기계 학습 엔진(502)은 또한 기계 학습 모델(520)에 기동 특성을 적용하여 기동을 시도한 후 사용자의 위치를 예측할 수 있다. 일부 구현예에서, 기계 학습 모델(520)은 사용자가 기동을 수행할 때 실수를 할 가능성이 임계 가능성(예를 들어, 0.25)을 초과할 때 기동을 시도한 후 사용자의 위치를 예측한다.
예를 들어, 제1 기동(506)에 대해, 기계 학습 모델(520)은 기동을 수행할 때 사용자가 실수를 할 가능성이 0.3이라고 결정한다. 기계 학습 모델(520)은 기동 시도 후 사용자의 위치가 34번 출구 북쪽의 1번 고속도로에 있다고 예측한다. 이 예에서, 기동은 34번 출구에서 고속도로 1을 나가는 것이었을 수 있고, 기계 학습 모델(520)은 사용자가 출구에서 나가지 않았다면 사용자가 고속도로 1에서 직진할 가능성이 가장 높다고 결정할 수 있다.
일부 실시예에서, 내비게이션 오류 예측 엔진(68)은 기동을 수행할 때 사용자가 실수를 할 가능성을 임계값 가능성과 비교한다. 가능성이 임계 가능성을 초과한다는 결정에 응답하여, 내비게이션 오류 예측 엔진(68)은 예를 들어 기동을 시도한 후 사용자의 예측된 위치로부터 목적지 위치로의 내비게이션 길안내의 대체 세트를 생성할 수 있다. 내비게이션 오류 예측 엔진(68)은 예를 들어 내비게이션 서버(34)로부터 내비게이션 길안내의 대체 세트를 수신할 수 있다. 내비게이션 오류 예측 엔진(68)은 사용자의 클라이언트 컴퓨팅 디바이스(10)에 내비게이션 길안내의 대안적 세트를 제공하여, 사용자가 기동을 시도한 후 경로를 벗어나는 경우 지체 없이 사용자의 클라이언트 컴퓨팅 디바이스(10)가 내비게이션 길안내의 대안적 세트를 제시할 수 있도록 한다.
일부 구현예에서, 내비게이션 오류 예측 엔진(68)은 사용자가 기동을 시도한 후에 있을 수 있는 다수의 위치로부터 다수의 대안적인 내비게이션 길안내 세트를 생성한다. 예를 들어, 기동이 출구 34에서 고속도로 1을 나가는 것이라면, 내비게이션 오류 예측 엔진(68)은 고속도로 1에서 출구 34를 지나는 내비게이션 길안내의 제1 대체 세트, 출구 33에서 내비게이션 길안내의 제2 대체 세트 및 출구 35에서 내비게이션 길안내의 제3 대체 세트를 생성할 수 있다. 내비게이션 오류 예측 엔진(68)은 사용자의 클라이언트 컴퓨팅 디바이스(10)에 각각의 대체 내비게이션 길안내 세트를 제공할 수 있다. 그 다음, 사용자가 기동을 수행할 때 실수를 하면, 클라이언트 컴퓨팅 디바이스(10)는 기동을 시도한 후에 사용자의 현재 위치를 결정할 수 있고 사용자의 현재 위치에 기초하여 내비게이션 길안내의 대체 세트를 선택할 수 있다. 예를 들어, 사용자의 현재 위치가 출구 35에 있는 경우, 클라이언트 컴퓨팅 디바이스(10)는 출구 35로부터의 제3 대체 내비게이션 길안내 세트를 제시할 수 있다.
또한 일부 실시예에서, 내비게이션 오류 예측 엔진(68)은 먼저 전체 세트의 내비게이션 지시를 사용자의 클라이언트 컴퓨팅 디바이스(10)에 제공한다. 그 다음, 각각의 기동에 대해, 내비게이션 오류 예측 엔진(68)은 외부 환경(512)을 나타내는 특성을 포함하는 기동 특성을 수신하여 기계 학습 모델(520)에 적용한다. 차례로, 기계 학습 모델(520)은 사용자가 기동을 부정확하게 수행할 가능성을 결정하고 내비게이션 오류 예측 엔진(68)은 가능성을 임계 가능성과 비교하여 선제 조치를 취할지 여부를 결정한다. 일부 구현예에서, 내비게이션 오류 예측 엔진(68)은 사용자가 이전 기동을 수행한 후에 사용자가 기동을 부정확하게 수행할 가능성을 결정한다. 다른 구현예에서, 내비게이션 오류 예측 엔진(68)은 이전 기동이 완료되기 전의 기동 후, 기동이 완료되기 전에 미리 결정된 수의 기동 이후 또는 임의의 다른 적절한 시간에 가능성을 결정한다.
내비게이션 디스플레이의 예
위에서 언급한 바와 같이, 내비게이션 오류 예측 엔진(68)이 기동을 수행할 때 사용자가 실수할 가능성이 임계 가능성을 초과한다고 결정하면, 내비게이션 오류 예측 엔진(68)은 실수가 발생하는 것을 방지하거나 사용자의 추가 혼란 및/또는 실수를 방지하기 위해 선제 조치를 취할 수 있다. 이는 기동을 시도한 후 사용자에 대한 예측된 위치로부터 목적지 위치로의 내비게이션 길안내의 대안 세트를 생성하는 것을 포함할 수 있다. 선제 조치는 다가오는 기동을 수행하기 위한 난이도에 관한 경고를 제공하는 것을 포함할 수 있다. 도 6은 출발 위치로부터 목적지 위치까지의 경로를 디스플레이하고, 경로(602) 상의 기동에 관한 경고(604)를 포함하는 예시적 내비게이션 디스플레이(600)를 도시한다. 도 6에 도시된 바와 같이, 기동은 2가지 유형의 우회전을 포함하는 5거리 교차로에서 급우회전을 포함한다. 내비게이션 오류 예측 엔진(68)은 사용자가 기동을 부정확하게 수행할 가능성이 0.4라고 결정할 수 있다. 따라서, 내비게이션 오류 예측 엔진(68)은 40%의 사용자가 급우회전을 놓쳤다는 것을 나타내는 내비게이션 디스플레이(600)에 포함할 경고(604)를 제공할 수 있다. 경고(604)는 또한 다가오는 기동을 위한 위치에 도착하기 전에 사용자가 대체 경로를 선택하기 위한 사용자 제어의 표시를 포함한다. 예를 들어, 사용자는 오른쪽으로 스와이프하여 급우회전을 하기 보다는 5거리 교차로를 지나서 계속 직진하는 것을 포함하는 대체 내비게이션 길안내를 수신할 수 있다.
다른 구현예에서, 내비게이션 디스플레이(600)는 이전 기동에 대한 내비게이션 지시가 제시되는 동안 다가오는 기동에 대한 내비게이션 지시를 제시할 수 있다. 이러한 방식으로, 사용자는 사용자가 이전 기동을 수행하기 전에 다음 기동을 인지하여, 사용자가 이전 기동을 수행할지 또는 대체 내비게이션 길안내를 요청할지 여부를 결정할 수 있도록 한다. 추가적으로, 사용자는 사용자가 이전 기동을 완료하는 즉시 다음 기동을 수행하기 위해 필요한 조치를 취할 수 있도록 다음 기동을 수행할 준비를 할 수 있다. 예를 들어, 제1 기동은 사용자가 4차선 고속도로의 왼쪽 차선에 합류하는 고속도로로 진입하는 것일 수 있다. 다음 기동은 고속도로에 진입한 후 0.3마일의 오른쪽 차선을 사용하여 고속도로를 빠져나가는 것일 수 있다. 이 시나리오에서, 고속도로 진입을 위한 내비게이션 지시와 함께 고속도로 나가기 위한 내비게이션 지시가 제시될 수 있다. 이러한 방식으로 사용자는 다음 기동이 너무 어려워 고속도로에 진입하지 못할 수 있다고 판단하거나 고속도로에 진입하는 즉시 차선을 변경하여 사용자가 출구에 도달하기 전에 오른쪽 차선으로 건너갈 수 있도록 준비할 수 있다.
또 다른 구현예에서, 내비게이션 오류 예측 엔진(68)은 가능성이 임계 가능성을 초과할 때 다가오는 기동에 대한 내비게이션 길안내이 반복되게 할 수 있다. 내비게이션 오류 예측 엔진(68)은 또한 다가오는 기동을 포함하는 오디오 내비게이션 지시의 볼륨을 증가시킬 수 있고, 다가오는 기동을 포함하는 내비게이션 지시의 길이 또는 상세 레벨을 증가시킬 수 있고, 다가오는 기동을 포함하는 내비게이션 디스플레이(600)의 밝기를 증가시킬 수 있고, 다가오는 기동을 포함하는 내비게이션 디스플레이(600)의 크기를 증가시킬 수 있고, 오디오 및 시각적 내비게이션 지시 둘 모두가 클라이언트 컴퓨팅 디바이스(10)의 스피커 및 디스플레이를 통해 각각 제시되게 할 수 있다.
기동에 대한 가능성 오류를 예측하는 방법의 예
도 7은 경로를 이동할 때 사용자에 의한 오류 가능성을 예측하기 위한 예시적 방법(700)의 흐름도를 도시한다. 이 방법(700)은 컴퓨터 판독가능 메모리에 저장되고 서버 디바이스(60)의 하나 이상의 프로세서에서 실행 가능한 명령어의 세트로 구현될 수 있다. 예를 들어, 방법은 내비게이션 오류 예측 엔진(68)에 의해 구현될 수 있다.
블록(702)에서, 내비게이션 오류 예측 엔진(68)은 사용자의 클라이언트 컴퓨팅 디바이스(10)에 의해 시작 위치로부터 목적지까지의 내비게이션 길안내에 대한 요청을 수신한다. 시작 위치는 클라이언트 컴퓨팅 디바이스(10)의 현재 위치일 수 있다. 임의의 경우에, 요청에 응답하여, 내비게이션 오류 예측 엔진(68)은 내비게이션 지시 세트를 생성한다(블록 704). 내비게이션 지시 세트는 텍스트 형식으로 생성될 수 있다. 추가로, 내비게이션 오류 예측 엔진(68)은 요청을 내비게이션 데이터 서버(34)에 포워딩하고, 내비게이션 데이터 서버(34)로부터 내비게이션 지시 세트를 수신함으로써 내비게이션 지시 세트를 생성할 수 있다.
그 다음, 내비게이션 지시 세트의 다가오는 기동에 대해, 내비게이션 오류 예측 엔진(68)은 예를 들어 사용자가 기동 위치에 도착하기 전에 사용자가 기동을 부정확하게 수행할 가능성을 결정한다(블록 706). 일부 실시예에서, 내비게이션 오류 예측 엔진(68)은 다가오는 기동이 턴을 포함할 때 사용자가 다가오는 기동을 부정확하게 수행할 가능성을 결정한다. 다가오는 기동이 회전을 포함하지 않는 경우(예를 들어, 다가오는 기동이 직선으로 계속되는 것인 경우), 내비게이션 오류 예측 엔진(68)은 리소스를 절약하고 과도한 프로세싱 및 데이터 검색을 피하기 위해 사용자가 기동을 잘못 수행할 가능성을 결정하지 않을 수 있다.
보다 구체적으로, 내비게이션 오류 예측 엔진(68)은 기동 자체의 특성(예를 들어, 기동 유형, 이전 기동에 기초한 및/또는 사용자의 현재 위치에 기초한 초기 차선 포지션, 기동을 수행하기 위한 최종 차선 포지션, 기동과 이전 기동 사이의 거리 및/또는 시간, 기동의 복잡도 수준 등) 및/또는 기동과 관련된 환경 특성(예: 기동을 수행하는 차량 내 소음 수준, 기동 위치, 기동이 수행되는 도로의 교통량, 차량의 속도, 차량이 기동 위치에 접근함에 따라 긴급 차량이 차량을 지나갔는지 여부 등)을 포함하는 다가오는 기동의 특성을 획득할 수 있다.
내비게이션 오류 예측 엔진(68)은 사용자가 이러한 특성에 기초하여 기동을 부정확하게 수행할 가능성을 결정할 수 있다. 예를 들어, 소음 수준이 높을수록 가능성이 더 높을 수 있다. 다른 예에서, 그 가능성은 기동에 대한 더 높은 복잡도 수준에 대해 더 높을 수 있다. 일부 구현예에서, 내비게이션 오류 예측 엔진(68)은 이들 특성들 중 하나 이상에 점수를 할당할 수 있고, 그 다음 다가오는 기동에 대한 전체 점수를 생성하기 위해 임의의 적절한 방식으로 특성 점수들을 결합할 수 있다. 내비게이션 오류 예측 엔진(68)은 그 다음 전체 점수에 따라 사용자가 기동을 부정확하게 수행할 가능성을 결정할 수 있다. 다른 구현예에서, 내비게이션 오류 예측 엔진(68)은 사용자가 기동을 부정확하게 수행할 가능성을 결정하기 위해 다양한 기동 및/또는 환경에 대한 사용자의 과거 경험에 기초하여 기계 학습 모델을 생성하기 위해 기계 학습 기법을 사용할 수 있다.
블록(708)에서, 내비게이션 오류 예측 엔진(68)은 가능성을 임계 가능성과 비교한다. 가능성이 임계 가능성을 초과하는 경우, 내비게이션 오류 예측 엔진(68)은 실수가 발생하는 것을 방지하거나 사용자가 더 이상의 혼란 및/또는 실수를 방지하도록 선제 조치를 취할 수 있다.
일부 구현예에서, 내비게이션 오류 예측 엔진(68)은 기동을 시도한 후에 사용자의 위치를 예측한다(블록 710). 예를 들어, 내비게이션 오류 예측 엔진(68)은 사용자가 기동의 위치에서 수행할 수 있는 대체 기동에 기초하는 것과 같이 기동의 위치에 기초하여 기동을 시도한 후 사용자의 위치를 예측할 수 있다.
내비게이션 오류 예측 엔진(68)은 사용자가 기동의 위치에서 수행할 수 있는 대체 기동에 기초하여 기동을 시도한 후 사용자에 대한 후보 위치를 식별할 수 있다. 그 다음, 내비게이션 오류 예측 엔진(68)은 사용자가 기동을 시도한 후에 후보 위치에 도착할 가능성에 기초하여 후보 위치 각각에 점수를 할당할 수 있고, 할당된 점수에 따라 후보 위치의 순위를 매길 수 있다. 보다 구체적으로, 내비게이션 오류 예측 엔진(68)은 기동의 위치, 사용자가 기동의 위치에 접근함에 따라 사용자가 경로를 이동하는 방향 및/또는 사용자가 기동 위치에서 수행할 수 있는 대체 기동에 기초하여 각 후보 위치를 식별하고 및/또는 점수를 매길 수 있다. 내비게이션 오류 예측 엔진(68)은 기동을 시도한 후 사용자에 대한 예측 위치로서 가장 높은 점수를 갖는 후보 위치를 선택할 수 있다. 다른 구현예에서, 내비게이션 오류 예측 엔진(68)은 전술한 바와 같이 기계 학습 모델에 기동의 특성을 적용함으로써 기동을 시도한 후 사용자의 위치를 예측할 수 있다.
임의의 경우에, 내비게이션 오류 예측 엔진(68)은 기동에 대응하지 않는 위치(즉, 원래 경로의 경로를 벗어난 위치)로부터 목적지 위치까지의 대안 경로에 대한 대체 내비게이션 길안내 세트를 생성할 수 있다(블록 712). 기동에 대응하지 않는 위치는 사용자에 대한 예측 위치일 수 있다. 다른 구현예에서, 내비게이션 오류 예측 엔진(68)은 사용자가 기동을 시도한 후에 있을 수 있는 다수의 위치로부터 다수의 대체 내비게이션 길안내 세트를 생성한다. 내비게이션 오류 예측 엔진(68)은 사용자가 기동 위치에 도착하기 전에 사용자의 클라이언트 컴퓨팅 디바이스(10)에 내비게이션 길안내의 세트 또는 대체 세트를 제공하여, 사용자가 기동을 시도한 후 경로를 벗어나는 경우 지체 없이 사용자의 클라이언트 컴퓨팅 디바이스(10)가 내비게이션 길안내의 대체 세트를 제시할 수 있도록 한다.
그 다음, 블록(714)에서, 내비게이션 오류 예측 엔진(68)은 사용자가 목적지 위치에 도착하는지 여부를 결정할 수 있다. 사용자가 목적지 위치에 도착하면 프로세스가 종료된다. 그렇지 않으면, 내비게이션 오류 예측 엔진(68)은 사용자가 다음 다가오는 기동을 부정확하게 수행할 가능성을 결정할 수 있다(블록 706).
추가 고려 사항
전술한 논의에는 다음의 추가 고려 사항이 적용된다. 본 명세서 전체에 걸쳐, 복수의 인스턴스는 단일 인스턴스로서 기술된 컴포넌트, 동작 또는 구조를 구현할 수 있다. 하나 이상의 방법의 개별 동작이 별도의 동작으로 도시되고 설명되었지만, 하나 이상의 개별 동작이 동시에 수행될 수 있으며, 동작이 도시된 순서대로 수행될 필요는 없다. 예시적 구성에서 개별 컴포넌트로서 제시된 구조 및 기능은 결합된 구조 또는 컴포넌트로서 구현될 수 있다. 유사하게, 단일 컴포넌트로서 제시된 구조 및 기능은 별도의 컴포넌트로서 구현될 수 있다. 이들 및 다른 변형, 수정, 추가 및 개선은 본 발명의 주제의 범위 내에 속한다.
추가적으로, 특정 실시예는 본 명세서에서 로직 또는 다수의 컴포넌트, 모듈 또는 메커니즘을 포함하는 것으로 설명된다. 모듈은 소프트웨어 모듈(예를 들어, 기계 판독가능 매체 상에 저장된 코드) 또는 하드웨어 모듈 중 하나를 구성할 수 있다. 하드웨어 모듈은 특정 동작을 수행할 수 있는 유형의 유닛이고, 특정 방식으로 구성 또는 배열될 수 있다. 예시적 실시예에서, 하나 이상의 컴퓨터 시스템(예를 들어, 독립형, 클라이언트 또는 서버 컴퓨터 시스템) 또는 컴퓨터 시스템의 하나 이상의 하드웨어 모듈(예를 들어, 프로세서 또는 프로세서 그룹)은 소프트웨어(예를 들어, 애플리케이션 또는 애플리케이션 부분)에 의해 본 명세서에 기술된 바와 같은 특정 동작을 수행하도록 동작하는 하드웨어 모듈로서 구성될 수 있다.
다양한 실시예들에서, 하드웨어 모듈은 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들어, 하드웨어 모듈은 특정 동작을 수행하기 위해 영구적으로 구성되는 전용 회로 또는 로직을 포함할 수 있다(예를 들어, FPGA(Field Programmable Gate Array) 또는 ASIC(application-specific integrated circuit)와 같은 특수 목적 프로세서). 하드웨어 모듈은 또한 특정 동작을 수행하기 위해 소프트웨어에 의해 일시적으로 구성되는 프로그램 가능 로직 또는 회로(예를 들어, 범용 프로세서 또는 다른 프로그램 가능 프로세서 내에 포함되는)를 포함할 수 있다. 기계적으로, 전용으로 그리고 영구적으로 구성된 회로 또는 일시적으로 구성된 회로(예를 들어, 소프트웨어에 의해 구성된)에서 하드웨어 모듈을 구현하기로 한 결정은 비용 및 시간 고려 사항에 의해 유도될 수 있다는 것이 이해될 것이다.
따라서, 하드웨어라는 용어는 유형적 개체, 물리적으로 구성, 영구적으로 구성(예를 들어, 유선) 또는 일시적으로 구성(예를 들어, 프로그래밍)되어 특정 방식으로 동작하거나 본 명세서에 기술된 특정 동작을 수행하는 개체를 포함하는 것으로 이해되어야 한다. 본 명세서에서 사용되는 "하드웨어 구현 모듈"은 하드웨어 모듈을 지칭한다. 하드웨어 모듈이 일시적으로 구성(예를 들어, 프로그래밍)되는 실시예를 고려하면, 각각의 하드웨어 모듈은 임의의 하나의 인스턴스에서 구성되거나 인스턴스화될 필요가 없다. 예를 들어, 하드웨어 모듈이 소프트웨어를 사용하여 구성된 범용 프로세서를 포함하는 경우, 범용 프로세서는 상이한 시간에 각각 상이한 하드웨어 모듈로서 구성될 수 있다. 따라서, 소프트웨어는 예를 들어 한 시점에서 특정 하드웨어 모듈을 구성하고 다른 시점에서 다른 하드웨어 모듈을 구성하도록 프로세서를 구성할 수 있다.
하드웨어 모듈은 다른 하드웨어에 정보를 제공하고 정보를 수신할 수 있다. 따라서, 설명된 하드웨어 모듈은 통신적으로 연결된 것으로 간주될 수 있다. 그러한 하드웨어 모듈의 다수가 동시에 존재하는 경우, 통신은 하드웨어 모듈을 연결하는 신호 전송(예를 들어, 적절한 회로 및 버스를 통해)을 통해 달성될 수 있다. 다수의 하드웨어 모듈이 상이한 시간에 구성되거나 인스턴스화되는 실시예에서, 이러한 하드웨어 모듈 간의 통신은 예를 들어 다수의 하드웨어 모듈이 액세스하는 메모리 구조에서의 정보의 저장 및 검색을 통해 달성될 수 있다. 예를 들어, 하나의 하드웨어 모듈은 동작을 수행하고, 그 동작의 출력을 통신적으로 연결된 메모리 디바이스에 저장할 수 있다. 그 다음, 추가 하드웨어 모듈은 나중에 메모리 디바이스에 액세스하여 저장된 출력을 검색하고 프로세싱할 수 있다. 하드웨어 모듈은 또한 입력 또는 출력 디바이스와의 통신을 개시할 수 있고, 리소스(예를 들어, 정보 수집)에서 동작할 수 있다.
방법(700)은 비일시적 컴퓨터 판독가능 저장 매체에 저장되고 컴퓨팅 디바이스(예를 들어, 서버 디바이스, 개인용 컴퓨터, 스마트폰, 태블릿 컴퓨터, 스마트 워치, 모바일 컴퓨팅 디바이스 또는 본 명세서에 기술된 다른 클라이언트 컴퓨팅 디바이스)의 프로세서를 사용하여 실행되는 유형의 컴퓨터 실행 가능 명령어 형태의 하나 이상의 기능 블록, 모듈, 개별 기능 또는 루틴을 포함할 수 있다. 방법(700)은 임의의 백엔드 서버(예를 들어, 지도 데이터 서버, 내비게이션 서버 또는 본 명세서에 기술된 임의의 다른 유형의 서버 컴퓨팅 디바이스), 예시적 환경의 클라이언트 컴퓨팅 디바이스 모듈의 일부로서, 예를 들어, 또는 그러한 환경 외부에 있는 모듈의 일부로서 포함될 수 있다. 설명의 편의를 위해 도면이 다른 도면을 참조하여 설명될 수 있지만, 방법(700)은 다른 객체 및 사용자 인터페이스와 함께 이용될 수 있다. 또한, 위의 설명은 특정 디바이스(예: 서버 디바이스(60) 또는 클라이언트 컴퓨팅 디바이스(10))에 의해 수행되는 방법(700)의 단계를 설명하지만, 이는 예시 목적으로만 수행된다. 방법(700)의 블록은 하나 이상의 디바이스 또는 환경의 다른 부분에 의해 수행될 수 있다.
본 명세서에 기술된 예시적 방법의 다양한 동작은 적어도 부분적으로, 관련 동작을 수행하도록 일시적으로 구성되거나(예를 들어, 소프트웨어에 의해) 영구적으로 구성된 하나 이상의 프로세서에 의해 수행될 수 있다. 일시적으로 또는 영구적으로 구성되든, 이러한 프로세서는 하나 이상의 동작 또는 기능을 수행하도록 동작하는 프로세서 구현 모듈을 구성할 수 있다. 본 명세서에서 언급된 모듈은 일부 예시적 실시예에서 프로세서 구현 모듈을 포함할 수 있다.
유사하게, 본 명세서에 기술된 방법 또는 루틴은 적어도 부분적으로 프로세서로 구현될 수 있다. 예를 들어, 방법의 동작 중 적어도 일부는 하나 이상의 프로세서 또는 프로세서로 구현된 하드웨어 모듈에 의해 수행될 수 있다. 특정 동작의 수행은 단일 기계 내에 상주하는 하나 이상의 프로세서에 분산될 수 있을 뿐만 아니라 다수의 컴퓨터에 걸쳐 배포될 수 있다. 일부 예시적 실시예에서, 프로세서(들)는 단일 위치(예를 들어, 가정 환경, 사무실 환경 내에 또는 서버 팜으로서)에 위치될 수 있고, 다른 실시예에서 프로세서는 다수의 위치에 걸쳐 분산될 수 있다.
하나 이상의 프로세서는 또한 "클라우드 컴퓨팅” 환경에서 또는 SaaS로서 관련 동작의 수행을 지원하도록 동작할 수 있다. 예를 들어, 전술한 바와 같이, 적어도 일부 동작은(프로세서를 포함하는 기계의 예로서) 컴퓨터 그룹에 의해 수행될 수 있으며, 이들 동작은 네트워크(예: 인터넷) 및 하나 이상의 적절한 인터페이스를 통해 액세스 가능하다(예: API).
더 나아가, 도면은 단지 예시의 목적으로 예시적 환경의 일부 실시예를 도시한다. 통상의 기술자는 본 명세서에 설명된 원리를 벗어나지 않고 본 명세서에 예시된 구조 및 방법의 대체 실시예가 채용될 수 있다는 것을 다음 논의로부터 쉽게 인식할 것이다.
본 개시를 읽을 때, 통상의 기술자는 본 명세서에 개시된 원리를 통해 경로를 이동할 때 사용자에 의한 오류 가능성을 예측하기 위한 추가의 대안적 구조적 및 기능적 설계를 이해할 것이다. 따라서, 특정 실시예 및 적용예가 도시되고 설명되었지만, 개시된 실시예는 본 명세서에 개시된 정확한 구성 및 컴포넌트에 한정되지 않는 것으로 이해되어야 한다. 통상의 기술자에게 명백할 다양한 수정, 변경 및 변형이 첨부된 청구범위에 정의된 사상 및 범위를 벗어나지 않고 본 명세서에 개시된 방법 및 장치의 구성, 동작 및 세부 사항 내에서 이루어질 수 있다.

Claims (20)

  1. 경로 이동시 사용자의 오류 가능성을 예측하는 방법에 있어서,
    하나 이상의 프로세서에서, 경로를 통해 출발 위치로부터 목적지 위치까지의 내비게이션 길안내에 대한 사용자의 요청을 수신하는 단계;
    하나 이상의 프로세서에 의해, 사용자에게 복수의 내비게이션 지시를 포함하는 내비게이션 길안내 세트를 제공하는 단계, 각각의 내비게이션 지시는 기동 및 상기 기동에 대한 경로 상의 위치를 포함하며;
    하나 이상의 프로세서에 의해, 상기 경로 상의 적어도 하나의 다가오는 기동에 대해, 사용자가 기동을 부정확하게 수행할 가능성을 결정하는 단계; 및
    상기 가능성이 임계 가능성을 초과한다는 결정에 응답하여, 사용자가 기동을 위한 위치에 도착하기 전에, 하나 이상의 프로세서에 의해, 대체 경로를 통해 상기 경로를 벗어난 위치로부터 목적지 위치로 이동하기 위한 대체 내비게이션 길안내 세트를 생성하는 단계를 포함하는, 방법.
  2. 청구항 1에 있어서,
    하나 이상의 프로세서에 의해, 사용자가 기동을 위한 위치에 도착한 후 사용자의 현재 위치를 결정하는 단계;
    하나 이상의 프로세서에 의해, 사용자의 현재 위치에 기초하여 사용자가 기동을 부정확하게 수행했음을 결정하는 단계; 및
    하나 이상의 프로세서에 의해, 상기 대체 경로를 통해 사용자의 현재 위치로부터 목적지 위치로 이동하기 위한 대체 내비게이션 길안내 세트를 사용자에게 제공하는 단계를 더 포함하는, 방법.
  3. 청구항 1에 있어서, 상기 사용자가 기동을 부정확하게 수행할 가능성을 결정하는 단계는:
    하나 이상의 프로세서에 의해, 차량 내 소음 수준을 결정하는 단계; 및
    하나 이상의 프로세서에 의해, 차량 내의 소음 수준에 기초하여 사용자가 기동을 부정확하게 수행할 가능성을 결정하는 단계를 포함하는, 방법.
  4. 청구항 1에 있어서, 상기 사용자가 기동을 부정확하게 수행할 가능성을 결정하는 단계는:
    하나 이상의 프로세서에 의해, 상기 기동의 복잡도 수준을 결정하는 단계; 및
    하나 이상의 프로세서에 의해, 상기 기동의 복잡도 수준에 기초하여 사용자가 기동을 부정확하게 수행할 가능성을 결정하는 단계를 포함하는, 방법.
  5. 청구항 1에 있어서, 상기 사용자가 기동을 부정확하게 수행할 가능성을 결정하는 단계는:
    하나 이상의 프로세서에 의해, 적어도 하나 이상의 다가오는 기동의 하나 이상의 특성을 결정하는 단계; 및
    상기 사용자가 상기 적어도 하나의 다가오는 기동을 부정확하게 수행할 가능성을 결정하기 위해 상기 적어도 하나의 다가오는 기동 및 상기 적어도 하나의 다가오는 기동의 하나 이상의 특성에 기계 학습 모델을 적용하는 단계를 포함하는, 방법.
  6. 청구항 5에 있어서, 상기 사용자가 기동을 부정확하게 수행할 가능성을 결정하는 단계는:
    하나 이상의 프로세서에 의해, (i) 기동을 위한 환경에 관한 특성 및 (ii) 기동이 정확하게 수행되었는지 여부의 표시를 사용하여, 복수의 이전에 수행된 기동 각각을 포함하여, 내비게이션 길안내를 수신하는 동안 복수의 사용자에 의해 이전에 수행된 복수의 기동을 사용하여 사용자가 기동을 부정확하게 수행할 가능성을 결정하기 위한 기계 학습 모델을 트레이닝하는 단계를 포함하는, 방법.
  7. 청구항 6에 있어서, 상기 기동을 위한 환경에 관한 하나 이상의 특성은:
    차량의 소음 수준,
    기동에 대한 복잡도 수준,
    차량의 속도,
    차량의 차선 포지션,
    기동의 위치,
    경로에서 이전 기동의 위치,
    기동 위치의 교통량,
    기동의 유형,
    연속적인 기동 사이의 시간 또는 거리, 또는
    차량이 기동 위치에 접근할 때 긴급 차량이 차량을 지나갔는지 여부 중 적어도 하나를 포함하는, 방법.
  8. 청구항 1에 있어서,
    하나 이상의 프로세서에 의해, 사용자가 기동을 위한 위치에 도착하기 전에, 사용자가 적응된 내비게이션 지시를 정확하게 이해할 가능성을 증가시키도록 기동에 대해 적응된 내비게이션 지시를 사용자에게 제공하는 단계를 더 포함하는, 방법.
  9. 청구항 8에 있어서, 상기 적응된 내비게이션 지시는:
    기동에 관한 경고, 또는
    기동에 대응하는 내비게이션 지시의 반복 중 하나 이상을 포함하는, 방법.
  10. 청구항 8에 있어서, 상기 적응된 내비게이션 지시는:
    상기 적응된 내비게이션 지시의 디스플레이 밝기를 증가시키는 것,
    상기 적응된 내비게이션 지시의 디스플레이 크기를 증가시키는 것 또는
    상기 적응된 내비게이션 지시가 디스플레이되는 기간을 증가시키는 것 중 하나 이상을 위해 적응되는, 방법.
  11. 청구항 8에 있어서, 상기 적응된 내비게이션 지시는:
    상기 적응된 내비게이션 지시의 볼륨을 증가시키는 것 또는
    상기 적응된 내비게이션 지시가 제공되는 기간을 연장시키는 것 중 하나 이상을 위해 적응되는, 방법.
  12. 청구항 1에 있어서, 상기 경로 밖의 위치는 상기 기동을 위한 위치, 상기 사용자가 상기 기동을 위한 위치에 접근함에 따라 상기 사용자가 상기 경로 상에서 이동하는 방향, 기동의 유형 또는 기동을 위한 위치에서 수행될 수 있는 하나 이상의 대체 기동 중 하나 이상에 기초하여 결정되는, 방법.
  13. 경로를 이동할 때 사용자에 의한 오류 가능성을 예측하기 위한 컴퓨팅 디바이스로서,
    하나 이상의 프로세서; 및
    상기 하나 이상의 프로세서에 결합되고 명령어들을 저장하는 비일시적 컴퓨터 판독가능 메모리를 포함하며, 상기 명령어들은 상기 하나 이상의 프로세서에 의해 실행될 때 상기 컴퓨팅 디바이스로 하여금:
    경로를 통해 출발 위치로부터 목적지 위치까지의 내비게이션 길안내에 대한 사용자의 요청을 수신하게 하고;
    사용자에게 복수의 내비게이션 지시를 포함하는 내비게이션 길안내 세트를 제공하게 하고, 각각의 내비게이션 지시는 기동 및 상기 기동에 대한 경로 상의 위치를 포함하며;
    상기 경로 상의 적어도 하나의 다가오는 기동에 대해, 사용자가 기동을 부정확하게 수행할 가능성을 결정하게 하고;
    상기 가능성이 임계 가능성을 초과한다는 결정에 응답하여, 사용자가 기동을 위한 위치에 도착하기 전에, 대체 경로를 통해 상기 경로를 벗어난 위치로부터 목적지 위치로 이동하기 위한 대체 내비게이션 길안내 세트를 생성하게 하는, 컴퓨팅 디바이스.
  14. 청구항 13에 있어서, 상기 명령어는 상기 컴퓨팅 디바이스로 하여금 추가로:
    사용자가 기동을 위한 위치에 도착한 후 사용자의 현재 위치를 결정하게 하고;
    사용자의 현재 위치에 기초하여 사용자가 기동을 부정확하게 수행했음을 결정하게 하고; 그리고
    상기 대체 경로를 통해 사용자의 현재 위치로부터 목적지 위치로 이동하기 위한 대체 내비게이션 길안내 세트를 사용자에게 제공하게 하는, 컴퓨팅 디바이스.
  15. 청구항 13에 있어서, 상기 사용자가 기동을 부정확하게 수행할 가능성을 결정하는 것은:
    차량 내의 소음 수준, 또는
    기동에 대한 복잡도 수준 중 하나 이상에 기초하는, 컴퓨팅 디바이스.
  16. 청구항 13에 있어서, 상기 사용자가 기동을 부정확하게 수행할 가능성을 결정하는 것은:
    적어도 하나 이상의 다가오는 기동의 하나 이상의 특성을 결정하는 것; 및
    상기 사용자가 상기 적어도 하나의 다가오는 기동을 부정확하게 수행할 가능성을 결정하기 위해 상기 적어도 하나의 다가오는 기동 및 상기 적어도 하나의 다가오는 기동의 하나 이상의 특성에 기계 학습 모델을 적용하는 것을 포함하는, 컴퓨팅 디바이스.
  17. 명령어를 저장하는 비일시적 컴퓨터 판독가능 메모리로서, 상기 명령어는 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금:
    경로를 통해 출발 위치로부터 목적지 위치까지의 내비게이션 길안내에 대한 사용자의 요청을 수신하게 하고;
    사용자에게 복수의 내비게이션 지시를 포함하는 내비게이션 길안내 세트를 제공하게 하고, 각각의 내비게이션 지시는 기동 및 상기 기동에 대한 경로 상의 위치를 포함하며;
    상기 경로 상의 적어도 하나의 다가오는 기동에 대해, 사용자가 기동을 부정확하게 수행할 가능성을 결정하게 하고;
    상기 가능성이 임계 가능성을 초과한다는 결정에 응답하여, 사용자가 기동을 위한 위치에 도착하기 전에, 대체 경로를 통해 상기 경로를 벗어난 위치로부터 목적지 위치로 이동하기 위한 대체 내비게이션 길안내 세트를 생성하게 하는, 비일시적 컴퓨터 판독가능 메모리.
  18. 청구항 17에 있어서, 상기 명령어는 상기 하나 이상의 프로세서로 하여금 추가로:
    사용자가 기동을 위한 위치에 도착한 후 사용자의 현재 위치를 결정하게 하고;
    사용자의 현재 위치에 기초하여 사용자가 기동을 부정확하게 수행했음을 결정하게 하고; 그리고
    상기 대안적 경로를 통해 사용자의 현재 위치로부터 목적지 위치로 이동하기 위한 대안적인 내비게이션 길안내 세트를 사용자에게 제공하게 하는, 비일시적 컴퓨터 판독가능 메모리.
  19. 청구항 17에 있어서, 상기 사용자가 기동을 부정확하게 수행할 가능성을 결정하는 것은:
    차량 내의 소음 수준, 또는
    기동에 대한 복잡도 수준 중 하나 이상에 기초하는, 비일시적 컴퓨터 판독가능 메모리.
  20. 청구항 17에 있어서, 상기 사용자가 기동을 부정확하게 수행할 가능성을 결정하는 것은:
    적어도 하나 이상의 다가오는 기동의 하나 이상의 특성을 결정하는 것; 및
    상기 사용자가 상기 적어도 하나의 다가오는 기동을 부정확하게 수행할 가능성을 결정하기 위해 상기 적어도 하나의 다가오는 기동 및 상기 적어도 하나의 다가오는 기동의 하나 이상의 특성에 기계 학습 모델을 적용하는 것을 포함하는, 비일시적 컴퓨터 판독가능 메모리.
KR1020227027543A 2020-03-12 2020-03-12 사용자가 내비게이션에서 실수를 할 가능성이 있을 때 미리 생성되는 대체 내비게이션 길안내 KR20220150892A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2020/022353 WO2021183128A1 (en) 2020-03-12 2020-03-12 Alternative navigation directions pre-generated when a user is likely to make a mistake in navigation

Publications (1)

Publication Number Publication Date
KR20220150892A true KR20220150892A (ko) 2022-11-11

Family

ID=70277463

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227027543A KR20220150892A (ko) 2020-03-12 2020-03-12 사용자가 내비게이션에서 실수를 할 가능성이 있을 때 미리 생성되는 대체 내비게이션 길안내

Country Status (6)

Country Link
US (1) US20220404155A1 (ko)
EP (1) EP4038347A1 (ko)
JP (1) JP2023510470A (ko)
KR (1) KR20220150892A (ko)
CN (1) CN114930127A (ko)
WO (1) WO2021183128A1 (ko)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6611753B1 (en) * 1998-04-17 2003-08-26 Magellan Dis, Inc. 3-dimensional intersection display for vehicle navigation system
US7680594B2 (en) * 2004-04-06 2010-03-16 Honda Motor Co., Ltd. Display method and system for a vehicle navigation system
US7251561B2 (en) * 2004-07-28 2007-07-31 Telmap Ltd. Selective download of corridor map data
JP2007316018A (ja) * 2006-05-29 2007-12-06 Denso Corp 車両用ナビゲーション装置
US8694246B2 (en) * 2012-05-15 2014-04-08 Qualcomm Incorporated Methods and systems for displaying enhanced turn-by-turn guidance on a personal navigation device
EP4134629A1 (en) * 2014-10-20 2023-02-15 TomTom Navigation B.V. Method, system, and computer program product for providing data indicative of route options to a user
US10209088B2 (en) * 2016-06-03 2019-02-19 Here Global B.V. Method and apparatus for route calculation considering potential mistakes
CA3054776C (en) * 2017-02-27 2020-11-10 Uber Technologies, Inc. Dynamic display of route preview information
US11118918B2 (en) * 2017-12-31 2021-09-14 Cellepathy Inc. Enhanced navigation instruction

Also Published As

Publication number Publication date
CN114930127A (zh) 2022-08-19
EP4038347A1 (en) 2022-08-10
WO2021183128A1 (en) 2021-09-16
US20220404155A1 (en) 2022-12-22
JP2023510470A (ja) 2023-03-14

Similar Documents

Publication Publication Date Title
US9243925B2 (en) Generating a sequence of lane-specific driving directions
US9091557B2 (en) Navigation system for providing personalized directions
KR102655342B1 (ko) 컨텍스트 인식 내비게이션 음성 어시스턴트
US20100324818A1 (en) Presentation of navigation instructions using variable content, context and/or formatting
JP2018503116A (ja) 注目点情報を提供する方法および装置
KR102516674B1 (ko) 내비게이션 기동과 연계할 관심지점(poi)을 선택하기 위한 시스템 및 방법
CN109564103B (zh) 用于产生自适应路线引导信息的方法及系统
CN110998563A (zh) 用于对视场中兴趣点消除歧义的方法、设备和计算机程序产品
US11055857B2 (en) Compressive environmental feature representation for vehicle behavior prediction
KR102657472B1 (ko) 네비게이션 중 어려운 기동들을 위한 추가 명령들을 제공하는 방법
KR20220150892A (ko) 사용자가 내비게이션에서 실수를 할 가능성이 있을 때 미리 생성되는 대체 내비게이션 길안내
US20240102816A1 (en) Customizing Instructions During a Navigations Session
US20230123323A1 (en) Familiarity Based Route Generation
US20240110793A1 (en) Private directions and navigation
JP5258986B2 (ja) 経路探索装置及び経路探索プログラム
JP2021032568A (ja) ナビゲーション装置、ナビゲーション方法及びプログラム

Legal Events

Date Code Title Description
A201 Request for examination