Next Article in Journal
Permeability Characteristics and Strength Degradation Mechanisms of Drilling Fluid Invading Bedding-Shale Fluid
Previous Article in Journal
Analysis of Stability of Delayed Quaternion-Valued Switching Neural Networks via Symmetric Matrices
Previous Article in Special Issue
A Data-Driven Methodology for Hierarchical Production Planning with LSTM-Q Network-Based Demand Forecast
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Optimal Energy-Aware Scheduling of Heterogeneous Jobs with Monotonically Increasing Slot Costs

1
School of Economics, Beijing Technology and Business University, Beijing 100048, China
2
Institute for Interdisciplinary Information Sciences, Tsinghua University, Beijing 100084, China
3
Chinese Academy of Sciences and Technology for Development, Beijing 100038, China
*
Author to whom correspondence should be addressed.
Symmetry 2025, 17(7), 980; https://doi.org/10.3390/sym17070980
Submission received: 18 May 2025 / Revised: 12 June 2025 / Accepted: 19 June 2025 / Published: 20 June 2025
(This article belongs to the Special Issue Symmetry in Computing Algorithms and Applications)

Abstract

Energy-aware scheduling plays a critical role in modern computing and manufacturing systems, where energy consumption often increases with job execution order or resource usage intensity. This study investigates a scheduling problem in which a sequence of heterogeneous jobs—classified as either heavy or light—must be assigned to multiple identical machines with monotonically increasing slot costs. While the machines are structurally symmetric, the fixed job order and cost asymmetry introduce significant challenges for optimal job allocation. We formulate the problem as an integer linear program and simplify the objective by isolating the cumulative cost of heavy jobs, thereby reducing the search for optimality to a position-based assignment problem. To address this challenge, we propose a structured assignment model termed monotonic machine assignment, which enforces index-based job distribution rules and restores a form of functional symmetry across machines. We prove that any feasible assignment can be transformed into a monotonic one without increasing the total energy cost, ensuring that the global optimum lies within this reduced search space. Building on this framework, we first present a general dynamic programming algorithm with complexity O ( n 2 m 2 ) . More importantly, by introducing a structural correction scheme based on misaligned assignments, we design an iterative refinement algorithm that achieves global optimality in only O ( n m 2 ) time, offering significant scalability for large instances. Our results contribute both structural insight and practical methods for optimal, position-sensitive, energy-aware scheduling, with potential applications in embedded systems, pipelined computation, and real-time operations.

1. Introduction

Sustainability has become a critical design consideration in modern information and communication technologies (ICTs), as the energy footprint of digital infrastructure continues to grow rapidly. With the increasing deployment of cloud data centers, edge computing devices, and embedded systems, ICT systems are estimated to contribute significantly to global energy consumption and carbon emissions [1,2]. This concern has led to widespread efforts in energy-aware computing, where task scheduling has emerged as a core mechanism for reducing energy usage without sacrificing system performance. However, the growing complexity of computing and industrial systems has introduced a variety of scheduling challenges, stemming from hardware limitations and diverse job characteristics [3,4]. In embedded real-time platforms, energy-aware control loops often involve bursts of computation mixed with lightweight sensing or communication jobs [5]. In cloud computing clusters, tasks of varying computational intensity and deadline sensitivity arrive in a fixed order determined by upstream systems. In both cases, hardware units such as CPU cores, memory banks, or pipeline stages exhibit performance deterioration over time, resulting in increasing per-job energy costs with position or usage [6,7]. Meanwhile, due to strict timing or dependency constraints, jobs must often be processed in their arrival sequence, and their energy profiles are far from uniform. These asymmetries—across jobs, time, and resource cost—necessitate new scheduling models that go beyond traditional speed-scaling or homogeneous job assumptions.
Energy-aware scheduling plays a pivotal role in the design of modern computational and manufacturing systems, particularly amid rising energy costs and growing environmental concerns [8]. In applications such as cloud data centers, embedded control systems, industrial production pipelines, and autonomous devices, energy consumption typically increases with processing time, job position, or accumulated system workload [5,9,10]. This pattern is especially pronounced in contexts involving hardware degradation over time, such as battery-powered platforms and mission-critical real-time systems [11]. Consequently, there is a pressing need for scheduling strategies that minimize total energy consumption or operational costs under time-sensitive and resource-constrained environments.
Over the past decades, extensive research has focused on energy-efficient scheduling. A foundational model is the speed-scaling framework introduced by Yao et al. [9], where processor speeds are dynamically adjusted to balance energy consumption and execution time. This model has been extended to incorporate various energy constraints, as summarized in the survey by Albers [12]. However, these models often assume homogeneous jobs and do not account for cost escalation due to job position or system degradation.
An alternative line of research focuses on deteriorating jobs, where processing times or costs increase with job position, as introduced by Mosheiov [13]. Subsequent studies have explored time-dependent processing costs and interval scheduling problems, introducing complexities such as job release times and position-based penalties [14,15,16,17]. While these studies offer rich insights into temporal degradation, many assume jobs can be reordered to minimize costs, making them unsuitable for streaming or pipelined environments where job arrival order is fixed. Several recent studies have explored learning-based approaches for energy-aware scheduling. For example, Wang et al. [18] proposed a deep reinforcement learning (DRL) scheduler for fog and edge computing systems, targeting trade-offs between system load and response time. A recent survey by Hou et al. [19] reviewed DRL-based strategies for energy-efficient task scheduling in cloud systems. Furthermore, López et al. [20] introduced an intelligent energy-pairing scheduler for heterogeneous HPC clusters, and metaheuristic methods have also been applied to multi-robot swarm scheduling problems [21]. These studies reflect a growing interest in adaptive scheduling methods, which complement our structural and provably optimal approach. While such methods offer flexibility and empirical effectiveness, they typically yield approximate solutions without structural optimality guarantees. By contrast, our work focuses on deriving exact or provably near-optimal schedules under a formally defined position-dependent cost model.
More recently, researchers have begun exploring energy-aware scheduling in heterogeneous and constrained systems. For instance, in embedded and cyber–physical systems, Mahmood et al. [22] and Khaitan and McCalley [23] investigated scheduling in cyber–physical and embedded real-time environments, emphasizing the impact of system heterogeneity and energy constraints. In high-performance computing (HPC) contexts, Kocot et al. [8] reviewed energy-aware scheduling techniques in modern HPC platforms, highlighting mechanisms such as DVFS, job allocation heuristics, and power capping. Mei et al. [5] developed a deadline-aware scheduler for DVFS-enabled heterogeneous machines. Similarly, Esmaili and Pedram [24] applied deep reinforcement learning to minimize energy in cluster systems, and Zhang and Chen [25] surveyed scheduling methods in mixed-criticality systems, stressing the importance of balancing energy consumption and job reliability under strict timing constraints. Meanwhile, algorithmic studies have tackled time-dependent and cost-aware scheduling problems, offering complexity classifications and algorithmic solutions under various structural assumptions [26,27,28,29]. In particular, Im et al. [27] and Chen et al. [28] analyzed models with temporally evolving cost functions, while additional frameworks such as bipartite matching with decomposable weights [30,31], interval-constrained job assignments [32,33], and weighted matching under cost constraints [34] have enriched the algorithmic toolbox for cost-sensitive scheduling.
Despite these advancements, many existing models fall short in capturing key characteristics of real-world systems. First, most assume flexible job orderings or job independence, whereas many practical applications impose strict sequential constraints due to job arrival patterns or dependency relations, such as fixed workflow pipelines in cloud platforms [35,36]. Second, job heterogeneity is often overlooked, despite substantial differences in energy profiles (e.g., light vs. heavy jobs) [5,8,37,38]. Third, models with variable slot costs frequently assume piecewise or non-monotonic functions, failing to represent realistic scenarios with strictly increasing cost structures [39]. Collectively, these limitations restrict the applicability of prior approaches in energy-sensitive, real-time scheduling environments.
In this paper, we address these challenges by investigating a scheduling model with the following four key features: (i) each of the m identical machines processes exactly n sequentially arriving jobs; (ii) the job sequence is fixed and must be scheduled in order without rearrangement; (iii) each job is categorized as either a light job (with zero cost) or a heavy job (with positive cost); and (iv) each machine’s slot cost is a fixed monotonically increasing sequence, independent of the job type. To minimize the total energy cost incurred by assigning heavy jobs to higher-cost slots, we formally define this scheduling problem as an integer linear program (ILP) and normalize it to a simplified version where only the placement of heavy jobs affects the objective.
To illustrate the real-world relevance of this model, consider a battery-powered drone control system where lightweight sensing tasks and heavy navigation computations arrive in a fixed order and must be assigned to a limited set of processors. Such systems often exhibit energy asymmetry: heavy tasks consume more power, and later slots incur higher energy due to thermal or resource degradation—conditions that naturally align with our model assumptions.
Our contributions are summarized as follows. First, we formalize an energy-aware scheduling problem in which a fixed sequence of heterogeneous jobs must be assigned to identical machines with strictly increasing slot costs. By reformulating the objective function through cost simplification, we reduce the problem to a position-based assignment model focused solely on heavy jobs and provide an equivalent integer linear programming (ILP) formulation under positional constraints. Second, we introduce the concept of monotonic machine assignment, a structured scheduling framework that guarantees both feasibility and optimality preservation. We prove that any feasible assignment can be transformed into a monotonic one without increasing the total energy cost, and characterize the reduced solution space via a vector of heavy job counts per machine. This transformation effectively restores a form of functional symmetry in job allocation under asymmetric cost constraints. Third, building on this structure, we develop two algorithms for computing optimal monotonic schedules. The first is a dynamic programming algorithm with time complexity O ( n 2 m 2 ) . More importantly, we propose a misalignment elimination algorithm that incrementally refines job distributions and provably converges to the global optimum in only O ( n m 2 ) time, offering significant scalability for large-scale scheduling applications. Collectively, our work delivers both theoretical insight and provably optimal algorithms for position-sensitive, energy-aware scheduling, with practical relevance to streaming computation, embedded systems, and real-time industrial platforms.
The remainder of this paper is structured as follows. Section 2 presents the formal problem definition, introduces the integer linear programming (ILP) formulation, and performs a cost simplification that reduces the objective to the placement of heavy jobs. Section 3 introduces the concept of monotonic machine assignments, establishes key structural properties, and develops a dynamic programming algorithm to compute the optimal schedule within this restricted space. Section 4 proposes an iterative misalignment elimination algorithm that incrementally refines any feasible schedule and guarantees convergence to the global optimum in polynomial time. Finally, Section 5 concludes this paper with a summary of the findings and a discussion of potential applications in energy-aware and real-time systems.

