Dynamic Scheduling for Distributed Task Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing scheduling algorithms in distributed task-based systems fail to optimize user experience in terms of response time for network-based applications, such as network games, by not effectively allocating computing resources and managing user interactions across nodes.

Innovation Solution

A dynamic scheduling method that considers predicted costs for task scheduling actions and user migration decisions, using a cost database and reinforcement learning to minimize the sum cost for all applications, thereby optimizing response times by dynamically allocating resources and migrating users to balance load.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If fixed resource partitions or round-robin scheduling algorithms are used, then computing resources are guaranteed to be available to each application, but user experience in terms of response time is not optimized

Engineering Contradiction:
Improveresource availability guaranteeVSAvoiduser experience optimization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic scheduling that adapts to changing system conditions in real-time. The scheduler continuously monitors task queue lengths, computing resource availability, and user interaction patterns across nodes, adjusting scheduling decisions dynamically rather than using fixed partitions or static round-robin algorithms. This allows the system to optimize response times while maintaining resource availability guarantees.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes scheduling parameters based on current system state. Instead of fixed resource allocations, the scheduler adjusts the number of threads dedicated to each application, task prioritization weights, and resource allocation ratios dynamically based on observed performance metrics and predicted future states, thereby optimizing user experience while preserving reliability.

Inventive Principle:
Principle #35Parameter changes

2Device complexity

If traditional scheduling algorithms are used, then implementation is simple, but they fail to optimize user perceived response time in distributed network-based applications

Engineering Contradiction:
Improvescheduling algorithm simplicityVSAvoiduser perceived response time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent implements a feedback-driven scheduling system that continuously monitors actual response times, task completion rates, and user interaction patterns. This feedback is used to update predictions of future system states and adjust scheduling decisions accordingly. The system learns from past performance and adapts its scheduling strategy to minimize user-perceived response time while managing complexity through automated control.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The scheduler performs preliminary actions by predicting future system states and task arrival patterns before making scheduling decisions. It anticipates future resource needs and user interaction demands, proactively adjusting thread allocations and task priorities in advance to optimize response times, rather than reacting passively to current conditions.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If static thread allocation per application is used, then resource management is straightforward, but it cannot adapt to varying user loads and interaction patterns across different nodes

Engineering Contradiction:
Improveresource management simplicityVSAvoidadaptation to user loads
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The scheduling system implements self-service through automated monitoring and adjustment mechanisms. The scheduler autonomously tracks user load patterns, task queue depths, and resource utilization across nodes, making adaptive decisions without manual intervention. This maintains ease of operation while achieving high adaptability to varying user loads and interaction patterns.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system transitions from static thread allocation to dynamic allocation that automatically adapts to changing conditions. The number of threads allocated to each application on each node is adjusted in real-time based on observed user loads, task arrival rates, and interaction patterns, enabling the system to respond flexibly to varying demands while maintaining simple automated management.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8276143B2Dynamic scheduling of application tasks in a distributed task based system
Publication Date: 2012.09.25 ORACLE AMERICAN INC
  • US8276143B2 patent drawing
  • US8276143B2 patent drawing
  • US8276143B2 patent drawing

AI summary

Disclosed herein is a system and method for dynamic scheduling of application tasks in a distributed task-based system. The system and method employ a learning mechanism that observes and predicts overall application task costs across a networked system, taking into account how the states or loads of the applications are likely to change over time. The application task costs are defined in economic terms. The system and method allows continuous optimization of application response times as perceived by application users.