Neural Network Controller for Predictive Container Scaling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing container orchestration platforms are reactive in nature, failing to proactively estimate peak demand and resource requirements, leading to reduced adaptability and increased costs due to delayed scaling and errors in resource allocation.

Innovation Solution

The implementation of a computer-implemented method that continuously trains multiple recurrent neural networks with different architectures to predict workload demands, periodically selecting the most accurate neural network controller based on mean absolute error to proactively scale container clusters and resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional reactive container orchestration platforms are used, then system simplicity is maintained, but resource allocation accuracy deteriorates and adaptability decreases

Engineering Contradiction:
Improveresource allocation accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by continuously training multiple recurrent neural networks with different architectures to predict future workload demands before they occur. This allows the orchestration platform to proactively scale resources in advance, improving resource allocation accuracy by anticipating peak demands rather than reacting to them after they occur.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system applies parameter changes by periodically selecting the neural network architecture that provides the most accurate predictions based on mean absolute error metrics. Different neural network architectures with varying parameters are trained and compared, allowing the system to adapt to changing workload patterns and improve prediction accuracy over time.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If multiple neural network architectures are continuously trained in parallel, then prediction accuracy improves, but computational resource consumption increases

Engineering Contradiction:
Improveworkload prediction accuracyVSAvoidcomputational resource consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The system applies partial action by training multiple neural networks in parallel but only deploying the single best-performing architecture for actual workload prediction. This approach achieves high prediction accuracy by exploring multiple architectures during training while avoiding the excessive computational cost of running all networks simultaneously for production use.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system implements periodic action by periodically retraining and re-evaluating multiple neural network architectures to determine which provides the most accurate predictions. This periodic retraining allows the system to adapt to changing workload patterns while maintaining computational efficiency by not continuously retraining all networks at all times.

Inventive Principle:
Principle #19Periodic action

3Adaptability or versatility

If reactive scaling is used, then system complexity is low, but adaptability to workload changes deteriorates and costs increase

Engineering Contradiction:
Improveadaptability to workload changesVSAvoidscaling response time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system performs preliminary scaling actions by using trained neural networks to predict future workload demands and proactively scaling resources before peak loads occur. This preliminary action dramatically improves adaptability to workload changes and reduces scaling response time, as the system is already prepared with the right resource levels when demand increases.

Inventive Principle:
Principle #10Preliminary action

4Measurement precision

If a single neural network controller is used, then system complexity is low, but prediction accuracy and adaptability deteriorate

Engineering Contradiction:
Improveworkload estimation accuracyVSAvoidcontroller architecture complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system applies universality by designing a controller architecture that can accommodate multiple different neural network models with varying architectures. This universal controller framework allows the system to leverage the strengths of different neural network architectures for different workload patterns, improving overall prediction accuracy while maintaining a unified control interface.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11868812B2Predictive scaling of container orchestration platforms
Publication Date: 2024.01.09 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11868812B2 patent drawing
  • US11868812B2 patent drawing
  • US11868812B2 patent drawing

AI summary

Systems, methods, and computer programming products leveraging recurrent neural network architectures to proactively predict workload demand of container orchestration platforms. The platform continuously collects metric data from clusters of the platform and train multiple parallel neural networks with different architectures to predict future platform workload demands. At periodic intervals, the registered neural networks in consideration for controlling the scaling operations of the platform are compared against one another to identify the neural network demonstrating the highest performance and/or most accurate workload prediction strategy for scaling the orchestration platform. The selected neural network is enforced as controller for the platform to implement the workload prediction strategy. The neural network controller enforced by the platform predictively scales up or down the number of pods within nodes of the platform and/or the number of clusters providing computational resources to the platform, in anticipation of future increased or decreased end user demand.