高考考试网
当前位置: 首页 高考资讯

数学建模遗传算法的应用(数学建模与编程教学融合的计算思维教育分析)

时间:2023-06-17 作者: 小编 阅读量: 3 栏目名: 高考资讯

案例一项目学习“BMI指数测算”。根据相关规定,BMI指数是用体重千克数除以身高米数的平方得出的数值,WHO规定了偏瘦、正常、偏胖的BMI值范围。要求画出BMI测算的流程图,并编写Python程序,能够根据输入的身高、体重值判断偏瘦、正常还是偏胖。

教学实践中数学建模应用的疑惑

《普通高中信息技术课程标准(2017年版)》(简称《课标》)指出:计算思维是指个体运用计算机科学领域的思想方法,在形成问题解决方案的过程中产生的一系列思维活动。这一系列的思维活动包括界定问题、抽象特征、建立结构模型、合理组织数据等操作。可见,建模是形成解决方案所产生的一系列思维活动中的重要环节之一。

模型是对事物原型进行模拟或抽象后形成的在某些方面不失真的近似反映。模型可分为对真实事物按比例缩放的直观模型、知识或经验存储于人脑中的思维模型、用符号语言抽象描述事物特征及关系的符号模型等,不同学科也会用不同模型来描述并解决学科问题,如数学模型、计算模型、经济模型等。由于《课标》没有对“结构模型”作出具体阐述,在教学实践中,一线教师往往都将数学建模作为计算思维培养的重要环节。

案 例 一

项目学习“BMI 指数测算”。情境描述如下:在国家学生体质健康标准中,不仅测算身高、体重,还会测算体质指数BMI。根据相关规定,BMI指数是用体重千克数除以身高米数的平方得出的数值,WHO规定了偏瘦、正常、偏胖的BMI 值范围。要求画出BMI 测算的流程图,并编写Python程序,能够根据输入的身高、体重值判断偏瘦、正常还是偏胖。教师设计的教学流程如下:

①抽象与建模,确定BMI的计算公式,即完成BMI=体重值/身高值^2的数学建模;

②设计算法,画出反映分支结构的流程图,并编写程序;

③调试运行,记录运行结果。

根据案例1预设的教学要求,学生以解决身边真实问题为目标,通过数学建模,学习算法的分支结构,实现计算思维的培养。对照《课标》关于计算思维的描述,仍存在一些困惑:其一,①中关于BMI 指数的数学建模,是不是符合《课标》中“建立结构模型”的要求,这涉及“建立结构模型”究竟是什么,及其与数学建模的关系;其二,①中抽象与建模,只是针对WHO有关规定书写了BMI计算公式及判别范围,该过程是否达到了数学建模教学所要求的学习效果,这涉及什么是数学建模教学的问题;其三,②中分支结构的运用,是否也是一种建模,这涉及如何理解程序设计中的建模问题。

数学模型与数学建模概念追溯

数学模型是将某事物系统的主要特征、主要关系经抽象以后用数学语言概括地或近似地表达的一种数学结构。数学模型是实际问题的一种数学刻画,可以是方程、函数乃至图表或图形。例如,BMI的计算公式就是描述人的健康状况的一种数学刻画,结果用分段函数表示人的体型胖瘦是否正常。

以数学模型为工具来解决实际问题的方法称为数学模型方法。数学模型具有概括性,现实世界的一些问题可以归纳为某一成熟的数学模型来解决。植树问题就是小学数学中的一个典型数学模型,通过该模型可以让学生深刻理解并感悟全长与间距、棵数与间隔数之间的关系。生活中许多例子可以归结为植树模型,如剪彩的人数和所得绳子的段数之间的关系、日历中具体的日期和中间间隔的天数之间的关系都符合植树模型。

数学模型方法也包括建立数学模型,即数学建模,就是将某一领域的具体问题,经过抽象、简化,明确变量和参数,依据某种规律建立变量和参数间的数学关系(数学模型),然后求解问题,并对此结果进行解释和验证,必要时还需要修正模型。如在案例1中,BMI模型的建立,就是依据健康医学方面的知识并采集相关数据,运用回归分析等数学方法,提出假设,建立BMI指数与身高、体重的函数关系以及判别健康与否的分段函数,最后对该数学模型进行验证。由此可知,在案例1中,学生并没开展有关BMI的数学建模活动,而是直接引用了BMI的计算公式,教学设计中的数学建模只是一种问题导入的情境素材,其本质上是为了实现分支结构教学目标。

