上周三去听初三年级的二次函数习题课,老师刚讲完三道利润最值的典型题,底下坐第三排的男生突然举了手。
“老师,我们算这个奶茶店卖多少钱赚最多,现实里真有人拿这个公式算啊?”
全班哄笑。老师也笑,说这是考题,你算对就行。
我在后排没笑。这问题问得太真了。
那句吐槽的潜台词
很多教了十几年书的老教师,一提到数学建模,第一反应是那是竞赛队的事——要拉着学生泡两周图书馆,找个听起来很前沿的题目,套个现成的算法,最后攒出几十页的报告去省赛拿奖。普通班的课堂?哪有那时间搞这个。
可那个男生的吐槽,根本不是故意拆台。他就是觉得,我们天天在课堂上算的“理想利润”,和他放学路过的那家奶茶店,根本是两个世界。
你想啊,题目里写的是“每涨1元少卖10杯”,线性的,没有例外,没有上限,哪怕你把奶茶卖到100块一杯,按公式算也能算出来个对应的销量。但现实呢?奶茶店的操作台一天最多做120杯,就算你卖得便宜,来买的人排到校门了,做不出来就是做不出来。

把模型拆成“带毛刺”的步骤
后来我拉着那个上课的老师磨了半节课,没搞什么大的改革,就把原来的习题课改了个小环节。
还是讲那道利润题。
第一步,先列公式,算出来“最优单价是5块,最大利润是900块”。这部分和原来的课没区别。
第二步,我让学生停笔,问大家:这个结果,拿到校门口的奶茶店老板那,能用吗?
一开始没人说话。过了半分钟,有个女生举手,说不对,刚才算的5块钱一杯的柠檬水,成本是2块,那这个价格下,我们算出来的销量是150杯——但我上周去买,那个老板说他一天最多卖120杯。
哦。
原来我们之前算的“最优解”,从根上就没考虑过产能上限。你把价格定在5块,确实按公式能赚900,但你根本做不出来那么多杯,最后实际赚的只有360块。
我当时把这个点用红粉笔写在板书最边上,真正的建模从来不是把题目给的条件列成公式,是你要自己去找那些题目没说的、藏在现实里的约束。
没有标准答案的。你可以考虑附近有没有竞品,天气热的时候销量会不会涨,甚至学生放学的高峰时段会不会排队挤走一部分顾客。这些东西没人会给你写在题干里。

别把建模上成“升级版应用题”

说实话,我之前也踩过这个坑。
前两年学校搞科技节,我们组出了个“校园建模小挑战”的活动,当时怕学生不会做,特意把题目出得“友好”:测算学校自行车棚的遮雨棚搭建成本,所有需要的参数都给好了——每平米棚子多少钱,人工多少钱,棚子的面积是多少,最后只要算个总数就行。
收上来的作业全对。但我翻了两本就觉得不对。
这哪是建模啊。这就是小学五年级的整数乘法应用题。
很多学校现在对建模的理解,就停在这个层面:把原来的应用题换个更贴近生活的外壳,所有条件给得严丝合缝,没有任何需要学生自己去探索的空间,学生只要列对式子就算完成任务。
说白了,还是在做题。
真的建模是什么?是你得自己去量自行车棚的实际尺寸,得去问做棚子的师傅,有没有材料的起订量,得考虑如果夏天刮大风,棚子的支架要做粗一点,额外加多少钱,甚至得算,上次学校修操场剩下的钢管,能不能拿来当支架,省一笔成本。
这些“不规整”的、没有标准答案的部分,才是建模最核心的东西。
有人会说,这也太费时间了,考试又不考这个,不如多刷两道题。
其实真不是。
我后来观察那个班的学生,自从那次磨课之后,做二次函数最值题的时候,总会多停两秒——算完结果,先回头看看,这个数合不合理。比如之前有学生算出来最优单价是1块钱一杯柠檬水,比成本还低,自己就先笑了,说这不对,卖一杯亏一杯,就算卖再多也赚不到钱。
这种意识,是刷十道题都刷不出来的。
上周再去那个班听课,我看到之前举手的那个男生,在自己的习题本上,给一道利润题的答案旁边写了个小小的括号:“如果下雨,销量会减。”
我当时站在窗边,突然就觉得,我们之前把建模抬得太高了。
总觉得那是竞赛生的专属,是要用到复杂算法的高级活动,是飘在PPT上的教学成果。
可它本来就该是这个样子的。
就是学生对着生活里的小问题,愿意多问一句“这个数真的对吗”,愿意多找一个藏在现实里的小约束。
没人喜欢假的题目。
对吧?