Robotic Skill Learning Using Demonstrations and Cached Trajectories

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing robots are limited in their ability to perform sophisticated tasks in unstructured environments, such as hospitals and homes, due to the challenge of programming manipulators and adapting to dynamic conditions, and they often require pre-programmed knowledge of their surroundings.

Innovation Solution

A robotic device equipped with a base, a manipulating element, sensors, and a processor that can learn and execute skills through human demonstrations, exploration, and interactions, allowing it to adapt to unstructured environments by generating plans for tasks like opening doors and navigating through doorways without pre-programming.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If robots are equipped with manipulators to perform sophisticated tasks, then task capability is improved, but programming complexity and device complexity increase

Engineering Contradiction:
Improvetask capabilityVSAvoidprogramming complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The robot performs self-programming by autonomously observing human demonstrations and generating its own manipulation plans without requiring external programming. The system captures sensor data during demonstrations, processes this data to understand task requirements, and automatically generates executable plans, enabling the robot to program itself for sophisticated tasks.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system copies human demonstration data through sensors and transforms it into robotic execution plans. By capturing sensor data during human-performed tasks and processing this copied information, the robot learns to replicate sophisticated manipulation behaviors without direct programming.

Inventive Principle:
Principle #26Copying

2Adaptability or versatility

If robots continuously acquire information about the environment, then adaptability to dynamic conditions is improved, but system complexity and computational requirements increase

Engineering Contradiction:
Improvedynamic environment adaptationVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system performs preliminary information acquisition during human demonstrations, capturing sensor data that encodes environmental structure and task requirements. This preliminary data collection creates a reusable knowledge base that reduces the need for continuous complex processing during actual task execution, thereby managing system complexity while maintaining adaptability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The robot copies environmental information through sensor data during demonstrations and stores this copied information for later use. By relying on previously captured sensor data rather than continuously acquiring and processing all environmental information, the system reduces computational requirements while maintaining the ability to adapt to dynamic conditions.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11904470B2Systems, apparatuses, and methods for robotic learning and execution of skills including navigation and manipulation functions
Publication Date: 2024.02.20 DILIGENT ROBOTICS INC
  • US11904470B2 patent drawing
  • US11904470B2 patent drawing
  • US11904470B2 patent drawing

AI summary

Systems, apparatus, and methods are described for robotic learning and execution of skills. A robotic apparatus can include a memory, a processor, sensors, and one or more movable components (e.g., a manipulating element and/or a transport element). The processor can be operatively coupled to the memory, the movable elements, and the sensors, and configured to obtain information of an environment, including one or more objects located within the environment. In some embodiments, the processor can be configured to learn skills through demonstration, exploration, user inputs, etc. In some embodiments, the processor can be configured to execute skills and/or arbitrate between different behaviors and/or actions. In some embodiments, the processor can be configured to execute skills and/or behaviors using cached trajectories or plans. In some embodiments, the processor can be configured to execute skills requiring navigation and manipulation behaviors.