Papers
Topics
Authors
Recent
Search
2000 character limit reached

MiCo: Hierarchical Framework for VM Scheduling

Updated 8 July 2026
  • MiCo is a hierarchical framework that uses language agents to discover and compose Python-based heuristics for virtual machine scheduling.
  • It reformulates scheduling as a Semi-Markov Decision Process with Options, separating non-contextual heuristic discovery from context-aware selection.
  • In large-scale tests, MiCo handles over 10,000 VMs with near offline-optimal performance while adapting to nonstationary request flows.

MiCo is a hierarchical language-agent framework for virtual machine scheduling in cloud computing, introduced for solving Online Dynamic Multidimensional Bin Packing (ODMBP) under large-scale complexity and fluctuating demands. It formulates ODMBP as a Semi-Markov Decision Process with Options (SMDP-Option) and implements a two-stage architecture—Option Miner and Option Composer—in which LLMs discover, refine, prune, and compose scheduling heuristics expressed as Python functions. In the reported large-scale enterprise setting, MiCo achieves a 96.9\% competitive ratio in scenarios involving more than 10,000 virtual machines, while maintaining high performance under nonstationary request flows and diverse configurations (Wu et al., 15 May 2025).

1. Formal problem setting

MiCo is defined for an ODMBP setting in which a set of NN physical machines (PMs) is given, each with dd-dimensional capacity CipmZdC^{pm}_i \in \mathbb{Z}^d, together with an online sequence of VM requests arriving one-by-one over time. Each VM request is specified by (vm_id,cvmZd,b{0,1})(vm\_id, c^{vm}\in\mathbb{Z}^d, b\in\{0,1\}), where b=1b=1 denotes a creation request and b=0b=0 a deletion request. At each VM-creation event, the scheduler must immediately assign the VM to one of the PMs, with action space A={1,,N}A=\{1,\ldots,N\}, without knowledge of future arrivals. Upon deletion events, resources are freed, but the update is deferred to the next arrival for synchronization.

The optimization target is to maximize the total number of successfully placed VMs, or a suitably weighted sum of rewards, subject to capacity constraints. In the discrete-time MDP formulation, the state is given as

st=({ci,tpm}i=1N;  bt,  ctvm;  Φt),s_t=\left(\{c^{pm}_{i,t}\}_{i=1}^N;\; b_t,\; c^{vm}_t;\; \Phi_t\right),

where ci,tpmZdc^{pm}_{i,t}\in\mathbb{Z}^d is the remaining capacity of PM ii at event dd0, dd1 and dd2 describe the arriving VM or deletion event, and dd3 is the VM-to-PM mapping history. The action dd4 selects a PM for a creation event; there is no decision for deletion.

The immediate reward is binary:

dd5

The process terminates on the first failure. When dd6 and dd7 is feasible, the remaining capacity is updated by

dd8

and the mapping is extended by dd9. When CipmZdC^{pm}_i \in \mathbb{Z}^d0, the deleted VM is queued in CipmZdC^{pm}_i \in \mathbb{Z}^d1 and actually freed at the next creation event. The objective is

CipmZdC^{pm}_i \in \mathbb{Z}^d2

This formulation makes explicit that the scheduling problem is online, dynamic, multidimensional, and resource-constrained. It also fixes the point at which MiCo departs from conventional heuristics: instead of hard-coding a single rule, it learns a hierarchy of temporally extended heuristics.

2. Hierarchical SMDP-Option reformulation

MiCo introduces a finite set of options CipmZdC^{pm}_i \in \mathbb{Z}^d3, each treated as a temporally extended policy. An option is defined as CipmZdC^{pm}_i \in \mathbb{Z}^d4, where CipmZdC^{pm}_i \in \mathbb{Z}^d5 is the initiation set, CipmZdC^{pm}_i \in \mathbb{Z}^d6 is the intra-option policy, and CipmZdC^{pm}_i \in \mathbb{Z}^d7 is the termination condition. Selecting among options induces an SMDP CipmZdC^{pm}_i \in \mathbb{Z}^d8.