数学建模是数学学科的核心素养要素之一。高中数学课程标准要求:数学建模活动是对现实问题进行数学抽象的一个过程,学生首先要学会用数学语言表达实际问题,再用数学方法构建模型解决问题。学生需要经历以下过程:联系生活实际,以数学的视角发现问题、提出问题、分析问题、形成模型,通过数学的语言对模型进行参数确定、计算求解,对模型进行结果检验、模型改进,解决实际问题。

观点1:数学建模是数学学科的教学内容之一。在数学建模教学活动中,学生从现实世界中获取有价值信息并进行定量分析,运用所学的数学知识、技能以及思想方法表达现实问题,形成通过数量关系认识事物的思维品质,提高用数学思维发现和提出问题、分析和解决问题的能力。

数学建模中的编程应用分析

数学是人类对世界直观感知、高度抽象以及理性认识的产物,数学建模则是应用数学联系现实世界的重要纽带。数学建模的发展从数学学科向计算机、生物、物理等领域渗透,几乎涉及人类所有的知识领域,成为这些学科不可或缺的必备工具。另外,计算机技术的应用,也提高了数学建模的功效,运用计算技术能够更有效、快捷、准确地发现问题、理解问题、解决问题。无论是在模型假设阶段还是在验证阶段,计算机都可以帮助收集基本信息、基本数据,提供多种假设的可能性,快速验证假设的有效性。特别是在模型求解时,通过编制计算机程序,可以高速、准确地求得模型的解,从而提高数学模型的应用效率。开展数学建模教学,融入编程及算法实现的教学内容,既反映了计算机技术支持下数学建模解决问题的真实现状,也有利于通过跨学科学习培养学生解决问题的综合能力。

案 例 二

笔者早期主编的《数学建模与算法实现》一书中收录的一个高中数字建模教学案例“篮球罚球投篮”。问题情境如下:按照标准尺寸,罚球位置与篮框水平距离4.6米,篮框高3.05米,篮球直径0.246米,质量0.6千克,篮框直径0.45米,讨论怎样的出手角度和出手速度可以使罚球投中成功率最高。学习活动设计如下:

①分析问题,简化条件,提炼关键信息,如不考虑篮球在空中运动时的空气阻力和篮球自转产生的影响;

②分析篮球、球架、球框等参数关系,提出反映出手高度、出手速度、出手角度与上述参数之间关系的函数表达以及合理的数值范围,即实现初步的数学建模;

③编制程序,采用循环方法,针对不同的出手高度和出手速度,计算合理的出手角度,记录数据;

④应用数学模型,分析数据,得到若干结论,如随着出手速度的增加,出手高度对出手角度的影响变小。

比较案例1和案例2可以发现,案例2中的学生经历了数学建模的全过程,将身边的一个非纯数学问题转化为数学问题并用数学方法解决。教学过程主要体现了数学思想方法的培养,计算思维支持学生自如地使用编程工具解决数学建模过程中的计算问题。在实际教学实践中,要求学生已经掌握了循环结构的编程技能,能够以编程技术为工具获得投篮命中的出手高度、出手速度、出手角度相关数据供分析。因为如果学生不具备相应的编程技能,就会出现两方面的问题:其一,学生在数学建模的问题解决过程中,难以主动意识到用编程的方法产生数据进行分析;其二,学习编程技能所需要的时间成本开销可能会冲淡数学建模教学的连贯性。

观点2:案例2是以数学思想方法学习为教学主线,编程技术是教学实施环节中的一种支持工具。在这一类教学实践中,学生计算思维的培养主要体现在计算学科思想方法应用的意识建立和熟练应用方面,而应用意识的养成是以掌握学科方法为前提的。

计算学科中的模型与建模

模型方法就是根据研究要求,舍弃次要的、非本质的因素,抓住主要的、本质的因素,建立一个便于研究、能反映研究对象目标要求的新形象。模型方法并不是数学学科所独有的,如知识管理专业就用DIKW模型描述从数据、信息、知识到智慧的进阶关系。由于专业视角不同,模型也有局限性,如DI KW强调从数据中获取信息,而不强调客观世界的本体信息用数据表征的过程。在计算学科,建立模型就是运用模型方法表达出一般化的计算方法或计算过程。计算思维作为一种学科思维,支持计算学科的建模过程。

因此,运用模型方法可以简洁地表示计算学科的基本原理和工作模式。例如,由CPU、存储器、I/O及接口、三种总线等组成的一般化的计算机组织结构,就是反映计算机工作原理的模型。依据该模型,可以解释键盘输入的键值通过I/O接口及总线读入CPU,并根据需要存入内存的工作过程。

