高中排课助手
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,在 AI 助手中安装 @user_f29e80df/paike-lesson 技能。
技能介绍
要解决的问题
高中排课的难点不在「排满」,而在同时满足一组互相挤压的约束:教师不能在同一时段出现在两个班,班级同一时段只能有一门课,体育课必须与老师傅课表完全一致,走班学生的原班时段要留出自修或兼容位,课时≤5 的科目一周内每天最多一节,英语在日语走班相关班级必须统一节次,自修课还要在五天之间大致均衡。把这些手工排进 16~18 个班、每天上午 5 节加下午 3 节的网格里,冲突往往在排到第三四天才暴露。
技能如何工作
输入四份数据:教师任职表、走班情况、体育课固定安排、特殊约束。排课严格按七个步骤顺序执行:先锁定体育课(直接抄写,不可动),再按走班规则排走班课,锚点顺序为周一第 5 节→周二第 8 节→周三第 3 节→周四第 5 节→周五第 1 节;之后依次排语数英、排物化生政史地信息通用、排其他科目,最后用回溯均衡填充自修。
算法层面,每步内部按优先级处理,排每门课时用 MCV(Most Constrained Variable)先试约束最多的课程;每个时段赋值前检查七条硬约束(H1 教师冲突、H2 班级冲突、H3 教联体时间、H4 走班同步、H5 课时均匀、H6 英语统一、H7 体育课固定),全部通过才继续,并用前向检查剪枝,卡住则回退上一步。建议跑 3~5 次回溯,选软约束评分最高的方案。
输出是一张年级总课表:横向各班并列,纵向按周一到周五、上午 1-5 节与下午 6-8 节排列,单元格用 政2、信2、X/通、[走]、5+6生 等标注含义。输出前助手必须逐项跑一遍自检清单,再告知用户人工微调方向:教师连续性、自修再均衡、特殊需求、走班时段优化。
适用边界与注意点
高一 16 个行政班横向只列 1-16 班;高二、高三各 18 个班且走班更复杂。走班规则每个学段不同,以用户提供为准,技能不会自行发明规则。软约束(教师同天课程相连、任课多者一天不超过 4 节、上午下午搭配等)冲突时一律让路给硬约束,并把冲突点报告给人工决策。产出是供教务人员微调的初表,不是可直接执行的终稿。
使用场景
- 高中教务拿到教师任职表、走班情况和体育课固定安排,需要按回溯流程生成年级初表并输出可微调总课表
- 高二高三出现复杂走班时,需要按锚点时段排走班课,并检查原班自修与目标班科目是否同步
- 排课时要在硬约束下处理语数英固定时段与教联体禁排时段,再用回溯均衡填充自修课,避免某天堆叠
- 需要把体育课锁定后继续排其他科目,并按 H1-H7 检查教师冲突、班级冲突与英语统一时段
适合人员
- 高中教务员或排课负责人,需要在教师冲突、走班同步和体育固定安排下产出年级初表
- 县中/学校教务处管理者,要求先跑硬约束自检,再把初表交给教师人工微调
- 负责走班年级的年级主任或教务助理,需要按锚点和同步规则处理选考科目
- 教育信息化工程师,想复现回溯排课流程并把输出接入现有教务表格流程