The micro-level objective optimizes the option policy:

CipmZdC^{pm}_i \in \mathbb{Z}^d9

The macro-level objective optimizes the master policy (vm_id,cvmZd,b{0,1})(vm\_id, c^{vm}\in\mathbb{Z}^d, b\in\{0,1\})0:

(vm_id,cvmZd,b{0,1})(vm\_id, c^{vm}\in\mathbb{Z}^d, b\in\{0,1\})1

The resulting architecture is explicitly two-stage. Option Miner, described as the “micro-learner,” discovers a library of (vm_id,cvmZd,b{0,1})(vm\_id, c^{vm}\in\mathbb{Z}^d, b\in\{0,1\})2 non-contextual scheduling heuristics via LLM-based function optimization on segmented scenarios. Option Composer, described as the “macro-learner,” prunes and composes the mined options into a context-aware master policy. The distinction between non-context-aware and context-aware behavior is central: MiCo first searches for diverse reusable heuristics and only then learns how to switch among them according to workload context.

A plausible implication is that MiCo should be understood less as a monolithic policy network than as a language-driven hyper-heuristic system. That interpretation is consistent with the paper’s emphasis on temporal abstraction, robustness to nonstationary request flows, and interpretability (Wu et al., 15 May 2025).

3. Option Miner

Option Miner begins by partitioning the full VM stream of length (vm_id,cvmZd,b{0,1})(vm\_id, c^{vm}\in\mathbb{Z}^d, b\in\{0,1\})3 into (vm_id,cvmZd,b{0,1})(vm\_id, c^{vm}\in\mathbb{Z}^d, b\in\{0,1\})4 non-overlapping time windows of length (vm_id,cvmZd,b{0,1})(vm\_id, c^{vm}\in\mathbb{Z}^d, b\in\{0,1\})5, for example (vm_id,cvmZd,b{0,1})(vm\_id, c^{vm}\in\mathbb{Z}^d, b\in\{0,1\})6, thereby obtaining scenarios (vm_id,cvmZd,b{0,1})(vm\_id, c^{vm}\in\mathbb{Z}^d, b\in\{0,1\})7. Each scenario is intended to exhibit a distinct VM size distribution.

Within each scenario, an option scheduler is represented as a Python function of the form priority_v*(bin,item)->score. MiCo maintains a pool of top-(vm_id,cvmZd,b{0,1})(vm\_id, c^{vm}\in\mathbb{Z}^d, b\in\{0,1\})8 candidate policies and iteratively refines them via contrastive LLM prompting. The reported algorithm initializes a seed policy (vm_id,cvmZd,b{0,1})(vm\_id, c^{vm}\in\mathbb{Z}^d, b\in\{0,1\})9 with BestFit code for each scenario b=1b=10. For each iteration b=1b=11, each policy b=1b=12 is evaluated by simulation on b=1b=13 sampled subsequences from b=1b=14; the top-b=1b=15 policies are selected by average reward; the LLM is prompted with role_des, task_des, and the code of the top-b=1b=16 policies to generate b=1b=17; and the new policies are inserted and re-ranked. The final best policies are then returned as options.

The prompt template is also specified. In the scheduler prompt, the role is “You are an expert VM scheduler.” The task is “Given existing priority_v0, produce a more sophisticated priority_v* with multiple conditionals and loops.” The required output is Python code only. This design choice places the heuristic search space in directly executable source code rather than latent parameters, which is closely tied to the framework’s interpretability claims.

The Option Miner stage therefore operationalizes heuristic discovery as code generation guided by simulation feedback. The mined options are not learned embeddings or black-box action heads; they are explicit scheduling functions whose behavior can be inspected and compared.

4. Option Composer

Option Composer converts the mined heuristic library into a smaller and more context-aware control layer. It first performs option pruning by computing each option’s performance b=1b=18 across all b=1b=19 scenarios. An option is retained if it exceeds a single-scenario threshold b=0b=00 in at least one scenario, or if it is at least the mean performance in at least a b=0b=01 fraction of scenarios. This produces a reduced option set b=0b=02 with b=0b=03.