模型具有层次性,不同层次需要用不同的模型来表述。在高级语言层次的模型,CPU不再被关注,重点反映的是数据的存储与处理流程。所以,程序设计所涉及的模型通常是一种反映自动执行序列的过程模型,这类模型的关键要素有数据结构、运算公式和流程控制,具体是通过变量定义、赋值语句、控制语句来构造自动化的。

案 例 三

求1 2 …… 100的累加和的编程教学。通常的教学过程如下:①问题分析,确定采用s=s i,i=1、2……100的循环累加方法;②确定循环初值、结束条件以及循环体的操作;③绘制流程图,编写程序。

累加求和是程序设计中的一种基础算法。如在案例3中,变量s作为累加器,与变量i 相加后结果存回累加器s中;随着i 的变化,该操作重复100次。案例3的教学过程,是学习用循环结构实现累加的算法,也是经历建模的过程,该模型由变量s和i、运算公式s=s i和i=i 1、循环控制结构所确定。①完成了累加求和学科方法的初步认识,②完成了累加求和算法的实施细节,③完成了用程序设计语言表述该模型的构造。从某种意义上说,算法就是用于计算的一种过程模型,程序是该模型的一种形式化表达。

学生在掌握了累加求和算法后,遇到相类似的问题,就可以用相同的算法或相似的建模方法来构造程序。例如,对于连续输入100个数,求该100个数之和这样一个问题,学生很容易通过迁移获得解决问题的方法。一般而言,学生面对问题,可以迁移成熟算法的建模思想,或者将该问题转化为成熟算法问题,最终实现计算。以上建模和化归的应用,都是计算思维的体现。

在案例1中,其教学目标是通过BMI指数判别学习分支结构。用建模的观点分析案例1,可以发现,该教学可以使学生经历这样一个建模过程,即建立一个由分支结构、BMI计算公式以及相关参数变量组成的模型。同时,学生也形成这样一种解决问题的意识:凡是具有分段函数特征的问题,都可以转换为分支结构的模型来实现可计算化。

观点3:计算思维重点体现在个体是否具备将问题可计算化的意识与能力,其中算法起到了很明显的作用。算法作为一个成熟的模型,是运用计算学科的思想和建模方法,将问题一般化,经过抽象以及形式化表达,并经历自动化执行验证所形成的。理解并运用成熟算法,或经历算法形成的建模过程,都是良好的计算思维培养渠道。

编程教学与数学建模的融合

由于数学学科和计算学科的天然关联,许多数学学科思想方法支持计算学科的发展。在算法与程序实现中,往往可以直接使用成熟的数学模型,在案例1中,就是直接采用BMI模型作为程序的计算公式。这是因为许多数学模型具有确定性、符号性等特征,恰好与程序设计所需要的可计算要求相吻合。数学建模的思想方法也支持具有自动化属性的程序构造,在案例3中,累加求和本质上就是数学思想的实现,只是在数据结构、程序流程控制等方面有明显的计算机技术特征。

案例3原本就是一个学习循环结构的典型例题。从教学视角分析可以发现,该例题可以清晰地阐述循环结构的关键要素,如执行累加操作的循环体、循环结束的判断条件以及循环初值设定等。在教学过程中,可以清晰地阐述这些关键要素,帮助学生理解循环结构的编程应用。

事实上,案例3 的教学情境并不是一个完全真实的应用场景。作为一名程序员,如果要完成1 2 …… 100这一类等差数列累加操作,一般不会采用累加求和的方法,而只要采用高斯定理s=(1 100)*100/50,仅需要一条赋值语句就可以高效地完成运算。

如果在教学中,采用高斯定理编程实现,将会如何呢?当然其教学目标就不再是循环结构的认识了。将1 2 …… 100的计算,用s=(1 100)*100/50公式表示,这一过程本质上也是数学建模,即用数学模型方法来解决数学问题。在此教学过程中,学生获得的体验是:运用成熟的数学模型结论可以清晰地形式化表达问题,方便程序构造,最后自动化实现。

如果学生没有高斯定理的认知基础,那么,在教学中,教师就需要引导学生完成1 2 …… 100求和的计算推导,即首先需要数学建模s=(1 100)*100/50,然后才程序实现。在此教学过程中,虽然高斯定理的推导是解决数学问题,但数学建模是为程序实现服务的,经历这样的过程,可以使学生体会到数学建模对程序实现的重要性,同时也感受到数学建模的思想方法可以迁移到程序实现的应用中。

案 例 四

递推算法。主要教学过程如下:

①引入课题,分享斐波那契和兔子的故事;②分析兔子问题,推导斐波那契数公式;③提出实际问题:走道上有15块地板,规定每步可以走一块或两块地板,从第一块走到最后一块,共有几种走法?最后得出符合斐波那契数公式的结论;④编写程序并调试运行;⑤归纳总结。

案例4预设的教学目标是:学会运用递推算法来解决实际生活问题,培养计算思维。在实际教学中,因为学生没有斐波那契数的认知基础,故花费了大部分的课时来理解和推导斐波那契数公式,结果学生重点关注的是用数学的方法解决问题,缺乏体验到采用合理的算法构造及程序实现来实现递推的巧妙,同时也淡化了计算思维培养的实际效果。

观点4:数学建模作为将现实问题经抽象以后形式化表达的一种有效方式,在编程实现中有独特的作用。编程教学是中小学计算思维培养的重要渠道,在计算思维教育中,需要正确理解数学建模的作用,合理运用数学建模开展编程教学。

数学建模教学给计算思维教育的启示

计算思维教育不在于宏大叙事,而在于教学细微之处的落实。数学建模的教学实践经验对计算思维教育有启示意义。程序设计的工作是通过问题分析、构造算法,最终形成可以自动执行的指令序列。程序设计与数据建模在方法上很相似。数学建模教学不满足套用现成的数学公式解决问题,而是强调学生在经历分析问题、建立模型、确定参数、计算求解、检验结果、改进模型过程中自觉地用数学的眼光观察世界并发现问题和解决问题。编程及其算法教学可以借鉴数学建模的教学理念,不能仅以学会使用Python语言、冒泡算法或者调用库函数实现人脸识别为目标,而应培养学生形成用计算的观点看待世界,形成将问题可计算化的意识与能力。这也正是计算思维教育的目标。

数学建模教学强调经历问题解决的全过程,计算思维教育也一样。任何理性的思维都是解决问题的思维,在计算思维教育中,问题解决仅是一个基础性目标,不能把所有的问题解决都归为计算思维,关键在于是否采用计算学科的思想方法解决问题。从数学建模与编程教学相融合的教学案例中可以发现,数学建模与程序实现中的建模要求有相同也有不同。就模型类型而言,数学模型有函数模型、概率模型、几何模型等,而程序设计通常是选择合适的数学模型结果,并用程序语言描述的过程模型来实现,该过程模型的建立,是以自动化实现为目标的,是用形式化的方式精确表达的,具有符号性、离散性、确定性等特征,可以实现对象控制和数据交换。

计算思维的培养不可能架空于计算学科知识与方法的学习而存在,个体对计算学科知识与方法的认识深度也影响其计算思维形成的深刻性。计算机应用的广泛性,促使计算思维有更广泛的应用价值,其教学形态往往是在与其他学科知识相结合解决实际问题的场景下完成的,具有跨学科学习特征。

在本文中所列的数学建模与编程教学融合的案例中,数学学科和计算学科的思想方法也是相互交融互为支持的,但不同的案例所侧重的教学目标还是有差别的。以计算思维为培养目标的编程教学,其相关教学需要符合计算学科的问题解决脉络,合理运用计算学科知识与方法获得可计算的形式化表达,设计算法以获得可计算的构造,不能以跨学科学习为理由来掩盖对计算学科认识的模糊。


(本文作者:王荣良,华东师范大学)

