Remote VM Allocation for IoT Speech Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Speech recognition systems face challenges in processing voice commands on resource-constrained devices like IoT devices, which lack sufficient computing resources to execute complex instructions, leading to limitations in processing audio data and executing user commands effectively.

Innovation Solution

A remote device-management system allocates computing resources, including virtual machines, to handle speech processing tasks, allowing IoT devices to offload processing to remote servers, utilizing techniques like MQTT for communication and neural networks for wakeword detection, and transcoding audio data to compatible codecs for playback.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If speech processing is performed locally on IoT devices, then processing speed is improved, but device complexity and resource requirements worsen

Engineering Contradiction:
Improveprocessing speedVSAvoiddevice complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The speech processing system is segmented into multiple components distributed across different devices: wake word detection runs locally on the IoT device, while full speech recognition and natural language understanding are performed remotely on servers. This segmentation allows critical fast responses to be handled locally while complex processing is offloaded, resolving the contradiction between processing speed and device complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A remote device-management system acts as an intermediary between the IoT device and speech processing services. The intermediary manages computing resource allocation, coordinates wake word detection results with full speech recognition, and handles the complexity of resource management, allowing the IoT device to maintain simplicity while achieving fast local response times.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If computing resources are allocated to handle complex speech processing, then functionality is improved, but resource consumption worsens

Engineering Contradiction:
ImprovefunctionalityVSAvoidresource consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The system dynamically allocates computing resources based on operational needs. Virtual machines are allocated to IoT devices when speech processing is required and de-allocated when not needed. This dynamic approach allows the system to provide full speech processing functionality when required while minimizing resource consumption during idle periods, resolving the contradiction between functionality and resource consumption.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Computing resources in the form of virtual machine instances are discarded (de-allocated) from IoT devices when speech processing tasks are completed and recovered (re-allocated) when new speech processing needs arise. This allows the system to maintain functionality on demand while optimizing resource consumption by not permanently allocating resources to devices that do not continuously require speech processing capabilities.

Inventive Principle:
Principle #34Discarding and recovering

3Loss of time

If wake word detection is performed locally, then response time is improved, but processing accuracy worsens

Engineering Contradiction:
Improveresponse timeVSAvoidprocessing accuracy
Core Design Contradiction:
Loss of timeVSMeasurement precision

Solution Approach 1:

The system performs partial speech processing (wake word detection only) locally on the IoT device to achieve fast response times, while excessive or complete speech processing (full recognition and interpretation) is performed remotely with higher computational resources. This partial local action resolves the contradiction by providing sufficiently accurate wake word detection locally while accepting that full accuracy requires remote processing.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11392401B1Management of and resource allocation for local devices
Publication Date: 2022.07.19 AMAZON TECH INC
  • US11392401B1 patent drawing
  • US11392401B1 patent drawing
  • US11392401B1 patent drawing

AI summary

A device-management system performs processing, such as audio processing, in an instance of a virtual machine corresponding to a functionally limited (local) device. To register the user device, the device-management system receives a registration request that includes device information, encryption data, and an indication of an associated user account. The device-management system then sends this registration data to a service-provider system, which returns a shared encryption key. The device-management system and the user device may use this shared encryption key to securely communicate. The device-management system may de-allocate the instance upon detecting a period of inactivity of the user device and may re-allocate the instance when new activity is detected. The device-management system may further determine when and if audio data to be sent to the user device is encoded using a codec not implemented by the user device. Upon this determination, the device-management system may transcode the audio data such that is encoded using a known codec.