物流定量技术教案Word文档格式.docx
《物流定量技术教案Word文档格式.docx》由会员分享,可在线阅读,更多相关《物流定量技术教案Word文档格式.docx(92页珍藏版)》请在冰豆网上搜索。
国物资出版社。
物流定量技术是研究计算机技术、数学方法应用于物流管理决策过程的一门经济管理科学
本章主要学习内容:
1.1物流定量分析的概念
1.2管理中的模型方法
1.3MATLAB基础
1.1物流定量分析的概念
1、管理科学与定量分析
在业务中使用定量方法,常称之为管理科学或运筹学。
定量分析常常需要大量的数学计算,这些复杂的计算,单纯地靠人工是不可能完成的,管理科学未来的发展一定联系到计算机硬件和软件的进步,管理科学和计算机技术的进展将使得愈来愈多的管理决策问题可以用管理科学的方法来进行分析。
因此,本课中管理科学、定量分析或定量技术有相似的含义。
2、决策[管理活动的核心]
决策就是作决定、选满意方案;
广义的决策还包括选择前设计、构造,提出多种可行方案,事后对选定的方案进行实施、监测、评价和鉴定。
现代管理决策是一个复杂的系统工程。
3、决策过程
发现问题
确定目标
收集资料
制定方案
评估和优选方案
贯彻实施
反馈及追踪检查
4、决策类型
确定型决策与不确定型决策
5、定性分析与定量分析
定量分析则是在定性分析的基础上进行量度、分析,以得出细致精确、深刻的判断。
定性分析是基础,定量分析则是定性分析的深化与精确化。
定性分析与定量分析两者各有所长,不可偏废。
随着经济的高速发展和竞争的日趋激烈,仅仅靠定性分析已经越来越不适应现代管理的要求。
6、定量分析程序
选定指标
收集数据
建立模型求解或仿真
进行预测
作出决策
1.2管理中的模型方法
模型是现代经济管理的基本工具,其中定量模型则是管理中定量分析的一个基础部分,包括针对确定型决策的运筹学模型与针对不确定型决策的统计学模型。
管理者必须始终记住,模型方法是他进行预测、决策、评估的工具,他要考虑的是如何用好这个工具,而不是构造这些工具。
模型:
是一种用来描述“对象”的特殊方式或者“语言”,如实物、数学语言、自然语言或图形语言等
1、管理中的统计方法
管理统计:
描述统计和推断统计
描述统计是统计的基础,推断统计是现代统计的核心
2、管理中的运筹
运筹学:
OperationalResearch,对作战资源“运用”
的研究。
后来,人们把研究运用、经营、管理这类问题的数量分析理论、模型与方法都归入OperationalResearch
运筹学内容:
线性规划,整数规划,非线性规划与最优化方法,动态规划,多目标规划,网络分析与统筹法,排队论,决策论,存储论,对策论等
1.3MATLAB基础
1、MATLAB概述
在MATLAB进入市场之前,国际上的许多学科软件都是直接以Fortran或C语言等编程语言开发的,缺点是使用面窄、程序接口差,程序结构不开放,很难适应各学科共同的需求。
美国Mathworks公司[美国的几位数学教授开办]自20世纪80年代中期推出数学软件MATLAB后,以其强大的数值什算和数据图形可视化功能在数学软件中独占鳖头。
经过多年来的不断改进,MATLAB已经成为适合多学科、多种工作平台的功能强大的数学工具软件,集成了计算功能、符号运算、数据可视化以及图形用户界面设计技术和应用程序接口技术,被称为第四代计算机语言,是各国科学家开发学科软件共同的开发平台。
[MATLAB:
取自英文matrix+laboratory,矩阵实验室]
[附MATLAB的发展:
1984年,MATLAB第1版(DOS版)、92年MATLAB4.0版、94年,MATLAB4.2版、97年,MATLAB5.0版、99年,MATLAB5.3版、00年MATLAB6.0版、01年MATLAB6.1版、02年MATLAB6.5版、04年MATLAB7.0版]
MATLAB6.5的应用主要集中在以下几个方面:
数值计算、算法开发、符号表达式运算和推导、数学建模与仿真、数据分析和可视化、科学与工程绘图、应用开发等。
其可视化编程能力较强,如运用DDE和OLE,实现了MATLAB与Word的无缝连接,为专业科技工作者创造了融科学计算、图形可视、文宇处理于一体的高水准环境。
通过他可以设计出功能强大、界面优美、稳定可靠的高质量软件包。
迈入20世纪90年代后,MATLAB已经成为国际公认的标准计算软件,至今没有一个别的计算软件可以与MATLAB匹敌。
MATLAB的主要功能:
数值计算和符号计算功能[以矩阵作为数据操作的基本单位];
绘图功能[对图形句柄进行的低层绘图操作和建立在低层绘图操作之上的高层绘图操作]、编程语言[具有程序结构控制、函数调用、数据结构、输入输出、面向对象等程序语言特征,简单易学]、MATLAB工具箱[功能性工具箱和学科性工具箱]。
硬件环境要点:
(1)CPUPentiumⅢ或更高
(2)内存至少128M
(3)硬盘至少预留200MB以上的空间
(4)CD-ROM至少为20倍速以上
软件环境要点:
(1)Windows98/NT/2000或WindowsXP、IE4.0以上
(2)其他软件根据需要选用,如OFFICE97以上
MATLAB的安装:
MATLAB6.5的安装:
运行系统安装程序setup.exe,
按照安装提示依次操作。
例1-1绘制正弦曲线和余弦曲线。
x=[0:
0.5:
360]*pi/180;
plot(x,sin(x),x,cos(x));
例1-2求方程3x4+7x3+9x2-23=0的全部根。
p=[3,7,9,0,-23];
%建立多项式系数向量
x=roots(p)%求根
2、MATLAB集成环境
MATLAB系统的启动:
(1)使用Windows“开始”菜单;
(2)运行MATLAB系统启动程序matlab.exe;
(3)利用快捷方式。
首次启动MATLAB后,展现在屏幕上的界面为MATLAB的默认界面。
启动后进入MATLAB6.5集成环境,包括MATLAB主窗口、命令窗口(CommandWindow)、工作空间窗口(Workspace)、命令历史窗口(CommandHistory)、当前目录窗口(CurrentDirectory)。
MATLAB系统的退出:
(1)在MATLAB主窗口File菜单中选择ExitMATLAB命令;
(2)在MATLAB命令窗口输入Exit或Quit命令;
(3)单击MATLAB主窗口的“关闭”按钮。
⑴MATLAB主窗口
MATLAB主窗口是MATLAB的主要工作界面,主要包括菜单栏和工具栏。
菜单栏
在MATLAB6.5主窗口的菜单栏,共包含File、Edit、View、Web、Window和Help6个菜单项。
File菜单项:
File菜单项实现有关文件的操作。
Edit菜单项:
对选中的当前窗口进行操作,编辑功能类似WINDOW的其它应用程序。
其中,PasteSPecial选项,打开导入数据向导,该向导引导用户把存放在缓冲区中的内容按特定格式存放到剪贴板变量中。
View菜单项:
View菜单项用于设置MATLAB集成环境的显示方式。
Web菜单项:
用于设置MATLAB在Web上的链接、交流等操作。
Window菜单项:
只包含一个子菜单Closeall,用于关闭所有打开的编辑器窗口。
Help菜单项:
提供帮助信息,其中DEMOS选项打开演示文档。
File菜单:
new选项,包含4个选项:
M_File、Figure、Model和GUI,单击他们可打开相应的编辑窗口。
Open选项,单击他可打开一个Open对话框,用户可以在对话框中选择相应的文件,然后MATLAB将用相应的编辑器打开该文件。
Close选项,该选项后面将跟随某个打开的视窗名,单击该选项将关闭该视窗。
importdata选项,单击该选项将打开一个import对话框,用户可以选择相应的数据文件,然后将该数据文件中的数据导入到MATLAB工作空间。
SaveworkspaceAs选项,单击该选项将打开一个SavetOMAT_File对话框,用户需要为保存的工作空间命名。
SetPath选项,单击该选项将会打开设置路径对话框,通过该对话框可以更改MATLAB执行命令时搜索的路径。
PageSetup[preferences]选项,设置页面布局、页眉、页面所用的字体。
Print选项,用于打印预定义好的页画内容,也可以设置一些打印参数。
PrintSelection选项,当选中命令窗口内的一部分内容后,该选项将处于檄活状态,此时单击该选项,将打开打印对话框打印选中的内容。
ExitMATLAB选项,单击该选项将关闭MATLAB。
也可以通过快捷键CTRL+Q来关闭。
View菜单:
DesktopLayout选项,包含6个选顶:
默认布局、只显示命令窗口、简单布局(命令窗口和命令历史记录窗口)、窄的历史记录窗口、高的历史记录窗口、同时显示5个窗口。
UndockCommandWindow选项,选择该菜单将使命令窗口以新的窗口形式显示,而不是作为主窗口的一个浮动窗口形式显示。
几个可选的复选框菜单:
CommandWindow选项、CommandHistory选项、Currentdirectory选顶、Workspace选项、LaunchPad选项、Profiler选项和Help选项。
选中后会打开相应窗口,再次选择就关闭。
CurrentDirectoryFilter选项,选择相应的文件类型、所有文件或文件夹。
Workspaceviewopitions选项,设置工柞空间视窗的显示方式。
⑵工具栏
MATLAB6.5主窗口的工具栏共提供了10个常用命令按钮。
这些命令按钮均有对应的菜单命令,但比菜单命令使用起来更快捷、方便,体现了window风格。
2、命令窗口
命令窗口是MATLAB的主要交互窗口,用于输入命令并显示除图形以外的所有执行结果。
MATLAB命令窗口中的“>
>
”为命令提示符,表示MATLAB正在处于准备状态。
在命令提示符后键入命令并按下回车键后,MATLAB就会解释执行所输入的命令,并在命令后面给出计算结果。
一般来说,一个命令行输入一条命令,命令行以回车结束。
但一个命令行也可以输入若干条命令,各命令之间以逗号或分号分隔。
例如
p=15,m=35
如果一个命令行很长,一个物理行之内写不下,可以在第一个物理行之后加上3个小黑点并按下回车键,然后接着下一个物理行继续写命令的其他部分。
3个小黑点称为续行符,即把下面的物理行看作该行的逻辑继续。
在MATLAB里,有很多的控制键和方向键可用于命令行的编辑。
3、工作空间窗口、当前目录窗口、搜索路径
工作空间是MATLAB用于存储各种变量和结果的内存空间。
在该窗口中显示工作空间中所有变量的名称、大小、字节数和变量类型说明,单击鼠标右键可对变量进行编辑、保存和删除。
当前目录是指MATLAB运行文件时的工作目录,只有在当前目录或搜索路径下的文件、函数可以被运行或调用。
在当前目录窗口中可以显示或改变当前目录,还可以显示当前目录下的文件并提供搜索功能。
将用户目录设置成当前目录也可使用cd命令。
例如,将用户目录c:
\mydir设置为当前目录,可在命令窗口输入命令:
cdc:
\mydir
当用户在MATLAB命令窗口输入一条命令后,MATLAB按照一定次序寻找相关的文件。
基本的搜索过程是:
(1)检查该命令是不是一个变量。
(2)检查该命令是不是一个内部函数。
(3)检查该命令是否当前目录下的M文件。
(4)检查该命令是否MATLAB搜索路径中其他目录下的M文件。
用户可以将自己的工作目录列入MATLAB搜索路径,从而将用户目录纳入MATLAB系统统一管理。
设置搜索路径的方法有:
(1)用path命令设置搜索路径。
\mydir加到搜索路径下,可在命令窗口输入命令:
path(path,’c:
\mydir’)
(2)用对话框设置搜索路径
在MATLAB的File菜单中选SetPath命令或在命令窗口执行pathtool命令,将出现搜索路径设置对话框。
通过AddFolder或AddwithSubfolder命令按钮将指定路径添加到搜索路径列表中。
在修改完搜索路径后,则需要保存搜索路径。
4、命令历史记录窗口、启动平台窗口和Start按钮
命令历史记录窗口:
在默认设置下,历史记录窗口中会自动保留自安装起所有用过的命令的历史记录,并且还标明了使用时间,从而方便用户查询。
而且,通过双击命令可进行历史命令的再运行。
如果要清除这些历史记录,可以选择Edit菜单中的ClearCommandHistory命令。
MATLAB6.5的启动平台窗口:
即查询便捷簿窗口,用来随时向用户说明软件中包含的内容及功能,用户可以通过该窗口查看已经安装的各种工具箱。
。
MATLAB6.5主窗口左下角的Start按钮,单击该按钮会弹出一个菜单,选择其中的命令可以执行MATLAB产品的各种工具,并且可以查阅MATLAB包含的各种资源。
1.3MATLAB帮助系统
1、进入帮助窗口的方法
(1)单击MATLAB主窗口工具栏中的Help按钮。
(2)在命令窗口中输入helpwin、helpdesk或doc。
(3)选择Help菜单中的“MATLABHelp”选项。
2、MATLAB帮助命令
MATLAB帮助命令包括help、lookfor以及模糊查询。
help命令:
在MATLAB6.5命令窗口中直接输入help命令将会显示当前帮助系统中所包含的所有项目,即搜索路径中所有的目录名称。
同样,可以通过help加函数名来显示该函数的帮助说明。
lookfor命令:
help命令只搜索出那些关键字完全匹配的结果,lookfor命令条件比较宽松,可搜索与关键字匹配的相关主题。
what命令:
用子当前路径文件列表
who命令:
用子当前内存变量列表
whos命令:
显示当前内存变量详细信息
模糊查询:
MATLAB6.0以上的版本提供了一种类似模糊查询的命令查询方法,用户只需要输入命令的前几个字母,然后按Tab键,系统就会列出所有以这几个字母开头的命令。
3、演示系统
在帮助窗口中选择演示系统(Demos)选项卡,然后在其中选择相应的演示模块,或者在命令窗口输入Demos,或者选择主窗口Help菜单中的Demos子菜单,打开演示系统。
4、远程帮助系统
在MathWorks公司的主页()上可以找到很多有用的信息,国内的一些网站也有丰富的信息资源。
实验一MATLAB操作基础
第2章MATLAB数值计算与分析
数值计算与相关分析技术在现代科学技术、科学研究顿域中发挥着极为重要的作用,MATLAB为此握供了方便的、功能强大的计算和分析平台,将入们从以前繁琐的手工计算中彻底解脱出来。
MATLAB,或称“矩阵实验室”,是以矩阵为基本运算单元进行计算处理的,所涉及的应用领域包括高数、线性代数、概率与数理统计、数值分析、数据处理等。
2.1变量和数据操作
2.2MATLAB矩阵及其基本运算
2.3数据统计处理与多项式计算
2.4方程(组)的解法
2.5函数极值
2.6MATLAB程序设计
2.1变量和数据操作
1、变量与赋值
变量命名:
在MATLAB6.5中,变量名是以字母开头,后接字母、数字或下划线的字符序列,最多63个字符。
在MATLAB中,变量名区分字母的大小写。
赋值语句:
变量=表达式[或表达式,此时将自动赋值给变量ANS]
其中表达式是用运算符将有关运算量连接起来的式子,其结果是一个矩阵。
[常数为1×
1的矩阵]
例计算表达式的值,并显示计算结果。
在MATLAB命令窗口输入命令:
x=1+2i,y=3-sqrt(17)
z=(cos(abs(x+y))-sin(78*pi/180))/(x+abs(y))
其中pi和i都是MATLAB预先定义的变量,分别代表代表圆周率π和虚数单位。
输出结果是:
z=-0.3488+0.3286i
注意:
MATLAB提供了许多数学函数,函数的自变量规定为矩阵变量,运算法则是将函数逐项作用于矩阵的元素上,因而运算结果是一个与自变量同维数的矩阵;
一般情况下,MATLAB内部每一个数据元素都是用双精度数[有效位为十六位]来表示和存储的。
预定义变量:
在MATLAB工作空间中,还驻留几个由系统本身定义的变量。
例如,用pi表示圆周率π的近似值,用I、j表示虚数单位,用NaN表示非数[0/0],用inf表示无穷大。
预定义变量有特定的含义,在使用时,应尽量避免对这些变量重新赋值。
再如:
Realmax、realmin
2、内存变量的管理
内存变量的删除与修改:
在工作空间窗口中,当选中某些变量后,再单击Delete按钮,就能删除这些变量;
当选中某些变量后,再单击Open按钮,将进入变量编辑器。
通过变量编辑器可以直接观察变量中的具体元素,也可修改变量中的具体元素;
clear命令用于删除MATLAB工作空间中的变量,who和whos用于显示在工作空间中已经驻留的变量名清单。
利用MAT文件可以把当前MATLAB工作空间中的一些有用变量长久地保留下来,扩展名是.mat。
MAT文件的生成和装入由save和load命令来完成。
常用格式为:
save文件名[变量名表][-append][-ascii]
load文件名[变量名表][-ascii]
其中,文件名可以带路径,但不需带扩展.mat,变量名表中的变量个数不限,只要内存或文件中存在即可,变量名之间以空格分隔。
当变量名表省略时,保存或装入全部变量。
-ascii选项使文件以ASCII格式处理,省略该选项时文件将以二进制格式处理。
save命令中的-append选项控制将变量追加到MAT文件中。
2.2MATLAB矩阵及其基本运算
1、矩阵的建立
直接输入法:
将矩阵的元素用方括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用空格或逗号分隔,不同行的元素之间用分号分隔。
利用M文件建立矩阵:
对于比较大且比较复杂的矩阵,可以为它专门建立一个M文件。
如利用M文件建立M矩阵:
(1)启动MATLAB文本编辑器,并输入待建矩阵:
(2)存盘(设文件名为m.m);
(3)在MATLAB命令窗口中输入m,即运行该M文件,就会自动建立一个名为M的矩阵,供以后使用。
利用冒号表达式建立一个行向量:
e1:
e2:
e3
其中e1为初始值,e2为步长,e3为终止值。
用linspace函数产生行向量:
linspace(a,b,n)
其中a和b是生成向量的第一个和最后一个元素,n是元素总数。
linspace(a,b,n)与a:
(b-a)/(n-1):
b等价。
空矩阵:
在MATLAB中,定义[]为空矩阵。
给变量X赋空矩阵的语句为X=[]。
注意空矩阵存在于工作空间中,只是维数为0。
产生一些特殊矩阵的函数:
zeros(m,n)[产生零矩阵]、ones[产生全1矩阵]、eye[产生单位矩阵]、rand[产生0~1间均匀分布的随机矩阵]、randn[产生均值为0,方差为1的标准正态分布随机矩阵]。
[注意:
可以用size(A)建立一个与矩阵A同样大小的特殊矩阵,如zeros(size(A))]
例建立在区间[20,50]内均匀分布的5阶随机矩阵机矩阵。
命令如下:
x=20+(50-20)*rand(5)
魔方矩阵:
魔方矩阵有一个有趣的性质,其每行、每列及两条对角线上的元素和都相等。
MATLAB提供了求魔方矩阵的函数magic(n),其功能是生成一个n阶魔方阵。
例将101~125等25个数填入一个5行5列的表格中,使其每行每列及对角线的和均为565。
M=100+magic(5)
帕斯卡矩阵:
二次项(x+y)n展开后的系数矩阵称为帕斯卡(Pascal)矩阵。
函数pascal(n)生成一个n阶帕斯卡矩阵。
例求(x+y)5的展开式。
在MATLAB命令窗口,输入命令:
pascal(6)
矩阵次对角线上的元素1,5,10,10,5,1即为展开式的系数。
2、矩阵的分解
矩阵元素引用:
通过矩阵元素的序号或下标来引用矩阵元素。
矩阵元素的序号就是相应元素在内存中的排列顺序。
在MATLAB中,矩阵元素按列存储,先第一列,再第二列,依次类推。
例如A=[1,2,3;
4,5,6]
A(3)
ans=2[注意:
习惯上使用下标A(1,2)来引用]
矩阵的拆分:
利用冒号表达式获得子矩阵①A(:
j)表示取A矩阵的第j列全部元素;
A(i,:
)表示A矩阵第i行的全部元素;
A(i,j)表示取A矩阵第i行、第j列的元素。
②A(i:
i+m,:
)表示取A矩阵第i~i+m行的全部元素;
A(:
k:
k+m)表示取A矩阵第k~k+m列的全部元素;
A(i:
i+m,k:
k+m)表示取A矩阵第i~i+m行内,并在第k~k+m列中的所有元素。
3、MATLAB运算
(1)算术运算
MATLAB的基本算术运算有:
+(加)、-(减)、*(乘)、/(右除)、\(左除)、^(乘方)。
运算规则服从线性代数矩阵运算规则。
如:
假定有两个矩阵A和B,若A和B矩阵的维数相同,则可以执行矩阵的加减运算,A和B矩阵的相应元素相加减。
如果A与B的维数不相同,则MATLAB将给出错误信息,提示用户两个矩阵维数不匹配;
假定有两个矩阵A和B,若A为m×
n矩阵,B为n×
p矩阵,则C=A*B为m×
p矩阵。
运算是在矩阵意义下进行的,单个数据的算术运算只是一种特例]
点运算:
在MATLAB中,有一种特殊的运算,因为其运算符是在有关算术运算符前面加点,所以叫点运算。
点运算符有.*、./、.\和.^。
两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