文章刊登于《中国信息技术教育》2022年第12期

    推荐阅读
  • 陕西省外省入陕(在陕西生活你知道陕A)

    陕西省车牌号的第一个是汉字:代表该车户口所在省的简称,咱陕西的车自然就是陕。A西安市陕AAncient(古老)Alter(改变)旧为长安,13朝古都闻名世界。今称西安,创新改革惊世全球。其中钼矿储量位居中国第二。G安康市陕GGarden(花园)秦巴腹地,汉水之滨,安康被称为"西安后花园"。关注可能导致意外升职、加薪、找到男(女)朋友、怀孕等严重后果,未成年人请在父母陪同下谨慎关注

  • 怎么给女朋友安全感这4个方法令她安心

    大方给她看手机当手机不在成为你的秘密,她就对你放心了。给她仪式感每个女生都希望每天生活在仪式感里,男孩子认为仪式感很花钱,也没什么用,但这不仅是对女朋友的重视还是对生活的重视。在一起时间长了,生活会磨淡新鲜感,偶有的仪式感能唤醒彼此的重视,让对方感受但温暖,这样一来女朋友会更有安全感。这都是让她心安的方式。

  • 福建长汀美食推荐(福建长汀必吃的客家美食)

    其中以姜汁白斩河田鸡最为著名,它以其香、脆、爽、嫩、滑和易脱骨而深受赞誉。选用上等河田鸡精心制作,金黄油亮,肉香扑鼻,诱惑十足。金黄色泽,油炸提香,土猪鲜美,肥而不腻。把炒熟的肉丝、韭菜、豆芽、鲜笋、虾米、香菇等馅放入米饼,卷成筒状,与油条相似。簸箕饭美味可口,多食不腻。朋友们来长汀,一定要去尝尝这些必打卡的客家美食哦。

  • 我的世界绿宝石怎么挖 我的世界绿宝石怎么挖掉

    1、去附魔台给镐子附魔一个时运3,有了时运3附加的稿子,挖起绿宝石来能一个爆多个,如果只用没有附魔的镐子来挖就只能爆出一个绿宝石。

  • 微波炉可以用玻璃碗吗(微波炉可不可以用玻璃碗)

    以下内容希望对你有帮助!一般玻璃不会阻挡微波通过,也不会发热,所以玻璃可以进微波炉。判断容器是否能放进微波炉最重要的是掌握三要素:微波炉穿透力强、耐高温、符合食品卫生要求。忌用金属器皿,因放入炉内的铁、铝、不锈钢、搪瓷等器皿,微波炉在加热时会与之产生电火花并反射微波,既损伤炉体又不能加热食物。

  • 作家赵丽宏简介(关于作家赵丽宏简介)

    作家赵丽宏简介赵丽宏,1952年出生于上海,作家、散文家、诗人,全国政协委员、上海市人民政府参事、中国作家协会全委会委员、中国散文学会副会长、上海作家协会副主席、《上海文学》杂志社社长、华东师范大学、交通大学兼职教授。2014年被授予北京师范大学-香港浸会大学联合国际学院荣誉院士荣衔。荣获中国新时期优秀散文集奖。组诗《中国,我亲爱的祖国》被谱成交响曲合唱,获得中宣部“五个一”工程奖。

  • 久组词和造句(含组词和造句)

    他是一个敢作敢为的人,办事从来不含糊。这种水果中的维生素c含量较高。你能理解这句话的含义,证明你还是动了一番脑子的。

  • 江铃福特途睿欧有8座的吗(江铃福特途睿欧自动挡上市)

    江铃福特途睿欧自动挡车型的外观内饰与手动挡车型保持一致,搭载2.0TEcoBoost发动机,传动匹配6速手自一体变速箱。前脸是典型典型的福特家族设计,整体感觉较为厚重,符合MPV车型该有的稳重气质。新车车身尺寸分别为车长4976mm,车宽2032mm,车高1990mm,轴距2933mm。随着自动挡车型的加入,途睿欧进一步提升了自身的竞争力。另外值得一提的是,途睿欧后空气悬挂注定会成为卖点,在同级别竞争对手中,也算是独一份。

  • 牛皮豆干的制作方法(牛皮豆干如何制作)

    牛皮豆干的制作方法备料:上等黄豆3公斤,精盐600克,酱油250克,桂皮15克,姜丁25克,香葱15克,味精10克。点浆时应注意均匀一致,要勤搅,但要防止乱搅。先将500克精盐放人3公斤清水中搅匀,再把晾凉的豆干置干盐水缸内,浸泡半天后捞出,沥去水分。将已制成的卤水回锅烧沸加人豆干,煮30分钟左右,取一豆干观察,如色呈棕红,味道香美,即可取出。

  • 古风王侯名字(登元君聘好名字)

    登元、君聘好名字两岸台湾进士陈登元,字君聘。殿试和朝考都是皇上主持的考试,殿试确认甲第、名次,朝考决定安排职务。按理说,有穷秀才没有穷举人,陈登元在乡任教并且两度担任台湾西学堂的汉文教习,应该是收入尚可的。1897年又因不堪日吏的欺辱,归返福建漳浦,卒葬漳浦灶山。学术著作有《闽台区域社会研究》等18部,300余万字。主播介绍肖璞韬,评书表演艺术家单田芳弟子,“京彩台湾”新媒体专家委员会专家委员。