第90章 自由?(1/2)
教师食堂里,几个老师听陈航说完,都愣住了。
筷子停在半空,青菜掉进汤里,连隔壁桌英语组老师们的闲聊声都停了。
“排课问题?”赵老师最先反应过来,筷子一放,“你是说,那个分层走班制?”
“嗯。”陈航点头,“我当时就想,这应该是个约束优化问题。”
“你具体怎么想的?”史言哲放下碗,表情认真起来。
陈航简单说了说自己的思路:学生是节点,课程层次是边,教室和时间是约束条件,需要找到最优分配。
几位数学老师交换了一下眼神。
“你打算用什么方法?”年轻李老师问。
“开始想用试错法,但试了几个人就发现组合爆炸。”陈航说,“后来想用图论建模,或者线性规划,但……”
他顿了顿:“但我没系统学过这些。”
食堂里安静了几秒。
“噗——”赵老师突然笑出声,“好家伙,你小子是野路子出身啊!”
其他老师也笑了。
“野路子能解出imo题,这野路子够野的。”李老师调侃。
“不过排课问题确实是个经典的数学问题。”史言哲恢复了严肃,“你想到用优化方法,方向是对的。”
“史老师您研究过?”陈航眼睛亮了。
“没有专门研究,但我带过数学建模竞赛队,这类问题见过。”史言哲说,“吃完饭回办公室,咱们细聊。”
饭后,数学组办公室。
几个老师围着陈航的草稿本,看上面密密麻麻的公式和图表。
“你这已经想到很多了。”李老师指着其中一页,“约束条件列得很全。”
“但还缺一个目标函数。”赵老师推了推眼镜,“优化问题,你得明确要优化什么。是最小化冲突?最大化教室利用率?还是让学生课表最连贯?”
陈航想了想:“我觉得……应该是个多目标优化。”
“聪明!”李老师一拍大腿,“现实问题往往就是多目标的。但你得给不同目标分配权重。”
史言哲站在一旁,安静地看着陈航和几位同事讨论。
他注意到,当陈航开始谈论数学问题时,整个人都变了。那种课堂上心不在焉的淡漠消失了,取而代之的是一种专注的、几乎发光的状态。
就像……猎人看到了猎物。
“线性规划可能不够用。”赵老师思考着,“你这问题变量都是整数,学生只能整班整班地分,不能分半个学生去上课。所以更可能是整数规划问题。”
“而且规模很大。”李老师补充,“高一年级几百号人,每门课几个层次,加上教室和时间约束……变量数可能上千。”
“图论染色可以吗?”陈航问。
“可以尝试,但染色问题通常解决的是冲突避免,你这还有资源利用的优化。”赵老师顿了顿,“我建议你先从简化模型开始。比如先不考虑教室容量,只排时间;或者先不考虑学科关联性。”
陈航认真点头,拿出笔记本开始记。
“还有,你要考虑算法复杂度。”李老师提醒,“这种规模的整数规划,得用启发式算法,遗传算法、模拟退火、蚁群算法这些。”
“这些我都没学过。”陈航老实说。
“图书馆有书。三楼,计算机科学区,算法与数据结构分类。”
本章未完,点击下一页继续阅读。