目录

赛题题目:基于深度强化学习的云-边-端异构计算资源管理调度方法(高校赛题)

赛题说明:

本赛题聚焦云-边-端异构计算环境中的资源管理与调度问题。给定任务 DAG 及多类型计算资源(云/边/端),任务之间存在依赖约束;在资源速度与跨节点通信带宽不一致的情况下,调度器需要在每一步选择一个就绪任务并将其分配到合适的计算节点,从而尽量降低整体完成时间(makespan)。赛题强调的不仅是”训练一个DRL模型”,更要求参赛者提供一个可复用的训练与评测框架:参赛方法应当能够抽象并封装环境状态、动作空间与合法性约束,支持场景(任务图与资源参数)的生成/加载,提供统一的策略接口以便评测脚本批量调用,并能与外部调度方法(如启发式基线、行为克隆等)进行公平对比。参赛者需要设计清晰的模块边界,使得环境与资源配置可替换、算法可插拔、实验流程可复现。最终,参赛者应输出在验证集上的标准化指标与模型/配置说明,展示其框架的可训练性、可扩展性与工程可用性。

赛题要求:

  • 基于 openEuler、openKylin、OpenHarmony 等至少一个国内主流开源操作系统开发,鼓励在更多Linux发行版上编译、运行和测试。
  • 参赛者需提交一个可训练的 DRL 调度框架,用于云-边-端异构计算资源管理调度。
  • 框架必须支持将环境与资源参数抽象为可配置组件,便于更换任务规模、资源类型与异构参数。
  • 框架必须提供统一的调度策略接口,使评测脚本能够在同一组验证场景上对不同策略进行公平比较。

评分细则(明确评审角度、标准和分值范围):

  • 功能完整性(40 分)

    • (1) 代码可运行:一键完成”训练 + 验证评测 + 产出结果文件”(如 summary.json/表格),且不依赖手工修改关键代码(10 分)
    • (2) 模块化/抽象能力:环境、资源配置、场景来源、策略接口(Policy/Scheduler)解耦清晰,能通过配置替换资源规模/异构参数(10 分)
    • (3) 插拔接口:参赛者框架支持接入至少一种外部调度方法(如 HEFT、BC 或用户自定义策略),评测脚本可统一调用并输出同一指标(10 分)
    • (4) 合法动作处理:对 ready/task mask 等约束有明确实现(如 action masking、非法动作惩罚/过滤),训练与推理阶段行为一致(10 分)
  • 性能优化(35 分)

    • (1) 指标表现:在给定验证集上达到更优 mean_ratio = mean(RL_makespan / HEFT_makespan),并给出均值与方差或样本规模说明(15 分)
    • (2) 泛化能力:在未参与训练的场景(或不同划分)上性能保持稳定,避免仅对少量场景过拟合(10 分)
    • (3) 训练策略有效性:合理设计采样/更新/早停/超参,并能解释选择原因(5 分)
    • (4) 工程效率:在合理时间/算力预算下达到性能(5 分)
  • 文档质量(25 分)

    • (1) 赛题对齐说明:文档清楚描述”问题建模—环境—动作定义—奖励设计—训练流程—评估指标”的对应关系,且与代码一致(10 分)
    • (2) 复现实验说明:给出运行命令/配置文件示例、关键超参、数据划分方式、输出路径、依赖版本(如 PyTorch 版本)(10 分)
    • (3) 可读性与结构:目录组织合理、接口原型/类职责明确、图示或伪代码帮助理解框架(5 分)

赛题联系人:

汪老师 wlp@nwpu.edu.cn

参考资料:

  • Grapheonrl, AasishKumarSharma/grapheonrl-benchmark

DRL 云-边-端 异构调度框架 (dr-ce-scheduler)

面向赛题 #16 基于深度强化学习的云-边-端异构计算资源管理调度方法 的可复用 DRL 调度框架。

问题

给定任务 DAG(任务间存在依赖)与多类型异构计算资源(云/边/端,节点速度不同、跨节点通信带宽不同), 调度器在每一步选择一个就绪任务并将其分配到一个计算节点,目标最小化整体完成时间 (makespan)。

核心评测指标

mean_ratio = mean(RL_makespan / HEFT_makespan),越低越好(< 1 表示优于经典启发式 HEFT)。

模块边界(赛题要求:环境/资源/场景/策略解耦、可插拔、可复现)

src/sched/
  env/          # DAG 表示、异构资源模型、执行仿真(makespan 解析计算)、增量调度状态
  scenarios/    # 场景(DAG+资源)生成与加载、训练/验证集划分
  policies/     # 统一 Policy 接口 + 启发式基线(HEFT/随机) + 行为克隆 + RL(PPO)
  training/     # PPO 训练器、rollout
  evaluation/   # 在固定验证集上对所有策略公平评测,产出 summary.json
  utils/        # IO、日志、种子
scripts/        # run_train.py / run_eval.py / train_eval.py 一键流水线
configs/        # YAML 配置(环境/资源/训练/场景),可替换规模与异构参数

一键复现

pip install -r requirements.txt
# 生成验证集场景
python scripts/generate_scenarios.py --config configs/scenarios_default.yaml
# 训练 + 评测 + 产出 summary
python scripts/train_eval.py --config configs/train_ppo.yaml
# 仅评测(含 HEFT/随机基线对比)
python scripts/run_eval.py --config configs/train_ppo.yaml

详细文档见 docs/

关于
112.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号