2. Problem Formulation

This section formalizes the energy-aware scheduling problem under consideration. The model captures practical systems such as cloud platforms, embedded processors, and production lines where later execution incurs higher energy cost due to thermal degradation, increased resistance, or growing workload intensity. We begin by presenting the system model and formulation, followed by a normalization step that simplifies subsequent algorithmic analysis. Table 1 summarizes the main notations used throughout this paper for clarity and ease of reference.

2.1. Model and ILP Formulation

We consider a scheduling system consisting of a set of m identical machines, denoted by M = { 1 , 2 , , m } . Each machine M i ( i M ) has n sequential execution slots, allowing it to process up to n jobs. A total of N = m n jobs, indexed by J = { 1 , 2 , , N } , arrive in a fixed and predetermined order. Each job J j ( j J ) belongs to one of two types, indicated by t j { 0 , 1 } :
  • Heavy job: t j = 1 , incurs higher energy cost;
  • Light job: t j = 0 , incurs lower energy cost.
Each machine’s n slots are indexed in order, and their associated energy weights increase monotonically:
s 1 < s 2 < < s n ,
where s k denotes the energy weight of the k-th slot. Assigning job J j to slot s k on machine M i incurs an energy cost:
Cost ( i , j , k ) = c heavy · s k , if t j = 1 , c light · s k , if t j = 0 ,
where c heavy > c light > 0 are fixed positive coefficients reflecting the per-unit energy consumption of heavy and light jobs, respectively. We introduce the following binary variable:
x i , j , k = 1 , if job J j is assigned to the k - th slot of machine M i , 0 , otherwise .
The objective is to minimize the total energy cost:
min i M j J k = 1 n Cost ( i , j , k ) · x i , j , k ,
subject to the following constraints:
  • (C1) Job Assignment: Each job is assigned to exactly one machine and one slot:
    i = 1 m k = 1 n x i , j , k = 1 , j J .
  • (C2) Slot Occupation: Each slot is occupied by exactly one job:
    j = 1 N x i , j , k = 1 , i M , k { 1 , 2 , , n } .
  • (C3) Order Preservation on Each Machine: For any two jobs J j and J j ( j , j J with j < j ), if both jobs are assigned to the same machine M i , then J j must be scheduled earlier than J j :
    k = 1 n k · x i , j , k < k = 1 n k · x i , j , k , i M , j < j .
This formulation defines an integer linear program (ILP), where the decision variables x i , j , k are binary, and all constraints and the objective are linear. The problem is NP-hard, as it generalizes classic job assignment with precedence constraints and cost-based objectives.

2.2. Cost Normalization

We now show that the objective can be simplified via normalization. Observe that the total cost under any assignment x is
TotalCost ( x ) = i M j J k = 1 n Cost ( i , j , k ) · x i , j , k ,
with
Cost ( i , j , k ) = c heavy · s k , if t j = 1 , c light · s k , if t j = 0 .
Expanding the objective,
TotalCost ( x ) = c heavy ( i , j , k ) : t j = 1 s k x i , j , k + c light ( i , j , k ) : t j = 0 s k x i , j , k = c light i , j , k s k x i , j , k + ( c heavy c light ) ( i , j , k ) : t j = 1 s k x i , j , k
The first term is constant across all feasible assignments, since all slots are occupied exactly once. Specifically,
i , j , k s k x i , j , k = m · k = 1 n s k .
Therefore, for optimization purposes, we can equivalently minimize
( i , j , k ) : t j = 1 s k x i , j , k .
This allows us to normalize the coefficients without loss of generality by setting
c heavy = 1 , c light = 0 .
Under this normalization, the simplified total energy cost becomes
SimplifiedTotalCost ( x ) = ( i , j , k ) : t j = 1 s k x i , j , k ,
which will be the target function in our subsequent algorithmic design.
In summary, we formalized an energy-aware scheduling problem over identical machines with monotonically increasing slot costs and heterogeneous job types. The formulation incorporates assignment, exclusivity, and order-preserving constraints, and admits a normalized objective that focuses solely on the placement of heavy jobs. This structural insight simplifies the optimization landscape and guides the design of efficient algorithms, which we develop in the following sections.

3. Monotonic Machine Assignment

