第90章 自由?(1/2)

教师食堂里,几个老师听陈航说完,都愣住了。

筷子停在半空,青菜掉进汤里,连隔壁桌英语组老师们的闲聊声都停了。

“排课问题?”赵老师最先反应过来,筷子一放,“你是说,那个分层走班制?”

“嗯。”陈航点头,“我当时就想,这应该是个约束优化问题。”

“你具体怎么想的?”史言哲放下碗,表情认真起来。

陈航简单说了说自己的思路:学生是节点,课程层次是边,教室和时间是约束条件,需要找到最优分配。

几位数学老师交换了一下眼神。

“你打算用什么方法?”年轻李老师问。

“开始想用试错法,但试了几个人就发现组合爆炸。”陈航说,“后来想用图论建模,或者线性规划,但……”

他顿了顿:“但我没系统学过这些。”

食堂里安静了几秒。

“噗——”赵老师突然笑出声,“好家伙,你小子是野路子出身啊!”

其他老师也笑了。

“野路子能解出imo题,这野路子够野的。”李老师调侃。

“不过排课问题确实是个经典的数学问题。”史言哲恢复了严肃,“你想到用优化方法,方向是对的。”

“史老师您研究过?”陈航眼睛亮了。

“没有专门研究,但我带过数学建模竞赛队,这类问题见过。”史言哲说,“吃完饭回办公室,咱们细聊。”

饭后,数学组办公室。

几个老师围着陈航的草稿本,看上面密密麻麻的公式和图表。

“你这已经想到很多了。”李老师指着其中一页,“约束条件列得很全。”

“但还缺一个目标函数。”赵老师推了推眼镜,“优化问题,你得明确要优化什么。是最小化冲突?最大化教室利用率?还是让学生课表最连贯?”

陈航想了想:“我觉得……应该是个多目标优化。”

“聪明!”李老师一拍大腿,“现实问题往往就是多目标的。但你得给不同目标分配权重。”

史言哲站在一旁,安静地看着陈航和几位同事讨论。

他注意到,当陈航开始谈论数学问题时,整个人都变了。那种课堂上心不在焉的淡漠消失了,取而代之的是一种专注的、几乎发光的状态。

就像……猎人看到了猎物。

“线性规划可能不够用。”赵老师思考着,“你这问题变量都是整数,学生只能整班整班地分,不能分半个学生去上课。所以更可能是整数规划问题。”

“而且规模很大。”李老师补充,“高一年级几百号人,每门课几个层次,加上教室和时间约束……变量数可能上千。”

“图论染色可以吗?”陈航问。

“可以尝试,但染色问题通常解决的是冲突避免,你这还有资源利用的优化。”赵老师顿了顿,“我建议你先从简化模型开始。比如先不考虑教室容量,只排时间;或者先不考虑学科关联性。”

陈航认真点头,拿出笔记本开始记。

“还有,你要考虑算法复杂度。”李老师提醒,“这种规模的整数规划,得用启发式算法,遗传算法、模拟退火、蚁群算法这些。”

“这些我都没学过。”陈航老实说。

“图书馆有书。三楼,计算机科学区,算法与数据结构分类。”

本章未完,点击下一页继续阅读。