计算机模拟在数学建模中的应用精要
第 22 卷第 1 期 海南大学学报自然科学版 Vol . 22 No . 1 2004 年 3 月 NATURAL SCIENCE JO URNAL OF HAINAN UNIVERSITY Mar . 2004
文章编号:1004 - 1729 (2004) 01 - 0089 - 07
计算机模拟在数学建模中的应用
欧宜贵 ,李志林 ,洪世煌
(海南大学信息科学技术学院 , 海南海口 570228)
摘 要: 阐述了计算机模拟在数学建模中的作用 ,给出了蒙特卡洛方法和离散系统模拟方法实
现的具体过程 ,并通过具体的实例分析 ,说明计算机模拟方法在数学建模中的有效性.
关键词: 计算机模拟 ; 数学建模; 蒙特卡洛方法; 离散系统; Matlab 6. 0
中图分类号 : O 141 文献标识码: A
1 概 述
计算机科学技术的迅猛发展 ,给许多学科带来了巨大的影响. 计算机不但使问题的求解变
得更加方便、快捷和精确 ,而且使得解决实际问题的领域更加广泛. 计算机适合于解决那些规模大、难以解析化以及不确定的数学模型. 例如对于一些带随机因素的复杂系统 ,用分析方法建模
常常需要作许多简化假设 ,与面临的实际问题可能相差甚远 ,以致解答根本无法应用 ,这时模拟几乎成为人们的唯一的选择. 在历届的美国和中国大学生的数学建模(MCM) 中 ,学生们经常用到计算机模拟方法去求解、检验等. 计算机模拟(computer simulation) 是建模过程中较为重要的一
类方法(见文献[ 1 ]) .
所谓计算机模拟 ,就是用计算机程序在计算机上模仿各种实际系统的运行过程 ,并通过计算了解
系统随时间变化的行为或特性. 它是在已经建立起
的数学、逻辑模型之上 ,通过计算机实验 ,对一个系统按照一定的决策原则或作业规则 ,由一个状态变换为另一个状态的行为进行描述和分析.
计算机模拟实质上是计算机建模 ,而计算机模
型就是计算机方法和理论 ( 如程序、流程图、算法
等) ,它是架于计算机理论和实际问题之间的桥梁.
它与数学建模的关系如图 1 :
一般说来 ,在下列情况中 ,计算机模拟能有效
地解决问题. 图 1 计算机模拟流程图
1) 难于用数学公式表示的系统 ,或者没有建立和求解数学模型的有效方法;
收稿日期: 2003 - 09 - 02
基金项目: 海南大学 2002~2003 年度教学研究项目“数学建模教育及对学生综合能力培养的研究与实践”资助
作者简介: 欧宜贵(1965 - ) ,男 ,湖北钟祥人 ,海南大学信息科学技术学院副教授 ,博士.
90 海南大学学报自然科学版 2004 年
2) 虽然可以用解析的方法解决问题 ,但数学的分析与计算过于复杂 ,此时计算机模拟可能提供简单可行的求解方法;
3) 希望能在较短的时间内观察到系统发展的全过程 ,以估计某些参数对系统行为的影响;
4) 难以在实际环境中进行实验和观察时 ,计算机模拟是唯一可行的方法 ,例如太空飞行的研究;
5) 需要对系统或过程进行长期运行比较 ,从大量方案中寻找最优方案.
计算机模拟是系统随时间变化而变化的动态写照 ,因此 ,在通常情况下 ,模拟是按时间来划分的. 目前 ,计算机模拟大致可分成静态模拟( static simulation) 和动态模拟( dynamic simulation) .
数值积分中的蒙特卡洛(Monte Carlo) 方法是典型的静态模拟;动态模拟又分为连续系统模拟和
离散系统模拟. 下面将主要讨论数学建模竞赛活动中经常用到的Monte Carlo 方法和离散系统的
模拟方法. 实际上 ,对连续系统的模拟 ,是将连续状态变量在时间上进行离散化处理 ,并由此模拟系统的运行状态.
2 Mo nte Carlo 方法
Monte Carlo 方法是计算机模拟的基础 ,其历史源于 1777 年法国科学家蒲丰提出的一种计
算圆周率π的方法 ———随机投针法 ,即著名的蒲丰投针问题(见文献[ 2 ]) .
Monte Carlo 方法的基本思想是首先建立一个概率模型 ,使所求问题的解正好是该模型的参
数或其他有关的特征量. 然后通过模拟一统计 ,即多次随机抽样实验 ,统计出某事件发生的百分
比. 只要实验次数很大 ,该百分比便近似于事件发生的概率. 这实际上就是概率的统计定义.
Monte Carlo 方法属于试验数学的一个分支.
例如 ,为了对蒲丰投针问题进行模拟 ,我们先要建立如下的概率模型:
设“X”是一随机变量, 它服从区间[
原创力文档

文档评论(0)