This section introduces a structured assignment model, referred to as the monotonic machine assignment, to facilitate the theoretical analysis of the energy-aware scheduling problem. We prove that any feasible assignment can be transformed into a monotonic one without increasing the total energy cost, and we further present a dynamic programming algorithm to compute an optimal assignment under this structure.

3.1. Definition

A monotonic machine assignment is defined as a job-to-machine allocation that satisfies the following three properties:
  • Job Number Monotonicity: Let a i ( j ) denote the number of jobs assigned to machine M i after the first j jobs have been scheduled. Then, for all j J and all i = 1 , , m 1 , we require
    a i ( j ) a i + 1 ( j ) .
    That is, machines with smaller indices must have at least as many jobs as those with larger indices at any moment.
  • Light Job Monotonicity: Let b ( j ) be the machine to which job J j is assigned. If job J j is a light job ( t j = 0 ), then it must be assigned to the machine with the smallest index i such that a i ( j 1 ) < n . Formally, for all j J with t j = 0 , we require
    b ( j ) = min { i M : a i ( j 1 ) < n } .
  • Heavy Job Monotonicity: For any two heavy jobs J j and J j , if  j < j , we require their machine indices to be in non-decreasing order:
    b ( j ) b ( j ) .
    That is, heavy jobs must be assigned to machines in a non-decreasing order of machine indices with respect to their arrival order.
To illustrate these properties, we provide a simple numerical example. Suppose there are m = 3 machines, each with n = 3 slots, and thus 9 jobs in total. Let the arrival sequence have heavy jobs at positions 2, 5, and 8 (i.e., jobs J 2 , J 5 , and J 8 are heavy, and others are light). Under a monotonic assignment, the following hold:
  • Machine M 1 handles jobs 1–3: job J 1 (light) in slot 1, job J 2 (heavy) in slot 2, and job J 3 (light) in slot 3.
  • Machine M 2 handles jobs 4–6: job J 4 (light) in slot 1, job J 5 (heavy) in slot 2, and job J 6 (light) in slot 3.
  • Machine M 3 handles jobs 7–9: job J 7 (light) in slot 1, job J 8 (heavy) in slot 2, and job J 9 (light) in slot 3.
This simple example shows how job number monotonicity ensures machines fill in order, and heavy job monotonicity places each heavy job in the earliest available slot on its machine while preserving non-decreasing machine indices. Light jobs occupy the remaining slots by light job monotonicity. Such a distribution concretely illustrates the abstract rules before proceeding to the formal algorithm.
Theorem 1.
For any feasible job assignment S , there exists a monotonic machine assignment S * that satisfies the above three monotonicity properties such that the total energy cost under S * is no greater than that under S . That is,
TotalCost ( S * ) TotalCost ( S ) .
Proof. 
We show that any feasible job assignment S can be transformed into a monotonic machine assignment S * without increasing the total energy cost, by applying the following three steps:
Step 1: Enforcing Job Number Monotonicity. For each job J j , j J , if there exists a pair of adjacent machines ( M i , M i + 1 ) such that a i ( j ) < a i + 1 ( j ) , we select the earliest such violation. Then we have a i ( j 1 ) = a i + 1 ( j 1 ) and swap the next job assigned to machine M i + 1 (starting from J j ) with a job on machine M i . Because all machines have the same slot cost structure, and only the indices of the machines are affected—not the relative positions of the slots within each machine—the total cost remains unchanged. We repeat this process until for all M i ( i = 1 , , m 1 ) and all J j ( j J ) , we have a i ( j ) a i + 1 ( j ) . This ensures job number monotonicity.
Step 2: Enforcing Light Job Monotonicity. Suppose that J j is a light job that is not assigned to the available machine M i with the smallest index, but is instead scheduled on a later machine M i with i > i . Let J j be the earliest subsequent job ( j > j ) that is assigned to machine M i . We divide the job sequence into three consecutive phases: Phase I includes jobs scheduled before J j ; Phase II consists of jobs from J j to J j ; and Phase III includes jobs scheduled after J j , as shown on the left side of Figure 1. We construct a new schedule S * by swapping the assignments of J j and J j , reassigning J j to machine M i and J j to machine M i , as shown on the right side of Figure 1. Since the original schedule S satisfies job number monotonicity, the slot position of J j in S * does not increase. Moreover, because  J j is a light job with negligible cost, this reassignment does not increase the total energy cost. The updated schedule S * continues to maintain job number monotonicity. Therefore, this correction process can be applied iteratively until light job monotonicity is fully achieved.
Step 3: Enforcing Heavy Job Monotonicity. Assume that the first violation of heavy job monotonicity occurs when a heavy job J j is assigned to machine M i , despite the existence of an earlier heavy job J j ( j < j ) that was previously assigned to a later machine M i with i > i . In other words, J j is scheduled to a machine with a smaller index than a preceding heavy job, violating the required non-decreasing order of machine indices for heavy job assignments. We focus on this first violation, as depicted on the left side of Figure 2. Since machine M i was still available at the time J j was scheduled (i.e., a i ( j 1 ) < n ), light job monotonicity ensures that no light jobs could have been assigned to M i before J j . Therefore, all jobs on M i scheduled before J j must be heavy jobs, labeled as set H in the figure. Let J j be the earliest such heavy job on M i .
Meanwhile, because  J j represents the first violation of heavy job monotonicity, all jobs scheduled to M i between J j and J j must be light jobs. These are labeled as set L in Figure 2. The job sequence is thus divided into three phases: Phase I consists of all jobs prior to J j ; Phase II spans from J j to J j , and includes both heavy jobs on M i (set H ) and light jobs on M i (set L ); and Phase III contains all jobs after J j . To restore monotonicity, we construct a new schedule S * by swapping the assignments of J j and J j , reassigning J j to machine M i and J j to machine M i , as illustrated on the right side of Figure 2. Since M i has only received light jobs between J j and J j , and because light jobs incur negligible energy cost, this swap does not affect the overall cost contribution of the light jobs. Furthermore, the slot index of J j in S * is no greater than in the original schedule S , and the number of heavy jobs assigned to M i remains unchanged. As the slot cost function is fixed and strictly increasing, the total energy cost does not increase.
Importantly, the reassignment does not violate light job monotonicity, and the updated schedule S * continues to satisfy job number monotonicity. Therefore, this correction procedure can be applied iteratively until all violations of heavy job monotonicity are eliminated.
Termination and Feasibility: Each of the above transformations resolves one violation without introducing new ones, and there is a finite number of jobs. Therefore, the process terminates in finite steps. The resulting schedule S * is feasible, satisfies all three monotonicity conditions, and achieves
TotalCost ( S * ) TotalCost ( S ) .      

3.2. Constructing Monotonic Assignments via Heavy Job Distribution

A monotonic machine assignment can be completely specified by a vector of heavy job quotas { h 1 , h 2 , , h m } , where h i denotes the number of heavy jobs assigned to machine M i , and the total number of heavy jobs satisfies
i = 1 m h i = H ,
with H denoting the total number of heavy jobs in the system.
Given a fixed job arrival sequence and a heavy job distribution vector, the monotonic machine assignment can be constructed by assigning each job dynamically based on its type, as outlined in Algorithm 1.
Assignment Rules.
  • Heavy jobs: Assign each heavy job J j to the first available machine M i (smallest index) such that h i remaining > 0 and a i < n ;
  • Light jobs: Assign each light job J j to the first machine M i (smallest index) with an available slot, i.e.,  a i ( j 1 ) < n .
