为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

Mathematica软件在数学模型课程教学中的应用

2010-05-30 3页 pdf 249KB 32阅读

用户头像

is_525054

暂无简介

举报
Mathematica软件在数学模型课程教学中的应用 © 1994-2010 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 第 29卷增刊第 2期               河池学院学报             Vol. 29 Supp lementary Issue No. 2   2009年 8月            JOURNAL OF HECH IUN IVERSITY           Aug. 2009 Math...
Mathematica软件在数学模型课程教学中的应用
© 1994-2010 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 第 29卷增刊第 2期               河池学院学报             Vol. 29 Supp lementary Issue No. 2   2009年 8月            JOURNAL OF HECH IUN IVERSITY           Aug. 2009 Mathemati ca软件在数学模型课程教学中的应用 邹永福 1, 2 , 夏文杰 2, 3 (1. 河池学院  数学系 , 广西  宜州  546300; 2. 中山大学  数计学院 , 广东  广州  510275; 3. 东莞理工学院  城市学院 , 广东  东莞  523106) [摘  要 ] 利用 Mathematica软件在符号运算、数值计算、函数作图 ,以及快速美观的数学公式输入等方面的 强大功能 ,实现 Mathematica软件辅助数学模型课程教学。 [关键词 ] Mathematica软件 ;数学模型 ;线性规划 ;整数规划 [中图分类号 ] G642. 0   [文献标识码 ] A   [文章编号 ] 1672 - 9021 (2009) S2 - 0093 - 03 [作者简介 ] 邹永福 (1979 - ) ,男 ,广西兴安人 ,河池学院数学系助教 ,中山大学数计学院在读硕士研究生 , 主要研究方向 :模式识别、机器学习、数据挖掘。 数学模型课程是一门综合性强的课程 ,教学内容主要涉及优化问题模型 ,规划模型 ,微分方程模型等等 ,这些模型在教学 上通常需要运用图形 ,数据表等方式让学生发现其中的规律 ,并建立数学模型 ,然后再对模型进行数值求解或符号运算 ,最后 还要对问题作出合理解释。这一系列过程通过多媒体形式教学 ,不仅能让学生对教学内容印象深刻 ,同时也提高了他们解决 实际问题的能力。Mathematica软件恰恰能很好的实现这一系列过程 [ 1 ]。 因此 ,本文从数学模型教学过程中关于电子课件的制作 ,微分方程模型求解 ,规划及优化问题模型求解等方面的应用出 发 ,逐一讨论 ,最后实现利用 Mathematica软件进行数学模型课程的多媒体教学。 一、Mathematica软件简介 Mathematica是一款科学计算软件 ,自从 1988发布 1. 0版本开始逐步更新改进 ,直到 2008年发布了 7. 0版本 ,并且从 5. 0 版开始对中文有了较好的支持。Mathematica软件已深入数学、物理、化学、地理、工程和金融等许多学科领域 ,它不仅可以实 现强大的符号演算 ,还能进行代数式向量、矩阵的各种计算 ,可以实现具有任意位精度的数值 (实、复数值 )的计算。 图 1 数学模型课程电子教案制作 另外 ,使用 Mathematica可以快速方便地画出用各种 方式表示的一元和二元函数的图形。最新的 Mathemati2 ca7有了更多的改进 ,功能更加完善。 二、利用 Mathematica制作数学模型课 程电子教案 Mathematica具有世界上最先进和便捷的数学排版 技术 ,允许数学公式的二维输入 ,能够实现交互式和编程 式的任意复杂排版表达式的输入 ,因此可以将数学模型 课程的教学内容录入到 mathematica的笔记本文档中用 于教学演示。 Mathematica的笔记本文档由 Cell (元组 )组成 ,每个 元组既可以是一行语句 ,也可以是多行语句。当同时按 下 Shift + Enter键 ,就会执行当前光标所在元组的程序 内容。 如果元组中的内容不是可执行代码 ,是文档内容时 , 可以通过修改该元组的默认格式 Input (输入 )为 Text文 字格式。这需要通过 Format菜单中的 Style子菜单的选项进行设置 ,图 1给出了某一节数学模型课程的演示内容的 Mathemat2 ica效果。 39 © 1994-2010 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 另外 ,在 Format格式菜单下的其他选项可以实现对选中的元组或文字进行修饰 ,见表 1。 在文档中还可以插入表格 ,图片 ,水平线等 ,菜单 Insert的部分子菜单及中文意义具体见表 2。   表 1 Format菜单下的部分选项及意义              表 2  Insert菜单下的部分选项及意义 选项名称 中文及表示的意义 Clear Formatting 清除格式 Op tion Inspector 选项设定 Stylesheet 表单样式 Screen Environment 屏幕环境 Edit Stylesheet 自定义表单样式 Font 文字的字体 Face 字体的样式 Size 文字的字号 Text Color 文字的颜色 Background Color 背景颜色 Text A lignment 文字对齐方式 选项名称 中文及表示的意义 Cell with Same Style 元组设置统一样式 Special Character 特殊字符 Color 颜色 Typesetting 文字输入设置 (如上下标 ,数学分式等 ) Table /Matrix 表格或矩阵式数据表 Horizontal L ines 水平分割线 File Path 文件路径 Picture 图片 File 文档 Object Active对象 Hyperlink 超链接   Mathematica的笔记本包含了超过 1 000多种格式和样式选项 ,可以直接从“Format”菜单中选择 ,也可以在相关函数的程 序中设置 ,这些格式和样式会给制作美观的数学模型课程电子教案带来很大的帮助。 三、Mathematica求解微分方程模型 在 Mathematica中 ,包含了求解数值方程和符号方程算法的大量函数。它的符号体系允许方程和解以简单便捷的符号形 式给出 ,并可以快速的集成到计算和可视化中。下面的例子将展示 Mathematica软件的符号运算功能用于求解微分方程模型。 在人口问题 [ 2 ]9中 ,既可以建立指数增长模型 ,也可以建立阻滞增长模型。而阻滞人口增长模型就是满足下面微分方程的 数学模型 :       dx d t = rx (1 - x xm ) x (0) = x0 可以通过 Mathematica中的 DSolve[ ]函数进行快速求解 ,代码为 :      DSolve[ { x’[ t] = = r3 x[ t] 3 (1 - x[ t] /xm) , x[ 0 ] = = x0} , x[ t ] , t ]; 对于更复杂的微分方程模型 ,可以通过其它的求解函数进行处理 ,表 3给出了求解微分方程或微分方程组的部分命令 ,更 多的函数命令可以通过 Mathematica的帮助平台和 Mathematica7资料参考中心 [ 3 ]进行查询。 表 3 求解微分方程 (组 )的部分命令形式及意义 命令形式 意义 DSolve[ eqns, y[ x] , x] 求解微分方程 (组 ) eqns, y[ x]为因变量 , x为变量 DSolve[ { eqns, y[ 0 ] = = x0} , y[ x ] , x] 求解微分方程 (组 ) eqns,满足初始条件 y[ 0 ] = = x0的解 y[ x] DSolve[ eqns, { y1, y2, ⋯} , x ] 求解微分方程 (组 ) eqns, { y1, y2, ⋯}为因变量列表 , x为变量 NDSolve[ eqns, y, { x, xm in, xmax} ] 求解微分方程 (组 ) eqns在区间 [ xm in, xmax]中的数值解   四、Mathematica求解规划及优化模型 [ 4, 5 ] Mathematica中也集成了大量的局部和全局性优化技术 ,包括求解线性规划、整数规划、二次规划、非线性规划及全局最优 化算法等。表 4给出了一些常用的命令格式 , 同时表中的 M inim ize可对应的改成 Maxim ize, FindM inimum改成 FindMaximum, 分别表示求相应函数的最大值。 表 4 求解规划及优化模型的部分命令及意义 命令形式 意义 L inearProgramm ing[ c, m, b ] 求 C3 x的最小值 ,并满足限制条件 m3 x > = b和 x > = 0 M inimize[ f, x] 得出以 x为自变量的 , f的最小值。 M inimize[ f, { x, y,. . . } ] 得出以 x, y,. . . 为自变量的函数 , f的最小值。 M inimize[ { f, cons} , { x, y, . . . } ] 根据约束条件 cons,得出 f的最小值 。 M inimize[ { f, cons} , { x, y, . . . } , dom ] 得出函数 f的最小值 ,函数含有域 dom上的变量 ,典型的有 Reals和 Integers。 FindM inimum [ f, x] 搜索 f的局部极小值 ,从一个自动选定的点开始。 FindM inimum [ f, { x, x0} ] 搜索 f的局部最小值 ,初始值是 x = x0。 FindM inimum [ f, { { x, x0} , { y, y0} ,. . . } ] 搜索多元函数的局部最小值。 FindM inimum [ { f, cons} , { x, y,. . . } ] 搜索约束条件 cons下局部最小值。 49 © 1994-2010 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 考虑利用 Mathematica的 Maxisize[ ]函数 ,实现对如下的规划问题 [ 2 ]98求解 : 一汽车厂生产小、中、大三种汽车 ,已知各类型每辆车对钢材、劳动时间的需求 ,利润以及每月工厂钢材、劳动时间的现有 量如表 5所示 ,试制定月生产计划 ,使工厂的利润最大。进一步讨论 :由于条件限制 ,如果生产某一类型汽车 ,则至少要生产 80辆 ,那么最优的生产计划应如何改变。 表 5 汽车厂的生产数据 小型 中型 大型 现有量 钢材 (吨 ) 1. 5 3 5 600 劳动时间 (小时 ) 280 250 400 60 000 利润 (万元 ) 2 3 4 模型建立及求解 :设每月生产小、中、大型汽车的数量分别为 x1 , x2 , x3 ,工厂的月利润为 z,则可得到如下整数规划模型 ( I) :       max z = 2x1 + 3x2 + 4x3        ( I)       s. t. 1. 5x1 + 3x2 + 5x3 ≤600 280x1 + 250x2 + 400x3 ≤60 000 x1 , x2 , x3 为非负整数 对于进一步讨论的问题 ,可以引入 0 - 1变量来实现 ,M 为充分大的实数 ,得到下面的整数规划模型 ( II)。       max z = 2x1 + 3x2 + 4x3        ( II)       s. t. 1. 5x1 + 3x2 + 5x3 ≤600 280x1 + 250x2 + 400x3 ≤60 000 x1 ≤M y1 , x1 ≥80y1 x2 ≤M y2 , x2 ≥80y2 x3 ≤M y3 , x3 ≥80y3 x1 , x2 , x3 为非负整数 y1 , y2 , y3 为非 0 - 1变量 Mathematica求解模型 ( I)程序 : Maxim ize[ {2x1 + 3x2 + 4x3, 1. 5x1 + 3x2 + 5x3 < = 600, 80x1 + 250x2 + 400x3 < = 60000, x1 > = 0, x2 > = 0, x3 > = 0, Ele2 ment[ { x1, x2, x3} , Integers] } , { x1, x2, x3} ]; 对于模型 ( II) ,只要再添加一些约束条件即可 ,取 M = 10 1^0,Mathematica求解程序为 : Maxim ize[ {2x1 + 3x2 + 4x3, 1. 5x1 + 3x2 + 5x3 < = 600, 280x1 + 250x2 + 400x3 < = 60000, x1 < = 10 1^03 y1, x2 < = 10 1^03 y2, x3 < = 10 1^03 y3, x1 > = 803 y1, x2 > = 803 y2, x3 > = 803 y3, x1 > = 0, x2 > = 0, x3 > = 0, Element[ { x1, x2, x3} , Integers ] , y1 = = 1 | | y1 = = 0, y2 = = 1 | | y2 = = 0, y3 = = 1 | | y3 = = 0} , { x1, x2, x3, y1, y2, y3} ] 如果遇到模型的数据保存于其它文件或数据库内 ,也可以通过 Import[ ]函数来导入数据文件。 五、结论 本文对利用 Mathematica软件实现数学模型课程多媒体教学做了初步探讨 ,可以看出 Mathematica软件辅助数学模型课程 教学是可行的。另外 ,使用 Mathematica软件可为求解微分方程和规划及优化问题提供帮助。 参考文献 : [ 1 ]丁大正. Mathematica 5在大学数学课程中的应用 [M ]. 北京 :电子工业出版社 , 2006. [ 2 ]姜启源 ,谢金星 ,叶俊. 数学模型 (第三版 ) [M ]. 北京 :高等教育出版社 , 2007. [ 3 ]Wolfram Research, Inc. Mathematica7资料参考中心 [ DB /OL ]. [ 2009 - 04 - 27 ]. http: / / reference. wolfram. com /mathematica /guide /Math2 ematica. htm l. [ 4 ]郭志军. Mathematica求解整数规划研究 [ J ]. 黑龙江科技信息 , 2007, (24) : 35 - 178. [ 5 ] stlxv. 使用 Mathematica解规划模型 [ DB /OL ]. [ 2006 - 09 - 22 ] , [ 2009 - 04 - 28 ]. http: / /blog. csdn. net/yxf /archive /2006 /09 /22 / 1266041. aspx. 收稿日期 2009 - 05 - 08 [责任编辑  刘景平 ] 59
/
本文档为【Mathematica软件在数学模型课程教学中的应用】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索