KR20180067523A - 시공간 객체 인벤토리를 발생하도록 이동 로봇들의 객체 관측들을 이용하고, 이동 로봇들에 대한 모니터링 파라미터들을 결정하도록 인벤토리를 이용 - Google Patents

시공간 객체 인벤토리를 발생하도록 이동 로봇들의 객체 관측들을 이용하고, 이동 로봇들에 대한 모니터링 파라미터들을 결정하도록 인벤토리를 이용 Download PDF

Info

Publication number
KR20180067523A
KR20180067523A KR1020187009186A KR20187009186A KR20180067523A KR 20180067523 A KR20180067523 A KR 20180067523A KR 1020187009186 A KR1020187009186 A KR 1020187009186A KR 20187009186 A KR20187009186 A KR 20187009186A KR 20180067523 A KR20180067523 A KR 20180067523A
Authority
KR
South Korea
Prior art keywords
movement
objects
determining
inventory
criteria
Prior art date
Application number
KR1020187009186A
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 KR20180067523A publication Critical patent/KR20180067523A/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • 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/0234Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
    • G05D1/0236Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons in combination with a laser
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • B25J5/007Manipulators mounted on wheels or on carriages mounted on wheels
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/14Measuring arrangements characterised by the use of optical techniques for measuring distance or clearance between spaced objects or spaced apertures
    • 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • 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/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • 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/0242Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using non-visible light signals, e.g. IR or UV signals
    • 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
    • G05D1/0251Control 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 extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • 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/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • 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
    • 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/0278Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using satellite positioning signals, e.g. GPS
    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0291Fleet control
    • G05D1/0297Fleet control by controlling means in a control room
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10009Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
    • G06K7/10366Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves the interrogation device being adapted for miscellaneous applications
    • G06K7/10376Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves the interrogation device being adapted for miscellaneous applications the interrogation device being adapted for being moveable
    • G06K9/00664
    • 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
    • G06Q10/06315Needs-based resource requirements planning or analysis
    • 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/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Business, Economics & Management (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Electromagnetism (AREA)
  • Economics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • General Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Finance (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Optics & Photonics (AREA)
  • General Engineering & Computer Science (AREA)

Abstract

방법들, 장치들, 시스템들 및 컴퓨터 판독 가능 매체는 이동 로봇들로부터의 객체 관측들에 근거하여 시공간 객체 인벤토리를 발생하고, 상기 시공간 객체 인벤토리에 근거하여 하나 이상의 미래 시간 기간들 동안 상기 이동 로봇들에 대한 모니터링 파라미터들을 결정하기 위해 제공된다. 일부 구현예들은 상기 시공간 객체 인벤토리를 사용하여 하나 이상의 특정 기준이 만족될 때 상기 환경의 하나 이상의 영역들에서 발생하는 객체들의 이동량을 결정하는 것과, 그리고 그 결정을 사용하여 상기 하나 이상의 특정 기준이 또한 만족될 때 미래 시간 기간들에서 상기 이동 로봇들의 이동의 하나 이상의 양태에 영향을 주는 명령들을 상기 이동 로봇들 중 하나 이상에 제공하도록 사용될 수 있는 모니터링 파라미터들을 결정하는 것에 관한 것이다.

Description

시공간 객체 인벤토리를 발생하도록 이동 로봇들의 객체 관측들을 이용하고, 이동 로봇들에 대한 모니터링 파라미터들을 결정하도록 인벤토리를 이용
본 명세서는 시공간 객체 인벤토리를 발생하기 위해 이동 로봇의 객체 관측들을 이용하고, 이동 로봇에 대한 모니터링 파라미터들을 결정하기 위해 인벤토리를 이용하는 것에 관한 것이다.
로봇은 자동 또는 반자동 내비게이션, 객체들 조작(예를 들어, 객체의 위치 변경, 객체 변경 및/또는 객체 픽업 및 다른 위치로 이동), 객체 전송(그러한 객체들을 반드시 조작하지 않고), 환경 조건들 모니터링, "차를 타고 비디오 화상 회의" 등의 기능과 같은 다양한 작업을 수행하도록 프로그래밍될 수 있다.
또한, 로봇을 이용하여 로봇의 환경에서 다양한 객체들의 위치를 검출하는 다양한 기술이 제안되어 왔다. 예를 들어, 로봇은 하나 이상의 카메라들, 레이저 스캐너들, 깊이 센서들 및/또는 그 환경 내의 객체들의 위치를 검출하는 다른 센서들을 이용할 수 있다. 그러나, 이들 기술들 중 하나 이상은 하나 이상의 단점들을 겪을 수 있다. 예를 들어, 많은 기술들은 상기 환경 내의 객체들의 위치들 및/또는 방향들의 추적을 가능하게 하는 시공간 객체 인벤토리를 발생하도록 환경 내의 복수의 이동 로봇들로부터의 객체 관측들(observations)을 이용하지 않을 수 있다. 부가적으로 및/또는 대안으로, 많은 기술들은 하나 이상의 미래 시간 기간에서 로봇들에 대한 모니터링 파라미터들을 발생하기 위해 시공간 객체 인벤토리를 분석하는 것과 관련된 하나 이상의 특정 기술들을 채용하지 않을 수 있고, 및/또는 상기 모니터링 파라미터들에 근거하여 로봇들의 미래 이동에 영향을 미치는 것과 관련된 하나 이상의 특정 기술들을 채용하지 않을 수 있다. 전술한 기술들 및/또는 다른 기술들의 추가적인 및/또는 대안적인 단점들이 제공될 수 있다.
본 개시는 일반적으로 이동 로봇들로부터의 객체 관측들에 근거하여 시공간 객체 인벤토리를 발생하고 및/또는 상기 시공간 객체 인벤토리에 근거하여, 하나 이상의 미래 시간 기간들 동안 상기 이동 로봇들에 대한 파라미터들을 모니터링하기 위한 기술적 특징들에 관한 것이다. 상기 모니터링 파라미터들은 미래 시간 기간에 상기 이동 로봇들의 이동에 영향을 미친다. 다양한 구현예에서, 모니터링 파라미터들은 이동 로봇 자원들의 과도한 활용을 줄이고 및/또는 이동 로봇 자원들을 보다 효율적으로 활용하게 한다. 여기에 개시된 기술의 구현예들은 인벤토리의 객체들이 환경의 하나 이상의 인간에 의해 상기 환경으로, 상기 환경 밖으로 및/또는 상기 환경 내에서 이동될 수 있는 혼성된 인간-자동화 환경과 같은 다양한 환경에서 유용할 수 있다.
상기 기술의 일부 구현예들은 상기 환경에서 객체들의 시공간 객체 인벤토리를 발생하도록 환경에서 여러 이동 로봇들의 객체 관측들을 사용하는 것과 관련이 있다. 상기 객체 관측들은 각각 해당 객체에 대한 객체 식별자와 상기 해당 객체의 포즈를 나타내는 측정된 객체 포즈를 적어도 포함한다.
상기 객체 관측에 근거하여 발생된 시공간 객체 인벤토리는 상기 환경 내의 복수의 객체들 각각에 대한 포즈들 및 이들 포즈들에 대한 해당 측정 시간들을 정의한다. 따라서, 모델은 각각의 객체들에 대해 상기 객체의 초기 포즈(예를 들어, 상기 객체를 식별하는 객체 식별자를 갖는 초기 객체 관측의 측정된 객체 포즈에 근거하여) 및 선택적으로 상기 객체에 대한 하나 이상의 후속 포즈들(예를 들어, 상기 객체를 식별하고 그리고 상기 초기 객체 관측의 측정된 포즈 값으로부터 적어도 임계량 만큼 변하는 후속 객체 관측의 측정된 포즈 값에 기반함)을 정의할 수 있다. 여기에 사용된 바와 같이, 객체의 "포즈"는 상기 객체의 위치(예를 들어, 다차원 방향)만을 참조하거나, 상기 객체의 위치 및 상기 객체의 방향 모두를 참조할 수 있다. 일부 구현예들에서, 상기 시공간 객체 인벤토리 내의 객체에 대해 정의된 하나 이상의 "포즈"는 상기 객체가 상기 환경에 더 이상 존재하지 않고(즉, 환경 외부의 위치를 나타냄) 및/또는 그 위치를 알 수 없음(즉, 알 수 없는 위치를 나타냄)을 나타낼 수 있다.
일부 구현예들에서, 상기 시공간적 모델을 발생하기 위해 사용된 상기 복수의 관측들은 이미 태스크 및/또는 유휴 로봇들에 관여하고 있는 이동 로봇들로부터의 관측이다(즉, 잠재적으로 움직이지만, 약속된 태스크가 아님). 일부 구현예들에서, 상기 시공간적 모델은 새로 수신된 객체 관측에 근거하여, 상기 환경 내의 상기 인벤토리에 대한 변경(예를 들어, 상기 환경 내의 객체들의 이동, 상기 환경으로의 새로운 객체의 도입 및/또는 상기 환경으로부터의 객체들의 제거)을 반영하도록 지속적으로 또는 주기적으로 업데이트된다(각 업데이트는 상기 모델의 "발생"을 구성함).
상기 기술의 일부 구현예들은 하나 이상의 특정 기준이 만족될 때 시공간적인 객체 인벤토리를 사용하여 상기 환경의 하나 이상의 영역들에서 발생하는 객체들의 이동량(예를 들어, 상기 영역들로의 이동, 상기 영역들 밖으로의 이동 및/또는 적어도 임계량 만큼 상기 영역들 내에서 이동)을 결정하는 것과, 그리고 그 결정을 사용하여 상기 하나 이상의 특정 기준이 또한 만족될 때 미래 시간 기간에서 상기 이동 로봇들의 하나 이상의 이동 양태들에 영향을 주는 상기 이동 로봇들 중 하나 이상에 명령을 제공하는데 이용될 수 있는 모니터링 파라미터들을 결정하는 것에 관한 것이다.
일례로서, 상기 시공간 객체 인벤토리에 근거하여, 특정 기준이 만족될 때 상기 환경의 영역에서 객체들의 이동이 상대적으로 빈번하다고 결정되면, 상대적으로 많은 양의 이동 로봇들이 그러한 기준이 또한 만족될 때 및/또는 하나 이상의 이동 로봇들이 상기 미래 시간 기간 동안 그 영역을 만나는 경로들을 선택하는 경향이 높을 수 있을 때 미래 시간 기간 동안 그 영역으로 분명히 향하게 될 수 있다. 이는 상기 미래 시간 기간 동안 상기 이동 로봇들에 의해 그 영역에서 많은 양의 객체 관측들을 초래할 수 있어, 상기 시공간 객체 인벤토리가 그 인벤토리의 실제 현재 상태를 보다 정확하게 반영할 수 있게 한다. 다른 한편, 특정 다른 기준이 만족될 때 상기 영역 내의 객체들의 이동이 상대적으로 드물다고 결정되면, 상대적으로 적은 양의 이동 로봇들(또는 심지어는 없음)이 그러한 다른 기준이 또한 만족될 때 및/또는 하나 이상의 이동 로봇들이 상기 미래 시간 기간 동안 그 영역을 만나는 경로들을 선택하는 경향이 낮을 수 있을 때 미래 시간 기간 동안 그 영역으로 분명히 향하게 될 수 있다. 이는 상기 미래 시간 기간 동안 상기 이동 로봇들에 의해 그 영역에서 적은 양의 객체 관측들을 초래할 수 있어, 전체적인 이동 로봇 자원들의 이용을 줄이고 및/또는 이동 로봇 자원들이 다른 태스크들(그리고 더 효율적으로 활용됨)로 향하게 할 수 있다.
일부 구현예들에서, 하나 이상의 컴퓨터들의 시스템에 의해, 환경 내의 복수의 이동 로봇들로부터의 객체 관측들을 수신하는 단계를 포함하는 방법이 제공될 수 있다. 복수의 객체 관측들 각각은 해당 객체에 대한 객체 식별자 및 상기 해당 객체의 객체 포즈를 나타내는 상기 객체 식별자에 대한 측정된 객체 포즈를 포함한다. 상기 객체 식별자 및/또는 상기 측정된 객체 포즈는 상기 해당 이동 로봇들 중 하나의 하나 이상의 센서들로부터의 센서 데이터에 근거하여 결정될 수 있다. 상기 방법은 상기 시스템에 의해, 상기 객체 식별자, 상기 측정된 객체 포즈 및 상기 객체 관측들의 측정 시간에 근거하여 시공간 객체 인벤토리를 발생하는 단계를 더 포함한다. 상기 시공간 객체 인벤토리는 상기 객체 관측들의 상기 객체 식별자들에 의해 지시된 복수의 객체들 각각에 대해, 상기 객체에 대한 하나 이상의 포즈들 및 그 포즈들에 대한 해당 측정 시간을 정의한다. 상기 방법은 상기 시스템에 의해, 상기 시공간 객체 인벤토리에 근거하여 하나 이상의 기준이 만족될 때 발생된 객체들의 이동량을 결정하는 단계를 더 포함한다. 상기 객체들의 이동은 상기 객체들이 상기 환경의 적어도 하나의 영역으로 이동, 그리고 상기 객체들이 상기 환경의 상기 영역 밖으로 이동 중 적어도 하나를 포함한다. 상기 방법은, 상기 시스템에 의해, 상기 기준이 만족될 때 발생하는 상기 이동량에 근거하여, 상기 기준이 또한 만족될 때 하나 이상의 미래 시간 기간 동안 상기 이동 로봇들에 대한 하나 이상의 모니터링 파라미터들을 결정하는 단계; 그리고 상기 시스템에 의해, 상기 로봇들 중 하나 이상에 상기 모니터링 파라미터들에 근거한 명령들을 제공하는 단계를 포함한다. 상기 명령들은 상기 미래 시간 기간에 상기 이동 로봇들의 이동에 대한 하나 이상의 이동 양태에 영향을 미치고, 결과적으로 상기 미래 시간 기간에 수신되는 상기 환경의 영역에 대한 상기 객체 관측들의 양(quantity)에 영향을 미친다.
본 방법 및 여기에 개시된 기술의 다른 구현예들은 각각 선택적으로 하나 이상의 다음 특징들을 포함할 수 있다.
일부 구현예들에서, 상기 하나 이상의 기준은 특정 시간 기간을 포함하며, 상기 방법은 상기 시스템에 의해, 상기 특정 시간 기간 동안 발생된 상기 객체들의 이동을 결정하는 것에 근거하여 상기 하나 이상의 기준이 만족될 때 발생하는 상기 객체들의 이동을 결정하는 단계를 더 포함한다. 이러한 구현예들 중 일부에서, 상기 특정 시간 기간은 주중에서 하나 이상의 특정 요일, 년 중에서 하나 이상의 특정 일들, 또는 상기 주중 상기 특정 요일 또는 상기 년 중에서 상기 일들 중에서 하나 이상 동안의 하나 이상의 시간 기간 중에서 하나이다. 일부 구현예들에서, 상기 하나 이상의 기준이 만족될 때 발생하는 상기 객체들의 이동을 결정하는 단계는, 상기 시스템에 의해, 상기 특정 시간 주기 동안 상기 객체가 상기 영역 내로 이동하는 이동이 발생했는지를 결정하는 단계를 포함한다. 이러한 구현예들 중 일부에서, 상기 특정 시간 주기 동안 상기 객체가 상기 영역 내로 이동하는 이동이 발생했는지를 결정하는 단계는, 상기 객체에 대한 상기 포즈들의 제1 포즈가 상기 영역의 외부에 있고, 상기 시간 기간 전에 일시적으로 해당하는 측정 시간들의 제1 해당 측정 시간을 갖는지를 결정하는 단계; 그리고 상기 객체에 대한 상기 포즈들의 제2 포즈가 상기 영역 내에 있고, 상기 시간 기간 내에 일시적으로 해당하는 측정 시간들의 제2 해당 측정 시간을 갖는지를 결정하는 단계를 포함한다. 이러한 구현예들 중 일부에서, 상기 특정 시간 주기 동안 상기 객체가 상기 영역 내로 이동하는 이동이 발생했는지를 결정하는 단계는, 일시적으로 상기 시간 기간 전의 포즈가 상기 시공간 객체 인벤토리에서 상기 객체에 대해 정의되어 있지 않는지를 결정하는 단계; 그리고 상기 시간 기간 내에 일시적으로 해당하는 측정 시간들 중 해당 측정 시간을 갖는지를 결정하는 단계를 포함한다. 일부 구현예들에서, 상기 하나 이상의 기준이 만족될 때 발생하는 상기 객체의 이동을 결정하는 단계는 상기 시스템에 의해, 상기 특정 시간 기간 동안 상기 객체가 상기 영역 밖으로 이동하는 이동이 발생했는지를 결정하는 단계를 포함한다. 이러한 구현예들 중 일부에서, 상기 특정 시간 기간 동안 상기 객체가 상기 영역 밖으로 이동하는 이동이 발생했는지를 결정하는 단계는, 상기 객체에 대한 상기 포즈들의 제1 포즈가 상기 영역 내에 있고, 상기 시간 기간 전에 일시적으로 해당하는 측정 시간들의 제1 해당 측정 시간을 갖는지를 결정하는 단계; 그리고 상기 객체에 대한 상기 포즈들의 제2 포즈가 상기 영역의 외부에 있고, 상기 시간 기간 내에 일시적으로 상기 해당하는 측정 시간들의 제2 해당 측정 시간을 갖는지를 결정하는 단계를 포함한다.
일부 구현예들에서, 상기 하나 이상의 기준은 상기 영역 내의 하나 이상의 인간들의 그룹의 존재를 포함하며, 상기 방법은 상기 시스템에 의해, 상기 하나 이상의 인간들의 상기 그룹이 상기 영역 내에 존재할 때 복수의 시간 기간을 나타내는 인간 존재 데이터를 수신하는 단계를 더 포함한다. 이들 구현예들 중 일부에서, 상기 방법은 상기 그룹이 상기 영역에 존재할 때 상기 시간 기간 중 하나 동안 발생된 상기 객체의 이동을 결정하는 것에 근거하여 상기 하나 이상의 기준이 만족되었을 때 발생된 상기 객체의 이동을 결정하는 단계를 더 포함한다.
일부 구현예들에서, 상기 하나 이상의 기준은 하나 이상의 특정 양(quantity)의 하나 이상의 인간들이 상기 영역 내에 존재하는 것을 포함하고, 상기 방법은 상기 시스템에 의해, 상기 하나 이상의 특정 양의 상기 하나 이상의 인간들이 상기 영역에 존재할 때 복수의 시간 기간을 나타내는 인간 양 데이터(human quantity data)를 수신하는 단계를 더 포함한다. 이러한 구현예들 중 일부에서, 상기 방법은 상기 하나 이상의 특정 양이 상기 영역에 존재할 때 상기 시간 기간 중 하나 동안 발생된 상기 객체들의 이동을 결정하는 것에 근거하여 상기 하나 이상의 기준이 만족되었을 때 발생된 상기 객체들의 이동을 결정하는 단계를 더 포함한다.
일부 구현예들에서, 상기 하나 이상의 기준은 상기 환경의 인벤토리 기준을 포함하며, 상기 방법은 상기 인벤토리 기준이 상기 환경에 존재할 때 상기 객체 이동이 발생했는지를 결정하는 것에 근거하여 상기 하나 이상의 기준이 만족될 때 발생하는 상기 객체들의 이동을 결정하는 단계를 더 포함한다. 이러한 구현예들 중 일부에서, 상기 환경의 상기 인벤토리 기준은 상기 환경의 상기 영역으로 제한된 인벤토리 기준이다.
일부 구현예들에서, 상기 영역은 상기 환경의 서브세트이다.
일부 구현예들에서, 상기 모니터링 파라미터들에 근거한 상기 미래 시간 기간에서 상기 이동 로봇들의 이동에 대한 하나 이상의 양태에 영향을 주는 상기 명령들은 상기 미래 시간 기간 동안 상기 이동 로봇들을 상기 영역으로 향하게 하는 명령들을 포함한다.
일부 구현예들에서, 상기 모니터링 파라미터들에 근거한 상기 미래 시간 기간에서 상기 이동 로봇들의 이동에 대한 하나 이상의 양태에 영향을 주는 상기 명령들은 상기 이동 로봇들이 상기 미래 시간 기간 동안 상기 영역을 만나는 경로를 선택할 가능성을 증가시키는 명령들을 포함한다.
다른 구현예들은 상기 설명된 방법들 중 하나 이상과 같은 방법을 수행하도록 하나 이상의 프로세서들에 의해 실행 가능한 명령어들을 저장하는 비 일시적 컴퓨터 판독가능 저장 매체를 포함할 수 있다. 또 다른 구현예는 메모리 및 상기 설명된 방법들 중 하나 이상과 같은 방법을 단독으로 또는 집합적으로 수행하는 하나 이상의 모듈들 또는 엔진들을 구현하도록 상기 메모리에 저장된 명령어들을 실행하도록 동작 가능한 하나 이상의 프로세서들을 포함하는 시스템을 포함할 수 있다.
전술한 개념들 및 여기서 보다 상세하게 기술된 추가 개념들의 모든 조합은 여기서 개시된 요지의 일부로서 고려될 수 있음을 이해해야 한다. 예를 들어, 본 명세서의 말단에 나타난 청구된 요지의 모든 조합은 여기에 개시된 상기 요지의 부분으로 고려된다.
도 1은 시공간 객체 인벤토리가 이동 로봇들로부터의 객체 관측들에 근거하여 발생될 수 있는 예시적인 환경 및/또는 하나 이상의 미래 시간 기간 동안 상기 이동 로봇들에 대한 모니터링 파라미터들이 상기 시공간 객체 인벤토리에 근거하여 결정될 수 있는 예시적인 환경을 도시한다.
도 2는 시공간 객체 인벤토리의 일부를 발생하기 위해 이동 로봇의 객체 관측을 사용하는 예를 도시한다.
도 3은 시공간 객체 인벤토리에 근거하여 이동 로봇들에 대한 모니터링 파라미터들을 결정하고, 상기 모니터링 파라미터들에 근거한 명령들을 상기 이동 로봇들에 제공하는 예를 도시한다.
도 4a는 제1 시간에서의 빌딩의 일부의 평면도를 도시한다.
도 4b는 도 4a의 제1 시간보다 늦은 제2 시간에서의 상기 빌딩의 상기 일부의 평면도를 도시한다.
도 4c는 도 4b의 제2 시간보다 늦은 제3 시간에서의 상기 빌딩의 상기 일부의 평면도를 도시한다.
도 5는 이동 로봇들로부터의 객체 관측들에 근거하여 시공간 객체 인벤토리를 발생하고, 상기 시공간 객체 인벤토리에 근거하여 하나 이상의 미래 시간 기간 동안 상기 이동 로봇들에 대한 모니터링 파라미터들을 결정하는 예시적인 방법을 도시하는 흐름도이다.
도 6은 로봇의 예시적인 아키텍처를 개략적으로 도시한다.
도 7은 컴퓨터 시스템의 예시적인 아키텍처를 개략적으로 도시한다.
본 개시는 일반적으로 이동 로봇들로부터의 객체 관측들에 근거하여 시공간 객체 인벤토리를 발생하고; 및/또는 상기 시공간 객체 인벤토리에 근거하여, 하나 이상의 미래 시간 기간 동안 상기 이동 로봇들에 대한 모니터링 파라미터들을 결정하기 위한 기술적 특징에 관한 것이다. 상기 모니터링 파라미터들은 상기 미래 시간 기간에 상기 이동 로봇들의 이동에 영향을 미친다. 다양한 구현예들에서, 상기 모니터링 파라미터들은 이동 로봇 자원들의 전체 이용이 감소되거나 및/또는 상기 이동 로봇 자원들이 보다 효율적으로 이용되게 한다.
도 1은 시공간 객체 인벤토리(170)가 이동 로봇들(130A-N)으로부터의 객체 관측들(140A-N)에 근거하여 발생될 수 있는 예시적인 환경을 도시하고 및/또는 하나 이상의 미래 시간 기간 동안 이동 로봇들(130A-N)에 대한 모니터링 파라미터들이 상기 시공간 객체 인벤토리(170)에 근거하여 결정될 수 있는 예시적인 환경을 도시한다. 3개의 로봇들(130A, 130B 및 130N)이 도 1의 예시적인 환경에 도시되어있다. 추가 로봇들은 로봇(130B)과 로봇(130N) 사이에 위치된 도 1의 줄임표로 표시된 바와 같이 존재할 수도 있다. 또한 도 1의 상기 환경에서 제공된 것은 시공간 객체 인벤토리 발생 시스템(150), 로봇 명령 발생 시스템(160), 시공간 객체 인벤토리(170), 예상된 객체 이동 데이터베이스(175) 및 객체 관측들(140A, 140B 및 140N)이다. 상기 환경의 다양한 컴포넌트들은 LAN(Local Area Network) 및/또는 인터넷과 같은 광역 네트워크(WAN)와 같은 하나 이상의 네트워크를 통해 서로 통신할 수 있다. 다른 구현예들에서, 하나 이상의 컴포넌트들 간의 직접 연결이 이용될 수 있다.
상기 객체 관측들(140A, 140B 및 140N)은 여기에 설명된 기술들에 따라 시공간 객체 인벤토리(170)를 발생하도록 대응하는 로봇들(130A, 130B 및 130N)에 의해 시스템(150)에 제공될 수 있다. 또한, 로봇 명령 발생 시스템(160)은 하나 이상의 특정 기준이 만족될 때 환경의 하나 이상의 영역들에서 발생하는 객체들의 이동량을 결정하고, 그리고 상기 하나 이상의 특정 기준이 또한 만족될 때 미래 시간 기간에서 상기 이동 로봇들의 이동에 대한 하나 이상의 양태에 영향을 주는 명령들을 상기 이동 로봇들 중 하나 이상에 제공하는데 사용될 수 있는 그 양에 근거하여 모니터링 파라미터들을 결정하도록 상기 시공간 객체 인벤토리(170)를 사용할 수 있다.
상기 로봇들(130A-N) 각각은 빌딩(예를 들어, 창고, 제조 시설, 사무실 빌딩), 인근 빌딩들의 집합 중 하나 이상의 빌딩들, 다중 층 사무실의 하나 이상의 층들 또는 다른 빌딩 등과 같은 환경에 위치될 수 있다. 부가적인 및/또는 대안적인 로봇들은 도 1에 도시된 것들로부터의 하나 이상의 양태들에서 변화하는 추가 로봇들과 같이 다른 구현예들에서 제공될 수 있다. 예를 들어, 자동 또는 반자동 지게차 로봇들이 유일한 로봇들 및/또는 다른 로봇들로 제공될 수 있다.
각 로봇들(130A, 130B, 130N)은 해당 로봇들(130A, 130B, 130N)의 주행을 위해 그 대향 측면 상에 제공된 휠들을 갖는 해당 베이스(133A, 133B, 133N)를 포함한다. 각각의 베이스(133A, 133B, 133N)는 해당 로봇들(130A, 130B 및 130N)의 이동에 대한 원하는 방향, 속도 및/또는 가속도를 달성하도록 대응하는 휠들을 구동하기 위한 하나 이상의 모터들을 포함할 수 있다.
로봇들(130A, 130B 및 130N) 각각은 또한 하나 이상의 해당 포즈 센서들을 포함하는 적어도 하나의 포즈 장치(pose device)를 포함한다. 여기에서 사용된 바와 같이, 포즈 센서는 상기 센서의 시선(또는 다른 감지 범위)에 있는 객체의 형태, 색상, 무선 주파수 및/또는 다른 특징들과 관련된 데이터를 감지할 수 있는 센서이며, 상기 감지된 데이터는 상기 객체의 위치 및/또는 방향을 결정하도록 사용(선택적으로 다른 데이터와 조합으로)될 수 있다. 포즈 장치의 일예로서, 상기 로봇들(130A 및 130N)은 광을 방출하는 하나 이상의 레이저들을 각각 포함하는 해당 3D 레이저 스캐너들(131A 및 131N) 및 다양한 객체들의 위치 및/또는 방향을 결정할 수 있도록 상기 방출된 광의 반사와 관련된 데이터를 수집하는 하나 이상의 센서들을 포함한다. 상기 레이저 스캐너들(131A 및 131N)은 예를 들어, TOF(Time of Flight) 3D 레이저 스캐너들 또는 삼각 측량 기반 3D 레이저 스캐너들일 수 있으며, 위치 감지 검출기(PSD) 또는 다른 광학 위치 센서를 포함할 수 있다.
포즈 장치의 다른 예로서, 로봇(130B)은 각각 다른 유리한 지점들에 있는 2개의 센서(예를 들어, charge-coupled devices(CCDs))를 포함하는 스테레오 카메라(131B)를 포함한다. 다른 유리한 지점들에서 2개의 센서들에 의해 감지된 데이터를 비교함으로써, 다양한 객체들의 위치 및/또는 방향이 결정될 수 있다. 포즈 장치의 또 다른 예로서, 로봇은 특히 객체 상의 기준 태그들에 관련된 데이터를 캡처하는 센서를 포함하는 머신 비젼 카메라를 포함할 수 있다. 객체 상의 기준 태그에 관련된 데이터는 상기 기준 태그를 검출하고, 상기 기준 태그에 근거하여 상기 객체의 위치 및/또는 방향을 결정하는데 이용될 수 있다. 포즈 장치의 또 다른 예로서, 로봇은 객체의 RFID 태그(수동 또는 능동)를 판독하는 RFID(Radio Frequency IDentification) 판독기를 포함할 수 있으며, 상기 로봇은 상기 객체의 위치를 결정하도록 상기 RFID 태그를 판독할 때 자신의 포즈를 사용할 수 있다. 포즈 장치 및 연관된 센서들의 특정 예가 여기에 설명되었지만, 추가 및/또는 대체 포즈 장치 및 연관된 센서들이 이용될 수 있다.
로봇들(130A, 130B 및 130N) 각각은 또한 예를 들어 액추에이터들 및/또는 그에 대한 다른 작동 컴포넌트들에 제어 명령들을 제공하고, 여기에 기술된 객체 관측들의 모든 또는 부분들(aspects)을 발생하고, 및/또는 로봇 명령 발생 시스템(160)에 의해 제공되는 하나 이상의 명령들(145)을 수신하고, 그 명령들(145)에 근거한 하나 이상의 제어 명령들을 발생하는 하나 이상의 제어기들을 포함할 수 있다. 예를 들어, 로봇(130A)의 하나 이상의 제어기들은 상기 환상 내의 다양한 위치로 자동으로 상기 로봇(130A)을 네비게이트(navigate)하도록 상기 로봇(130A)의 휠들을 구동하는 서보 모터들에 제어 명령들을 제공할 수 있으며, 이들 제어 명령들은 시스템(160)으로부터 수신된 상기 명령들(145)을 고려하여 상기 로봇(130A)에 의해 발생된다. 또한, 예를 들어, 로봇(130A)의 하나 이상의 제어기들은 로봇(130A)의 네트워크 인터페이스를 통해 시공간 객체 인벤토리 발생 시스템(150) 및/또는 로봇 명령 발생 시스템(160)과 네트워크 연결을 설정하고, 객체 관측(140A)의 모든 또는 부분들을 시스템(150)에 제공하고 및/또는 로봇 명령 발생 시스템(160)으로부터 명령들(145)을 수신할 수 있다. 다양한 로봇들의 구조 및 기능의 일부 예들에 대한 추가 설명이 본 명세서에 제공된다.
로봇(130A)은 환경 주위를 이동하고, 3D 레이저 스캐너(131A) 및/또는 다른 센서들을 통해 데이터를 수집하지만, 임의의 추가적인 비 모니터링/관측 태스크들을 수행하지 않는 모니터링/관측 로봇일 수 있다. 로봇(130B)은 해당 엔드 이펙터들(end effectors)(135B1, 135B2)을 갖는 로봇 암들(134B1, 134B2)을 포함하며, 각각은 대향하는 2개의 "손가락들" 또는 "디짓(digits)"를 갖는 그리퍼(gripper)의 형태를 취한다. 로봇 암들(134B1, 134B2) 및 엔드 이펙터들(135B1, 135B2)은 자동으로, 반자동으로 및/또는 사용자의 컴퓨팅 장치를 통해 사용자에 의해 제공된 제어 명령들에 근거하여 제어될 수 있다. 예를 들어, 로봇 암(134B1)은 엔드 이펙터(135B1)를 객체에 근접하게 위치 시키도록 자동적으로 제어될 수 있고, 엔드 이펙터(135B1)는 그 객체를 파지하도록 자동으로 제어될 수 있다. 로봇(130N)은 디스플레이 스크린(132N)을 포함하는 텔레프레즌스(telepresence) 로봇이고, 다른 기능들 중에서 이동 화상 회의를 제공할 수 있다. 예를 들어, 로봇(130N)은 원격 컴퓨팅 장치의 사용자가 로봇(130N)으로부터 "라이브 뷰"를 수신하고(예를 들어, 로봇 (130N)의 추가 카메라를 통해) 및/또는 디스플레이 스크린(132B) 상에 사용자의 일부 표시(indicia)를 디스플레이할 수 있게 하는데 이용될 수 있다. 상기 사용자의 표시는, 예를 들어, 사용자의 이미지, 사용자의 컴퓨팅 장치에 결합된 카메라로부터의 라이브 비디오 피드 등일 수 있다. 이종 그룹의 로봇이 도 1에 도시되어 있지만, 환경 내의 로봇들은 다른 구현예들에서 동종일 수 있다.
로봇(130A-N)은 해당 객체 관측들(140A-N)을 시공간 객체 인벤토리 발생 시스템(150)에 제공하고, 시공간 객체 인벤토리 발생 시스템(150)은 상기 제공된 객체 관측들에 근거하여 시공간 객체 인벤토리(170)를 발생한다. 상기 시공간 객체 인벤토리(170)를 발생하는 것은 상기 환경에서 객체들의 이동, 상기 환경으로의 새로운 객체들의 도입 또는 상기 환경로부터 객체들을 제거와 같이 상기 객체 관측들에 의해 지시된 상기 환경에서의 변화들을 반영하도록 상기 인벤토리(170)를 업데이트하는 것을 포함할 수 있다. 시공간 객체 인벤토리 발생 시스템(150)은 하나 이상의 새로운 객체 관측들의 수신 및/또는 다른 기준에 근거하여 인벤토리(170)를 연속적으로, 주기적으로 업데이트할 수 있다.
로봇(130A-N)은 다양한 상황하에서 객체 관측들(140A-N)을 제공할 수 있다. 예를 들어, 로봇들(130A-N)은 그들이 다른 태스크(예를 들어, 로봇(130B)은 태스크를 수행하기 위한 위치로 네비게이팅할 때 복수의 객체 관측들(140B)을 제공할 수 있다)에 이미 관여되어있을 때 및/또는 다른 비 모니터링/관측 태스크(예를 들어, 유휴 상태에 있는 대신에, 로봇은 객체 관측들을 제공하기 위해 상기 환경 전체를 이동할 수 있다)에 관여하지 않을 때 상기 객체 관측들(140A-N)을 제공할 수 있다. 본 명세서의 설명에서 이해되는 바와 같이, 로봇들(130A, 130B, 130N)은 전형적으로 일정 기간 동안 복수의 객체 관측들을 제공할 것이다. 예를 들어, 로봇(130A)의 객체 관측들(140A)은 객체 관측들 각각이 다른 순간에 존재하는 복수의 객체 관측들을 포함한다.
객체 관측들(140A-N) 각각은 특히, 객체의 적어도 하나의 객체 식별자, 객체에 대한 측정된 객체 포즈 및 그 측정된 객체 포즈에 대한 측정 시간을 각각 포함할 수 있다. 측정된 객체의 객체 식별자는 예를 들어 상기 객체 상의 기준 태그(fiducial tag), 상기 객체의 무선 주파수 식별(RFID) 태그(수동 또는 능동) 및/또는 객체의 특징점들에 근거할 수 있으며, 다양한 기술들에 근거하여 로봇들(130A-N) 중 하나의 로봇에 의해 결정될 수 있다. 예를 들어, 상기 객체 식별자가 객체 상의 기준 태그(예를 들어, QR(QUICK RESPONSER) 코드 또는 다른 바코드, 영숫자 태그)에 근거하는 경우, 로봇(130A)은 로봇(130A)에 의해 캡쳐된 객체의 이미지 내의 기준 태그로부터 객체 식별자를 추출하는 것에 근거하여 측정된 객체의 객체 식별자를 결정할 수 있다. 또한, 예를 들어, 상기 객체 식별자가 상기 객체의 RFID 태그에 근거할 때, 로봇(130A)은 RFID 태그를 판독하는 RFID 판독기 및 객체 식별자로서 이용되는 판독된 RFID 태그의 ID 신호를 포함할 수 있다. 또한, 예를 들어, 상기 객체 식별자가 상기 객체의 특징점들에 근거할 때, 로봇(130A)은 레이저 스캐너(131A), 카메라 및/또는 특징점들을 발생하고 그 특징점들에 근거하여 식별자를 결정하도록 하는 다른 센서를 이용할 수 있다.
일부 구현예들에서, 상기 객체에 대한 측정된 객체 포즈는 포즈 장치(131A-N) 중 해당하는 하나의 포즈 장치의 하나 이상의 센서들에 의해 감지된 데이터에 근거하여 로봇들(130A-N) 중 해당하는 하나의 로봇에 의해 결정될 수 있다. 상기 객체에 대해 측정된 객체 포즈는 SE(3) 구성 공간(객체에 대해 측정 된 객체 포즈는 SE(3) 구성 공간(configuration space)에서 단일 평균 포즈와 같은 단일 포즈로 제공되거나, 그 평균 주위의 6차원 탄젠트 공간 내에 연관된 가우스 공분산 측정치(Gaussian covariance measure)를 갖는 SE(3) 구성 공간의 평균 포즈와 같은 공분산 측정치를 갖는 포즈로서 제공될 수 있다.
상기 측정 시간은 상기 측정된 객체 포즈가 근거가 되는 센서 데이터가 감지된 시간을 나타낸다. 상기 측정 시간은 상기 센서 데이터가 감지된 시간을 기초로 하거나, 또는 상기 측정된 객체 포즈가 결정된 시간(센서 데이터와 다를 때)과 같은 다른 이벤트에 기초할 수 있다. 일부 구현예들에서, 하나 이상의(예를 들어, 모두) 객체 관측들(140A-N)은 측정 시간을 생략할 수 있고, 상기 측정 시간은 해당 객체 관측들(140A-N)의 수신 시간에 근거하여 시공간 객체 인벤토리 발생 시스템(150)에 의해 추론될 수 있다.
일부 구현예들에서, 하나 이상의 객체 관측들(140A-N)은 또한 상기 측정 시간에 해당하는 측정된 객체 포즈를 발생하는데 이용되는 하나 이상의 센서들에 대한 측정된 소스 포즈를 포함할 수 있다. 다시 말해, 객체 관측의 측정된 소스 포즈는 상기 측정된 객체 포즈에 대한 측정이 수행되었을 때 상기 로봇의 해당 센서 및/또는 해당 로봇의 포즈를 나타낸다. 상기 측정된 소스 포즈는 SE(3) 구성 공간에서 단일 평균 포즈와 같은 단일 포즈로 제공되거나, 또는 그 평균 주위의 6차원 탄젠트 공간 내에 연관된 가우스 공분산 측정치를 갖는 SE(3) 구성 공간의 평균 포즈와 같은 공분산 측정치를 갖는 포즈로서 제공될 수 있다.
본 명세서에 기술된 바와 같이, 일부 구현예들에서 상기 시공간 객체 인벤토리 발성 시스템(150)은 해당 측정된 객체 포즈 및 해당 측정된 소스 포즈 모두에 근거하여 시공간 객체 인벤토리(170)에 대한 객체 포즈를 결정할 수 있다. 일부 구현예들에서, 시스템(150)은 해당 측정된 소스 포즈에 대한 참조없이 해당 측정된 객체 포즈에 근거하여 시공간 객체 인벤토리(170)에 대한 객체 포즈를 결정할 수 있다. 이러한 구현예들 중 일부에서, 상기 측정된 소스 포즈는 상기 측정된 객체 포즈로서 시스템(150)에 제공될 수 있다.
일부 구현예들에서, 상기 객체에 대한 상기 측정된 소스 포즈는 하나 이상의 센서들에 의해 감지된 데이터에 근거하여 로봇들(130A-N) 중 해당하는 하나의 로봇에 의해 결정될 수 있다. 파티클 필터들, 랜드마크 검출 및/또는 GPS와 같은 측정된 소스 포즈를 결정하도록 상기 로봇들(130A-N)에 의해 다양한 위치파악 기술들이 이용될 수 있다. 일부 구현예들에서, 로봇 외부의 하나 이상의 센서들이 상기 로봇에 대한 상기 측정된 소스 포즈를 결정하는데 이용될 수 있다. 예를 들어, 상기 로봇을 관측하는 정지 카메라로부터의 측정치가 상기 로봇의 측정된 소스 포즈를 결정하는데 이용될 수 있다. 상기 측정치는 예를 들어 상기 로봇의 기준 마커 및/또는 RFID 태그에 근거하여 그 로봇과 상관될 수 있으며, 상기 측정치는 객체 관측의 해당 측정 시간과 상기 측정치를 상관시키기 위해 타임스탬프화(timestamped)될 수 있다. 다른 예로서, 소정의 로봇을 관측하는 다른 로봇으로부터의 측정치가 상기 소정의 로봇에 대한 측정된 소스 포즈를 결정하는데 이용될 수 있다. 상기 측정치는 예를 들어 상기 로봇의 기준 마커 및/또는 RFID 태그에 근거하여 상기 로봇과 상관될 수 있으며, 상기 측정치는 상기 객체 관측의 해당 측정 시간과 상기 측정치를 상관시키기 위해 타임스탬프화될 수 있다. 일부 구현예들에서, 소정의 로봇을 관찰하는 다른 로봇으로부터의 측정치는 상기 소정의 로봇이 그 자체로 측정된 소스 포즈를 제공하지 않을 때 상기 소정의 로봇에 대한 측정된 소스 포즈를 결정하는데 이용될 수 있다(예를 들어, 소정의 로봇이 적절한 센서를 갖지 않거나 적절한 센서를 포함하지만 위치 파악할 수 없는 경우). 상기 소정의 로봇에 대한 측정된 소스 포즈를 결정하기 위해 사용되는 다른 로봇으로부터의 측정치는 그 다른 로봇으로부터의 측정된 객체 포즈일 수 있으며, 여기서 상기 측정된 객체 포즈의 객체는 상기 소정의 로봇이다. 상기 로봇 외부의 하나 이상의 센서들로부터의 측정치는 상기 로봇의 측정된 소스 포즈에 대한 유일한 소스로서 이용될 수 있고, 및/또는 상기 로봇의 측정된 소스 포즈를 결정하기 위해 다른 센서들(로봇의 외부 센서들 또는 로봇의 센서들)로부터의 측정치와 조합될 수 있다.
시공간 객체 인벤토리 발생 시스템(150)은 하나 이상의 네트워크들(도시되지 않음)에 의해 연결된 하나 이상의 컴퓨팅 시스템들을 포함할 수 있으며, 로봇들(130A-N)에 의해 접속 가능한 환경 내의 다수의 객체들에 대한 객체들, 객체 포즈 및 해당 측정 시간을 정의하는 시공간 객체 인벤토리(170)를 발생하기 위해 객체 관측들(140A-N)을 사용할 수 있다. 그러한 컴퓨팅 시스템의 예는 도 7에 개략적으로 도시된다. 다양한 모듈들 또는 엔진들은 소프트웨어, 하드웨어, 또는 이들의 임의의 2개의 조합으로 시공간 객체 인벤토리 발생 시스템(150)의 일부로서 구현될 수 있다. 예를 들어, 도 1의 시스템(150)은 객체 포즈 발생 엔진(152) 및 인벤토리 발생 엔진(154)을 포함한다. 이하의 예들이 로봇들(130A-N)에 대한 객체 관측들(140A-N)에 관해 설명되었지만, 일부 구현예들에서 시공간 객체 인벤토리 발생 시스템(150)은 또한 상기 환경 내의 하나 이상의 객체에 대한 해당 측정 시간 및 객체 포즈들 중 적어도 일부를 결정하도록 로봇에 장착되지 않은 고정된 센서들에 대한 객체 관측들을 사용할 수 있다.
객체 포즈 발생 엔진(152)은 객체 관측들(140A-N) 각각에 대해, 상기 관측에 의해 나타낸 측정 시간 동안 상기 관측에 의해 나타낸 객체에 대한 포즈를 결정하도록 구성된다. 객체 포즈 발생 엔진(152)에 의해 결정되는 객체 포즈들은 소위 "월드 프레임"과 같은 기준 프레임에 관한 것이다.
일부 구현예들에서, 하나 이상의 객체 관측들(140A-N)의 측정된 객체 포즈들이 상기 기준 프레임에 대해 제공될 수 있다. 예를 들어, 로봇(130A)에 의해 제공된 측정된 객체 포즈는 해당 측정된 소스 포즈를 고려하여 로봇(130A)이 측정 객체 포즈를 수정한 결과로서 상기 기준 프레임에 있는 것일 수 있다. 또 다른 예로서, 일부 구현예들에서 로봇(130B)의 측정된 객체 포즈는 이미 기준 프레임에 있는 로봇(130B)의 측정된 소스 포즈일 수 있다. 예를 들어, 로봇(130B)은 상기 객체의 RFID 태그 및/또는 객체의 기준 태그에 근거하여 객체의 객체 식별자를 결정할 수 있으며, 로봇(130B)은 그 시간에 객체에 대한 측정된 객체 포즈로서 자신의 소스 포즈를 제공할 수 있다.
일부 구현예들에서, 하나 이상의 객체 관측들(140A-N)의 측정된 객체 포즈는 상기 측정된 객체 포즈를 결정하는데 이용되는 센서에 관한 것일 수 있고, 이러한 객체 관측들은 또한 상기 기준 프레임에 관한 측정된 소스 포즈로 제공될 수 있다. 이러한 구현예들에서, 객체 포즈 발생 엔진(152)은 상기 측정된 소스 포즈를 고려하여 상기 측정된 객체 포즈를 수정하는 것에 근거하여 상기 기준 프레임에서 객체 포즈를 결정할 수 있다. 다시 말해서, 객체 포즈 발생 엔진(152)은 상기 측정된 객체 포즈를 상기 기준 프레임으로 변환하기 위해 상기 측정된 소스 포즈를 사용할 수 있다.
인벤토리 발생 엔진(154)은 포즈 값들의 해당 객체 식별자들 및 상기 포즈 값들의 해당 측정 시간과 함께, 객체 포즈 발생 엔진(152)에 의해 결정된 포즈 값들을 시공간 객체 인벤토리(170)에 저장한다. 따라서, 상기 발생된 인벤토리(170)는 복수의 객체 각각에 대해, 복수의 객체 포즈들 및 그 객체 포즈들에 대한 연관된 측정 시간을 정의할 수 있다. 특히, 상기 결정 및 저장된 객체 포즈들 각각은 객체 관측들(140A-N)의 다른 객체 관측으로부터의 포즈이며, 상기 객체 관측들(140A-N)은 복수의 해당 로봇들(130A-N)로부터의 관측이다.
일부 구현예들에서, 새롭게 수신된 객체 관측이 인벤토리 발생 엔진(154)에 의해 가장 최근에 저장된 객체에 대한 가장 최근의 객체 포즈로부터 적어도 임계량만큼 변화하지 않는 객체에 대한 측정된 객체 포즈를 포함할 때, 엔진(154)은 상기 새롭게 수신된 객체 관측에 근거하여 추가 객체 포즈를 저장할 수 없다. 이러한 구현예들 중 일부에서, 엔진(154)은 대신에 상기 새롭게 수신된 객체 관측의 측정 시간을 상기 가장 최근의 객체 포즈와 연관시킬 수 있다. 일부 구현예들에서, 엔진(156)은 상기 새롭게 수신된 객체 관찰에 근거하여 상기 가장 최근의 객체 포즈 및 상기 결정된 추가 객체 포즈를 결합(예를 들어, 평균)하고, 그리고 상기 가장 최근의 객체 포즈를 상기 결합된 객체 포즈로 대체할 수 있다.
일부 구현예들에서, 인벤토리 발생 엔진(154)은 상기 객체가 상기 환경에 더 이상 존재하지 않으며(즉, 환경 바깥의 위치를 나타냄) 및/또는 그 위치가 알려지지 않았다(즉, 알려지지 않은 위치를 나타냄)는 표시로서 시공간 객체 인벤토리(170)에서 객체들에 대한 하나 이상의 객체 포즈들을 정의할 수 있다. 일부 구현예들에서, 인벤토리 발생 엔진(154)은 예를 들어 적어도 임계 시간 동안 상기 객체를 식별하는 객체 관측을 수신하지 않음에 근거하여 객체가 상기 환경에 더 이상 존재하지 않는다고 결정한다. 일부 구현예들에서, 인벤토리 발생 엔진(154)은 예상된 객체 이동 데이터베이스(175)에서 상기 객체에 대한 엔트리가 존재하는지를 식별하는 것에 근거하여 객체가 상기 환경에 더 이상 존재하지 않는다고 결정한다(선택적으로 적어도 임계 시간 동안 상기 객체를 식별하는 객체 관측을 수신하지 않는 것과 함께). 예상된 객체 이동 데이터베이스(175)는 하나 이상의 객체들 각각에 대해, 상기 객체가 상기 환경 밖으로 이동할 것으로 예상됨을 나타내는 데이터를 포함할 수 있다. 상기 객체가 상기 환경 밖으로 이동할 것으로 예상됨을 나타내는 데이터는, 예를 들어 상기 객체에 대한 수신된 순서, 상기 객체를 이동하도록 하는 요청 및/또는 상기 객체의 이동과 관련된 하나 이상의 로봇들의 기록된 동작들에 근거할 수 있다.
일부 구현예들에서, 인벤토리 발생 엔진(154)은, 예를 들어, 상기 객체의 마지막 알려진 포즈 또는 그 부근의 다른 객체들에 대한 하나 이상의 객체 관측들을 수신하지만, 그 객체에 대한 객체 관측을 수신하지 않음에 근거하여 객체의 위치를 알 수 없다고 결정한다. 이러한 구현예들 중 일부에서, 인벤토리 발생 엔진(154)은 예상된 객체 이동 데이터베이스(175)에서 상기 객체에 대한 엔트리가 존재하지 않음을 식별하는 것에 근거하여 객체의 위치를 더 이상 알수 없다고 결정한다 (반면, 객체가 존재한다면 상기 객체의 위치는 "환경 외부"로 알려질 수 있다). 일부 구현예들에서, 인벤토리 발생 엔진(154)은, 예를 들어, 이동 로봇들(130A-N) 중 하나 이상이 그의 포즈 장치를 특히 상기 객체의 마지막으로 알려진 포즈를 향하게 하도록 지시하는 것에 근거하여 객체의 위치를 알 수 없다고 결정한다. 하나 이상의 방향성 이동 로봇들이 상기 마지막으로 알려진 포즈 또는 그 부근의 상기 객체를 검출하지 않으면, 인벤토리 발생 엔진(154)은 상기 객체의 위치를 알수 없다고 결정할 수 있다. 이들 구현예들 중 일부에서, 엔진(154)은 예를 들어 적어도 임계 시간 동안 상기 객체를 식별하는 객체 관측을 수신하지 않음에 근거하여 하나 이상의 이동 로봇들(130A-N)을 상기 객체에 향하게 할 수 있다. 일부 구현예들에서, 임계 시간 및/또는 엔진(154)이 하나 이상의 이동 로봇들을 상기 객체에 향하게 하는지 여부는 예를 들어 상기 객체의 중요도 레벨에 기반할 수 있다.
시공간 객체 인벤토리(170)의 값들 및 관계들은 다양한 방식으로 인벤토리(170)에 저장될 수 있다. 예를 들어, 시공간 객체 인벤토리(170)는 하나 이상의 해당 시간 및 하나 이상의 해당 시간에 대한 객체 포즈 값을 적어도 각각 포함하는 튜플(tuples)을 가리키는 인덱스 값들인 객체 식별자들을 갖는 인덱스일 수 있다. 또한, 예를 들어, 시공간 객체 인벤토리(170)는 상기 객체 식별자들이 노드들인 그래프 토폴로지를 가질 수 있고, 상기 노드들은 하나 이상의 에지들에 의해 중앙 노드에 각각 연결된다. 상기 에지들 각각은 하나 이상의 객체 관측들에 기반할 수 있으며, 하나 이상의 해당 시간 및 하나 이상의 해당 시간에 대한 객체 포즈 값과 같은 속성들을 포함할 수 있다. 예를 들어, 소정의 노드는 복수의 에지들을 가질 수 있고, 상기 에지들 각각은 해당 객체 관측에 근거한다. 또 다른 예로서, 시공간 객체 인벤토리(170)는 노드들인 객체 식별자들 및 노드들인 객체 포즈들을 갖는 그래프 토폴로지를 가질 수 있다. 상기 객체 식별자 노드들은 하나 이상의 에지들에 의해 하나 이상의 객체 포즈 노드들에 각각 연결될 수 있으며, 각각의 에지는 해당 객체 포즈를 나타낸 해당 객체 식별자에 대한 객체 관측에 근거한다. 예를 들어, 소정의 에지는 소정의 객체 식별자 노드와 소정의 객체 포즈 노드 사이에 있을 수 있으며, 해당 객체 관측에 근거될 수 있다. 상기 소정의 에지는 해당 측정 시간과 같은 속성들을 포함할 수 있다.
일부 구현예들에서, 시공간 객체 인벤토리(170)는 예상된 객체 이동 데이터베이스(175) 및/또는 하나 이상의 인벤토리 관리 시스템들의 다른 데이터베이스(들)에서 데이터 품질을 향상시키는데 이용될 수 있다. 예를 들어, 인벤토리(170) 내의 객체들에 대해 정의된 포즈들은 인벤토리 관리 시스템들에 의해 예상된 객체들의 포즈들을 검증하는데 이용될 수 있다. 예를 들어, 인벤토리(170)는 환경에 있어야 하는 객체가 실제로 환경 내에 있는지를 검증하고, 상기 환경에서 상기 객체의 예상되는 포즈가 예상대로인지 검증하고 및/또는 상기 환경에서 벗어나야 하는 객체가 실제로 상기 환경을 벗어났는지 검증하는데 이용될 수 있다. 아래에 설명된 바와 같이, 로봇 명령 발생 시스템(160)은 인벤토리(170)의 정확도 및/또는 적시성을 향상시킬 수 있는 환경 전체에 이동 로봇들(130A-N)을 분배하기 위해 다양한 기술들을 사용할 수 있다(및/또는 이동 로봇들(130A-N)의 이용 효율을 향상시킴). 이는 인벤토리 관리 시스템들에 의해 예상되는 포즈들을 상기 인벤토리가 검증하는데 더 효과적일 수 있고 및/또는 다른 목적들을 위해보다 효과적일 수 있다.
로봇 명령 발생 시스템(160)은 하나 이상의 네트워크들(도시되지 않음)에 의해 연결된 하나 이상의 컴퓨팅 시스템들을 포함할 수 있으며, 하나 이상의 미래 시간 기간에서 상기 환경의 하나 이상의 영역들에 대한 이동 로봇들(130A-N)에 대한 모니터링 파라미터들을 결정하도록 시공간 객체 인벤토리(170)를 사용할 수 있다. 또한, 시스템(160)은 상기 모니터링 파라미터들을 고려하여, 상기 미래 시간 주기에서 상기 환경의 하나 이상의 영역들에서의 객체 관측들의 양(quantity)에 영향을 주기 위해 하나 이상의 이동 로봇들(130A-N)에 명령들(145)을 제공할 수 있다. 다양한 모듈들 또는 엔진들은 소프트웨어, 하드웨어, 또는 이들의 임의의 2개의 조합으로 로봇 명령 발생 시스템(160)의 일부로서 구현될 수 있다. 예를 들어, 도 1의 시스템(160)은 이동량 엔진(Movements quantity engine)(162), 모니터링 파라미터 엔진(164) 및 명령 엔진(166)을 포함한다.
이동량 엔진(162)은 하나 이상의 기준이 만족될 때 상기 환경의 적어도 하나의 영역에서 발생한 시공간 객체 인벤토리(170)의 객체들의 이동량을 결정한다. 상기 기준은 예를 들어, 하나 이상의 특정 시간 기간, 그 영역에 있는 하나 이상의 인간의 특정 그룹의 존재, 그 영역에 있는 하나 이상의 특정 양의 인간의 존재, 및/또는 인벤토리 기준 중에서 하나 이상을 포함할 수 있다.
일부 구현예들에서, 이동량 엔진(162)은 가중치가 없는(unweighted) 이동량(즉, 각각의 이동이 동일하게 카운트 됨)을 결정할 수 있다. 일부 다른 구현예들에서, 이동량 엔진(162)은 상기 이동량을 결정할 때 다양한 기준에 근거하여 하나 이상의 이동을 가중(weight)시킬 수 있다. 예를 들어, 엔진(162)은 현재 시간에 대한 시간적 근접성에 기초하여 하나 이상의 이동을 가중시킬 수 있다(예를 들어, 보다 근접한 것들은 더 크게 가중될 수 있음). 또한, 예를 들어, 엔진(162)은 상기 이동과 연관된 상기 객체 식별자들에 대한 중요도의 레벨에 근거하여 하나 이상의 이동을 가중시킬 수 있다. 예를 들어, 높은 값의 객체들과 연관된 일부 객체 식별자들은 낮은 값의 객체보다 높은 레벨의 중요도를 가질 수 있고 및/또는 소정의 환경 조건들(예를 들어, 소정 온도 내)에 있어야 하는 객체들과 연관된 일부 객체 식별자들은 그렇지 않은 객체들보다 높은 레벨의 중요도를 가질 수 있다. 또한, 예를 들어, 엔진(162)은 상기 이동이 "예상된 이동" 또는 "알려지지 않은 이동"(예를 들어, 전술한 바와 같음)인지에 근거하여 하나 이상의 이동을 가중시킬 수 있다. 예를 들어, "알려지지 않은" 이동은 "알려지지 않은 이동"에 대한 포커스를 증가시키기 위해 더 많이 가중될 수 있다.
일부 구현예들에서, 이동량 엔진(162)은 다양한 기준에 근거하여 이동량을 결정하는 이동을 제한할 수 있다. 예를 들어, 영역 내의 이동량을 결정하기 위해 이동량 엔진(162)에 의해 사용되는 상기 객체들의 이동은 "알려지지 않은 이동"인 이동으로 제한될 수 있다. 또한, 예를 들어, 영역 내의 이동량을 결정하기 위해 이동량 엔진(162)에 의해 사용되는 상기 객체들의 이동은 적어도 임계 레벨의 중요도를 갖는 객체들과 연관된 이동으로 제한될 수 있다. 또 다른 예로서, 영역 내의 이동량을 결정하기 위해 이동량 엔진(162)에 의해 사용되는 상기 객체들의 이동은 "알려지지 않은 이동"이고 적어도 중요도의 임계 레벨을 갖는 객체들과 연관된 이동으로 제한될 수 있다.
상기 기준이 특정 시간 기간을 포함하는 구현예들에서, 상기 특정 시간 기간은 예를 들어 주중 하나 이상의 특정 요일들, 년 중 하나 이상의 특정 날들 또는 주중 하나 이상의 특정 요일들 또는 년 중 특정 날들 동안의 하나 이상의 시간 기간일 수 있다. 상기 기준이 특정 시간 기간을 포함하는 구현예들에서, 영역에서 이동량을 결정하기 위해 사용되는 상기 객체들의 이동은 특정 시간 기간 동안 발생한 이동으로 적어도 제한될 수 있다. 이러한 이동은, 예를 들어, 상기 시간 기간 동안 상기 영역에서의 이동을 나타내는 인벤토리(170)에서 정의된 측정 시간을 갖는 이동을 나타내는 포즈 값들을 결정하는 것에 근거하여 이동량 엔진(162)에 의해 결정될 수 있다.
예를 들어, 이동량 엔진(162)은 인벤토리(170) 내의 객체에 대한 제1 포즈가 상기 영역의 외부에 있고 상기 시간 기간 이전의 일시적인 제1 해당 측정 시간을 갖는다는 결정과, 인벤토리(170) 내의 객체에 대한 제2 포즈가 상기 영역 내에 있고 상기 시간 기간 이내에 일시적인 제2 해당 측정 시간을 갖는다는 결정에 근거하여 상기 특정 시간 기간 동안 상기 영역으로 상기 객체들 중 하나의 이동이 발생했는지를 결정할 수 있다. 또한, 예를 들어, 이동량 엔진(162)은 상기 시간 기간 전에 일시적으로 포즈가 인벤토리(170) 내의 객체에 대해 정의되어 있지 않다는 결정과, 인벤토리(170) 내의 객체에 대한 포즈가 상기 영역 내에 있고 상기 시간 기간 내에 일시적으로 해당 측정 시간을 갖는다는 결정에 근거하여 상기 특정 시간 기간 동안 상기 영역으로 상기 객체들 중 하나의 이동이 발생했는지를 결정할 수 있다. 또 다른 예로서, 이동량 엔진(162)은 인벤토리(170) 내의 상기 객체에 대한 제1 포즈가 상기 영역 내에 있고 상기 시간 기간 전에 일시적으로 제1 해당 측정 시간을 갖는다는 결정과, 인벤토리(170) 내의 상기 객체에 대한 제2 포즈가 상기 영역의 외부에 있고 상기 시간 기간 이내에 일시적으로 제2 해당 측정 시간을 갖는다는 결정에 근거하여 상기 특정 시간 기간 동안 상기 영역 밖으로 상기 객체들 중 하나의 이동이 발생했는지를 결정할 수 있다.
상기 기준이 상기 영역 내에 하나 이상의 인간들의 그룹의 존재를 포함하는 일부 구현예들에서, 상기 그룹은 예를 들어 하나 이상의 특정 인간들 및/또는 인간들의 "클래스들(classes)"일 수 있다. 예를 들어, 상기 그룹은 특정 종업원, 복수의 특정 종업원, 하나 이상의 특정 계약자, 하나 이상의 일반 계약자 및/또는 하나 이상의 일반 게스트 중 하나 이상을 포함할 수 있다.
상기 기준이 상기 영역 내에 하나 이상의 인간의 그룹의 존재를 포함하는 일부 구현예들에서, 영역에서 이동량을 결정하기 위해 사용되는 객체들의 이동은 한 명 이상의 인간의 그룹이 존재할 때 발생하는 이동으로 적어도 제한될 수 있다. 이동량 엔진(162)은 예를 들어, 하나 이상의 인간의 그룹이 상기 영역에 존재할 때 복수의 시간 기간을 나타내는 인간 존재 데이터를 수신하는 것과, 상기 인벤토리(170)에 기반하여 상기 이동을 나타내는 포즈 값들이 하나 이상의 인간의 그룹이 존재할 때의 상기 시간 주기 중 하나의 시간 주기 동안의 측정 시간을 갖는다는 결정에 근거하여 그러한 이동을 결정할 수 있다. 일부 구현예들에서, 상기 인간 존재 데이터는 상기 영역에 대한 액세스를 얻기 위해 생체인식 기능들을 사용하는 것 및/또는 인간 "배지 인/아웃(badging in/out)"에 응답하여 액세스 제어 시스템들에 의해 제공되는 식별자들과 같이 하나 이상의 전자 액세스 제어 시스템들에 의해 제공되는 식별자들에 기반될 수 있다. 일부 구현예들에서, 상기 인간 존재 데이터는 이동 로봇들(130A-N), 고정 카메라 시스템들 및/또는 상기 환경의 다른 센서들에 의해 제공될 수 있다. 예를 들어, 상기 인간 존재 데이터는 인간에 의해 착용된 및/또는 이미지 분석에 기초하여 결정된 배지들(badges) 내의 "RFID 태그들"로부터 감지된 식별자들에 근거하여 이동 로봇들(130A-N)에 의해 결정될 수 있다.
상기 기준이 상기 영역 내에서 하나 이상의 인간의 그룹의 존재를 포함하는 일부 구현예들에서, 본 명세서에 기술된 기술들은 비교적 많은 양의 객체 이동과 연관된 인간들이 존재하는 하나 이상의 영역들에서 이동 로봇들에 의한 인벤토리의 추가 모니터링을 촉진할 수 있다. 예를 들어, 객체들을 빈번하게 이동시키는 제1 그룹이 상기 영역 내에 존재할 때, 로봇들(130A-N)에 의한 인벤토리 모니터링은 객체들을 거의 이동시키지 않는 제2 그룹이 상기 영역에 존재할 때와 비교하여 증가될 수 있다. 예를 들어, 상기 제1 그룹은 객체들을 다른 영역 및/또는 환경 밖으로 이송하기 위해 상기 객체들을 검색하는 작업을 하는 작업자들일 수 있고, 상기 제2 그룹은 기계 장비를 수리하는 작업을 하는 작업자들(객체들을 거의 이동시키지 않음)일 수 있다. 이들 및/또는 다른 구현예들 중 일부에서, 영역 내의 이동량을 결정하기 위해 이동량 엔진(162)에 의해 사용되는 상기 객체들의 이동은 객체의 위치가 알려지지 않음을 나타내는 객체 포즈들을 기반으로 결정된 객체들의 이동과 같이, 상기 영역 밖으로의 이동 및 "알려지지 않은 이동"으로 제한될 수 있다. 이는 하나 이상의 기준이 만족될 때 발생하는 예기치 않은 이동량을 결정할 수 있으며, 상기 이동량이 상대적으로 높을 때 하나 이상의 이동 로봇들에 의한 인벤토리의 모니터링이 상기 기준을 만족시키는 미래 시간 기간 동안 증가될 수 있게 한다.
상기 기준이 상기 영역 내에서 하나 이상의 특정 양들(quantities)의 하나 이상의 인간의 존재를 포함하는 일부 구현예들에서, 상기 특정 양들은 예를 들어 "5"와 같은 단일 양이거나, "5-10" 또는 "2-4 및 6-10"과 같은 하나 이상 범위의 양들일 수 있다. 일부 구현예들에서, 영역 내의 이동량을 결정하기 위해 사용되는 상기 객체들의 이동은 상기 특정 양들이 상기 영역에 존재할 때 발생하는 이동으로 적어도 제한될 수 있다. 상기 이동량 엔진(162)은 예를 들어, 상기 특정 양들의 하나 이상의 인간이 상기 영역에 존재할 때(예를 들어, "배지 인(badge ins)"로부터 수신되고, "RFID 태그"로부터 수신되고, 이미지 분석에 의해 결정됨)의 복수의 시간 기간을 나타내는 인간 존재 데이터를 수신하는 것과, 인벤토리(170)에 기반하여 이들 이동을 나타내는 포즈 값들이 상기 특정 양들이 상기 영역에 존재할 때 상기 시간 기간 중 하나의 기간 동안의 측정 시간을 갖는지를 결정하는 것에 근거하여 그러한 이동을 결정할 수 있다.
상기 기준이 상기 환경의 인벤토리 기준을 포함하는 구현예들에서, 상기 인벤토리 기준은 예를 들어 하나 이상의 특정 유형의 인벤토리 및/또는 일반적 인벤토리의 적어도 임계량(threshold quantity)의 존재, 하나 이상의 특정 유형의 인벤토리 및/또는 일반적 인벤토리의 임계량 미만의 존재, 및/또는 하나 이상의 특정 유형의 인벤토리 및/또는 일반적 인벤토리의 양의 임계치 변화가 될 수 있다. 일부 구현예들에서, 상기 환경의 인벤토리 기준은 상기 객체들의 이동량이 결정되는 상기 환경의 영역으로 제한된 인벤토리 기준이다.
일부 구현예들에서, 영역 내의 이동량을 결정하기 위해 사용되는 상기 객체들의 이동은 적어도 상기 특정 인벤토리 기준이 존재할 때 발생하는 이동으로 제한될 수 있다. 이동량 엔진(162)은 예를 들어 시공간 객체 인벤토리(170)에 근거하여, 상기 특정 인벤토리 기준이 상기 영역에 존재할 때의 시간 기간을 결정하는 것과, 그들의 이동을 나타내는 객체 포즈들이 상기 특정 인벤토리 기준이 상기 영역에 존재할 때 상기 시간 기간 중 하나의 기간 동안 인벤토리(170)에서 정의된 측정 시간을 갖는지를 결정하는 것에 근거하여 그러한 이동을 결정할 수 있다.
단일 기준에만 의존하는 여러 가지 예들이 위에 제공되었지만, 이동량 엔진(162)은 복수의 기준들이 만족될 때 영역에서 발생하는 이동량을 결정할 수 있음을 이해할 수 있다. 예를 들어, 엔진(162)은 적어도 5명의 인간이 존재하고, "유형 A"의 객체들이 적어도 100개 존재할 때 지난달 동안 임의의 요일에 영역에서 발생한 이동량을 결정할 수 있다. 또한, 하나 이상의 기준의 세트에 근거하여 하나 이상의 영역들에 대해 단일 양을 결정하는 것을 설명하는 몇 가지 예들이 상기에 제공되었지만, 이동량 엔진(162)은 상이한 영역 및/또는 상이한 기준 세트를 위한 복수의 인스턴스들의 각각에 대응하는 양을 결정할 수 있는 것으로 이해된다. 예를 들어, 제1 양은 제1 기준 세트에 대한 환경의 제1 영역에 대해 결정될 수 있고, 제2 양은 제2 기준 세트에 대한 환경의 제2 영역에 대해 결정될 수 있다. 또한, 예를 들어, 제3 양은 제2 기준 세트에 대한 환경의 상기 제1 영역에 대해 결정될 수 있다.
엔진(162)에 의해 결정된 양들 각각에 대해, 모니터링 파라미터 엔진(164)은 해당 기준이 또한 만족될 때 하나 이상의 미래 시간 기간에서 해당 영역(들)에 대한 하나 이상의 모니터링 파라미터들을 결정한다. 모니터링 파라미터 엔진(164)은 여기에 설명된 바와 같이 명령 엔진(166)에 의한 이용을 위한 연관된 기준과 연관된 영역(들)과 함께 결정된 모니터링 파라미터들을 저장할 수 있다. 상기 모니터링 파라미터들은 일반적으로 얼마나 많은 이동 로봇들(130A-N)이 상기 영역에 배치되어야 하는지 및/또는 얼마나 자주 이동 로봇들(130A-N) 중 하나 이상이 그 영역을 조우(encounter)해야 하는지를 정의한다. 예를 들어, 상기 환경의 제1 영역 및 하나 이상의 제1 기준 세트에 대해, 엔진(162)에 의해 결정되는 이동량이 10이라고 가정한다. 또한, 상기 환경의 제2 영역 및 제1 기준 세트에 대해, 엔진(162)에 의해 결정된 이동량이 250이라고 가정한다. 모니터링 파라미터 엔진(164)은 더 많은 수의 이동 로봇들이 배치되어야 하고 및/또는 제1 기준 세트에 대한 제1 영역에 대해 결정한 횟수 및/또는 빈도보다 더 큰 빈도로 배치되어야 함을 정의하는 제1 기준 세트에 대한 제2 영역에 대해 모니터링 파라미터들을 결정할 것이다.
일부 구현예들에서, 특정 기준이 만족될 때 영역에서 발생한 이동량에 근거하여 상기 모니터링 파라미터들을 결정하는 것은 엔진(162)에 의해 결정된 미처리 양(raw quantity)에 기초하여 모니터링 파라미터들을 결정하는 것을 포함한다. 예를 들어, 상기 미처리 양이 50 미만인 경우 제1 모니터링 파라미터들이 결정될 수 있고, 상기 미처리 양이 50 내지 100인 경우 제2 모니터링 파라미터들이 결정될 수 있다. 일부 구현예들에서, 특정 기준이 만족될 때 영역에서 발생한 이동량에 근거하여 상기 모니터링 파라미터들을 결정하는 것은 엔진(162)에 의해 결정된 상기 양의 정규화에 근거하여 또는 상기 양의 일부 다른 변환에 근거하여 상기 양을 결정하는 것을 포함한다. 예를 들어, 일부 구현예들에서, 엔진(162)에 의해 결정된 미처리 양은 미처리 이동량에 의해 표현된 날들(days), 시간 및/또는 주들(weeks)의 수와 같은 하나 이상의 값들에 대해 정규화될 수 있다. 예를 들어, 상기 양이 마지막 날의 영역에서 발생한 이동량 근거한 경우, 그 양은 시간당 평균 이동량(예를 들어, 24로 나누어진 미처리 양)으로 정규화될 수 있다. 다른 예로서, 상기 양이 지난 1시간 동안 영역에서 발생한 이동량에 근거한 경우, 그 양은 분당 평균 이동량(예를 들어, 60으로 나누어진 미처리 양)으로 정규화될 수 있다. 또 다른 예로서, 상기 양이 지난 52주 동안 화요일에 발생한 이동량인 경우, 그 양은 하루 평균 이동량(예를 들어, 52로 나누어진 미처리 양)으로 정규화될 수 있다.
하나의 특정 예로서, 엔진(162)에 의해 결정된 모든 양은 분당 평균 이동량으로 정규화될 수 있다. 모니터링 파라미터 엔진(164)은 분당 평균 이동량이 1보다 작은 경우 제1 모니터링 파라미터들을 결정할 수 있고, 분당 평균 이동량이 1 내지 5인 경우 제2 모니터링 파라미터들을 결정하고, 분당 평균 이동량이 6 내지 10인 경우 제3 모니터링 파라미터들을 결정할 수 있다. 상기 제3 모니터링 파라미터들은 제2 모니터링 파라미터들보다 상기 영역에서 더 많은 이동 로봇들의 양 및/또는 상기 영역에서 더 많은 로봇 이동 빈도를 정의할 수 있고, 상기 제2 모니터링 파라미터들은 제1 모니터링 파라미터들보다 더 많은 양 및/또는 더 많은 빈도를 정의할 수 있다.
여기에 설명된 바와 같이, 모니터링 파라미터 엔진(164)은 모니터링 파라미터들의 복수의 인스턴스들(instances)을 결정할 수 있으며, 상기 인스턴스들 각각은 상기 환경의 하나 이상의 해당 영역들 및 하나 이상의 해당 기준과 연관된다. 상기 모니터링 파라미터들의 하나 이상의 인스턴스들 각각에 대해, 명령 엔진(166)은 이들 모니터링 파라미터들에 근거하고, 이들 모니터링 파라미터들에 대응하는 기준이 만족될 때 미래 시간 기간에서 이동 로봇들(130A-N)의 이동의 하나 이상의 양태에 영향을 주는 명령들(145)을 상기 이동 로봇들(130A-N)에 제공한다. 이동 로봇들(130A-N)의 이동의 하나 이상의 양태가 미래 시간 기간에 영향을 줌으로써, 상기 제공된 명령들(145)은 그 미래 시간 기간 동안, 이들 모니터링 파라미터들에 대응하는 하나 이상의 영역들에서의 객체 관측들의 양에 영향을 줄 것이다.
일부 구현예들에서, 상기 명령들(145)은 상기 모니터링 파라미터들이 결정된 하나 이상의 영역들로 이동하도록 상기 이동 로봇들(130A-N)의 양을 명시적으로 지시할 수 있으며, 여기서 상기 양은 상기 모니터링 파라미터들을 기반으로 한다. 예를 들어, 상기 모니터링 파라미터들이 적어도 5대의 이동 로봇들이 배치되어야 한다고 정의하는 경우, 상기 명령들은 5대 이상의 이동 로봇들(130A-N)을 하나 이상의 영역으로 향하게 할 수 있고 및/또는 최대 5대까지 이용 가능한 이동 로봇들(130A-N)을 하나 이상의 영역들로 향하게 할 수 있다.
일부 구현예들에서, 상기 명령들(145)은 상기 이동 로봇들(130A-N)이 상기 미래 시간 기간 동안 그 영역을 조우하는 경로를 선택할 가능성에 영향을 줄 수 있다. 예를 들어, 상기 명령들(145)은 이동 로봇들(130A-N) 중 하나 이상이 "가장 짧은" 경로 또는 다른 한편으로는 "최적" 경로로부터 상기 시간 기간 동안 그 영역을 방문하는 위치로 "우회(divert)"할 가능성을 증가시키거나 감소시킬 수 있다(예를 들어, 하나 이상의 이동 로봇들(130A-N)이 우회할 거리를 증가 및/또는 감소시킬 수 있다). 예를 들어, 상기 모니터링 파라미터들이 로봇들이 비교적 높은 빈도로 상기 영역에 배치되어야 한다고 정의하는 경우, 상기 명령들(145)은 이동 로봇들(130A-N)이 최적 경로에서 100야드까지 우회하도록 지시할 수 있으며, 이렇게 할 경우 상기 로봇들을 상기 영역을 통해 이동(lead)시킬 수 있다. 다른 한편으로, 상기 모니터링 파라미터들이 로봇들이 상대적으로 낮은 빈도로 상기 영역에 배치되어야 한다고 정의하는 경우, 상기 명령들(145)은 이동 로봇들(130A-N)이 최적 경로에서 15야드까지 우회하도록 지시할 수 있으며, 이렇게 할 경우 상기 로봇들(130A-N)을 상기 영역을 통해 이동시킬 수 있다.
일부 구현예들에서, 명령 엔진(166)은 모니터링 파라미터들이 모니터링 파라미터 엔진(164)에 의해 결정된 임의의 기준의 만족여부를 모니터링하고, 모니터링 파라미터들의 인스턴스가 결정된 기준의 만족여부에 응답하여 해당 명령들(145)을 이동 로봇들(130A-N)에 전송한다. 예를 들어, 상기 기준이 특정 시간 기간(예를 들어, 15:00-17:00의 화요일)으로 구성되는 경우, 명령 엔진(166)은 특정 시간 기간(예를 들어, 15:00-17:00 내의 임의의 시간의 화요일)의 발생(occurrence)을 모니터링할 수 있다. 상기 발생에 응답하여, 상기 명령 엔진은 해당 모니터링 파라미터들에 근거한 명령들(145)을 전송할 수 있다. 일부 다른 구현예들에서, 명령 엔진(166)은 상기 발생에 앞서 이들 명령들에 대응하는 기준과 함께 이동 로봇들(130A-N)에 명령들(145)을 전송할 수 있다. 이러한 구현예들에서, 로봇들(130A-N)은 그 자체로 상기 기준의 만족여부를 모니터링하고, 상기 기준의 만족에 응답하여 명령들(145)에 따라 동작할 수 있다.
일부 시나리오들에서, 모니터링 파라미터들의 다수 인스턴스들에 대한 상기 기준은 소정의 시간 기간 동안 만족될 수 있다. 예를 들어, 모니터링 파라미터들의 제1 인스턴스에 "화요일 15시부터 17시까지"라는 연관된 기준이 있고, 모니터링 파라미터들의 제2 인스턴스에 "인간의 그룹 A가 존재한다"는 연관된 기준이 있다고 가정한다. 또한 화요일 15시에 인간의 그룹 A가 상기 환경에 존재한다고 가정한다. 일부 구현예들에서, 명령 엔진(166)은 모니터링 파라미터들의 제1 인스턴스 및 모니터링 파라미터들의 제2 인스턴스 모두에 근거한 명령들(145)을 발생할 수 있다. 일부 다른 구현예들에서, 명령 엔진(166)은 모니터링 파라미터들의 인스턴스들 중 단지 하나에 근거한 명령들(145)을 발생할 수 있다. 예를 들어, 명령 엔진(166)은 모니터링 파라미터들의 가장 최근에 결정된 인스턴스에만 근거한 명령들을 발생할 수 있다. 또한, 예를 들어, 명령 엔진(166)은 가장 특정하게 정의된 기준과 연관된 모니터링 파라미터들의 인스턴스에 근거하여 명령들을 발생할 수 있다. 예를 들어, "인벤토리 X가 존재하는 화요일 13시부터 15시까지"라는 연관된 기준을 갖는 제1 모니터링 파라미터들은 "화요일"의 연관된 기준을 갖는 제2 모니터링 파라미터들을 통해 이용될 수 있다.
로봇들(130A-N), 시스템(150) 및 시스템(160)은 도 1에 개별적으로 도시되어 있지만, 이에 한정되는 것은 아니다. 다양한 구현예들에서, 시공간 객체 인벤토리 발생 시스템(150)의 하나 이상의 양태들이 로봇 명령 발생 시스템(160)에서 구현될 수 있으며, 그 반대로도 구현될 수 있다. 또한, 다양한 구현예들에서, 시스템(150 및/또는 160)의 하나 이상의 양태들이 로봇들(130A-N) 중 하나 이상에서 구현될 수 있다. 예를 들어, 명령 엔진(166)의 인스턴스는 이동 로봇들(130A-N) 각각에서 구현될 수 있다. 로봇들(130A-N), 시스템(150) 및/또는 시스템(160)이 개별 컴포넌트들인 구현예들에서, 이들은 하나 이상의 유선 또는 무선 네트워크들을 통해 또는 무선, 블루투스, 적외선 등과 같은 다른 무선 기술을 이용하여 통신할 수 있다.
도 2는 시공간 객체 인벤토리의 일부를 발생하기 위해 이동 로봇의 객체 관측을 사용하는 예를 도시한다. 객체 관측들(140A)(도 1)의 객체 관측(140A1)은 도도 2에 도시되어 있고, 객체 식별자(142A1), 측정된 객체 포즈(144A1), 측정 시간(146A1) 및 측정된 소스 포즈(148A1)를 포함한다.
객체 포즈 발생 엔진(152)은 객체 포즈를 결정하도록 측정된 객체 포즈(144A1) 및 측정된 소스 포즈 (148A1) 모두를 사용한다. 예를 들어, 상기 측정된 소스 포즈(148A1)는 기준 프레임에 관련될 수 있고, 상기 측정된 객체 포즈 (144A1)는 상기 측정된 객체 포즈(145A1)를 결정하기 위해 측정이 사용된 센서에 관련될 수 있고, 상기 객체 포즈 발생 엔진(152)은 상기 측정된 객체 포즈(144A1)를 상기 기준 프레임으로 변환하기 위해 상기 측정된 소스 포즈(148A1)를 사용할 수 있다. 상기 객체 포즈는 인벤토리 발생 엔진(156)에 제공된다.
인벤토리 발생 엔진(156)은 객체 식별자(142A1), 상기 결정된 객체 포즈 및 상기 측정 시간(146A1)을 포함하는 시공간 객체 인벤토리(170)에 대한 엔트리를 발생한다.
도 2는 단일 객체 관측(140A1)과 관련하여 기술되었지만, 도 2의 기술은 추가 객체 관측들(140A-N)을 이용하여 시공간 객체 인벤토리(170)의 추가 부분들을 발생하는데 이용될 수 있는 것으로 이해된다. 객체 관측들(140A-N)은 시공간 객체 인벤토리(170)를 최신상태로 유지하도록 수신되는 것과 같이 처리될 수 있다.
도 3은 시공간 객체 인벤토리에 근거하여 이동 로봇들에 대한 모니터링 파라미터들을 결정하고, 상기 모니터링 파라미터들에 근거한 명령들을 상기 이동 로봇들에 제공하는 예를 도시한다. 도 3에 도시된 바와 같이, 기준(101)은 이동량 엔진(162)에 제공된다. 여기에 기술된 바와 같이, 상기 기준은 예를 들어 하나 이상의 특정 시간 기간, 상기 영역에 있는 하나 이상의 인간의 특정 그룹의 존재, 상기 영역에 있는 인간의 하나 이상의 특정 양들의 존재 및/또는 인벤토리 기준 중에서 하나 이상을 포함할 수 있다.
이동량 엔진(162)은 시공간 객체 인벤토리(170) 및/또는 환경 데이터 데이터베이스(177) 내의 인간에 근거하여 상기 기준(101)이 만족되었을 때 상기 환경의 영역에서 발생한 인벤토리(170)에 정의된 객체들의 이동량을 결정한다. 환경 데이터 데이터베이스(177) 내의 인간은 복수의 시간 기간들 각각에 대해, 그들의 시간 기간 동안 환경에 존재하는 하나 이상의 인간 및/또는 그들의 시간 기간 동안 환경에 존재하는 인간의 양을 나타내는 인간 존재 데이터를 포함할 수 있다. 이동량 엔진(162)은 인벤토리(170)에 나타낸 이동이 "영역 내의 하나 이상의 인간의 특정 그룹의 존재 및/또는 상기 영역 내의 인간의 하나 이상의 특정 양들의 존재" 기준을 만족하는지 여부를 결정하도록 데이터베이스(177)를 이용할 수 있다. 이동량 엔진(162)은 인벤토리(170)에 나타낸 이동이 "시간 기간 및/또는 인벤토리" 기준을 만족하는지 여부를 결정하기 위해 인벤토리(170)에 의존할 수 있다.
이동량 엔진(162)은 상기 결정된 이동량 및 상기 결정된 이동량에 대한 기준 및 영역을 모니터링 파라미터 엔진(164)에 제공한다. 모니터링 파라미터 엔진(164)은 상기 수신된 이동량에 근거하여, 기준이 또한 만족될 때의 하나 이상의 미래 시간 기간 동안 이동 로봇들에 대한 하나 이상의 모니터링 파라미터들을 결정한다. 예를 들어, 상기 이동량이 비교적 큰 경우, 엔진(164)은 상기 기준이 또한 만족될 때 하나 이상의 미래 시간 주기 동안 비교적 많은 수의 이동 로봇들이 상기 영역에 배치되어야 하는 것 및/또는 이동 로봇들이 상기 기준이 또한 만족될 때 하나 이상의 미래 시간 기간 동안 상대적으로 빈번히 상기 영역을 조우해야하는 것을 나타내는 모니터링 파라미터들을 결정할 수 있다.
모니터링 파라미터 엔진(164)은 상기 결정된 모니터링 파라미터 및 상기 영역 및 기준을 명령 엔진(166)에 제공한다. 도 3의 구현예에서, 명령 엔진(166)은 엔진(164)에 의해 제공된 상기 기준의 "현재 만족"에 대해 인벤토리(170) 및/또는 데이터베이스(177)를 모니터링한다. 상기 현재 만족을 결정하는 것에 응답하여, 명령 엔진(166)은 상기 모니터링 파라미터들에 근거하여 조정된 명령들을 이동 로봇들(130A-N)에 전송한다. 일부 구현예들에서, 명령 엔진(166)은 상기 현재 만족에 앞서 이동 로봇들(130A-N)에 명령들을 전송한다. 예를 들어, 명령 엔진(166)은 상기 현재 만족을 예상하여 상기 명령들을 제공할 수 있다 (예를 들어, 시간 기간 기준이 만족되기 전에 5분). 일부 구현예들에서, 상기 명령들은 상기 모니터링 파라미터들이 결정되는 하나 이상의 영역들로 이동하도록 이동 로봇들(130A-N)의 양을 명시적으로 지시할 수 있으며, 여기서 상기 양은 상기 모니터링 파라미터들을 기반으로 한다. 일부 구현예들에서, 상기 명령들은 이동 로봇들(130A-N)이 상기 영역을 조우하는 경로를 선택할 가능성에 영향을 줄 수 있다.
하나의 특정 예로서, 상기 기준이 상기 환경에 존재하는 인간의 양 및 특정 시간 기간으로 구성되는 경우(예를 들어, 화요일 15시부터 17시까지, 적어도 10명이 존재), 명령 엔진(166)은 그 특정 시간 기간(예를 들어, 화요일 15시부터 17시 내 임의의 시간)의 발생(occurrence)을 모니터링할 수 있고, 상기 환경에 존재하는 10명의 인간의 발생(occurrence)을 모니터링하기 위해 데이터베이스(177)에 액세스할 수 있다. 상기 발생에 응답하여, 명령 엔진(166)은 상기 모니터링 파라미터들에 근거하여 조정된 명령들을 이동 로봇들(130A-N)에 전송한다.
도 4a-4c를 참조하면, 환경을 통해 이동하고 환경 내의 객체들(105A-M)에 관한 객체 관측들을 결정 및 제공하는 로봇들(130A, 130B, 130C 및 130N)의 예들이 제공된다. 도 4a는 제1 시간에서의 빌딩의 일부의 평면도를 도시한다. 상기 제1 시간에 객체들(105A-M)은 각각의 위치에 도시되고 로봇들(130A, 130B, 130C, 130N)도 각각의 위치에 도시된다. 객체들(105A-H)은 예를 들어 박스들, 팔레트들(pallets) 및/또는 다른 객체들일 수 있다. 상기 객체들(105K-M)은 예를 들어 드럼들, 배럴들(barrels) 및/또는 다른 객체들일 수 있다. 도 4a의 상기 제1 시간에서, 하나 이상의 로봇들(130A, 130B, 130C 및 130N) 각각은 하나 이상의 객체들(105A-M)에 대한 해당 객체 관측들을 제공할 수 있다. 예를 들어, 객체(105A)는 로봇(130A)의 하나 이상의 센서들의 관측 시야(field of view)에 있을 수 있고, 로봇(130A)은 객체(105A)의 객체 식별자 및 객체(105A)에 대한 측정된 객체 포즈를 갖는 객체 관측을 제공할 수 있다.
도 4b는 도 4a의 제1 시간보다 늦은 제2 시간에서의 상기 빌딩의 일부의 평면도를 도시한다. 객체들(105A-M)은 도 4a에서와 같이 도 4b에서 동일한 포즈들을 갖는다. 그러나, 로봇들(130A, 130B, 130C, 130N)은 태스크(관측/모니터링 태스크 또는 비 관찰/모니터링 태스크)를 수행한 결과로 모두 이동했다. 도 4b의 상기 제2 시간에, 하나 이상의 로봇들(130A, 130B, 130C 및 130N) 각각은 하나 이상의 객체들(105A-M)에 대한 측정된 객체 포즈를 갖는 객체 관측들을 포함하는 해당 객체 관측들을 제공할 수 있다. 여러 번의 관측들이 도 4a의 상기 제1 시간과 도 4b의 상기 제2 시간 사이에 제공될 수 있다.
도 4c는 도 4b의 제2 시간보다 늦은 제3 시간에서의 상기 빌딩의 일부분의 평면도를 도시한다. 객체들(105K-M)은 도 4a 및 4b에서와 같이 도 4c에서 동일한 포즈들을 갖는다. 그러나, 객체들(105A-C 및 105E-M)은 하나 이상의 인간에 의한 이동, 하나 이상의 인간이 제어한 기계들에 의한 이동 및/또는 하나 이상의 로봇들(로봇들(130A, 130B, 130C, 130N) 중 하나 이상을 포함할 수 있음)에 의한 이동의 결과로 모두 다른 포즈들을 갖는다. 객체(105D)는 상기 환경 밖으로 객체(105D)가 이동됨으로써 더 이상도 도 4c에 존재하지 않는다. 또한, 로봇들(130A, 130B, 130C, 130N)은 태스크(관측/모니터링 태스크 또는 비 관측/모니터링 태스크)를 수행한 결과로 모두 이동했다. 도 4c의 상기 제3 시간에, 하나 이상의 로봇들(130A, 130B, 130C 및 130N) 각각은 하나 이상의 객체들(105A-M)에 대한 측정된 객체 포즈를 갖는 객체 관측들을 포함하는 해당 객체 관측들을 제공할 수 있다. 여러 번의 관측들이 도 4b의 상기 제2 시간과 도 4c의 상기 제3 시간 사이에 제공될 수 있다.
시공간 객체 인벤토리(170)는 여기에 설명된 기술들에 따라 도 4c에서의 변경들을 반영하도록 업데이트될 수 있다. 또한, 명령 발생 시스템(160)은 도 4b 및 도 4c 사이에서 발생한 객체(105D)의 이동을 고려하여 모니터링 파라미터들을 결정하고(그리고 객체들의 다른 일시적으로 개별 이동을 고려하여), 그리고 이러한 모니터링 파라미터들을 이용하여 미래 시간 기간에 로봇들(130A, 130B 및 130N)에 제어 명령들을 제공할 수 있으며, 여기서 상기 제어 명령들은 상기 모니터링 파라미터들에 근거하고, 미래 시간 기간에서 로봇들(130A, 130B 및 130N)의 이동의 하나 이상의 양태들에 영향을 미친다.
도 5는 이동 로봇들로부터의 객체 관측들에 근거하여 시공간 객체 인벤토리를 발생하고, 상기 시공간 객체 인벤토리에 근거하여 하나 이상의 미래 시간 기간 동안 상기 이동 로봇들에 대한 모니터링 파라미터들을 결정하는 예시적인 방법을 도시하는 흐름도이다. 편의상, 상기 흐름도의 동작들은 그 동작을 수행하는 시스템을 참조하여 설명된다. 이 시스템은 도 1의 시공간 객체 인벤토리 발생 시스템(150) 및/또는 로봇 명령 발생 시스템(160)과 같은 다양한 컴퓨터 시스템들의 다양한 컴포넌트들을 포함할 수 있다. 또한, 방법(500)의 동작들이 특정 순서로 도시되어 있지만, 이에 한정되는 것은 아니다. 하나 이상의 동작들은 재정리, 생략 또는 추가될 수 있다.
블록(502)에서, 상기 시스템은 환경 내의 복수의 이동 로봇들로부터 상기 환경 내의 객체들에 대한 객체 관측들을 수신한다. 상기 객체 관측들 각각은 객체의 식별자 및 상기 객체에 대한 측정 된 객체 포즈를 적어도 포함한다.
블록(504)에서, 상기 시스템은 블록(502)에서 수신된 객체 관측들에 근거하여 시공간 객체 인벤토리를 발생한다. 상기 발생된 시공간 모델은 상기 환경의 복수의 객체들 각각에 대한 객체 포즈 및 해당 측정 시간을 정의한다.
블록(506)에서, 상기 시스템은 상기 시공간 객체 인벤토리에 근거하여 하나 이상의 기준이 만족될 때 발생된 객체들의 이동량을 결정한다. 상기 기준은 예를 들어, 하나 이상의 특정 시간 기간, 상기 영역 내의 하나 이상의 인간의 특정 그룹의 존재, 상기 영역 내의 하나 이상의 특정 양들의 인간의 존재 및/또는 인벤토리 기준 중에서 하나 이상을 포함할 수 있다.
블록(508)에서, 상기 시스템은 하나 이상의 기준이 만족될 때 발생된 객체들의 이동량에 근거하여, 상기 기준이 또한 만족될 때 하나 이상의 미래 시간 기간 동안 상기 이동 로봇들에 대한 모니터링 파라미터들을 결정한다.
블록(510)에서, 상기 시스템은 상기 모니터링 파라미터들에 근거하고 상기 미래 시간 기간에서 상기 이동 로봇들의 이동에 영향을 미치는 명령들을 하나 이상의 이동 로봇들에 제공한다.
도 6은 로봇의 예시적인 아키텍처를 개략적으로 도시한다. 로봇(600)은 텔레프레즌스 로봇, 휴머노이드 형태, 동물 형태, 휠 장치, 잠수정 차량, 무인 공중 차량("UAV") 등을 포함하는 다양한 형태를 취할 수 있지만, 이에 한정되지는 않는다. 다양한 구현예들에서, 로봇(600)은 제어기(602)를 포함할 수 있다. 제어기(602)는 하나 이상의 프로세서들, 하나 이상의 FPGA(field-programmable gate arrays), 하나 이상의 주문형 집적 회로("ASIC"), 하나 이상의 소위 "실시간 제어기들 "등과 같은 다양한 형태를 취할 수 있다.
다양한 구현예들에서, 제어기(602)는 예를 들어 하나 이상의 버스(610)를 통해 하나 이상의 액추에이터들(604a-n) 및/또는 하나 이상의 센서들(608a-m)과 동작 가능하게 결합될 수 있다. 센서들(608a-m)은 3D 센서들, 카메라들, 깊이 센서들, 광 센서들, 압력 센서들, 압력 파 센서들(예를 들어, 마이크로폰들), 근접 센서들, 가속도계들, 자이로 스코프들, 온도계들, 기압계들 등을 포함하는 다양한 형태를 취할 수 있지만, 이에 한정되지는 않는다. 센서들(608a-m)은 로봇(600)과 일체로 도시되어 있지만, 이것에 한정되는 것은 아니다. 일부 구현예들에서, 하나 이상의 센서들(608a-m)은 예컨대 독립형 유닛들로서 로봇(600)의 외부에 위치될 수 있다.
제어기(602)는 하나 이상의 태스크들을 수행하기 위해 액추에이터들(604a-n)에 제어 명령들을 제공할 수 있다. 이러한 제어 명령들은 로봇(600)이 자율적으로, 반 자율적으로, 및/또는 컴퓨팅 장치에서 사용자 인터페이스 입력에 응답하여 그 컴퓨팅 장치에 의해 제공되는 제어 명령들에 응답하여, 하나 이상의 경로를 주행할 수 있도록 휠들 및/또는 다른 컴포넌트들을 구동하도록 액추에이터들(604a-n)을 지시하는 명령들을 포함한다. 제어기(602)는 여기에 기술된 객체 관측들의 전체 또는 부분들을 발생하기 위한 제어 명령들을 더 제공할 수 있고, 및/또는 로봇 명령 발생 시스템(160)에 의해 제공된 하나 이상의 명령들(145)을 수신하고, 상기 명령들(145)에 근거한 하나 이상의 제어 명령들을 발생할 수 있다. 예를 들어, 제어기(602)는 하나 이상의 액추에이터들(604a-n)에 제어 명령들을 제공하여 로봇(600)을 자율적으로 상기 환경 내의 다양한 위치로 네비게이트시킬 수 있으며, 이들 제어 명령들은 명령들(145)을 고려하여 로봇(600)에 의해 발생된다. 또한, 예를 들어, 제어기(602)는 네트워크 인터페이스 서브시스템(615)을 통해 시공간 객체 인벤토리 발생 시스템(150) 및/또는 로봇 명령 발생 시스템(160)과 네트워크 연결을 설정할 수 있다. 네트워크 인터페이스 서브시스템(615)은 외부 네트워크들에 인터페이스를 제공하고, 로봇과의 세션에 관여하는 컴퓨팅 장치와 같은 하나 이상의 다른 컴퓨터 시스템들의 하나 이상의 해당 인터페이스 장치에 결합된다. 일부 구현예들에서, 로봇(600)은 다른 컴포넌트들 이외에도 아래에 설명된 컴퓨터 시스템(710)과 같은 컴퓨터 시스템의 하나 이상의 부분들을 통합할 수 있다.
도 7은 예시적인 컴퓨터 시스템(710)의 블록도이다. 컴퓨터 시스템(710)은 전형적으로 버스 서브시스템(712)을 통해 다수의 주변 장치들과 통신하는 적어도 하나의 프로세서(714)를 포함한다. 이러한 주변 장치들은 예를 들어 메모리 서브시스템(725) 및 파일 저장 서브시스템(726), 사용자 인터페이스 출력 장치(720), 사용자 인터페이스 입력 장치(722) 및 네트워크 인터페이스 서브시스템(716)을 포함하는 저장 서브시스템 (724)을 포함할 수 있다. 상기 입력 및 출력 장치들은 컴퓨터 시스템(710)과 사용자 상호 작용을 가능하게 한다. 네트워크 인터페이스 서브시스템(716)은 외부 네트워크들에 인터페이스를 제공하고, 다른 컴퓨터 시스템의 해당 인터페이스 장치들에 결합된다.
사용자 인터페이스 입력 장치들(722)은 키보드, 마우스, 트랙볼, 터치 패드, 또는 그래픽 태블릿과 같은 포인팅 장치, 스캐너, 디스플레이에 통합된 터치스크린, 음성 인식 시스템, 마이크로폰 및/또는 다른 유형의 입력 장치들과 같은 오디오 입력 장치들을 포함할 수 있다. 일반적으로, 용어 "입력 장치"의 사용은 컴퓨터 시스템(710) 또는 통신 네트워크상에 정보를 입력하는 모든 가능한 유형의 장치들 및 방법들을 포함하도록 의도된다.
사용자 인터페이스 출력 장치들(720)은 디스플레이 서브시스템, 프린터, 팩스 머신, 또는 오디오 출력 장치들과 같은 비 시각적 디스플레이들을 포함할 수 있다. 상기 디스플레이 서브시스템은 음극선관(CRT), 액정 디스플레이(LCD)와 같은 평판 장치, 프로젝션 장치, 또는 가시성 이미지를 생성하기 위한 다른 메커니즘을 포함할 수 있다. 상기 디스플레이 서브시스템은 또한 오디오 출력 장치들을 통한 비 시각적 디스플레이를 제공할 수 있다. 일반적으로, 용어 "출력 장치"의 사용은 컴퓨터 시스템(710)으로부터 사용자 또는 다른 기계 또는 컴퓨터 시스템으로 정보를 출력하는 모든 가능한 유형의 장치들 및 방법들을 포함하도록 의도된다.
저장 서브시스템(724)은 여기에 설명된 일부 또는 모든 모듈들의 기능을 제공하는 프로그래밍 및 데이터 구조를 저장한다. 예를 들어, 저장 서브시스템(724)은 방법(500)의 선택된 양태들을 수행하는 로직 및/또는 제어기(602), 엔진(152), 엔진(154), 엔진(162), 엔진(164) 및/또는 엔진 (166)의 하나 이상의 양태들을 구현하기 위한 로직을 포함할 수 있다. 저장 서브시스템(724)에서 사용되는 메모리(725)는 프로그램 실행 중 명령어들 및 데이터의 저장을 위한 메인 랜덤 액세스 메모리(RAM)(730) 및 고정된 명령어들이 저장되는 판독 전용 메모리(ROM)(732)를 포함하는 다수의 메모리를 포함할 수 있다. 파일 저장 서브시스템(726)은 프로그램 및 데이터 파일들을 위한 영구적인 저장소를 제공할 수 있고, 하드 디스크 드라이브, CD-ROM 드라이브, 광 드라이브 또는 이동식 매체 카트리지들을 포함할 수 있다. 소정의 구현예들의 기능을 구현하는 모듈들은 저장 서브시스템(724)의 파일 저장 서브시스템(726) 또는 프로세서(들)(714)에 의해 액세스 가능한 다른 머신들에 저장될 수 있다.
버스 서브시스템(712)은 컴퓨터 시스템(710)의 서브시스템들 및 다양한 컴포넌트들이 의도 한대로 서로 통신하게 하는 메커니즘을 제공한다. 버스 서브시스템(712)은 단일 버스로서 개략적으로 도시되어 있지만, 버스 서브시스템의 다른 구현 예들이 복수의 버스를 사용할 수 있다.
컴퓨터 시스템(710)은 워크스테이션, 서버, 컴퓨팅 클러스터, 블레이드 서버, 서버 팜, 스마트폰, 스마트 시계, 스마트 안경, 셋톱 박스, 태블릿 컴퓨터, 랩탑 또는 임의의 다른 데이터 처리 시스템 또는 컴퓨팅 장치를 포함하는 다양한 유형들이 될 수 있다. 컴퓨터들 및 네트워크들의 끊임없이 변화하는 특성으로 인해, 도 7에 도시된 컴퓨터 시스템(710)의 설명은 단지 일부 구현예들을 설명하기 위한 구체적인 예로만 의도된다. 컴퓨터 시스템(710)의 많은 다른 구성들이 도 7에 도시한 컴퓨터 시스템보다 많거나 적은 컴포넌트들을 갖는 것이 가능하다.

Claims (20)

  1. 시스템으로서,
    하나 이상의 컴퓨팅 시스템들;
    시간 기간 동안 상기 하나 이상의 컴퓨팅 시스템들에 객체 관측들을 제공하는 환경 내의 복수의 로봇들을 포함하고, 상기 객체 관측들 각각은:
    해당 객체에 대한 객체 식별자 -상기 객체 식별자는 상기 이동 로봇들 중 해당하는 하나의 하나 이상의 센서들로부터의 센서 데이터에 근거하여 결정되며, 그리고
    상기 해당 객체의 객체 포즈를 나타내는 상기 객체 식별자에 대한 측정된 객체 포즈를 포함하며, 상기 하나 이상의 컴퓨팅 시스템들은 상기 하나 이상의 컴퓨팅 시스템들에 의해 실행될 때, 상기 하나 이상의 컴퓨팅 시스템들로 하여금 동작들을 수행하도록 하는 명령어들을 포함하며, 상기 동작들은
    상기 객체 식별자들, 상기 측정된 객체 포즈 및 상기 객체 관측들의 측정 시간들에 근거하여 시공간 객체 인벤토리를 발생하는 동작 -상기 시공간 객체 인벤토리는 상기 객체 관측들의 상기 객체 식별자들에 의해 나타낸 복수의 객체들 각각에 대해, 상기 객체에 대한 하나 이상의 포즈들 및 상기 포즈들에 대한 해당 측정 시간들을 정의하며-,
    상기 시공간 객체 인벤토리에 근거하여, 하나 이상의 기준이 만족될 때 발생된 상기 객체들의 이동량을 결정하는 동작 -상기 객체들의 이동은 상기 환경의 적어도 하나의 영역으로의 상기 객체들의 이동, 그리고 상기 환경의 상기 영역 밖으로의 상기 객체들의 이동 중 적어도 하나를 포함하며-,
    상기 기준이 만족될 때 발생된 상기 이동량에 근거하여, 상기 기준이 또한 만족될 때 하나 이상의 미래 시간 기간들 동안 상기 이동 로봇들에 대한 하나 이상의 모니터링 파라미터들을 결정하는 동작,
    상기 이동 로봇들 중 하나 이상의 이동 로봇에 상기 모니터링 파라미터들에 근거한 명령들을 제공하는 동작을 포함하며,
    상기 명령들을 수신하는 상기 이동 로봇들 중 상기 하나 이상의 이동 로봇은 상기 명령들을 근거로 상기 미래 시간 기간들에서 그들의 이동의 하나 이상의 양태를 제어함으로써, 상기 환경의 상기 영역에 대한, 상기 미래 시간 기간들에서 상기 이동 로봇들 중 상기 하나 이상의 이동 로봇에 의해 제공된 미래 객체 관측들의 양(quantity)에 영향을 주는 것을 특징으로 하는 시스템.
  2. 제1항에 있어서,
    상기 하나 이상의 기준은 특정 시간 기간을 포함하고, 그리고
    상기 명령어들은 상기 하나 이상의 컴퓨팅 시스템들에 의해 실행될 때, 상기 하나 이상의 컴퓨팅 시스템들로 하여금,
    상기 특정 시간 기간 동안 발생된 상기 객체들의 이동을 결정하는 것에 근거하여 상기 하나 이상의 기준이 만족될 때 발생된 상기 객체들의 이동을 결정하도록 하는 명령어들을 더 포함하는 시스템.
  3. 제2항에 있어서,
    상기 특정 시간 기간은,
    주중 하나 이상의 특정 요일들,
    년 중 하나 이상의 특정 날들, 또는
    상기 주중 상기 특정 요일들 또는 상기 년 중 상기 날들 중에서 하나 이상 동안의 하나 이상의 시간 기간, 중에서 하나인 시스템.
  4. 제1항에 있어서,
    상기 하나 이상의 기준은 상기 영역 내의 하나 이상의 인간의 그룹의 존재를 포함하며,
    상기 명령어들은, 상기 하나 이상의 컴퓨팅 시스템들에 의해 실행될 때, 상기 하나 이상의 컴퓨팅 시스템들로 하여금,
    상기 하나 이상의 인간의 그룹이 상기 영역에 존재할 때 복수의 시간 기간들을 나타내는 인간 존재 데이터를 수신하도록 하고, 그리고
    상기 그룹이 상기 영역에 존재할 때 상기 시간 기간들 중 하나 동안 발생된 상기 객체들의 이동을 결정하는 것에 근거하여 상기 하나 이상의 기준이 만족되었을 때 발생된 상기 객체들의 이동을 결정하도록 하는 명령어들을 더 포함하는 시스템.
  5. 제1항에 있어서,
    상기 하나 이상의 기준은 상기 영역 내의 하나 이상의 인간의 하나 이상의 특정 양들(quantities)을 포함하고, 그리고
    상기 명령어들은, 상기 하나 이상의 컴퓨팅 시스템들에 의해 실행될 때, 상기 하나 이상의 컴퓨팅 시스템들로 하여금,
    상기 하나 이상의 인간의 상기 하나 이상의 특정 양들이 상기 영역에 존재할 때 복수의 시간 기간들을 나타내는 인간 양 데이터를 수신하도록 하고, 그리고
    상기 하나 이상의 특정 양들이 상기 영역에 존재할 때 상기 시간 기간들 중 하나 동안에 발생된 상기 객체들의 이동을 결정하는 것에 근거하여 상기 하나 이상의 기준이 만족되었을 때 발생된 상기 객체들의 이동을 결정하도록 하는 명령어들을 더 포함하는 시스템.
  6. 제1항에 있어서,
    상기 하나 이상의 기준은 상기 환경의 인벤토리 기준을 포함하며, 그리고
    상기 명령어들은 상기 하나 이상의 컴퓨팅 시스템들에 의해 실행될 때, 상기 하나 이상의 컴퓨팅 시스템들로 하여금,
    상기 인벤토리 기준이 상기 환경에 존재할 때 상기 객체 이동이 발생했는지를 결정하는 것에 근거하여 상기 하나 이상의 기준이 만족될 때 발생된 상기 객체들의 이동을 결정하도록 하는 명령어들을 더 포함하는 시스템.
  7. 컴퓨터로 구현되는 방법으로서,
    하나 이상의 컴퓨터들의 시스템에 의해, 환경 내의 복수의 이동 로봇들로부터의 객체 관측들을 수신하는 단계로서, 복수의 상기 객체 관측들 각각은,
    해당 객체에 대한 객체 식별자 -상기 객체 식별자는 상기 이동 로봇들 중 해당하는 하나의 하나 이상의 센서들로부터의 센서 데이터에 근거하여 결정되며-,
    상기 해당 객체의 객체 포즈를 나타내는 상기 객체 식별자에 대한 측정된 객체 포즈를 포함하며;
    상기 시스템에 의해, 상기 객체 식별자들, 상기 측정된 객체 포즈 및 상기 객체 관측들의 측정 시간들에 근거하여 시공간 객체 인벤토리를 발생하는 단계 -상기 시공간 객체 인벤토리는 상기 객체 관측들의 상기 객체 식별자들에 의해 나타낸 복수의 객체들 각각에 대해, 상기 객체에 대한 하나 이상의 포즈들 및 상기 포즈들에 대한 해당 측정 시간들을 정의하며-;
    상기 시스템에 의해, 그리고 상기 시공간 객체 인벤토리에 근거하여, 하나 이상의 기준이 만족될 때 발생된 상기 객체들의 이동량을 결정하는 단계 -상기 객체들의 이동은 상기 환경의 적어도 하나의 영역으로의 상기 객체들의 이동 및 상기 환경의 상기 영역 밖으로의 상기 객체들의 이동 중에서 적어도 하나를 포함하며-;
    상기 시스템에 의해, 그리고 상기 기준이 만족될 때 발생된 상기 이동량에 근거하여, 상기 기준이 또한 만족될 때 하나 이상의 미래 시간 기간들 동안 상기 이동 로봇들에 대한 하나 이상의 모니터링 파라미터들을 결정하는 단계; 그리고
    상기 시스템에 의해, 상기 모니터링 파라미터들에 근거한 명령들을 상기 이동 로봇들 중에서 하나 이상에 제공하는 단계를 포함하며,
    상기 명령들은 상기 미래 시간 기간들에서 상기 이동 로봇들의 이동의 하나 이상의 양태에 영향을 주고, 결과적으로 상기 미래 시간 기간들에서 수신된 상기 환경의 상기 영역에 대한 상기 객체 관측들의 양(quantity)에 영향을 주는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  8. 제7항에 있어서,
    상기 하나 이상의 기준은 특정 시간 기간을 포함하며,
    상기 시스템에 의해, 상기 특정 시간 기간 동안 발생된 상기 객체들의 이동을 결정하는 것에 근거하여 상기 하나 이상의 기준이 만족될 때 발생된 상기 객체들의 이동을 결정하는 단계를 더 포함하는 컴퓨터로 구현되는 방법.
  9. 제8항에 있어서, 상기 특정 시간 기간은,
    주중 하나 이상의 특정 요일들,
    년 중 하나 이상의 특정 날들, 또는
    상기 주중 상기 특정 요일들 또는 상기 년 중 상기 날들 중에서 하나 이상 동안의 하나 이상의 시간 기간, 중에서 하나인 컴퓨터로 구현되는 방법.
  10. 제8항에 있어서, 상기 하나 이상의 기준이 만족될 때 발생된 상기 객체들의 이동을 결정하는 단계는,
    상기 객체에 대한 상기 포즈들의 제1 포즈가 상기 영역의 외부에 있고, 상기 시간 기간 전에 일시적으로 해당 측정 시간들중 제1 해당 측정 시간을 갖는지를 결정하는 것과, 그리고 상기 객체에 대한 상기 포즈들의 제2 포즈가 상기 영역 내에 있고, 상기 시간 기간 내에 일시적으로 상기 해당 측정 시간들중 제2 해당 측정 시간을 갖는지를 결정하는 것에 근거하여,
    상기 시스템에 의해, 상기 특정 시간 기간 동안 상기 객체가 상기 영역으로 이동하는 이동이 발생했는지를 결정하는 단계를 포함하는 컴퓨터로 구현되는 방법.
  11. 제8항에 있어서, 상기 하나 이상의 기준이 만족될 때 발생된 상기 객체들의 이동을 결정하는 단계는,
    상기 시간 기간 전에 일시적인 포즈가 상기 시공간 객체 인벤토리 내의 상기 객체에 대해 정의되어 있지 않는지를 결정하는 것과, 그리고 상기 객체에 대한 상기 포즈들의 포즈가 상기 영역 내에 있고, 상기 시간 기간 내에 일시적으로 상기 해당 측정 시간들중 해당 측정 시간을 갖는지를 결정하는 것에 근거하여,
    상기 시스템에 의해, 상기 특정 시간 기간 동안 상기 객체가 상기 영역으로 이동하는 이동이 발생했는지를 결정하는 단계를 포함하는 컴퓨터로 구현되는 방법.
  12. 제8항에 있어서, 상기 하나 이상의 기준이 만족될 때 발생된 상기 객체들의 이동을 결정하는 단계는,
    상기 객체에 대한 상기 포즈들의 제1 포즈가 상기 영역 내에 있고, 상기 시간 기간 전에 일시적으로 상기 해당 측정 시간들중 제1 해당 측정 시간을 갖는지를 결정하는 것과, 그리고 상기 객체에 대한 상기 포즈들의 제2 포즈가 상기 영역의 외부에 있고, 상기 시간 기간 내에 일시적으로 상기 해당 측정 시간들중 제2 해당 측정 시간을 갖는지를 결정하는 것에 근거하여,
    상기 시스템에 의해, 상기 특정 시간 기간 동안 상기 객체가 상기 영역으로 이동하는 이동이 발생했는지를 결정하는 단계를 포함하는 컴퓨터로 구현되는 방법.
  13. 제7항에 있어서,
    상기 하나 이상의 기준은 상기 영역 내의 하나 이상의 인간의 그룹의 존재를 포함하며,
    상기 시스템에 의해, 상기 하나 이상의 인간의 그룹이 상기 영역에 존재할 때 복수의 시간 기간들을 나타내는 인간 존재 데이터를 수신하는 단계; 그리고

    상기 그룹이 상기 영역에 존재할 때 상기 시간 기간들 중 하나 동안 발생된 상기 객체들의 이동을 결정하는 것에 근거하여 상기 하나 이상의 기준이 만족되었을 때 발생된 상기 객체들의 이동을 결정하는 단계를 더 포함하는 컴퓨터로 구현되는 방법.
  14. 제7항에 있어서,
    상기 하나 이상의 기준은 상기 영역 내의 하나 이상의 인간의 하나 이상의 특정 양들(quantities)을 포함하며,
    상기 시스템에 의해, 상기 하나 이상의 인간의 상기 하나 이상의 특정 양들이 상기 영역에 존재할 때 복수의 시간 기간들을 나타내는 인간 양 데이터를 수신하는 단계; 그리고
    상기 하나 이상의 특정 양들이 상기 영역에 존재할 때 상기 시간 기간들 중 하나 동안에 발생된 상기 객체들의 이동을 결정하는 것에 근거하여 상기 하나 이상의 기준이 만족되었을 때 발생된 상기 객체들의 이동을 결정하는 단계를 더 포함하는 컴퓨터로 구현되는 방법.
  15. 제7항에 있어서,
    상기 하나 이상의 기준은 상기 환경의 인벤토리 기준을 포함하며,
    상기 인벤토리 기준이 상기 환경에 존재할 때 상기 객체 이동이 발생했는지를 결정하는 것에 근거하여 상기 하나 이상의 기준이 만족될 때 발생된 상기 객체들의 이동을 결정하는 단계를 더 포함하는 컴퓨터로 구현되는 방법.
  16. 제15항에 있어서,
    상기 환경의 상기 인벤토리 기준은 상기 환경의 상기 영역에 한정된 인벤토리 기준인 컴퓨터로 구현되는 방법.
  17. 제7항에 있어서, 상기 영역은 상기 환경의 서브세트인 컴퓨터로 구현되는 방법.
  18. 제7항에 있어서, 상기 모니터링 파라미터들에 근거하여 상기 미래 시간 기간들에서 상기 이동 로봇들의 이동의 하나 이상의 양태에 영향을 주는 상기 명령들은 상기 미래 시간 기간들 동안 상기 이동 로봇들을 상기 영역으로 향하게 하는 명령들을 포함하는 컴퓨터로 구현되는 방법.
  19. 제7항에 있어서,
    상기 모니터링 파라미터들에 근거하여 상기 미래 시간 기간들에서 상기 이동 로봇들의 이동의 하나 이상의 양태에 영향을 주는 상기 명령들은 상기 이동 로봇들이 상기 미래 시간 기간들 동안 상기 영역을 조우하는 경로를 선택할 가능성을 증가시키는 명령들을 포함하는 컴퓨터로 구현되는 방법.
  20. 컴퓨터로 구현되는 방법으로서,
    하나 이상의 컴퓨터들의 시스템에 의해, 환경 내의 복수의 이동 로봇들로부터의 객체 관측들을 수신하는 단계로서, 복수의 상기 객체 관측들 각각은,
    해당 객체에 대한 객체 식별자 -상기 객체 식별자는 상기 이동 로봇들 중 해당하는 하나의 하나 이상의 센서들로부터의 센서 데이터에 근거하여 결정되며-,
    상기 해당 객체의 객체 포즈를 나타내는 상기 객체 식별자에 대한 측정된 객체 포즈를 포함하며;
    상기 시스템에 의해, 상기 객체 식별자들, 상기 측정된 객체 포즈 및 상기 객체 관측들의 측정 시간들에 근거하여 시공간 객체 인벤토리를 발생하는 단계 -상기 시공간 객체 인벤토리는 상기 객체 관측들의 상기 객체 식별자들에 의해 나타낸 복수의 객체들 각각에 대해, 상기 객체에 대한 하나 이상의 포즈들 및 상기 포즈들에 대한 해당 측정 시간들을 정의하며, 복수의 상기 포즈들 각각은 상기 해당 객체의 위치가 상기 해당 측정 시간 동안 알려지지 않았음을 나타내며-;
    상기 시스템에 의해, 그리고 상기 시공간 객체 인벤토리에 근거하여, 하나 이상의 기준이 만족될 때 발생된 상기 객체들의 알려지지 않은 이동량을 결정하는 단계 -상기 객체들의 알려지지 않은 이동은 상기 해당 객체의 상기 위치가 상기 해당 측정 시간 동안 알려지지 않았음을 나타내는 상기 포즈들에 근거하여 결정되며-;
    상기 시스템에 의해, 그리고 상기 기준이 만족될 때 발생된 상기 알려지지 않은 이동량에 근거하여, 상기 기준이 또한 만족될 때 하나 이상의 미래 시간 기간들 동안 상기 이동 로봇들에 대한 하나 이상의 모니터링 파라미터들을 결정하는 단계; 그리고
    상기 시스템에 의해, 상기 모니터링 파라미터들에 근거한 명령들을 상기 이동 로봇들 중에서 하나 이상에 제공하는 단계를 포함하며,
    상기 명령들은 상기 미래 시간 기간들에서 상기 이동 로봇들의 이동의 하나 이상의 양태에 영향을 주고, 결과적으로 상기 미래 시간 기간들에서 수신된 상기 환경의 상기 영역에 대한 상기 객체 관측들의 양(quantity)에 영향을 주는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
KR1020187009186A 2015-09-10 2016-09-09 시공간 객체 인벤토리를 발생하도록 이동 로봇들의 객체 관측들을 이용하고, 이동 로봇들에 대한 모니터링 파라미터들을 결정하도록 인벤토리를 이용 KR20180067523A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/850,909 US10195740B2 (en) 2015-09-10 2015-09-10 Using object observations of mobile robots to generate a spatio-temporal object inventory, and using the inventory to determine monitoring parameters for the mobile robots
US14/850,909 2015-09-10
PCT/US2016/051109 WO2017044851A1 (en) 2015-09-10 2016-09-09 Using object observations of mobile robots to generate a spatio-temporal object inventory, and using the inventory to determine monitoring parameters for the mobile robots

Publications (1)

Publication Number Publication Date
KR20180067523A true KR20180067523A (ko) 2018-06-20

Family

ID=56990972

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187009186A KR20180067523A (ko) 2015-09-10 2016-09-09 시공간 객체 인벤토리를 발생하도록 이동 로봇들의 객체 관측들을 이용하고, 이동 로봇들에 대한 모니터링 파라미터들을 결정하도록 인벤토리를 이용

Country Status (7)

Country Link
US (3) US10195740B2 (ko)
EP (1) EP3335090B1 (ko)
JP (1) JP2018530089A (ko)
KR (1) KR20180067523A (ko)
CN (2) CN113687652A (ko)
TW (1) TWI629150B (ko)
WO (1) WO2017044851A1 (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10195740B2 (en) 2015-09-10 2019-02-05 X Development Llc Using object observations of mobile robots to generate a spatio-temporal object inventory, and using the inventory to determine monitoring parameters for the mobile robots
SG11201805378XA (en) * 2016-01-04 2018-07-30 Zhejiang Libiao Robots Co Ltd Method and device for returning robots from site
MX2018013500A (es) * 2016-05-04 2019-07-08 Walmart Apollo Llc Sistemas distribuidos de robot autónomo y métodos.
US11036946B2 (en) * 2016-05-07 2021-06-15 Canyon Navigation, LLC Navigation using self-describing fiducials
US10417469B2 (en) * 2016-05-07 2019-09-17 Morgan E. Davidson Navigation using self-describing fiducials
EP3407232B1 (en) * 2017-05-23 2021-07-28 Ordnance Survey Limited Spatiotemporal authentication
EP3674163B1 (en) * 2017-09-11 2022-11-02 Mitsubishi Electric Corporation Article carrying robot
US11089265B2 (en) 2018-04-17 2021-08-10 Microsoft Technology Licensing, Llc Telepresence devices operation methods
JP7160092B2 (ja) * 2018-05-01 2022-10-25 ソニーグループ株式会社 情報処理装置、情報処理方法、プログラム、及び自律行動ロボット制御システム
US10733445B1 (en) 2018-06-22 2020-08-04 X Development Llc Enhanced object state discrimination for robots
US10957066B2 (en) * 2019-03-19 2021-03-23 General Electric Company Systems and methods for locating humans using dynamic field robotic-sensor network of human robot team
US11553123B2 (en) 2019-07-18 2023-01-10 Microsoft Technology Licensing, Llc Dynamic detection and correction of light field camera array miscalibration
US11064154B2 (en) * 2019-07-18 2021-07-13 Microsoft Technology Licensing, Llc Device pose detection and pose-related image capture and processing for light field based telepresence communications
US11082659B2 (en) 2019-07-18 2021-08-03 Microsoft Technology Licensing, Llc Light field camera modules and light field camera module arrays
US11270464B2 (en) 2019-07-18 2022-03-08 Microsoft Technology Licensing, Llc Dynamic detection and correction of light field camera array miscalibration
US20200026289A1 (en) * 2019-09-28 2020-01-23 Ignacio J. Alvarez Distributed traffic safety consensus
CN112224733B (zh) * 2020-11-05 2022-08-12 北京极智嘉科技股份有限公司 仓储管理系统及方法
JP2022148261A (ja) * 2021-03-24 2022-10-06 トヨタ自動車株式会社 物品回収システム、物品回収ロボット、物品回収方法、及び物品回収プログラム
US11807349B1 (en) * 2022-09-16 2023-11-07 Fmc Technologies, Inc. Submersible remote operated vehicle vision assistance and control
CN117885099A (zh) * 2023-06-20 2024-04-16 苏州快捷智能科技有限公司 一种协作机器人及运行管理系统

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2722760B2 (ja) * 1990-03-30 1998-03-09 神鋼電機株式会社 移動ロボットシステム
US6226622B1 (en) 1995-11-27 2001-05-01 Alan James Dabbiere Methods and devices utilizing a GPS tracking system
US6895301B2 (en) * 2002-07-15 2005-05-17 Distrobot Systems, Inc. Material handling system using autonomous mobile drive units and movable inventory trays
WO2004106009A1 (ja) * 2003-06-02 2004-12-09 Matsushita Electric Industrial Co., Ltd. 物品操作システムおよび方法、並びに物品管理システムおよび方法
JP4792823B2 (ja) * 2005-06-09 2011-10-12 ソニー株式会社 ネットワーク・システム、移動体装置及びその制御方法、並びにコンピュータ・プログラム
US7783382B2 (en) 2006-02-24 2010-08-24 Qisda Corporation Controlling machine actions based on luminance of environmental light and distance from user
US7693757B2 (en) 2006-09-21 2010-04-06 International Business Machines Corporation System and method for performing inventory using a mobile inventory robot
KR100823739B1 (ko) * 2006-12-08 2008-04-21 한국전자통신연구원 주변 환경 변화에 신속하게 적응하여 환경 지도를 작성할수 있는 이동체의 환경 지도 작성 장치 및 그 방법
US7667602B2 (en) * 2007-01-19 2010-02-23 Wal-Mart Stores, Inc. Multi-directional RFID reader for controlling inventory and shelf stock
JP4886572B2 (ja) * 2007-03-29 2012-02-29 本田技研工業株式会社 ロボット
US20090037244A1 (en) 2007-07-31 2009-02-05 Greta Pemberton Inventory management system
US8140188B2 (en) * 2008-02-18 2012-03-20 Toyota Motor Engineering & Manufacturing North America, Inc. Robotic system and method for observing, learning, and supporting human activities
US9147174B2 (en) 2008-08-08 2015-09-29 Snap-On Incorporated Image-based inventory control system using advanced image recognition
CN100573388C (zh) * 2008-10-30 2009-12-23 中控科技集团有限公司 实时颜色自动采集的机器人控制方法及机器人
CN101854518A (zh) * 2009-03-30 2010-10-06 鸿富锦精密工业(深圳)有限公司 物体侦测系统及方法
CN101957194A (zh) * 2009-07-16 2011-01-26 北京石油化工学院 基于嵌入式的移动机器人快速视觉定位及远程监控系统及方法
KR101619076B1 (ko) 2009-08-25 2016-05-10 삼성전자 주식회사 모바일 플랫폼의 동적 물체 검출 및 추적 방법
EP2496128A1 (en) 2009-11-04 2012-09-12 Koninklijke Philips Electronics N.V. Collision avoidance and detection using distance sensors
US8509982B2 (en) * 2010-10-05 2013-08-13 Google Inc. Zone driving
US9205886B1 (en) * 2011-05-06 2015-12-08 Google Inc. Systems and methods for inventorying objects
WO2012153629A1 (ja) * 2011-05-12 2012-11-15 株式会社Ihi 運動予測制御装置と方法
US20120316680A1 (en) * 2011-06-13 2012-12-13 Microsoft Corporation Tracking and following of moving objects by a mobile robot
CN102411368B (zh) * 2011-07-22 2013-10-09 北京大学 机器人的主动视觉人脸跟踪方法和跟踪系统
US8886390B2 (en) * 2011-09-22 2014-11-11 Aethon, Inc. Monitoring, diagnostic and tracking tool for autonomous mobile robots
WO2013071150A1 (en) 2011-11-11 2013-05-16 Bar Code Specialties, Inc. (Dba Bcs Solutions) Robotic inventory systems
ES2827192T3 (es) * 2012-02-08 2021-05-20 Omron Tateisi Electronics Co Sistema de gestión de tareas para una flota de robots móviles autónomos
US9233472B2 (en) * 2013-01-18 2016-01-12 Irobot Corporation Mobile robot providing environmental mapping for household environmental control
EP2946567B1 (en) * 2013-01-18 2020-02-26 iRobot Corporation Environmental management systems including mobile robots and methods using same
US9375847B2 (en) * 2013-01-18 2016-06-28 Irobot Corporation Environmental management systems including mobile robots and methods using same
US10401825B2 (en) 2013-01-31 2019-09-03 Hewlett Packard Enterprise Development Lp Area occupancy information extraction
JP6020326B2 (ja) * 2013-04-16 2016-11-02 富士ゼロックス株式会社 経路探索装置、自走式作業装置、プログラム及び記録媒体
WO2014205425A1 (en) 2013-06-22 2014-12-24 Intellivision Technologies Corp. Method of tracking moveable objects by combining data obtained from multiple sensor types
JP5802241B2 (ja) * 2013-07-04 2015-10-28 富士重工業株式会社 車両の運転支援制御装置
CN103687079A (zh) * 2013-08-09 2014-03-26 机械科学研究总院 一种地下管网无线监测定位系统
CN103455822B (zh) * 2013-08-19 2016-10-19 江苏科技大学 复杂工业环境中的巡检机器人系统及多人脸动态跟踪方法
US20150073580A1 (en) * 2013-09-08 2015-03-12 Paul Ortiz Method and system for dynamic and adaptive collection and use of data and metadata to improve efficiency and reduce leakage and theft
WO2015055224A1 (en) * 2013-10-14 2015-04-23 Keonn Technologies S.L. Automated inventory taking moveable platform
US9916561B2 (en) 2013-11-05 2018-03-13 At&T Intellectual Property I, L.P. Methods, devices and computer readable storage devices for tracking inventory
KR101534947B1 (ko) * 2013-11-21 2015-07-07 현대자동차주식회사 초음파 센서를 이용한 장애물 맵 생성 장치 및 그 방법
US9415513B2 (en) * 2014-08-29 2016-08-16 General Electric Company Systems and methods for railyard robotics
US9694977B2 (en) * 2014-10-14 2017-07-04 Nextshift Robotics, Inc. Storage material handling system
CN104570771A (zh) * 2015-01-06 2015-04-29 哈尔滨理工大学 基于场景-拓扑的自主定位方法的巡检机器人
US9914218B2 (en) * 2015-01-30 2018-03-13 Toyota Motor Engineering & Manufacturing North America, Inc. Methods and apparatuses for responding to a detected event by a robot
CN205247204U (zh) * 2015-07-02 2016-05-18 朱宇晨 一种自组织机器人系统
US10195740B2 (en) 2015-09-10 2019-02-05 X Development Llc Using object observations of mobile robots to generate a spatio-temporal object inventory, and using the inventory to determine monitoring parameters for the mobile robots
CN105760894A (zh) * 2016-03-16 2016-07-13 哈尔滨伟方智能科技开发有限责任公司 一种基于机器视觉及机器学习的机器人导航方法

Also Published As

Publication number Publication date
US10195740B2 (en) 2019-02-05
TWI629150B (zh) 2018-07-11
EP3335090B1 (en) 2021-03-17
TW201722652A (zh) 2017-07-01
CN108369419A (zh) 2018-08-03
US20190143515A1 (en) 2019-05-16
US20220001535A1 (en) 2022-01-06
CN108369419B (zh) 2021-08-03
WO2017044851A1 (en) 2017-03-16
EP3335090A1 (en) 2018-06-20
CN113687652A (zh) 2021-11-23
US11660749B2 (en) 2023-05-30
US11123865B2 (en) 2021-09-21
JP2018530089A (ja) 2018-10-11
US20170072563A1 (en) 2017-03-16

Similar Documents

Publication Publication Date Title
US11660749B2 (en) Using object observations of mobile robots to generate a spatio-temporal object inventory, and using the inventory to determine monitoring parameters for the mobile robots
EP3347171B1 (en) Using sensor-based observations of agents in an environment to estimate the pose of an object in the environment and to estimate an uncertainty measure for the pose
US10127677B1 (en) Using observations from one or more robots to generate a spatio-temporal model that defines pose values for a plurality of objects in an environment
US20200333789A1 (en) Information processing apparatus, information processing method, and medium
US11016493B2 (en) Planning robot stopping points to avoid collisions
KR102347015B1 (ko) 창고 환경에서의 차량 추적
US11878425B1 (en) Robot task optimization based on historical task and location correlated durations
CN108367433B (zh) 选择性部署机器人以执行建图
CN104737085A (zh) 用于自主地检测或处理地面的机器人和方法
KR102314010B1 (ko) 엔드 디바이스, 엔드 디바이스를 제어하기 위한 에지 서버 및 클라우드 서버를 포함하는 3자간 통신 시스템, 및 그의 동작 방법
WO2018149341A1 (zh) 物品巡检方法及相关设备
KR20230066323A (ko) 보관 현장에서의 자율 로봇 탐색
EP4180895A1 (en) Autonomous mobile robots for coverage path planning
EP4207068A1 (en) Target object detection method and apparatus, and electronic device, storage medium and program
KR20200046161A (ko) 운송 로봇의 실내 위치 인식 시스템
Mukhopadhyay et al. Home automation and grid mapping technology using IoT
Geretti et al. Process-driven collision prediction in human-robot work environments
CN114952769A (zh) 用于监控机柜状态的方法和装置
KR20240005367A (ko) 공장내 위치 추적 시스템 및 그 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application