Here, h i remaining is the number of heavy jobs remaining to be assigned to machine M i , and  a i tracks the number of total jobs (heavy or light) assigned to M i thus far.
Algorithm 1 Monotonic assignment construction from heavy quotas.
1:
for each machine M i M  do
2:
   Initialize h i remaining h i     {heavy jobs remaining for M i }
3:
   Initialize a i 0     {current number of jobs assigned to M i }
4:
end for
5:
for each job J j in arrival order do
6:
   if  J j is a heavy job then
7:
     Find the smallest i such that h i remaining > 0 and a i < n
8:
     Assign J j to M i
9:
     Update h i remaining h i remaining 1 , a i a i + 1
10:
   else
11:
     Find the smallest i such that a i < n
12:
     Assign J j to M i
13:
     Update a i a i + 1
14:
   end if
15:
end for
  Feasibility Condition: Not all heavy job vectors satisfying i = 1 m h i = H correspond to feasible schedules. To ensure feasibility, each machine M i must always have sufficient capacity to accommodate its remaining heavy job quota at every stage of the sequential assignment. That is, the following constraint must be satisfied throughout the process:
n a i h i remaining , M i M .
We define h ¯ i as the number of heavy jobs in the i-th block of the job sequence J , given by
h ¯ i = j = ( i 1 ) n + 1 i · n t j .
Then, a heavy job allocation vector { h 1 , h 2 , , h m } is feasible if and only if
k = 1 i h k k = 1 i h ¯ k , and 0 h i n for all i = 1 , 2 , , m .

3.3. Dynamic Programming for Optimal Monotonic Assignment

We present a dynamic programming algorithm to compute an optimal monotonic machine assignment, minimizing total energy cost under a fixed job arrival order and slot-based cost structure.
DP State Definition: Let DP[i][h] denote the minimum total cost of assigning the first i machines with exactly h heavy jobs scheduled in total.
  Transition Function: Let g i ( k , h ) represent the minimum cost of assigning exactly k heavy jobs and n k light jobs to machine M i , assuming that h heavy jobs have already been scheduled across the first i 1 machines. Then, the recurrence is
DP [ i ] [ h ] = min 0 k min ( n , h ) DP [ i 1 ] [ h k ] + g i ( k , h k ) ,
with the base cases
DP [ 0 ] [ 0 ] = 0 , DP [ 0 ] [ h ] = for h > 0 .
The final solution is given by
DP [ m ] [ H ] , where H = j = 1 n m t j is the total number of heavy jobs .
  Feasibility Condition: If assigning k heavy jobs to machine M i is infeasible—e.g., there are insufficient remaining heavy jobs or too few available slots due to prior light jobs—then g i ( k , h ) is set to + and excluded from the transition.
  Time Complexity: The total number of DP states is
i = 1 m ( i · n + 1 ) = O ( n m 2 ) .
Each state enumerates up to n values of k, and the corresponding g i ( k , h ) values are retrieved in O ( 1 ) time via preprocessing. Hence, the total time complexity of the dynamic programming procedure is
O ( n ) per state × O ( n m 2 ) states = O ( n 2 m 2 ) .
  Preprocessing of Transition Costs: Each g i ( k , h ) value is computed by selecting the appropriate subsequence of jobs to be assigned to machine M i , and calculating the total slot cost of the top-k heavy jobs within that segment. This preprocessing step is efficiently performed using a prefix sum or scan-based technique, as detailed in Algorithm 2. For any fixed machine index i and heavy job prefix count h , the full cost vector { g i ( k , h ) } k = 0 n can be computed in O ( n ) time. Since there are at most n m distinct values of h (i.e., the number of ways to distribute heavy jobs across the first i 1 machines), and m choices of i, the total number of ( i , h ) pairs is O ( n m 2 ) . Therefore, the total time required to compute all g i ( k , h ) values for all machines and heavy job prefix states is
O ( n ) ( per pair ) × O ( n m 2 ) ( number of pairs ) = O ( n 2 m 2 ) .
Thus, the overall time complexity of the proposed algorithm—including both dynamic programming and preprocessing of all g i ( k , h ) values—is
O ( n 2 m 2 ) .
Algorithm 2 ComputeAllGi: Preprocessing g i ( k , h ) for machine M i .
  • Require: job sequence t [ 1 n m ] , machine index i, total number of heavy jobs scheduled so far: h
  • Ensure: Array g [ 0 n ] , where g [ k ] is the cost of assigning k heavy jobs to M i
1:
Filter the job sequence to select the next n jobs assigned to M i :
  • Skip the first h heavy jobs,
  • Skip the first ( i 1 ) n h light jobs,
  • Select the next n jobs to form the assignment block for M i .
2:
Let heavy _ pos be the indices of heavy jobs in the selected n jobs.
3:
for k = 0 to n do
4:
   if  i = m k | heavy _ pos |  then
5:
      g [ k ]     {Final machine must take remaining heavy jobs}
6:
   else if k > | heavy _ pos | then
7:
      g [ k ]           {Not enough heavy jobs available}
8:
   else
9:
      g [ k ] j = 1 k s [ heavy _ pos [ j ] ]
10:
   end if
11:
end for
12:
returng

4. Misalignment Elimination Algorithm

In this section, we develop an iterative refinement algorithm that transforms an initial feasible assignment into an optimal monotonic one. Building on the structural properties of the assignment, we identify local inconsistencies—referred to as misaligned assignments—and propose a targeted adjustment strategy to eliminate them. The algorithm operates by incrementally resolving these misalignments, one at a time, while ensuring that feasibility is preserved and the total cost does not increase. Through repeated application of this refinement step, the algorithm progressively improves the assignment structure until all machines are properly aligned. We provide both the algorithmic procedure and a formal proof of its correctness and computational efficiency.

4.1. Misaligned Assignment

Definition 1 (Misaligned Assignment).
Given a monotonic machine assignment S , we denote a misaligned assignment on adjacent machines M i and M i + 1 if the slot index of the last heavy job on M i is greater than or equal to that of the first light job on M i + 1 . This implies a sub-optimal assignment of heavy and light jobs across adjacent machines, which may degrade scheduling efficiency. Formally, let the following hold:
  • p S ( i ) denotes the slot index of the last heavy job assigned to M i (with p S ( i ) = 0 if no heavy job exists);
  • q S ( i ) denotes the slot index of the first light job assigned to M i (with q S ( i ) = n + 1 if no light job exists).
  • Then machines M i and M i + 1 are said to be misaligned if
    p S ( i ) q S ( i + 1 ) .
  • For notational simplicity, we may omit the superscript S when the assignment context is clear.
Consider two consecutive machines M i and M i + 1 that exhibit a misaligned assignment. Let J j denote the last heavy job assigned to M i , and  J j denote the first light job assigned to M i + 1 , as illustrated on the left side of Figure 3. To eliminate this misalignment, we construct a new assignment S * by swapping these two jobs: J j is reassigned to M i + 1 , and  J j is reassigned to M i , as shown on the right side of the Figure 3. Since the slot index of job J j on machine M i is no smaller than that of job J j on machine M i + 1 (i.e., p S ( i ) q S ( i + 1 ) ), the reassignment does not increase the total energy cost. Furthermore, the reassignment updates the number of heavy jobs as follows:
  • Machine M i : h i h i 1 ;
  • Machine M i + 1 : h i + 1 h i + 1 + 1 .
