## RosterWeave 项目申报书

**基本信息**

- 项目名称：RosterWeave：基于 MoonBit 的可解释公平排班优化引擎
- 参赛者：周子皓
- 联系方式：2586798229@qq.com
- GitHub 仓库链接：[https://github.com/zhou506403/zhou](https://github.com/zhou506403/zhou)
- 项目方向：MoonBit 约束求解与排班优化应用 / 组合优化基础组件
- 是否为移植项目：否，原创项目

**项目简介**

RosterWeave 是一个使用 MoonBit 实现的可解释公平排班优化引擎，面向志愿活动、实验室值班、社区诊所、小型门店和运维轮值等场景，根据人员技能、可用时间、班次需求、休息规则和公平性要求自动生成排班方案。项目不仅输出排班结果，还提供约束冲突、无法分配原因、公平性指标、容量瓶颈和人员缺席影响，帮助使用者理解、比较和调整方案。项目提供可复用的 MoonBit 核心库、命令行示例、CSV 数据接口以及文本、CSV 和 JSON 报告。

**核心功能范围**

- 提供人员、技能等级、班次、可用时间、个人偏好和排班结果等类型化数据模型；
- 支持人员不可用、重复分配、班次重叠、最短休息、总工时上限和连续工作天数等硬约束；
- 支持班次最低人数及分级技能覆盖要求，并输出未覆盖人数和技能短缺原因；
- 实现确定性贪心构造、候选排序和局部移动搜索，在满足硬约束的前提下优化排班；
- 支持工作量、夜班、周末班、个人偏好和加班成本的公平性评分及分项解释；
- 提供候选分配拒绝原因、最终方案说明、求解审计轨迹和方案差异比较；
- 支持人员与班次 CSV 输入，以及文本、CSV 和 JSON 格式的结果输出；
- 提供社区志愿活动、社区诊所和运维轮值三个可以直接运行的示例场景；
- 提供班次容量、技能瓶颈、人员缺席敏感性和应急补员建议分析；
- 提供超过 4000 行有效 MoonBit 实现、自动化测试、GitHub Actions 持续集成、完整 README 和 Mooncakes 发布包。

**移植或参考说明**

- 项目性质：原创项目
- 项目许可证：Apache License 2.0
- Mooncakes 包：`zhou506403/rosterweave@0.1.0`

本项目不移植已有开源项目代码。算法设计使用约束检查、贪心构造、局部搜索、评分优化和敏感性分析等通用方法，数据模型、公共接口、求解流程、解释系统、测试和示例均使用 MoonBit 独立实现。项目当前不包含第三方代码、素材或数据集；后续如引入开源依赖，将在 README 和 NOTICE 中注明项目名称、来源链接、许可证及使用范围。