The master policy is represented as a Python function heuristic_selector_v*(condition)->{1,2,3,4}. The variable condition encodes the past b=0b=04 VM arrivals as histograms over VM types. As in Option Miner, MiCo applies LLM-based function optimization, here over b=0b=05 iterations. Each candidate master policy b=0b=06 is evaluated by simulating selections over b=0b=07 on b=0b=08 test sequences and measuring average reward b=0b=09. The LLM then receives the top-A={1,,N}A=\{1,\ldots,N\}0 master policies’ code together with a context-aware scheduler template and generates A={1,,N}A=\{1,\ldots,N\}1. Iteration proceeds until convergence, after which A={1,,N}A=\{1,\ldots,N\}2 is output.

This stage is where MiCo becomes context-aware in the strict sense used in the paper. The lower level supplies non-context-aware heuristics; the upper level learns a composing strategy that integrates those heuristics with contextual information derived from recent arrivals. The framework therefore separates heuristic invention from heuristic selection.

A common misconception is that MiCo is simply a direct LLM-for-control policy. In the reported design, the LLM does not schedule each VM online token by token. Instead, it discovers and refines Python heuristics and a Python heuristic selector, which are then evaluated in simulation and deployed as scheduling logic.

5. Implementation and empirical performance

The reported implementation uses GPT-4 as the language agent, with temperatures A={1,,N}A=\{1,\ldots,N\}3 and seed policies Best-Fit and First-Fit. The software and hardware environment is Python 3.7 on Ubuntu 20.04 with AMD EPYC 192 cores, 514 GB RAM, and NVIDIA A100. The core experimental setting uses A={1,,N}A=\{1,\ldots,N\}4 PMs and A={1,,N}A=\{1,\ldots,N\}5 resource dimensions, namely CPU and RAM. For the Huawei dataset, the configuration is A={1,,N}A=\{1,\ldots,N\}6, A={1,,N}A=\{1,\ldots,N\}7, A={1,,N}A=\{1,\ldots,N\}8, A={1,,N}A=\{1,\ldots,N\}9, st=({ci,tpm}i=1N;  bt,  ctvm;  Φt),s_t=\left(\{c^{pm}_{i,t}\}_{i=1}^N;\; b_t,\; c^{vm}_t;\; \Phi_t\right),0, and st=({ci,tpm}i=1N;  bt,  ctvm;  Φt),s_t=\left(\{c^{pm}_{i,t}\}_{i=1}^N;\; b_t,\; c^{vm}_t;\; \Phi_t\right),1. Simulations use 30 independent seeds per experiment, and a code validity ratio is monitored to ensure syntactic correctness (Wu et al., 15 May 2025).

Benchmark Reported result Comparison
Huawei “East-1” dataset (st=({ci,tpm}i=1N;  bt,  ctvm;  Φt),s_t=\left(\{c^{pm}_{i,t}\}_{i=1}^N;\; b_t,\; c^{vm}_t;\; \Phi_t\right),2 K requests, nonstationary over 1 year) MiCo mean performance ratio: 96.9% vs. offline Gurobi optimal Best-Fit 92.6%, First-Fit 89.7%, HindSight 90.5%, SchedRL 85.8%
AzurePublicDatasetV2 (st=({ci,tpm}i=1N;  bt,  ctvm;  Φt),s_t=\left(\{c^{pm}_{i,t}\}_{i=1}^N;\; b_t,\; c^{vm}_t;\; \Phi_t\right),3 K requests, more stationary) MiCo mean ratio: 71.5% vs. Gurobi st=({ci,tpm}i=1N;  bt,  ctvm;  Φt),s_t=\left(\{c^{pm}_{i,t}\}_{i=1}^N;\; b_t,\; c^{vm}_t;\; \Phi_t\right),4 over best heuristic at 65.5%

On the Huawei “East-1” dataset, MiCo outperforms SchedRL by 11.1\% on average and by 32.6\% in the hardest scenario, denoted st=({ci,tpm}i=1N;  bt,  ctvm;  Φt),s_t=\left(\{c^{pm}_{i,t}\}_{i=1}^N;\; b_t,\; c^{vm}_t;\; \Phi_t\right),5. On held-out test sequences, the reported boxplots show MiCo’s median and interquartile range exceeding all heuristics. In the large-scale setting emphasized in the abstract, the framework handles more than 10,000 VMs online with 96.9\% of offline optimal.

The ablation results specify which design choices matter. Without hierarchical composition, described as “fun-search only,” improvement over Best-Fit is at most 1.2\%, and the method fails to adapt to nonstationarity. Removing option pruning reduces the mean from 96.9\% to 95.4\% and leads to slower convergence and occasional scenario-mismatch. When the sample length st=({ci,tpm}i=1N;  bt,  ctvm;  Φt),s_t=\left(\{c^{pm}_{i,t}\}_{i=1}^N;\; b_t,\; c^{vm}_t;\; \Phi_t\right),6 varies from 100 to 800, MiCo remains above 92\% in all cases and peaks at 400–600. For temperature st=({ci,tpm}i=1N;  bt,  ctvm;  Φt),s_t=\left(\{c^{pm}_{i,t}\}_{i=1}^N;\; b_t,\; c^{vm}_t;\; \Phi_t\right),7, performance peaks around st=({ci,tpm}i=1N;  bt,  ctvm;  Φt),s_t=\left(\{c^{pm}_{i,t}\}_{i=1}^N;\; b_t,\; c^{vm}_t;\; \Phi_t\right),8–0.8, while code validity drops beyond st=({ci,tpm}i=1N;  bt,  ctvm;  Φt),s_t=\left(\{c^{pm}_{i,t}\}_{i=1}^N;\; b_t,\; c^{vm}_t;\; \Phi_t\right),9. Reported LLM variants are GPT-4 at 96.9\%, GPT-3.5-Turbo at 94.5\%, DeepSeekCoder v2 at 96.1\%, and DeepSeekCoder v1 at 96.2\%.

6. Interpretability, limitations, and broader significance

The paper identifies four principal strengths. First, MiCo supports automatic heuristic discovery and thereby eliminates manual rule-coding while adapting to workload shifts. Second, its hierarchical temporal abstraction is reported to be robust to nonstationary request flows and to extend the planning horizon. Third, the generated Python functions are interpreted as close to classical heuristics, including weighted-sum rules, dynamic weights, and lookahead. Fourth, the framework is reported to scale to more than 10,000 VMs online while approaching offline optimality (Wu et al., 15 May 2025).

The interpretability case study is especially important for situating MiCo within the scheduling literature. The Option Miner stage yields weighted-sum heuristics with ratio-based weighting, dynamic CPU/MEM trade-offs, and lookahead loops, and these are described as analogous to multidimensional bin-packing heuristics in Christensen et al., 2017 and Vidal & Farges, 2004. The Option Composer stage yields statistical feature extraction based on averages, trends, and accelerations, together with rule-based mapping to heuristics 1–4, and this is described as akin to context-aware hyper-heuristics. A plausible implication is that MiCo’s novelty lies not in abandoning hand-crafted scheduling ideas, but in automating their discovery and composition through LLM-guided search.

The limitations are also explicit. LLM inference cost is substantial because each iteration invokes GPT-4. Code validity is imperfect, with random failures reported at less than 5\% when ci,tpmZdc^{pm}_{i,t}\in\mathbb{Z}^d0, requiring retry logic. The framework also has a cold-start dependence on seed policies, specifically Best-Fit in the reported experiments, and “zero-knowledge startup” is identified as an open challenge.

Taken together, these features place MiCo at the intersection of combinatorial optimization, cloud scheduling, hyper-heuristics, and code-generating language agents. Its reported contribution is a concrete heuristic-design paradigm for ODMBP in which non-contextual options are mined, context-aware composition is learned, and both levels remain inspectable as executable scheduling code rather than opaque action distributions.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (1)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to MiCo Framework.