1. Introduction
Task–channel allocation aims to assign limited channel resources to multiple tasks in a way that satisfies task requirements while improving overall system efficiency and resource utilization. In satellite communication systems, channel resource allocation has received sustained attention because of fluctuating service demand, limited onboard resources, and strict operational constraints. Existing studies have addressed beam-hopping scheduling, satellite bandwidth management, and dynamic resource management by means of multi-objective evolutionary optimization, gradient-based improvement, and metaheuristic constraint-handling strategies [
1,
2,
3]. In hybrid GEO-LEO satellite networks and short-message satellite systems, resource allocation has also been combined with task offloading, load balancing, and long-term utility optimization [
4,
5,
6]. These studies demonstrate that resource allocation in satellite-related systems is strongly affected by dynamic demand, resource coupling, and operational constraints.
Many task–channel allocation problems with temporal and frequency constraints can be naturally cast as two-dimensional bin packing problems (2D-BPP) [
7,
8,
9]. Specifically, the time dimension and the frequency dimension jointly define a rectangular resource region on each channel, and each task, characterized by its required time interval and frequency bandwidth, corresponds to a rectangle that must be placed without overlap within the channel’s available region. This abstraction is not merely a mathematical convenience; it brings the problem into a well-studied domain with rich theoretical results and practical heuristics. 2D-BPP and their variants have been widely applied in logistics, manufacturing, memory management, and scheduling, demonstrating both practical versatility and significant theoretical richness. By recognizing the underlying 2D-BPP, we can leverage existing packing principles—such as envelope-based placement, minimal fragmentation strategies, and shelf-based ordering—to design efficient allocation algorithms while retaining the ability to incorporate domain-specific constraints.
In wireless communication networks, especially OFDMA, femtocell, and HetNet-based systems, resource allocation has been extensively investigated under cross-tier interference, heterogeneous services, imperfect spectrum sensing, channel uncertainty, and quality-of-service requirements [
10,
11,
12,
13]. These studies have shown that convex approximation, decomposition, distributed optimization, game-theoretic modeling, and learning-assisted methods can effectively improve throughput, capacity, or network profit in specific scenarios [
11,
14,
15]. However, most of these methods are designed for power allocation, subchannel assignment, caching, offloading, or user association, and their optimization variables and objective settings differ from task–channel allocation problems with coupled temporal-frequency constraints. Moreover, although learning-based methods have shown strong adaptability in dynamic environments [
16,
17,
18,
19,
20], they usually emphasize long-term policy learning and often do not explicitly characterize reconfiguration feasibility, reconfiguration sequence, or transition cost under strict structural constraints.
For general constrained allocation problems, exact optimization is often difficult because of combinatorial complexity, compatibility requirements, and multi-resource coupling. Accordingly, many researchers have turned to heuristic, metaheuristic, and evolutionary methods. Representative studies include hybrid greedy–metaheuristic methods for combinatorial allocation [
21], pruning-enhanced backtracking for allocation with compatibility and exclusivity constraints [
22], and genetic or swarm-based methods for NP-hard multi-objective allocation problems [
23,
24]. In parallel, distributed and dynamic optimization methods have been developed for resource allocation under dynamic constraints, event-triggered communication, and local convex-set constraints [
25,
26,
27]. These efforts indicate that the structure of constraints largely determines the choice of solution method.
In practical systems, resource failures, resource unavailability, or environmental changes may cause an originally feasible allocation scheme to become invalid. Under such circumstances, it is not sufficient to only compute a feasible target allocation; it is also necessary to determine how to move from the initial allocation state to the target state with low reconfiguration cost and acceptable execution efficiency. Nevertheless, existing studies mostly focus on static allocation optimization or dynamic adaptation separately, while relatively limited attention has been paid to the coordinated treatment of static task–channel allocation and subsequent dynamic reconfiguration, especially when both temporal and frequency constraints must be satisfied simultaneously.
To address this issue, this paper proposes a two-stage approach that integrates static task–channel allocation with dynamic reconfiguration. First, a static allocation model is established to obtain feasible task–channel allocation strategies under resource constraints. The effectiveness of this static allocation is demonstrated through both small-scale and large-scale experiments, showing its capability to generate feasible and efficient assignments across different problem sizes. On this basis, a dynamic reconfiguration model is further constructed to generate a reconfiguration scheme when the original allocation becomes infeasible due to resource failure. The performance of the dynamic reconfiguration is evaluated on both small- and large-scale scenarios. Experimental results show that the proposed reconfiguration algorithm can generate feasible, compact, and low-cost reconfiguration schemes.
The remainder of this paper is organized as follows.
Section 2 formalizes the static task–channel allocation problem and describes the greedy allocation algorithm with its complexity analysis.
Section 3 defines the dynamic reconfiguration problem and proposes a heuristic search-based reconfiguration algorithm that ensures feasibility and minimizes transition cost.
Section 4 provides experimental results on both small-scale and large-scale scenarios, comparing the proposed methods with several baseline approaches. Finally,
Section 5 concludes the paper and discusses future research directions.
4. Case Study
This paper validates the proposed static task–channel allocation method and allocation scheme dynamic reconfiguration method through several sets of data. In addition, the performance of these methods is compared with related algorithms. The experiments are conducted on a Legion Y9000P laptop with Windows 11, an Intel Core Ultra 9 processor, and 32 GB of memory. The algorithms were implemented in Python 3.13.5 and developed using PyCharm 2024.1.7 Professional Edition.
In the static task–channel allocation experiments, we first conducted experiments using a small-scale dataset. The small-scale datasets are used to illustrate the allocation process under different task sizes and initial channel-occupation conditions. Each small-scale group consists of three channels, and the number of tasks varies from 10 to 25. The time range of the channels is [0, 90], and the bandwidth ranges of the three channels are [0, 36], [0, 54], and [0, 72], respectively. Although the channel bandwidth settings are the same across the small-scale groups, the number of tasks and the initially occupied tasks on each channel are different, resulting in different resource-occupation patterns.
The following algorithms: dynamic programming algorithm, Hungarian algorithm, genetic algorithm, and randomized algorithm are selected as baseline methods for comparison with Algorithm 1. For a fair comparison, all these methods are implemented under the same task and channel constraints. The dynamic programming algorithm formulates the bandwidth allocation problem as a two-dimensional bin-packing variant and derives the final allocation scheme by applying a staged allocation process to multiple candidate task sequences under the channel-capacity and non-overlapping constraints. The Hungarian algorithm formulates the channel–task allocation problem as a constrained assignment problem, constructs a cost matrix according to the feasibility and bandwidth-occupation change of each task–channel assignment, and iteratively updates the task set and channel-occupation state to obtain the final allocation scheme. The genetic algorithm encodes each allocation scheme as a chromosome consisting of task-ordering and channel-selection genes. During decoding, tasks are assigned according to the encoded order and selected channels. If a task cannot be feasibly placed on the encoded channel, it is repaired by searching other feasible channels; otherwise, it is marked as unassigned. In the experiments, the genetic algorithm uses a population size of 50 and runs for 50 generations in small-scale cases, while it uses a population size of 500 and runs for 100 generations in large-scale cases. The maximum number of generations is used as the stopping criterion. The randomized algorithm processes tasks according to their input order and places each task by sequentially checking the available channels and feasible positions under the non-overlapping constraint, ensuring a consistent allocation process; if no feasible placement is found, the task is discarded and the algorithm proceeds to the next task. All methods are evaluated using the same RFR definition and computational environment.
As shown in
Table 1, the compared methods are evaluated using two metrics: RFR and computational time. RFR is reported as a percentage, and the running time is reported in seconds using the format mean ± standard deviation over 30 repeated runs. Algorithm 1 performs well on both metrics. In terms of RFR, Algorithm 1 has the lowest value among all the compared methods in most experiments. For example, it remains at a low value in the small-scale dataset, far lower than the generally high levels of other methods, which proves that the algorithm model indicates better solution quality under the considered objective. In terms of computational efficiency, the running time of this method is also significantly lower than that of these selected methods. In the small-scale static task–channel allocation experiments, Algorithm 1 even achieves the shortest runtime among all compared methods and has the fastest running speed. In addition, Algorithm 1 achieves both the lowest RFR and the shortest computational time in almost all experimental scenarios, leading comprehensively in these two core dimensions, which fully proves the superiority and practicality of this method.
Following the completion of the static task–channel allocation experiments, we further evaluated the performance of dynamic reconfiguration under channel failure conditions.
Table 2 reports the damage scenario of the eight small-scale datasets, while
Table 3 compares Algorithm 2, the rule-based algorithm, and the randomized algorithm in terms of scheme length, reconfiguration cost, and running time on the eight small-scale datasets. The initial allocation strategy
is generated by Algorithm 1 before channel failure, while the target allocation strategy
is obtained by re-running Algorithm 1 after a single-channel failure. For consistency, the failed channel is set to the third channel in all datasets, whose bandwidth range is [0, 72]. Since this channel has the largest bandwidth among the three channels, its failure represents a relatively severe single-channel failure scenario. Note that Algorithm 2 takes
and
as inputs and is not restricted to a specific failed channel; if another channel fails, the corresponding
can be generated in the same way and the same reconfiguration procedure can be applied.
As shown in
Table 2, the first row denotes the total number of tasks included in the experiment, the second row denotes the number of different entries between the initial allocation matrix and the target allocation matrix, and the third low denotes the number of tasks whose allocation states need to be changed. The rule-based algorithm first extracts these adjusted tasks from the initial strategy and then places them into the target channels one by one according to
. As shown in
Table 3, Algorithm 2 achieves the shortest scheme length in all datasets and the lowest reconfiguration cost in all datasets. It also has the lowest running time on the small-scale cases, indicating that it can efficiently generate compact and low-cost reconfiguration schemes when the problem size is limited. In contrast, the rule-based algorithm obtains the longest scheme length and the highest reconfiguration cost, because it removes the affected tasks one by one and then reallocates them one by one during the reconfiguration process, which increases both the number of reconfiguration events and the accumulated implementation cost. The randomized algorithm generally produces longer schemes and higher costs due to its random task-selection process. These results demonstrate the superiority of Algorithm 2 in generating efficient, compact, and low-cost reconfiguration schemes under small-scale dynamic reconfiguration scenarios. The running time is reported in seconds using the format mean ± standard deviation over 30 repeated runs. For the randomized algorithm, the random selection sequence is fixed within each experimental group, so repeated runs produce the same reconfiguration result and only the running time varies.
The reconfiguration process generated by Algorithm 2 is represented as a sequence of reconfiguration events, where each event denotes the allocation-state change of one task. Since moving one task may conflict with other tasks, some tasks can be temporarily removed and reallocated in later steps. To illustrate this dynamic process, the second small-scale experimental set is used as an example, the initial static allocation strategy is
, the target static allocation strategy is
, and its reconfiguration sequence is shown in
Figure 2. The obtained sequence is
. In
Figure 2, each sub-matrix represents an intermediate allocation state, with rows corresponding to channels and columns corresponding to tasks. Each sub-matrix has a size of 3 × 15, representing the allocation relationship between 3 channels and 15 tasks. The colored blocks highlight the changes between consecutive states: blue denotes the original task placement, yellow denotes task addition, red denotes task deletion, and green denotes task movement. This example shows how Algorithm 2 adjusts tasks step by step until the target allocation state is reached.
After the small-scale experiments, large-scale experiments are conducted to further evaluate the scalability of the proposed methods. Compared with the small-scale setting, the large-scale setting uses more diverse channel bandwidth ranges, selected from [0, 36], [0, 54], [0, 72], and [0, 300]. The datasets cover four task-density settings, namely low-load, high-load, overload, and high-occupancy cases. For each setting, both uniform and Gaussian task distributions are considered. Specifically, Groups 1–2 are low-load cases, Groups 3–4 are high-load cases, Groups 5–6 are overload cases, and Groups 7–8 are high-occupancy cases, where the two groups in each pair correspond to uniform and Gaussian distributions, respectively. These datasets are used to examine algorithm performance under different resource-demand intensities, task-distribution patterns, and channel bandwidth configurations.
As shown in
Table 4, Algorithm 1 maintains good performance on the large-scale datasets, where each dataset contains 500 tasks and 400 channels. The evaluation metrics are the same as those used in
Table 1, including RFR and running time. Similar to the small-scale results, Algorithm 1 achieves competitive RFR values across the eight experimental groups, indicating stable allocation quality under different task-density and task-distribution settings. In terms of computational efficiency, Algorithm 1 shows a clear advantage. Its running time is only about 3–5 s in all large-scale cases, whereas the compared methods require tens or even hundreds of seconds. These results demonstrate that Algorithm 1 can maintain stable allocation performance and high computational efficiency as the problem scale increases.
After evaluating Algorithm 1 on large-scale static allocation cases, we further examine the large-scale dynamic reconfiguration performance of Algorithm 2. Since Algorithm 2 is limited by the reconfiguration search space, the large-scale dynamic experiments use a reduced setting with 350 tasks and 200 channels compared with the large-scale static allocation experiments. Meanwhile, the number of adjusted tasks is controlled around 20 to ensure that the reconfiguration search can be completed. In each group, the same damaged channel ids are used for all compared algorithms to ensure consistency.
Table 5 reports the damage scenario of the eight large-scale reconfiguration groups, including the number of damaged channels, matrix differences, and the number of adjusted tasks. Compared with the small-scale results,
Table 5 additionally reports the number of damaged channels to describe the failure severity.
Table 6 compares Algorithm 2, the rule-based algorithm, and the randomized algorithm in terms of scheme length, reconfiguration cost, and running time. As shown in
Table 6, Algorithm 2 achieves the shortest scheme length and the lowest reconfiguration cost in all large-scale groups. These results show that, when the number of adjusted tasks is controlled, Algorithm 2 can still generate compact reconfiguration schemes with low reconfiguration cost under larger problem settings. Meanwhile, the running time increases noticeably compared with the small-scale cases, since the enlarged allocation matrix and reconfiguration search space require more intermediate states to be generated and evaluated. This indicates that the proposed method provides a favorable balance between reconfiguration quality and computational effort, with improved compactness and lower reconfiguration cost obtained at the cost of longer running time.
The parameter
for all experiments is set to 10 and the parameter
is set to 0.9. Here,
is used to weight the accumulated resource-dependent reconfiguration cost, while
defines the upper bound of RFR for intermediate allocation strategies. The same parameter settings are used for all datasets to avoid dataset-specific tuning and ensure a fair comparison. To examine the influence of
, sensitivity tests are conducted on the first small-scale dynamic reconfiguration case. As summarized in
Table 7, the results show that increasing
from 1 to 10 helps Algorithm 2 obtain a shorter scheme length and a lower unscaled reconfiguration cost, while further increasing
to 15 and 20 does not improve the solution quality but significantly increases the running time. Therefore,
= 10 is used as the default setting, providing a reasonable balance between reconfiguration quality and computational efficiency. In addition,
is determined according to the experimental setting to allow feasible intermediate allocation strategies while keeping the RFR within an acceptable range.