The swap affects only the slot configuration of machines M i and M i + 1 . Specifically, the following properties hold in the updated assignment S * :
  • p S * ( i ) < p S ( i ) ;
  • q S * ( i ) q S ( i ) ;
  • p S * ( i + 1 ) p S ( i + 1 ) ;
  • q S * ( i + 1 ) > q S ( i + 1 ) .
These local updates imply that the misalignment condition p S ( i ) q S ( i + 1 ) may no longer hold in the updated assignment S * , thereby resolving the inconsistency between machines M i and M i + 1 . However, this swap may introduce new misalignments involving adjacent machine pairs, specifically ( i 1 , i ) or ( i + 1 , i + 2 ) . Nevertheless, each swap strictly improves the structural alignment by moving a heavy job forward along the machine sequence. Since there are at most n m heavy jobs in total, and each job can traverse at most m machines (from M 1 to M m in the worst case), the total number of swaps is bounded by O ( n m · m ) = O ( n m 2 ) .

4.2. Efficient Computation of Slot Positions

Let light _ prefix [ j ] and heavy _ prefix [ j ] denote the cumulative number of light and heavy jobs, respectively, among the first j jobs in the input sequence:
light _ prefix [ j ] = = 1 j 1 { t = 0 } , heavy _ prefix [ j ] = = 1 j 1 { t = 1 } .
Let x = h i be the number of heavy jobs assigned to machine M i , and let y = k = 1 i 1 h k denote the total number of heavy jobs assigned to machines M 1 through M i 1 .
  (1) Computation of p ( i ) : The total number of heavy jobs assigned to the first i machines is x + y . The last heavy job assigned to machine M i corresponds to the ( x + y ) -th heavy job in the global sequence. Let j be the smallest index such that
heavy _ prefix [ j ] = x + y .
The number of light jobs among the first j jobs is light _ prefix [ j ] , and the number of light jobs assigned to machines M 1 through M i 1 is n ( i 1 ) y . Let
= light _ prefix [ j ] n ( i 1 ) y
denote the number of light jobs already assigned to machine M i before job J j . Then, the slot position of the last heavy job J j on M i is
p ( i ) = + x , if 0 x , if < 0
  (2) Computation of q ( i ) : The number of light jobs assigned to machines M 1 through M i 1 is n ( i 1 ) y . Hence, the first light job assigned to machine M i corresponds to the ( n ( i 1 ) y + 1 ) -th light job in the global sequence. Let j be the smallest index such that
light _ prefix [ j ] = n ( i 1 ) y + 1 .
The number of heavy jobs among the first j jobs is heavy _ prefix [ j ] , and the number of heavy jobs already assigned to machines M 1 through M i 1 is y. Let
= heavy _ prefix [ j ] y
denote the number of heavy jobs already assigned to machine M i before job J j . Then, the slot position of this first light job J j on M i is
q ( i ) = + 1 , if x x + 1 , if > x
  Both prefix arrays can be preprocessed in O ( m n ) time. By recording the first occurrence of each prefix value, the queries for p ( i ) and q ( i ) can be answered in constant time using hash maps or direct indexing. Consequently, both slot positions can be computed in O ( 1 ) time per query.

4.3. Misalignment Elimination Algorithm

We now present the complete iterative refinement procedure in Algorithm 3, which incrementally eliminates misaligned assignments until none remain, ultimately yielding an optimal monotonic assignment. The algorithm begins with the initial heavy job distribution h ¯ 1 , h ¯ 2 , , h ¯ m , computed directly from the input job sequence. It then maintains a dynamic misalignment set C, which stores the indices of all machines currently involved in misaligned assignments, based on the slot positions p ( i ) and q ( i ) .
This reassignment strategy preserves feasibility at every step and ensures that the total assignment cost is non-increasing. Importantly, due to the monotonic behavior of p ( i ) and q ( i ) during each swap, the misalignment set C is only locally affected. Specifically, machine pairs that do not involve indices i or i + 1 remain unaffected. This locality property guarantees that each iteration modifies only a small portion of the assignment and simplifies the update of C.
Algorithm 3 Misalignment elimination algorithm.
  • Require: Job types sequence ( t 1 , t 2 , , t m n ) , number of machines m, slot size n
  • Ensure: Optimized heavy job counts h 1 , h 2 , , h m
1:
Initialize misalignment set C
2:
for each machine i = 1 to m do
3:
   Set h i j = ( i 1 ) · n + 1 i · n t j {Initial heavy job count on machine i}
4:
   Compute p ( i ) and q ( i )
5:
   if  p ( i 1 ) q ( i )  then
6:
         C C { i 1 }
7:
   end if
8:
end for
9:
while  C  do
10:
   Select any i C
11:
   Update h i h i 1 , h i + 1 h i + 1 + 1
12:
   Update p ( i ) , q ( i ) , p ( i + 1 ) , q ( i + 1 )
13:
   for each k { i 1 , i , i + 1 } such that 1 k < m  do
14:
     if  p ( k ) q ( k + 1 )  then
15:
         C C { k }
16:
     else
17:
         C C { k }
18:
     end if
19:
   end for
20:
end while
21:
return  h 1 , , h m
Moreover, the slot positions p ( i ) and q ( i ) can be maintained and updated in constant time per iteration, i.e.,  O ( 1 ) , as previously discussed. Since each iteration performs a single resolution step by relocating one heavy job between adjacent machines, and each heavy job can be moved across at most m machines, the total number of iterations is bounded by O ( n m 2 ) . As each iteration requires constant time, the overall time complexity of the algorithm is O ( n m 2 ) . The memory usage is O ( n m ) .
We summarize the correctness and computational complexity of the proposed method in the following theorem.
Theorem 2.
The misalignment elimination algorithm computes an optimal monotonic assignment in O ( n m 2 ) time.
Proof. 
This proof is primarily devoted to establishing the optimality of the output produced by the misalignment elimination algorithm. The time complexity of the method has already been analyzed earlier and is not the focus here. We denote by ϕ ( S ) the assignment produced by the misalignment elimination algorithm when starting from the initial assignment S .
We first prove that the algorithm always converges to a unique assignment. Assume, for the sake of contradiction, that the algorithm terminates at two distinct monotonic assignment vectors, denoted by S 1 and S 2 , such that S 1 S 2 . Without loss of generality, let i be the smallest index such that S i 1 > S i 2 . Then there exists an intermediate assignment S , which occurs during the execution of the algorithm that leads to S 2 , such that the partial sum up to index i satisfies
k i S k = k i S k 1 ,
and yet S contains a misalignment at index i, that is,
p S ( i ) q S ( i + 1 ) .
By the monotonicity of the assignment process, we have
p S 1 ( i ) p S ( i ) q S ( i + 1 ) q S 1 ( i + 1 ) ,
which implies p S 1 ( i ) q S 1 ( i + 1 ) , contradicting the assumption that S 1 is misalignment-free. Therefore, the algorithm must converge to a unique final assignment.
Next, we show that the algorithm’s final assignment is optimal. Let S * = ( h 1 * , h 2 * , , h m * ) denote the optimal initial assignment, i.e., the one that minimizes total cost among all monotonic assignments. Then ϕ ( S * ) = ( x 1 * , x 2 * , , x m * ) is the corresponding optimal misalignment-free assignment produced by the algorithm ϕ . Let the assignment generated from the natural initial input ( h ¯ 1 , h ¯ 2 , , h ¯ m ) be ϕ ( h ¯ 1 , h ¯ 2 , , h ¯ m ) = ( x 1 , x 2 , , x m ) .
We prove by induction on m that ϕ ( h ¯ 1 , h ¯ 2 , , h ¯ m ) = ϕ ( S * ) . That is, we show that the final assignments match:
( x 1 , x 2 , , x m ) = ( x 1 * , x 2 * , , x m * ) .
Base case: When m = 1 , the result holds trivially since all heavy jobs must be assigned to the single machine.
Inductive step: Assume the claim holds for m 1 . For the case of m machines, we compare the first coordinate of the final assignment.
Suppose x 1 < x 1 * . Consider the modified input
( x 1 * , h ¯ 2 + ( h ¯ 1 x 1 * ) , h ¯ 3 , , h ¯ m ) ,
which preserves the total number of heavy jobs. By the monotonicity of ϕ , we obtain
ϕ ( h ¯ 1 , h ¯ 2 , , h ¯ m ) = ϕ ( x 1 * , h ¯ 2 + ( h ¯ 1 x 1 * ) , h ¯ 3 , , h ¯ m ) .
Now, by the induction hypothesis, we know that
ϕ ( h ¯ 2 + ( h ¯ 1 x 1 * ) , h ¯ 3 , , h ¯ m ) = ( x 2 * , , x m * ) ,
so the entire assignment equals ( x 1 * , x 2 * , , x m * ) , contradicting the assumption x 1 < x 1 * .
Now suppose x 1 > x 1 * . Because the algorithm ϕ moves heavy jobs forward to eliminate misalignments, once the assignment becomes misalignment-free, any further movement of heavy jobs would violate the alignment constraint and increase the total cost due to the monotonic increase in slot costs. Thus, no additional improvement is possible beyond the optimal misalignment-free configuration.
Applying this logic repeatedly, we obtain
TotalCost ( x 1 , x 2 , , x m ) < TotalCost ( ϕ ( x 1 1 , x 2 + 1 , x 3 , , x m ) ) < TotalCost ( ϕ ( x 1 2 , x 2 + 2 , x 3 , , x m ) ) < TotalCost ( ϕ ( x 1 * , x 2 + x 1 x 1 * , x 3 , , x m ) ) = TotalCost ( x 1 * , x 2 * , , x m * ) ,
where the last equality follows from the induction hypothesis. This contradicts the optimality of the corresponding optimal misalignment-free assignment produced by the algorithm  ϕ .
Therefore, we must have x 1 = x 1 * . By the induction hypothesis again, the assignments on the remaining m 1 machines also match. Thus, the entire final assignment produced by the algorithm matches the optimal one:
( x 1 , x 2 , , x m ) = ( x 1 * , x 2 * , , x m * ) .
   □

4.4. Experimental Evaluation

To evaluate the computational efficiency of the proposed misalignment elimination algorithm, a comprehensive runtime comparison was conducted against a baseline dynamic programming approach. The comparison focuses on two dimensions: the number of machines m, and the ratio of heavy jobs ρ = H / N , under realistic scheduling configurations.
Implementation Details: All algorithms were implemented in C++17 and compiled with g++ using the -O2 optimization flag. Experiments were executed on a Linux machine with an Intel i7-12700H CPU and 32 GB RAM. High-precision timing was measured using std::chrono. For each data point, 100 random instances were generated with fixed parameters, and the average runtime was recorded to reduce variance.
Each test case consists of N = m × n jobs, with exactly H = ρ N heavy jobs, randomly mixed with N H light jobs. The binary job sequence is randomly shuffled using std::shuffle to ensure unbiased sampling.
Scaling with Machine Number: The number of machines m { 10 , 20 , , 90 } was varied while keeping the slot number fixed at n = 5 and the heavy job ratio constant at ρ = 0.3 . As illustrated in the left panel of Figure 4, the runtime of the dynamic programming method increases rapidly with m, exhibiting a clear quadratic trend. This is consistent with its theoretical complexity of O ( n 2 m 2 ) , where both the number of machines and the slot count contribute multiplicatively to the computational cost. Since n is fixed in this experiment, the observed runtime growth reflects the m 2 term in the complexity, confirming that the method becomes substantially more expensive as the number of machines increases.
In contrast, the misalignment elimination method achieves significantly faster runtime and better scalability. By targeting only local conflicts and incrementally refining job assignments, it avoids the combinatorial overhead of global enumeration. The observed runtime follows a near-quadratic pattern, consistent with its theoretical bound of O ( n m 2 ) , yet with substantially smaller constant factors. This efficiency enables it to handle large-scale instances with minimal delay, demonstrating clear practical advantages over dynamic programming.
Scaling with Heavy Job Ratio: With machine and slot counts fixed at m = 20 and n = 5 , the heavy job ratio ρ [ 0.1 , 0.9 ] was varied. The right panel of Figure 4 shows that dynamic programming runtime increases with ρ , peaking around ρ = 0.6 due to a denser and more complex state space. Slight reductions beyond this point are attributed to more uniform job types reducing branching complexity.
Meanwhile, misalignment elimination remains consistently fast across all ρ , showing only minor variation. This robustness arises from its conflict-driven logic, which depends primarily on local slot-level constraints rather than the global distribution of job types.
Across both scaling dimensions, misalignment elimination demonstrates significantly better runtime performance than dynamic programming. It achieves reliable low-latency execution consistent with the O ( n m 2 ) bound, making it more suitable for large-scale or real-time scheduling scenarios where computational efficiency is critical.

5. Conclusions

This paper investigates an energy-aware scheduling problem in which a fixed sequence of heterogeneous jobs must be assigned to multiple identical machines with monotonically increasing slot costs. A key observation is that the contribution of light jobs remains invariant across all feasible assignments. This enables the problem to be reformulated as minimizing the cumulative cost associated with heavy job placements. To address the cost asymmetry under structural constraints, we propose the concept of monotonic machine assignment, which imposes index-based rules to guide job placement and restore regularity. This structure-aware reformulation narrows the solution space without sacrificing optimality, thereby facilitating efficient algorithmic design.
Based on this framework, we develop two optimal algorithms: a dynamic programming method with time complexity O ( n 2 m 2 ) and a more scalable misalignment elimination algorithm that achieves global optimality in O ( n m 2 ) time. Although the machines are structurally symmetric, inherent asymmetry in job costs and arrival order can lead to imbalanced naive assignments. In contrast, optimal solutions restore regularity through structured job allocation. Beyond algorithmic efficiency, the monotonic assignment model offers structural insight into how order-based constraints can be exploited to reduce complexity in asymmetric scheduling environments. This contributes to the broader literature on structure-aware optimization and highlights the role of latent regularities in enabling efficient scheduling under combinatorial constraints. Moreover, the simplicity and modularity of the proposed algorithms make them suitable for deployment in decentralized controllers, energy-sensitive embedded processors, and edge computing environments with real-time constraints.
While our algorithms are designed under a fixed job sequence and deterministic slot costs, this structural assumption reflects many real-world systems such as embedded controllers, pipelined compute chains, and energy-aware edge processors. In such environments, jobs typically arrive in a fixed order due to sensing or control dependencies, and energy or delay costs increase with position as a result of thermal buildup or battery degradation. Compared to heuristic or learning-based scheduling strategies, our model-driven approach provides structural transparency and provable optimality, without relying on extensive parameter tuning or large training datasets. Future research may explore online extensions or hybrid models that integrate structure-aware optimization with adaptive learning mechanisms. In addition, further directions include handling dynamically arriving jobs, accommodating heterogeneous machine architectures, and formulating multi-objective strategies that balance trade-offs between energy efficiency, latency, and fairness. It would also be valuable to investigate learning-based scheduling frameworks that adapt to workload patterns over time, as well as stochastic models that incorporate uncertainty in job characteristics and energy estimation.

Author Contributions

L.Z.: Conceptualization; Methodology; Validation; Formal Analysis; Resources; Writing—Original Draft; Writing—review and editing; Visualization; and Funding Acquisition. H.F.: Conceptualization; Methodology; Validation; Formal Analysis; Writing—Original Draft; Writing—Review and Editing; Visualization; and Supervision. M.S.: Validation; Formal Analysis; Writing—Review and Editing; and Visualization. All authors have read and agreed to the published version of the manuscript.

Funding

This research was supported by the National Natural Science Foundation of China (72201009).

Data Availability Statement

Data is contained within the article.

Conflicts of Interest

Author Mu Su was employed by the Chinese Academy of Science and Technology for Development. The remaining authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.

References

  1. Gelenbe, E.; Caseau, Y. The impact of information technology on energy consumption and carbon emissions. Ubiquity 2015, 2015, 1–15. [Google Scholar] [CrossRef]
  2. Freitag, C.; Berners-Lee, M.; Widdicks, K.; Knowles, B.; Blair, G.; Friday, A. The climate impact of ICT: A review of estimates, trends and regulations. arXiv 2021, arXiv:2102.02622. [Google Scholar]
  3. Venu, G.; Vijayanand, K. Task scheduling in cloud computing: A survey. Int. J. Res. Appl. Sci. Eng. Technol. (IJRASET) 2020, 8, 2258–2266. [Google Scholar] [CrossRef]
  4. Ding, L.; Guan, Z.; Luo, D.; Rauf, M.; Fang, W. An adaptive search algorithm for multiplicity dynamic flexible job shop scheduling with new order arrivals. Symmetry 2024, 16, 641. [Google Scholar] [CrossRef]
  5. Mei, X.; Wang, Q.; Chu, X.; Liu, H.; Leung, Y.W.; Li, Z. Energy-aware task scheduling with deadline constraint in DVFS-enabled heterogeneous clusters. arXiv 2021, arXiv:2104.00486. [Google Scholar]
  6. Sharifi, M.; Taghipour, S. Optimal production and maintenance scheduling for a degrading multi-failure modes single-machine production environment. Appl. Soft Comput. 2021, 106, 107312. [Google Scholar] [CrossRef]
  7. Chen, N.; Chen, Y.; Yi, W.; Pei, Z. A novel DQN-based hybrid algorithm for integrated scheduling and machine maintenance in dynamic flexible job shops. IET Collab. Intell. Manuf. 2025, 7, e70028. [Google Scholar] [CrossRef]
  8. Kocot, B.; Czarnul, P.; Proficz, J. Energy-aware scheduling for high-performance computing systems: A survey. Energies 2023, 16, 890. [Google Scholar] [CrossRef]
  9. Yao, F.; Demers, A.; Shenker, S. A scheduling model for reduced CPU energy. In Proceedings of the IEEE 36th Annual Foundations of Computer Science, Milwaukee, WI, USA, 23–25 October 1995; pp. 374–382. [Google Scholar]
  10. Ben Alla, S.; Ben Alla, H.; Touhafi, A.; Ezzati, A. An efficient energy-aware tasks scheduling with deadline-constrained in cloud computing. Computers 2019, 8, 46. [Google Scholar] [CrossRef]
  11. Jiang, F.; Xia, Y.; Yan, L.; Liu, W.; Zhang, X.; Li, H.; Peng, J. Battery-aware workflow scheduling for portable heterogeneous computing. IEEE Trans. Sustain. Comput. 2024, 9, 677–694. [Google Scholar] [CrossRef]
  12. Albers, S. Energy-efficient algorithms. Commun. ACM 2010, 53, 86–96. [Google Scholar] [CrossRef]
  13. Mosheiov, G. Scheduling jobs under simple linear deterioration. Comput. Oper. Res. 1994, 21, 653–659. [Google Scholar] [CrossRef]
  14. Boddy, M.; Dean, T.L. Solving Time-Dependent Planning Problems; Brown University, Department of Computer Science: Providence, RI, USA, 1989. [Google Scholar]
  15. Ho, K.I.; Leung, J.Y.; Wei, W. Complexity of scheduling tasks with time-dependent execution times. Inf. Process. Lett. 1993, 48, 315–320. [Google Scholar] [CrossRef]
  16. Etgar, R.; Shtub, A.; LeBlanc, L.J. Scheduling projects to maximize net present value—The case of time-dependent, contingent cash flows. Eur. J. Oper. Res. 1997, 96, 90–96. [Google Scholar] [CrossRef]
  17. Ng, C.T.; Cheng, T.E.; Bachman, A.; Janiak, A. Three scheduling problems with deteriorating jobs to minimize the total completion time. Inf. Process. Lett. 2002, 81, 327–333. [Google Scholar] [CrossRef]
  18. Wang, Z.; Goudarzi, M.; Gong, M.; Buyya, R. Deep reinforcement learning-based scheduling for optimizing system load and response time in edge and fog computing environments. arXiv 2023, arXiv:2309.07407. [Google Scholar] [CrossRef]
  19. Hou, H.; Agos Jawaddi, S.N.; Ismail, A. Energy efficient task scheduling based on deep reinforcement learning in cloud environment: A specialized review. Future Gener. Comput. Syst. 2024, 151, 214–231. [Google Scholar] [CrossRef]
  20. López, M.; Stafford, E.; Bosque, J.L. Intelligent energy pairing scheduler (InEPS) for heterogeneous HPC clusters. J. Supercomput. 2025, 81, 427. [Google Scholar] [CrossRef]
  21. Mokhtari, M.; Mohamadi, P.H.A.; Aernouts, M.; Singh, R.K.; Vanderborght, B.; Weyn, M.; Famaey, J. Energy-aware multi-robot task scheduling using meta-heuristic optimization methods for ambiently-powered robot swarms. Robot. Auton. Syst. 2025, 186, 104898. [Google Scholar] [CrossRef]
  22. Mahmood, A.; Khan, S.A.; Albalooshi, F.; Awwad, N. Energy-aware real-time task scheduling in multiprocessor systems using a hybrid genetic algorithm. Electronics 2017, 6, 40. [Google Scholar] [CrossRef]
  23. Khaitan, S.K.; McCalley, J.D. Design techniques and applications of cyberphysical systems: A survey. IEEE Syst. J. 2015, 9, 350–365. [Google Scholar] [CrossRef]
  24. Esmaili, A.; Pedram, M. Energy-aware scheduling of jobs in heterogeneous cluster systems using deep reinforcement learning. In Proceedings of the 2020 21st International Symposium on Quality Electronic Design (ISQED), Santa Clara, CA, USA, 25–26 March 2020; pp. 426–431. [Google Scholar]
  25. Zhang, Y.W.; Chen, R.K. A survey of energy-aware scheduling in mixed-criticality systems. J. Syst. Archit. 2022, 127, 102524. [Google Scholar] [CrossRef]
  26. Kulkarni, J.; Munagala, K. Algorithms for cost-aware scheduling. In Proceedings of the International Workshop on Approximation and Online Algorithms, Ljubljana, Slovenia, 13–14 September 2012; Springer: Berlin/Heidelberg, Germany, 2012; pp. 201–214. [Google Scholar]
  27. Im, S.; Kulkarni, J.; Munagala, K. Competitive algorithms from competitive equilibria: Non-clairvoyant scheduling under polyhedral constraints. J. ACM 2017, 65, 1–33. [Google Scholar] [CrossRef]
  28. Chen, L.; Megow, N.; Rischke, R.; Stougie, L.; Verschae, J. Optimal algorithms and a PTAS for cost-aware scheduling. In Proceedings of the International Symposium on Mathematical Foundations of Computer Science, Milan, Italy, 24–28 August 2015; Springer: Berlin/Heidelberg, Germany, 2015; pp. 211–222. [Google Scholar]
  29. Epstein, L.; Levin, A.; Marchetti-Spaccamela, A.; Megow, N.; Mestre, J.; Skutella, M.; Stougie, L. Universal sequencing on a single machine. In Proceedings of the Integer Programming and Combinatorial Optimization, Lausanne, Switzerland, 9–11 June 2010; Springer: Berlin/Heidelberg, Germany, 2010; pp. 230–243. [Google Scholar]
  30. Burkard, R.E.; Rudolf, R.; Woeginger, G.J. Three-dimensional axial assignment problems with decomposable cost coefficients. Discret. Appl. Math. 1996, 65, 123–139. [Google Scholar] [CrossRef]
  31. Caseau, Y.; Laburthe, F. Solving various weighted matching problems with constraints. In Proceedings of the Principles and Practice of Constraint Programming-CP97, Linz, Austria, 29 October–1 November 1997; Smolka, G., Ed.; Springer: Berlin/Heidelberg, Germany, 1997; pp. 17–31. [Google Scholar]
  32. Chuzhoy, J.; Guha, S.; Khanna, S.; Naor, J.S. Machine minimization for scheduling jobs with interval constraints. In Proceedings of the 45th annual IEEE Symposium on Foundations of Computer Science, Rome, Italy, 17–19 October 2004; pp. 81–90. [Google Scholar]
  33. Im, S.; Li, S.; Moseley, B.; Torng, E. A dynamic programming framework for non-preemptive scheduling problems on multiple machines. In Proceedings of the Twenty-sixth Annual ACM-SIAM Symposium on Discrete Algorithms. SIAM, San Diego, CA, USA, 4–6 January 2015; pp. 1070–1086. [Google Scholar]
  34. Bansal, N.; Pruhs, K. The geometry of scheduling. SIAM J. Comput. 2014, 43, 1684–1698. [Google Scholar] [CrossRef]
  35. Wang, X.; Cao, J.; Buyya, R. Adaptive cloud bundle provisioning and multi-workflow scheduling via coalition reinforcement learning. IEEE Trans. Comput. 2022, 72, 1041–1054. [Google Scholar] [CrossRef]
  36. Chandrasiri, S.; Meedeniya, D. Energy-efficient dynamic workflow scheduling in cloud environments using deep learning. Sensors 2025, 25, 1428. [Google Scholar] [CrossRef]
  37. Hussain, M.; Wei, L.F.; Lakhan, A.; Wali, S.; Ali, S.; Hussain, A. Energy and performance-efficient task scheduling in heterogeneous virtualized cloud computing. Sustain. Comput. Inform. Syst. 2021, 30, 100517. [Google Scholar] [CrossRef]
  38. Grami, M. An energy-aware scheduling of dynamic workflows using big data similarity statistical analysis in cloud computing. J. Supercomput. 2022, 78, 4261–4289. [Google Scholar] [CrossRef]
  39. Brännvall, R.; Stark, T.; Gustafsson, J.; Eriksson, M.; Summers, J. Cost optimization for the edge-cloud continuum by energy-aware workload placement. In Proceedings of the Companion Proceedings of the 14th ACM International Conference on Future Energy Systems, New York, NY, USA, 20–23 June 2023; e-Energy ’23 Companion. pp. 79–84. [Google Scholar]
Figure 1. Correction of light job monotonicity by reassigning a light job to the smallest-indexed available machine.
Figure 1. Correction of light job monotonicity by reassigning a light job to the smallest-indexed available machine.
Symmetry 17 00980 g001
Figure 2. Swap-based correction of heavy job monotonicity to ensure non-decreasing machine indices for earlier jobs.
Figure 2. Swap-based correction of heavy job monotonicity to ensure non-decreasing machine indices for earlier jobs.
Symmetry 17 00980 g002
Figure 3. Elimination of a misaligned assignment by exchanging a heavy job with a light job between adjacent machines.
Figure 3. Elimination of a misaligned assignment by exchanging a heavy job with a light job between adjacent machines.
Symmetry 17 00980 g003
Figure 4. Comparison of misalignment elimination and dynamic programming runtime under varying machine numbers and heavy job ratios.
Figure 4. Comparison of misalignment elimination and dynamic programming runtime under varying machine numbers and heavy job ratios.
Symmetry 17 00980 g004
Table 1. Summary of notations.
Table 1. Summary of notations.
NotationDescription
J j The j-th job in the global job sequence ( j = 1 , 2 , , N )
t j Type of job J j : 1 for heavy, 0 for light
M i The i-th machine ( i = 1 , 2 , , m )
nNumber of slots per machine
s k Energy weight of the k-th slot on a machine, with  s 1 < s 2 < < s n
x i , j , k Binary variable: 1 if job J j is assigned to the k-th slot of machine M i
c heavy Fixed positive coefficients reflecting the per-unit energy consumption of heavy jobs
c light Fixed positive coefficients reflecting the per-unit energy consumption of light jobs
Cost ( i , j , k ) Energy cost incurred by assigning job J j to slot s k on machine M i
a i ( j ) Number of jobs assigned to M i after the first j jobs have been scheduled
b ( j ) Machine to which job J j is assigned
h i Number of heavy jobs assigned to machine M i
HTotal number of heavy jobs in the system
h ¯ i Number of heavy jobs in the i-th block of n jobs (i.e., [ ( i 1 ) n + 1 , i · n ] )
D P [ i ] [ h ] Minimum cost of assigning h heavy jobs to the first i machines
g i ( k , h ) Minimum cost of assigning k heavy jobs and n k light jobs to M i , given h heavy jobs already assigned
p ( i ) Slot index of the last heavy job assigned to M i
q ( i ) Slot index of the first light job assigned to M i
light _ prefix [ j ] Number of light jobs among the first j jobs
heavy _ prefix [ j ] Number of heavy jobs among the first j jobs
ϕ ( S ) Output assignment produced by the misalignment elimination algorithm given input S
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Zhao, L.; Fu, H.; Su, M. Optimal Energy-Aware Scheduling of Heterogeneous Jobs with Monotonically Increasing Slot Costs. Symmetry 2025, 17, 980. https://doi.org/10.3390/sym17070980

AMA Style

Zhao L, Fu H, Su M. Optimal Energy-Aware Scheduling of Heterogeneous Jobs with Monotonically Increasing Slot Costs. Symmetry. 2025; 17(7):980. https://doi.org/10.3390/sym17070980

Chicago/Turabian Style

Zhao, Lin, Hao Fu, and Mu Su. 2025. "Optimal Energy-Aware Scheduling of Heterogeneous Jobs with Monotonically Increasing Slot Costs" Symmetry 17, no. 7: 980. https://doi.org/10.3390/sym17070980

APA Style

Zhao, L., Fu, H., & Su, M. (2025). Optimal Energy-Aware Scheduling of Heterogeneous Jobs with Monotonically Increasing Slot Costs. Symmetry, 17(7), 980. https://doi.org/10.3390/sym17070980

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop