KR20200099611A - 로봇 자율 모션 계획 및 내비게이션을 위한 시스템 및 방법들 - Google Patents

로봇 자율 모션 계획 및 내비게이션을 위한 시스템 및 방법들 Download PDF

Info

Publication number
KR20200099611A
KR20200099611A KR1020207022386A KR20207022386A KR20200099611A KR 20200099611 A KR20200099611 A KR 20200099611A KR 1020207022386 A KR1020207022386 A KR 1020207022386A KR 20207022386 A KR20207022386 A KR 20207022386A KR 20200099611 A KR20200099611 A KR 20200099611A
Authority
KR
South Korea
Prior art keywords
robot
human activity
data
environment
locations
Prior art date
Application number
KR1020207022386A
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 KR20200099611A publication Critical patent/KR20200099611A/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/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
    • 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
    • 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
    • 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
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/048Monitoring; Safety
    • 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/0055Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements
    • G05D1/0061Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements for transition from automatic pilot to manual pilot and vice versa
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0217Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • 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/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/028Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using a RF signal
    • G05D1/0282Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using a RF signal generated in a local control room
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40523Path motion planning, path in space followed by tip of robot
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/01Mobile robot
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/46Sensing device
    • Y10S901/47Optical

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Game Theory and Decision Science (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Educational Administration (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Electromagnetism (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 접근법은 사람들과 공유된 실내 환경에서 로봇들의 내비게이션(예컨대, 루트 계획 및 이동)에 관한 것이다. 본 접근법은 사람 모션을 포함하지만 이에 국한되지 않는, 시간에 따른 사람 활동을 검출하는 것; 이력 사람 활동을 사용하여 사람 활동들을 모델링하는 것; 및 로봇 모션 또는 이동을 계획하기 위해 모델링된 사람 활동을 사용하는 것을 포함한다.

Description

로봇 자율 모션 계획 및 내비게이션을 위한 시스템 및 방법들
연방 후원 연구 및 개발에 관한 진술
본 발명은 계약 번호 VA118-12-C-0051 하에서 정부 지원으로 이루어졌다. 정부는 본 발명에서 특정 권리를 가진다.
본 명세서에 개시된 주제는 점유된 환경에서 로봇의 작업 계획 및 내비게이션에 관한 것이다.
다양한 개체(entity)들은 실내 환경 또는 사람이 또한 존재하는 다른 환경에서 로봇 또는 다른 자율적으로 제어되는 장치를 사용할 수 있다. 예를 들면, 그러한 디바이스들은 환경 내에서 물품(item)들을 이동 또는 전달하거나, 환경의 부분들을 청소 또는 검사하거나, 환경 내에서 계측 또는 장비를 작동시키기 위해 사용될 수 있다.
그러한 맥락에서, 종래의 응용예들은 로봇 또는 유사한 장치가 환경에서 사람의 존재 및/또는 위치를 실시간으로 결정하고 감지된 사람과의 접촉을 피하기 위해 반응하도록 실시간 감지를 이용할 수 있다. 하지만 이러한 실시간 감지 및 회피는 계산 집약적일 수 있고 디바이스(예컨대, 로봇)의 계산 자원에 영향을 줄 수 있다. 게다가, 즉각적인 주변 환경을 다루기에 적합한 감각 및 반응 접근 방식은 반응과 반대로 전체 계획의 맥락에서 작업 및/또는 모션 계획에 적합하지 않을 수 있다.
일 실시예에서, 로봇 내비게이션 시스템이 제공된다. 이 실시예에 따르면, 로봇 내비게이션 시스템은 시간에 따른(over time) 환경 내에서 이력 사람 활동 데이터를 발생시키도록 구성되는 센서 네트워크와, 그러한 이력 사람 활동 데이터를 수신하고 그러한 이력 사람 활동 데이터에 기초하여 환경 내에서 복수의 위치들 사이의 경로 데이터(path data)를 얻도록 구성되는 하나 이상의 프로세서 기반의(processor-based) 시스템들을 포함한다. 로봇 내비게이션 시스템은 또한 환경 내에서 하나 이상의 작업(task)들을 수행하도록 구성된 로봇을 포함하고, 그러한 로봇은 하나 이상의 센서들과 처리 구성요소를 포함하며, 그러한 처리 구성요소는 이력 사람 활동 데이터로부터 발생되는 경로 데이터를 수신하고 각 일에 대해 경로 데이터를 사용하는 복수의 웨이포인트(waypoint)들을 발생시키며, 로봇으로 하여금 순차적으로 웨이포인트들을 따라 이동하고 웨이포인트들 일부 또는 전부에서 특정된 행위들을 수행하게 하고, 로봇에 있는 하나 이상의 센서들에 의해 획득한 실시간 감지된 데이터에 응답하여 로봇에 의해 웨이포인트들을 따라 이루어지는 움직임에 조정을 행하도록 구성된다.
추가 실시예에서, 사람들과 공유된 환경에서 로봇을 내비게이션하기 위한 방법이 제공된다. 이 방법에 따르면, 이력 사람 활동 데이터가 시간에 따라 환경 내에서 획득된다. 그러한 환경 내에서 복수의 위치들 사이의 경로 데이터는 이력 사람 활동 데이터에 기초하여 얻어진다. 그런 다음 로봇에서는 이력 사람 활동 데이터로부터 발생되는 경로 데이터가 수신되고, 수행될 일에 대응하는 복수의 웨이포인트들이 경로 데이터에 기초하여 발생되며, 로봇은 웨이포인트들을 따라 순차적으로 이동되고 특정된 행위들이 웨이포인트들 일부 또는 전부에서 수행되고, 로봇에 있는 하나 이상의 센서들에 의해 획득한 실시간 감지된 데이터에 응답하여 로봇에 의해 웨이포인트들을 따라 이루어지는 움직임에 대한 조정이 이루어진다.
추가 실시에에서는 로봇이 제공된다. 이 실시예에 따르면, 로봇은 하나 이상의 센서들, 모터를 포함하는 구동 시스템, 및 처리 구성요소를 포함한다. 그러한 처리 구성요소는 경로 데이터가 이력 사람 활동 데이터로부터 발생되는 외부 소스로부터 경로 데이터를 수신하고, 각 일에 대해 경로 데이터를 사용하는 복수의 웨이포인트들을 발생시키며, 로봇으로 하여금 웨이포인트들을 따라 순차적으로 이동하게 하는 명령들을 모터에 전달하고, 로봇에 있는 하나 이상의 센서들에 의해 획득한 실시간 감지된 데이터에 응답하여 로봇에 의해 웨이포인트들을 따라 이루어지는 움직임에 대한 조정을 행하도록 구성된다.
본 발명의 이들 및 다른 특징들, 양태들 및 장점들은 후속하는 상세한 설명이 첨부 도면들을 참조하여 읽혀질 때 더 잘 이해될 것이고 이러한 도면들에서는 동일한 문자들이 도면 전체에 걸쳐 동일한 부품들을 나타낸다:
도 1은 본 개시물의 양태들에 따른 로봇 및 네트워크된(networked) 환경의 개략도.
도 2는 본 개시물의 양태들에 따른 도 1의 내비게이션 시스템과 작업 계획(task planning)으로 사용하기에 적합한 프로세서 기반의 시스템의 블록도.
도 3은 본 개시물의 양태들에 따른 사람 활동을 묘사하는 히트 맵(heat map)들의 예들을 도시하는 도면.
도 4는 본 개시물의 양태들에 따른, 사람 활동을 묘사하는 은닉 마르코프 모델(Hidden Markov Model)의 일 예를 도시하는 도면.
도 5는 본 개시물의 양태들에 따른 사람 활동 맵의 일 예를 도시하는 도면.
도 6은 본 개시물의 양태들에 따른 비용 맵(cost map)의 일 예를 도시하는 도면.
도 7은 본 개시물의 양태들에 따른 공유된 환경에서의 로봇의 내비게이션을 행할 때의 단계들의 프로세스 흐름(process flow)을 도시하는 도면.
하나 이상의 구체적인 실시예들이 아래에서 설명될 것이다. 이들 실시예의 간결한 설명을 제공하려는 노력으로, 실제 구현의 모든 특징들이 본 명세서에서 설명되지 않을 수 있다. 엔지니어링 또는 설계 프로젝트에서와 같이 실제 구현을 개발할 때 구현예마다 다를 수 있는 시스템 관련 및 비즈니스 관련 제약 조건 준수와 같은 개발자의 특정 목표를 달성하기 위해 수많은 구현예별 결정을 내려야 한다는 점을 알아야 한다. 더욱이, 그러한 개발 노력은 복잡하고 시간 소모적일 수 있지만, 그럼에도 불구하고 본 개시의 이점을 갖는 당업자를 위한 설계, 제조 및 제조에 대한 일상적인 루틴(routine)일 것이라는 것이 이해되어야 한다.
본 개시물의 다양한 실시예들의 요소들을 도입할 때, 관사들인 "a", "an", "the", 및 "상기(said)"는 하나 이상의 그러한 요소들이 존재한다는 것을 의미하도록 의도된다. "함유하는(comprising)", "포함하는(including)", 및 "가지는(having)"이라는 용어들은 포괄적인 것으로 의도되며 열거된 요소 이외의 추가 요소가 존재할 수 있음을 의미한다. 또한, 이하의 논의에서 임의의 수치 예들은 비 제한적인 것으로 의도되므로, 추가의 수치 값들, 범위들, 및 백분율들은 개시된 실시예들의 범주 내에 있다.
본 명세서에서 논의된 것처럼, 로봇들 또는 로봇 디바이스들은 실내 환경에서 작동하여 물품 배달 또는 이동, 보관 작업 수행, 보안 또는 모니터링 기능 수행 등과 같은 동작 또는 작업 수행 경로를 따라 이동할 수 있다. 특히, 본 접근법의 양태들은 안전하고 강력하며 효율적인 방식으로 사람과 공유된 실내 환경에서 이러한 로봇의 내비게이션(예를 들어, 경로 계획 및 이동)을 용이하게 한다. 본 발명의 접근법에 의해 다음과 같은 문제, 즉 사람 움직임을 포함하지만 이에 제한되지 않는 사람 활동의 검출; 사람 활동을 모델링하고 모델링된 사람 활동을 로봇 동작 또는 움직임을 계획하는 것에 통합하는 단계; 하나 이상의 층 또는 레벨을 갖는 환경을 포함하여 복잡한 실내 환경에서 로봇 운동 또는 움직임을 계획하는 단계; 및 글로벌 노선 계획과 지역 반응 계획 또는 조정의 조합을 포함하는 몇 가지 문제가 해결된다.
전술한 점을 고려하여, 이 접근법은 2가지 측면, 즉 사람 활동 모델링의 모델링 및 하이브리드 운동의 계획을 갖는 것으로 특징지워질 수 있다. 사람 활동 모델링과 관련하여, 일 구현에서, 네트워크 또는 인터넷 연결 서버(예컨대, 클라우드 서버)는 빌딩과 같은 문제가 있는 실내 환경에서 사람 활동을 감지하도록 위치된 하나 이상의 센서에 연결된다. 사람 활동 데이터를 지속적으로 또는 주기적으로 수집한다. 이러한 센서 네트워크는 시스템 작동 동안 획득된 데이터에 기초하여 조정되거나 재구성될 수 있다. 수집된 데이터에 기초하여, 서버에서 실행되는 루틴들은 관찰된 사람 활동 및/또는 사람 활동에서 식별 가능한 경향들(예컨대, 각 위치 및/또는 상이한 시간들 등에서 사람의 움직임 또는 활동의 상이한 시간들 및/또는 날짜들, 방향 또는 흐름 특성들에서 주어진 위치들에서의 사람 활동에서 관찰된 경향들 또는 관계들)을 통함하는 환경의 모델을 생성할 수 있다. 일 구현예에서, 그러한 모델은 "비용"의 개념을 통합할 수 있으며, 로봇의 잠재적 경로들 또는 운동은 그러한 모델에 의해 결정된 그것들의 비용에 기초하여 평가, 제안 및/또는 선택될 수 있다. 예를 들면, 구역 또는 위치와 연관된 비용 값이 높을수록, 로봇을 그러한 구역 내로 이동시키는 것이 덜 바람직하게 된다. 즉, 그러한 구현예에서, 경로들은 비용 최소화에 기초하여 선택되거나 제안될 수 있다. 일 실시예에서, 빌딩 내의 모든 관심 층에 걸쳐 이러한 "비용"을 설명하기 위해 그래프가 구성될 수 있고, 그러한 그래프는 하나 이상의 로봇의 운동을 계획하는데 사용될 수 있다.
제2 양태에 관해서는 로봇과 통신하는 로봇 또는 서버는 그래프에서 결정된 것과 같이 로봇이 허용 가능한 모션 비용(가장 낮은 비용과 같은)으로 하나 이상의 작업을 수행할 수 있도록 로봇에 대한 모션을 계획하기 위해 비용 그래프를 사용할 수 있다. 그러한 맥락에서, 그래프는 로봇에게 지구 환경에 대한 정보와 인적 교통 및 운동과 관련된 확률적 기대치를 준다. 그래프를 사용하여 결정된 모션 계획을 실행함에 있어서, 로봇의 센서들을 이용한 실시간 감지는 주변 환경을 검출하거나 달리 감지하는 데 사용될 수 있다. 이러한 식으로, 국부적인 반응 모션(reactive motion)들 및/또는 회피가 수행될 수 있다. 이력 그래프 데이터와 최신의, 즉 가장 최근의 센서 데이터 모두를 얻기 위해 클라우드 서버에 접속하는 것은 로봇이 국부적으로 및 전세계적으로 모두 그것의 기획을 최적화하는데 도움이 될 수 있다.
본 명세서에서 사용된 것처럼, 로봇들 또는 로봇 디바이스들이라는 용어들에는 레그(leg)들, 바퀴들, 트랙들 등을 포함한 그라운드 기반(ground-based) 모바일 로봇들이 포함되지만 이에 국한되지는 않는다. 그러한 디바이스들은 또한 작업들을 수행하도록 프로그램 가능하고 이동 가능한 액추에이터들 또는 다른 이동 가능한 구성요소들(예컨대, 그리퍼(gripper)들, 암(arm)들 등)을 포함할 수 있다. 본 명세서에서 로봇들로서 특징지어지는 디바이스들은 자동화된 시스템 또는 제어기에 의한 사람의 감시 또는 원격 제어없이 또는 제한된 사람의 감시 또는 원격 제어를 가지고 프로그램 가능한 이동이 가능한 임의의 적합한 자율 이동 디바이스들을 포함한다는 것을 이해해야 한다. 그러한 프로그램 가능한 움직임은 이용될 때, 국부적으로 생성된 경로 웨이포인트들 또는 안내 또는 경로 안내 및 원격 시스템(예컨대, 서버 또는 제어기)에 의해 생성되고 로봇과 통신하는 웨이포인트들에 기초할 수 있다. 그러므로 본 명세서에서 사용된 것처럼, 그러한 디바이스들은 운영 단계(operational phase) 또는 기간 동안 전체적으로 또는 주로 직접적인 사람의 개입이나 제어없이 또는 제한적 또는 부분적인 사람의 개입이나 감독으로 움직인다. 비록 지상 기반 로봇들이 주로 본 명세서에서 논의되지만, 본 접근법은 또한 고정익 및 회전익 차량들뿐만 아니라 사람들과 공유된 감시되거나 폐쇄된 환경에서처럼, 본 논의의 가르침들의 맥락 내에서 액체의 몸체의 플로어(floor)을 따라 수영하거나 이동할 수 있는 무인 잠수정 차량(USV: unmanned submersible vehicle)들을 포함하는 무인 항공기(UAV: unmanned aerial vehicle)들의 맥락에서 내비게이션 및/또는 작업 계획과 관련될 수 있다.
또한, 용어 "경로"가 본 명세서에서 사용되는 한, 이 용어는 (트랙을 따라와 같은) 1 차원(1D), (규정되거나 규정되지 않은 평면 경로와 같은) 2 차원(2D), (공중에서의 이동 또는 일반적으로 평면을 따라 이동하지만 계단, 엘리베이터, 도관 등을 포함한 수직 요소들을 통합하는 것과 같은) 3 차원(3D) 또는 (웨이포인트에서 스테이션에서의 속도, 가속도 또는 시간을 특성화할 수 있는 규정되는 시간적 양태들이 존재하는 것과 같은) 4 차원(4D) 양태들을 포함한다는 것을 이해해야 한다. 본 명세서에서 사용된 것처럼 그러한 경로는 자동화된 또는 반자동화된 프로세스의 일부로서 하나 이상의 작업들을 수행하는 것의 일부로서 로봇이 이동하는 루트 또는 다른 이동 계획에 관한 것이다. 그러므로 본 명세서에서 사용된 것과 같은 "경로"는 로봇과 같은 디바이스가 하나 이상의 할당된 작업들을 수행하기 위해 이동되는 경로 또는 임의의 1D, 2D, 3D, 또는 4D 루트로서 특징지워질 수 있다. 그러한 경로는 실시간 또는 거의 실시간으로 국부적 환경들의 로봇에 의해 획득된 센서 데이터에 응답하여 동적으로 적합하게 하는 것과 같이 적합하게 될 수 있고, 로봇이 지시된 방식으로 진행하는 하나 이상의 웨이포인트들로 구성될 수 있으며, 그러한 웨이포인트들의 순서(sequence) 및 위치가 그러한 경로 또는 루트를 규정한다. 그러한 경로는 또한 시간적 및/또는 공간적 위치들뿐만 아니라 엘리베이터 버튼을 누르는 것, 문을 여는 것 등과 같이, 경로에서 규정된 점들 및/또는 시각들에서 취해질 행위 명령들을 통합할 수 있다는 점을 알아야 한다.
설명을 용이하게 하고 유용한 실제 상황을 제공하기 위해, 사무실, 학교, 병원 공장 등과 같은 실내 환경들의 다양한 예들이 본 명세서에서 참조될 수 있다. 하지만 이해될 수 있는 바와 같이, 본 접근법은 사람과 로봇 모두가 존재하고 시간이 경과함에 따른 트래픽 및 모션 패턴들을 모니터링하기 위해 센서들이 사용될 수있는 임의의 폐쇄 및/또는 모니터링된 공간에 광범위하게 적용될 수 있다. 그러므로 본 명세서에서 설명된 임의의 예들은 단지 설명을 용이하게 하기 위해 제공되며, 본 접근법은 본 명세서에 설명된 바와 같은 임의의 실내 또는 유사한 환경에서 사용하기에 적합하다. 그러므로 본 접근법은 본 예들의 상황으로 제한되도록 의도된 것은 아니다.
전술한 사항을 염두에 두고, 도면들을 참조하면, 도 1은 사람들과 공유된 실내 환경에서 작업들을 수행하기에 적합한 하나 이상의 로봇(12)들을 사용하는 로봇 내비게이션 시스템(10)의 양태들을 도시한다. 도시된 예에서 네트워크 인터페이스(예컨대, 클라우드 서버(16))를 통해 접근 가능한 원격 서버 또는 서버들이 또한 도시된다. 그러한 네트워크 또는 클라우드 기반의 컴퓨팅(computing)은 본 명세서에 설명된 바와 같은 저장, 컴퓨팅 또는 다른 기능성을 위해 하나 이상의 원격 서버들, 가상 기계들 등에 접근하기 위해 사용될 수 있다. 예컨대 하나 이상의 작업을 수행하기 위해 사람들과 공유된 환경을 내비게이션하는 것과 같이, 하나 이상의 로봇(12)의 동작을 조정하기 위해 그러한 서버(16)들은 하나 이상의 로봇(12)과 통신을 행할 수 있다.
비록 도 1에 하나의 원격 서버(16)만이 도시되지만, 그러한 원격 서버(16)에 의해 수행된 기능들은 다중 원격 서버(16)들에 의해 및/또는 서버 환경의 가상화 된 실례(virtualized instance)들에 의해 수행될 수 있음을 이해해야 한다. 다양한 구현예들에서, 원격 서버(16)는 로봇(12)으로부터 수신된 데이터 및/또는 로봇(12)에 릴레이될 명령들을 처리하기 위한 메모리 구성요소 및 프로세서를 포함할 수 있는 데이터 처리 시스템을 포함한다. 아래에서 더 상세하게 설명되는 것처럼, 일부 실시예들에서 로봇(12)은 로봇(12)에 의해 현재 감지된 환경에 대한 정보를 전달하기 위해 원격 서버(16)에 센서 데이터를 제공할 수 있고, 이러한 정보는 로봇(12)의 내비게이션에 및/또는 로봇(12)에 의한 작업 수행과 관련될 수 있다.
일 실시예에서, 로봇(들)(12)은 온보드 셀룰러(onboard cellular) 또는 네트워크 연결성을 가지며 하나 이상의 작업들을 시작하기 전, 수행하는 동안 및/또는 수행한 후에 원격 서버(16)와 통신할 수 있다. 특정 구현예들에서, 로봇(들)(12)의 셀룰러 또는 네트워크 연결성은 작업 수행 동안 통신을 허용하여 각 작업을 수행하는 동안 획득된 데이터(예컨대, 센서 데이터)가 원격 서버(16)와 통신되는 것을 허용하고/허용하거나 원격 서버(16)가 주어진 로봇(12)에 명령들을 통신하는 것을 허용한다. 일부 사례들에서는 경로에 대한 변경들은 로봇(12) 내부의 프로세서, 즉 로봇(12)이 원격 서버(16)로부터의 통신 범위 밖에서 동작하거나 다른 통신 중단들에 응답하여 온보드(onboard)에 의해 결정될 수 있다.
다시 도 1로 돌아가, 작업 수행 및 내비게이션 시스템(10)의 특정 세부 사항들이 더 상세하게 설명될 것이다. 예를 들면, 도 1은 로봇(12)의 일 실시예의 개략적인 면을 도시한다. 하지만, 로봇(12)의 다른 실시예들은 추가 구성요소, 더 적은 수의 구성요소들, 및/또는 구성요소들의 상이한 조합들을 갖는 것으로 예상된다는 점이 이해되어야 한다. 도시된 것처럼, 로봇(12)은 로봇(12)의 작동을 위해 전력을 제공하기 위해 전원 공급 장치(20)를 포함한다. 전원 공급 장치(20)는 대체 가능하거나 재충전 가능한 배터리, 연소 엔진, 발전기(generator), 및 전기 모터, 태양 전지판, 화학 반응 기반 발전 시스템 등, 또는 이들의 일부 조합을 포함할 수 있다.
로봇은 사용자 인터페이스를 포함할 수 있고, 이러한 사용자 인터페이스에 의해 사용자는 로봇(12)의 다양한 설정(setting)들을 셋업(setup)하거나 조정할 수 있다. 사용자 인터페이스는 하나 이상의 입력 디바이스들(예컨대, 노브(knob)들, 버튼들, 스위치들, 다이얼들 등)을 포함할 수 있고, 경우에 따라 피드백을 사용자에게 제공하기 위한 디스플레이(예컨대, 스크린, LED들의 어레이 등)를 포함할 수 있다.
네트워크 인터페이스(22)는 원격 서버(16)(클라우드를 통한 것과 같은) 또는 다른 디바이스들(예컨대, 도킹 스테이션(docking station), 원격 제어기, 스마트 폰, 컴퓨팅 디바이스, 태블릿 등)과의 통신을 가능하게 한다. 예를 들면, 네트워크 인터페이스(22)는 무선 네트워크 연결, 유선 네트워크 연결, 셀룰러 데이터 서비스, 블루투스, NFC(Near Field Communication), 지그비(ZigBee), ANT+, 또는 일부 다른 통신 프르토콜을 통한 통신을 가능하게 할 수 있다.
감지 시스템(26)은 로봇(12)의 내비세이션 및/또는 로봇(12)에 의한 작업 수행 중에 다양한 품질들을 감지하고 데이터를 수집하도록 구성된 하나 이상의 센서(28)(예컨대, 촉각 센서들, 화학 센서들, 메탄 센서(methane sensor)들, 온도 센서들, 레이저/라이다(LIDAR), 소나, 카메라들, 적색, 청색, 녹색, 깊이(RGB-D) 카메라들, IMU(inertial measurement unit)들 등)를 포함할 수 있다. 센서(28)들은 로봇(12)이 위치하는 환경에 대한 정보를 전달하는 관찰 범위 및 센서 유형에 대응하는 감지된 데이터를 획득하기 위해 사용될 수 있다.
구동 시스템(34)은 표면을 따라, 공기 등을 통해 로봇(12)의 움직임을 작동시킬 수 있다. 도시된 것처럼, 구동 시스템(34)은 하나 이상의 모터(36)들과 하나 이상의 인코더(38)들을 포함할 수 있다. 하나 이상의 모터(36)들은 프로펠러들, 레그들, 휠들, 트랙들 등을 구동할 수 있다. 하나 이상의 인코더(38)들은 하나 이상의 모터(36)들의 하나 이상의 파라미터들(예컨대, 회전 속력)을 감지할 수 있고 데이터를 제어 시스템에 제공할 수 있다.
제어 시스템은 하나 이상의 메모리 구성요소들과 하나 이상의 프로세서들을 포함할 수 있다. 모션 제어 시스템은 구동 시스템(34)의 하나 이상의 인코더(38)들로부터 신호를 수신할 수 있고 로봇(12)의 움직임을 제어하기 위해 하나 이상의 모터(36)들에 제어 신호를 출력할 수 있다. 유사하게, 데이터 수집 제어 시스템은 감지 시스템(26)의 작동을 제어하고 감지 시스템(26)으로부터 데이터를 수신할 수 있다. 센서(28)들과 온-보드 프로세서 사이의 통신 인터페이스는 병렬 버스, 직렬 버스(I2C, SPI), 및 USB를 포함하는 표준 산업 인터페이스일 수 있다. 데이터 처리 및 분석 시스템은 감지 시스템(26)에 의해 수집된 데이터를 수신하고 수집된 데이터를 처리 또는 분석할 수 있다. 일부 실시예들에서, 데이터 처리 및 분석 시스템은 센서 양식(sensor modality) 및/또는 작업 또는 내비게이션 특정 고려 사항에 기초하는 것과 같이, 데이터를 상이한 범위로 처리 및 분석할 수 있다.
센서 및 구동 구성요소들의 전술한 예를 가지고, 하나의 이러한 예에서, 라이다(Lidar) 및/또는 인코더는 로봇(12)의 국소화(localization)(즉, 환경 내에 로봇(12)을 정확하게 위치시키는)에서 사용될 수 있지만, 다른 센서들(예컨대, RGB 및 적외선을 포함하는 카메라들)이 환경 정보를 수집하는 데 사용된다. 특정 구현예들에서는, RGB-D 센서들이 감지 시스템(26)의 성능을 증대시키고 컴퓨팅 비용을 감소시키기 위해 사용된다.
도시된 예에서, 로봇(12)은 또한 로봇 내비게이션 계획(40), 작업 계획(42), 국소화/SLAM(simultaneous localization and mapping)(44) 및/또는 사람 검출 및 환경 분석(46)을 위한 프로세서-구현되는 알고리즘들을 위한 서브-시스템들을 포함하고/포함하거나 실행하는 것으로 도시되어 있다. 그러한 서브-시스템들 및/또는 알고리즘들은 제어 시스템의 부분으로서 제공되거나 제어 시스템과 통신을 행하고 아래에 더 상세하게 설명된다. 도 1에 도시된 것처럼, 작업 요구조건(50), 하나 이상의 원격 서버(16)들과 주고받는 통신들 등과 같은 외부 인자들 또는 파라미터들이 또한 시스템(10)에 의해 포함될 수 있다.
로봇(12)에 추가하여, 도 1에 도시된 로봇 내비게이션 시스템(10)의 다른 양태는 원격 서버(들)(16)(예컨대, 클라우드 서버(들))에 의해 및/또는 원격 서버(들)(16)과 통신할 수 있는 센서 네트워크(70)이다. 일 구현예에서, 센서 네트워크(70)는 로봇(12)에 의해 내비게이트된 환경에서 사람 활동 데이터(참조 번호 76으로 나타내어진)를 수집하고 그러한 데이터를 원격 서버(16)에 보낸다. 센서 네트워크(70)는 시간 경과에 따른 환경에서의 사람 활동 데이터(76)를 수집하기 위해 지속적으로 또는 주기적으로 실행되고 업데이트될 수 있다. 일 구현예에서, 센서 네트워크(70)에서의 센서 유닛(74)들은 고정되지 않지만 필요한 만큼 이동되고, 조정되며, 추가되고, 제거되는 것 등이 행해질 수 있다.
예로서, 일 실시예에서 센서(74)들 일부 또는 전부가 RGB-깊이(RGB-D) 카메라들일 수 있고, 이러한 카메라들은 관찰된 환경의 포인트 클라우드를 생성하기 위해 RGB 정보 및 깊이 정보 모두를 획득하고 제공한다. RGB 텍스처(texture)들은 감지된 환경의 3D 모델들을 생성하기 위해 포인트 클라우드 상에 맵핑될 수 있다. 그러한 상황에서, 공유된 환경에서의 사람 활동(76)은 RGB-D 센서들을 사용하여 지속적으로 추적될 수 있으며, 시간이 지남에 따라 사람 골격들의 관절들의 위치들 및 방향들이 또한 얻어지는 것을 허용한다. 도출된 골격들을 사용하여 이 데이터로부터 결정될 수 있는 제스처들 및/또는 다른 모션 데이터에 기초하여, 사람 모션 활동은 연장된 기간에 걸쳐 공유된 환경에서 결정될 수 있다. RGB-D 센서들에 추가하여 또는 RGB-D 센서들 대신에 다른 타입의 센서(74)들이 사람 활동(76)을 추적하기 위해 이용될 수 있다. 예를 들면, 라이다, 소나, 레이다, 도플러 센서들, RGB 카메라들 등과 같은 센서(74)들은, 비록 그러한 센서들이 도출된 사람 골격 데이터로부터 도출된 모션 데이터와 반대로 시간이 지남에 따른 사람들의 위치 정보 형태로 사람 활동 데이터를 제공하는 것으로 제한될 수 있을지라도, RGB-D 카메라들에 추가하여 또는 RGB-D 카메라들 대신에 사용될 수 있다.
도 1에 도시된 것처럼, 센서 네트워크(70)에 의해 획득한 데이터는 원격 서버(들)(16)에 전해질 수 있다. 본 명세서에서 논의된 것처럼, 시간 경과에 따라 획득된 센서 데이터는 모니터링된 환경(즉, 사람들과 적어도 하나의 로봇(12)에 의해 공유된 환경)에서 사람 활동을 모델링하기 위해 사용될 수 있다. 사람 활동의 그러한 모델링은 사람 활동이 하나 이상의 위치, 시각, 또는 다른 시간(temporal) 경향 패턴(예컨대, 주 패턴들, 월 패턴들 등)에 기초하여 특징지워지는 것을 허용할 수 있다.
전술한 점을 염두에 두고, 시스템(10)의 다양한 양태들은 센서들 데이터를 처리하고/처리하거나 루틴들 또는 알고리즘을 실행하여 그러한 데이터를 모델링하거나 공유된 환경에서 내비게이션 기능들을 수행하는 구성요소들 또는 디바이스들과 관련될 수 있음이 주목될 수 있다. 시스템(10)의 작동에 추가적인 세부 사항을 제공하기 전에, 로봇(12) 및/또는 원격 서버들(16) 중 하나 또는 둘 모두에서 발견되는 구성요소들 또는 특징들에 대응할 수 있는 프로세서 기반 시스템(90)의 양태들의 예를 간략하게 제공하는 것이 유리할 수 있다. 예를 들면, 도 2로 되돌아가면, 그러한 디바이스들 또는 시스템들은 시스템(10)의 다른 디바이스들과 통신을 행하는 원격 서버(16), 로봇(12), 또는 워크스테이션 또는 디바이스에 존재할 수 있는 컴퓨팅 디바이스(90)의 구성요소들 예의 블록도를 도시하는, 도면에서 도시된 바와 같은 구성요소들을 포함할 수 있다. 본 명세서에서 사용된 것처럼, 컴퓨팅 디바이스(90)는 로봇(12)으로서 또는 서버 타입 디바이스들 또는 셀룰라 전화기들과 같은 휴대 가능한 통신 타입 디바이스들, 및/또는 다른 적합한 컴퓨팅 디바이스들뿐만 아니라, 랩톱, 노트북, 데스크톱, 태블릿, 또는 워크스테이션 컴퓨터들을 포함하는 하나 이상의 컴퓨팅 시스템들로서 구현될 수 있다.
예시된 것처럼, 컴퓨팅 디바이스(90)는 하나 이상의 프로세서(92)들, 하나 이상의 버스(94)들, 메모리(96), 입력 구조물(98)들, 전원(100), 네트워크 인터페이스(102), 사용자 인터페이스(104), 및/또는 본 명세서에서 설명된 기능들을 수행하는데 유용한 다른 컴퓨터 구성요소들과 같은 다양한 하드웨어 구성요소들을 포함할 수 있다.
하나 이상의 프로세서(92)들은, 특정 구현예들에서는 메모리(96) 또는 다른 접근 가능한 위치들에 저장된 명령들을 실행하도록 구성되는 마이크로프로세서들(예컨대, CPU들, GPU들 등)이다. 대안적으로, 하나 이상의 프로세서(92)들은 ASIC(application-specific integrated circuit)들, FPGA(field-programmable gate array)들, 및/또는 전용 방식으로 본 명세서에서 논의된 기능들을 수행하도록 설계된 다른 디바이스들로서 구현될 수 있다. 알게 되는 바와 같이, 다중 프로세서(92)들 또는 처리 구성요소들이 분산된 또는 병렬 방식으로 본 명세서에서 논의된 기능들을 수행하기 위해 사용될 수 있다.
메모리(96)는 휘발성 메모리, 비 휘발성 메모리 또는 이들의 임의의 조합을 포함하여, 데이터 또는 실행 가능 루틴들(본 명세서에서 논의된 사람 활동 모델링, 경로 발견(finding) 및/또는 비용 최소화 단계들을 수행하기 위한 루틴들 및/또는 알고리즘들을 포함)을 저장하기 위한 임의의 유형의 비 일시적 매체를 포함할 수 있다. 비록 도 2에서 편의상 단일 블록으로서 도시되지만, 메모리(96)는 실제로 동일하거나 상이한 물리적 위치들에서 다양한 개별 매체 또는 유형들의 매체를 포함할 수 있다. 하나 이상의 프로세서(92)들이 하나 이상의 버스(94)들을 통해 메모리(96)에서 데이터에 접근할 수 있다.
사용자로 하여금 데이터 및/또는 명령어들을 디바이스(90)에 입력하는 것을 허용하고 마우스들, 터치패드들, 터치스크린들, 키보드들, VR 제어기들, 모션 또는 광학 센서들, 마이크로폰들 등을 포함할 수 있는 입력 구조물(98)들이 사용된다. 전원(100)은 라인 및 배터리 전력을 포함하는, 컴퓨팅 디바이스(90)의 다양한 구성요소들에게 전력을 제공하기 위한 임의의 적합한 소스일 수 있다. 도시된 예에서, 디바이스(90)는 네트워크 인터페이스(102)를 포함한다. 그러한 네트워크 인터페이스(102)는 하나 이상의 통신 프로토콜들을 사용하여 네트워크에서 다른 디바이스들과 통신을 행하는 것을 허용할 수 있다. 도시된 예에서, 디바이스(90)는 이미지들을 디스플레이하도록 구성된 디스플레이와 같은 사용자 인터페이스(104) 및/또는 하나 이상의 프로세서(92)들에 의해 제공된 음향 또는 청각 데이터를 재생하도록 구성되는 스피커들을 포함한다.
알게 되는 것처럼, 실제 상황에서는 도 2의 컴퓨팅 디바이스(90)와 같은 프로세서 기반의 시스템이 도 1에 도시된 원격 서버(16) 및/또는 로봇(12) 또는 공유된 환경에서 내비게이션을 행하는 로봇(12)을 작동 또는 모니터링하는 데 사용되는 다른 처리 디바이스들의 기능들을 수행하는 것과 같은, 본 접근법의 일부 또는 전부를 구현하는 데 사용될 수 있다.
전술한 설명을 염두에 두고, 도 1로 되돌아 가면, 위에서 소개된 다양한 구성요소들의 상호 관계 및 작동들이 논의될 것이다. 본 명세서에서 설명된 것처럼, 시스템(10)은 사람들과 공유된 환경 내에서 상이한 작용 위치들 사이에서 이동 가능한 로봇(12)의 내비게이션을 행하기 위해 사용된 내비게이션 시스템이다. 로봇(12)이 감지된 데이터(감지 시스템(26)으로부터의 것과 같은)를 처리하고, 모션들을 계획하며, 결정을 내리고, 그 외에 로봇과 로봇(12) 상에 존재하는 임의의 매니퓰레이터(manipulator)(예컨대, 매니퓰레이터 암(manipulator arm)들)를 제어하기 위해 온-보드 컴퓨팅 자원들을 제공하기 위해 하나 또는 수개의 컴퓨터들이 사용될 수 있다.
그러한 내비게이션을 촉진하기 위해, 본 접근의 제1 양태가 사람 모션 및 활동을 센서 네트워크(70)를 사용하여 검출한다. 일 실시예에서, 하나 이상의 히트 맵(heat map)들이 센서 네트워크(70)에 의해 획득한 사람 활동 데이터를 사용하여 생성된다(원격 서버(16)에서과 같은).
그러한 구현예들에서, 히트 맵들은 사람 움직임과 트래픽 패턴들이 결정될 수 있는 장기적인 사람 활동들을 설명합니다. 그런 다음 그러한 패턴들은 할당된 작업을 수행하는 로봇(12)을 촉진하기 위해 로봇(12)에 내비게이션 명령을 제공하는데 사용될 수 있다. 예를 들면, 패턴들은 사람 상호작용 또는 존재의 가능성을 제한하거나 최소화하는 작업을 수행하기 위해 로봇(12)이 이동하는 루트를 결정하는데 사용될 수 있다.
이를 염두에 두고, 일 실시예에서, 사람의 움직임과 트래픽 패턴들을 결정하기에 충분히 자세한 시간적 정보로 사람의 위치들을 기록하기 위해 센서(74)는 충분한 시간 동안(예컨대, 하루, 1주, 2주, 한 달, 6개월, 1년 등) 내비게이션이 행해질 환경에 놓인다. 이러한 접근의 지속 시간은 상황 환경(예컨대, 트래픽이 적거나 많음, 24 시간 대 12 시간 점유 기간 등) 및 로봇(12)에 의한 작업 수행을 위해 사람의 존재가 수용 가능한 정도와 같은, 응용예들의 요구 사항에 따라 다르다. 예를 들면, 일 구현예에서 센서(74)들은 주간 기반 데이터(weekly-based data)를 수집하기 위해 1 주일 동안 환경에 놓일 수 있으며, 이는 시간 및 요일에 특정한 변동들이 결정될 수 있게 한다. 그러한 방식(scheme)은 매주 시간 프레임(weekly time frame) 내에서 구별 가능한 일부 추적 가능한 패턴들을 갖는 특히 유용한 사람 활동들일 수 있다.
도 3으로 돌아가서, 시간이 지남에 따라 획득된 센서 데이터에 기초하여 생성된 히트 맵(120)들의 일 예(하나의 원격 서버(16)와 같은)가 도시된다. 히트 맵(120)들은 상이한 공간 위치들에서 상대적인 사람 운동을 색상, 그레이 스케일 또는 강도에 의해 전달한다. 예를 들면, 도 3에 도시된 것과 같은 히트 맵(120)은 사람 활동 데이터가 환경 내에서 하나 이상의 RGB-D 카메라들을 사용하여 획득한 감지된 데이터로부터 생성된 골격 데이터로부터 도출되는 그러한 환경 내에서의 사람 활동을 설명할 수 있다.
검출된 사람 활동 및/또는 모션에 기초하여, 원격 서버(16)에서와 같은, 환경에서의 사람 활동의 모델이 생성될 수 있다. 일 구현예에서, 모델링 프로세스를 단순화하기 위해, GMM(Gaussian Mixture Model)이 사람 확동에 대응하는 위치들을 모델링하기 위해 사용된다. '뜨거운(hot)' 또는 높은 활동 위치들이 매일 발생하는 사람 활동들의 최고점들을 중심으로 하는 가우스 모델로 설명된다. 예를 들면, 사람 활동의 그러한 최고점들은 엘리베이터들, 계단들, 입장/퇴장 도어웨이(entry/exit doorway)들, 복도들, 회의실들, 로비들, 화장실들, 카페테리아들 등과 같은 환경에서의 공공 또는 공동 공간(public or communal space)들에 대응할 수 있다. 수학적으로, 각 가우스 모델의 위치는:
Figure pct00001
로서 기술되고, 여기서 k는 k번째 플로어를 나타내고, j는 k번째 플로어 상의 가우드 모델의 지수이며, (x,y)는 k번째 플로어의 국부 좌표들에 대한 가우스 모델의 중심의 위치이고, σ는 분산이다.
일 구현예에서, HMM(은닉 마르코프 모델)은 시간 정보(예컨대, 각각의 사람 활동 위치 데이터와 연관된 시간 또는 데이터 및 시간)에 기초하여 생성된다. HMM 모델은 가우스 모델을 사용하여 설명된 영역 내에 사람이 언제 있는지, 그/그녀가 어디로 이동할 것인지를 포함하는 각 위치 사이의 관계를 기술한다. 본 접근법에 따라 구축된 HMM(140)의 일 예가 도 4에 도시된다. 도 4에 도시된 것처럼, 사람 활동의 다양한 위치들에 대응하는 색인화된(indexed) 가우스 모델 Gk(j)(참조 번호 (142)로 표시됨)는 위치들 사이의 사람들의 흐름 또는 움직임에 기초하여 각각의 모델(142) 사이의 관계를 나타내는 방향 화살표(144)와 함께 도시된다.
일단 높은 활동 영역들이 결정되면, 본 명세서에서 논의된 사람 활동 검출 프로세스에 기초하여, 모델링된 위치들 및 시간 데이터마다 주어진 시각에서 환경 정보를 기술하기 위해 이 정보에 기초하여 맵 또는 그래프가 생성될 수 있다. 그러한 일 실시예에서, 맵 또는 그래프는 현재 시각과 같은 관심 시각에서의 상이한 모델링된 위치들 사이의 움직임과 연관된 "비용들(costs)"을 운반한다. 그러한 비용들은 비용 함수를 최소화하는 것과 같이 경로 찾기에 사용될 수 있으며, 이는 로봇 (12)의 내비게이션을 위한 경로가 결정되는 것을 허용할 수 있어서 높은 사람 움직임 또는 존재를 가지는 위치들을 통한 이동을 제한한다.
이전 예들의 상황에서, 가우스 모델들은 그러한 환경에서 높은 활동 위치들에서의 사람 활동들을 기술하기 위해 사용될 수 있다. 하지만, 글로벌(global) 최단 경로 검색 작업에서 모든 모델(즉, 모델링된 위치)들을 사용할 필요는 없다. 대신, 비용 기반의 접근에서, 관심 파라미터는 모든 위치들이 아닌 중요 위치(key location)들 사이의 비용이다. 예를 들면, 일 구현예에서, 중요한 위치들은 (1) 2개의 플로어들을 연결하는 엘리베이터들과 계단들, 및 (2) 본 명세서에서 기술된 바와 같이 검출된 높은 활동 위치들이 아닐 수 있지만 할당된 작업을 수행하기 위해 로봇이 움직일 필요가 있는 목표(target) 위치들을 포함할 수 있다(하지만 이들에 제한되는 것은 아님).
일 접근예에서, 정적인 맵(static map)의 자유 공간은 그리드(grid)로 분할될 수 있다. 그럴 경우 본 명세서에서 논의된 바와 같이 식별된 높은 활동 영역들은 도 5에 도시된 바와 같이, 정적 그리드 기반 맵(즉, 오버레이 맵(overlay map)(150)) 상에 오버레이되거나 달리 표현될 수 있다. 그러한 일 예에서, 하나의 그리드로부터 인접한 자유 그리드(free grid)로 이동하는 비용은 1이고, 하나의 그리드로부터 인접한 임피던스(즉, 높은 활동) 그리드까지의 이동 비용(즉, c(i,j))은 하기 수학식:
Figure pct00002
을 사용하여 규정되고, 여기서
Figure pct00003
는 그 위치에 존재하는 사람의 인원수에 의해 규정된다. 그리고
Figure pct00004
는 이력 데이터로부터 그 위치에서 시각 t에 검출된 사람의 인원수에 의해 규정된다.
이들 비용들에 기초하여, c(i,j), 비용 맵, 예컨대 반응성 중요 비용 맵(Reactive Key Cost Map)이 각 플로어에 대해 생성될 수 있다. 도 5의 오버레이 맵(150)으로부터 생성된, 하나의 그러한 비용 맵(160)의 일 예가 도 6에 예시된다. 앞에서 주복된 것처럼, 각 위치 사이의 경로는 필수적이지 않을 수 있다. 하지만, 중요한 위치들 사이의 경로들의 비용은 결정될 필요가 있다.
내비게이션 작업의 목표 위치는 종종 공개 장소(예컨대, 회의실, 사무실 등)이며, 이는 중요한 위치들에 근접하지 않을 수 있다. 이를 염두에 두고, 비용 그래프를 생성하기 전에, 추가의 중요한 위치가 비용 맵(160)에 내장될 수 있다. 일단 비용 맵(160)이 생성되면, 가장 가까운 이웃들이 목표 노드에 연결되고, 그 비용은 가우스 임피던스 면적:
Figure pct00005
을 사용하여 계산되며, 여기서 x는 목표 위치이고, xi는 가우스 임피던스 영역(area)의 중심이며, Σ는 분산 매트릭스이다. 그런 다음 각 플로어의 모든 중요한 위치들 사이에서 가장 짧은 경로들을 찾기 위해 경로 검색 알고리즘이 적용된다. 일 구현예에서, A* 알고리즘이 이용될 수 있는데, 이는 맵이 알려져 있고 휴리스틱(heuristic) 및 현재 비용이 모두 알려져 있기 때문이다. 특히 A* 경로 검색 알고리즘은
Figure pct00006
을 최소화하는 경로를 선택하고, 여기서 n은 경로의 마지막 노드이고, g(n)은 시작 노드로부터 n까지 경로의 비용이며, h(n)는 n부터 목적지(goal)까지의 가장 저렴한 경로의 비용을 추정하는 휴리스틱이다.
이러한 방식으로 결정되는 경로는 할당된 작업을 수행하기 위해 따르도록 로봇(12)에 전달될 수 있거나, 다른 실시예들에서는, 작업 수행을 촉진하기 위해, 완전한 경로와는 반대되게, 경로를 따라 이루어지는 단계들 또는 행위들이 로봇(12)에 전달될 수 있다.
위에서 논의된 프로세스를 찾는 전역 경로에 추가로, 그리고 다시 도 1로 돌아가면, 사람들과 공유된 환경에서 작업 수행 및/또는 내비게이션을 촉진하기 위해, 로봇(12)에 의해 다른 기능성이 제공되거나 수행될 수 있다. 예를 들면, 환경 내에서의 로봇(12)의 국소화(localization)은 또한 로봇(12)의 내비게이션의 일 양태이다. 일 구현예에서는, 라이다 및 IMU에 의해 감지된 정보를 사용하는 국소화/SLAM 기능성(참조 블록(44)에 의해 표시된)이 제공될 수 있다. 일 예에서, 국소화 알고리즘은 그러한 환경에서 로봇(12)의 위치 및 배향을 포함하여 환경에서 로봇 (12)의 자세를 연속적으로 또는 주기적으로 국소화하기 위해 실행된다. 그러한 일 구현예에서, 환경 모델이 동시에 구축된다. 일부 상황들에서는, 맵핑(mapping)이 로봇(12)이 이동할 때 컴퓨팅 비용을 줄이기 위해 작업들이 수행되거나 시작되기 전에 행해질 수 있다. 도 1의 예에 도시된 것처럼, 국소화 알고리즘의 출력들(예컨대, 로봇 자세 정보, 환경 모델 등)은 작업 계획 기능 및/또는 로봇 내비게이션 계획 기능 중 하나 또는 둘 다에 제공될 수 있다.
게다가, 도 1에 도시된 것처럼, 사람 검출 및/또는 환경 분석(46)을 위한 기능이 로봇(12)에서 제공될 수 있다. 시간 경과 또는 이력 데이터(센서 네트워크(70)를 사용하여 도출될 수 있는 것과 같은)에 기초하여 전역 활동 맵핑에 기여하는 본 명세서에서 논의된 사람 검출 프로세스와는 달리, 로봇(12)에서 수행된 사람 검출(46) 프로세스들은 로봇(12)의 바로 부근에서 현재 사람들(또는 다른 물체들)을 검출하는 실시간 및/또는 국소적 프로세스들일 수 있다. 예로서, 그리고 도 1에 도시된 것처럼, 감지 시스템(26)의 다양한 센서(28)들(예컨대, 카메라들, 소나, 라이다(Lidar) 등)이 로봇(12)이 제공된 경로를 따라 이동할 때 로봇(12)의 바로 부근에서 사람들 또는 물체들을 검출하기 위해 사용될 수 있다. 그런 다음 국소적 감지 시스템(26)에 의해 검출된 사람 또는 다른 환경 특징과의 접촉을 피하기 위해 정정 행위(예를 들어, 정지, 선회 등)가 행해질 수 있다. 추가 일 실시예에서는, 이러한 식으로 감지 시스템(26)에 의해 검출된 정보는 비용 맵(160)을 업데이트하기 위해 원격 서버(16)에 제공될 수 있고, 잠재적으로 로봇(12)이 주어진 작업의 수행에 사용하도록 지시된 경로에 대한 업데이트 또는 교정을 야기할 수 있다.
로봇(12)에서 제공되는 작업 계획(42) 기능과 관련하여, 이 양태는 로봇(12)이 할당된 작업을 실행할 때 수행하는 일련의 동작들을 계획한다. 이러한 계획은 사람 조작자들 또는 시스템에 의해 제공된 작업 요구조건(50)에 기초한다. 일 구현예에서 작업 계획 특징의 출력은 클래스 인스턴스(class instance)들의 어레이일 수 있으며, 그러한 경우 각 인스턴스는 하나의 작동을 나타낸다. 각 작동의 기술에서, 로봇(12)의 매니퓰레이터 또는 팔 또는 로봇(12)의 베이스의 사양 또는 선택, 목표 구성의 결정 또는 사양, 목표 작동, 또는 환경 제약(들), 및/또는 행동 수행의 표시 중 하나 이상이 제공될 수 있다. 작업 계획 특징의 출력들은 로봇 내비게이션 계획 루틴 또는 알고리즘(40)에 제공될 수 있다.
작업 계획(42)에 의해 유발될 수 있는 내비게이션 계획 기능(40)에서, 경로 상의 웨이포인트들은 작용 위치들에서 수행될 조작 작업들에 대응하거나 그러한 조작 작업들을 촉진할 수 있는 웨이포인트들의 시퀀스를 생성하기 위해 계획된다. 도 1에 도시된 것처럼, 로봇(12)의 내비게이션 계획은 작업 계획(42), 사람 검출 및 환경 분석(46), 국소화(SLAM)(44), 원격 서버(들)(16), 인코더(38) 등으로부터의 입력들을 수신할 수 있다. 예로서, 소나 감지 양식(modality)은 환경에서의 장애물들을 검출하고 네비게이션 계획의 맥락 내에서 또는 외부에서(로봇(12) 근처의 사람의 갑작스런 출현에 응답하여) 장애물들을 피하기 위해 구동 시스템(34) 베이스의 모터(36)들에 신호들을 보내기 위해 사용될 수 있다. 비록 도 1에서 로봇(12)에서 발생하는 것으로 도시되지만, 내비게이션 계획의 일부 또는 전부가 대신 원격 서버(들)(16)에서 발생할 수 있으며, 웨이포인트들은 계속해서 로봇(12)에 전달된다.
일 예에서, 웨이포인트들이 생성되고 검증된 후, 작업 계획(42)은 로봇 내비게이션 계획(40)이 본 명세서에서 논의된 A* 경로 선택 알고리즘을 사용하는 것과 같이 로봇(12)(예컨대, 로봇 베이스)의 모션 궤적들을 계획하도록 유발시킨다. 이 예에서, 계획 프로세스는 로봇(12)이 모든 계획된 웨이포인트들을 통해 내비게이션을 행하고 각 처리 위치들에서 대응하는 원하는 조작 작업들을 실행하기는 계획을 제공한다. 그런 다음 명령 또는 명령어들이 모션 제어 시스템을 통해서와 같이, 구동 시스템(34)의 모터(36)이 전달될 수 있다. 모션 제어 시스템은 로봇 베이스의 위치, 속도, 및/도는 가속도를 제어하도록 구성될 수 있다. 모션 제어 시스템으로의 피드백이 국소화/SLAM 서브시스템, 감지 시스템(26), 사람 검출 및 환경 분석(46) 및/또는 인코더(38) 중 하나 이상으로부터 제공될 수 있다. 또한, 모션 계획 알고리즘들은 구동 시스템(34)을 통한 것과 같은, 로봇 베이스의 움직임뿐만 아니라 로봇(12)의 하나 이상의 매니퓰레이터, 암(arm)들, 또는 그리퍼(gripper)들도 설명할 수 있다. 모션 계획에 사용될 수 있는 알고리즘들의 예들에는 잠재적 필드 알고리즘들 및 RRT-Connect 알고리즘들을 포함하지만 이에 제한되지는 않는다.
전술한 사항을 염두에 두고, 도 7을 참조하면, 본 접근법에 대한 하나의 예시적인 흐름의 프로세스 흐름이 제공된다. 도시된 흐름에서, 로봇(12) 자체에서 수행되는 프로세스들은 왼쪽에 표시되는데 반해, 원격 서버(16)에서와 같이 로봇(12) 외부에서 발생하는 프로세스들은 오른쪽에 표시된다. 이 예에서, 내비게이션 계획은 일반적으로 로봇(12)에서 발생하는 것으로 도시되지만, 위에서 주목된 바와 같이 내비게이션 계획의 일부 또는 전부는 대신 로봇(12) 외부에서 발생할 수 있고, 그렇게 계산된 다른 경로 파라미터들이나 웨이포인트(190)들이 로봇(12)에 전달된다.
도 1 내지 도 6에 관련된 논의를 명심하면서, 묘사된 프로세스 흐름 예에서, 경로에 대응하는 웨이포인트(190)들과 그 경로에서 로봇(12)에 의해 수행될 작업들이 로봇(12)의 적어도 구동 시스템(34)에 제공된 명령 세트의 부분으로서 생성되고 사용된다(단계 192). 이 예에서, 웨이포인트(190)들이 로봇(12)에서 생성된다(단계 194). 웨이포인트(190)들의 생성은 로봇(12)에 의해 수행될 하나 이상의 작업(200)들, 로봇(12)의 현재 위치(204), 및 카메라들, 소나, 라이다 등과 같은, 로봇(12)에서 국부적 센서(28)들을 모니터링(단계 212)함으로써 결정될 수 있는, 로봇(12)대한 물체들 또는 사람의 실시간 또는 현재 근접성(208)에 기초할 수 있다.
웨이포인트(190)들의 생성에는 또한 일 실시예에서, 위에서 논의된 바와 같이, 각 플로어에서 다양한 중요한 위치들 사이에서 최단 경로들(비용 최소화 알고리즘에 기초하여 결정된)을 포함하는 경로 정보가 사용된다. 본 예에서, 이러한 프로세스는 내비게이션이 이루어질 로봇(12)을 통한 환경에서 제공된 센서 네트워크(70)를 모니터링하는 단계(단계 220)를 포함한다. 센서 네트워크(70)의 모니터링은 연장된 기간(예컨대, 1일, 7일(예컨대, 작업 주), 1주일, 1개월 등)에 걸쳐 발생할 수 있다.
그렇게 획득한 센서 데이터(224)는 관심 기간 동안 관찰된 사람 활동의 지표(228)들을 도출하거나 달리 결정(단계 226)하고/결정하거나 시간, 요일들 등에 대응하는 유용한 경향들을 식별하기 위해 사용된다. 예를 들면, 본 명세서에서 논의된 것처럼, 그렇게 도출된 사람 활동의 한 가지 표현은 히트 맵(120) 또는 유사한 구조물(construct)일 수 있다.
관찰된 사람 활동(228)은 결국 피크 활동의 영역들과 같은 다양한 위치들 또는 활동이 일부 문턱 관심 레벨을 초과하는 경우에 사람 활동을 모델링(단계 232)하기 위해 사용될 수 있다. 그러한 모델링된 위치(236)들은 또한 트래픽 흐름 정보와 같이, 각 위치 사이의 관계들의 정보를 제공할 수 있다. 본 명세서에서 논의된 것처럼, 그러한 모델의 일 예는 은닉 마르코프 모델(140)일 수 있다.
위치 모델들은 관심있는 모든 위치 중 일부 사이를 이동하는 비용(사람 활동에 기초한)의 표시를 제공하는 하나 이상의 비용 맵(160)들을 생성(단계 240)하기 위해 이용될 수 있다. 그러한 비용 맵(160)은 시간 및/또는 요일에 한정될 수 있으며, 예컨대 2개의 위치들 사이를 이동하는 비용은 시간 및/또는 요일에 따라 달라질 수 있다. 비용 맵(160)들은 경로 결정 알고리즘과 함께 사용되어 주어진 시간 및/또는 일들에서의 위치들(예컨대, 중요한 위치들) 사이에서 가장 짧거나 달리 적합한 경로(254)들을 결정(단계 250)할 수 있다. 결국 이들 경로(254)는 도시된 웨이포인트 생성 프로세스(194)에서와 같이, 내비게이션 프로세스에서 사용되도록 이 예에서 로봇(12)에 제공될 수 있다.
앞선 논의로부터 알 수 있듯이, 기존의 온라인 감지-계획-행동 알고리즘들은 예를 들면 예기치 않은 사람 활동을 피하기 위해 여전히 로봇(12)이 움직일 때 이용될 수 있다. 하지만, 본 접근법은 로봇 측의 컴퓨팅 워크로드(workload)를 실질적으로 감소시킨다. 예를 들면, 로봇(12)은 이력 데이터로부터 구축된 모델(예컨대, HMM 모델)에 기초한 환경에서 일어나는 것의 모델을 가진다. 그러한 예에서, 이러한 모델은 현재 상황이 매일 또는 매주 동일한 시간 동안에 이력 상황에 유사하다는 가정 하에, 이력 정보에 기초하여 달리 적합하거나 최적인 경로를 찾기 위해 사용될 수 있다.
본 발명의 기술적 효과들은 사람들과 공유된 실내 환경에서 로봇들의 내비게이션(예컨대, 루트 계획 및 이동)을 촉진하는 것을 포함한다. 본 접근법은 사람 움직임을 포함하지만 이에 제한되지 않는, 시간에 따른 사람 활동을 검출하는 것; 역사적 사람 활동을 사용하여 사람 활동들을 모델링하고 모델링된 사람 활동을 사용하여 로봇 모션 또는 움직임을 계획하는 것을 포함한다
이러한 문서화된 설명은 최상의 모드를 포함하여 본 발명을 개시하고 또한 임의의 디바이스들 또는 시스템들을 제조 및 사용하고 임의의 통합된 방법들을 수행하는 것을 포함하여 당업자가 본 발명을 실시할 수 있도록 하기 위한 예들을 사용한다. 본 발명의 특허 가능한 범주는 청구항들에 의해 규정되고, 당업자에게 일어나는 다른 예들을 포함할 수 있다. 그러한 다른 예들은 청구항들의 문자 언어(literal language)와 다르지 않은 구조적 요소들을 가지거나 청구항들의 문자 언어들과 실질적으로 다른 등가의 구조적 요소들을 포함하는 경우 청구항들의 범주 내에 있는 것으로 의도된다.

Claims (20)

  1. 로봇 내비게이션 시스템(robot navigation system)에 있어서,
    시간에 따른(over time) 환경 내에서 이력 사람 활동 데이터(historical human activity data)를 생성하도록 구성되는 센서 네트워크;
    상기 이력 사람 활동 데이터를 수신하고 상기 이력 사람 활동 데이터에 기초하는 상기 환경 내에서 복수의 위치들 사이의 경로 데이터를 도출하도록 구성되는 하나 이상의 프로세서-기반의 시스템(processor-based system)들;
    상기 환경 내에서 하나 이상의 작업들을 수행하도록 구성되는 로봇을 포함하고,
    상기 로봇은:
    하나 이상의 센서들; 및
    상기 이력 사람 활동 데이터로부터 생성되는 상기 경로 데이터를 수신하고, 각 작업에 대해 상기 경로 데이터를 사용하는 복수의 웨이포인트(waypoint)들을 생성하며, 상기 로봇으로 하여금 상기 웨이포인트들을 따라 순차적으로 이동하고 상기 웨이포인트들 일부 또는 전부에서 특정된 행위(specified action)들을 수행하게 하고, 상기 로봇에 있는(present) 상기 하나 이상의 센서들에 의해 획득되는 실시간 감지된 데이터에 응답하여 상기 로봇에 의해 상기 웨이포인트들을 따라 상기 이동에 대한 조정을 행하도록 구성되는 처리 구성요소(processing component)를 포함하는, 로봇 내비게이션 시스템.
  2. 제1 항에 있어서,
    상기 센서 네트워크는 상기 환경 내에서 사람 활동을 모니터링하기 위해 위치되는 복수의 RGB-D 카메라들을 포함하는, 로봇 내비게이션 시스템.
  3. 제1 항에 있어서,
    상기 하나 이상의 프로세서-기반의 시스템들은 네트워크에 걸쳐 상기 센서 네트워크 및 상기 로봇과 통신하는 하나 이상의 서버들을 포함하는, 로봇 내비게이션 시스템.
  4. 제1 항에 있어서,
    상기 이력 사람 활동 데이터는 적어도 1주에 걸쳐 획득되는 사람 활동 데이터를 포함하고 사람 활동의 일일 경향(daily trend)들 및 시간별 경향(hourly trend)들 중 하나 또는 둘 다를 포함하는, 로봇 내비게이션 시스템.
  5. 제1 항에 있어서,
    상기 복수의 위치들 사이의 상기 경로 데이터는 상기 환경 내에서 높은-트래픽 위치(high-traffic location)들 사이의 경로 데이터를 포함하는, 로봇 내비게이션 시스템.
  6. 제5 항에 있어서,
    상기 높은 트래픽 위치들은 계단들, 엘리베이터들, 회의실들, 로비들(lobbies), 화장실들, 또는 출입구들 중 하나 이상을 포함하는, 로봇 내비게이션 시스템.
  7. 제1 항에 있어서,
    상기 하나 이상의 프로세서-기반의 시스템들은:
    상기 이력 사람 활동 데이터를 사용하여 사람 활동의 하나 이상의 표현(representation)들을 생성하고;
    상기 사람 활동의 표현들에 기초하여 상기 복수의 위치들에서 사람 활동을 모델링하며;
    상기 모델링된 사람 활동에 기초하여 하나 이상의 비용 맵(cost map)들을 생성하고;
    상기 하나 이상의 비용 맵들을 사용하여 상기 복수의 위치들 사이의 상기 경로 데이터를 도출함으로써
    상기 복수의 위치들 사이의 상기 경로 데이터를 도출하도록 구성되는, 로봇 내비게이션 시스템.
  8. 제7 항에 있어서,
    상기 사람 활동의 하나 이상의 표현들은 히트 맵(heat map)들을 포함하는, 로봇 내비게이션 시스템.
  9. 제7 항에 있어서,
    상기 복수의 위치들에서 사람 활동을 모델링하는 것은 은닉 마르코프 모델(Hidden Markov Model)들을 생성하는 것을 포함하는, 로봇 내비게이션 시스템.
  10. 제7 항에 있어서,
    상기 하나 이상의 비용 맵들은 상기 환경의 각 플로어(floor)에 대한 반응성 중요 비용 맵(reactive key cost map)을 포함하는, 로봇 내비게이션 시스템.
  11. 제7 항에 있어서,
    경로 데이터를 도출하는 것은 상기 각각의 복수의 위치들 사이의 경로들의 비용을 도출하는 것과 상기 각각의 복수의 위치들 사이의 가장 낮은 비용 경로를 식별하는 것을 포함하는, 로봇 내비게이션 시스템.
  12. 사람들과 공유되는 환경에서 로봇을 내비게이팅하는 방법(method for navigating a robot)에 있어서,
    시간에 따른 환경 내에서 이력 사람 활동 데이터를 획득하는 단계;
    상기 이력 사람 활동 데이터에 기초하여 상기 환경 내에서 복수의 위치들 사이의 경로 데이터를 도출하는 단계; 및
    로봇에서:
    상기 이력 사람 활동 데이터로부터 생성되는 상기 경로 데이터를 수신하는 단계;
    상기 경로 데이터에 기초하여 수행될 작업에 대응하는 복수의 웨이포인트들을 생성하는 단계;
    상기 로봇으로 하여금 상기 웨이포인트들을 따라 순차적으로 이동하고 상기 웨이포인트들 일부 또는 전부에서 특정된 행위들을 수행하게 하는 단계;
    상기 로봇에 있는 하나 이상의 센서들에 의해 획득되는 실시간 감지된 데이터에 응답하여 상기 로봇에 의해 상기 웨이포인트들을 따른 상기 이동에 대한 조정을 행하는 단계를 포함하는, 사람들과 공유되는 환경에서 로봇을 내비게이팅하는 방법.
  13. 제12 항에 있어서,
    상기 이력 사람 활동 데이터는 상기 로봇 외부의 센서 네트워크에 의해 생성되는, 사람들과 공유되는 환경에서 로봇을 내비게이팅하는 방법.
  14. 제12 항에 있어서,
    상기 이력 사람 활동 데이터는 적어도 1주일에 걸쳐 획득되는 사람 활동 데이터를 포함하고 사람 활동의 일일 경향들 및 시간별 경향들 중 하나 또는 둘 다를 포함하는, 사람들과 공유되는 환경에서 로봇을 내비게이팅하는 방법.
  15. 제12 항에 있어서,
    상기 경로 데이터는 상기 환경 내에서 높은-트래픽 위치들 사이의 경로 데이터를 포함하는, 사람들과 공유되는 환경에서 로봇을 내비게이팅하는 방법.
  16. 제12 항에 있어서,
    상기 환경 내에서 상기 복수의 위치들 사이의 경로 데이터를 도출하는 단계는:
    상기 이력 사람 활동 데이터를 사용하여 사람 활동의 하나 이상의 표현들을 생성하는 단계;
    상기 사람 활동의 표현들에 기초하는 상기 복수의 위치들에서 사람 활동을 모델링하는 단계;
    상기 모델링되는 사람 활동에 기초하는 하나 이상의 비용 맵들을 생성하는 단계; 및
    상기 하나 이상의 비용 맵들을 사용하여 상기 복수의 위치들 사이의 상기 경로 데이터를 도출하는 단계를 포함하는, 사람들과 공유되는 환경에서 로봇을 내비게이팅하는 방법.
  17. 제12 항에 있어서,
    상기 경로 데이터를 도출하는 단계는 상기 각각의 복수의 위치들 사이의 경로들의 비용을 도출하고 상기 각각의 복수의 위치들 사이의 가장 낮은 비용 경로를 식별하는 단계를 포함하는, 사람들과 공유되는 환경에서 로봇을 내비게이팅하는 방법.
  18. 로봇에 있어서:
    하나 이상의 센서들;
    모터를 포함하는 구동 시스템; 및
    처리 구성요소를 포함하고,
    상기 처리 구성요소는:
    이력 사람 활동 데이터로부터 생성되는 경로 데이터를 외부 소스로부터 수신하고;
    각각의 작업에 대해, 상기 경로 데이터를 사용하여 복수의 웨이포인트들을 생성하며;
    상기 로봇으로 하여금 상기 웨이포인트들을 따라 순차적으로 이동하게 하는 명령들을 상기 모터에 전달하고;
    상기 로봇에 있는 상기 하나 이상의 센서들에 의해 획득되는 실시간 감지되는 데이터에 응답하여 상기 로봇에 의해 상기 웨이포인트들을 따라 상기 이동에 대한 조정을 행하도록 구성되는, 로봇.
  19. 제18 항에 있어서,
    상기 이력 사람 활동 데이터는 상기 로봇 외부의 센서 네트워크에 의해 획득되고 상기 각각의 작업이 수행되는 환경 내에 위치되는, 로봇.
  20. 제18 항에 있어서,
    상기 이력 사람 활동 데이터는 적어도 1주에 걸쳐 획득되는 사람 활동 데이터를 포함하고 사람 활동의 일일 경향들 및 시간별 경향들 중 하나 또는 둘 다를 포함하는, 로봇.
KR1020207022386A 2018-01-12 2018-10-22 로봇 자율 모션 계획 및 내비게이션을 위한 시스템 및 방법들 KR20200099611A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/870,534 2018-01-12
US15/870,534 US10612934B2 (en) 2018-01-12 2018-01-12 System and methods for robotic autonomous motion planning and navigation
PCT/US2018/056827 WO2019139659A1 (en) 2018-01-12 2018-10-22 System and methods for robotic autonomous motion planning and navigation

Publications (1)

Publication Number Publication Date
KR20200099611A true KR20200099611A (ko) 2020-08-24

Family

ID=67212798

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207022386A KR20200099611A (ko) 2018-01-12 2018-10-22 로봇 자율 모션 계획 및 내비게이션을 위한 시스템 및 방법들

Country Status (7)

Country Link
US (1) US10612934B2 (ko)
EP (1) EP3738009B1 (ko)
JP (1) JP2021510433A (ko)
KR (1) KR20200099611A (ko)
CN (1) CN111656296B (ko)
BR (1) BR112020014097A2 (ko)
WO (1) WO2019139659A1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11204215B2 (en) 2018-01-09 2021-12-21 V-Armed Inc. Wireless independent tracking system for use in firearm simulation training
US11099575B2 (en) * 2018-01-30 2021-08-24 Brain Corporation Systems and methods for precise navigation of autonomous devices
WO2019152263A1 (en) * 2018-01-30 2019-08-08 Fisher Controls International Llc Balanced trim regulator
WO2020146352A1 (en) * 2019-01-08 2020-07-16 R-Go Robotics Ltd. System and method for monitoring movements
US10694053B1 (en) 2019-01-22 2020-06-23 Xerox Corporation Wireless location tracking tag for monitoring real time location-tracking apparatus for an electronic device
US11958183B2 (en) 2019-09-19 2024-04-16 The Research Foundation For The State University Of New York Negotiation-based human-robot collaboration via augmented reality
US20210197377A1 (en) 2019-12-26 2021-07-01 X Development Llc Robot plan online adjustment
CN111267099B (zh) * 2020-02-24 2023-02-28 东南大学 基于虚拟现实的陪护机器控制***
US20220136836A1 (en) * 2020-11-04 2022-05-05 Xerox Corporation System and method for indoor navigation
US20210346557A1 (en) 2020-05-08 2021-11-11 Robust AI, Inc. Robotic social interaction
CN112101148B (zh) * 2020-08-28 2024-05-03 普联国际有限公司 一种运动目标检测方法、装置、存储介质及终端设备
US20220133114A1 (en) * 2020-11-02 2022-05-05 Shiwei Liu Autonomous Cleaning Robot
CN115123897B (zh) * 2022-08-30 2023-01-06 深圳市海清视讯科技有限公司 对象检测方法、装置及设备
CN117200476A (zh) * 2023-10-16 2023-12-08 深圳市井人科技有限公司 一种用于智能机器人的无线充电控制***及方法

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7206753B2 (en) * 2001-05-04 2007-04-17 Axxon Robotics, Llc Methods for facilitating a retail environment
US7250907B2 (en) * 2003-06-30 2007-07-31 Microsoft Corporation System and methods for determining the location dynamics of a portable computing device
JP2007229854A (ja) * 2006-02-28 2007-09-13 Toyota Motor Corp 自律移動型ロボット
US7739040B2 (en) * 2006-06-30 2010-06-15 Microsoft Corporation Computation of travel routes, durations, and plans over multiple contexts
US20110037619A1 (en) 2009-08-11 2011-02-17 On Time Systems, Inc. Traffic Routing Using Intelligent Traffic Signals, GPS and Mobile Data Devices
JP2009175929A (ja) * 2008-01-23 2009-08-06 Toyota Central R&D Labs Inc ドライバ状態推定装置及びプログラム
JP4788722B2 (ja) 2008-02-26 2011-10-05 トヨタ自動車株式会社 自律移動ロボット、自己位置推定方法、環境地図の生成方法、環境地図の生成装置、及び環境地図のデータ構造
JP5215098B2 (ja) * 2008-09-17 2013-06-19 オリンパス株式会社 情報処理システム、プログラム及び情報記憶媒体
KR101679294B1 (ko) 2009-08-21 2016-11-25 삼성전자주식회사 이동 경로의 생성, 관리 및 공유 방법과 그 장치
JP5381679B2 (ja) * 2009-12-16 2014-01-08 トヨタ自動車株式会社 経路探索システム、方法、プログラム、並びに移動体
DE112011103155T5 (de) * 2010-09-21 2013-07-18 Toyota Jidosha Kabushiki Kaisha Beweglicher Körper
JP5690113B2 (ja) * 2010-10-22 2015-03-25 日本信号株式会社 自律移動サービス提供システム
US8364395B2 (en) * 2010-12-14 2013-01-29 International Business Machines Corporation Human emotion metrics for navigation plans and maps
JP2012203646A (ja) * 2011-03-25 2012-10-22 Advanced Telecommunication Research Institute International 流れ状態判別装置、流れ状態判別方法、流れ状態判別プログラムおよびそれらを用いたロボット制御システム
US9205886B1 (en) 2011-05-06 2015-12-08 Google Inc. Systems and methods for inventorying objects
US8761933B2 (en) * 2011-08-02 2014-06-24 Microsoft Corporation Finding a called party
US9495962B2 (en) * 2011-09-19 2016-11-15 Personetics Technologies Ltd. System and method for evaluating intent of a human partner to a dialogue between human user and computerized system
US20160253740A1 (en) * 2012-12-14 2016-09-01 Wal-Mart Stores, Inc. Systems and methods for generating and using a heat map of a retail location to reduce overcrowding
US9709990B2 (en) 2012-12-21 2017-07-18 Toyota Jidosha Kabushiki Kaisha Autonomous navigation through obstacles
CN103558856A (zh) * 2013-11-21 2014-02-05 东南大学 动态环境下服务动机器人导航方法
US9563205B2 (en) 2014-02-10 2017-02-07 Savioke, Inc. Sensor configurations and methods for mobile robot
US9911088B2 (en) * 2014-05-01 2018-03-06 Microsoft Technology Licensing, Llc Optimizing task recommendations in context-aware mobile crowdsourcing
US9452530B2 (en) 2014-09-12 2016-09-27 Toyota Jidosha Kabushiki Kaisha Robot motion replanning based on user motion
SG10201405949XA (en) 2014-09-22 2016-04-28 Ctrlworks Pte Ltd Method and apparatus for navigation of a robotic device
US10311400B2 (en) * 2014-10-24 2019-06-04 Fellow, Inc. Intelligent service robot and related systems and methods
US9796093B2 (en) * 2014-10-24 2017-10-24 Fellow, Inc. Customer service robot and related systems and methods
JP6187499B2 (ja) * 2015-02-19 2017-08-30 Jfeスチール株式会社 自律移動ロボットの自己位置推定方法、自律移動ロボット、及び自己位置推定用ランドマーク
JP2018511136A (ja) 2015-03-26 2018-04-19 マターネット, インコーポレイテッドMatternet, Inc. 無人航空機のための経路計画
CN105241461A (zh) 2015-11-16 2016-01-13 曾彦平 机器人的地图创建及定位方法和机器人***
JP6964596B2 (ja) * 2016-03-18 2021-11-10 プレジデント・アンド・フェロウズ・オブ・ハーバード・カレッジ 動物行動の自動分類方法
CN114040153B (zh) * 2016-05-09 2024-04-12 格拉班谷公司 用于在环境内计算机视觉驱动应用的***
WO2017197170A1 (en) * 2016-05-12 2017-11-16 The Regents Of The University Of California Safely controlling an autonomous entity in presence of intelligent agents
JP6755711B2 (ja) * 2016-05-20 2020-09-16 日本信号株式会社 サービス提供システム
CN106354161A (zh) 2016-09-26 2017-01-25 湖南晖龙股份有限公司 机器人运动路径规划方法
US10754351B2 (en) * 2017-02-28 2020-08-25 Toyota Jidosha Kabushiki Kaisha Observability grid-based autonomous environment search

Also Published As

Publication number Publication date
WO2019139659A1 (en) 2019-07-18
EP3738009A1 (en) 2020-11-18
CN111656296A (zh) 2020-09-11
US20190219409A1 (en) 2019-07-18
BR112020014097A2 (pt) 2020-12-01
EP3738009B1 (en) 2023-12-06
US10612934B2 (en) 2020-04-07
CN111656296B (zh) 2021-12-28
EP3738009A4 (en) 2021-07-14
JP2021510433A (ja) 2021-04-22

Similar Documents

Publication Publication Date Title
EP3738009B1 (en) System and methods for robotic autonomous motion planning and navigation
US10012996B1 (en) Route planning for a mobile robot using configuration-based preferences
AU2018271237B2 (en) Method for building a map of probability of one of absence and presence of obstacles for an autonomous robot
Schneier et al. Literature review of mobile robots for manufacturing
Tiwari Intelligent planning for mobile robotics: algorithmic approaches: algorithmic approaches
US20190054631A1 (en) System and method for operating and controlling a hyper configurable humanoid robot to perform multiple applications in various work environments
US11747819B1 (en) Robotic fire extinguisher
Truong et al. Dynamic social zone for human safety in human-robot shared workspaces
KR20190091714A (ko) 지능형 무인비행체를 이용한 지하공동구 자율 탐사 방법 및 장치
Chow et al. Learning human navigational skill for smart wheelchair in a static cluttered route
Chikhalikar et al. An object-oriented navigation strategy for service robots leveraging semantic information
WO2022153669A1 (ja) 分散協調システム、及びタスク実行方法
Tang et al. Development of a navigation system for semi-autonomous operation of wheelchairs
Sogo et al. Mobile robot navigation by a distributed vision system
Siswoyo et al. Development Of an Autonomous Robot To Guide Visitors In Health Facilities Using A Heskylens Camera: Development Of an Autonomous Robot To Guide Visitors In Health Facilities Using A Heskylens Camera
Paolini et al. A web-based user interface for a mobile robotic system
Dharmawan et al. Design innovation of mesoscale robotic swarms: applications to cooperative urban sensing and mapping
Sakr et al. Development of an Advanced Medical Assistance Robot with Intelligent Guidance
Acosta-Amaya et al. Map-Bot: Mapping Model of Indoor Work Environments in Mobile Robotics
Petitti et al. A Distributed Cooperative Architecture for Robotic Networks with Application to Ambient Intelligence
León et al. Multi-robot slam and map merging
Sasaki et al. Intelligent space as a platform for human observation
Paolini et al. A web-based mobile robotic system for control and sensor fusion studies
Sprute Interactive restriction of a mobile robot's workspace in traditional and smart home environments
Palacín Roca et al. Automatic supervision of temperature, humidity, and luminance with an Assistant Personal Robot

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal